                            /-----------------\                   /--------------------------------------------------------------------------------\  
                       /----+----------\      |  /----------------+-------------------------------------------------------------------\            |  
                       |    |    /-----+---\  |  | /--------------+->-----------------------------------------------------------\     |            |  
                      /+----+----+-----+---+--+--+-+--------------+-----------------------\       /----<-------------------\    |     |            |  
   /------------------++----+----+-----+---+--+--+-+------------\ |      /----------------+-------+------------------------+----+-----+--\         |  
   |                  ||    |    |     |   |  |  | |            | |/-----+----------------+-------+--------------\         |    |     |  |         |  
   |                  ||    |    |     |   |  |  | |            | ||     v      /---------+-------+--------------+---------+----+-----+--+--\      |  
   |                  ||    |    |     |  /+--+--+-+--------\   | ||     |      |         | /-----+-------\  /---+---------+----+-----+-\|  |      |  
   |               /--++----+----+-----+--++--+--+-+--------+---+-++-----+------+---------+-+---\ |       |  |   |         |    |     | ||  |      |  
   |      /--------+--++----+----+-----+--++--+--+-+--------+---+-++-----+-----\|        /+-+---+-+-------+--+---+---------+----+-----+-++--+------+\ 
   |      | /------+--++----+----+-----+--++--+--+-+--------+---+-++----<+-----++--------++-+---+-+-\     |  |   |         |    |     | ||  |      || 
   |      | |      |  ||    |    |     |  ||  | /+-+--------+---+-++-----+-----++--------++-+---+-+-+-----+--+---+---------+----+-----+-++--+----\ || 
   |   /--+-+------+--++----+----+-----+--++-\| || |        |   | ||     |     ||        || |   | | |     |  |   |         |    |     | ||  |    | || 
   |   |  | |      |  ||    |    |     |  || || || |        |   | ||     |   /-++--------++-+---+-+-+-----+--+---+-\       |/---+-----+\||  |    | || 
   |   |  | |     /+--++----+----+-----+--++-++-++-+-------\|   | ||/----+---+-++--------++-+---+-+-+-----+--+---+-+-------++---+-----++++--+\   | || 
   |/--+--+-+-----++--++----+----+-----+--++-++-++-+-------++---+-+++----+---+\||        || |   | | |     |  |   | |       ||   |     ||||  ||   | || 
   ||  |  | |     ||  ||    |    \-----+--+/ || || |       ||   | |||    |   ||||        || |   | | |     |  |   | |       ||   |     ||||  ||   | || 
   ||  |  | |/----++--++----+----------+--+--++-++-+-------++---+-+++----+---++++--------++-+->-+-+-+-----+--+---+-+-----\ ||   |     ||||  ||   | || 
   ||  |  | ||    ||  ||    |          |  |  || |\-+-------++---+-+++----+---++++--------++-+---+-+-+-----+--+---+-+-----+-++---+-----/|||  ||   | || 
  /++--+--+-++--\ ||  ||    |          |  |  || |  |       ||   | |||    |   ||||        || |   | | |     |  |   | |     | ||   |      |||  ||   | || 
  |||  |  | ||  | ||  ||    |          |  \--++-+--+-------+/   | |||    |   ||||        || |   | | |     |  |   | |     | ||   |      |||  ||   | || 
  |||  |  | ||  | ||  ||    |          |     || |  |       |    | |||    |   |||| /------++-+---+-+-+-----+--+---+-+-----+-++---+-----\|||  ||   | || 
  |||  |  | ||  | ||  ||    |          |     || |  |       |    | |||    |   |||| |/-----++-+---+-+-+-----+--+---+-+-----+-++---+-\   ||||  ||   | || 
  |||  |  | ||  | ||  || /--+----------+-----++-+--+-------+----+-+++----+---++++\||     || |   | | |     |  |   | |     | ||   | |   ||||  ||   | || 
  |||  |  | ||  | ||  || |  |          |     || |  |       |    | |||    |   |||\+++-----++-+---+-+-+-----+--+---+-+-----+-++---+-+---++++--/|   | || 
  |||  |  | ||  | ||  || |  |          |     || | /+---->--+---\| |||    |   ||| |||    /++-+---+-+-+-----+--+---+-+-----+-++---+-+\  ||||   |   | || 
  |||  |  |/++--+-++--++-+--+----------+-----++-+-++-------+---++-+++----+---+++-+++----+++-+---+-+-+-----+--+---+-+---\ | ||   | ||  ||||   |   | || 
  |||  |  ||||  | ||  || |  |    /-----+-----++-+-++-------+---++-+++----+---+++-+++----+++-+---+-+-+-----+--+-\ | |   | | ||   | ||  ||||   |   | || 
  |||  |  ||||  | ||  || |  |    |     |     || | ||       |   || |\+----+---+++-+++----+++-+---+-+-+-----+--+-+-/ |   |/+-++---+-++--++++---+---+-++\
  |||  |  ||\+--+-++--++-+--+----+-----+-----++-+-++-------+---++-+-+----+---+++-+++----+++-+---+-+-/     |  | |   |   ||| ||   | ||  ||||   |   | |||
 /+++--+--++-+--+-++--++-+--+----+-----+-----++-+-++-------+---++-+-+----+---+++-+++----+++-+--\| |       |  | |   |   ||| ||   | ||  ||||   |   | |||
 ||||  |  || |  | ||  || |  |    |     |     || | ||       |   || | |    |   ||| |||    ||| \--++-+-------/  | |   |   ||| ||   | ||  ||||   |   | |||
 ||||  | /++-+--+-++--++-+--+----+-----+-\   || | ||   /---+---++-+-+----+---+++-+++----+++----++-+----------+-+---+---+++-++---+\||  ||||   |   | |||
 |||| /+-+++-+--+-++--++-+--+----+-----+-+---++-+-++---+---+---++-+-+----+---+++-+++----+++----++-+---\      | |   |   ||| ||   ||||  ||||   |   | |||
 |||| || ||| |  | ||  || |  |  /-+-----+-+---++-+-++---+---+---++-+-+--\ |   ||| |||    |\+----++-+---+------+-+---+---+++-++---++++--++++---+---+-+/|
 |||| || ||| |  v ||  |\-+--+--+-+-----/ |   || | ||   | /-+---++-+-+--+-+---+++-+++-\  | |    || |   |      | |   |   ||| ||   ||||  ||||   |   | | |
 |||| || ||| |  |/++--+--+--+--+-+-------+---++-+-++---+-+-+---++-+-+--+-+---+++-+++-+--+-+----++-+---+------+-+-\ |   ||| ||   ||||  ||||   |   | | |
 |||| || ||| |  ||||  |  |  |  | |       |   || | ||   | | |   || | |  | |   ||| |\+-+--+-+----++-+---+------+-+-+-+---+++-++---++++--/|||   |   | | |
 |||| || |||/+--++++--+--+--+--+-+-------+---++-+-++---+-+-+---++-+-+--+-+---+++-+-+-+--+-+----++-+---+------+-+-+-+-\ ||| ||   ||||   |||   |   | | |
 |||| || |||||  ||||  | /+--+--+-+-----\ |   || | ||   | | |   || | |  | |   ||| | | |  \-+----++-+---+------+-+-+-+-+-+++-++---+++/   |||   |   | | |
 |||| || |||||  ||||  | ||  |  | |     |/+---++-+-++---+-+-+---++-+-+--+-+---+++-+-+-+----+----++-+---+------+\| | | | ||| ||   |||    |||   |   | | |
 |||| || |||||  ||||  |/++--+--+-+-----+++---++-+-++---+-+-+---++-+-+--+-+---+++-+-+-+---\|    || |   |      ||| | | | ||| ||   |||    |||   |   | | |
 |||| || |||||  ||||  ||||  |  | |     |||   || | ||/--+-+-+---++-+-+--+-+---+++-+-+-+---++----++-+---+------+++-+-+-+-+++-++---+++----+++---+--\| | |
 ||||/++-+++++--++++--++++--+--+-+-----+++---++-+-+++--+-+-+---++-+-+--+-+---+++-+-+-+---++\   || |   |      ||| | | | ||| ||   |||    |||   |  || | |
 ||||||| |||||  |||\--++++--+--+-+-----+++---++-+-+++--+-+-+---++-+-+--+-+---+++-+-+-+---+++---+/ |   |      ||| | | | ||| ||   |||    |||   |  || | |
 ||||||| |||||  ||| /-++++--+--+-+-----+++---++-+-+++-\| | |   || | |  | |   |||/+-+-+---+++---+--+---+------+++-+-+-+-+++-++---+++----+++-\ |  || | |
 ||||||| |||||  ||| | ||||/-+--+-+-----+++---++-+-+++-++-+-+---++-+-+--+-+---+++++-+-+---+++---+--+---+------+++-+-+-+-+++-++-\ |||    ||| | |  || | |
 \++++++-+++++--+++-+-+++++-+--+-+-----+++---++-+-+++-++-+-+---++-+-+--+-+---+++++-+-+---+++---/  |   |      ||| | | | ||| || | |||    ||| | |  || ^ |
  |||||| |||||  ||| | ||||| |  | |     |||   || | ||| || | |   || | |/-+-+---+++++-+-+---+++------+---+------+++-+-+-+-+++-++-+-+++----+++-+-+--++\| |
  |||||| |||||  ||| | ||||| |  | |     |||   || | ||| || | |/--++-+-++-+-+---+++++-+-+---+++------+-\ |      \++-+-+-+-+++-++-+-+++----+/| | |  |||| |
  |||||| |||||  ||| | ||||| |  | |     |||   || | ||| || | ||  || | || | |   ||||| | |/--+++------+-+-+-------++-+-+-+-+++-++-+-+++-\  | | | |  |||| |
  ||\+++-+++++--+++-+-+++++-+--+-+-----+++---++-+-+++-++-+-++--++-+-++-+-+---+/||| | ||  |||      | | |       || | | | ||| ||/+-+++-+--+-+-+-+--++++\|
  || ||| |||||  ||| | ||||| |  | |     |||   || | ||| || | ||/-++-+-++-+-+\  | ||| | ^|  |||      | | | /-----++-+-+-+-+++-++++-+++-+--+-+-+-+-\||||||
  || |||/+++++--+++-+-+++++-+--+-+-----+++---++-+-+++-++-+-+++-++-+-++-+-++--+-+++-+-++--+++------+-+-+\|     || | | | ||| |||| ||| |  | | | | |||||||
  || |||||||||  ||| | ||||| |  | |     |||   || | ||| || | ||| || \-++-+-++--+-+++-+-++--+++------+-+-+++-----++-+-+-+-+++-++++-+++-+--+-+-+-+-++++/||
/-++-+++++++++--+++-+-+++++-+--+-+-----+++---++-+-+++-++-+-+++-++---++-+-++--+-+++-+-++--+++------+\| |||  /--++-+-+-+-+++\|||| ||| |  | | | | |||| ||
| || |||||||||  ||| | ||||| |  | |     |||   || | |||/++-+-+++-++---++-+-++--+-+++-+-++--+++------+++-+++--+-\|| | | | |||||||| ||| |  | | | | |||| ||
| || |||||||||  ||| | ||||| |  | |     |||   ||/+-++++++-+-+++-++---++-+-++--+-+++\| ||  |||      ||| |||  | ||| | | | |||||||| ||| |  | | | | |||| ||
| ||/+++++++++--+++-+\||||| \--+-+-----+++---+/|| \+++++-+-+++-/|   || | ||  | ||||| ||  |||      ||| |||  | ||| | | | |||||||| ||| |  | | | | |||| ||
| ||||||||||||  ||| ||||||| /--+-+-----+++---+-++--+++++-+\|||  |   |^ | ||  | ||||| ||  |||      ||| |||  | ||| | | | |||||||| ||| |  | | | | |||| ||
| ||||||||||||  ||| ||||||| |  | |     |||   | ||  ||||| |||||  |/--++-+-++--+<+++++-++--+++------+++-+++--+-+++-+-+-+-++++++++-+++-+\ | | | | |||| ||
| ||||||||||||  ||| ||||||| |  | |     |||  /+-++--+++++-+++++--++--++-+-++--+-+++++-++--+++------+++-+++-\| ||| | | | |||||||| ||| || | | | | |||| ||
| ||||||||||||  ||| ||||||| |  | |     |||  || ||/-+++++-+++++--++--++-+-++--+-+++++-++-\|||      ||| ||| || ||| | | | |||||||| ||| || | | | | |||| ||
| ||||||||||||  |\+-+++++++-+--+-+-----+++--++-+++-+++++-+++++--++--++-+-++--+-+++++-++-++++------+++-+++-++-+++-/ | | |||||||| ||| || | | | | |||| ||
| |||||||||||\--+-+-+++++++-+--+-+-----+++--++-+++-+++++-+++++--++--++-+-++--+-+++++-++-++++------+++-+++-++-+++---+-+-++/||||| ||| || | | | | |||| ||
| |||||||||||   | | ||\++++-+--+-+-----+++--++-+++-+++++-+++++--++--++-+-++--+-+++++-++-++/|      ||| ||| || |||   | | || ||||| ||| || | | | | |||| ||
| |||||||||||   | | || |||| |  | |   /-+++--++-+++-+++++-+++++--++--++-+-++--+-+++++-++-++-+------+++-+++-++-+++---+-+-++-+++++-+++-++-+\| | | |||| ||
| |||||||||||   | | || |||| |  | |   | |||  || ||| |\+++-+++++--++--++-+-++--+-+++++-++-++-+------+++-+++-++-+++---+-+-++-+++++-+++-++-+++-+-+-+/|| ||
| |||||||||||  /+-+-++-++++-+--+-+---+-+++--++-+++-+-+++-+++++--++--++-+-++--+-+++++-++-++-+--\   ||| ||| || |||   |/+-++-+++++-+++-++-+++-+-+-+\|| ||
| |||||||||||  || | || |||| |  | |   | |||  || ||| | ||| |||||  ||  || | ||  | ||||| || || |  |   ||| ||| || |||   ||| || ||||| ||| || ||| | | |||| ||
| |||||||||||  || | || |||| |  | |   | |||  || ||| | ||| |||||  ||  || | ||  | |\+++-++-++-+--+---+++-+++-++-+++---+++-++-+++++-+++-++-+++-/ | |||| ||
| |||||||||||  || |/++-++++-+--+-+---+-+++--++-+++-+-+++-+++++--++-\|| | ||  | | ||| || || |  |   \++-+++-++-+++---+++-++-+/||| ||| || |||   | |||| ||
| |||||||||||  || |||| |||| |  \-+---+-+++--++-+++-+-+++-+++++--++-+++-/ ||  | | ||| || ||/+--+----++-+++-++-+++---+++-++-+-+++-+++-++-+++--\| |||| ||
| |||||||||||  || |||| |||| |    |   | ||| /++-+++-+-+++-+++++--++-+++---++--+-+-+++-++-++++--+----++-+++-++-+++---+++-++-+-+++-+++-++-+++--++\|||| ||
| |||||||||||  || |||| ||||/+----+---+-+++-+++-+++-+-+++-+++++--++-+++---++--+-+-+++-++-++++--+----++-+++\|| |||   ||| || | ||| ||| || |||  ||||||| ||
| |||||||||||  || |||| |\++++----+---+-/|| ||| ||| | ||| |||||  || |||   ||  | | ||| || ||||  |    || |||||| |||   ||| || | ||| ||| || |||  ||||||| ||
| |||||||||||  || |||| | ||||    |   |  || ||| ||| | ||| ||||| /++-+++---++--+-+-+++-++\||||  |    || |||||| |||   ||| || | ||| ||| || |||  ||||||| ||
| |||||||||||  || |||| | \+++----+---+--++-+++-+++-+-+++-+++++-+++-+++---++--+-+-/|| |||||||  |    ||/++++++-+++\  ||| || | ||| ||| || |||  ||||||| ||
| |||||||||||  || |||| |  |||    |   |  || ||| ||| | ||| ||||| ||| |||   ||  | |  || |||||||  |    ||||||||| ||||  ||| || | ||| ||| || |||  ||||||| ||
| |||||||||||  || |||| |  |||    |   |  || ||| ||| | ||| ||||| ||| |||   ||  | |  || |||||||/-+----+++++++++-++++--+++-++-+-+++\||| || |||  ||||||| ||
| |||||||||||  || |||| |  |||    |   |  || ||| ||| | ||| ||||| ||| |||   ||  | |  || |||||||| |    ||||||||| ||||  ||| || | ||||||| || |||  ||||||| ||
| |||||||||||  || |||| |  |||    |   |  || ||| ||| \-+++-+++++-+++-+++---++--+-+--++-++++++++-+----+++++++++-++++--+++-++-+-++++/|| || |||  ||||||| ||
| |||||||||||  || \+++-+--+++----+---+--++-+++-+++---+++-++/|| ||| |||   ||/-+-+--++\|||||||| |    |||||||||/++++--+++-++-+-++++-++-++-+++-\||||||| ||
| |||||||||||  ||  |||/+--+++----+---+--++-+++-+++---+++-++-++-+++\|||   ||| | |  ||||||||||| |    ||||||||||||||  ||| || | |||| || || ||| |||||||| ||
| ||||^||||||  ||  |||||  |||    |   |  || ||| |||   ||| || || |||||||   ||| | |  ||||||||||| |    ||||||||||||||  |\+-++-+-++++-++-++-+++-+++++/|| ||
| |\+++++++++--++--+++++--+++----+---+--++-+++-+++---+++-++-++-+/|||\+---+++-+-+--+++++++++++-+----++++++++++++++--+-+-++-+-++++-++-++-+++-++/|| || ||
| | |||||||||  ||  |||||  |||    |   |  || ||| |||   ||| || || | ||| |   ||| | |  ||||||||||| |  /-++++++++++++++-\| | || | |||| || || ||| || || || ||
| | ||||||\++--++--+++++--+++----+---+--++-+++-+++---+++-++-++-+-+++-+---+++-+-/  ||||||||||| |  | |||||||||||||| || | || | |||| || || ||| || || || ||
|/+-++++++-++-\||  |||||  ||\----+---+--++-+++-+++---+++-+/ || | ||| |   ||| |    ||||||||||| |  | |||||||||||||| || | || | |||| || || ||| || || || ||
||| |||||| || |||  |||||  ||     |   |  || ||| |||   ||| |/-++-+-+++-+\  ||| |    ||||||||||| |  | |||||||||||||| || | || | |||| || || ||| || || || ||
||| |||||| || |||  |||||  ||     |   |  || ||| |||   ||| || |\-+-+++-++--+/| |    ||||||||||\-+--+-++++++++++++++-++-+-++-+-+++/ || || ||| || || || ||
||| |||||| || |||  |||||  ||     |   |  || ||| |||   ||| || |  | ||| ||  | | |    ||||||||||  |  | ||\++++++++++/ || |/++-+-+++--++-++\||| || || || ||
||| |||||| || |||  |||||  ||     |   |  || ||| |||   ||| || |  | ||| ||  | | |    ||||||||||  |  | || ||||||||||  || |||| | |||  || |||||| || || || ||
||| |||||| || ||| /+++++--++-----+---+--++-+++-+++---+++-++-+--+-+++-++--+-+-+----++++++++++--+--+-++\||||||||||  || |||| | |||  || |||||| || || || ||
||| |||||| || ||| ||||||/-++-----+---+--++-+++-+++---+++-++-+--+-+++-++--+-+-+----++++++++++--+--+-+++++++++++++--++-++++-+-+++-\|| |||||| || || || ||
||| |||||| || ||| ||||||| ||     |   |  || ||| |||   ||| || |  | ||| ||  | | |    ||||||||||  |  | |||||||||||||  || |||| | ||| ||| |||||| || || || ||
||| |||||| || ||| ||||v|| ||     |   |  || ||| |||   ||| || |  | ||| ||  | | |    ||||||||||  |  | |||||||||||||  || |||| | ||| ||| |||||| || || || ||
||| |||||| || |||/+++++++-++----\|   |  || ||| |||   ||| || |  \-+++-++--+-+-+----+++++/||||  |  | |||||||||||||  || |||| | ||| ||| |||||| || || || ||
||| |||||| || ||||||||||| ||    ||   |  || ||| |\+---+++-++-+----+++-++--+-+-+----+++++-++++--+--+-+++++++++++++--++-++++-+-+++-+++-++++++-++-++-/| ||
||| |||||| || ||||||||||| ||    ||   |  || ||| | |   ||| |\-+----+++-+/  | | |    ||||| ||||  |  | ||||||||||||| /++-++++-+-+++-+++-++++++-++-++--+\||
||| |||||| || ||||||||||| ||    ||   |  || ||| | |   ||| |  |   /+++-+---+-+-+--\ ||||| ||||  |  | ||||||||||||| ||| |||| | ||| ||| |||||| || ||  ||||
||| |||||| || ||||||||||| ||    ||   |  || ||| | |   ||\-+--+---++++-+---+-+-+--+-+++++-++++--+--+-+++++++++++++-+++-++++-+-+++-+/| |||||| || ||  ||||
\++-++++++-++-+++++++++++-++----++---+--++-+++-+-+---++--+--+---++++-+---+-+-+--+-+++++-++++--+--+-/|||||||||||| ||| |||| | ||| | | |||||| || ||  ||||
 || |||||| || ||||||||||| ||    ||   |  || ||| | |   ||  |  |   |||| |   | | \--+-+++++-++++--+--+--++++++++++++-++/ |||| | ||| | | |||||| || ||  ||||
 || |||||| || |||||||||\+-++----++---+--++-+++-+-+---++--+--+---++++-+---+-+----+-+++++-+/||  |  |  |||||||||||| ||  |||| | ||| | | |||||| || ||  ||||
 || |||||| || ||||||||| | ||    ||   |  || ||| | |   \+--+--+---++++-+---+-+----+-+++++-+-++--+--+--+++++++++/|| ||  |||| | ||| | | |||||| || ||  ||||
 || |||||| || ||||||||| | ||  /-++---+--++-+++-+-+----+--+--+---++++-+---+-+----+-+++++-+-++--+--+--+++++++++-++-++-\|||| | ||| | | |||||| || ||  ||||
 || |||||| \+-+++++++++-+-++--+-++---+--++-+++-+-+----+--+--+---++++-+---+-+----+-+++++-+-++--+--+--+++++++++-++-++-+++/| | ||| | | |||||| || ||  ||||
 || ||||||  | ||||\++++-+-++--+-++---+--++-+++-+-+----+--+--+---++++-+---+-+----+-+++++-+-++--+--+--+/||||||| || || ||| | | ||| | | |||||| || ||  ||||
 || ||||||  | |||| |||| | ||  | ||   |  || ||| | |    |  |  |   |||| |   \-+----+-+++++-+-++--+--+--+-+++++++-++-++-+++-+-+-+++-+-+-+++++/ || ||  ||||
 || ||||||  | |||| |||| | ||  | ||   |  \+-+++-+-+----+--+--+---++++-+-----+----+-+++++-+-++--+--+--+-+++++++-/| || ||\-+-+-+++-+-+-++/||  || ||  ||||
 || ||||||/-+-++++-++++-+-++--+-++---+---+-+++-+-+----+\ |  |   |||v |     |    | ||||| | ||  |  |  | |||||||  | || ||  | | ||| | | || ||  || ||  ||||
 || |||\+++-+-++++-++++-+-++--+-++---+---+-++/ | |    || |  |   |||| |     |  /-+-+++++-+-++--+--+--+-+++++++--+-++-++--+-+-+++-+-+-++-++--++-++\ ||||
 || ||| ||| | |||| |||| | ||  | ||   |   | ||  | |    || | /+---++++-+----\|  | | |\+++-+-++--+--+--+-+++++++--+-++-++--+-+-+++-+-/ || ||  || ||| ||||
 || ||| |\+-+-++++-++++-+-++--+-++---+---/ ||  | |    || | |\---++++-+----++--+-+-+-+++-+-++--+--+--/ |||||||  | || ||  | | ||| |   || ||  || ||| ||||
 || ||| | | | |||| |||| | || /+-++---+-----++--+-+----++-+-+----++++-+----++--+-+-+-+++-+-++--+--+----+++++++--+-++-++-\| | ||| |   || ||  || ||| ||||
 || |\+-+-+-+-++++-++++-+-++-++-++---+-----++--+-+----++-+-+----++++-+----++--+-+-+-+++-+-+/  |  \----+++++++--+-+/ || || | ||| |   || ||  || ||| ||||
 || | | | | | |||| |||| | || || ||   |     ||  | |    || | |    |||| |    ||  | | | ||| | |   |       ||\++++--+-+--++-++-+-+++-+---++-++--++-+/| ||||
 || | | | | | |||| |||| | || || ||/--+-----++--+\|    || | |    |||| |    ||  | | | ||| | |   |      /++-++++--+-+-\|| || | ||| |   || ||  || | | ||||
 |\-+-+-+-+-+-++/| |||\-+-++-++-+++--+-----++--+++----++-+-+----++/| |    ||  | | | ||| | |   |      ||| ||||  | | ||| || | ||| |   || ||  || | | ||||
 |  | \-+-+-+-++-+-+++--+-++-++-+++--+-----++--+++----++-+-+----++-+-+----++--+-+-+-+++-+-+---+------+/| ||||  | | ||| || | |\+-+---++-++--++-+-+-++/|
 |  |   | | | || | |||/-+-++-++\|||  |     ||  \++----++-+-+----++-+-+----++--+-+-/ ||| | |   |      | | ||||  | | ||| || | \-+-+---++-/|  || | | || |
 |  |   | | | || | |||| | || |\++++--+-----++---++----++-+-+----++-+-+----++--+-+---+++-+-+---+------+-+-++++--+-+-+/| || |   | |   ||  |  || | | || |
 |  |   | | | || | |||| | || | ||||  |     ||   ||    || | |    |\-+-+----++--+-+---+++-+-+---+------+-+-++++--+-+-+-+-++-+---+-+---+/  |  || | | || |
 |  |   | \-+-++-+-++++-+-++-+-++++--+-----++---++----+/ | |    |  | |    ||  | |   ||| | |   |      | | ||\+--+-+-+-+-++-/   | |   |   |  || | | || |
 |  |   |   | || | |||| | || | ||||  |     ||   ||    |  | \----+--+-+----/|  | |   ||| | |  /+------+-+-++-+--+-+-+-+-++-----+\|   |   |  || | | || |
 |  |/--+---+-++-+-++++-+-++-+-++++--+-\   ||   ||    |  |      |  | |     |  \-+---+++-+-+--++------+-+-++-+--+-+-+-+-++-----+++---+---+--++-+-/ || |
 |  ||  |   | || | |||| | || | ||||  | |   \+---++----+--+------+--+-+-----+----+---+++-+-+--++------+-+-++-+--+-+-+-+-++-----+++---+---+--++-/   || |
 |  ||  |   | || \-++++-+-++-+-+/\+--+-+----+---++----+--+------+--+-+-----+----+---+++-+-+--++------+-+-++-+--/ | | | ||     |||   |   |  ||     || |
 |  ||  |   | ||   |||| | || | |  \--+-+----+---/|    |  |      |  | |     \----+---/|| | |  ||      | | || |    | | | ||     |||   |   |  ||     || |
 |  ||  |   | ||   |||| \-++-+-+-----+-+----+----+----+--+------+--+-+----------+----++-+-+--++------+-+-++-+----+-+-+-++-----++/   |   |  ||     || |
 |  ||  |   | ||   ||||   || | |     | |    |    |    |  |      |  | |          |    || | |  ||      | | || |    | | | |\-----++----+---+--++-----++-/
 \--++--+---+-/|   |||\---++-+-/     | |    |    |    |  |      |  | |          |    || | |  || /----+-+-++-+----+-+-+-+------++----+---+--++-\   ||  
    ||  |   |  |   |||    || |       | v    |    |    |  |      |  | |          |    || | |  || |    | | || |    \-+-+-+------++----+---+--++-+---+/  
    ||  |   |  |   |||    || |       | |    |    |    |  |      |  | |          |    || | |  \+-+----+-+-++-+------+-+-+-->---+/    |   |  || |   |   
    ||  |   |  |   |||    \+-+-------+-+----+----+----+--+------+--+-+----------+----++-+-+---+-+----+-+-++-+------+-+-+------/     |   |  || |   |   
    ||  |   |  |   |||     | |       \-+----+----+----+--+------+--+-+----------+----++-+-+---+-+----+-+-++-+------+-+-+------------+---/  || |   |   
    ||  |   |  |   |||     | |         |    \----+----+--+------+--+-+----------+----++-+-+---+-+----+-+-+/ |      | | |            |      || |   |   
    ||  |   \--+---+++-----+-+---------+---------+----+--+------+--+-+----------+----++-+-+---+-+----+-+-+--+------+-/ |            |      || |   |   
    \+--+------+---++/     | |         |         |    |  |      \--+-+----------/    || | |   | |    | | |  |      |   |            |      || |   |   
     |  |      \---++------+-+---------+---------+----+--+---------+-+---------------++-+-+---/ |    | | |  \------+---+------------+------/| |   |   
     |  |          ||      | \---------+---------+----+--+---------+-+---------------++-+-+-----+----+-+-+---------+---/            |       | |   |   
     |  |          ||      |           |         |    |  \---------+-+---------------/| | |     |    | | |         |                |       | |   |   
     |  |          |\------+-----------+---------+----/            | |                \-+-+-----+----+-+-+---------+----------------/       | |   |   
     |  |          |       \-----------+---------+-----------------+-+------------------+-+-----+----+-+-/         |                        | |   |   
     \--+----------+-------------------/         |                 | |                  | \-----+----+-+-----------+------------------------/ |   |   
        |          |                             |                 | \------------------+-------+----+-+-----------+--------------------------+---/   
        |          \-----------------------------+-----------------/                    |       |    \-+-----------/                          |       
        \----------------------------------------+--------------------------------------+-------+------/                                      |       
                                                 \------------------------------------->/       \---------------------------------------------/       
