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