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