..---++++----...-----------.........-.........---+++OO++++----.... ....--++OOOOO++---.........--------+++++++OOOOOOOO+++-........---++++O+++--------++++++--.....--++OOOO++++++++OOOOOOOO++++++---------+++++++------++OOOOOOO++++----+++++O++++----
.    ..--++OOOOO++++--+++++++++----------------.....---+++OOOO++++----......--++OO####OO++----.--------------+++++++++OOO++++--... ...--+++OOOOOOO++-----++++++--..    ..--+++++-------++++++++++++----....---+++++++++---++OOOOOOO++---....----++----...-
    ..--++OOOOOOOOOOOOOOOOOO++++++++++++++++++--.....--+++OOOOOOOOOO++--------++OO####OOO+++-----++++++++++-----------+++++---..  ...--++OO######OO++++++++OOO++--..   ...--------------+++++----...........--+++OOOO++++++OOOOOO+++---...................
     ..--++OOO##########OOOO+++++++++++++++++---.....--++OOO########OO++-------++OOOOOOOO++++++++++++OOOO++++--......--------..    ..-++OO##@@@@@##OOOOOOOOOOOOO++--................---+++++---...         ..--++OOOOOOOOOOOO++++++-----.................-
     ..---++OO##########OOO+++++++++++++++++---.....---++OO##########OO++--...---+++++++++++++++++++++OOOOO+++--......------..      .-++OO##@@@@@###OOOOOOOOOOOOO+++------..........---++++++--..          ..--++OOOOOOOO+++++---------------...     ..---
  .....----++OOOO#####OOO+++------+++++++-----......--+++OOOO########OO++---..---------++++++++++++++++OOOOOO++--.....-------..     ..-++OO##@@@###OOOOOOOOOOOOOOOOO+++++---...  ...--+++OOO+++-...        ..--++OO##OOO+++---...----++++++++--.......---+
