Skip to content

Instantly share code, notes, and snippets.

@ihabunek
Created December 17, 2018 16:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ihabunek/295c9ede42f0ce8e983ce9e5114979eb to your computer and use it in GitHub Desktop.
Save ihabunek/295c9ede42f0ce8e983ce9e5114979eb to your computer and use it in GitHub Desktop.
Advent of code 2018, day17
...........................................................................................................................................................................................................................................................................................................................................................................................
...........................................................................................................................................................................................................................................................................................................................................................................................
...........................................................................................................................................................................................................................................................................................................................................................................................
...........................................................................................................................................................................................................................................................................................................................................................................................
....................................................................................................................................................................................................................................................+......................................................................................................................................
...............................................................................................................#.........................#..........................................................................................................|......................................................................................................................................
...............................................................................................................#.........................#..........................................................................................................|......................................................................................................................................
...............................................................................................................#.........................#..........................................................................................................|......................................................................................................................................
...............................................................................................................#.........................#..........................................................................................................|.....#..#.............................................................................................................................
...............................................................................................................#.........................#........................................................................................................||||||||#..#.............................................................................................................................
.........#.............................................................................................#.......#.........................#........................................................................................................|#~~~~~~#..#.............................................................................................................................
.......#.#................................................................................#............#.......#.........................#........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......#.#................................................................................#............#.......#.........................#........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......#.#................................................................................##############.......#.........................#........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......#.#.....................................................................................................#.........................#........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......#.#...................................................#.................................................#.........................#........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......#.#...................................................#....#............................................#.........................#........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......#.#...................................................#....#............................................#.........................#........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......#.#...................................................#....#............................................#.........................#........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......#.#...................................................#....#............................................###########################........................................................................................................|#~~~~~~#..#......#......................................................................................................................
.......###...................................................#....#...............................................................................................................................................................................|#~~~~~~####......#......................................................................................................................
.............................................................#....#...............................................................................................................................................................................|#~~~~~~~~~~~~~~~~#......................................................................................................................
.............................................................#....#...............................................................................................................................................................................|#~~~~~~~~~~~~~~~~#......................................................................................................................
.............................................................#....#...............................................................................................................................................................................|##################......................................................................................................................
.............................................................#....#...............................#...............#...............................................................................................................................|.................................................................................................................................#......
.............................................................#....#...............................#...............#...............................................................................................................................|....................................................................................................#...............#............#......
....................#.............#..........................#....#...............................#...............#...............................................................................................................................|....................................................................................................#..#............#............#......
....................#.............#..........................#....#...............................#################......................................................................#..................#.....................................|................................#........#.................#........................................#..#............#............#......
....................#.............#..........................#....#......................................................................................................................#..................#.....................................|................................#..#.....#.................#........................................#..#............#............#......
....................#.............#..........................#....#......................................................................................................................#..................#.....................................|................................#..#.....#.................#........................................#..#............#............#......
....................#.............#..........................######.......................#..............................................................................................#..................#...........................|||||||||||||||||||||#.....................#..#.....###################........................................#..#............#............#......
....................#.............#.........................................#.............#..............................................................................................#..................#...........................|#~~~~~~~~~~~~~~~~~~~#.....................#..#................................................................#..#............#............#......
....................#.............#.........................................#.............#..............................................................................................#..................#...........................|#~~~~~~~~~~~~~~~~~~~#.....................#..#................................................................#..#............#............#......
....................#.............#.........................................#.............#..............................................................................................#..................#...........................|#~~~~~~~~~~~~~~~~~~~#.....................#..#................................................................#..#............#............#......
....................#.............#.........................................#.............#..............................................................................................#..................#...........................|#~~~~~~~~~~~~~~~~~~~#.....................#..#................................................................#..#............#............#......
....................#.............#.........................................#.............#..............................................................................................#..................#...........................|#~~~~~~~~~~~~~~~~~~~#.....................#..#................................................................#..#............#............#......
....................#.............#.........................................#.............#..............................................................................................#..................#...........................|#~~~~~~~####~~~~~~~~#.....................#..#................................................................#..#............#............#......
....................#.............#.........................................###############..............................................................................................#..................#...........................|#~~~~~~~#..#~~~~~~~~#.....................#..#................................................................#..#............#............#......
....................#.............#......................................................................................................................................................#..................#...........................|#~~~~~~~#..#~~~~~~~~#.....................#..#................................................................#..#............#............#......
....................###############......................................................................................................................................................#..................#...........................|#~~~~~~~####~~~~~~~~#.....................#..#................................................................#..#............#............#......
.........................................................................................................................................................................................#..................#...........................|#~~~~~~~~~~~~~~~~~~~#.....................#..#................................................................#..#............#............#......
.........................................................................................................................................................................................####################...........................|#~~~~~~~~~~~~~~~~~~~#.....................#..#................................................................#..#............#............#......
...................................................................................................................................#....#...............................................................................................|#~~~~~~~~~~~~~~~~~~~#.....................#..#................................................................#..#............#............#......
...................................................................................................................................#....#...............................................................................................|#####################.....................#..#................................................................#..#............#............#......
.................................................................................................#.......#.........................#....#................................#........#.....................................................|..........................................#..#.....#......#...................................................#..#............#............#......
.................................................................................................#.......#.........................#....#................................#........#.....................................................|..........................................#..#.....#......#...................................................#..#............##############......
.................................................................................................#.......#.........................#....#................................#........#.....................................................|..........................................#..#.....#......#...................................................#..#................................
.................................................................................................#.......#.........................#....#................................#........#.....................................................|..........................................#..#.....#......#...................................................#..#................................
.........#.......................................................................................#.......#.........................######................................#........#.....................................................|..........................................#..#.....#......#...................................................#..#................................
.........#.#.....................................................................................#.......#...............................................................#........#.....................................................|......#..#................................#..#.....#......#...................................................#..#................................
.........#.#.....................................................................................#.......#...............................................................#........#...................................................|||||||||#..#................................####.....#......#...................................................#..#................................
.........###.....................................................................................#########.........................................................#.....#........#...................................................|#~~~~~~~#..#.........................................#......#...................................................####................................
.....................................................................................................................................................#.............#.....#........#...................................................|#~~~~~~~#..#.....#...................................#......#.......................................................................................
.....................................................................................................................................................#.............#.....#........#...................................................|#~~~~~~~#..#.....#...................................#......#.......................................................................................
.....................................................................................................................................................#.............#.....#........#...................................................|#~~~~~~~#..#.....#...................................#......#.......................................................................................
.....................................................................................................................................................#.............#.....#........#...................................................|#~~~~~~~#..#.....#...................................#......#...............................#...#...................................................
.....................................................................................................................................................#.............#.....#........#...................................................|#~~~~~~~#..#.....#...................................#......#...............................#...#...................................................
.....................................................................................................................................................#.............#.....#........#.......................#...........................|#~~~~~~~#..#.....#...................................#......#...............................#...#...................................................
.....................................................................................................................................................#.............#.....#........#.......................#....#......................|#~~~~~~~#..#.....#...................................########...............................#...#...................................................
.....................................................................................................................................................#.............#.....#........#.......................#....#......................|#~~~~~~~####.....#..........................................................................#...#...................................................
.....................................................................................................................................................#.............#.....#........#.......................#....#......................|#~~~~~~~~~~~~~~~~#..........................................................................#...#...................................................
.....................................................................................................................................................#.............#.....##########.......................######......................|#~~~~~~~~~~~~~~~~#..........................................................................#...#...................................................
.....................................................................................................................................................#.............#..................................................................|##################..........................................................................#...#...................................................
.....................................................................................................................................................#.............#..................................................................|............................................................................................#...#...................................................
.....................................................................................................................................................#.............#..................................................................|............................................................................................#...#...................................................
.........................................................................................................................................#...........#.............#..................................................................|............................................................................................#...#...................................................
.........................................................................................................................................#....#......#.............#..................................................................|............................................................................................#...#...................................................
.........................................................................................................................................#....#......#.............#.....................................................#....#.......|............................................................................................#...#...................................................
.....................................#...................................................................................................#....#......#.............#.....................................................#....#||||||||||..........................................................................................#...#...................................................
.................................#...#...................................................................................................#....#......#.............#.....................................................#....#~~~~~~~~#|..........................................................................................#...#...................................................
.................................#...#...................................................................................................#....#......#.............#................................................#....#....#~~~~~~~~#|..........................................................................................#...#...................................................
.................................#...#...................................................................................................#....#......#.............#................................................#....#....#~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#.................#...#...................................................................................................#....#......###############................................................#....#....#~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#...................................................................................................#....#.....................................................................#....#....#~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#...................................................................................................#....#.....................................................................#....#....#~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#...................................................................................................#....#.....................................................................#....#....#~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#...................................................................................................#....#.....................................................................#....######~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#...................................................................................................#....#.....................................................................#~~~~~~~~~~~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#..............................................................#....................................#....#.....................................................................#~~~~~~~~~~~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#..............................................................#......#.............................#....#.....................................................................#~~~~~~~~~~~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#..............................................................#......#.............................#....#.....................................................................#~~~~~~~~~~~~~~~~~~#|..........................................................................................#...#......................#.#....#..#..................
...............#......#..........#...#..............................................................#......#.............................#....#...#.................................................................####################|..............................................................................#...........#####......................#.#....####..................
...............#......#..........#...#..............................................................#......#.............................#....#...#..........#..........................................................................|.....................................#....................#...................#......................................###..........................
...............#......#..........#...#..............................................................#......#.............................#....#...#..........#..........................................................................|....................#................#....................#...................#...................................................................
...............########..........#...#..............................................................#......#.............................#....#...#..........#..........................................................................|....................#................#....................#...................#...................................................................
.................................#...#..............................................................#......#.............................#....#...#..........#..........................................................................|....................#................#....................#...................#...................................................................
.................................#...#..............................................................#......#.............................#....#...#..........#..........................................................................|....................#................#....................#...................#...................................................................
.................................#...#..............................................................#......#.............................#....#...#..........#..........................................................................|....................#................#....................#...................#...................................................................
.................................#...#..............................................................#......#.............................#....#...#..........#..........................................................................|......#.#...........#................#....................#...................#...................................................................
.................................#...#..............................................................#......#.............................#....#...#..........#..........................................................................|......#.#...........#................#....................#...................#...................................................................
.................................#...#..............................................................#......#.............................#....#...#..........#........................................................................|||||||||#.#.....#.....#................#....................#...................#...................................................................
.................................#...#..............................................................#......#.............................#....#...#..........#........................................................................|#~~~~~~~#.#.....#.....#................#....................#...................#...................................................................
.................................#####..............................................................#......#.............................#....#...#..........#........................................................................|#~~~~~~~#.#.....#.....#................#....................#...................#...................................................................
....................................................................................................#......#.............................######...#..........#........................................................................|#~~~~~~~#.#.....#.....#................#....................#...................#...................................................................
......#................#............................................................................#......#......................................#..........#........................................................................|#~~~~~~~#.#.....#.....#.......###......#....................#...................#...................................................................
......#................#............................................................................########......................................#..........#........................................................................|#~~~~~~~#.#.....#.....#.......#.#......#....................#...................#...................................................................
......#................#..........................................................................................................................#..........#........................................................................|#~~~~~~~#.#.....#.....#.......#.#......#....................#...................#...................................................................
......#................#..........................................................................................................................############........................................................................|#~~~~~~~#.#.....#.....#.......#.#......#....................#...................#...................................................................
......#................#..............................................................................................................................................................................................................|#~~~~~~~###.....#.....#.......#.#......#....................#...................#...................................................................
......#................#..............................................................................................................................................................................................................|#~~~~~~~~~~~~~~~#.....#.......#.#......#....................#...................#...................................................................
......#................#....................................................................................................#...........................#.............................................................................|#~~~~~~~~~~~~~~~#.....#.......#.#......#....................#####################...................................................................
......#................#....................................................................................................#...........................#.............................................................................|#################.....#.......#.#......#............................................................................................................
......#................#....................................................................................................#...........................#.............................................................................|......................#.......###......#............................................................................................................
......#................#....................................................................................................#...........................#.............................................................................|......................#................#............................................................................................................
......#................#.......#............................................................................................#...........................#.............................................................................|......................#................#............................................................................................................
......#................#.......#........#...................................................................................#...........................#.............................................................................|......................##################............................................................................................................
......#................#.......#........#...................................................................................#...........................#.............................................................................|....................................................................................................................................................
......#................#.......#........#...................................................................................#...........................#.............................................................................|....................................................................................................................................................
......#................#.......#........#........................................#..........................................#...........................#..................................................................|||||||||||||||||||||||.........................................................................................................................................
......#................#.......#........#.............#..........................#..........................................#...........................#..................................................................|#~~~~~~~~~~~~~~~~~~~#|.........................................................................................................................................
......#................#.......#........#.............#..........................#..........................................#...........................#...................................................#..............|#~~~~~~~~~~~~~~~~~~~#|.........................................................................................................................................
......#................#.......#........#.............#..........................#..........................................#...........#########.......#...................................................#........#.....|#~~~~~~~~~~~~~~~~~~~#|.........................................................................................................................................
......#................#.......#........#.............#..........................#..........................................#...........#.......#.......#...................................................#........#.....|#~~~~~~~~~~~~~~~~~~~#|.........................................................................................................................................
......#................#.......#........#.............#..........................#..........................................#...........#.......#.......#...................................................#........#.....|#~~~~~~~~~~~~~~~~~~~#|...............................................................................#.........................................................
......#................#.......#........#.............#..........................#..........................................#...........#########.......#...................................................#........#.....|#~~~~~~~~~~~~~~~~~~~#|...................................................#...........................#............#............................................
......#................#.......#........#.............#..........................#..........................................#...........................#...................................................#........#.....|#~~~~~~~~~~~~~~~~~~~#|...................................................#.........#.................#............#............................................
......#................#.......##########.............#..........................#..........................................#...........................#...................................................#........#.....|#~~~~~~~~~~~~~~~~~~~#|...................................................#.........#.................#............#............................................
......#................#..............................#..........................#..........................................#...........................#...................................................#........#.....|#~~~~~~~~~~~~~~~~~~~#|...................................................#.........#.................#............#............................................
......#................#..............................#..........................#..........................................#############################...................................................#........#.....|#~~~~~~~~~~~~~~~~~~~#|...................................................#.........#.................#............#............................................
......##################..............................#..........................#..........................................................................................................................#........#.....|#####################|...................................................#.........#.................#............#............................................
......................................................#..........................#..........................................................................................................................#........#.....|.....................|...................................................#.........#.................#............#............................................
......................................................#..........................#..........................................................................................................................#........#.....|.....................|...................................................###########.................#............#............................................
......................................................#..........................#..........................................................................................................................#........#.....|.....................|...............................................................................##############............................................
......................................................#..........................#..........................................................................................................................#........#.....|.....................|.........................................................................................................................................
......................................................#..........................#..........................................................................................................................#........#.....|.....................|.........................................................................................................................................
......................................................#..........................#..........................................................................................................................#........#.....|.....................|.........................................................................................................................................
......................................................#..........................#..........................................................................................................................#........#.....|.....................|.........................................................................................................................................
......................................................############################..........................................................................................................................#........#.....|.......#||||||||||||||||||||||.................................................................................................................................
............................................................................................................................................................................................................#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.........................................#.......................................................................................
............................................................................................................................................................................................................#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
....................................................................................................................................................#.....................#.................................#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
....................................................................................................................................................#.....................#...................#.............#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
................................................................#...................................................................................#.....................#......#............#.............#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
................................................................#...........#.......................................................................#.....................#......#............#.............#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
................................................................#...........#.......................................................................#.....................#......#............#.............#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
................................................................#...........#.......................................................................#.....................#......#............#.............#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
................................................................#...........#.......................................................................#.....................#......#............#.............#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
................................................................#...........#.......................................................................#.....................#......#............#.............#........#.....|.......#~~~~~~~~~~~~~~~~~~~~#|.................................#.......#.......................................................................................
................................................................#############.......................................................................#.....................#......#............#.............##########.....|.......######################|.................................#.......#.......................................................................................
....................................................................................................................................................#.....................#......#............#............................|.............................|.................................#.......#...........................................................#.................#.........
....................................................................................................................................................#.....................#......#............#............................|.............................|.................................#.......#...........................................................#.................#.........
....................................................................................................................................................#.....................#......#............#............................|.............................|.................................#.......#...........................................................#.................#.........
....................................................................................................................................................#.....................#......#............#......#.#...................|.............................|.................................#.......#.....................................................#.....#.................#.........
....................................................................................................................................................#.....................#......#............#......#.#.......#||||||||||||||||||||.....................|...#..#..........................#.......#.....................................#...............#.....#.................#.........
....................................................................................................................................................#######################......#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|.....................|...#..#..........................#.......#.....................................#...............#.....#.................#.........
.................................................................................................................................................................................#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|...................||||||#..#.......#..................#.......#.....................................#...............#.....#.................#.........
.................................................................................................................................................................................#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|...................|#~~~~#..#.......#..................#########.....................................#...............#.....#.................#.........
.................................................................................................................................................................................#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|...................|#~~~~#..#.......#.........................................#......................#...............#.....#.................#.........
.................................................................................................................................................................................#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|...................|#~~~~#..#.......#.........................................#.............#........#...............#.....#.................#.........
.................................................................................................................................................................................#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|...................|#~~~~#..#.......#.........................................#.............#........#.......#.#.....#.....#.................#.........
.................................................................................................................................................................................#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|...................|#~~~~#..#.......#.........................................#.............#........#.......#.#.....#.....#.................#.........
..................................................................#..............................................................................................................#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|...................|#~~~~#..#.......#.........................................#.............#........#.......#.#.....#.....#.................#.........
.....................#...........#...................#............#..............................................................................................................#............#......#.#.......#~~~~~~~~~~~~~~~~~~#|...................|#~~~~####.......#.........................................#.............#........#.......#.#.....#.....#.................#.........
.....................#...........#...................#............#..............................................................................................................#............#......#.#.......####################|...................|#~~~~~~~~~~~~~~~#.........................................###############........#.......###.....#.....#.................#.........
.....................#...........#...................#............#..............................................................................................................#............#......#.#...........................|...................|#~~~~~~~~~~~~~~~#................................................................#...............#.....#.................#.........
.....................#...........#...................#............#..............................................................................................................#............#......#.#...........................|...................|#################................................................................#...............#.....#....#####........#.........
.....................#...........#...................#............#..................#......................#....................................................................##############......#.#...........................|...................|.................................................................................#...............#.....#....#...#........#.........
.....................#...........#..........#........#............#..................#......................#........................................................................................#.#...........................|...................|.................................................................................#...............#.....#....#####........#.........
.....................#...........#..........#.....#..#............#..................#......................#........................................................................................#.#...........................|...................|.................................................................................#...............#.....#.................#.........
.....................#...........#..........#.....#..#............#..................#......................#........................................................................................#.#...........................|...................|.................................................................................#...............#.....#.................#.........
.....................#...........#..........#.....#..#............#..................#......................#........................................................................................#.#...........................|...................|.................................................................................#...............#.....###################.........
.....................#...........#..........#.....#..#............#..................#......................#....#...................................................................................#.#...........................|...................|.................................................................................#...............#.................................
.....................#...........#..........#.....#..##############..................#.......#########......#....#..............#.....................................................#..............###...........................|...................|.................................................................................#...............#.................................
.....................#...........#..........#.....#..................................#.......#.......#......#....#..............#.................................................#...#............................................|..........||||||||||||||||||#........................................................................#...............#.................................
.....................#...........#..........#.....#..................................#.......#########......#....#..............#.................................................#...#............................................|..........|#~~~~~~~~~~~~~~~~#........................................................................#...............#.................................
.....................#...........#..........#.....#..................................#......................#....#..............#.................................................#...#............................................|..........|#~~~~~~~~~~~~~~~~#........................................................................#...............#.................................
.....................#...........#..........#.....#..................................#......................#....#..............#.................................................#...#............................................|..........|#~~~~~~~~~~~~~~~~#........................................................................#...............#.................................
.....................#...........#..........#.....#..................................#......................#....#..............#.................................................#...#............................................|..........|#~~~~~~#~~~#~~~~~#........#......#................................#.......................#################.................................
.....................#############..........#.....#..................................#......................#....#..............#.................................................#...#............................................|..........|#~~~~~~#~~~#~~~~~#........#......#...............#................#.........................................................................
............................................#.....#..................................#......................#....#..............#.................................................#...#............................................|..........|#~~~~~~#~~~#~~~~~#........#......#...............#................#.........................................................................
............................................#.....#..................................########################....#..............#.................................................#...#............................................|..........|#~~~~~~#####~~~~~#........#......#...............#................#.........................................................................
............................................#.....#..............................................................#..............#.................................................#...#............................................|..........|#~~~~~~~~~~~~~~~~#........#......#...............#................#.........................................................................
............................................#.....#..............................................................#..............#.................................................#...#............................................|..........|#~~~~~~~~~~~~~~~~#........#......#...............#................#.........................................................................
............................................#.....#..............................................................#..............#.................................................#...#............................................|..........|##################........#......#...............#................#.........................................................................
............................................#.....#..............................................................#..............#.................................................#...#............................................|..........|..........................#......#...............#................#.........................................................................
............................................#.....#..............................................................#..............#.................................................#####............................................|..........|..........................#......#...............#................#.........................................................................
............................................#.....#..............................................................#..............#..................................................................................................|..........|..........................#......#...............#................#.........................................................................
............................................#.....#..............................................................#..............#..................................................................................................|..........|..........................#......#...............#................#.........................................................................
............................................#.....#..............................................................#..............#..................................................................................................|..........|..........................#......#...............#................#.........................................................................
............................................#######..............................................................#..............#..................................................................................................|.#..#.....|..........................########...............#................#.........................................................................
.................................................................................................................################.............................................................................................|||||||#..#.....|.................................................#................#.........................................................................
............................................................................................................................................................................#.....#...........................................|#~~~~~#..#||||||||...............................................#................#.........................................................................
............................................................................................................................................................................#.....#...........................................|#~~~~~#..#~~~~~~#|...............................................#................#.........................................................................
............................................................................................................................................................................#.....#...........................................|#~~~~~#..#~~~~~~#|...............................................#................#..............#.....#....................................................
....................................................#.......................#.........#.#...................................................................................#.....#...........................................|#~~~~~#..#~~~~~~#|...............................................#................#..............#.....#.........................#..........................
....................................................#.......................#.........#.#...................................................................................#.....#...........................................|#~~~~~#..#~~~~~~#|...............................................#................#..............#.....#.........#...............#..........................
....................................................#.......................#.........#.#..................................#................................................#.....#...........................................|#~~~~~#..#~~~~~~#|...............................................#................#..............#.....#.........#...............#..........................
....................................................#.......................#.........#.#...........................#......#................................................#.....#...........................................|#~~~~~####~~~~~~#|...............................................#................#..............#.....#.........#...............#..........................
....................................................#.......................#.........#.#...........................#......#................................................#.....#...........................................|#~~~~~~~~~~~~~~~#|...............................................#................#..............#.....#.........#...............#..........................
....................................................#.......................#.........#.#...........................#......#................................................#.....#...........................................|#~~~~~~~~~~~~~~~#|...............................................#................#..............#.....#.........#...............#..........................
....................................................#.......................#.........#.#...........................#......#................................................#.....#....................#......................|#~~~~~~~~~~~~~~~#|...............................................#................#..............#.....#.........#...............#..........................
....................................................#.......................#.........#.#...........................#......#................................................#.....#....................#...................#..|#################|...............................................#................#..............#.....#.........#...............#..........................
....................................................#.......................#.........#.#...........................#......#................................................#.....#....................#...................#..|.................|...............................................#................#..............#.....#.........#################..........................
....................................................#.......................#.........#.#...........................#......#..............#.......#.........................#.....#....................#...................#..|.................|...............................................#................#..............#.....#....................................................
....................................................#.......................#.........#.#...........................#......#..............#.......#.........................#######....................#...................#..|.................|...............................................##################..............#.....#....................................................
....................................................#.......................#.........#.#...........................#......#..............#.......#....................................................#...................#..|.................|...............................................................................#.....#....................................................
....................................................#.......................#.........#.#...........................#......#..............#.......#....................................................#...................#..|.................|...............................................................................#.....#....................................................
....................................................#.......................#.........#.#...........................#......#..............#.......#....................................................#...................#..|.................|...............................................................................#.....#....................................................
....................................................#.......................#.........#.#...........................########..............#.......#....................................................#...................#..|.................|...............................................................................#.....#....................................................
....................................................#.......................#.........#.#.................................................#.......#....................................................#...................#..|...#||||||||||||||||||||||||||||.................................................................#.....#....................................................
....................................................#.......................#.........###.................................................#.......#....................................................#...................#..|...#~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................................................................#.....#....................................................
....................................................#########################.............................................................#.......#....................................................#...................#..|...#~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................................................................#.....#....................................................
..........................................................................................................................................#.......#....................................................#...................#..|...#~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................................................................#######....................................................
..........................................................................................................................................#.......#....................................................#...................#..|...#~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................................................................................................................
..........................................................................................................#........................#......#.......#....................................................#...................#..|...#~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................................................................................................................
..........................................................................................................#........................#......#.......#....................................................#...................#..|...#~~~~~~~~~~~~########~~~~~~#|............................................................................................................................
..........................................................................................................#........................#......#.......#....................................................#...................#..|...#~~~~~~~~~~~~#......#~~~~~~#|............................................................................................................................
..........................................................................................................#........................#......#.......#....................................................#...................#..|...#~~~~~~~~~~~~#......#~~~~~~#|............................................................................................................................
..........................................................................................................#........................#......#.......#....................................................#...................#..|...#~~~~~~~~~~~~#......#~~~~~~#|............................................................................................................................
..........................................................................................................#........................#......#.......#....................................................#...................#..|...#~~~~~~~~~~~~########~~~~~~#|............................................................................................................................
..........................................................................................................#........................#......#########....................................................#...................#..|...#~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................................................................................................................
..........................................................................................................#........................#...................................................................#...................#..|...#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........#.........#......................................................................................................
..........................................................................................................#.........###............#...................................................................#...................#..|...############################|...........#.........#..............................................................#.......................................
..........................................................................................................#.........#.#............#...................................................................#...................#..|...............................|...........#.........#.......................................................#......#.......................................
..........................................................................................................#.........#.#............#...................................................................#...................#..|...............................|...........#.........#.......................................................#......#.......................................
..........................................................................................................#.........#.#............#...................................................................#...................#..|...............................|...........###########.......................................................#......#.......................................
.......................................................................#..................#...............#.........#.#............#...................................................................#...................#..|...............................|.............................................................................#......#.......................................
.......................................................................#..................#...............#.........###............#...................................................................#####################..|...............................|.............................................................................#......#.......................................
.......................................................................#..................#...............#........................#..........................................................................................|...............................|.............................................................................#......#.......................................
.......................................................................#..................#...............#........................#..........................................................................................|...............................|.............................................................................########.......................................
.......................................................................#..................#...............##########################..........................................................................................|...............................|............................................................................................................................
.......................................................................#..................#...................................................................................................................................|...............................|.........#.#................................................................................................................
.......................................................................#..................#...................................................................................................................................|.............................||||||||||||#.#...............................................#..........................#.....................................
.......................................................................#..................#...................................................................................................................................|.............................|#~~~~~~~~~~#.#............................................#..#.....#....................#.....................................
.......................................................................#..................#...................................................................................................................................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.......................................................................#..................#...................................................................................................................................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.......................................................................#..................#........................................................................#..........................................................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.............................#..............#..........................#..................#.......................................................#................#..........................................................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.............................#..............#..........................#..................#.......................................................#................#..........................................................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.............................#..............#..........................#..................#.......................................................#................#..........................................................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.............................#..............#..........................#..................#.......................................................#................#..........................................................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.............................#..............#..........................#..................#.......................................................#................#....................#.....................................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.............................#..............#..........................#..................#.......................................................#................#....................#.........#...........................|.............................|#~~~~~~~~~~#.#.....#......................................#..#.....#....................#.....................................
.............................#..............#..........................####################.......................................................#........###.....#....................###########...........................|.............................|#~~~~~~~~~~###.....#......................................####.....#....................#.....................................
.............................#......###.....#.....................................................................................................#........#.#.....#..........................................................|.............................|#~~~~~~~~~~~~~~~~~~#...............................................#....................#.....................................
.............................#......#.#.....#.....................................................................................................#........###.....#..........................................................|.............................|#~~~~~~~~~~~~~~~~~~#...............................................#....................#.....................................
.............................#......#.#.....#.....................................................................................................#................#..........................................................|.............................|#~~~~~~~~~~~~~~~~~~#...............................................#....................#.....................................
.............................#......###.....#.....................................................................................................#................#..........................................................|.............................|####################...............................................#....................#.....................................
.............................#..............#.....................................................................................................##################..........................................................|.............................|...................................................................#....................#.....................................
.............................#..............#.................................................................................................................................................................................|.............................|...................................................................#....................#.....................................
.............................################.................................................................................................................................................................................|.............................|...................................................................#....................#.....................................
..............................................................................................................................................................................................................................|.............................|...................................................................#....................#.....................................
..............................................................................................................................................................................................................................|.............................|...................................................................#....................#.....................................
..............................................................................................................................................................................................................................|.............................|...................................................................######################.....................................
..............................................................................................................................................................................................................................|....................|||||||||||||||||||||||||...............................................................................................................
..............................................................................................................................................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
..............................................................................................................................................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
..............................................................................................................................................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
..............................................................................................................................................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
..............................................................................................................................................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
....#.........................................................................................................................................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
....#......................#..................................................................................................................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|#~~~~#~~#~~~~~~~~~~~~~#|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|#~~~~#~~#~~~~~~~~~~~~~#|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|#~~~~####~~~~~~~~~~~~~#|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|#~~~~~~~~~~~~~~~~~~~~~#|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|#######################|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|.......................|...............................................................................................................
....#......................#..................................................................................#.......#.......................................................................................................|....................|.......................|...............................................................................................................
....#......................#........................................................................#.........#.......#.......................................................................................................|....................|.......................|...............................................................................................................
....#......................#........................................................................#....#....#.......#.......................................................................................................|....................|.......................|...............................................................................................................
....#......................#........................................................................#....#....#.......#.......................................................................................................|....................|.......................|...............................................................................................................
....#......................#......................................#.................................#....#....#.......#.......................................................................................................|....................|.......................|...............................................................................................................
....#......................#...................#..................#.................................#....#....#########.......................................................................................................|....................|.......................|...............................................................................................................
....#......................#...................#..................#.................................#....#....................................................................................................................|....................|.......................|...............................................................................................................
....#......................#...................#..................#.................................#....#....................................................................................................................|....................|.......................|...............................................................................................................
....########################...................#..................#.................................#....#....................................................................................................................|.......||||||||||||||||||||||||.............|...............................................................................................................
...............................................####################.................................#....#....................................................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|...............................................................................................................
....................................................................................................#....#....................................................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|......................................................................#........#...............................
....................................................................................................#....#....................................................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|......................................................................#........#...............................
....................................................................................................#....#....................................................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|......................................................................#........#...............................
....................................................................................................#....#....................................................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|......................................................................#........#...............................
....................................................................................................#....#....................#........#......................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|......................................................................#........#...............................
....................................................................................................#....#....................#........#......................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|......................................................................#........#...............................
.......................#............................................................................#....#....................#........#......................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|......................................................................#........#...............................
.......................#.....#......................................................................#....#....................#........#......................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|.........................................#............................#........#...............................
.......................#.....#......................................................................######....................#........#......................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|.........................................#.........................#..#........#...............................
.......................#.....#................................................................................................#........#......................................................................................|.......|#~~~~~~~~~~~~~~~~~~~~#|.............|.........................................#.........................#..#........#...............................
.......................#.....#................................................................................................#........#......................................................................................|.......|######################|.............|.........................................#.........................#..#........#...............................
.......................#.....#................................................................................................#........#......................................................................................|.......|......................|.............|.........................................#.........................#..#........#...............................
.......................#.....#................................................................................................#........#......................................................................................|.......|......................|.............|.........................................#.........................#..#........#...............................
.......................#.....#................................................................................................#........#........................................................#.......#.....................|.......|......................|.............|.........................................#.........................#..#........#...............................
.......................#.....#................................................................................................#........#........................................................#.......#.....................|.......|......................|.............|.........................................#.........................#..#........#...............................
.......................#.....#................................................................................................#........#........................................................#.......#.....................|.......|......................|.............|.........................................#.........................#..##########...............................
.......................#.....#................................................................................................#........#........................................................#.......#.....................|.......|......................|.............|.........................................#.........................#...........................................
.......................#.....#................................................................................................#........#........................................................#.......#.....................|.......|......................|.............|.........................................#.........................#...........................................
.......................#.....#.........................................................#......................................#........#........................................................#.......#.....................|.......|......................|.............|.........................................#.........................#...........................................
.......................#.....#.........................................................#.#....................................#........#........................................................#.......#.....................|.......|......................|.............|.........................................#.........................#...........................................
.......................#.....#.........................................................#.#....................................#........#........................................................#.......#.....................|.......|...............#||||||||||||||||||..|.........................................###########################...........................................
.......................#.....#.........................................................#.#....................................##########........................................................#.......#.....................|.......|...............#~~~~~~~~~~~~~~~~#|..|...............................................................................................................
.......................#######.........................................................#.#......................................................................................................#.......#.....................|.......|...............#~~~~~~~~~~~~~~~~#|..|...............................................................................................................
.......................................................................................#.#......................................................................................................#########.....................|.......|...............#~~~~~~~~~~~~~~~~#|..|...............................................................................................................
.......................................................................................#.#....................................................................................................................................|.......|...............#~~~~~~~~~~~~~~~~#|..|...............................................................................................................
.......................................................................................#.#....................................................................................................................................|.......|...............#~~~~~~~~~~~~~~~~#|..|...............................................................................................................
.......................................................................................#.#....................................................................................................................................|.......|...............#~~~~~~~~~~~~~~~~#|..|...............................................................................................................
.......................................................................................###....................................................................................................................................|.......|...............#~~~~~~~~~~~~~~~~#|..|.......................#.......................................................................................
.............................#................................................................................................................................................................................................|.......|...............#~~~~~~~~~~~~~~~~#|..|.......................#...#...................................................................................
........#....................#..........................................................................................................................................................................................#.....|.......|...............#~~~~~~~~~~~~~~~~#|..|.......................#...#...................................................................................
........#....................#.....................................................................................#........#..................................................................#........................#.....|.......|...............#~~~~~~~~~~~~~~~~#|..|.......................#...#...................................................................................
........#....................#.....................................................................................#........#..................................................................#........................#.....|.......|...............#~~~~~~~~~~~~~~~~#|..|.......................#...#...................................................................................
........#....................#.....................................................................................#........#..................................................................#........................#.....|.......|...............#~~~~~~~~~~~~~~~~#|..|.......................#...#...................................................................................
........#....................#.....................................................................................#........#..................................................................#........................#.....|.......|...............#~~~~~~~~~~~~~~~~#|..|.......................#...#...................................................................................
........#....................#.....................................................................................#........#..................................................................#........................#.....|.......|...............##################|..|.......................#...#...................................................................................
........#....................#.....................................................................................#........#..................................................................##########################.....|.......|.................................|..|.......................#...#...................................................................................
........#.....######.........#.....................................................................................#........#.................................................................................................|.......|.................................|..|.......................#####...................................................................................
........#.....#....#.........#...............................................#.....................................#........#.................................................................................................|.......|....#..#.........................|..|...............................................................................................................
........#.....######.........#...............................................#..........................#..........#........#.................................................................................................|.....|||||||#..#.........................|..|...............................................................................................................
........#....................#...............................................#..........................#..........#........#.................................................................................................|.....|#~~~~~#..#.........................|..|...............................................................................................................
........#....................#...............................................#..........................#..........#........#.................................................................................................|.....|#~~~~~#..#......#..................|..|...............................................................................................................
........######################...............................................#..........................#..........#........#.........................................................................................|||||||||||||||#~~~~~#..#......#..................|..|...............................................................................................................
.............................................................................############################..........#........#.........................................................................................|#~~~~~~~~~~#||#~~~~~#..#......#......||||||||||||||||||||||.........................................................................................................
...................................................................................................................#........#.........................................................................................|#~~~~~~~~~~#||#~~~~~#..#......#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#.........................................................................................|#~~~~~~~~~~#||#~~~~~#..#......#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#.........................................................................................|#~~~~~~~~~~#||#~~~~~#..#......#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#....................................................................#....................|#~~~~~~~~~~#||#~~~~~####......#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|#~~~~~~~~~~#||#~~~~~~~~~~~~~~~#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|#~~~~~~~~~~#||#~~~~~~~~~~~~~~~#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|############||#~~~~~~~~~~~~~~~#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|............||#~~~~~~~~~~~~~~~#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|............||#~~~~~~~~~~~~~~~#......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|............||#################......|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|............||.......................|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|............||.......................|#~~~~~~~~~~~~~~~~~~#|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|............||.......................|####################|.........................................................................................................
...................................................................................................................#........#..........................................#.........................#....................|............||.......................|....................|.........................................................................................................
...................................................................................................................##########..........................................#.........................#....................|............||.......................|....................|...............................................#.........................................................
.......................................................................................................................................................................#.........................#....................|............||.......................|....................|.................................#.............#.........................................................
.......................................................................................................................................................................#.........................#....................|#||||||||||||||||||||||||||..........|....................|.................................#.............#.........................................................
.......................................................................................................................................................................#.........................#....................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|....................|.................................#.............#.........................................................
.......................................................................................................................................................................#.........................#....................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|||||||||||||||||.........................#.............#.........................................................
...................................................................................................................................#...................................#.........................#....................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.........................#.............#.........................................................
...................................................................................................................................#.....................#.............#.........................#....................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.........................#.............#.........................................................
...................................................................................................................................#.....................#.............#.........................#....................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.........................#.............#.........................................................
...................................................................................................................................#.....................#.............#.........................#....................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.........................###############.........................................................
...................................................................................................................................#.....................#.............#.........................#....................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.................................................................................................
...........................................................................................................................#.......#.....................#.............###########################....................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.................................................................................................
....................................................................................................................#......#.......#.....................#............................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.................................................................................................
....................................................................................................................#......#.......#.....................#............................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.................................................................................................
....................................................................................................................#......#.......#.....................#............................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.................................................................................................
...........................................................#........................................................#......#.......#.....................#............................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|.................................................................................................
...............................#...........................#........................................................#......#.......#.....................#............................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........|............|#~~~~~~~~~~~~~#|...........................................................................................#.....
...............................#...........................#........................................................#......#.......#.....................#............................................................|##########################|..........|............|#~~~~~~~~~~~~~#|.............................................................................#.............#.....
...............................#...........................#........................................................#......#.......#.....................#............................................................|..........................|..........|............|#~~~~~~~~~~~~~#|.............................................................................###############.....
...............................#...........................#........................................................#......#.......#.....................#............................................................|..........................|..........|............|#~~~~~~~~~~~~~#|.................................................................................................
...............................#...........................#........................................................#......#.......#.....................#............................................................|..........................|..........|............|###############|.................................................................................................
...............................#...........................#........................................................#......#.......#.....................#........................#...................................|..........................|..........|............|...............|.................................................................................................
...............................#...........................#........................................................#......#.......#.....................#....#...................#...................................|..........................|..........|............|...............|.................................................................................................
...............................#.........############......#........................................................#......#.......#.....................#....#...................#...................................|................#...#.....|..........|............|...............|.................................................................................................
...............................#.........#..........#......#........................................................#......#.......#.....................#....#...................#...................................|................#...#.....|..........|............|...............|.................................................................................................
...............................#.........############......#........................................................#......#.......#.....................#....#...................#...................................|..........#.....#...#||||||||........|............|...............|.................................................................................................
...............................#...........................#........................................................#......#.......#.....................#....#...................#...................................|..........#.....#...#~~~~~~#|........|............|...............|.................................................................................................
...............................#...........................#........................................................#......#.......#.....................#....#...................#...................................|..........#.....#...#~~~~~~#|........|............|...............|.................................................................................................
...............................#...........................#........................................................#......#.......#######################....#...................#...................................|..........#.....#...#~~~~~~#|........|............|...............|.................................................................................................
...............................#...........................#........................................................#......#..................................#...................#...................................|..........#.....#...#~~~~~~#|........|............|...............|.................................................................................................
...............................#...........................#........................................................#......#..................................#...................#...................................|..........#.....#...#~~~~~~#|........|............|....|||||||||||||||||||#.........................................................................................
...............................#...........................#.......................#................................#......#..................................#...................#.........................|||||||||||||||||#...#.....#...#~~~~~~#|........|............|....|#~~~~~~~~~~~~~~~~~#.........................................................................................
...............................#...........................#....#..................#................................#......#..................................#...................#.........................|#~~~~~~~~~~~~~~~#...#.....#...#~~~~~~#|........|............|....|#~~~~~~~~~~~~~~~~~#.....#......#............................................................................
...............................#...........................#....#..................#................................#......#..................................#...................#.........................|#~~~~~~~~~~~~~~~#...#.....#...#~~~~~~#|........|............|....|#~~~~#~~~~#~~~~~~~#.....#......#............................................................................
...............................#...........................#....#..................#................................#......#..................................#...................#.........................|#~~~~~~~~~~~~~~~#...#.....#...#~~~~~~#|........|............|....|#~~~~#~~~~#~~~~~~~#.....#......#............................................................................
...............................#############################....#..................#................................#......#..................................#...................#.........................|#~~~~~~~~~~~~~~~#...#.....#####~~~~~~#|........|............|....|#~~~~#~~~~#~~~~~~~#.....#......#............................................................................
................................................................####################................................########..................................#...................#.........................|#~~~~~~~~~~~~~~~#...#~~~~~~~~~~~~~~~~#|........|............|....|#~~~~#~~~~#~~~~~~~#.....#......#............................................................................
..............................................................................................................................................................#...................#.........................|#~~~~~~~~~~~~~~~#...#~~~~~~~~~~~~~~~~#|........|............|....|#~~~~#~~~~#~~~~~~~#.....#......#............................................................................
..............................................................................................................................................................#...................#.........................|#~~~~~~~~~~~~~~~#...##################|........|............|....|#~~~~######~~~~~~~#.....########............................................................................
...............................................................#....#.........................................................................................#...................#.........................|#################.....................|........|............|....|#~~~~~~~~~~~~~~~~~#..........................................................#..............................
...............................................................#....#.........................................................................................#...................#.........................|......................................|........|............|....|#~~~~~~~~~~~~~~~~~#..........................................................#.............#................
..#....................................#...#...................#....#.........................................................................................#...................#.........................|......................................|........|............|....|###################..........................................................#.............#................
..#..............#.....................#...#...................#....#...................................................#.....................................#...................#.........................|......................................|........|............|....|.............................................................................#.............#................
..#..............#.....................#...#...................#....#...................................................#......................#..............#...................#.........................|......................................|........|............|....|.............................................................................#.............#................
..#..............#.....................#...#...................#....#...................................................#......................#..............#####################.........................|......................................|........|............|....|.............................................................................#.............#................
..#..............#.....................#...#...................#....#...................................................#......................#............................................................|......................................|........|............|....|.............................................................................#.............#................
..#..............#.....................#...#...................#....#...................................................#......................#............................................................|......................................|........|.#||||||||||||||||||||||.......................................................................#.............#................
..#..............#.....................#...#...................#....#...................................................########################............................................................|......................................|........|.#~~~~~~~~~~~~~~~~~~~~#|.......................................................................#.............#................
..#..............#.....................#...#...................#....#.......................................................................................................................................|......................................|........|.#~~~~~~~~~~~~~~~~~~~~#|.......................................................................#.............#................
..#..............#.....................#####...................#....#.......................................................................................................................................|......................................|........|.#~~~~~~~~~~~~~~~~~~~~#|.......................................................................#.............#................
..#..............#.............................................#....#.......................................................................................................................................|......................................|........|.#~~~~~~~~~~~~~~~~~~~~#|.......................................................................#.............#................
..#..............#.............................................#....#.......................................................................................................................................|......................................|........|.#~~~~~~~~~~~~~~~~~~~~#|.......................................................................#.............#................
..#..............#.............................................#....#......................................................................................#................................................|......................................|........|.#~~~~~~~~~~~~~~~~~~~~#|......................................................#................#.............#................
..#..............#.............................................######....................................................#.........#...........#...........#..........................................||||||||||||||||||...........................|........|.#~~~~~~~~~~~~~~~~~~~~#|......................................................#....#...........#.............#................
..#..............#.......................................................................................................#.........#...........#...........#..........................................|#~~~~~~~~~~~~~~#|...........................|........|.#~~~~~~~~~~~~~~~~~~~~#|......................................................#....#...........#.............#................
..#..............#.......................................................................................................#.........#...........#...........#..........................................|#~~~~~~~~~~~~~~#|...........................|........|.#~~~~~~~~~~~~~~~~~~~~#|......................................................#....#...........#.............#................
..#..............#.......................................................................................................#.........#...........#...........#..........................................|#~~~~~~~~~~~~~~#|...........................|........|.#~~~~~~~~~~~~~~~~~~~~#|......................................................#....#...........#.............#................
..#..............#.......................................................................................................#.........#...........#...........#..........................................|#~~~~~~~~~~~~~~#|...........................|........|.######################|......................................................#....#...........#.............#................
..#..............#.......................................................................................................#.........#...........#...........#..........................................|#~~~~~~~~~~~~~~#|...........................|........|.......................|......................................................#....#...........#.............#................
..################...................................................#...................................................#.........#...........#...........#..........................................|#~~~~~~###~~~~~#|...........................|........|.......................|......................................................#....#...........#.............#................
.....................................................................#...........................#.......................#.........#...........#...........#..........................................|#~~~~~~#.#~~~~~#|...........................|........|.......................|......................................................#....#...........#.............#................
.....................................................................#...........................#..................#....#.........#...........#...........#..........................................|#~~~~~~#.#~~~~~#|...........................|........|.......................|......................................................#....#...........#.............#................
.....................................................................#...........................#..............#...#....#.........#...........#...........#..........................................|#~~~~~~#.#~~~~~#|...................|||||||||||||||||||#.....................|......................................................#....#...........#.............#................
.....................................................................#...........................#..............#...#....#.........#...........#...........#..........................................|#~~~~~~#.#~~~~~#|...................|#~~~~~~~~~~~~~~~~~#.....................|......................................................######...........#.............#................
.....................................................................#...........................#..............#####....#.........#...........#...........#..........................................|#~~~~~~#.#~~~~~#|...................|#~~~~~~~~~~~~~~~~~#.....................|...#.....#.............................................................#.............#................
.....................................................................#...........................#.......................#.........#...........#...........#..........................................|#~~~~~~#.#~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................||||||#.....#.............................................................#.............#................
.....................................................................#...........................#.......................#.........#...........#...........#..........................................|#~~~~~~###~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~#.....#.............................................................#.............#................
.....................................................................#................#####......#.......................#.........#...........#...........#..........................................|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~#.....#.......#.....................................................###############................
.....................................................................#................#...#......#.......................###########...........#...........#..........................................|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~#.....#.......#....................................................................................
.....................................................................#................#...#......#.............................................#...........#..........................................|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~#.....#.......#....................................................................................
.....................................................................#................#...#......#.............................................#...........#..........................................|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~#.....#.......#....................................................................................
.....................................................................#................#####......#.............................................#############..........................................|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~#.....#.......#....................................................................................
.....................................................................#...........................#....................................................................................................|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~#.....#.......#....................................................................................
.....................................................................#...........................#......................................................................#...................#.........|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~#######.......#....................................................................................
.....................................................................#...........................#......................................................................#...................#.........|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~~~~~~~~~~~~~~~#....................................................................................
.....................................................................#...........................#......................................................................#####################.........|#~~~~~~~~~~~~~~#|...................|#~~~~~~~~~~~~~~~~~#...................|#~~~~~~~~~~~~~~~~~~#....................................................................................
.....................................................................#...........................#....................................................................................................|#~~~~~~~~~~~~~~#|...................|###################...................|####################....................................................................................
.....................................................................#...........................#....................................................................................................|################|...................|......................................|........................................................................................................
.....................................................................#...........................#....................................................................................................|................|...................|......................................|........................................................................................................
.....................................................................#...........................#....................................................................................................|................|...................|......................................|........................................................................................................
.....................................................................#...........................#....................................................................................................|................|...................|......................................|........................................................................................................
.....................................................................#...........................#....................................................................................................|................|...................|......................................|........................................................................................................
.....................................................................#...........................#....................................................................................................|................|...................|......................................|........................................................................................................
.....................................................................#...........................#....................................................................................................|................|...................|......................................|........................................................................................................
.....................................................................#...........................#.................................................................................................#||||||||||||||.....|....|||||||||||||||||||||||||||...........................|........................................................#...............................................
.....................................................................#############################.................................................................................................#~~~~~~~~~~~~#|.....|....|#~~~~~~~~~~~~~~~~~~~~~~~#|...........................|................................#.......................#...............................................
...................................................................................................................................................................................................#~~~~~~~~~~~~#|.....|....|#~~~~~~~~~~~~~~~~~~~~~~~#|............|||||||||||||||||||||||||||.....................#.......................#...............................................
...................................................................................................................................................................................................#~~~~~~~~~~~~#|.....|....|#~~~~~~~~~~~~~~~~~~~~~~~#|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
...................................................................................................................................................................................................#~~~~~~~~~~~~#|.....|....|#~~~~~~~~~~~~~~~~~~~~~~~#|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.................................................................................#.................................................................................................................#~~~~~~~~~~~~#|.....|....|#~~~~~~~~~~~~#~~~~#~~~~~#|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.....................................................................#...........#.................................................................................................................##############|.....|....|#~~~~~~~~~~~~#~~~~#~~~~~#|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.....................................................................#...........#...............................................................................................................................|.....|....|#~~~~~~~~~~~~#~~~~#~~~~~#|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.....................................................................#...........#...............................................................................................................................|.....|....|#~~~~~~~~~~~~######~~~~~#|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.....................................................................#############...............................................................................................................................|.....|....|#~~~~~~~~~~~~~~~~~~~~~~~#|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.................................................................................................................................................................................................................|.....|....|#~~~~~~~~~~~~~~~~~~~~~~~#|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.................................................................................................................................................................................................................|.....|....|#########################|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.................................................................................................................................................................................................................|.....|....|.........................|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.................................................................................................................................................................................................................|.....|....|.........................|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...............................................
.................................................................................................................................................................................................................|.....|....|.........................|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#...........................................#...
.................................................................................................................................................................................................................|.....|....|.........................|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#......................#....................#...
...............................................................................................................................................................................#............#....................|.....|....|.........................|............|#~~~~~~~~~~~~~~~~~~~~~~~#|.....................#.......................#......................#....................#...
...............................................................................................................................................................................#............#....................|.....|....|.........................|............|#########################|.....................#.......................#......................#....................#...
...................................................................................#...........................................................................................#............#....................|.....|....|.........................|............|.........................|.....................#.......................#......................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|....|.....#....#..............|............|.........................|.....................#########################......................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|..||||||||#....#..............|............|.........................|....................................................................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|..|#~~~~~~#....#..............|............|.........................|....................................................................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|..|#~~~~~~#....#......#.......|............|.........................|....................................................................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|..|#~~~~~~#....#......#.......|............|.........................|....................................................................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|..|#~~~~~~#....#......#.......|............|.........................|....................................................................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|..|#~~~~~~#....#......#.......|............|.........................|....................................................................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|..|#~~~~~~#....#......#.......|............|.........................|....................................................................#....................#...
...............................................................................#...#...........................................................................................#............#....................|.....|..|#~~~~~~######......#.......|............|.........................|....................................................................#....................#...
...............................................................................#...#...........................................................................................##############....................|.....|..|#~~~~~~~~~~~~~~~~~~#.......|#|||||||||||||||||||||||||||||||||||||||||||||||...........................................................#....................#...
...............................................................................#...#.............................................................................................................................|.....|..|#~~~~~~~~~~~~~~~~~~#.......|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................#....................#...
...............................................................................#...#.............................................................................................................................|.....|..|#~~~~~~~~~~~~~~~~~~#.......|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................#....................#...
...............................................................................#####.............................................................................................................................|.....|..|####################.......|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................#....................#...
.................................................................................................................................................................................................................|.....|..|...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................######################...
.................................................................................................................................................................................................................|.....|..|...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................................................................................
.................................................................................................................................................................................................................|.....|..|...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~###~~~~~~#|....................................................................................
...................................#..................................................#.............#............................................................................................................|.....|..|...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.#~~~~~~#|....................................................................................
...................................#........#.........................................#.............#............................................................................................................|.....|..|...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~###~~~~~~#|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#......................................................|.....|..|...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#..................#...................................|.....|..|...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#..................#...................................|.....|..|...........................|###############################################|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#..................#...................................|.....|..|...........................|...............................................|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#..................#...................................|.....|..|...........................|...............................................|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#..................#...................................|.....|..|..............#...#........|...............................................|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#..................#...................................|.....|..|..............#...#........|...............................................|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#..................#...................................|.....|..|.........#....#...#|||||||||||.............................................|................#...........#.......................................................
...................................#........#.........................................#.............#.....................................................#..................#..................#......#.........|.....|..|.........#....#...#~~~~~~~~~#|.................................||||||||||||||||||||||||||||.#...........#.......................................................
...................................#........#.........................................#.............#..................................#..................####################..................#......#.........|.....|..|.........#....#...#~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.#...........#.......................................................
...................................#........#...........#.............................#.............#........#.........................#........................................................#......#.........|.....|..|.........#....#...#~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.#...........#.......................................................
...................................#........#...........#...................#.........###############........#.........................#........................................................########.........|.....|..|.........#....#...#~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.#...........#...................#..............#....................
...................................#........#...........#...................#................................#.........................#.........................................................................|.....|..|.........#....#...#~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.#...........#...................#..............#....................
...................................#........#...........#...................#................................#.........................#.........................................................................|.....|..|.........#....#...#~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.#...........#...................#..............#....................
...................................#........#...........#...................#................................#.........................#.........................................................................|.....|..|.........#....#####~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.#...........#...................#..............#....................
...................................#........#...........#...................#................................###########################.........................................................................|.....|..|.........#~~~~~~~~~~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.#...........#...................#..............#....................
...................................#........#...........#...................#....................................................................................................................................|.....|..|.........#~~~~~~~~~~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.#############...................#..............#....................
...................................#........#...........#####################......................................................................#.....#.......................................................|.....|..|.........#~~~~~~~~~~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.................................#..............#....................
...................................#........#......................................................................................................#.....#.......................................................|.....|..|.........#~~~~~~~~~~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.................................#..............#....................
...................................#........#......................................................................................................#.....#.......................................................|.....|..|.........#~~~~~~~~~~~~~~~~~~#|.................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|.................................#..............#....................
...................................#........#......................................................................................................#.....#.......................................................|.....|..|.........####################|.................................|##########################|.................................#..............#....................
...................................#........#......................................................................................................#.....#.......................................................|.....|..|.............................|.................................|..........................|.................................#..............#....................
...................................#........#......................................................................................................#.....#.......................................................|.....|..|.............................|.................................|..........................|.................................#..............#....................
...................................#........#......................................................................................................#.....#.......................................................|.....|..|...#.....#...................|.................................|..........................|.................................################....................
...................................#........#......................................................................................................#.....#.......................................................|.....|||||||#.....#...................|.................................|..........................|.....................................................................
...................................#........#......................................................................................................#.....#.......................................................|.....||#~~~~#.....#...................|.................................|..........................|.....................................................................
...................................##########......................................................................................................#.....#.......................................................|.....||#~~~~#.....#.......#...........|.................................|..........................|.....................................................................
...................................................................................................................................................#.....#.......................................................|.....||#~~~~#.....#.......#...........|.................................|..................#.#.....|.....................................................................
...................................................................................................................................................#.....#.......................................................|.....||#~~~~#.....#.......#...........|.................................|..................#.#.....|.....................................................................
...................................................................................................................................................#.....#.......................................................|.....||#~~~~#.....#.......#...........|.................................|.........#........#.#||||||||...................................................................
...................................................................................................................................................#.....#.......................................................|.....||#~~~~#.....#.......#...........|.................................|.........#........#.#~~~~~~#|...#............#..................................................
...................................................................................................................................................#.....#.......................................................|.....||#~~~~#######.......#...#||||||||||||||||||||||||||||||||||||||||||||||||||.#........#.#~~~~~~#|...#............#..................................................
............................................................................................................................#......................#######.......................................................|.....||#~~~~~~~~~~~~~~~~~~#...#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.#........#.#~~~~~~#|...#............#..................................................
.......................#..........................................................................#.........................#..................................................#.................................|.....||#~~~~~~~~~~~~~~~~~~#...#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.#........#.#~~~~~~#|...#............#..................................................
...........#...........#..........................................................................#.........................#..............................................#...#.................................|.....||#~~~~~~~~~~~~~~~~~~#...#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.#........#.#~~~~~~#|...#............#..................................................
...........#...........#..........................................................................#.........................#..............................................#...#.................................|.....||#~~~~~~~~~~~~~~~~~~#...#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.#........#.#~~~~~~#|...#............#..................................................
...........#...........#...........................#...#..........................................#.........................#..............................................#...#.................................|.....||####################...#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.#........###~~~~~~#|...#............#..................................................
...........#...........#...........................#...#..........................................#.........................#..........#...................#...............#...#.................................|.....||.......................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.#~~~~~~~~~~~~~~~~~#|...#............#..................................................
...........#...........#...........................#####..........................................#.........................#..........#...................#...............#...#.................................|.....||.......................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.#~~~~~~~~~~~~~~~~~#|...#............#..................................................
...........#...........#..........................................................................#.........................#..........#...................#...............#...#.................................|.....||.......................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.###################|...#............#..................................................
...........#...........#..........................................................................#.........................#..........#...................#...............#...#.................................|.....||.......................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................|...#............#..................................................
...........#...........#..........................................................................#.........................#..........#...................#...............#...#.................................|.....||.......................##################################################|....................|...#............#..................................................
...........#...........#..........................................................................#.........................#..........#...................#...............#...#.................................|.....||.........................................................................|....................|...#............#..................................................
...........#...........#..........................................................................#.........................#..........#..........####.....#...............#...#.................................|.....||.........................................................................|....................|...#............#..................................................
...........#...........#..........................................................................#.........................#..........#..........#..#.....#...............#...#.................................|.....||.........................................................................|....................|...##############..................................................
...........#...........#..........................................................................#.........................#..........#..........#..#.....#...............#...#.................................|.....||.........................................................................|....................|...................................................................
...........#...........#..........................................................................#.........................#..........#..........#..#.....#...............#...#.................................|.....||.........................................................................|....................|...................................................................
...........#...........#..........................................................................#.........................#..........#..........#..#.....#...............#...#...............................#|||||||||||||||||||||||...........................................................|....................|...................................................................
...........#...........#..........................................................................###########################..........#..........####.....#...............#...#...............................#~~~~~~~~~~~~~~~~~~~~~#|...........................................................|....................|...................................................................
...........#...........#...............................................................................................................#...................#...............#...#...............................#~~~~~~~~~~~~~~~~~~~~~#|...................................................||||||||||||||||||||||||||||||||||||||...........................................................
...........#...........#...............................................................................................................#...................#...............#...#...............................#~~~~~~~~~~~~~~~~~~~~~#|...................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................
...........#...........#...............................................................................................................#...................#...............#...#...............................#~~~~~~~~~~~~~~~~~~~~~#|...................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................
...........#...........#...............................................................................................................#...................#...............#...#...............................#~~~~~~~~~~~~~~~~~~~~~#|...................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........#.#...............................................
...........#...........#...............................................................................................................#...................#...............#####...............................#~~~~~~~~~~~~~~~~~~~~~#|...................................................|#~~~~#########################~~~~~#|.........#.#...............................................
...........#############...............................................................................................................#...................#...................................................#~~~~~~~~~~~~~~~~~~~~~#|.....................................#.............|#~~~~#.......................#~~~~~#|.........#.#...............................................
.......................................................................................................................................#####################...................................................#~~~~~~~~~~~~~~~~~~~~~#|....................#................#.............|#~~~~#.......................#~~~~~#|.........#.#...............................................
...............................................................................................................................................................................................................#~~~~~~~~~~~~~~~~~~~~~#|....................#................#.............|#~~~~#.......................#~~~~~#|.........#.#.........................#.....................
...............................................................................................................................................................................................................#######################|....................#......#.#.......#.............|#~~~~#.......................#~~~~~#|.........#.#..............#..........#.....................
......................................................................................................................................................................................................................................|....................#......#.#.......#.............|#~~~~#########################~~~~~#|.........#.#..............############.....................
......................................................................................................................................................................................................................................|....................#......#.#.......#.............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........###...............................................
......................................................................................................................................................................................................................................|....................#......#.#.......#.............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................
.................................................................................................#...................#................................................................................................................|....................#......#.#.......#.............|####################################|...........................................................
...............................#.................................................................#...................#................................................................................................................|....................#......#.#.......#.............|....................................|...........................................................
..................#............#.................................................................#...................#................................................................................................................|....................#......#.#.......#.............|....................................|...........................................................
..................##############.................................................................#...................#................................................................................................................|....................#......#.#.......#.............|....................................|...........................................................
.................................................................................................#...................#.................................#..............................................................................|....................#......#.#.......#.............|....................................|...........................................................
.................................................................................................#...................#..............................#..#...............................................................||||||||||||||||||||||||#...........#......###.......#.............|....................................|...........................................................
.................................................................................................#...................#..............................#..#...............................................................|#~~~~~~~~~~~~~~~~~~~~~~#...........#................#.............|....................................|...........................................................
.................................................................................................#...................#..............................#..#...............................................................|#~~~~~~~~~~~~~~~~~~~~~~#...........#................#.............|....................................|...........................................................
.................................................................................................#####################..............................#..#...............................................................|#~~~~~~~~~~~~~~~~~~~~~~#...........#................#.............|....................................|...........................................................
....................................................................................................................................................#..#...............................................................|#~~~~~~~~~~~~~~~~~~~~~~#...........#................#.............|........#.#.........................|...........................................................
................#...................................................................................................................................#..#...............................................................|#~~~~~~~~~~~~~~~~~~~~~~#...........#................#.............|........#.#.........................|...........................................................
................#................#...................................................................#..............................................#..#...............................................................|#~~~~~~~~~~~~~~~~~~~~~~#...........#................#...........|||||||||||#.#......#..................|...........................................................
................#................#...................................................................#..................#...........................#..#...............................................................|#~~~~~~~~~~~~#~~~#~~~~~#...........#................#...........|#~~~~~~~~~#.#......#..................|...........................................................
................#................#...................................................................#..................#...........................#..#...............................................................|#~~~~~~~~~~~~#~~~#~~~~~#...........#................#...........|#~~~~~~~~~#.#......#..................|...........................................................
................#................#...................................................................#..................#...........................#..#...............................................................|#~~~~~~~~~~~~#####~~~~~#...........#................#...........|#~~~~~~~~~#.#......#..................|...........................................................
................#................#...................................................................#..................#...........................####...............................................................|#~~~~~~~~~~~~~~~~~~~~~~#...........#................#...........|#~~~~~~~~~#.#......#..................|...........................................................
................#................#...................................................................#..................#..............................................................................................|#~~~~~~~~~~~~~~~~~~~~~~#...........#................#...........|#~~~~~~~~~#.#......#..................|...........................................................
................##################...................................................................#..................#..............................................................................................|########################...........#................#...........|#~~~~~~~~~#.#......#..................|...........................................................
.....................................................................................................####################..............................................................................................|...................................#................#...........|#~~~~~~~~~#.#......#..................|...........................................................
.......................................................................................................................................................................................................................|...................................#................#...........|#~~~~~~~~~#.#......#..................|...........................................................
.......................................................................................................................................................................................................................|...................................#................#...........|#~~~~~~~~~###......#..................|...........................................................
.......................................................................................................................................................................................................................|...................................##################...........|#~~~~~~~~~~~~~~~~~~#..................|...........................................................
.......................................................................................................................................................................................................................|................................................................|#~~~~~~~~~~~~~~~~~~#..................|...........................................................
.......................................................................................................................................................................................................................|................................................................|#~~~~~~~~~~~~~~~~~~#..................|...........................................................
.......................................................................................................................................................................................................................|................................................................|####################..................|...........................................................
................................................................................#......................................................................................................................................|................................................................|......................................|...........................................................
.........................................................................#......#......................................................................................................................................|................................................................|......................................|...........................................................
.........................................................................#......#......................................................................................................................................|................................................................|......................................|...........................................................
.........................................................................#......#............................................................................................................................|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||...................................................
.........................................................................#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...................................................
.........................................................................#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...................................................
........................................#......................#.........#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#~~~#~~~~~#|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#~~~#~~~~~#|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#~~~#~~~~~#|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#####~~~~~#|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|#########################################################################################################################|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|.........................................................................................................................|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|.........................................................................................................................|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|.........................................................................................................................|...................................................
................#.#.....................#......................#.........#......#............................................................................................................................|.........................................................................................................................|..........#........................................
................#.#.....................#......................#.........#......#............................................................................................................................|......#..#...............................................................................#...............................|...#......#........................................
................#.#.....................#......................#.........#......#..........................................................................................................................|||||||||#..#.....................................................#.........................#...............................|...#......#.................................#......
................#.#.....................#......................#.........#......#..........................................................................................................................|#~~~~~~~#..#.....................................................#.........................#...............................|...#......#........................#........#......
................#.#.....................#......................#.........########......................................................................#...................................................|#~~~~~~~#..#.....#...............................................#.........................#...............................|...#......#........................#........#......
................#.#.....................#......................#...................................................................#...................#...................................................|#~~~~~~~#..#.....#...............................................#.........................#...............................|...#......#........................#........#......
................#.#.....................########################...................................................................#...................#...................................................|#~~~~~~~#..#.....#...............................................#.........................#...............................|...#......#........................#........#......
................#.#................................................................................................................#...................#...................................................|#~~~~~~~#..#.....#...............................................###########################...............................|...#......#........................#........#......
................#.#................................................................................................................#...................#...................................................|#~~~~~~~#..#.....#.........................................................................................................|...#......#........................#........#......
................###................................................................................................................#...................#...................................................|#~~~~~~~#..#.....#.........................................................................................................|...#......#........................#........#......
...................................................................................................................................#...................#...................................................|#~~~~~~~#..#.....#.........................................................................................................|...#......#........................#........#......
...................................................................................................................................#...................#...#...............................................|#~~~~~~~#..#.....#.........................................................................................................|...#......#........................#........#......
...................................................................................................................................#...................#...#........................#......................|#~~~~~~~#..#.....#.........................................................................................................|...#......#........................#........#......
...................................................................................................................................#...................#...#........................#......................|#~~~~~~~####.....#.........................................................................................................|...#......#........................#........#......
...................................................................................................................................#...................#...#........................#......................|#~~~~~~~~~~~~~~~~#.........................................................................................................|...#......#........................##########......
...................................................................................................................................#...................#...#........................#......................|#~~~~~~~~~~~~~~~~#.........................................................................................................|...#......#........................................
...................................................................................................................................#...................#...#........................#......................|##################.........................................................................................................|...#......#........................................
...................................................................................................................................#...................#...#........................#......................|...........................................................................................................................|...#......#........................................
...................................................................................................................................#...................#...#........................#......................|...........................................................................................................................|...########........................................
...................................................................................................................................#...................#...#........................#......................|...........................................................................................................................|...................................................
...................................................................................................................................#...................#...#.............####.......#......................|...........................................................................................................................|...................................................
...................................................................................................................................#...................#...#.............#..#.......#......................|...........................................................................................................................|...................................................
...................................................................................................................................#...................#...#.............#..#.......#......................|...........................................................................................................................|...................................................
...................................................................................................................................#...................#...#.............#..#.......#......................|...........................................................................................................................|...................................................
...................................................................................................................................#...................#...#.............#..#.......#............|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||.......................................
...................................................................................................................................#...................#...#.............#..#.......#............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.......................................
...................................................................................................................................#...................#...#.............#..#.......#............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.......................................
...................................................................................................................................#...................#...#.............####.......#............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.......................................
...................................................................................................................................#...................#...#........................#............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~###################~~~~~~~~~~~#|.......................................
...................................................................................................................................#...................#...#........................#............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.................#~~~~~~~~~~~#|.......................................
...................................................................................................................................#...................#...#........................#............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.................#~~~~~~~~~~~#|.......................................
...................................................................................................................................#...................#...#........................#............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.................#~~~~~~~~~~~#|.......................................
...................................................................................................................................#####################...##########################............|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.................#~~~~~~~~~~~#|.......................................
.................................................................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~###################~~~~~~~~~~~#|.......................................
........................................................#.......................#................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.......................................
........................................................#.......................#................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.......................................
........................................................#########################................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.......................................
.................................................................................................................................................................................................|#################################################################################################################################################|.......................................
.................................................................................................................................................................................................|.................................................................................................................................................|.......................................
.................................................................................................................................................................................................|.................................................................................................................................................|.......................................
.................................................................................................................................................................................................|.................................................................................................................................................|.......................................
.................................................................................................................................................................................................|.................................................................................................................................................|.......................................
.................................................................................................................................................................................................|.......#...#.....................................................................................................................................|.......................................
.................................................................................................................................................................................................|.......#...#.....................................................................................................................................|.......................................
...............................................................................................................................................................................................||||||||||#...#......#..............................................................................................................................|....#.#................................
...............................................................................................................................................................................................|#~~~~~~~~#...#......#............................................................................................................................|||||||#.#...................#............
........................................................................#......................................................................................................................|#~~~~~~~~#...#......#............................................................................................................................|#~~~~~#.#................#..#............
..............................................#.........................#......................................................................................................................|#~~~~~~~~#...#......#............................................................................................................................|#~~~~~#.#...........#....#..#............
..............................................#.........................#......................................................................................................................|#~~~~~~~~#...#......#............................................................................................................................|#~~~~~#.#...........#....#..#............
..............................................###########################......................................................................................................................|#~~~~~~~~#...#......#............................................................................................................................|#~~~~~#.#...........#....#..#............
...............................................................................................................................................................................................|#~~~~~~~~#...#......#............................................................................................................................|#~~~~~#.#...........#....#..#............
...............................................................................................................................................................................................|#~~~~~~~~#...#......#............................................................................................................................|#~~~~~#.#...........#....#..#............
...................................................................................................................................................................#...........................|#~~~~~~~~#####......#.............................................................#..............................................................|#~~~~~#.#...........#....#..#............
.........#..................................................................................................................................#......................#...........................|#~~~~~~~~~~~~~~~~~~~#...................................................#.........#..............................................................|#~~~~~#.#...........#....#..#............
.........#..........#.......................................................................................................................#......................#...........................|#~~~~~~~~~~~~~~~~~~~#...................................................#.........#..............................................................|#~~~~~#.#...........#....#..#............
.........#..........#........................................................................#...................#..........................#......................#...........................|#~~~~~~~~~~~~~~~~~~~#...................................................#.........#..............................................................|#~~~~~#.#...........#....#..#............
.........#..........#........................................................................#...................#..........................#......................#...........................|#~~~~~~~~~~~~~~~~~~~#...................................................#.........#..............................................................|#~~~~~###...........#....#..#............
.........#..........#........................................................................#...................#..........................#......................#...........................|#####################...................................................#.........#..............................................................|#~~~~~~~~~~~~~~~~~~~#....#..#............
.........#..........#........................................................................#...................#..........................#......................#...........................|........................................................................#.........#..............................................................|#~~~~~~~~~~~~~~~~~~~#....#..#............
.........#..........#........................................................................#...................#..........................#......................#...........................|........................................................................#.........#..............................................................|#####################....#..#............
.........#..........#........................................................................#####################..........................#......................#...........................|............................#...........................................#.........#..............................................................|.........................#..#............
.........#..........#.......................................................................................................................#......................#...........................|............................#.......................#...................#.........#..............................................................|.........................#..#............
.........#..........#.............................................................................................................#.........#......................#...........................|............................#.......................#...................#.........#..............................................................|.........................#..#............
.........#..........#.............................................................................................................#....#....#......................#...........................|............................#.......................#...................#.........#..............................................................|.........................#..#............
.........#..........#.............................................................................................................#....#....#......................#...........................|............................#.......................#...................#.........#..............................................................|.........................#..#............
.........#..........#.............................................................................................................#....#....#......................#...........................|............................#.......................#...................#.........#..................................................#.#.........|.........................####............
.........#..........#.............................................................................................................#....#....#......................#...........................|............................#.......................#...................#.........#..................................................#.#.........|.........................................
.........#..........#.............................................................................................................#....#....#......................#...........................|............................#.......................#...................#.........#...........................................#......#.#||||||||||||.......................................
.........#..........#.............................................................................................................#....#....#......................#.............#||||||||||||||||||||||....................#.......................#...................#.........#...........................................#......#.#~~~~~~~~~~#|.......................................
.........#..........#.............................................................................................................#....#....#......................#.............#~~~~~~~~~~~~~~~~~~~~#|....................#.......................#...................#.........#...............#...........................#......#.#~~~~~~~~~~#|.......................................
.........#..........#.............................................................................................................#....#....#......................#.............#~~~~~~~~~~~~~~~~~~~~#|....................#.......................#...................#.........#...........#...#...........................#......#.#~~~~~~~~~~#|.......................................
.........#..........#...#...................................................................#.....................................#....#....#......................#.............#~~~~~~~~~~~~~~~~~~~~#|....................#.......................#...................#.........#...........#...#...........................#......#.#~~~~~~~~~~#|.......................................
.........############...#.....#............................................#................#.....................................#....#....########################.............#~~~~~~~~~~~~~~~~~~~~#|....................#.......................#...................#.........#...........#...#...........................#......#.#~~~~~~~~~~#|.......................................
........................#.....#............................................#................#.....................................#....#.........................................#~~~~~~~~~~~~~~~~~~~~#|....................#.......................#...................#.........#...........#...#...........................#......#.#~~~~~~~~~~#|.......................................
........................#.....#............................................#................#.....................................#....#.........................................#~~~~~~~~~~~~~~~~~~~~#|....................#########################...................#.........#...........#...#...........................#......###~~~~~~~~~~#|.......................................
........................#.....#............................................#................#.....................................#....#.........................................#~~~~~~~~~~~~~~~~~~~~#|................................................................#.........#...........#...#...........................#~~~~~~~~~~~~~~~~~~~#|.......................................
........................#.....#............................................#................#.....................................#....#.........................................#~~~~~~~~~~~~~~~~~~~~#|................................................................#.........#...........#...#...........................#~~~~~~~~~~~~~~~~~~~#|.......................................
........................#.....#............................................#................#.....................................#....#.........................................#~~~~~~~~~~~~~~~~~~~~#|................................................................###########...........#...#...........................#~~~~~~~~~~~~~~~~~~~#|.......................................
........................#.....#............................................#................#.....................................#....#.........................................######################|......................................................................................#...#...........................#####################|.......................................
........................#.....#............................................#................#.....................................#....#...............................................................|......................................................................................#...#................................................|.......................................
........................#.....#............................................#................#.....................................#....#...............................................................|......................................................................................#####................................................|.......................................
........................#.....#............................................#................#.....................................#....#...............................................................|...........................................................................................................................................|.......................................
........................#.....#............................................#................#.....................................#....#...............................................................|...........................................................................................................................................|.......................................
........................#.....#............................................#................#.....................................#....#...............................................................|...........................................................................................................................................|.......................................
........................#.....#............................................#................#.....................................#....#...................................................||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||............................
........................#.....#............................................#................#.....................................#....#...................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
........................#.....#................................#...........#................#.....................................######...................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
........................#######....#...........................#...........#................#..............................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
...................................#...........................#...........#................#..............................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
...................................#...........................#...........#................#..............................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
...................................#...........................#...........##################.........................................................................#....................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
...................................#...........................#..............................................................................................#.......#....................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
...................................#...........................#..............................................................................................#.......#....................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
...................................#...........................#..............................................................................................#########....................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
...................................#...........................#...........................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................
...................................#...........................#................................................#..........................................................................|##################################################################################################################################################################|............................
...................................#...........................#.......................................#........#..........................................................................|..................................................................................................................................................................|............................
...................................#...........................#.......................................##########..........................................................................|..................................................................................................................................................................|............................
...................................#...........................#...........................................................................................................................|..................................................................................................................................................................|............................
...................................#...........................#...........................................................................................................................|..................................................................................................................................................................|............................
...................................#...........................#...........................................................................................................................|..................................................................................................................................................................|............................
...................................#...........................#..................................................................................................................||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||.................
...................................#...........................#..................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~############################################################################~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..........................................................#.......................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........................................................................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..........................................................#....................#..................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~############################################################################~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..........................................................#....................#..................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..........................................................#....................#..................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#..........................................................#....................#..................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................
...................................#...........................#...........................#................#.............#....................#..................................|######################################################################################################################################################################################|.................
...................................#############################...........................#................#.............#....................#..................................|......................................................................................................................................................................................|.................
...........................................................................................#................#.............#....................#..................................|......................................................................................................................................................................................|.................
...........................................................................................#................#.............#....................#..................................|......................................................................................................................................................................................|.................
...........................................................................................#................#.............#....................#..................................|......................................................................................................................................................................................|.................
...........................................................................................#................#.............#....................#..................................|......................................................................................................................................................................................|.................
...........................................................................................#................#.............#....................#..................................|......................................................................................................................................................................................|.................
...........................................................................................#.....#....#.....#.............#....................#..................................|......................................................................................................................................................................................|.....#..#........
...........................................................................................#.....#....#.....#.............######################..................................|....................................................................................................................................................................................||||||||#..#........
...........................................................................................#.....#....#.....#.....................................................................|....................................................................................................................................................................................|#~~~~~~#..#........
...........................................................................................#.....#....#.....#.....................................................................|....................................................................................................................................................................................|#~~~~~~#..#......#.
....#.................#....................................................................#.....#....#.....#.....................................................................|....................................................................................................................................................................................|#~~~~~~#..#......#.
....#.................#....................................................................#.....#....#.....#.....................................................................|.....................................................................................................................................................................#..............|#~~~~~~#..#......#.
....#.................#....................................................................#.....#....#.....#.....................................................................|.................................................................................................................................................................#...#..............|#~~~~~~#..#......#.
....#.................#....................................................................#.....#....#.....#.....................................................................|.................................................................................................................................................................#...#..............|#~~~~~~#..#......#.
....#.................#....................................................................#.....#....#.....#.....................................................................|.................................................................................................................................................................#...#..............|#~~~~~~####......#.
....#.................#....................................................................#.....######.....#.....................................................................|.................................................................................................................................................................#...#..............|#~~~~~~~~~~~~~~~~#.
....#.................#....................................................................#................#.....................................................................|.................................................................................................................................................................#...#..............|#~~~~~~~~~~~~~~~~#.
....#.................#....................................................................#................#.....................................................................|.................................................................................................................................................................#...#..............|#~~~~~~~~~~~~~~~~#.
....#.................#....................................................................#................#.....................................................................|.................................................................................................................................................................#...#..............|#~~~~~~~~~~~~~~~~#.
....#.................#....................................................................#................#.....................................................................|.................................................................................................................................................................#...#..............|##################.
....#.................#....................................................................#................#.....................................................................|.................................................................................................................................................................#...#..............|...................
....#.................#....................................................................#................#.....................................................................|.................................................................................................................................................................#...#..............|...................
....###################....................................................................#................#.....................................................................|.................................................................................................................................................................#...#..............|...................
...........................................................................................##################.....................................................................|.................................................................................................................................................................#...#..............|...................
..................................................................................................................................................................................|.................................................................................................................................................................#...#..............|...................
..................................................................................................................................................................................|.................................................................................................................................................................#####..............|...................
..................................................................................................................................................................................|....................................................................................................................................................................................|...................
.........#..........................................................#.............................................................................................................|....................................................................................................................................................................................|...................
.........#......#...................................................#.......................#............................................................................|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||#..........
.........#......#...................................................#.......................#............................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
.........#......#...................................................#.......................#............................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
.........#......#...................................................#.......................#............................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
.........########...................................................#.......................#............................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
....................................................................#.......................#................................................#...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
....................................................................#.......................#......................................#.........#...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
....................................................................#.......................#......................................#.........#...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~################################~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
....................................................................#.......................#......................................#.........#...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
....................................................................#.......................#......................................#.........#...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
....................................................................#.......................#......................................#.........#...........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........
....................................................................#.......................#......................................#.........#...........................|#######################################################################################################################################################################################################..........
....................................................................#.......................#......................................###########...........................|.................................................................................................................................................................................................................
....................................................................#.......................#............................................................................|.................................................................................................................................................................................................................
...................................#................................#.......................#............................................................................|.................................................................................................................................................................................................................
...................................#.........#......................#.......................#............................................................................|.................................................................................................................................................................................................................
...................................#.........#......................#.......................#.....................................................................#.#....|.................................................................................................................................................................................................................
...................................#.........#......................#.......................#.....................................................................#.#|||||||...............................#...............................................................................................................................................................................
...................................#.........#......................#.......................#.....................................................................#.#~~~~~#|...............................#..#............................................................................................................................................................................
...................................#.........#......................#########################.............................................................#.......#.#~~~~~#|...............................#..#............................................................................................................................................................................
...................................#.........#................................................................................#.....#.....................#.......#.#~~~~~#|...............................#..#............................................................................................................................................................................
...................................#.........#................................................................................#.....#.....................#.......#.#~~~~~#|...............................#..#............................................................................................................................................................................
...................................#.........#................................................................................#.....#.....................#.......#.#~~~~~#|...............................#..#............................................................................................................................................................................
...................................#.........#................................................................................#.....#.....................#.......#.#~~~~~#|....#..........................#..#............................................................................................................................................................................
...................................#.........#................................................................................#.....#.....................#.......#.#~~~~~#|....#......................#...#..#............................................................................................................................................................................
...................................#.........#................................................................................#.....#.....................#.......###~~~~~#|....#......................#...#..#............................................................................................................................................................................
...................................#.........#.................................#...#..........................................#.....#.....................#~~~~~~~~~~~~~~~#|....#.........#....#.......#...#..#............................................................................#...............................................................................................
...................................#.........#.................................#...#..........................................#.....#.....................#~~~~~~~~~~~~~~~#|....#.........#....#.......#...#..#....................................................................#.......#...............................................................................................
...................................#.........#.................................#...#..........................................#.....#.....................#################|....#.........#....#.......#...#..#....................................................................#.......#...............................................................................................
...................................#.........#.................................#...#..........................................#.....#......................................|....#.........#....#.......#...#..#....................................................................#.......#.......................................................................................#.......
...................................#.........#.................................#...#..........................................#.....#......................................|....#.........#....#.......#...#..#....................................................................#.......#.................................................................................#.....#.......
...................................#.........#.................................#...#..........................................#.....#......................................|....#.........#....#.......#...#..#....................................................................#.......#.................................................................................#.....#.......
...................................#.........#.................................#...#..........................................#.....#......................................|....#.........#....#.......#...####....................................................................#.......#.................................................................................#.....#.......
...................................#.........#.................................#...#..........................................#.....#......................................|....#.........#....#.......#...........................................................................#.......#.................................................................................#######.......
...................................#.........#.................................#...#..........#...............................#.....#......................................|....#.........#....#.......#.....................#..........#...#......................................#.......#...............................................................................................
...................................###########.................................#...#..........#..........#....................#.....#......................................|....#.........#....#.......#...............#.....#..........#...#......................................#.......#...............................................................................................
...............................................................................#...#..........#..........#....................#.....#............................#..#......|....#.........#....#.......#...............#.....#..........#...#......................................#.......#...............................................................................................
...............................................................................#...#..........#..........#....................#.....#............................#..#......|....#.........#....#.......#...............#.....#..........#...#......................................#.......#...............................................................................................
...............................................................................#...#..........#..........#....................#.....#.....................#......#..#|||||||||..#.........#....#.......#...............#.....#..........#...#......................................#########...............................................................................................
...............................................................................#...#..........#..........#....................#.....#.....................#......#..#~~~~~~~#|..#.........######.......#...............#.....#..........#...#..............................................................................................................................................
...............................................................................#...#..........############....................#.....#.....................#......#..#~~~~~~~#|..#......................#...............#######..........#...#..............................................................................................................................................
...............................................................................#...#..........................................#.....#.....................#......#..#~~~~~~~#|..#......................#................................#...#..............................................................................................................................................
...............................................................................#...#..........................................#.....#.....................#......#..#~~~~~~~#|..#......................#................................#...#..............................................................................................................................................
.............#..#..............................................................#...#..........................................#.....#.....................#......#..#~~~~~~~#|..########################................................#...#..............................................................................................................................................
.............#..#..............................................................#...#..........................#...............#######.....................#......####~~~~~~~#|..........................................................#####..............................................................................................................................................
.............#..#........................................#..............#......#####..........#...............#...........................................#~~~~~~~~~~~~~~~~~#|.............................................................................................................................................................................................................
.............#..#........................................#..............#.....................#...............#...........................................#~~~~~~~~~~~~~~~~~#|.............................................................................................................................................................................................................
.............#..#........................................#..............#.....................#...............#...........................................#~~~~~~~~~~~~~~~~~#|.............................................................................................................................................................................................................
.............#..#........................................#..............#.....................#...............#...........................................###################|.............................................................................................................................................................................................................
.............#..#........................................#..............#.....................#...............#..............................................................|.............................................................................................................................................................................................................
.............#..#........................................#..............#.....................#...............#..............................................................|.............................................................................................................................................................................................................
.............#..#........................................#....#...#.....#.....................#...............#..............................................................|.............................................................................................................................................................................................................
.............#..#........................................#....#...#.....#.....................#...............#..............................................................|.............................................................................................................................................................................................................
.............#..#........................................#....#...#.....#.....................#...............#..............................................................|.................................................................................#...........................................................................................................................
.............#..#........................................#....#...#.....#.....................#...............#..............................................................|.................................................................................#...............#...........................................................................................................
.............#..#........................................#....#...#.....#.....................#...............#..............................................................|.................................................................................#...............#...........................................................................................................
.............#..#........................................#....#...#.....#.....................#...............#..............................................................|.................................................................................#...............#...........................................................................................................
.............#..#........................................#....#...#.....#.....................#...............#..............................................................|.................................................................................#...............#...........................................................................................................
.............#..#............................#...........#....#...#.....#.....................#...............#..............................................................|.................................................................................#...............#...........................#.........................................#........................#............
.............#..#..........#.................#...........#....#...#.....#.....................#...............#...................................................#||||||||||||||||||||||......................................................................#...............#................#..........#...............................#.........#........................#............
.............#..#..........###################...........#....#...#.....#.....................#...............#...................................................#~~~~~~~~~~~~~~~~~~~~#|......................................................................#...............#................#..........#.....................#.........#.........#........................#............
.............#..#........................................#....#####.....#.....................#...............#...................................................#~~~~~~~~~~~~~~~~~~~~#|.....................#................................................#...............#................#..........#.....................#.........#.........#........................#............
.............#..#........................................#..............#.....................#...............#...................................................#~~~~~~~~~~~~~~~~~~~~#|................#....#................................................#...............#................#..........#.....................###########.........#........................#............
.............#..#........................................#..............#.....................#...............#...................................................#~~~~~~~~~~~~~~~~~~~~#|................#....#................................................#...............#................#..........#.........................................#........................#............
.............#..#........................................#..............#.....................#################.........#.........................................#~~~~~~~~~~~~~~~~~~~~#|................#....#................................................#.......###.....#................#..........#.........................................#........................#............
.............#..#........................................#..............#...............................................#..........................#..............#~~~~~~~~~~~~~~~~~~~~#|................#....#................................................#.......#.#.....#................#..........#.........................................#........................#............
.............#..#..............#.........................################...............................................#..........................#..............#~~~~~~~~~~~~~~~~~~~~#|................#....#................................................#.......#.#.....#................#..........#.........................................#........................#............
.............#..#..............#.................#......................................................................############################..............#~~~~~~~~~~~~~~~~~~~~#|................#....#................................................#.......#.#.....#................#..........#.........................................#........................#............
.............####..............#.................#................................................................................................................#~~~~~~~~~~~~~~~~~~~~#|................#....#................................................#.......#.#.....#................#..........#...................................#.....#........................#............
...............................#.................#................................................................................................................######################|................#....#................................................#.......###.....#................#..........#..........................#........#.....#........................#............
...............................#.................#......................................................................................................................................|................#....#................................................#...............#................#..........#..........................##########.....#........................#............
...............................#.................#......................................................................................................................................|................#....#................................................#...............#................#..........#.........................................#........................#............
...............................#.................#......................................................................................................................................|................#....#................................................#...............#................############.........................................#................#.#.....#............
...............................#.................#......................................................................................................................................|................#....#................................................#...............#.....................................................................#................#.#.....#............
...............................#.................#......................................................................................................................................|................#....#................................................#################.....................................................................#................###.....#............
...............................#.................#......................................................................................................................................|................######..............................................................................#.......................................................#........................#............
...............................#.................#..........................................................................................#...........................................|.........................................................................................#..........#.......................................................#........................#............
......#........................#.................#....................................................................................#.....#...........................................|.........................................................................................#..........#.......................................................##########################............
......#......#.................#.................#....................................................................................#.....#.................................#....#....|.........................................................................................#..........#.............................................................................................
......#......#.................#.................#....................................................................................#.....#.................................#....#....|.........................................................................................#..........#.............................................................................................
......#......#.................#.................#....................................................................................#.....#............................#....#....#|||||||.................................................#.....................................#..........#.............................................................................................
......#......#.................#.................#....................................................................................#.....#............................#....#....#~~~~~#|.................................................#.............#.......................#..........#.............................................................................................
......#......#.................#.................#....................................................................................#.....#............................#....#....#~~~~~#|.................................................#.............#.......................#..........#.............................................................................................
......#......#.................#.................#....................................................................................#######............................#....#....#~~~~~#|.................................................#.............#.......................#..........#.............................................................................................
......#......#.................#.................#.......................................................................................................................#....#....#~~~~~#|.................................................#.............#.......................############.............................................................................................
......#......#.................#.................#.......................................................................................................................#....#....#~~~~~#|.................................................#.............#................................................................................................................................
......#......#.................#.................#.......................................................................................................................#....#....#~~~~~#|.................................................#.............#................................................................................................................................
......#......#.................#.................#.......................................................................#...............................................#....#....#~~~~~#|.................................................#.............#................................................................................................................................
......#......#.................#.................#.........................................................#.............#...............................................#....#....#~~~~~#|.................................................#.............#................................................................................................................................
......#......#.................#.................#.........................................................#.............#...............................................#....######~~~~~#|..................#..............................#.............#................................................................................................................................
......#......#.................#.................#.........................................................#.............#...............................................#~~~~~~~~~~~~~~~#|..................#......#.......................#.............#................................................................................................................................
......#......#.................#.................#.........................................................#.............#...............................................#~~~~~~~~~~~~~~~#|..................#......#.......................#.............#................................................................................................................................
......#......#.................###################.........................................................#.............#...............................................#~~~~~~~~~~~~~~~#|..................#......#.......................#.............#................................................................................................................................
......#......#.............................................................................................#.............#...............................................#~~~~~~~~~~~~~~~#|..................#......#.......................#.............#................................................................................................................................
......########.............................................................................................#.............#...............................................#################|..................#......#.......................#.............#................................................................................................................................
...........................................................................................................#.............#................................................................|..................#......#.......................#.............#................................................................................................................................
...........................................................................................................#.............#................................................................|..................########.......................#.............#................................................................................................................................
...........................................................................................................#.............#................................................................|.................................................#.............#................................................................................................................................
.....................#..........#..........................................................................#.............#................................................................|.................................................#.............#................................................#.....#.........................................................................
.....................#..........#..........................................................................#.............#................................................................|.................................................#.............#................................................#.....#.........................................................................
.....................#..........#..........................................................................#.............#................................................................|.................................................#.............#................................................#.....#.........................................................................
.....................#..........#..........................................................................#.............#................................................................|.................................................#.............#................................................#.....#.........................................................................
.....................#..........#..........................................................................#.............#................................................................|.................................................#.............#................................................#.....#.........................................................................
.....................#..........#..........................................................................#.............#......................................................||||||||||||||||||#.........................................#.............#................................................#.....#.........................................................................
.....................#..........#..........................................................................#.............#......................................................|#~~~~~~~~~~~~~~~~#.........................................#.............#................................................#.....#.........................................................................
.....................#..........#..........................................................................#.............#......................................................|#~~~~~~~~~~~~~~~~#.........................................#.............#................................................#.....#.........................................................................
.....................#..........#..........................................................................###############......................................................|#~~~~~~~~~~~~~~~~#.........................................#.............#................................................#.....#...#.....................................................................
.....................#..........#...............................................................................................................................................|#~~~~~~~~#~#~~~~~#.........................................###############................................................#.....#...#......#..............................................................
.....................#..........#...............................................................................................................................................|#~~~~~~~~#~#~~~~~#........................................................................................................#.....#...#......#..............................................................
.....................#..........#...............................................................................................................................................|#~~~~~~~~#~#~~~~~#........................................................................................................#.....#...#......#..............................................................
.....................#..........#...............................................................................................................................................|#~~~~~~~~#~#~~~~~#............................................................................#...........................#.....#...#......#..............................................................
.....................#..........#...............................................................................................................................................|#~~~~~~~~#~#~~~~~#............................................................................#............#..............#.....#...#......#..............................................................
.....................#..........#........................................................#......................................................................................|#~~~~~~~~###~~~~~#............................................................................#............#..............#.....#...#......#..............................................................
.....................#..........#............................................#...........#......................................................................................|#~~~~~~~~~~~~~~~~#............................................................................#............#..............#.....#...#......#..............................................................
.....................#..........#............................................#...........#......................................................................................|#~~~~~~~~~~~~~~~~#............................................................................#............#..............#.....#...#......#..............................................................
.....................#..........#............................................#...........#......................................................................................|#~~~~~~~~~~~~~~~~#............................................................................#............#..............#.....#...#......#..............................................................
.....................#..........#............................................#...........#......................................................................................|##################............................................................................#............#..............#######...########..............................................................
.....................#..........#............................................#############......................................................................................|..............................................................................................#............#..............................................................................................
.....................############...............................................................................................................................................|..............................................................................................#............#..............................................................................................
................................................................................................................................................................................|..............................................................................................#............#..............................................................................................
................................................................................................................................................................................|..............................................................................................#............#............................#.......#.........................................................
.............................................................................................#..................................................................................|..............................................................................................#............#.......................#....#.......#.......................#.................................
...............................................................................#.............#..................................................................................|..............................................................................................#............#.......................#....#.......#.......................#.................................
...............................................................................#.............#....................................................................||||||||||||||||||||||||||||||...............................................................................#............#.......................#....#.......#.......................#.................................
...............................................................................#.............#....................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...............................................................................#............#.......................#....#.......#.......................#.................................
...............................................................................#.............#....................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...............................................................................#............#.......................#....#.......#.......................#.................................
...............................................................................#.............#....................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...............................................................................#............#.......................######.......#.......................#.................................
...............................................................................#.............#....................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...............................................................................#............#....................................#.......................#.................................
...............................................................................#.............#....................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...............................................................................##############....................................#.......................#.................................
...............................................................................#.............#....................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................................................................................................................................#.......................#.................................
...............................................................................###############....................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................................................................................................................................#.......................#.................................
..................................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|.................................................................................................................................#########################.................................
..................................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................................................................
..................................................................................................................................................................|#~~~~~~############~~~~~~~~#|...........................................................................................................................................................................................
..................................................................................................................................................................|#~~~~~~#..........#~~~~~~~~#|...........................................................................................................................................................................................
..................................................................................................................................................................|#~~~~~~############~~~~~~~~#|...........................................................................................................................................................................................
..................................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................................................................
..................................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................................................................
..................................................................................................................................................................|############################|...........................................................................................................................................................................................
..................................................................................................................................................................|............................|...........................................................................................................................................................................................
..................................................................................................................................................................|............................|..............................................#.........................#..................................................................................................................
..................................................................................................................................................................|............................|..............................................#.........................#..................................................................................................................
..................................................................................................................................................................|............................|..............................................#.........................#..................................................................................................................
..................................................................................................................................................................|............................|..............................................#.........................#..................................................................................................................
..................................................................................................................................................................|............................|..............................................#.........................#..................................................................................................................
..................................................................................................................................................................|............................|..............................................###########################..................................................................................................................
..................................................................................................................................................................|............................|.............................................................................................................#.............................................................................
....................................................................................................................#...............#.................||||||||||||||||||||||||||||||||||||||||||||||||||||#..................................................................................................#.....#.......................................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..................................................................................................#.....#.......................................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..................................................................................................#.....#..........#...#........................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..................................................................................................#.....#..........#...#........................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..................................................................................................#.....#..........#...#........................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..................................................................................................#.....#..........#...#........................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..................................................................................................#######..........#...#........................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#...................................................................................................................#####........................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#................................................................................................................................................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#................................................................................................................................................................................
....................................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#................................................................................................................................................................................
..................#.................................................................................................#...............#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#................................................................................................................................................................................
........#.........#.................................................................................................#################.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#...............#.......................#............#.................#.........................................................................................................
........#.........#...................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#...............#.......................#............#.................#.........................................................................................................
........#.........#..........................................................................................#........................................|####################################################...............#.......................#............#.................#.........................................................................#...............................
........#.........#..........................................................................................#.#......................................|...................................................................#.......................#............#.................#...........................................................#.............#...............................
........#.........#..........................................................................................#.#......................................|...................................................................#.......................#............#.................#...........................................................#.............#...............................
........#.........#..........................................................................................#.#......................................|...................................................................#.......................#............#.................#...........................................................#.............#...............................
........#.........#..........................................................................................#.#......................................|...................................................................#########################............#.................#...........................................................#.............#...............................
........#.........#..........................................................................................#.#......................................|........#.#.............................................................................................#.................#...........................................................#.............#...............................
........###########..........................................................................................#.#......................................|........#.#.............................................................................................#.................#...........................................................#.............#...............................
...............................#.............................................................................#.#....................................|||||||||||#.#.......#.....................................................................................#.................#...........................................................#.............#...............................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~#.#.......#.....................................................................................#.................#...........................................................#.............#...............................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~#.#.......#.....................................................................................#.................#...........................................................#.............#...............................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~#.#.......#.....................................................................................#.................#...........................................................#.............#...............................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~#.#.......#.....................................................................................#.................#...........................................................#.............#...............................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~#.#.......#.........................#...........................................................#.................#..#.....#..................................................#.............#...............................
...............................#..................#..........................................................#.#.................#.........#........|#~~~~~~~~~#.#.......#.........................#.........................#.................................#.................#..#.....#..................................................#.............#...............................
...............................#..................#..........................................................#.#.................#.........#........|#~~~~~~~~~#.#.......#.........................#.........................#.................................#.................#..#.....#..................................................#.............#...............................
...............................#..................#..........................................................#.#.................###########........|#~~~~~~~~~#.#.......#.........................#.........................#.................................#.................#..#.....#..................................................#.............#...............................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~#.#.......#.........................#.........................#.................................#.................#..#.....#..................................................#.............#...............................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~###.......#.........................###########################.................................#.................#..#.....#..................................................###############...............................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~~~~~~~~~~~#.....................................................................................#.................#..#.....#................................................................................................
...............................#..................#..........................................................#.#....................................|#~~~~~~~~~~~~~~~~~~~#.....................................................................................#.................#..#.....#................................................................................................
...............................#..................#..........................................................#.#....................................|#####################.....................................................................................#.................#..#.....#................................................................................................
...............................#..................#..........................................................#.#....................................|..........................................................................................................#.................#..#.....#................................................................................................
...............................#..................#................#.........................................#.#....................................|................................#.........................................................................#.................#..#.....#................................................................................................
...............................#..................#........#.......#.........................................#.#....................................|................................#...................#.....................................................#.................#..#.....#................................................................................................
...............................####################........#.......#.........................................#.#....................................|................................#...................#.....................................................#.................#..#.....#.........................................#......................................................
.........#..#..............................................#.......#.........................................###....................................|................................#...................#.....................................................#.................#..#.....#................#........................#......................................................
.........#..#..............................................#.......#................................................................................|................................#...................#.....................................................###################..#.....#................#........................#......................................................
.........#..#..............................................#.......#................................................................................|................................#...................#..........................................................................#.....#................#........................#..............................................#.......
.........#..#..............................................#########................................................................................|................................#...................#..........................................................................#.....#................##########################...........................................#..#.......
.........#..#...........................................................................................................................#.#.........|................................#...................#..........................................................................#.....#.....................................................................................#..#.......
.........#..#...........................................................................................................................#.#.........|................................#...................#..........................................................................#.....#.....................................................................................#..#.......
.........#..#......................................................................................................................#....#.#||||||||||||..............................#...................#..........................................................................#.....#.....................................................................................#..#.......
.........#..#........................................................................................................#.............#....#.#~~~~~~~~~~#|..............................#####################..........................................................................#.....#.....................................................................................#..#.......
.........#..#............................................................................................#...........#.............#....#.#~~~~~~~~~~#|.............................................................................................................................#.....#.....................................................................................#..#.......
.........#..#............................................................................................#############.............#....#.#~~~~~~~~~~#|.............................................................................................................................#.....#.........................................................#...........................#..#.......
.........####......................................................................................................................#....#.#~~~~~~~~~~#|.............................................................................................................................#.....#.........................................................#.....................#.....#..#.......
...................................................................................................................................#....#.#~~~~~~~~~~#|.............................................................................................................................#.....#.........................................................#.....................#.....#..#.......
...................................................................................................................................#....#.#~~~~~~~~~~#|.............................................................................................................................#.....#.........................................................#.....................#.....#..#.......
...................................................................................................................................#....#.#~~~~~~~~~~#|.............................................................................................................................#######.........................................................#.....................#.....#..#.......
...................................................................................................................................#....#.#~~~~~~~~~~#|.............................................................................................................................................................................................#.....................#.....#..#.......
...................................................................................................................................#....#.#~~~~~~~~~~#|.....................................................................................................#.......................................................................................#.....................#.....#..#.......
...................................................................................................................................#....#.#~~~~~~~~~~#|...................................................................................#.................#.......................................................................................#.....................#.....#..#.......
...................................................................................................................................#....###~~~~~~~~~~#|...................................................................................#.................#.......................................................................................#.....................#.....#..#.......
..........................#........................................................................................................#~~~~~~~~~~~~~~~~~#|..................................................................#................#.................#.......................................................................................#.....................#.....#..#.......
.......................#..#........................................................................................................#~~~~~~~~~~~~~~~~~#|..........................................#.......................#................#.................#.......................................................................................#.....................#.....#..#.......
.......................#..#........................................................................................................###################|..........................................#.......................#................#.....#.....#.....#...................................................#...................................#.....................#.....#..#.......
.......................#..#...........................................................................................................................|..........................................#########################................#.....#.....#.....#...................................................#.........#.........................#.....................#.....#..#.......
.......................#..#...........................................................................................................................|...................................................................................#.....#.....#.....#...................................................#.........#.........................#.....................#.....#..#.......
.......................#..#...........................................................................................................................|...................................................................................#.....#######.....#...................................................###########.........................#######################.....#..#.......
.......................####...........................................................................................................................|...................................................................................#.................#...................................................................................................................#..#.......
......................................................................................................................................................|...................................................................................#.................#...................................................................................................................#..#.......
......................................................................................................................................................|...................................................................................###################...................................................................................................................#..#.......
.......................................................#....................#.........................................................................|.........................................................................................................................................................................................................................#..#.......
.......................................................#....................#.........................................................................|.........................................................................................................................................................................................................................#..#.......
.............................#...#.....................#....................#.........................................................................|.........#.#.......................................#.....................................................................................................................................................................####.......
.............................#...#.....................#....................#.........................................................................|.........#.#.................................#.....#...................................................................................................................#............................................................
.............................#...#.....................#....................#.......................................................................||||||||||||#.#.....#...........................#.....#...................................................................................................................#..#.........................................................
.............................#...#.....................#....................#.......................................................................|#~~~~~~~~~~#.#.....#...........................#.....#...................................................................................................................#..#.........................................................
.............................#...#.....................######################.......................................................................|#~~~~~~~~~~#.#.....#...........................#.....#...................................................................................................................#..#..................................#......................
.............................#...#..................................................................................................................|#~~~~~~~~~~#.#.....#...........................#.....#...................................................................................................................#..#..................................#.................#....
.............................#...#..................................................................................................................|#~~~~~~~~~~#.#.....#...........................#.....#...................................................................................................................#..#..................................#.................#....
.............................#...#..................................................................................................................|#~~~~~~~~~~#.#.....#...........................#.....#...................................................................................................................#..#..................................#.................#....
.............................#...#..................................................................................................................|#~~~~~~~~~~#.#.....#...........................#.....#...................................................................................................................#..#..................................#.................#....
.............................#...#..................................................................................................................|#~~~~~~~~~~#.#.....#...........................#.....#...................................................................................................................#..#..................................#.................#....
.............................#...#..................................................................................................................|#~~~~~~~~~~#.#.....#...........................#.....#...................................................................................................................#..#..................................###################....
.............................#...#..................................................................................................................|#~~~~~~~~~~#.#.....#...........................#.....#..#................................................................................................................#..#.........................................................
.............................#...#..................................................................................................................|#~~~~~~~~~~###.....#...........................#.....#..#.................#..............................................................................................#..#.........................................................
.............................#...#......................................................#...........................................................|#~~~~~~~~~~~~~~~~~~#...........................#.....#..#.................#..............................................................................................#..#.........................................................
.............................#...#......................................................#.................#.........................................|#~~~~~~~~~~~~~~~~~~#...........................#.....#..#.................#...................................................................................#..........#..#.........................................................
.............................#...#......................................................#.................#.........................................|####################...........................#.....#..#.................#...................................................................................#.....#....#..#.........................................................
.............................#...#......................................................#.................#.........................................|...............................................#.....#..###################...................................................................................#.....#....#..#.........................................................
.............................#...#......................................................#.................#.........................................|...............................................#.....#........................................................................................................#.....#....#..#.........................................................
.............................#...#......................................................#.................#.........................................|...............................................#.....#........................................................................................................#.....#....#..#.........................................................
.............................#####......................................................#.................#.........................................|...............................................#.....#........................................................................................................#.....#....#..#.........................................................
........................................................................................#.................#.........................................|...............................................#.....#........................................................................................................#.....#....#..#.........................................................
........................................................................................#.................#.........................................|...............................................#.....#........................................................................................................#.....#....#..#.........................................................
........................................................................................#.................#.........................................|...............................................#.....#........................................................................................................#.....#....#..#.........................................................
........................................................................................#.................#.........................................|...............................................#######........................................................................................................#.....#....#..#.........................................................
........................................................................................#.................#.........................................|........#..#..................................................................................................................................................#.....#....#..#.........................................................
........................................................................................#.................#.........................................|........#..#..................................................................................................................................................#.....#....#..#.........................................................
........................................................................................#.................#.......................................|||||||||||#..#......#...........................................................................................................................................#.....#....####.........................................................
........................................................................................#.................#.......................................|#~~~~~~~~~#..#......#........................................................................................#......#...........................................#.....#.................................................................
........................................................................................#.................#.......................................|#~~~~~~~~~#..#......#........................................................................................#......#...........................................#.....#.................................................................
........................................................................................#.................#.......................................|#~~~~~~~~~#..#......#........................................................................................########...........................................#.....#.............#...................................................
........................................................................................#.................#.......................................|#~~~~~~~~~#..#......#.........................................................#.................................................................................#.....#.............#........#..........................................
........................................................................................###################.......................................|#~~~~~~~~~#..#......#.........................................................#..............#..................................................................#.....#.............#........#..........................................
..................................................................................................................................................|#~~~~~~~~~####......#.........................................................#..............#..................................................................#.....#.............#........#..........................................
..................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~#.........................................................#..............#..................................................................#######.............#........#..........................................
.......................................#..........................................................................................................|#~~~~~~~~~~~~~~~~~~~#.........................................................#..............#......................................................................................#........#..........................................
..........................#............#.........................................#................................................................|#~~~~~~~~~~~~~~~~~~~#.........................................................#..............#..........................#...........................................................#........#..........................................
..........................#............#.........................................#..#.............................................................|#~~~~~~~~~~~~~~~~~~~#.........................................................#..............#.........#................#...........................................................#........#..........................................
..........................#............#.........................................#..#.............................................................|#~~~~~~~~~~~~~~~~~~~#.........................................................#..............#.........#................#...........................................................#........#..........................................
..........................#............#.........................................#..#.............................................................|#~~~~~~~~~~~~~~~~~~~#........#...................#............................#..............#.........#................#...........................................................#........#..........................................
..........................#............#.........................................#..#.............................................................|#####################........#...................#............................#..............#.........#................#...........................................................#........#..........................................
..........................#............#.............#............#..............#..#...............................#.............................|.............................#...................#............................#..............#.........#................#...........................................................#........#..........................................
..........................#............#.............#............#..............#..#...............................#...................#.........|.............................#...................#............................#..............#.........#........#.#.....#...........................................................#........#..........................................
..........................##############.............#............#..............#..#...............................#...................#.........|.............................#.........###.......#............................#....#..#......#.........#........#.#.....#...........................................................#........#..........................................
.....................................................#............#..............#..#...............................#...................#.........|.............................#.........#.#.......#............................#....#..#......#.........#........#.#.....#...........................................................#........#..........................................
.....................................................#............#..............#..#...............................#...................#.........|.............................#.........#.#.......#............................#....#..#......#.........#........###.....#...........................................................#........#...........................#..............
.....................................................##############..............#..#...............................#...................#.........|.............................#.........#.#.......#............................#....####......#.........#................#...........................................................#........#....#......................#..............
.................................................................................#..#...............................#...................#.........|.............................#.........#.#.......#............................#..............#.........#................#...........................................................#........#....#......................#..............
.................................................................................#..#...............................#...................#.........|......#...#..................#.........#.#.......#............................#..............#.........#................#...........................................................#........#....#......................#..............
.................................................................................#..#...............................#...................#.......|||||||||#...#..................#.........###.......#............................#..............#.........##################...........................................................#........#....#......................#..............
.................................................................................#..#.........................#.....#...................#.......|#~~~~~~~#...#..................#...................#............................#..............#......................................................................................#........#....#......................#..............
.................................................................................#..#...............#.........#.....#...................#.......|#~~~~~~~#...#.......#..........#...................#............................################......................................................................................#........#....#...........#####......#..............
.................................................................................#..#...............#.........#.....#...................#.......|#~~~~~~~#...#.......#..........#...................#..................................................................................................................................#........#....#...........#...#......#..............
.......................................#......#..................................####...............#.........#.....#####################.......|#~~~~~~~#...#.......#..........#...................#..................................................................................................................................##########....#...........#...#......#..............
.......................................#......#.....................................................#.........#.................................|#~~~~~~~#...#.......#..........#...................#................................................................................................................................................#...........#...#......#..............
.......................................#......#.....................................................#.........#.................................|#~~~~~~~#...#.......#..........#...................#................................................................................................................................................#...........#####......#..............
.......................................#......#.....................................................#.........#.................................|#~~~~~~~#...#.......#..........#...................#................................................................................................................................................#......................#..............
.......................................#......#.....................................................###########.................................|#~~~~~~~#...#.......#..........#...................#................................................................................................................................................#......................#..............
.......................................#......#.................................................................................................|#~~~~~~~#####.......#..........#####################................................................................................................................................................########################..............
.......................................#......#.................................................................................................|#~~~~~~~~~~~~~~~~~~~#.........................................................................#...........................................................................................................................................
.......................................#......#.................................................................................................|#~~~~~~~~~~~~~~~~~~~#.........................................................................#.#.........................................................................................................................................
.......................................########.................................................................................................|#~~~~~~~~~~~~~~~~~~~#.........................................................................#.#.........................................................................................................................................
................................................................................................................................................|#####################.........................................................................#.#.........................................................................................................................................
................................................................................................................................................|..............................................................................................###.........................................................................................................................................
................................................................................................................................................|..........................................................................................................................................................................................................................................
................................................................................................................................................|..........................................................................................................................................................................................................................................
................................................................................................................................................|..........................................................................................................................................................................................................................................
................................................................................................................................................|..........................................................................................................................................................................................................................................
................................................................................................................................................|..........................................................................................................................................................................................................................................
........................................................................................................................................||||||||||||||||||........................................................................#........................................................................................................................................................
........................................................................................................................................|#~~~~~~~~~~~~~~#|..............................................................#.........#........................................................................................................................................................
........................................................................................................................................|#~~~~~~~~~~~~~~#|..............................................................#.........#........................................................................................................................................................
........................................................................................................................................|#~~~~~~~~~~~~~~#|..............................................................#.........#........................................................................................................................................................
........................................................................................................................................|#~~~~~~~~~~~~~~#|..............................................................#.........#........................................................................................................................................................
........................................................................................................................................|#~~~~~~~~~~~~~~#|..............................................................#.........#........................................................................................................................................................
..........................#.............................................................................................................|#~~~~~~~~~~~~~~#|..............................................................#.........#.......................................................................................................................#................................
..........................#.........#...................................................................................................|#~~~~~~~~~~~~~~#|..............................................................###########....................................................................................................#..................#................................
..........................#.........#...................................................................................................|#~~~~~~~~~~~~~~#|.............................................................................................................................................................................#..................#....#.......................#...
..........................#.........#...................................................................................................|#~~~~~~~~~~~~~~#|.............................................................................................................................................................................#..................#....#.......................#...
..........................#.........#...................................................................................................|#~~~~~~~~~~~~~~#|.............................................................................................................................................................................#..................#....#.......................#...
..........................#.........#...........................................#.......................................................|#~~~~~~~~~~~~~~#|.............................................................................................................................................................................#..................#....#.......................#...
..........................#.........#...........................................#.....#.................................................|#~~~~~~~~~~~~~~#|.............................................................................................................................................................................#....#......#......#....#.......................#...
..........................#.........#...........................................#.....#.................................................|################|.............................................................................................................................................................................#....#......#......#....#.......................#...
..........................###########...........................................#.....#.................................................|................|.............................................................................................................................................................................#....########......#....#.......................#...
................................................................................#.....#.................................................|................|.............................................................................................................................................................................#..................#....#.......................#...
................................................................................#.....#.................................................|................|.............................................................................................................................................................................#..................#....#.......................#...
................................................................................#.....#.................................................|................|.............................................................................................................................................................................#..................#....#.......................#...
................................................................................#.....#.................................................|................|..............................................................................................................#.........#....................................................#..................#....#.......................#...
................................................................................#.....#.................................................|................|..............................................................................................................#.........#....................................................#..................#....#########################...
................................................................................#.....#.................................................|................|..............................................................................................................#.........#....................................................#..................#................................
................................................................................#.....#.................................................|................|..............#.......................#.......................................................................#.........#....................................................#..................#................................
................................................................................#.....#.................................................|................|..............#.......................#.......................................................................#.........#....................................................#..................#................................
................................................................................#.....#.................................................|................|..............#########################.......................................................................#.........#....................................................#..................#................................
................................................................................#.....#.........................................||||||||||||||||||||#....|..............................................................................................................#.........#....................................................#..................#................................
................................................................................#.....#.........................................|#~~~~~~~~~~~~~~~~~~#....|..............................................................................................................#.........#....................................................#..................#................................
................................................................................#.....#.........................................|#~~~~~~~~~~~~~~~~~~#....|..............................................................................................................#.........#....................................................####################................................
................................................................................#.....#.........................................|#~~~~~~~~~~~~~~~~~~#....|..............................................................................................................#.........#........................................................................................................
................................................................................#.....#.........................................|#~~~~~~~~~~~~~~~~~~#....|..............................................................................................................#.........#........................................................................................................
................................................................................#.....#.........................................|#~~~~~~~~~~~~~~~~~~#....|..............................................................................................................#.........#........................................................................................................
................................................................................#.....#.........................................|#~~~~~~######~~~~~~#....|..............................................................................................................#.........#........................................................................................................
................................................................................#.....#.........................................|#~~~~~~#....#~~~~~~#....|..............................................................................................................###########........................................................................................................
................................................................................#.....#.........................................|#~~~~~~######~~~~~~#....|.................................................................................................................................................................................................................................
................................................................................#.....#.........................................|#~~~~~~~~~~~~~~~~~~#....|............................................................................................................................................................................#.....................#..............................
................................................................................#.....#.........................................|#~~~~~~~~~~~~~~~~~~#....|..............................#.............................................................................................................................................#.....................#..............................
................................................................................#.....#.........................................|####################....|..............................#.......#.....................................................................................................................................#.....................#..............................
................................................................................#######.........................................|........................|..............................#.......#.....................................................................................................................................#.....................#..............................
................................................................................................................................|........................|..............................#.......#................#....................................................................................................................#.....................#..............................
................................................................................................................................|........................|..............................#.......#................#..............#.....#...............................................................................................#.....................#..............................
................................................................................................................................|........................|..............................#.......#................#..............#.....#............#..................................................................................#.....................#..............................
................................................................................................................................|........................|..............................#.......#................#..............#.....#............#..................................................................................#.....................#..............................
................................................................................................................................|........................|..............................#.......#................################.....#............#..................................................................................#.....................#..............................
................................................................................................................................|........................|..............................#.......#.....................................#............#..................................................................................#.....................#..............................
................................................................................................................................|........................|..............................#.......#.....................................#............#..................................................................................#.....................#..............................
................................................................................................................................|........................|..............................#.......#.....................................##############..............................................#...................................#######################..............................
...........................................................#..........#.............................................#|||||||||||||||||||||||||||||||||||||||||||||||....................#.......#.........................................................................#.......................#........................................................................................
...........................................................#..........#.............................................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#.........................................................................#.......................#........................................................................................
...........................................................#..........#.............................................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#.........................................................................#.......................#........................................................................................
...........................................................#..........#.............................................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#.........................................................................#.......................#........................................................................................
...........................................................#..........#.............................................#~~~~~#~~~~#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#.........................................................................#########################........................................................................................
...........................................................#..........#.............................................#~~~~~#~~~~#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#.............................................#~~~~~######~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#.............................................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#.............................................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#.............................................#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#.............................................###############################################|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#............................................................................................|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#............................................................................................|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#............................................................................................|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#............................................................................................|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#............................................................................................|....................#.......#..........................................................................................................................................................................................
...........................................................#..........#............................................................................................|....................#########..............................................................................................................#...........................................................................
...........................................................#..........#................................................................................||||||||||||||||||||||#.................................................................................................................................#................#..........................................................
...........................................................#..........#................................................................................|#~~~~~~~~~~~~~~~~~~~~#.................................................................................................................................#................#..........................................................
...........................................................############................................................................................|#~~~~~~~~~~~~~~~~~~~~#.................................................................................................................................#................#..........................................................
.......................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~#.................................................................................................................................#................#..........................................................
.......................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~#...................................................................#.............................................................#................#..........................................................
.......................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~#.....................................................#.............#.............................................................#................#..........................................................
.......................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~#.....................................................#.............#.................................................#.....#.....##################..........................................................
.......................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~#.....................................................#.............#.................................................#.....#.................................................................................
.......................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~#.....................................................#.............#.................................................#.....#.................................................................................
.......................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~#.....................................................#.............#.................................................#.....#.................................................................................
.......................................................................................................................................................|#~~~~~~~~~~~~~~~~~~~~#.....................................................#.............#.................................................#.....#.................................................................................
.......................................................................................................................................................|######################.....................................................#.............#.................................................#######.................................................................................
.......................................................................................................................................................|...........................................................................###############.........................................................................................................................................
.......................................................................................................................................................|...................................................................................................................................................................................................................................
.......................................................................................................................................................|...................................................................................................................................................................................................................................
............................................................................................................................#..........................|...................................................................................................................................................................................................................................
..................................................................................................................#.........#..........................|...................................................................................................................................................................................................................................
..................................................................................................................#.........#..........................|...................................................................................................................................................................................................................................
..................................................................................................................#.........#..........................|...................................................................................................................................................................................................................................
..................................................................................................................#.........#..........................|.........................................................................................................................................................................................................#.........................
..................................................................................................................#.........#...............#.#........|.........................................................................................................................................................................................................#..#......................
..................................................................................................................#.........#...............#.#........|...........#.......................................................................................................#..........................#..........................................................#..#........#.............
....................................#............#................................................................#.........#..........#....#.#|||||||||||.........#.#.........................................................#...........................................#..........................#..........................................................#..#........#.........#...
....................................#............#................................................................#.........#..........#....#.#~~~~~~~~~#|.........#.#...............................................#.........#...........................................#..........................#..........................................................#..#........#.........#...
....................................#............#................................................................#.........#..........#....#.#~~~~~~~~~#|.........#.#...............................................#.........#...........................................#..........................#..........................................................#..#........#.........#...
....................................#............#................................................................#.........#..........#....#.#~~~~~~~~~#|.........#.#...............................................#.........#...........................................#..........................#......#...................................................#..#........#.........#...
....................................#............#................................................................#.........#..........#....#.#~~~~~~~~~#|.........###...............................................#.........#...........................................#..........................#......#..#................................................#..#........#.........#...
....................................##############................................................................#.........#..........#....#.#~~~~~~~~~#|...........................................................#.........#...........................................#..........................#......#..#................................................#..#........#.........#...
..................................................................................................................#.........#..........#....#.#~~~~~~~~~#|...........................................................#.........#...........................................#.....#.#..................#......#..#................................#...............#..#........#.........#...
..................................................................................................................#.........#..........#....#.#~~~~~~~~~#|...........................................................#.........#...........................................#.....#.#..................#......#..#................................#...........#...#..#........#.........#...
..................................................................................................................#.........#..........#....###~~~~~~~~~#|...........................................................#.........#...........................................#.....###..................#......#..#................................#...........#...#..#........#.........#...
..................................................................................................................#.........#..........#~~~~~~~~~~~~~~~~#|...........................................................#.........#...........................................#..........................#......#..#................................#...........#...#..#........#.........#...
..................................................................................................................#.........#..........#~~~~~~~~~~~~~~~~#|...........................................................#.........#...........................................#..........................#......####................................#...........#...#..#........###########...
..................................................................................................................#.........#..........##################|...........................................................#.........#...........................................#..........................#..........................................#...........#...#..#......................
..................................................................................................................#.........#............................|...........................................................#.........#...........................................#..........................#..........................................#############...#..#......................
..................................................................................................................#.........#............................|...........................................................#.........#...........................................#..........................#..........................................................####......................
........................#.........................................................................................#.........#............................|...........................................................#.........#...........................................#..........................#....................................................................................
......#.................#.........................................................................................#.........#............................|...........................................................#.........#...........................................#..........................#....................................................................................
......#.................#.........................................................................................#.........#............................|...........................................................#.........#...........................................#..........................#....................................................................................
......#.................#.........................................................................................#.........#............................|...........................................................#.........#...........................................#..........................#....................................................................................
......#.................#....................................................................................#.#..#.........#............................|...........................................................#.........#...........................................#..........................#....................................................................................
......#.................#....................................................................................#.#..#.........#............................|...........................................................#.........#...........................................#..........................#....................................................................................
......#.................#....................................................................................#.#..#.........#............................|........#.#................................................#.........#...........................................#..........................#....................................................................................
......#.................#....................................................................................#.#..###########..........................|||||||||||#.#................................................#.........#...........................................############################....................................................................................
......#.................#....................................................................................#.#.......................................|#~~~~~~~~~#.#................................................#.........#...........................................................................................................................................................
......#.................#....................................................................................#.#.......................................|#~~~~~~~~~#.#......#.........................................###########...........................................................................................................................................................
......#.................#....................................................................................#.#.......................................|#~~~~~~~~~#.#......#...............................................................................................................................................................................................................
......#.................#....................................................................................#.#.......................................|#~~~~~~~~~#.#......#...............................................................................................................................................................................................................
......#.................#....................................................................................#.#.......................................|#~~~~~~~~~#.#......#....................................#..........................................................................................................................................................................
......#.................#....................................................................................#.#.......................................|#~~~~~~~~~#.#......#.............................#......#..........................................................................................................................................................................
......#.................#....................................................................................#.#.......................................|#~~~~~~~~~###......#.............................#......#..........................................................................................................................................................................
......#.................#....................................................................................#.#.......................................|#~~~~~~~~~~~~~~~~~~#.............................#......#..........................................................................................................................................................................
......###################....................................................................................#.#.......................................|#~~~~~~~~~~~~~~~~~~#.............................#......#....................................................................................................................................................#........#............
.......................................................................#.....................................###.......................................|#~~~~~~~~~~~~~~~~~~#.............................#......#.....................#......#.............................................................................#.........................................#........#............
.......................................................................#...............#...............................................................|#~~~~~~~~~~~~~~~~~~#.............................#......#.....................#......#..........................................#..................#...............#.........................................#........#............
.......................................................................#...............#...............................................................|####################.............................########.....................#......#...................................#......#..................#...............#.........................................#........#............
.......................................................................#...............#...............................................................|..............................................................................#......#...................................#......#..................#...............#.........................................##########............
.......................................................................#...............#...............................................................|..............................................................................#......#...................................#......#..................#...............#...............................................................
.......................................................................#...............#...............................................................|..............................................................................#......#...................................#......#..................#...............#...............................................................
.......................................................................#...............#...............................................................|..............................................................................#......#...................................#......#..................#...............#...............................................................
.......................................................................#...............#...............................................................|......#.#.....................................................................#......#...................................#......#..................#...............#...............................................................
.......................................................................#...............#..#............................................................|......#.#.....................................................................#......#...................................#......#..................#...............#........................#......................................
..........#............................................................#......#..#.....#..#...#......................................................|||||||||#.#.....#...............................................................#......#...................................#......#..................#......###......#..#.....................#......................................
..........#..#.........................................................#......#..#.....#..#...#......................................................|#~~~~~~~#.#.....#...............................................................#......#...................................#......#..................#......#.#......#..#.....................#......................................
..........#..#.........................................................#......#..#.....#..#...#......................................................|#~~~~~~~#.#.....#...............................................................#......#...................................#......#..................#......#.#......#..#.....................#......................................
..........#..#.........................................................#......#..#.....#..#...#......................................................|#~~~~~~~#.#.....#...............................................................#......#...........#.#.....................#......#..................#......#.#......#..#.....................#......................................
..........#..#.........................................................#......#..#.....#..#...#......................................................|#~~~~~~~#.#.....#...............................................................#......#...........#.#.....................#......#..................#......#.#......#..#.....................#......................................
..........#..#.........................................................#......####.....#..#...#......................................................|#~~~~~~~#.#.....#...............................................................########...........#.#.....................#......#..................#......###......#..#.....................#......................................
..........#..#.........................................................#...............#..#...#......................................................|#~~~~~~~#.#.....#..................................................................................#.#.....................#......#..................#...............#..#.....................#......................................
..........#..#.........................................................#...............#..#...#......................................................|#~~~~~~~###.....#..................................................................................#.#.....................#......#..................#...............#..#.....................#......................................
..........#..#.........................................................#...............#..#####......................................................|#~~~~~~~~~~~~~~~#..................................................................................#.#.....................#......#..................#...............#..#.....................#......................................
..........#..#.........................................................#...............#.............................................................|#~~~~~~~~~~~~~~~#..................#.....................#.........................................#.#.....................#......#..................#...............#..#.....................#......................................
..........#..#.........................................................#...............#.............................................................|#################..................#.....................#.........................................#.#.....................#......#..................#...............#..#######################......................................
..........#..#.........................................................#...............#.............................................................|...................................#.....................#.........................................#.#.....................#......#..................#...............#...............................................................
..........####.........................................................#...............#.............................................................|...................................#.....................#.........................................#.#.....................#......#..................#################...............................................................
.......................................................................#################.............................................................|...................................#.....................#.........................................#.#.....................#......#..................................................................................................
.....................................................................................................................................................|...................................#.....................#.........................................#.#.....................#......#..................................................................................................
.....................................................................................................................#...............................|...................................#.....................#.........................................#.#.....................#......#..................................................................................................
................................................................................................................#....#...............................|...................................#.....................#.........................................#.#.....................#......#..................................................................................................
................................................................................................................#....#...............................|...................................#.....................#.........................................###.....................########........................................................................................#.........
................................................................................................................#....#...............................|...................................#.....................#................................................................................................................................................#................#.........
................................................................................................................#....#................||||||||||||||||||||||#............................#.......########......#................................................................................................................................................#................#.........
........................................................................#......................#................#....#................|#~~~~~~~~~~~~~~~~~~~~#............................#.......#......#......#................................................................................................................................................#................#.........
........................................................................#......................#................######................|#~~~~~~~~~~~~~~~~~~~~#............................#.......########......#................................................................................................................................................#................#.........
........................................................................#......................#......................................|#~~~~~~~###~~~~~~~~~~#............................#.....................#................................................................................................................................................#................#.........
........................................................................#........#.....#.......#......................................|#~~~~~~~#.#~~~~~~~~~~#............................#.....................#................................................................................................................................................#................#.........
........................................................................#........#.....#.......#......................................|#~~~~~~~###~~~~~~~~~~#............................#.....................#..........................#.....................................................................................................................#................#.........
........................................................................#........#.....#.......#......................................|#~~~~~~~~~~~~~~~~~~~~#............................#.....................#..........................#..........#..........................................................................................................#................#.........
........................................................................#........#.....#.......#......................................|#~~~~~~~~~~~~~~~~~~~~#............................#.....................#..........................#..........#..........................................................................................................#................#.........
........................................................................#........#.....#.......#......................................|#~~~~~~~~~~~~~~~~~~~~#............................#.....................#..........................#..........#.......................#.............#....................................................................#................#.........
........................................................................#........#.....#.......#......................................|#~~~~~~~~~~~~~~~~~~~~#............................#.....................#..........................#..........#.......................#.............#....................................................................#.......####.....#.........
........................................................................#........#.....#.......#......................................|#~~~~~~~~~~~~~~~~~~~~#............................#######################..........................#..........#.......................#.............#....................................................................#.......#..#.....#.........
..........................................#.............................#........#######.......#......................................|######################.............................................................................#..........#.......................#.............#....................................................................#.......#..#.....#.........
..........................................#......................#......#......................#......................................|..........................#........................................................................#..........#.......................#.............#....................................................................#.......####.....#.........
..........................................#......................#......#......................#......................................|..........................#..................#.....................................................#..........#.......................#.............#....................................................................#................#.........
..........................................#......................#......#......................#......................................|..........................#..................#.....................................................#..........#.......................#.............#....................................................................#................#.........
..........................................#......................#......#......................#......................................|..........................#..................#.....................................................#..........#.......................#.............#....................................................................#................#.........
..........................................#......................#......#......................#......................................|..........................#..................#.....................................................#..........#.......................#.............#....................................................................##################.........
..........................................#......................#......########################......................................|..........................#..................#......................................#..............#..........#.......................#.............#...............................................................................................
..........................................#......................#....................................................................|..........................#..................#..................................#...#..............#..........#.......................#.............#...............................................................................................
..........................................#......................#....................................................................|..........................#..................#..................................#...#..............#..........#.......................#.............#...............................................................................................
..........................................#......................#...........................................................||||||||||||||||||#.................#..................#..................................#...#..............#..........#.......................#.............#...............................................................................................
..........................................#......................#...........................................................|#~~~~~~~~~~~~~~~~#.................#..................#..................................#...#..............#..........#.......................#.............#...............................................................................................
..........................................#......................#...........................................................|#~~~~~~~~~~~~~~~~#.................#..................#..................................#...#..............#..........#.......................#.............#...............................................................................................
..........................................#......................#...........................................................|#~~~~~~~~~~~~~~~~#.................#..................#..................................#####..............#..........#.......................#.............#...............................................................................................
..........................................#......................#...........................................................|#~~~~~~~~~~~~~~~~#.................#..................#.....................................................#..........#.......................#.............#...............................................................................................
..........................................########################...........................................................|#~~~~~~~~~~~~~~~~#.................#..................#.....................................................#..........#.......................###############...............................................................................................
.............................................................................................................................|#~~~~~~~~~~~~~~~~#.................#..................#.....................................................#..........#.....................................................................................................................................
.............................................................................................................................|#~~~~~~~~~~~~~~~~#.................#..................#.....................................................############..................................................#..................................................................................
.............................................................................................................................|#~~~~~~~~~~~~~~~~#.................#..................#...............................................................................................................#...#..................................................................................
.............................................................................................................................|#~~~~~~~~~~~~~~~~#.................#..................#...............................................................................................................#...#..................................................................................
.............................................................................................................................|#~~~~~~~~~~~~~~~~#.................#..................#...............................................................................................................#...#..................................................................................
.............................................................................................................................|#~~~~~~~~~~~~~~~~#.................#..................#...............................................................................................................#...#..................................................................................
.............................................................................................................................|#~~~~~~~~~~~~~~~~#.................#..................#...............................................................................................................#...#..................................................................................
..............#..............#...............................................#...............................................|##################.................#..................#...............................................................................................................#...#..................................................................................
..............#..............#...............................................#..................#............................|...................................#..................#...............................................................................................................#...#..................................................................................
..............#..............#...............................................#..................#............................|...................................#..................#...............................................................................................................#...#..................................................................................
..............#..............#...............................................#.......#...#......#............................|...................................#..................#...............................................................................................................#...#..................................................................................
..............#..............#...............................................#.......#...#......#............................|...................................#..................#...............................................................................................................#...#..................................................................................
..............#..............#...............................................#.......#...#......#............................|...................................#..................#.............................................#.......#.........................................................#...#...#....................#.........................................................
..............#..............#...............................................#.......#...#......#............................|...................................#..................#.............................................#.......#.........................................................#...#...#....................#.........................................................
..............#..............#...............................................#.......#...#......#............................|...................................####################.............................................#.......#.........................................................#...#...######################.........................................................
..............#.....#..#.....#...............................................#.......#...#......#............................|....................................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#.......#...#......#............................|....................................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#.......#...#......#...............#|||||||||||||||||||||||..........................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#.......#####......#...............#~~~~~~~~~~~~~~~~~~~~~#|..........................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#..................#...............#~~~~~~~~~~~~~~~~~~~~~#|..........................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#..................#...............#~~~~~~~~~~~~~~~~~~~~~#|..........................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#..................#...............#~~~~~~~~~~~~~~~~~~~~~#|..........................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#..................#...............#~~~~~~~~~~~~~~~~~~~~~#|..........................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#..................#...............#~~~~~~~~~~~~~~~~~~~~~#|..........................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#...............................................#..................#...............#~~~~~~~~~~~~~~~~~~~~~#|..........................................................................................#.......#.........................................................#...#..................................................................................
..............#.....#..#.....#......#.....................#..................#..................#...............#~~~~~~~~~~~~~~~~~~~~~#|..........................................................................................#########.........................................................#...#..................................................................................
..............#.....#..#.....#......#.....................#..................#..................#...............#~~~~~~~~~~~~~~~~~~~~~#|............................................................................................................................................................#...#............#.....................................................................
..............#.....####.....#......#.....................#..................#..................#...............#######################|............................................................................................................................................................#...#............#.........#...........................................................
..............#..............#......#.....................#..................#..................#......................................|..................................................#..#......................................................................................................#...#............#.........#...........................................................
..............#..............#......#.............#.#.....#..................####################......................................|..................................................#..#......................................................................................................#####............#.........#...........................................................
..............#..............#......#.............#.#.....#............................................................................|..................................................#..#.......................................................................................................................#.........#...........................................................
..............################......#.............#.#.....#............................................................................|..................................................#..#.......................................................................................................................#.........#...........................................................
....................................#.............#.#.....#............................................................................|..................................................#..#.......................................................................................................................#.........#...........................................................
....................................#.............#.#.....#............................................................................|..................................................#..#.......................................................................................................................#.........#...........................................................
....................................#.............#.#.....#............................................................................|..................................................#..#.......................................................................................................................#.........#...........................................................
....................................#.............#.#.....#............................................................................|..................................................#..#.......................................................................................................................#.........#...........................................................
....................................#.............#.#.....#............................................................................|..................................................#..#.......................................................................................................................#.........#...........................................................
....................................#.............###.....#...............................................................|||||||||||||||||||||#..........................................#..#.......................................................................................................................#.........#...........................................................
....................................#.....................#...............................................................|#~~~~~~~~~~~~~~~~~~~#..........................................#..#.......................................................................................................................#.........#...........................................................
....................................#.....................#...............................................................|#~~~~~~~~~~~~~~~~~~~#..........................................#..#.......................................................................................................................#.........#...........................................................
....................................#.....................#...............................................................|#~~~~~~~~~~~~~~~~~~~#...........#..............................#..#.......................................................................................................................#.........#...........................................................
.......................#............#.....................#...............................................................|#~~~~~~~~~~~~~~~~~~~#...........#......................#.......#..#.......................................................................................................................#.........#...........................................................
.......................#......#.....#.....................#...............................................................|#~~~~~#~~~~~~~#~~~~~#...........#......................#.......#..#.......................................................................................................................#.........#...........................................................
.......................#......#.....#.....................#...............................................................|#~~~~~#~~~~~~~#~~~~~#...........#......................#.......#..#.......................................................................................................................#.........#...........................................................
.......................#......#.....#.....................#...............................................................|#~~~~~#~~~~~~~#~~~~~#...........########################.......#..#.......................................................................................................................#.........#...........................................................
.......................#......#.....#.....................#...............................................................|#~~~~~#~~~~~~~#~~~~~#..........................................#..#.......................................................................................................................#.........#...........................................................
.......................#......#.....#.....................#...............................................................|#~~~~~#########~~~~~#..........................................#..#.......................................................................................................................#.........#...........................................................
.......................#......#.....#.....................#...............................................................|#~~~~~~~~~~~~~~~~~~~#..........................................####.......................................................................................................................###########...........................................................
.......................#......#.....#.....................#...............................................................|#~~~~~~~~~~~~~~~~~~~#...........................................................................................................................................................................................................................................
.......................#......#.....#.....................#...............................................................|#~~~~~~~~~~~~~~~~~~~#...........................................................................................#...............................................................................................................................................
...........#...........########.....#.....................#...............................................................|#####################................................................................................#..........#...............................................................................................................................................
...........#...#....................#######################...............................................................|.....................................................................................................#..........#...............................................................................................................................................
...........#...#..........................................................................................................|.....................................................................................................#..........#...............................................................................................................................................
...........#####..........................................................................................................|.....................................................................................................#..........#...............................................................................................................................................
..........................................................................................................................|.....................................................................................................############...............................................................................................................................................
..........................................................................................................................|................................................................................................................................................................................................................................................................
..........................................................................................................................|................................................................................................................................................................................................................................................................
..........................................................................................................................|................................................................................................................................................................................................................................................................
..........................................................................................................................|................................................................................................................................................................................................................................................................
..........................................................................................................................|................................................................................................................................................................................................................................................................
..........................................................................................................................|.................................................................#..............................................................................................................................................................................................
..................................................................................................................|||||||||||||||||||||#....................................................#.......................#.............................................#......#.................................................................................................................
..................................................................................................................|#~~~~~~~~~~~~~~~~~~~#....................................................#########################.............................................#......#...................................................#...................#.........................................
..................................................................................................................|#~~~~~~~~~~~~~~~~~~~#..........................................................................................................................########...............#...................................#...................#.........................................
..................................................................................................................|#~~~~~~~~~~~~~~~~~~~#....................................................................................................................................#............#...................................#...................#.........................................
..................................................................................................................|#~~~~~~~~~~~~~~~~~~~#....................................................................................................................................#............#...................................#...................#.........................................
............#.....................................................................................................|#~~~~~~~~~~~~~~~~~~~#....................................................................................................................................##############...................................#...................#.........................................
............#.#.......................................................................#..............#............|#~~~~~~~~~~~~~~~~~~~#.....................................................................................................................................................................................#...................#.........................................
............#.#.......................................................................#..............#............|#~~~~~~~~~~~~~~~~~~~#.....................................................................................................................................................................................#..........###......#.........................................
............#.#.......................................................................################............|#~~~~~~~~~~~~~~~~~~~#.....................................................................................................................................................................................#..........#.#......#....................#....................
............#.#...................................................................................................|#~~~~~~~~~~~~~~~~~~~#.....................................................................................................................................................................................#..........#.#......#....................#...#................
............#.#...................................................................................................|#####################......................................................................................................................................#..............................................#..........#.#......#....................#...#................
............###...................................................................................................|....................................................................................................................................................#......#..............................................#..........#.#......#....................#...#................
....................................................................#.............................................|....................................................................................................................................................#......#..............................................#..........#.#......#....................#...#................
....................................................................#.....#.......................................|....................................................................................................................................................#......#..............................................#..........#.#......#....................#...#................
....................................................................#.....#.......................................|....................................................................................................................................................#......#..............................................#..........#.#......#....................#...#................
....................................................................#.....#.......................................|....................................................................................................................................................#......#..............................................#..........#.#......#....................#...#................
....................................................................#.....#.......................................|....................................................................................................................................................#......#..............................................#..........#.#......#....................#...#................
...............................................#................#...#.....#.......................................|....................................................................................................................................................#......#..............................................#..........#.#......#....................#...#................
...............................................#................#...#.....#.......................................|....................................................................................................................................................#......#..............................................#..........###......#....................#...#................
...............................................#................#...#.....#.......................................|....................................................................................................................................................#......#..............................................#...................#....................#...#................
...............................................#................#...#.....#...........................#|||||||||||||||||||||...........................................................................................................................................#......#..............................................#...................#....................#####................
...#...........................................#................#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................#......#..............................................#...................#.........................................
...#..............#............................#......###.......#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................#......#..............................................#...................#.........................................
...#..............#............................#......#.#.......#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................#......#..............................................#...................#.........................................
...#..............#............................#......#.#.......#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................#......#..............................................#...................#.........................................
...#..............#............................#......###.......#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................#......#..............................................#...................#.........................................
...#..............#............................#................#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|...........................................................................................................................................#......#..............................................#...................#.........................................
...#..............#............................#................#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|................................#.....................#....................................................................................#......#..............................................#####################.........................................
...#......#.#.....#............................#................#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|................................#.....................#....................................................................................#......#............................................................................................................
...#......#.#.....#............................#................#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|................................#.....................#....................................................................................#......#............................................................................................................
...#......###.....#............................#................#...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|................................#.....................#....................................................................................########............................................................................................................
...#..............#............................##################...#.....#...........................#~~~~~~~~~~~~~~~~~~~#|................................#.....................#........................................................................................................................................................................................................
...#..............#.................................................#.....#...........................#####################|................................#.....................#........................................................................................................................................................................................................
...#..............#.................................................#.....#................................................|................................#.....................#..........#.............................................................................................................................................................................................
...#..............#.................................................#.....#................................................|................................#.....................#...#......#.............................................................................................................................................................................................
...################.................................................#.....#................................................|................................#.....................#...#......#.............................................................................................................................................................................................
....................................................................#.....#................................................|................................#.....................#...#......#.............................................................................................................................................................................................
....................................................................#.....#.......#...#....................................|................................#.....................#...#......#.............................................................................................................................................................................................
....................................................................#.....#.......#...#....................................|................................#.....................#...#......#..............................................#..............................................................................................................................................
....................................................................#.....#.......#...#....................................|................................#######################...#......#..............................................#.................#............................................................................................................................
....................................................................#######.......#...#......................|||||||||||||||||||||||||#...............................................#......#..............................................#.................#...................#........................................................................................................
..................................................................................#...#......................|#~~~~~~~~~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#...................#.....................#..................................................................................
..................................................................................#...#......................|#~~~~~~~~~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#...................#######################..................................................................................
..................................................................................#...#......................|#~~~~~#~#~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#............................................................................................................................
..................................................................................#...#......................|#~~~~~#~#~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#............................................................................................................................
..................................................................................#...#......................|#~~~~~#~#~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#............................................................................................................................
..................................................................................#...#......................|#~~~~~#~#~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#............................................................................................................................
..................................................................................#...#......................|#~~~~~#~#~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#............................................................................................................................
..................................................................................#...#......................|#~~~~~###~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#......................................................................#.....................................................
..................................................................................#...#......................|#~~~~~~~~~~~~~~~~~~~~~~~#...............................................#......#..............................................#.................#......................................................................#...............#.....................................
..................................................................................#####......................|#~~~~~~~~~~~~~~~~~~~~~~~#...............................................########..............................................#.................#......................................................................#...............#.....................................
.............................................................................................................|#########################.....................................................................................................#.................#......................................................................#...............#.....................................
.............................................................................................................|..............................................................................................................................#.................#......................................................................#...............#.....................................
.............................................................................................................|..............................................................................................................................#.................#......................................................................#...............#.....................................
.............................................................................................................|..............................................................................................................................#.................#......................................................................#...............#.....................................
.............................................................................................................|..............................................................................................................................#.................#......................................................................#....#...#......#.....................................
....................................................................................................#..#.....|.......................................................#..#...................................................................#.................#.......................................#...#..........................#....#...#......#.....................................
....................................................................................................#..#.....|.......................................................#..#...................................................................#.................#.......................................#...#..........................#....#...#......#.....................................
..............................................................................................#.....#..#||||||||.....................................................#..#...................................................................#.................#.......................................#...#..........................#....#...#......#.....................................
..............................................................................................#.....#..#~~~~~~#|.....................................................#..#...................................................................#.................#.......................................#...#..........................#....#####......#.....................................
..............................................................................................#.....#..#~~~~~~#|.....................................................#..#...................................................................#.................#.......................................#...#..........................#...............#.....................................
..............................................................................................#.....#..#~~~~~~#|.....................................................#..#...................................................................#.................#.......................................#...#..........................#...............#.....................................
..............................................................................................#.....#..#~~~~~~#|.....................................................#..#...................................................................#.................#.......................................#...#..........................#...............#.....................................
.............................#.........................#......................................#.....#..#~~~~~~#|.....................................................#..#...................................................................###################.......................................#...#..........................#...............#.....................................
.............................#.........................#......................................#.....#..#~~~~~~#|.......................................#.............#..#.............................................................................................................................#...#..........................#...............#.....................................
.............................#.........................#......................................#.....####~~~~~~#|.......................................#..........#..#..#.............................................................................................................................#...#..........................#################.....................................
.............................#.........................#......................................#~~~~~~~~~~~~~~~#|.......................................#..........#..#..#.............................................................................................................................#...#................................................................................
.............................#......###................#......................................#~~~~~~~~~~~~~~~#|.......................................#..........#..#..#.............................................................................................................................#####................................................................................
.............................#......#.#................#......................................#################|.......................................#..........#..####..........................................................................................................#...............#.......................................................................................
.....#.................#.....#......#.#................#.......................................................|.......................................#..........#................................................................................................................#...............#.......................................................................................
.....#.................#.....#......#.#................#.......................................................|.......................................#..........#................................................................................................................#################.......................................................................................
.....#.................#.....#......###................#.......................................................|.......................................#..........#........................................................................................................................................................................................................................
.....###################.....#.........................#.......................................................|.......................................#..........#........................................................................................................................................................................................................................
.............................#.........................#.......................................................|.......................................#..........#........................................................................................................................................................................................................................
.............................#.........................#.......................................................|.......................................#..........#........................................................................................................................................................................................................................
.............................###########################.......................................................|.......................................#..........#........................................................................................................................................................................................................................
.................................................................................................||||||||||||||||||||||||||||..........................#..........#........................................................................................................................................................................................................................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#........................................................................................................................................................................................................................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#........................................................................................................................................................................................................................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#...........................................................................................................................................................................................#............................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#..................................................................................................................................................#........................................#..#.........................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#............................................................................................................................................#.....#........................................#..#.........................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#............................................................................................................................................#.....#........................................#..#.........................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#............................................................................................................................................#.....#........................................#..#.........................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#............................................................................................................................................#.....#........................................#..#.........................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#............................................................................................................................................#.....#........................................#..#.........................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|..........................#..........#............................................................................................................................................#.....#........................................#..#.........................
.................................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~#|......#............#......#..........#............................................................................................................................................#.....#........................................#..#.........................
.................................................................................................|##########################|......#............#......#..........#................................#........#....................................................#.............................................#.....#........................................#..#.........................
.................................................................................................|..........................|......##############......#..........#................................#........#..........................................#.........#.....................................#.......#.....#........................................#..#.........................
.................................................................................................|..........................|..........................############................................#........#..........................................#.........#.................#...................#.......#.....#........................................#..#.........................
.................................................................................................|..........................|......................................................................#........#..........................................#.........#.................#...................#.......#.....#........................................#..#.........................
.................................................................................................|..........................|......................................................................#........#..........................................#.........#.................#...................#.......#.....#........................................#..#.........................
.................................................................................................|..........................|......................................................................#........#..........................................#.........#.................#...................#.......#.....#.......#..............#.................#..#.........................
.................................................................................................|..........................|......................................................................#........#..........................................#.........#.................#...................#.......#.....#.......#..............#.................#..#.........................
.................................................................................................|...................#.#....|......................................................................#........#..........................................#.........#.................#...................#.......#.....#.......#..............#.................#..#.........................
.................................................................................................|...................#.#....|......................................................................#........#..........................................#.........#.................#...................#.......#.....#.......#..............#.................#..#.........................
......................................................................#..........................|.........#.........#.#|||||||....................................................................#........#..........................................#.........#.................#####################.......#.....#.......#..............#.................#..#.........................
......................................................................#................#.........|.........#.........#.#~~~~~#|....................................................................#........#..........................................#.........#.............................................#.....#.......#..............#.................#..#.........................
......................................................................##################.........|.........#.........#.#~~~~~#|....................................................................#........#..........................................#.........#.............................................#.....#.......################.................####.........................
.................................................................................................|.........#.........#.#~~~~~#|....................................................................#........#..........................................#.........#.............................................#.....#.....................................................................
.................................................................................................|.........#.........#.#~~~~~#|....................................................................#........#..........................................#.........#.............................................#.....#.....................................................................
.................................................................................................|.........#.........#.#~~~~~#|....................................................................#........#..........................................#.........#.............................................#.....#.....................................................................
.................................................................................................|.........#.........#.#~~~~~#|....................................................................#........#..........................................###########.........................#...................#.....#.....................................................................
.................................................................................................|.........#.........#.#~~~~~#|....................................................................#........#..............................................................................#...............#...#.....#.....................................................................
.................................................................................................|.........#.........#.#~~~~~#|....................................................................#........#..............................................................................#################...#.....#.....................................................................
.................................................................................................|.........#.........###~~~~~#|....................................................................#........#..................................................................................................#.....#........#............................................................
.................................................................................................|.........#~~~~~~~~~~~~~~~~~#|....................................................................#........#..................................................................................................#.....#........#........#...................................................
.................................................................................................|.........#~~~~~~~~~~~~~~~~~#|....................................................................#........#..................................................................................................#######........#........#...................................................
.................................................................................................|.........#~~~~~~~~~~~~~~~~~#|....................................................................#........#.................................................................................................................#........#...................................................
.................................................................................................|.........#~~~~~~~~~~~~~~~~~#|....................................................................#........#.................................................................................................................#........#...................................................
.................................................................................................|.........###################|....................................................................#........#.................................................................................................................#........#...................................................
..............................................#..................#...............................|............................|...........................................#........................##########.................................................................................................................#........#...................................................
..............................................#..................#.....................#.........|............................|..........................#................#.............................................................................................................#.....................................#........#...................................................
..............................................#..................#..........#..........#.........|...#.#......................|..........................#................#.............................................................................................................#............#........................#........#...................................................
..............................................#..................#..........#..........#.......||||||#.#......................|..........................#................#.............................................................................................................#............#........................#........#...................................................
..............................................#..................#..........#..........#.......|#~~~~#.#......................|..........................#................#.............................................................................................................#............#........................#........#...................................................
..............................................#..................#..........#..........#.......|#~~~~#.#..........#...........|..........................#................#.............................................................................................................##############........................#........#...................................................
..............................................#..................#..........#..........#.......|#~~~~#.#..........#...........|..........................#................#...................................................................................................................................................#........#...................................................
....................#.........................#..................#..........#..........#.......|#~~~~#.#..........#...........|..........#.#.............#................#...................................................................................................................................................#........#...................................................
....................#....................#....#..................#..........#..........#.......|#~~~~#.#..........#.........|||||||||||||#.#.............#........#.#.....#...................................................................................................................................................##########...................................................
....................#....................#....#..................#..........#..........#.......|#~~~~#.#..........#.........|#~~~~~~~~~~~#.#.............#........#.#.....#................................................................................................................................................................................................................
....................#....................#....#..................#..........#..........#.......|#~~~~#.#..........#.........|#~~~~~~~~~~~#.#.....#.......#........#.#.....#........................................................................................................................................#.......................................................................
....................#....................#....#..................#..........#..........#.......|#~~~~###..........#.........|#~~~~~~~~~~~#.#.....#.......#........#.#.....#..................................................................................................................#.....................#.......................................................................
....................#....................#....#..................#..........#..........#.......|#~~~~~~~~~~~~~~~~~#.........|#~~~~~~~~~~~#.#.....#.......#........#.#.....#..................................................................................................................#.....................#.......................................................................
....................#....................#....#..................#..........#..........#.......|#~~~~~~~~~~~~~~~~~#.........|#~~~~~~~~~~~#.#.....#.......#........#.#.....#..................................................................................................................#.....................#.......................................................................
....................#....................#....#..................#..........#..........#.......|#~~~~~~~~~~~~~~~~~#.........|#~~~~~~~~~~~###.....#.......#........#.#.....#..................................................................................................................#.....................#.......................................................................
....................#..........####......#....#..................#..........#..........#.......|###################.........|#~~~~~~~~~~~~~~~~~~~#.......#........#.#.....#..................................................................................................................#######################.......................................................................
....................#..........#..#......#....#..................#..........#..........#.......|............................|#~~~~~~~~~~~~~~~~~~~#.......#........###.....#................................................................................................................................................................................................................
....................#..........#..#......#....#..................#..........#..........#.......|............................|#~~~~~~~~~~~~~~~~~~~#.......#................#................................................................................................................................................................................................................
....................#..........#..#......#....#..................#..........#..........#.......|............................|#~~~~~~~~~~~~~~~~~~~#.......#................#................................................................................................................................................................................................................
....................#..........####......#....#..................#..........#..........#.......|............................|#~~~~~~~~~~~~~~~~~~~#.......#................#................................................................................................................................................................................................................
....................#....................#....#..................#..........#..........#.......|............................|#####################.......#................#................................................................................................................................................................................................................
....................#....................#....#..................#..........#..........#.......|............................|............................##################................................................................................................................................................................................................................
....................######################....#..................#..........#..........#.......|............................|..............................................................................................................................................................................................................................................................
..............................................####################..........#..........#.......|............................|..............................................................................................................................................................................................................................................................
............................................................................#..........#.......|............................|..............................................................................................................................................................................................................................................................
............................................................................############.......|............................|..............................................................................................................................................................................................................................................................
...............................................................................................|............................|..............................................................................................................................................................................................................................................................
...............................................................................................|............................|..............................................................................................................................................................................................................................................................
...............................................................................................|............................|..............................................................................................................................................................................................................................................................
......................................................................................|||||||||||||||||||||||||||||||||||||||||||||||......................................................................................................................................................................................................................................................
......................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|......................................................................................................................................................................................................................................................
......................................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........................................#.....#........................................#.............................................................................................................................................................
............#.........................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........................................#.....#.................#......................#..................................................................#..........................................................................................
............#........................#......................#.........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........................................#.....#.................#......................#..................................................................#...........#..............................................................................
............#........................#.................#....#.........................|#~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~#~~~~~~#|.........................................#.....#.................#......................#..................................................................#...........#..............................................................................
............#........................#.................#....#.........................|#~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~#~~~~~~#|.........................................#.....#.................#......................#..................................................................#...........#..............................................................................
............#..............####......#.................#....#.........................|#~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~#~~~~~~#|.........................................#.....#.................#..............#.#.....#..................................................................#...........#..............................................................................
............#..............#..#......#.................#....#.........................|#~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~#~~~~~~#|.........................................#.....#.................#..............#.#.....#..................................................................#...........#..............................................................................
............#..............#..#......#.................#....#.........................|#~~~~~~~~~~~~~~#~~~~~~~~~~~~~~~~~~~~~#~~~~~~#|.........................................#.....#.................#..............#.#.....#..................................................................#...........#..............................................................................
............#..............#..#......#.................#....#.........................|#~~~~~~~~~~~~~~#######################~~~~~~#|.........................................#.....#.................#..............#.#.....#..................................................................#...........#..............#.......#.......................................................
............#..............#..#......#.................#....#.........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........................................#.....#.................#..............#.#.....#..................................................................#...........#..............#.......#.......................................................
............#..............#..#......#.................#....#.........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........................................#.....#.................#..............###.....#..................................................................#...........#..............#.......#.......................................................
............#..............#..#......#.................#....#.........................|#############################################|.........................................#.....#.................#......................#..................................................................#...........#..............#.......#.......................................................
............#..............#..#......#.................#....#.........................|.............................................|.........................................#.....#.................#......................#..................................................................#...........#..............#.......#.......................................................
............#..............####......#.........#..#....#....#.........................|.............................................|.........................................#######.................#......................#..................................................................#...........#..............#.......#.......................................................
............#........................#.........#..#....#....#.........................|.............................................|.................................................................########################..................................................................#...........#..............#.......#.......................................................
............#........................#.........#..#....#....#.........................|.............................................|...........................................................................................................................................................#...........#..............#.......#.......................................................
............##########################.........#..#....#....#.........................|.............................................|...........................................................................................................................................................#...........#..............#.......#.......................................................
...............................................#..#....#....#.........................|.............................................|...........................................................................................................................................................#...........#..............#.......#.......................................................
...............................................#..#....#....#.........................|.............................................|......................................................................................................................#....................................#############..............#.......#.......................................................
...............................................#..#....#....#.........................|.............................................|...........................................................................................................#..........#...............................................................#.......#.......................................................
...............................................#..#....#....#.........................|..............................|||||||||||||||||||||||||||||||............................................................................................#..........#...............................................................#.......#.......................................................
...............................................####....#....#.........................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................................................................................#..........#...............................................................#.......#.......................................................
.......................................................#....#.........................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................................................................................#..........#...............................................................#.......#.......................................................
.......................................................#....#.........................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|............................................................................................#..........#...............................................................#.......#.......................................................
.......................................................#....#.........................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........#..................................................................................#..........#...............................................................#.......#.......................................................
.......................................................#....#.........................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........#.................#................................................................#..........#...............................................................#.......#.......................................................
.......................................................#....#.........................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........#.................#................................................................#..........#...............................................................#.......#.......................................................
.......................................................######.........................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........#.................#................................................................#..........#...............................................................#.......#.......................................................
.........................................#............................................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........#.................#................................................................#..........#...............................................................#.......#.......................................................
.............#...........................#............................................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........#.................#...#........#...................................................#..........#...............................................................#########.......................................................
.............#...........................#............................................|..............................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~#|.........#.................#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#............................................|..............................|#############################|.........#.................#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#............................................|..............................|.............................|.........#.................#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#............................................|..............................|.............................|.........#.................#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#............................................|..............................|.............................|.........#.................#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#............................................|..............................|.............................|.........#........#..#.....#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#............................................|..............................|.............................|.........#........#..#.....#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#............................................|..............................|.............................|.........#........#..#.....#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#............................................|..............................|.............................|.........#........#..#.....#...#........#...................................................#..........#...............................................................................................................................
.............#...........................#...........#...........#....................|..............................|.............................|.........#........#..#.....#...##########...................................................#..........#...............................................................................................................................
.............#...........................#...........#...........#....................|..............................|......................#.#....|.........#........####.....#................................................................#..........#...............................................................................................................................
.............#...........................#...........#...........#....................|..............................|......................#.#....|.........#.................#................................................................#..........#...............................................................................................................................
.............#...........................#...........#...........#....................|.....................|||||||||||||||||||||#..#.......#.#|||||||.......#.................#................................................................#..........#...............................................................................................................................
.............#...........................#...........#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#.......#.#~~~~~#|.......#.................#................................................................#..........#...............................................................................................................................
.............#...........................#...........#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#.......#.#~~~~~#|.......#.................#................................................................############...............................................................................................................................
.............#...........................#...........#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#.......#.#~~~~~#|.......#.................#...........................................................................................................................................................................................................
.............#############################...........#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#.......#.#~~~~~#|.......#.................#...........................................................................................................................................................................................................
.....................................................#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#.......#.#~~~~~#|.......#.................#...........................................................................................................................................................................................................
.....................................................#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#.......#.#~~~~~#|.......###################...........................................................................................................................................................................................................
.....................................................#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#.......###~~~~~#|.....................................................................................................................................................................................................................................
.....................................................#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#~~~~~~~~~~~~~~~#|.....................................................................................................................................................................................................................................
.....................................................#...........#....................|.....................|#~~~~~~~~~~~~~~~~~~~#..#~~~~~~~~~~~~~~~#|.....................................................................................................................................................................................................................................
.....................................................#...........#....................|.....................|#####################..#################|.....................................................................................................................................................................................................................................
............#.........................#..............#...........#....................|.....................|........................................|.....................................................................................................................................................................................................................................
............#.........................#..............#...........#....................|.....................|........................................|.....................................................................................................................................................................................................................................
............###########################..............#...........#....................|.....................|........................................|.....................................................................................................................................................................................................................................
.....................................................#...........#....................|.....................|........................................|.....................................................................................................................................................................................................................................
.....................................................#############....................|.....................|........................................|.....................................................................................................................................................................................................................................
......................................................................................|.....................|........................................|.....................................................................................................................................................................................................................................
......................................................................................|.....................|........................................|.....................................................................................................................................................................................................................................
......................................................................................|.............#||||||||||||||||||||....................|||||||||||||||||||#...............................#.....#....................................................................................................................................................................................
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#...............................#.....#.................................................................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#...............................#######.................................................................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#.......................................................................................................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#.......................................................................................................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#.......................................................................................................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#.......................................................................................................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#.......................................................................................................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#.......................................................................................................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#......................................................................#.#..............................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#......................................................................#.#..............................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|#~~~~~~~~~~~~~~~~~#......................................................................#.#..............................................................................................................................#............#.....
......................................................................................|.............#~~~~~~~~~~~~~~~~~~#|....................|###################......................................................................#.#..............................................................................................................................#............#.....
......................................................................................|.............####################|....................|.........................................................................................#.#..............................................................................................................................#............#.....
......................................................................................|.................................|....................|.........................................................................................#.#............................................................................................................#.................#............#.....
......................................................................................|.................................|....................|.........................................................................................#.#.............................................................................................#..............#.................#............#.....
......................................................................................|.................................|....................|.........................................................................................#.#.............................................................................................#..............#.................#............#.....
......................................................................................|.................................|....................|.........................................................................................#.#.............................................................................................#..............#.................#............#.....
...............................#.....................#................................|.................................|....................|.........................................................................................###.............................................................................................#..............#.................#............#.....
...............................#.....................#................................|.................................|....................|.........................................................................................................................................................................................#..............#.................#............#.....
...............................#.....................#................................|.................................|....................|.........................................................................................................................................................................................#..............#.................#............#.....
...............................#.....................#................................|.................................|....................|.........................................................................................................................................................................................#..............#.................#............#.....
...............................#.....................#................................|.................................|....................|.........................................................................................................................................................................................#..............#.................#............#.....
.........#.....................#.....................#................................|.................................|....................|.........................................................................................................................................................................................#..............#.................#............#.....
.........#....#................#.....................#........................|||||||||||||||||||||||||||||||||||||||||||||||||#.............|........................................................................................................#.........#......................................................................#..............#.................#............#.....
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|........................................................................................................#.........#......................................................................#..............#.................#............#.....
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|........................................................................................................#.........#......................................................................#..............#.................##############.....
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|........................................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|........................................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|.....................#..................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|.....#...............#..................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|.....#...............#..................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|.....#...............#..................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|.....#...............#..................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|.....#...............#..................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............|.....#################..................................................................................#.........#......................................................................#..............#....................................
.........#....#................#.....................#........................|#################################################.............|........................................................................................................#.........#......................................................................#..............#....................................
.........#....#................#######################........................|..............................................................|........................................................................................................#.........#......................................................................################....................................
.........#....#...............................................................|..............................................................|........................................................................................................#.........#....................................#.....................................................................................
.........######...............................................................|..............................................................|..........................................................#.............................................#.........#....................................#....#................................................................................
..............................................................................|..............................................................|................................#.........................#.............................................#.........#....................................######................................................................................
..............................................................................|..............................................................|................................#.........................#.............................................#.........#..........................................................................................................................
..............................................................................|..............................................................|................................#.........................#.............................................###########..........................................................................................................................
..............................................................................|..............................................................|................................#.........................#..................................................................................................................................................................................
..............................................................................|..............................................................|................................#.........................#..................................................................................................................................................................................
..............................................................................|..............................................................|................................#.........................#..................................................................................................................................................................................
.................................................................||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||#........................#.........................#..................................................................................................................................................................................
.................................................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|####################################################################################........................#.........................#..................................................................................................................................................................................
.......................................#.......#.................|............................................................................................................#.........................#......................................................................................................................................#...........................................
.......................................#.......#.................|............................................................................................................###########################......................................................................................................................................#..#........................................
..........................#............#.......#.................|.............................................................................................................................................................................................................................................................................#..#........................................
..........#...............#............#.......#.................|.............................................................................................................................................................................................................................................................................#..#........................................
..........#...............#............#########.................|.............................................................................................................................................................................................#...............................................................................#..#..........#.............................
..........#...............#......................................|.............................................................................................................................................................................................#...........................#...................................................#..#..........#..............#..............
..........#...............#......................................|...............................................................................................................................#....#........................................................#...........................#...................................................#..#..........################..............
..........#...............#............................#...#.....|...............................................................................................................................#....#........................................................#...........................#...................................................#..#........................................
..........#...............#............................#...#.....|.........................#.....................................................................................................#....#........................................................#...........................#...................................................#..#........................................
..........#...............#.....................#......#...#||||||||.......................#......................#..............................................................................#....#........................................................#...........................#...................................................#..#........................................
..........#...............#.....................#......#...#~~~~~~#|.......................#......................#..............................................................................#....#........................................................#.............#########.....#...................................................####........................................
..........#...............#.....................#......#...#~~~~~~#|.......................#......................#..............................................................................#....#........................................................#.............#.......#.....#...............................................................................................
..........#...............#.....................#......#...#~~~~~~#|.......................#......................#..............................................................................#....#........................................................#.............#.......#.....#...............................................................................................
..........#...............#.....................#......#...#~~~~~~#|.......................#......................#..............................................................................#....#........................................................#.............#.......#.....#...............................................................................................
..........#...............#.....................#......#...#~~~~~~#|.......................#......................#..............................................................................#....#........................................................#.............#########.....#...............................................................................................
..........#...............#.....................#......#####~~~~~~#|.......................#......................#..............................................................................#....#........................................................#...........................#...............................................................................................
..........#...............#.............#.......#~~~~~~~~~~~~~~~~~#|.......................#......................#..............................................................................#....#........................................................#...........................#...............................................................................................
..........#...............#..........#..#.......#~~~~~~~~~~~~~~~~~#|.......................########################..............................................................................#....#........................................................#############################...............................................................................................
..........#...............#..........#..#.......#~~~~~~~~~~~~~~~~~#|.............................................................................................................................#....#....................................................................................................................................................................................
..........#...............#..........#..#.......###################|.............................................................................................................................#....#....................................................................................................................................................................................
..........#...............#..........#..#..........................|..............................................................................#..............................................#....#....................................................................................................................................................................................
..........#...............#..........#..#..........................|..............................................................................#......................#.......................#....#....................................................................................................................................................................................
..........#...............#..........#..#..........................|..............................................................................#......................#.......................#....#.............#......................................................................................................................................................................
..........#...............#..........#..#..........................|..............................................................................#......................#.......................#....#.............#..#...................................................................................................................................................................
..........#...............#..........#..#..........................|..............................................................................#......................#.......................#....#.............#..#..................................................................................................................................................#................
..........#...............#..........#..#..........................|..............................................................................#......................#.......................#....#.............#..#..................................................................................................................................................#...........#....
..........#...............#..........#..#..........................|.....................#........................................................#......................#.......................#....#.............#..#..................................................................................................................................................#...........#....
..........#...............#..........####..............#.....#.....|.....................#...................#....................................#......................#.......................#....#.............#..#..................................................................................................................................................#...........#....
..........#...............#............................#.....#||||||||...................#...................#....................................########################.......................#....#.............#..#..................................................................................................................................................#...........#....
..........#...............#............................#.....#~~~~~~#|...................#...................#...................................................................................#....#.............#..#..................................................................................................................................................#...........#....
..........#################.....................#......#.....#~~~~~~#|...................#...................#...................................................................................#....#.............#..#..................................................................................................................................................#...........#....
................................................#......#.....#~~~~~~#|...................#...................#......#............................................................................#....#.............#..#..................................................................................................................................................#############....
................................................#......#.....#~~~~~~#|...................#...................#......#..........#.................................................................#....#.............#..#...................................................................................................................................................................
................................................#......#.....#~~~~~~#|...................#...................#......#..........#.................................................................#....#.............#..#...................................................................................................................................................................
................................................#......#.....#~~~~~~#|...................#...................#......#..........#.................................................................######.............#..#...................................................................................................................................................................
................................................#......#.....#~~~~~~#|...................#...................#......#..........#....................................................................................#..#...................................................................................................................................................................
................................................#......#.....#~~~~~~#|...................#...................#......#..........#....................................................................................#..#...............................................#...................................................................................................................
................................................#......#######~~~~~~#|...................#...................#......#..........#.................................#..#...............................................#..#...............................................#......#............................................................................................................
................................................#~~~~~~~~~~~~~~~~~~~#|...................#...................#......#..........#.................................#..#...............................................####...............................................#......#............................................................................................................
................................................#~~~~~~~~~~~~~~~~~~~#|...................#...................#......#..........#.................................#..#..................................................................................................#......#.........................................................#..................................................
................................................#####################|...................#...................#......#..........#.................................#..#..................................................................................................#......#.........................................................#.................#................................
...........................#.........................................|...................#...................#......#..........#.................................#..#..................................................................................................#......#.........................................................#.................#................................
...........................#.......#.................................|...................#...................#......#..........#.................................#..#..................................................................................................#......#.........................................................#.................#................................
...........................#.......#.................................|...................#...................#......############.................................#..#..................................................................................................#......#.........................................................#.................#................................
...........................#.......#.................................|...................#...................#...................................................#..#..................................................................................................#......#....................#..........................#.........#.................#................................
...........................#.......#.................................|...................#...................#...................................................#..#..................................................................................................########....................#..........................#.........#.................#................................
...........................#.......#.................................|...................#...................#...................................................#..#..............................................................................................................................#..........................#.........#.................#................................
...........................#.......#.................................|...................#...................#...................................................#..#.........#....................................................................................................................#..........................#.........#........###......#................................
...........................#.......#.................................|...................#...................#...................................................#..#.........#......#.............................................................................................................#..........................#.........#........#.#......#................................
...........................#.......#.......................|||||||||||||||||||#..........#...................#...................................................#..#.........#......#.............................................................................................................#..........................#.........#........#.#......#................................
...........................#########.......................|#~~~~~~~~~~~~~~~~~#..........#...................#...................................................#..#.........#......#.............................................................................................................############################.........#........#.#......#................................
...........................................................|#~~~~~~~~~~~~~~~~~#..........#####################...................................................####.........#......#..................................................................................................................................................#........#.#......#................................
...........................................................|#~~~~~~~~~~~~~~~~~#...............................................................................................#......#..................................................................................................................................................#........#.#......#................................
...........................................................|#~~~~~~~~~~~~~~~~~#...............................................................................................#......#................................................................................................................................#.................#........#.#......#................................
...........................................................|#~~~~~~~~~~~~~~~~~#...............................................................................................#......#.............................................................................................................#..................#.................#........#.#......#................................
...........................................................|#~~~~~~~~~~~~~~~~~#...............................................................................................########.............................................................................................................#..................#.................#........###......#................................
...........................................................|#~~~~~~~~~~~~~~~~~#..................................................................................................................#.................................................................................................#..................#.................#.................#................................
...........................................................|#~~~~~~~~~~~~~~~~~#..................................................................................................................#....#............................................................................................#..................#.................#.................#................................
...........................................................|#~~~~~~~~~~~~~~~~~#..................................................................................................................#....#...............................................................................#............#..................#.................###################................................
...........................................................|###################..................................................................................................................#....#...............................................................................#......#.....#..................#....................................................................
...........................................................|............................................................#........................................................................#....#...............................................................................#......#.....#..................#....................................................................
...........................................................|............................................................#.................#......................................................#....#...............................................................................#......#.....#..................#....................................................................
...............#.....#.....................................|............................................................#.................#......................................................######...............................................................................#......#.....#..................#....................................................................
...............#.....#.....................................|............................................................#.................#...........................................................................................................................................#......#.....#..........###.....#....................................................................
...............#.....#.....................................|............................................................#....########.....#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
...............#.....#.....................................|............................................................#....#......#.....#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
...............#.....#.....................................|............................................................#....#......#.....#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
...............#.....#.....................................|.............................................#..............#....#......#.....#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
...............#######............................|||||||||||||||||||#...................................#........#.....#....#......#.....#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
..................................................|#~~~~~~~~~~~~~~~~~#...................................#........#.....#....########.....#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
..................................................|#~~~~~~~~~~~~~~~~~#...................................#........#.....#.................#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
..................................................|#~~~~~~~#####~~~~~#...................................#........#.....#.................#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
..................................................|#~~~~~~~#...#~~~~~#...................................#........#.....#.................#...........................................................................................................................................#......#.....#..........#.#.....#....................................................................
..................................................|#~~~~~~~#####~~~~~#...................................#........#.....#.................#...........................................................................................................................................#......#.....#..........###.....#....................................................................
..................................................|#~~~~~~~~~~~~~~~~~#...................................#........#.....###################...........................................................................................................................................########.....#..................#....................................................................
..................................................|#~~~~~~~~~~~~~~~~~#...................................#........#................................................................................................................................................................................#..................#....................................................................
..................................................|#~~~~~~~~~~~~~~~~~#...................................#........#..................................#............#................................................................................................................................#..................#....................................................................
..................................................|#~~~~~~~~~~~~~~~~~#...................................#........#..................................#............#................................................................................................................................#..................#....................................................................
..................................................|###################...................................#........#..................................#............#................................................................................................................................#..................#....................................................................
..................................................|......................................................#........#..................................#............#................................................................................................................................#..................#....................................................................
..................................................|......................................................#........#..................................#............#................................................................................................................................####################....................................................................
..................................................|......................................................#........#..................................#............#........................................................................................................................................................................................................................
..................................................|......................................................#........#..................................#............#........................................................................................................................................................................................................................
..................................................|......................................................#........#..................................#............#....................................................................................................................................................................#.......#...........................................
..................................................|......................................................#........#..................................#............#....................................................................................................................................................................#.......#...........................................
..................................................|......................................................##########..................................##############....................................................................................................................................................................#.......#...........................................
..................................................|.................................................................................................................................................................................................#...............#..................................................................#.......#...........................................
....................................|||||||||||||||||||||||.........................................................................................................................................................................................#...............#..................................................................#.......#...........................................
....................................|#~~~~~~~~~~~~~~~~~~~#|....................................#..................#.................................................................................................................................#################..................................................................#.......#...........................................
....................................|#~~~~~~~~~~~~~~~~~~~#|....................................#..................#............................................................................................................#.......................................................................................................#.......#...........................................
....................................|#~~~~~~~~~~~~~~~~~~~#|.............#......................#..................#.....................................................................................#......................#.......................................................................................................#.......#..................................#........
....................................|#~~~~~~~~~~~~~~~~~~~#|........#....#......................#..................#.....................................................................................#......................#.......................................................................................................#.......#..........#.......................#........
....................................|#~~~~~~~~~~~~~~~~~~~#|........#....#......................#..................#.....................................................................................#......................#.......................................................................................................#.......#..........#.......................#........
....................................|#~~~~~~########~~~~~#|........#....#......................#..................#....................................................................#................#......................#.......................................................................................................#.......#..........#.......................#........
....................................|#~~~~~~#......#~~~~~#|........#....#......................#..................#....................................................................#.............#..#......................#...........................................................................#...........................#.......#..........#.......................#........
....................................|#~~~~~~#......#~~~~~#|........#....#......................#..................#....................................................................#.............#..#......................#...............................................#...........................#........................#..#.......#..........#.......................#........
....................................|#~~~~~~########~~~~~#|........#....#......................#..................#....................................................................#.............#..#......................#...............................................#................#..........#........................#..#.......#..........#.......................#........
....................................|#~~~~~~~~~~~~~~~~~~~#|........#....#......................#..................#....................................................................#.............#..#......................#...............................................#................#..........#........................#..#.......#..........#.......................#........
....................................|#~~~~~~~~~~~~~~~~~~~#|........#....#......................#..................#....................................................................#.............#..#......................#...............................................#................#..........#........................#..#.......#..........#.......................#........
....................................|#####################|........#....#......................#..................#....................................................................#.............#..#......................#...............................................#................#..........#........................#..#########..........#.......................#........
....................................|.....................|........#....#......................#..................#....................................................................#.............#..#......................#...............................................#................#..........#........................#.....................#.......................#........
....................................|.....................|........#....#......................#..................#............................................#.......................#.............#..#......................#...............................................#................#..........#............#####.......#.....................#.......................#........
....................................|.....................|........#....#......................#..................#.........................................#..#.......................#.............#..#......................#...............................................#................#..........#............#...#.......#.....................#.......................#........
....................................|.....................|........#....#......................####################.........................................#..#.......................#.............#..#......................#...............................................##################..........#............#####.......#.....................#.......................#........
....................................|.....................|........#....#...................................................................................#..#.......................#.............#..#......................#...........................................................................#........................#.....................#.......................#........
....................................|.....................|........#....#...................................................................................#..#.......................#.............#..#......................#...........................................................................#........................#.....................#.......................#........
....................................|.....................|........#....#...................................................................................#..#.......................#.............#..#......................#...........................................................................#........................#.....................#.......................#........
....................................|.....................|........#....#...................................................................................#..#.......................#.............#..#......................#.............................................................#.............#........................#.....................#.......................#........
...........................#..#.....|.....................|........#....#...................................................................................#..#.......................#.............#..########################..........................................................#..#.............#........................#.....................#.......................#........
...........................#..#.....|.....................|........#....#...................................................................................#..#.......................#.............#....................................................................................#..#.............#........................#.....................#.......................#........
....................#......#..#||||||||...................|........#....#...................................................................................#..#.......................###############....................................................................................#..#.............##########################.....................#.......................#........
....................#......#..#~~~~~~#|...................|........#....#...................................................................................#..#..........................................................................................................................#..#............................................................#.......................#........
....................#......#..#~~~~~~#|...................|........#....#...................................................................................#..#..........................................................................................................................#..#............................................................#.......................#........
....................#......#..#~~~~~~#|...................|........######...................................................................................#..#..........................................................................................................................#..#............................................................#.......................#........
....................#......#..#~~~~~~#|...................|.................................................................................................#..#..........................................................................................................................#..#............................................................#.......................#........
....................#......#..#~~~~~~#|...................|.................................................................................................#..#..........................................................................................................................#..#............................................................#.......................#........
....................#......#..#~~~~~~#|...................|.................................................................................................#..#..........................................................................................................................#..#............................................................#########################........
....................#......#..#~~~~~~#|...................|.................................................................................................####..........................................................................................................................#..#.............................................................................................
....................#......#..#~~~~~~#|...................|............................................................................................................................................#...........#......................................................................#..#.............................................................................................
....................#......####~~~~~~#|...................|............................................................................................................................................#...........#......................................................................#..#.............................................................................................
....................#~~~~~~~~~~~~~~~~#|...................|............................................................................................................................................#...........#......................................................................####.............................................................................................
....................#~~~~~~~~~~~~~~~~#|...................|............................................................................................................................................#...........#.......................................................................................................................................................................
....................#~~~~~~~~~~~~~~~~#|...................|............................................................................................................................................#...........#.......................................................................................................................................................................
....................#~~~~~~~~~~~~~~~~#|...................|.............................................................................................................#..............................#...........#.......................................................................................................................................................................
....................##################|...................|..........................................................................................................#..#..............................#...........#.......................................................................................................................................................................
......................................|...................|..........................................................................................................#..#..............................#...........#.......................................................................................................................................................................
......................................|...................|..........................................................................................................####..............................#...........#.......................................................................................................................................................................
......................................|...................|............................................................................................................................................#...........#...............................................................................................#.......................................................................
......................................|...................|............................................................................................................................................#...........#..................................................................................#............#.......................................................................
......................................|...................|............................................................................................................................................#...........#..................................................................................#............#.......................................................................
......................................|...................|............................................................................................................................................#...........#..................................................................................#............#.......................................................................
......................................|...................|.............#........................................#.........................#...........................................................#...........#..................................................................................#............#.......................................................................
...........................#||||||||||||||||||||..........|.............#........................#...............#.........................#...........................................................#...........#..................................................................................#............#.......................................................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#...............###########################...........................................................#...........#..................................................................................#............#.......................................................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#.....................................................................................................#############..................................................................................##############.......................................................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#.........................................................................................................................................................................................................................................................................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#.........................................................................................................................................................................................................................................................................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#.........................................................................................................................................................................................................................................................................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#.........................................................................................................................................................................................................................................................................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#.................................................................................................................................................................................................................................#...................#...................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#.................................................................................................................................................................................................................................#...................#...................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#................................................................................#...........................#....................................................................................................................#...................#...................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#................................................................................#...........................#....................#...............................................................................................#...................#...................................
...........................#~~~~~~~~~~~~~~~~~~#|..........|.............#........................#................................................................................#...........................#....................#..........#....................................................................................#...................#...................................
...........................####################|..........|.............#........................#................................................................................#...........................#....................#..........#....................................................................................#...................#...................................
...............................................|..........|.............#........................#................................................................................#...........................#....................#..........#....................................................................................#...................#...................................
...............................................|..........|.............#........................#................................................................................#...........................#....................#..........#....................................................................................#####################...................................
...............................................|..........|.............#........................#................................................................................#...........................#....................#..........#............................................................................................................................................
...............................................|..........|.............##########################................................................................................#...........................#....................#..........#............................................................................................................................................
...............................................|..........|.....................................................................................#.................................#...............######......#....................#..........#............................................................................................................................................
...............................................|..........|.................................................................................#...#.................................#...............#....#......#....................#..........#............................................................................................................................................
...............................................|..........|.................................................................................#...#.................................#...............#....#......#....................#..........#............................................................................................................................................
...............................................|..........|.................................................................................#...#.................................#...............#....#......#....................#..........#............................................................................................................................................
...................................||||||||||||||||||||||||||||||#..........................................................................#...#.................................#...............#....#......#....................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........................................................................#...#.................................#...............#....#......#....................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........................................................................#...#.................................#...............#....#......#....................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........................................................................#...#.................................#...............#....#......#....................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........................................................................#...#.................................#...............######......#....................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........................................................................#...#.................................#...........................#....................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#..........................................................................#...#.................................#...........................#....................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#.............................................#............................#...#.................................#############################....................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........................................#....#............................#...#..................................................................................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........#...............................#....#............................#...#..................................................................................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........#...#...........................#....#............................#...#..................................................................................#..........#............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........#...#...........................#....#............................#...#..................................................................................############............................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........#...#...........................#....#............................#...#..........................................................................................................................................................................................................................................
...................................|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~#........#####...........................######............................#...#..........................................................................................................................................................................................................................................
...................................|##############################..........................................................................#...#..........................................................................................................................................................................................................................................
...................................|........................................................................................................#...#..........................................................................................................................................................................................................................................
...................................|........................................................................................................#...#..........................................................................................................................................................................................................................................
...................................|........................................................................................................#...#..........................................................................................................................................................................................................................................
...................................|........................................................................................................#...#..........................................................................................................................................................................................................................................
...................................|........................................................................................................#...#..........................................................................................................................................................................................................................................
...................................|........................................................................................................#####..........................................................................................................................................................................................................................................
........................#...#......|.......................................................................................................................................................................................................................................................................................................................................................
........................#...#......|............................................................................................................................................................................................................#..........................................................................................................................................
................#.......#...#|||||||||.......#..................................................................................................................................................................................................#.....................#......................................................................................#.......#.....................
................#.......#...#~~~~~~~#|.......#........................#.........................................................................................................................................................................#.....................#......................................................................................#.......#.....................
................#.......#...#~~~~~~~#|.......#........................#.........................................................................................................................................................................#.....................#......................................................................................#.......#.....................
................#.......#...#~~~~~~~#|.......#........................#.........................................................................................................................................................................#.....................#......................................................................................#.......#.....................
................#.......#...#~~~~~~~#|.......#........................#.........................................................................................................................................................................#.....................#......................................................................................#.......#.....................
................#.......#...#~~~~~~~#|.......#........................#................................#........................................................................................................................................#.....................#......................................................................................#.......#.....................
................#.......#...#~~~~~~~#|.......#........................#........................#.......#........................................................................................................................................#.....................#......................................................................................#.......#.....................
................#.......#...#~~~~~~~#|.......#........................#........................#.......#........................................................................................................................................#.....................#......................................................................................#.......#.....................
................#.......#####~~~~~~~#|.......#........................#........................#.......#........................................................................................................................................#.....................#......................................................................................#.......#.....................
................#~~~~~~~~~~~~~~~~~~~#|.......##########################........................#.......#........................................................................................................................................#.....................#......................................................................................#.......#.....................
................#~~~~~~~~~~~~~~~~~~~#|.........................................................#.......#........................................................................................................................................#.....#........#......#......................................................................................#.......#.....................
................#####################|.........................................................#.......#........................................................................................................................................#.....#........#......#......................................................................................#.......#.....................
.....................................|.........................................................#########.............................................................................#....................#.....................................#.....#........#......#......................................................................................#.......#.....................
.....................................|.........................................................................................................#..............#......................#....................#.....................................#.....#........#......#......................................................................................#.......#.....................
.....................................|.........................................................................................................#..............#......................######################.....................................#.....#........#......#...................#......................#...........................................#.......#.....................
.....................................|.........................................................................................................#..............#.................................................................................#.....#........#......#...................#......................#...........................................#.......#.....................
.....................................|.........................................................................................................#..............#..................#..............................................................#.....#........#......#...................#......................#...........................................#.......#.....................
.....................................|.........................................................................................................#..............#...#..............#..............................................................#.....#........#......#...................#......................#...........................................#.......#.....................
.....................................|.........................................................................................................#..............#...#..............#.............................................#.......#........#.....#........#......#...................#......................#...........................................#.......#.....................
.....................................|.............................................................#...........................................#..............#...#..............#.............................................#.......#........#.....#........#......#...................#......................#...........................................#.......#.....................
..........................||||||||||||||||||||||||#..........................#.....................#...........................................#..............#...#..............#.............................................#########........#.....#........#......#...................########################...........................................#.......#.....................
..........................|#~~~~~~~~~~~~~~~~~~~~~~#..........................#.....................#...........................................#..............#...#..............#..............................................................#.....#........#......#......................................................................................#.......#.....................
..........................|#~~~~~~~~~~~~~~~~~~~~~~#..........................#.....................#...........................................#..............#...#..............#..............................................................#.....#........#......#......................................................................................#.......#.....................
..........................|#~~~~~~~~~~~~~~~~~~~~~~#..........................#.....................#...........................................#..............#...#..............#..............................................................#.....#........#......#......................................................................................#########.....................
..........................|#~~~~~~~~~####~~~~~~~~~#..........................#.....................#...........................................#..............#...#..............#..............................................................#.....##########......#....................................................................................................................
..........................|#~~~~~~~~~#..#~~~~~~~~~#..........................#.....................#...........................................#..............#...#..............#..............................................................#.....................#....................................................................................................................
..........................|#~~~~~~~~~#..#~~~~~~~~~#..............#...........#.....................#...........................................#....#..#......#...#..............#..............................................................#.....................#....................................................................................................................
..........................|#~~~~~~~~~####~~~~~~~~~#..............#........#..#.....................#...........................................#....#..#......#...#....#.#.......#....................................#.........................#######################....................................................................................................................
..........................|#~~~~~~~~~~~~~~~~~~~~~~#..............#........#..#.....................#...........................................#....####......#...#....#.#.......#....................................#.....................#..............................................................................................................................................
..........................|#~~~~~~~~~~~~~~~~~~~~~~#..............#........#..#.....................#...........................................#..............#...#....#.#.......#....................................#.....................#..............................................................................................................................................
..........................|#~~~~~~~~~~~~~~~~~~~~~~#..............#........#..#.....................#...........................................#..............#...#....#.#.......#....................................#.....................#..............................................................................................................................................
..........................|#~~~~~~~~~~~~~~~~~~~~~~#..............#........#..#.....................#...........................................#..............#...#....#.#.......#....................................#.....................#....................................................................................................................................#.........
..........................|########################..............#........#..#.....................#...........................................################...#....#.#.......#....................................#.....................#.................................................................................................................................#..#.........
..........................|...............................#......#........#..#.....................#..............................................................#....#.#.......#....................................#######################.................................................................................................................................#..#.........
..........................|...............................#...#..#........#..#.....................#..............................................................#....#.#.......#............................................................................................................................................................................................#..#.........
..........................|...............................#...#..#........#..#.....................#..............................................................#....#.#.......#.........#................#.................................................................................................................................................................#..#.........
..........................|...............................#...#..##########..#######################..............................................................#....#.#.......#.........#................#.................................................................................................................................................................#..#.........
..........................|...............................#...#...................................................................................................#....###.......#.........#................#.................................................................................................................................................................#..#.........
..........................|...............................#...#...................................................................................................#..............#.........#................#.................................................................................................................................................................#..#.........
..........................|...............................#...#...................................................................................................#..............#.........#................#.................................................................................................................................................................#..#.........
..........................|...............................#...#...................................................................................................#..............#.........#................#....................................................................................................................................................#.#..........#..#.........
................||||||||||||||||||||||||#.................#...#...................................................................................................################.........#................#....................................................................................................................................................#.#..........#..#.........
................|#~~~~~~~~~~~~~~~~~~~~~~#.................#...#............................................................................................................................#................#....................................................................................................................................................#.#..........#..#.........
................|#~~~~~~~~~~~~~~~~~~~~~~#.................#####............................................................................................................................#................#....................................................................................................................................................#.#..........#..#.........
................|#~~~~~~~~~~~~~~~~~~~~~~#..................................................................................................................................................#................#....................................................................................................................................................#.#..........#..#.........
................|#~~~~~~~~~~~~~~~~~~~~~~#..................................................................................................................................................#................#....................................................................................................................................................#.#..........#..#.........
................|#~~~~~~~~~~~~~~~~~~~~~~#........................................................................................................#.........................................#................#....................................................................................................................................................#.#..........#..#.........
................|#~~~~~~~~~~~~~~~~~~~~~~#..........#........#....................................................................................#.....#...................................#....####........#....................................................................................................................................................#.#..........#..#.........
................|#~~~~~~~~~~~~~~~~~~~~~~#..........#........#....................................................................................#.....#...................................#....#..#........#....................................................................................................................................................#.#..........####.........
................|#~~~~~~~~~~~~~~~~~~~~~~#..........##########....................................................................................#.....#...................................#....#..#........#....................................................................................................................................................#.#.......................
................|#~~~~~~~~~~~~~~~~~~~~~~#........................................................................................................#.....#...................................#....#..#........#.....................................................#.#............................................................................................#.#.......................
................|#~~~~~~~~~~~~~~~~~~~~~~#........................................................................................................#.....#...................................#....#..#........#.....................................................#.#............................................................................................#.#.......................
................|#~~~~~~~~~~~~~~~~~~~~~~#........................................................................................................#.....#...................................#....#..#........#.....................................................#.#............................................................................................#.#.......................
................|########################........................................................................................................#.....#...................................#....#..#........#.....................................................#.#............................................................................................#.#.......................
................|................................................................................................................................#.....#...................................#....####........#.....................................................#.#............................................................................................#.#.......................
................|................................................................................................................................#.....#...................................#................#.....................................................#.#............................................................................................#.#.......................
................|................................................................................................................................#.....#...................................#................#.....................................................#.#............................................................................................#.#.......................
................|................................................................................................................................#######...................................#................#.....................................................#.#.................................................#............#.............................#.#.......................
................|..........................................................................................................................................................................#................#.....................................................#.#.................................................#............#.............................#.#.......................
................|..........................................................................................................................................................................#................#.....................................................#.#.................................................#............#.............................#.#.......................
................|...........................................................................................#....................#.........................#...............................#................#.....................................................#.#.................................................#............#.............................#.#.......................
.||||||||||||||||||||||||||||#...........................................................#..................#....................#.........................#...............................##################.....................................................#.#.................................................#............#.............................#.#.......................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#..................#....................###########################......................................................................................................#.#.................................................#............#..........#...#..............#.#.......................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#..................#.....................................................................................................................................................#.#.................................................#............#..........#...#..............#.#.......................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#........###.......#.....................................................................................................................................................#.#.................................................#............#..........#...#..............#.#.......................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#........#.#.......#.....................................................................................................................................................###.................................................#............#..........#...#..............#.#.......................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#........#.#.......#.........................................................................................................................................................................................................#............#..........#...#..............#.#.......................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#........#.#.......#.........................................................................................................................................................................................................#............#..........#####..............###.......................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#........###.......#.........................................................................................................................................................................................................#............#.......................................................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#..................#.........................................................................................................................................................................................................#............#.......................................................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................#..................#.........................................................................................................................................................................................................#............#.......................................................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#...........................................................####################.........................................................................................................................................................................................................#............#.......................................................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#........................................................................................................................................................................................................................................................................................#............#.......................................................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#........................................................................................................................................................................................................................................................................................##############.......................................................
.|#~~~~~~~~~~~~~~~~~~~~~~~~~~#.............................................................................................................................................................................................................................................................................................................................................................
.|############################.............................................................................................................................................................................................................................................................................................................................................................
...........................................................................................................................................................................................................................................................................................................................................................................................
"Elapsed time: 1809.140539 msecs"
Water at rest 27068
Flowing water 5984
Total tiles 33052
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment