word
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg
GGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGgggggggggggggggggGGggggggggggggggggg