-....------++++++++OO+++++--------+++++++----.......--+++OOOOOO++++OO++++----------...---+++++++-----++OO####OO+--------++++--.      .--++OO#####OO+++++++++++++++OOOOOO+++--..   ..--++OOOOOOO+---..      ..--+OO####OO++-...  ...-+++OOO#OOO+---...---++
++-----++++++++++--------------++++OOOOO++++--.......--++++++++----+++++++++++++----...---++++++-----++OO#####O++------++++++-..     ..-++OOO#OOO++--------------+++OOOOO++--..    ..--++OOO#OOO++--...  ...--+OO#####OO++-..     .--++OO####OO++---------
OOOOOOOOOOOO+++--........----++++OOOOOOOO++++--.......----------...----+++++OOOOO+++-----+++++++-----++OOO###OO++-----+++++++--......--++OOOOOOO++--.............--++++O+++--..    ..--++OOOOOOOO++---....--++OO##@@@##OO+--..    ..---++OOOOOO++---------
O##########OO+--..     ...---+++OOOOOOOOO+++---.......................--++OO####OOOO++++++++++++-------++++O+++++-----+++++++--------+++OOOOOOO++-...     .........--+++++++-..   ...--+++OOOOO+++++------++OOO##@@@@@##O++--... ......---++++++++----++++
###########O++-..       ...---++OOOOOOOO++--------....................--++OO#####OOOOOOO++++++++----------------++++++++++++++++++++OOOOOOOOOO++--...    ..........--+++++++--......--+++++++++++++++++++++OOO##@@@@@@##OO++---.............------++++++++
########OOO++--...  ........---++OOOOOO++--------------......----.....--++OOOOOOOOOOOOOOO+++++++-------.......---++++++------++OOOOOOOOOOO+++++++--........----....---++++++--.....--++++++++------+++++++++OOO###@@@##OO+++---------...    ...---++++OOO+
OO##OOO++++---.....-------..----++OOOOO++-----++++++++---------++--------+++++++++++++++++++-----++----..    ..--++++++------++OO###OOO++++++++++++--------+++-------++++++--......---+++++--------++++++++++++OO#####OO+++----+++++--..     ..--+++OOOOO+
OOOOO++-----...----+++++-------+++OOOOOOO++++++OOOOOO++-----+++++++-----------------+++++-------++++++--..   ..--++++++-----++OOO##OOO++----++++++++-----++++++------++++++--..   ...-------------+++++++------++OOOOOO++------++++++--..    ..-+++OOOO+++
OOOO++--........---+++++++----+++OOOOOOOOO++++OOOOOOO+++---++++OO+++-----------------+++--------+++OO+++--...---++OOO+++++-+++OOOOOOO++-----++++OO+++-----+++++------------...      ...---------++++++++---....--++++++---....----+++--...  ...--+++OO++++
##OO+--..     ...---++++++++++++++OOOOOOO+++++++OOOO+++----+++OOOOO++--........----++++++--------++OOOO++++--++++OOOOOOOO+++++++OOO+++++--+++OOOOOO++---------------------...       .......----++++++++--.... ...--------........------........---++++++++
##OO++-...     ...----++++++++++++++++++++++-++++++++++----+++OOOO++--........---++OOOO+++---..---++OOOOOO++++++OOO####OOO++++++++++++++++++OOOOOO+++--.......------------...   ...........---+++++++----..... ....------..     ...----.........---+++++++
###OO++-...    ...-----+++OOO++++-------+-------++++++------+++OO+++-..    ..--++OO##OOO++--......--++OOOOOO+++++OOO#####OO++--------+++++OOOOOOOO++--..    ..----++++++---.....-------...---++++++---------......--------..     ...-------....-----++++++
O###OO++--.......-----+++OOOO+++----------------+++++++-----+++++++-..     ..-++OO####OO++--..   ..--+++OO+++++++++OO####OO++--.....--+++++OOOOOOO++--.     ..--+++OOOO+++------++++++-------+++++------------------+++++--..    ..----++---------++++++++
OOOOOO+++--....---++++OOOOOOOO++------+++++++++++++++++------+++++--.      ..-++OO###OO++--..     ..--+++++++-----++OOOOOO++--........----++OOOOOO++--......--+++OO####OOO+++++++++++++-----++++++-------++++++--+++++++++--.....---++++++++++++++++O+++++
+++O++++---...--+++OOOO#####OOO+++-++++OOOOO+++++++++++------------.       ..-++OOOOO++--..        ..-----------.---++++++---..     ...---+++OOOOOO+++------++OOO#########OOOOOOO++++--------+++++--------++++---+++++++++-------++OOOO##OOOOOOOOO##OOOO++
--+++----.....--++OOO####@###OOO+++++OOOOOOOO+++++++++-----------...       ..-+++OO+++-..           ...---------...--------...      ..----++OOOO#OOOO++++++OOOO######@@@#####OOO+++---...----++++---...-----------++++O+++------++O####################OO+
--------.......--++OOO##@@@###OO+++OOOOOOOOO++++++++----............       ..-+++++++--..           ...---++++----............     ...--+++OOOOOOOOOOOOOOOOOO##OOO###########OO+++---....---+++++---.....---------++++++++------++O#######OOOOO#########OO
----------......---++OO######OO+++++OOOOOOO++------------..-------...      ..-+++++++--...............--+++OO+++---..................--++++OOOOOOOOOOOOOOOOOOOOOO++++OOOOOOOO++++---------+++++++---......--------+++++++--------++OOOOOO++++++OOOO####OOO
++++++-------....---++OO###OOO++++++++++++++--------++---------++---...   ..--+++++++++----+++--------+++OOOOOO++--......--------...----++++OO++++++++++OOOOO+++--------+++++-----------+++OOOOO++---...--------+++++++++---....---++++---------+++OOOOOO+
OOOOOO++++++--------++OOOOOO++-------++++++-------+++++++++++++OO+++--......--++++OO+++++++++++++++++++OOO##OOO++--------++++++----..----+++++++-------+++++++----.....------------+++++OOOOOOOOO++------+++++++++OOOO+++---.......----.......----++++++++
OO######OOOO++-----++OOOOO++-... ...--+++++------++OOOOOOOOOOO####OOO+--.....---+++OOOOO+++++++++++++++OOO##OOOO+++++++++OOOOO+++---------+++++--------+++++++----.......------+++++OOOOOOOOOOOOO+++++++++++OOOOOOOOO+++---...........     ....---+++++++-
O#########OO+++--+++OOOOO++-..    ..--+++++------++OO###############OO+--......--+++OOOOO+++++------+++OOOOOOOOO++++OOOOOOOOOO++++--------+++++++------+++++++++---......----+++OOOOOOOO++++++++++++++++++++OOOOOOO++++----.........        ..--+++++++++-
O########OO+++---+++OOOO++--..   ..--++++++--...--++OO##############OO++--.....--+++OOOO+++---....---+++++OOOO+++OOOO#####OOO++++++++++++++++++++++++++++++++++++--......---++OOO##OOO+++-------+++++++++++++++OOO+++-------------...      ..--++++++++++-
OO####OOO++-------++++O++++--....--++OOOO++--.....--++OOOOOOOOOOOOOOO+++---------++OOOO+++--..   ...--++++++++++++OO#####OO+++-----+++++++--+++++++++++++++++++++--.....---++OO####OO++--..  ...-++++++++----++++++++------++++++++--........--++++++++---
OOOOOO+++--......---+++++++++---+++OOOOOO++--... ...---+++++++++++++++--------+++OOOOOOO++-..    ..--+++++++-----++OO####OO++-------++++--------++++-----+++++++--.......--++OO####OO++-..     ..-++++++------++++++++----++OOOOOOO++--......---+++-------
OOOOO++---...    ...---+++++++OOOOO####OO++--..     ..----------....------++++++OOO###OOO++-.......-++++++++------++OO##OOO+-------------.....-------------------...   ..---+OO#####O++--..    ..--+++++-----+++OOOO++++++OO######OOO++--......--------..-
++++++----...      ..---++OOO###########O++--..     ...------...     ..---+++++OOOO####OOO++--....---+++++++------++OO##OOO+----..-----........-----......--------.......---+OO######OO+--... ....-------++++OOOOOOOO+++OOO###@@@###OOO++-----------------
------------..     ...-++OO######@@@@###O++--.       ..-------..      ..--+++++++OOOO###OOO+--.....--+++++++-----++OO###OO++---...-----........------......---++----.....--++O#######OO+++--........-----+++OOOOOOO+++++OOO###########OOO+++-----++-------
....----+++---.......--++OOO############O++--.      ..--+++++--...   ..---+++++-++++OOOOOOO+--.....---++++++----+++OO####OO+------------.....--------......---++++---------++O#######OO++++-------....---+++OOOO++++--++++OO######OOOOOOOO++++++++++++----
......--+++++----..--+++OOOOOOOOOOOOOOOOO++--..     .--++OOOO+++--..----++++++------+++++++--.......--+++++++--+++OO#####OO+--------+++--------+++++--......--+++++-------+++OO####OOO++++++++++----...---+++++++---.----++OOOOOO+++++OO+++++++++++++++---
......---+++++------+++OOOO++++--+++OOOOO++--.      .--++OOOOOOO++++++++++++++--------+++---.......--+++++++-----++OO####OO++-----++++++------++++++--.......--------------++OOOOOOO++-----+++++++---------------......--+++++++++---++++++------++-------
-.......------------++++++++-------++OOOOO++--.     .--++OOOOOOOO+++++OOOOOO++++-----------...  ...--+++++++------++OO###OO++----+++++O+++++++++++++--..     ...........---+++OOOOO++------+++OOO+++--...........     ..---+++---------------.............
--......--------------------.....--++OOOOOO++--..  ..--++OOOOOOOOOOOOOOOOOOO++++++++++++---..    ..--+++++++++----++OOOOOOOO++---+++OOOOOO+++++++++++--..         ......--+++OOOOO+++----+++OOOOOO++--..              ...------....---------...        ...
+-......---+++----------........--++OOOOOOOO++--.....--+++OOOOO++++OOOOO+++++++++OOOOO+++--..    ..---+++OOOO++++++++OOOOOOO+++---+++OOOOOOOOOO+++++++--...        ....--++++OOOO++++--+++OOOOOOO+++-..             ...............---++++---..         ..
--......--++++++------.........--++OOOOOOOOO++---...---++++++++++++++++++++--+++OOO##OOO++--..    ..--++OOOOOOO+++++++OOOOO+++------+++OOOOOOO++++++++++--.... ......----++++OO++++++++++OO####OO++--..        .....-----....   ...--++++++++--...      ..
.......--++OOOO+++----........--++OOOOOOO+++++--....---++++++------+++++------++OO####OO++--..    ..--++OOO#OOO++++++++++++++--.....--++++++++++++++++++++---------------+++++++++---+++OO#####OO+--........------++++++---..    ..--++OOOOOO++---...  ...
.   ...-+++OOOOOO+++++--......--++OOOOO+++----.......--++++++-----++++++------++O#####OO+--...   ..--++OOO##OO+++-----++++++--...  ...---------------+++++++++++++++-------------------++OO###OO++---....---++++++OOOOO+++--..   ..--++OOOOOOOO++---......
    ..--++OOOOOOO++++++---....---+++++++------........---+++-------++++++++++++OO#####O++--..   ...--++OOOOOOO++------+++++---..     ...-----......-------+++++++++-----.-------.......--++OOOO+++-------++OOOOOOOO##OOOOO++--......--++OOOOOOOO+++--.....
   ..--++++++++++++++++-----...---------------.........----+----------+++++++OOO#####OO++--.......---+++++OOO++++++++++++++--...    ..................-------++++----.....------....  ..---+++++------+++OO############OOOOO+---....--++OOOOOOOOOO++--....
 ..---+++++++---------++--------......-----++---.......---++++----------+++OOOOOO###OOO++--.......-------++++++++++++++++++--........----....--------.....---------......--------...  ...------------++OO#######OOOOOOOOOOOOO++-------+++OOO+++++O+++--...
..--++++++---....-----+++++++---.......---+++++---....---+++++++--------++++OOOOOOOOOOO+++---...-------------++++++OOOOOO+++--...----------------+----.....-------.......--++++---.....-------------++OO####OOOO++++++++OOOOO++------++++++++++++++++----.
--+++++++--.......---+++OOOO+++--.......--+++++---------++OOOOO+++-------+++++++++++OOO+++--------------...----+++++OOOOOO++-------+++++------++++++---....-------.......--++++++-------+++--------++OOOOOOO+++---....--+++++++------++++++------+++++----
++++++++---.....--++++OOOOOOOO++--........------------+++OO###OOO++++-------------+++++++--------++++++------------++OOOOOO++-----++++++------+++++----.----+++++---.....---+++++++--++++++++++-++++OOOOOO++---...   ...--------------++++-------+++++----
OOOOO++++-------++OOOO#####OOO+++--...    ........----+++OOO###OOOO+++++------..----------------++OOOOO+++----------++OOOOOO+++++++++++-------------------++OOOOOO+---....--++++++++OOOOOOOOOOOOOOOOOOOO++--...        .............-------------++++-----
OOOOOOO++++++++OOO######OOOO++++++--..        ......---+++OOOOOOOOOOO+++----....---------...---+++OOOOOOOOO+++-------+++OOOOOOO+++++--------------------+++OO####OO++--...--+++OOOOOOO#########OOO##OOO++-..             .............------------------..
#####OOO++++++OOO####OOO++++--++++---..      ........----++++++++OOOOO+++---..---------...-----+++OOOOO###OOOO++------+++OOOOOO+++---------------------+++OOOO###OO++---.---++OOO#################OOOO+--...      ......................-------------.....
####OOOO+++++OOOOOOOO++---...---++++---..............-----------+++++++++------++++------------++++++OOO#####OO+++-------+++OO+++--------+++----------++++++OOOOOO+++------++OOOO#OOOOOOOOOOOOOOOOO+++--........---------.....--------------++++----.....-
OOOOOO+++++++++++++++--... ...--++++++++--------------------------++++++------+++++++-----+++++------++OO####OO++---.....---++++--------++++++------+++++++++++++++--------++OOOOOOO+++++++++++++++----...-----+++OOOO+++------++++++------++++++---------
+++++----------------...   ..--++OOOOOO+++++++++++++++++++++------++++++------+++++++----+++++++------++OOOOOO++--...    ...-----------++++++++++-++++O++++----------------+++OOO+++----------------.....--++++OOO###OOO+++++++++OO++++-+++++++++------+++
.---....  ....-------.......--+OOOOOOOOOOOOOOOOOO+++++++++++++++-+++++++----------------+++OOO++++----+++++++--...           .....---+++OOOOOO+++++OOOOOO++--.........----+++++++--........------........-++OOO###@@@@##OOOOOOOOOOOOO++++++++++++----+++OO
....        ..-------......--+OOO#####OOOOO####OOO+++++++OOOOO++++++++++---------.....---++OOOOOO++++++++----...               ..---++OOOOOOOOOOOOOO###OOO+--........---++++++--...     ...-----...    ..-++O###@@@@@@@###OOOOO###OOOO++++++OO+++----++OO#
 ...       ..---+++---.....--+OOOOOOOOOOOOOO#OOOO+++---++OOOOOOOO++++++++------.... ...--++OOOOOOOO++++----....               ..--+++OOOOOOOO+++OOOOO###OOO+--......---++++++--..      ..---+++--...    .--+OO##@@@@@@@##OOOOOOOOOOOO++++++++++++----+++OO
