zwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwzwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwiwvivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivivsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssszzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutztutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutitutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutjtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutitutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutatutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutitutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtulllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutitutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtuthtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutitutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutjtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutitutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutltutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutctutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutrtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutatutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutxtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutgtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutmtutqtutntutqtutftutqtutntutqtutwtutqtutntutqtutftutqtutntutqtutptutqtutntutqtutfcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmcmryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryryrpppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmtmt