-----+OOO#OOO++--....--++++OOOO+++----...  ...---++++++++++++++----+++OOOOOOOO++++----...----------+++OOOOOO++--------++++++--....--+++++++----------------++OO###OOO+++++++++++--..   ..--++OO####OOO++++++++++++++++++++++++OOOOOOOO++--...---++++++++--
+++++OO####OO++--......----++++O+++++---....---+++++++---------------+++OOO+++-----------+++++--------++OOOOOO++++++++++++---.......-----------+++++-------++OOO#OOO+-----+++++++--.     .--++OOOOO+++------------------------++OOOOO++--... ...----++++++
OOOOO#######OO++--......----++++OOO++++------+++OOO++--.............---+++++--.......--++OOOOO++---..--++OOOOOOO++++-----...        .....----++++++++-------+++OO+++-------++++++-..    ..--+++++++--..........-----.........--++OOOO+++-...  ......-----+
#######@@@###OO+++---------++++++++++++++++++++OOOO++-..          ...--+++++--..    ..-++OO#OOO+---..--+OO####OO+++--.....              ...---+++++++---------------...---++++++--..   ..--+++++++-..        ...-----....   ..-++OOOOO++--..............--
############OOOO++++---++++++++++++++++++++++++OOOO++-..   ...    ...--++++++-...    ..-+OOOOOO++-----++O#####O+++--....         ....   ...---+++-------------........--+++++++--.......--++++++++-..        ..-------.......--+OOOOOO+++--------....  ...
OOOOOOOOOOOOOOO++++++++++++++-------+++++++---+++O+++--....--.......--+OOOOOO+--..    ..-++OOO++------+OO####OO++--...........-------.....----+-------+++++--..    ..--++OOOOO++--.....---+++++++++--.....  ...--++++---....--+OO###OO++------++---..    .
+++++--------++++--------++----..---++++++-----++++++++---+++--------+OO####OO++-..    ..-+++++------++O#####OO+--.....-----++++++++++-----+++++-----++++++--.     ..-++OO###OO++---....---+++++++++++----.....--+++++------++OO####OO+-----++++++--..  ..
---........------.........-......---++++++------++++++++++OO+++------++O####OO++-..     ..------------+OO####O++-------++OOOOOOOOOOOOO+++++OOOOO++++++++++++-..    ..--+OO####OOO++---...-----++++++++++--.......-----------++OO##OO++--..---+++++--.....-
... .......--.....        .....-----+++++-------+++++OOOO###OO++---.--++OOOOO++--.       ..-----....--++OOOOO++------++OO#############OOO#######OOOOOOOOO++--..   ...---+OO#####OO++----------++++++++++--..     .........---++OOO++--.....---+++--......-
     ..--------..         ...---------------------+++OOO####OO++--...--+++OO+++--.       ...--.......--++++++-------++OO#########################OOOOOOO+++--.......-----++OO###OO+++------++++++++++----...           ....---++++--... ...--++++--.....--
.....--+++O+++--.       ...--++++++-------+++++-----+++OOOOOO++---...---++++++--..       ..-----....---+++++-------++OOOO##OOOOOOOOOOOO########OOOOOOOO++++---..----------++OOOOO+++------+++++++++------..................---+++---.....--++++++--....---
-----+OO###OO++-..     .--++OOOOOO++------+++++--------++++++----------++++++++--..    ..--+++--------++++++-----++++OO+++++++++++++++++OOOOOOO++++++++++++-------++++-----+++++++--...---+++++++++------------------.....---++++++------++OOOO+++--------
---++OO####OO++-..    .--++OO####OO++----++++++--......------------++++OOOOOOO+++--.....--++++++-----+++OO+++++++++++++++---------------+++++++------+++++++----++++++-------+++---.......-----++++++++++++++++++++++------++++OOO+++++++OOO#OOO+++----+++
+---++OO##OOO++---....---+++OOOOOO++------++++--...          ...--+++OOO#######OO++-------+++++++++++OOOOOOOO+++++++++----..------------------.....--++OOOOO++++++++++----.------...     ...-----+++++++++OOOOOOOOOOO+++++++++OOOOOOOOOO######OOO+++++++++
+----+++OOOOO+++++---------+++++++--------+++---..             ..--++OOO##@@@####OO+++-------++++++OOO####OOOO++++----.....----------------....   .--+OOOOOOOO+++++++---............     ....----++++++++OOO#######OOOO+++++++++OOO########OOOOO++++++++++
-------++++++++++OO+++++-----------------++++---..              ..--++OO#########OOOO++++-------+++OOOO###OOO+++---.......---+++++++++++--....  ...-++OOOOOOOO++++++---..      ............----+++-----++OOO#####OOOOO+++++++-++++OOO###OOO+++++++++OOO+++
------------++++OOOOOO++----.....-------++++++--.... ..............--++OOOOOOOOOOOOOO++++---------++++OOOOOOO+++--..    .--++OOOOOOO++++--......---++OOOOOO+++++++++---..     ..------------++++++------++OO##OOO+++++++++++------+++OOO++--...--+++OOOO++
+++++++--------++OOOOOOO++---------+++++OOOOO++---...----++---....---++OOOOO+++--++++++++++---..------++++OOO+++--..    .--++OOOOOO++----....---+++OOOOOO++-----++++++--... ...--+++++------++++++++--+++OOOOOO++-----++++++----------+--...  ..--++OOOOOO
OOOOOOO++--...--++OO###OOO+++++++++++++OOOOO+++-------++OOOO+++----+++OOOOOO++------+++++++---..........--+++++++-..   ..--+++OO+++--......---+++OOOOOOO++-----+++OOOO+++------+++O++++------++++++++++OOO#OOO++-....---+++++------------.......--+++OOOOO
######O++--....--+OO######OOO++++++++++++++++--------+OO####OOO+++++OOO###OO++---------+++---...        ..----++---......--++++++--.....---+++OOOOOOOOO++++--+++OOO###OO+++++++OOOOO+++-----------+++OOO###OO+--.    ...--++++++++++++-----...-----+++++++
######O++-.....--+O########OO+++------++++------.----+OO#####OO+++++OO#####OO++--------------....         ...-------....---+++++---....--++OOOOOOOOO++++++++++OOO#####OOOO++OOOOOOOO++++------....--++OOO##OO+-..      ..---+++++++++++++------+----------
##OOOO+--.....--+OO#####OOO+++-----------------------+++OOOOOO+++++++OO#####OO++---......------...............-------------+++++---..--++OO###OO++++---+++++++OOOO#OOOO+++++OOOOO++++++++++--...  ..-++OOOOOO++-...     ..---++OOOOOO+++++++++++++---.....
O++++--......--++OOO#OOO+++------------++----------------+++++------++OO####OO++--......-----++++--------.....---+++-------+++++------+OO#####O++---...---+++++OOOOO+++---++++++++---+++++++-..    ..-++OOOOOO++---........-++OOOOOOO+++++++OOO+++--......
+-----......--++OOOOOO++----..----+++OOOOOO++++++++------------------++OOOOOO+---......--+++++++++++++++-------++++++------++++++----++O#####OO+--........-----++++++-------++++-------+++++-..     ..-++OOOOOOO+++---...---++OOOOO+++----++++O+++---..---
-----......--++OOO##OO++--....--++OO#########OOOOO+++---------------+++OOO++--..    ..--++++++++++++++++++++++++++++++---+++++++++++++OO#####OO+--...    ........---------+++++++------------.       ..--+++OO++++++-----++++OOOOO+++-----++++++++++++++++
...----------++OO####OO+--....--+OO###@@@@@###OOOO++++--+++++++++++++++++++--..     ..--+++++++++++++++++++++++++++++++++++OOOO++++OOOO###@###O++--.....         ...----+++OOO+++----...---...        ...---+++++---++++++OOOOOO++++++--++++++++++++OOOOOO
..-----------++OO#####O++--...--++OO####@@@###OO++++++++++++++++++++++++++---... ...---+++--------------+++++++++------+++OOO++++++OOOO######OO++---........      ..---++OO##OOO++--............    ......----------+++OOOOO+++++---++++++++++++++OOOO###O
.---++++++----++O######O++--....--+++OOO####OO++-------+++++++++++++++++-------------+++++---....-------++++++++--------+++++++++++++++OOO###OO++-----------..     .--++O#####OO++--.....-------....---------------+++OOOOO++----.----++++++----+++OO####O
.---+++++------++O####OO+--.......---+++OOOOO++---....----------+++---------+++++++++OO++++-------+++++++OOOOO++---....----------------++OOOOO++-------+++++-..    ..-++OO###OO++--....---++++++++++++++++++++++++++OOOOOO++--.......-------------++OO###O
----+++++---..--++OOOO++--..     ...---++++++++---.............------------++OOOOOOOOOOO+++-----+++OOOOOOOOOO++---.................-----++++++--.....--++++++--......--+++OO+++--......--++++++++OOOOOOOOOOO++++OOOOOOOOO++--..      ...----....----++OOOO
+++++++++---....---++++--...    ......------++++----...      ...-----------++OO#####OOO+++-----+++OOO####OOO++---...       ......------+++++---..   ..--+++++++---------------..........--++++OOOOOOOOOOOOOOOOOOOOOOOOOO+++--.        ...-------------++++
OOO+++++++----...--------........-----.....---+++++---..     ..---+++-------++OO###OOO++--------+++OOO##OOO++---.....     ....----++++++++++--...    ...-++++OOOO+++---.................----++OOO###OOO+++++OOOOO++++++++++--.        ..--++++++----------
OOO+++++++++----..--------...----+++--... ...--+++O+++--.....--+++++++--....--++OOOOO++-----------+++OOOOO++--------.......--++++++++++++++++---....  ...--++OO##OOO+--...    ....-----------++OO##OOO+++-++++++++---+++++++--.      ..-++OOOOOO+----...--
OO+++++++++++++------++++-----++++++--..    ..-++OOOOOO++---+++++++++--..  ...--++++++++-------------+++++++-----++--------+++OOO+++++++++++++++---......--++O#####OO+--..   ..--+++++------++OO###OO++-----+++++------+++++--.     ..-++O#####O++---..---
+---..--+++OOO++++++++++++-----+++---..      .--++OOOOOOOO+++++++++---..     ..---++++++++++++----.---+++++++++++++++-----+++OOO+++------++++++++++--.....--+OO#####O++--.....--++++++++++++OO#####OO+------++++++-----++++++-..   ..--+OO####OO+--------+
...  ..--++OOOOOOOOO+++++----------...        .--+OO######OOO+++----.....     ....------+++++----..---++OOOOOOOOOO+++-----++OOOOO+++-------++++OOO++--....--++O######OO++-------++++++++OOOO######OO+------++++++-------++++++--....--++OO###OO+---------+
      ..-++OO###OOOOO+++----.........         ..-+OO#######O++---....---..............---------....---+OOO####OOOO+-------++OOOOOOO++---------+++O+++--....--+O#######OO+++----------++++OO#####OO++------+++++++--...---++OO+++-----++OOOOOO++--------+++
   ....--+++OOOOOOOOO++----.............     ..--+O######OO++-......---++++---..........------.....--++O######OO++-......--+OO####OO++---....--++++++---..---+OO####OOOO+++-------------++OOOOOOO++------++OOOO++--.....--+++++++----+++OOO+++------++++++
...-----+++++++++OOO++++-----.....------.....---+OO####OO++-..   ..--++OOOOO++----.....-------.....--++O#####OO++-..    .--++O####OO++--... ...--+++++------++OOOOOO+++++++----------------+++++++-----++OOO#OOO+--... ...-++++++------++++++------++OOOO+
.--+++++++------++++OOO+++++-------+++++-------++OO###OO+--..     .--++OO###OO+++-------+++++---...---+OO####O++--.     .--++OOOOOO++--..    ..--++++++----+++OOOO++---------++++++---....---+++++---+++OO####OO++-..    ..------------++++++----+++OOOOOO
---+++++---....--++OOO###OOOO++++++++++++------+++OOO++--...    ..--+++OOO##OOOOO++++++++++++---.....--++OOOOO++-..     ..--+++++++-...       ..--++++-----++++++--........--++++++--......---++++++OOOO#####OO++--..      .....------+++++++++---++OO####
---------......--+OO#######OOO+++--++++++++-----------....   ...---+++++++OOOOOOOOOOO++++++++-----.....--++++++--..     ...--------..         ...----------------..       ..--++++--...  ...--++OOOO######OOO++---...        ....---++++OOOO++++---+++OO##
+------.......--++O########OO++------++++++++----............---++++++------+++OOOOOO+++-----+++----...---+++++--.... ........----....        ....------------.....      ...-------..    ..--++OO#####OOOO+++-----....      ...---+++++OOOOOO+++-----+++OO
++----.......--++OO####OOO+++--...----+++O++++---...  ....--+++OOOO++--......--++OOO+++-----++++++++-------+++++--......--------------.........-----+++++----............----------..   ..--++OO####OOO+++---...-----.......----+++++++++OOOOO+++-------++
O+++---......--++OOOOOO++----....---+++OOOOOO++---.....---++OOO##OO++-..     .--+++O+++++++++OOOOOO++-----++++++--------+++-----++++++----------+++++OOO++++---------++++++++++++--...  ..--++OO##OO++----....---+++++------+++++++++---++++OOO+++--------
OO+++++--....---++OO+++--........--+++OOOOOOOO++---...---+++OOO#OOO++-..    ..--++OOOOOOOOOOO######OO++++++++++--------++++++++++++++++++-+++++OOOOO#####OOO++++++++OOOOOOOOOOOOOO+--......--++OOOO++----...--+++OOOOOOO++++OOOO+++---.---+++OOO+++--.....
OO++++++----------+++---..    ...--++++OOOOOO+++---...---++++OOOOOO+--.......--+++OOOO##############OO+++---------.----+++++++++++++++++++++OOO#####@@@@####OOOOOOOOO#############OO+-......--+++OO+++-------++OO#########OOOOOO+--.....--++++++++--...   
+++++++++++------------...    ..---++++++++++++---.....-----++OOOO+++--....--++++++OOO##############OO++--......---------++++++++++-----++++OOO####@@@@@######OOOOOOOO####@@@@#####O++-......--+++O++++------++OO###@@@@####OOO+--......--+++++++---.     
----+++OOOO++------------......-----------++++---......------+++OO+++-------+++++++++OOOOOOOOOOOOOOOO++-.......------------+++++++-------+++++OOOO######OOOOOOO++++++OOO#######OOOOO++--....---++OOOO+++------++OOO###@####OO++-......--++OOOO+++--..     
----++OO##OOO+-------++++--------+++-------++++---..--------++++OO+++------+++++----++++++++++++++++++-..   ...--++--------+++++++------+------+++++O+++++++++--------++OOOOO++++++++--------+++OOOO+++---....---++OOO##OOO++--.    ..-++OOOOOO++---..   .
--+++OO#####O++----++++++++--++++++++++++++++++++----+++++++++OOO+++-----------------------------+++---......--+++++++-----+++++++++++++++--------------------.......---+++++------------+++++OOOO+++--....  ...--+++OOOOO++--..    .--++O#####OO+++--....
-++OO###@###O++-----+++OOO++OOOOOOOO+++++OOOOOOOOO++++OOOO++++++++---.....-----........---........----.....--++OOOO+++------++++++++++++++---...........    .        ..-----...   ...--+++++OO++++--...      ..---+++OOOO+++--...  ..--+OO##@@@##OOO++----
-++OO##@@##OO+-------++OOOOOO#####OOO++++OOO###OOOOOOOOOOO+++-----.......-----...  .........     .....----+++OOOOO+++-------------------------.....                   .......      ..--+++O+++++--...        .---++++OOOOO+++---.....-++O##@@@@@##OOO++++-
--+OOO#####O++--.....--++OOO######OO++++++OOOOOOOOOOOOOOO++--..........--------.......----..       ..--++OOOOOOO+++-----------------------------...         ...      ...--....    ..-++++O+++----.....     ..--+++++OOOOOOO+++---...--++OO#@@@@##OOO++++++
.--++OO####O++--.......-++OO######O++-----++++++++++++++++--... ....---+++OO+++--------++--..      .--+OO####OO++------------------------+++++++--..     ..------....----------..--++OOOOO++---....----....----+++++++++++++++---...---+OO######O+++++++++
..--++OO###OO++--..  ...--++O####OO+---------------+++++++--......--+++OOOOOOO++----+++++++-..    ..-++O#####OO+--------+++++---++++++++++OOOO+++-... ...--+++++------+++++++++++++OOO#OOO++--------++++-----------------------......--++OO###OO++-----+++
...--++O#####OO++--......--+OO###OO++--............--+++O+++-------+++OOOOOOOO++++++++++++--... ...-++OO#####OO++----++++OO++++++OOOOOOOOOOO++++--.......-++++++++---+++++++++++OOO######OO+++---++++++++----..............--....  ...--++OOOOO++------+++
....--+OO######OO+--......-++O###OO++--.....      ..--++OOO+++------++++OOOO++++++++++++-----.....-++OO##@@###OO++++++OOOOO++++OOOOOOOOO+++++----........--+++++++-----++++++++OOO#######OOOO++++++++++++---...          ..............--++OOOO+++----++++
....--+OOOO####OOO+--.....-+OO####O++--....        ..-++OOOOO+++------++++++++++++++++-------------++OO#######OOOOOOOOOOOO++++++OOOOOOO++------..........----+++++------------++OOO####OOOOOOOO+++++---------..          ...----.......--++++++++++++++---
-----+++OOOOOOOOO++---..--++O#####O++--..............---++OOO+++----------------+++++--------------+++OO####OOOO++OOOOOOO+++---+++OOO++--.......-........-----+++++-----......--++OOOOO++++++OO++++-----++++---.....    ...--+++----..--+++++++++++++++---
----+++++++++-++++--------+OO####OO++--....--------...----+++++++---------------++++++-----++++------++OOOOOO+++++++OOOOO++-----++++++--......--------------+++++++++----......--+++++++----+++++++----++++O++++----......--++++++-----++++++++--++++-----
----+++++----.-----------++O#####OO+--------+++++---......-----+++++++++++------+++++++++++++++---..---++++++------+++OOOO++----+++++--....---++OO++++++++++OOOO##OOOOO++--....--+++++---..---++++++++++OOOOOOOO++++---..---++++++-----++++++---.---------
---------...  ....----+++OOO#####OO+++------++++++--.... .....---++OOOOOO++-----+++++++++++++---.......------......--++OOOOO++++-----.....--+OO####OOOOOOOOO###@@@@####OOO++---++++++--.......---++++++++OOOOOOOOOOOO++++-+++++++-------++---........-----
+-----...      ..---++OOOOOOOOOOOOOO++++------+++++--...     ...--+OOOOOO++-----++++O++++-----...     ...---....  ..--+OOOOOO+++---......--++O######OOOOOOOO##@@@@@@@####OOOO+++++++--...    ..---+++++++++++++OOOOOOOOOOO++++++---...------...   ..---+++
++---..       ..--++OOOOOOOO+++++++++++++-------+++++---....   ..--+OOOOO++-----+++OOO+++----...........-------......--++OOOO+++---.....--+++OO###OO+++++++OO###@@#####OOOOOOOOO++++--.........--++++++---...--++OOO#####OOO+++--.....-----........--++OO+
O++--..     ..--++OOOOOO++++------++++++--------+++OOO++---...  ..--++++++------++OOOOOO++---.....------+++++++---...---+++++++----------++++++++++-------+++OOO#OOOO+++++OOOOO+++-------------+++++++--..    .--++OO####OO+++--.....---------..---+OOO#OO
OO+++--.....--+++OOOOO+++---.....-------------+++OOOOOOOO++--......--+++++-----++OO####OO+++------++++++OOOOOO++---....-----------++++++++++++-----.......--+++OOO+++----+++++++---------++++++OOOOOO++-..    ..--+OOOOOOO+---......--++++++-----++OO#####
OO+++---..---++OOOOOO++---................---++++OO######OOO++------+++++++-----++OOO#OOO++++-++++OOOOO###OOOO++---......------+++OOOOOOOOO+++---...     ..---+++++-------++++++------++OOOOOO###OOO+++-..    ..-++OOOOO++--... ....--++++++++++++OO##@@@#
+++++--------++OOOOO++----------...........---++++OOO#######OO+++++++++++++------+++OOOO+++----++OO#######OO++----......-----+++OO########OOO+---..       ..---+++------++++++++++++++OOO#########OO++--..    .--++OOOOO++-..    ...--+++-----+++OO##@@@@@
-------------+++OO++++-----++++++--........-------+++OOO####OOO++++++OOO+++--------+++++++------++OO#####OO++------..------+++OOO##########OOO++--..      ..----++----++++OOOOO+++++++OOO########OO++--...   ..--++OO#OOO+-...  ...--------.---++OO#######
..---+--------+++++++-----++OO#OOO+--....-------------++OOOOO+++++++++++++++--------+++++---....--+++OOOO+++--------------+++OOOOOOOOOOOOOOOOO+++-..     ..--+++++++++++OOOOOOO+++++++++OOOOOOOOOO+++---..   ..--++OO###OO+--.....-------......--++OOOOOOO
..--++++-------+++++------+OO####OO+-------++++----..----------------++++++++++++++++++++++--......--+++++++----+++--------++++++++++-++++OOOO+++-..    ..-+++++++----+++OOOO++++------------++++++++++--... ...--+OO####OO+--------+++--...  ..--++++++++
.---++++++----++++++++---++OO#####O++----++++OO+++------------...--------+++++OOOOOOOOOO+++---.......-----+++++OOOO+++------++++++--------+++++--..     ..-+++++--------+++++---..............--+++OOOO++--....---++OO##OOO++---+++OOOOO+--.....---++++++-
..--++++++--+++OOOOOOO++++OO######OO++---+++OOOOOO++++----.........-...----++OOOOOOOOOOO++----..........--++OOO###OOO++----++++++++---..--------..      ..--------...---++++--..              ..-++OO##OOO+++-----+++++OO+++++++OOO#####O++-....--++++++++
...--------++++OOO###OOOOOOOO#####OO++-----++OOOOOOOOO++----..--------....--++OOOO##OOO++-------.........-++OO####OOO+++++++++OOO+++------------..      ...---......---+++++--..               ..-++OO####OOOO+++++--------++++OO#######OO+---.---+++OOO++
...----------++OOO####OOO++OOOOOOOO++--....--++OOO####OO++-------+++--.......-++OOOOOO++--------------...--++OOOOO+++++++++++OOOOOO++------------...   ...---.......--+++OOO++--.............. ...--+OOO#####OOO++---.....--++OO######OOO+---..--+++OOOOO+
..------------++OOO##OOO+++++++OOO+++-..   ..--++O#####OO+-----++++++--.    ..-++OOOOOO++----++++++++-------++++++-------+++++OOOOOO++-----+++++--......------......--++OOOOOO++-------------.......--++OOO###OO++-..    ..-++OOO#OOO+++---.....--++OOOOO+
.-++++++--------++OOOO++-----+++++++--.     ..--++OO#OOO++------+++++-..     .--++OOOOOO++++++OOOOOO++-----------........-----+++++++------+++++++------++++++--.....--++OO###OO+++++++++++++--.......--++OOOO++---.     ..-++OOOOOO++---...  ..---+++++++
++OOOOO++-......--++++++-----++++++--..     ..---+++++++-------++++++--.   ..--++OO###OOO++++OOOOOOOOO++------....        ....---+++---.---++OOOOO++++OOOOOOO++-.......-+OO#####OOOOO++++++++--..    ...--++++--...      ..-+++OO+++---....   ...--++++++-
OO####O++-..   ..----+++--+++++++++--... ....----------------++OOOO++--.....--++OO####OO+++++++OOO##OOO+++----..             ...------...--++OO#OOOOOO######OO+-..    ..-+O#######OOO+++++-----..     ...-----....       ..--++++++---.-.........--++++++-
OO###OO+--.......-----++++++OOOOO++--.....--------.......--++OOOOOOO++--...--++OOOOOOOOO++---+++OOOOOOO+++++---...      ...  ..---++---..---++OOOOOOO######OO+--..   ..--+OO#####OO+++---------...   ...-----......... ....--+++++-----------...---+++++++
OOOO+++--.....--------+++++OOOOOOO++-------++++--..    ..-++OO####OO+---....--+++OOOOOO++-------++++++++++++++---.....-----..---+++++---..---++++++OOOOOOOO++--.......--++OOOOOOO++---....------......---++-----------....---++++------+++++------++++++++
+++----....---++++++------++OOOOOOO++-----+++++--.     ..-++O#####O++--......---+++OOOOO+++-------++-----+++++++------++++++-+++++++++--.....------++++++++--.......--+++OOOOO++----....---++++-------+++++++++--++++-------++++++-----+++++------+++++++-
+-........--++OOOOO+++-----++OOOOOOO+++++++++++--..    ..--+OO###OO++--.......---+++OOOOOOOO+++----.....--++OOOO+++++++OOOOOOOOOOOO++---......------+++++++---.....--+++OOOOO+++---...--++OOOOO+++-----+++++++++++++++++++++OOOO+++----++++----.----------
-..     ..-+OO#####OO++-----++OO###OOOO++++++++++-...  ...--+OOOOOO++---.....----+++OOOO###OOO++-..    ..-++OOOOOO++OOOO#######OOOO++--.......-----+++++++++----------++++OOO+++-------++O#####OO++--------------++++++++OOOOOOOOO++++-------.............
-..     ..-+OO#######OO++---+++OOOO#OOOO++++++++++---......-++OOOOOO++--------+++++++OOOOO##OOO+--.    ..-+OOOOOOO+++OOOO########OO++--.......--+++++++++++++++---------++++O++++-----++OO#####OO+++-----------------+++OOOOO###OOOO++++----..........   .
--........--++OOO#####OO++----++++OOOO++++--++++++++---...--++OOOOOO+++------+++++++++++++OOOOO++--....--++OOOOO+++++++++OOOOO##OOO++--......--+++++++++++++++++++-------+++OO++++----+++OOOOOOO++++-----...----------++++OOOOOOOOOOO+++----...---...    .
+++----....---+++OOOOOOO++--------++++---------+++++++-----++OOOOOO++---------+++---------+++++++++---++++OOOO+++---..----++++OOOOO+++--......--+++++++----+++++++++----+++OOO+++--------+++++++++++++-----------------+++++++++OOOOO++-------------..   .
++++++--.....----+++++++---......------.......---++++++++++OOOOOO++---........----.......---++++OO++++OOOOOO++---...   ....---++OOO+++--...  ...--------------++++++++++OOOO+++---.......-------++++++++++++++++O+++++++-------+++++++---..---++++++--....
OOOOO++----..--------------.....-------.......---+++++++++OOOOO++--......   ..............--+++OOOOOO###OOO++-...           ..--++++++--..      ......-......----++++OOOOOO++---.....  ......---++OOOO+++++++OOO###OOOO+++-----+++++---.....--+OOOOO+--...
OOOOO+++---------.......-----------------.....---+++++++++OOOO++--......... .............---++OOOOO######O++-..              ..---------..       ...-------......--++OOOOO++--......... .....--+OOOOOO++++++++OO######OO++++++++++++--... ...-++OOOOO+--..
+OO++++----+++---..  ...---++++++++++++----..---+++++++-++++++++--...----......------------+++OOOOOOOOOOOO++-......       ......---------....  ...--++++++--...  ..--++OO+++--..............-++OO##OO++-------+OOO###OOOO+++++++++++---...  ..-++OOOO++--.
++++-----++++++--.    ..--+++OO+++++++++-------++++++-----+++++-------++--------+++++-----++++++++++++++++++----------....-------------------..---+OOO#OO++--.     .--++++++----------------++O####OO++--.....--+++OOOO++++++++OOOO+++--...  ..--+++++++--
++++------++++--..     .--+++++++--------....---++++------++++++----++++++------+++++------++++++-----+++++++++++++++++--+++++++++---+++++++----++OO####OO+--.     ..-+++++++---++++++------+OO#####O++-...   ..---+++++------+++OOOO+++--..  ..---+++++--
+++++-----------..     ..-------........    ...-----------+++++++++++OOO+++-----++++++-----++++----------++++OOOOOOOOOOOOOOOOOOOO++++++++++++++++OOO###OOO++--.....--++OOOOOOO++OOOO+++------+OOOOOO++--..      ...--------..---++OOOOOO++--......-----+++
OOOO+++-----------...  ..........             .........---+++OO+++++OOOOO++------++++++++-----------------++OO########OOOO######OO+++++++++++OOOOOOOOOO++++++------+++OOO####OOOO#OOO+--....--+++++++--..        ..--------....--++OOO##OO++---.....---+++
+OOO+++--------++----...........              ..........--+++OOO++++OOOOO++------++OOOOO++-----------------++OO#####OOOOOOO######OO++----++++OOOO+++------+++++++++++OOOO######OOOOO++--....---++++---...       ...-++++++---....--++OO##OOOO++--....--+++
++++++--....---+++++++---...............................--+++++++++++OO+++------++OO###OO++-----+++++---..---++OOOO+++++++OOOO##OOO++-----+++++++--......--+++OOOO+++++OOOOOOOOOOO+++--....----+++------...   ...--+OOOOOO++--.....--++OOOO#OOO+-------+++
-+++--... ...--++OOOOO+++-------++++---------------.....--+++++++----++++-------+OO####OO++-----+++++--......---+----------++OOOOOO+++---++++++++-..    ..-++++++++++-+++++++++++-----..----++++++++++-----....---+OO####OO+--..   ..--++OOO##OO++-----+++
----..     ..--++OOOOOOOO++++++++++++++++++++++++++------+++++++---.-----------++OO####O++-------++++--..   ....-..........--++OOOOOOO++++++++++--.     ..--++++----...----++------....----+++OOOOOOOOOOO+++---+++OO#####O++-..     ..--++OOOOOO++-----+++