...........--+++++++---....--+++OOO++++++++OOOO+++-----++OOO###OO+++++++++++---..     ..--++OO####OO+++--.....................---+++OOOO++++++++++++OOOOOOOO++--..----++++++--..    ...--++OOOO++--..    ..-++OO#######OOO++++OOOOOO+++++++++++++------+++
----------++++OOO+++--.......--++++--------++++++------++OO###OOO++----+++++++--.     ..--++O####OO++---.....----------------++++++++++++----------+++OOOOOOO++------++++++--..    ..--++OO###OO++--..    ..--++OOO##OO+++---++++++++-----+++++++---------
++++++++++++OOOOO+++--..    ...-----......----+++++++++OOO###OO++-------++++++--..   ..--++OOO#OOO++--......---+++++++++++++OOOOO++++---...... .....--++OOOOO+++-----++++++--... ...-++OO######O++--..     ..---++OOOO+++------+++++---------+++---.....--
+++++++++++++OOOO++++--..      .......   ...----+++++OOO####OO++--...----++++---.....--++OOOOOOO++-...    ...--++++OOOOOOO####OOO++--..              ..-++++++++-----+++++++--....--++OO######O++--..        ..--++++++++------++++---......------........
++++++++++++++++++++++--..     .......    ...---+++OOOO####OO++--...----++++---....---++OOOOOO++--..       ...--+++OOO########OO++-..                 ..-++++++------++++++++-------++OO####OO++--...         ..--+++++++++-+++++++---...  ...............
---+++++-------++++++++--..   ..............---++++OOOOOOOO++---...--+++++++---..----++OOOOO++---.....    ....---++OOO#######OO++-...    ......      ..---++++--------+++OO++-------++OOOOOOO++---.....      ...--+++OO+++++++++++++--..      ............
-----++----------++++++--......---------..---+++++++++++++++-------+++OOOO++--------++++++++----.....--.......----++OOO##OOO+++--.......----------...---++++++---------++++++---...---++OOOO+++-------........---+++OOO+++++++++++++--..     ...-------...
----+++++---....---------....---++++++-----+++++++++--------------++OOOOOOOO+++---+++++++----...-----+++---------++OOOOOOO++---......---++++++++++++++++OOOO++++--------------.......--+++OOO+++++++++-------+++++OOO++++---+++++++++--..   ..--+++++-----
++++OOOO++---.......--....----++OOOOOO+++++OOOO+++--....---------++OO#####OO++++++-------......---++OOOOO++++++++OOOOOOOO++----....---+++OOOOOOOOOOO+OOOOOOOO+++-------------.......--+++OOOOOOOOOOOO+++++++++OOOOOOO++-------+++OO+++--......--++++++----
OOOOOOOOO++--... ......----+++OOO###OOOOOOOO#OOO+--..  ....---+++OOO#####OOO++++----....     ..-++OO######OOOOOOOOOOOOOOO+++--------+++OOOOOOOOOOOOOOOOOO++++++----------------------+++OOO#######OOOO+++++++OOOO#OOO++--....--++OOOO++--.....--++++++++--
OOO####OOO+-..    ....---+++OOOO#####OOOOOO###OO+-..   ...---++OOOO#####OO+++------....      .--+OO###########OOOOOOOOOOO+++++--++++++OO+++OOOOOOOOOO++++-------------------+++++++++++OOO########OOO+++--+++OOO####OO+--....--++OOOOO+--......---++++++++
OOOOOOOOO+--.     ..--++++OOOOOOOOOOOOOOOOOOOOO++-......---++++OOOOOOOOOO++-------............-++OOO##########OOOO++++++++++++++++++OO+++++++++OOOO+++---....-------------+++++OOOOOO++OOOO#####OOO++---..--++OO#####OO+--..---+++OOO++--......---++++++++
++OOOOO++--.     ..--++OOOOO++++++++++++++++++++----.----+++++++++++++++++--------------------++++++++++OOOOOOO++++----++++++++++++OO+++-----+++++++--.......-------------+++OOOOOOO++++++OOOOOOO++--..   ..--+OO#####OO+-------++++++---......---++OOOOOO
-+++++++--..     .--+++OOO++++------------------------++++OO++++------+++++++++++++++++++++++++++++-----+++++++++---------------++++++++------++++++--......--+++++---------+++++++++----+++++++++--..    ..--+OO#####OO+---------++---......---+++OOO##OO
..--------..    ..-+++OOOO+++--------......--------+++++OOOO+++---------+++++++++++++++OOOOOO+++---......---+++++------------..----+++++-----++++++++-------++OOOO++---.....--------------++++++++--..    ..-++OO##@###O++-------------------++OOOO#####OO
  ...-----.......--++OOOOOO+++------.......---++++++OOOOOOO+++++----------+++++++++++OOOOOOOOO++-..     ..---+++++++--------.......---------++OOOOO+++--++++OOOOOOO+--.... ............---+++OOO+++--......--++O##@@@##OO++--------------+++OOO#######OOO+
    ...-----------+++OOOOOOO++++++---......--++OOOOOOOO+++++++++++++---------+++++++++++OOOOOO++-..     ...---++++++++++++--....   ....----++OOOOOOO++++++OOOO#OOO++---...         ...---++OOOOOO+++--.....--++O##@@@##OO++---..----+++++OOOO#######OOO++-
     ..---++------+++OOOOOOOO++++++---...---++OO####OO+++-----+++++++----------++++---++++OOOO++--........----++++OOOOOOOO+---..     ..---++OOO#OOO+++++++OOOOOO++++-----....      ..--++OOOOOOOO++++--....--++O###@@##OO++--....---+++OOOOOOOOOOOOO++----
