### ########..### #............ #............ #............ #...<........ ###............ ..........######## ..........#......# ..........#......# ####.###..#......# .. #.# #..'......# ... ## #..'......#.... #..###'##+#.... #.............. #.............. #.............. #.............. #.......###.... #.......3$#.... #.......###.... #...........).. #........ ..... #..##########.. #.. . .. ......# ^....# ...o# #...# #...# #..o# #.oo# #...#####... ##..<....... #.......... #.......... #.......... #.......... #......##+# #......# #......#