................................................................................
.....................................................................+..........
.....................................................................|..........
=##############>...............=########>..........pr.w.pr...........|.M..CACA..
..+b---o---o---g....................3..............tu.T.tu...........|...$EDEDV.
..|..w.$.w.S.w........ij...........................yz...yz..........s|....KGKG..
..|..T...T...T...$.<..kl.$.O.$4....ac.......=#####################>..|..=#######
.s|...................mn...........de........w.....w.....w.....w.....|..........
..|..w........=################>...fh.....5.$T.$R..TQ.R.*T.$R.$T.$Q..v..........
..|..T....b---o---o---o---o---g+................................................
..|.....ij......w.$.w.S.w...$..|..w......=##############################>.......
..v.V$..kl.<..N.T...T...T......|..T.............0.........+b---o---o---g+.......
........mn..................w.s|$..........ac.........ac..|..w.S.w.$.w..|.......
=##############>............T..|..w........de...M.....de..|..T...T...T..|.......
...............................|..T........fh.........fh..|............s|.......
...............................v.$....$.1..............2.$v.$........w..|..w....
...................................................................$.T$.v..T....
........ac.....................=#########>............=#######>.................
........de......M..................................+...w.IHH.w..w..F############
....!.$.fh.........................................|...T.IHH.T$.T..IHHHHHHHHHHHH
..................=########>.......ac....M........s|...............IHHHHHHHHHHHH
#############>....w.......w........de..........w...|..F############JHHHHHHHHHHHH
HHHHHHHHHHHHHH..$.T.$.Z.N.T.<.$..$.fh.$...N..<.T.$.v..IHHHHHHHHHHHHHHHHHHHHHHHHH
HHHHHHHHHHHHHH........................................IHHHHHHHHHHHHHHHHHHHHHHHHH
HHHHHHHHHHHHHH#################{...._.....}###########JHHHHHHHHHHHHHHHHHHHHHHHHH