.   ...--++++++----+++OOOOOO++++++----..---++OO#####O++---------++++---.....---++--------++++O++++-------------++++OO###OOO+--..     ..--++OO###OO+++--+++++++++------------..     ..--++OOOOOOO++++--.....---+OO#####OO++--......--+++OOOOOOO+++++---....
......--+++++++-----+++++++++------......---+OO#####O++---....-------......--++++++-------++OOOO++++++++++--------++OOOOOO++--..    ..--++OO###OO++-------+++++-------++++++--..   ..--+++OOOO++----...  ...--++OO###OO++--..    ..---++++++++------.....-
-------+++OOO++++---++++++++--...........---++OOO##OOO++-----..............--+++++++++++++++OOOOO++++++++++---....---++++++--...    ..--++OOO#OOO++-------------..---++OOOOO++-...  ...---+++---...         ..--++OOOO++--..     ..---+++++---------....--
+++---+++OOOOOOO++++++++++++--..........-----+++OOOOOOO+++++-----...     ..--+++OOOOOO++++OOO+++++++++OOO+++--.........-----....   ...--++OOOOOOOO+++------.......--++OO####OO+--..  ....----...             ..--++++++--...    ..---+++------------------
+++++++++OOO##OOOOO+++OO++++---.......----------++++OOOOOOOO++++--..      ..--++OOOOOOOOOOO++++-----+++OOOO++--...      ..............---++OOOOOOO++++----......---++OOO####OO++--..............             ...-++++++--........--++++-----------++++++--
+++++++++OOO####OOO+++++OO++++---..-----+++---..----+++OOOOOOOO++--..      .--++OOOO#OOOO+++---...---++OOOOOO++--...     ...-----.....---+++OOOOOO+++++--......---+++OOOOOOOOO+++--.....--------....       ....--++OO+++---....---+++++---...---++++OOO+++
+++++---++OOOOOOOO++++++++OO++++------+++++--.......--+++OOOOOOO++--..     ..-++OOOOOOOO+++--......---+OO####OO++--..   ...---+----------+++OOO+++++++---....---+++++++++++++++++--------++++++++----......----++OOOOOO++---------++++--......--+++OOOOOO+
+++------+++OOOO++------++++++++-----++++++--...  ...---+++OOOOOO++--..  ...-++OOOOOOO+++--........--++OO#####O++--......---++++++++++++++OOOO+++------.....--++++O++++--------+++++++++OOOOOOO+++++-------++++OOO###OO++--------------..    ..---++OOOOOO
++++-----+++OOO+++-------+++++++------+++++--..    ...---++OOOOOO+++-------++OOOO###OO++---......--+++OOO###OOO++--......--++++++++++OOOOOOOOO++---.......---++OOO+++--......--+++OOOO######OOOO+++++---++++OOO######OO++--....-------...     ...--++OOO##
+++++---+++OOOOO++---.---+++++++------++++---..    ..---+++OOOOOOO++++++++OOOOO#####OOO++--------+++++OOOOOOO+++---.....-----++++++OOOOOO#OOOO+++--.....---+++OOO+++-.... ...--++OO##########OO++++------++OOO#######O++--....---------............-++OO##
++++++-+++OOO##OO++------+++++++------++++---..    ..--+++++OOO+++OOOOOOOOOOOOOOOOOOOOO+++-----+++++++++++++++----.....---------+++OOOOOOOOOOOO+++---..---+++OOO++--..   ...--++OOO########OOO+++---------++OO######OO+--....----+++++-----........--++OOO
++++++++++OO####OO++-----+++++++------+++++--..   ..--++++++++++++++OOO###OOOO+++++OOOO++++++++++++++++--------------------------++++OOO+++++++++++-------+++++++-..    ..---++OOOOOOOOOOOOOO+++----......--++OOO##OOO++-------++++++++---------------+++O
++++----++OO####OO++-----+++++++------+++++--..    ..--++++++-----+++OOOOOOO+++---++++++++---++++++++----------+-------+++++-----+++++++---+++++++++------++++++-..     .--+++OOOO++++++++++++++++---......---++OOOOOO+++----++++++++----++++++++------+++
+++------++OOOOOO++---.-----++-------+++++++--..   ..----------.----+++OO+++--....--------..----+++++--------++++++++++++OO++++++------------+++++++------------...    ..-+++OO++++--...---+++++++++--......---++OOOOOOO++++++++++---...---++++++-------++
+++++---+++OOOO+++-.........---....---++OOOO++---....------.......---+++++--..      ...... ...--++++++--------+++++++OOOOOOOO+++----.......--+++++++---................--+++++++--...   ...--+++++++----...-----+++OOOOOOOOOO+++--...  ...---+++----------
+++++++++++OOO+++-...     ..........--++OOOOOO++++-------....  ...---++++--..               ..--+++O+++---------++++OOOOOOOOO++--.... .....--++OO+++--....  .......---+++++++++--..      ...--+++++----------------+++++OOOOOO++--..    ..--------------++
+++++++++++OO+++--....     ........---++OOOOOOOOOOO+++---..    ...--++++++--..            ...--++OOO+++--.....----++OOOOOOOO++-..     ...--++OOOOO++--..     ....--+++OOOO+++--...      ...--------------++++----....--++OOOOO++--..  ....-------------+++
+++++++++++++++++----.........--------++++++OOOOOOOOO++--..    ..--++OOOO+++--............---++OOOOO++--.......---++OOO#OOO++--.     ..---+OO###OO++--..    ...--++OOOOOOO++--..........----++++------++++++++--..   ..--++OOOO+++--..----+++++-------++++
---------+++++++++++-----------++++---------+++OOOOOO++--.     ..--+OOOOOOOO+++----------++++OOOOO+++--.......---++OO####OO++-..     .--++OO####OO++--.    ..--++OO####OO++--......---+++++++++++++-++++++++++-..     ..-+++OOOOO++++++++++O+++++---++++++
.....-------+++OOOOOO++++++++++++++++----------+++O++++--..   ..--++OO####OOO++++-----++++OOOOOOOO++---......--++OOO####OOO++--.......--++OOO#OOO++--.     ..--++OOO#OOO++--.....---+++++OOOOOOOOOO+++++++++--..      .--++OOOOOOOO+++OOOO###OOOO+++++++++
  ...-------+++OOOOOOOOOO+++++++++++++---.....---+++++++--.....--++OO#####OO++++-----+++OOOO####OOO+---...---++OOOOOOOOOOO++++----------++++OOO++--..       .--+++OOO+++--.....----++++++OOOO#####OOOO++++---..      .--++OOOOOOOOOOOOOO###@#####OOOO+++++
  ..--------++++OOOO##OOOO+++++++++++++---.....---+++O++++-----+++OOO###OOO+++---------++OOO#####OO++------+++OOOOOO++++++++++++++++-------+++++---..       ..---++++----....---++++++++++OOO######OOO++---....    ..--++OOOOOOOO++++OO##@@@@@###OOO++++++
...---+++++-----+++OOOOOO+++----++++OO+++--.....---+++O+++++-+++++OOOOOOOO++----......--++OO######OO++----+++OOOO+++---.----+++OOOOO++-------------...      ..---------....---+++OO++++--+++OOOOOOOO+++----..........--++OOOO+++++++++OO##@@@###OO+++-----
-----+++++---...---++++++++------++OOOOOO++--....---+++++++----++++++OOOO+++----.......--++OO#####OO++----++++++++-..   ...-++OOO##OO++--------+++---..     ..--------------++OOOOOO++------++++++++------------...----++++++--------++O######OO++--.....-