###### #####....# ####### #########........# ####.....# #................####....##### ...#####...###.........#### #.### ##...........## ######.######............## ...^.......................# #######....................# #.....................# #(....................# ###### ##..................(..# #.....##.....<...............## ... #...........................## ......... #.....####........########### ........ #......#...........# ......# #..................# ## #..##.###..................# #.. ##### #..........................# ##....... .....##.>##.#.>.....##......o....#####.....!.. .#####.......................