### #### .... ... #.. ..### #... .?.. ... ...#...##.# ... #......o.# .. #....##o.#####.# ... #........# # #.####...# #oo#.#oo## #..oo.o.# #######o# #o# #.# #.# #.# #.# #.# #+#