................#&$%$$$$$$$$$$$$$$$$$$$$$$$$$$$#$ .... ....... ;&###&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##*; ....................................................
................;#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$#&............o###&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&@#%! ;................................................
................ ;#&$$$$$$$$$$$$$$$$$$$$$$$$$$$##; ....... *@#&&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&@#&!...............................................
...................&#$$$$$$$$$$$$$$$$$$$$$$$$$$&#o ......$##&$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$%$$$$&##$; ...........................................
....................$@$$$$$$$$$$$$$$$$$$$$$$$$$&#%. .. $##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##&%..........................................
...................  %@&$$$$$$$$$$$$$$$$$$$$$$$&#$.. o##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##&! ......................................
..................... o#&$$$$$$$$$$$$$$$$$$$$$$$##. &##$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$$$&###%.....................................
.....................; o##$%$$$$$$$$$$$$$$$$$$$$#&$##&%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&&#&;..................................
........ ; ............ ;##&$%$$$$$$$$$$$$$$$$$$&##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$&&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&###*  .. ...;!o**%%%%%%%**o!.. .....
........$! ............. ;&#&$$$$$$$$$$$$$$$$$$$&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$###&&@@#######&&&&&&&###########%%
........ ;#&o  ............$@&%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$%$&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%&###&%%$%%$$$$$$$$$$$$$$$$$$$&&&&
.......... %#@&o. ..........%##$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$&#&$$$$$$$%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$#&&#$$$$$$%$$$$$$$$$$$$$$$$$$$
......... ...$#&##! ........ *@#$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##&$$$$$$$$$$$$$%$$$$$$$&&&
............. !&#$&@&! ... .; *@#$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##&$$$$%$$$$&&&#######&&&
............. . o##$$#@$! .;...o##$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$&##$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##&$$$#@@#&%!;..  .....
.............; .; *@#$$&##%;....o##&%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##&%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&###&!  .. ;..........
.................;  $@&$%$&@#%;  !##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$##&$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&&###%; .;..........
......................##&%$$$###$; ###$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#&&@&! .....;...
...................... !##&%$$%$&#@%$##$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$$&&&#$;.. ....
.....................; . o##$$%$%$$&&&@&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$$%%&&###*. ...
......................... .*##&$$%$$$%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%&###$;. 
............................ %@#&$$$$$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$##&$$$$$$$$$$$$$$$$$$$$$$$$$%$%$$$&&######$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##$o
.........................;.... $##$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%&##$$$$$$$$$$$$$$$$$$$$$$$$%$$&&#@@&*o.%##$$$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&&&
........................ ; .... !#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#&$%$$$$$$$$$$$$$$$$$$$$$$&@@&$o. . .$@#$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&
............................;. !@&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$$$$%$&#&$$$$$$$$$$$$$$$$$$$&####&o. .... ;$@&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
...............................&#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$&#&$$$$$$$$$$$$$%%$&&###%!  .;.... o#@&$$$$$$$$$$$$$$$$$$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
............................. *@&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&$$$$$$$$%$$$&#&$$$$$$$$$$$$$$&###$;  ....... ;$@&&$&%$%$$$$$$$$$$$$$$$$$$$$$$&&&&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
.............................;&#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$&&$$$$$$$$$$&##&$$$$$$$$$$$$&######@@@@@#@@###@#&$$%%$$$$$$$$$$$$$$$$$$$$&&&###&$%$$$%$$&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
............................ *#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$$$$$$$$$$&#$$&%$$$$$##&##%$$$$$$$$$#&##*. .        ;*##&&$$$$$$$$$$$$%$$$%%$$$###@##$&#&$&%$%$&&##&$$$$$$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
.............................&#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&$$$%&#&$%$$%$$##o$@&$$$$&%%$&##@$; . ;.... .%#@#&$$$$$$%$$$$$$$&&&&###&##&o;.  $##&%$%$&###&&$%$$$$$$$$$$$&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
........................... !@#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$&&$$$$&#%$$$%&##* %#&$$$$$$$#&##! ...;. ;!$@@&&$%$$$$$$&&&###@@##&%o!*$#@####@&&#&$$$$$#&##$%$$$$$$$$$$$$&####&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
............................*#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#$$$$&#$$$%&#&$. %##$%$$$$##@&; ;. o*$@@####@###@###&$%*o!;.   .........  ;%@@&$$$@##@%;%#&$$$$$$$$$$$&##&&##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#&&$$%$$$$
............................&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##$$$$$#&%$$##&;..!#&$$$%$&&@$. ......  ..  ..       .................... !&##$&###&#*  .##$$$$$$$$$$$&&@$ %##$$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$#&#@&$$$%
...........................;&#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%&#&#&%$$$&#&$&##*. ..&#&$$$#&@$....;..... ...  .!*$&#####&&%o!. ........ .o&@&##&%! ;*###&;##$$$$$$$$$$&#@%  $##$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%##&###$$
...........................!##&$$$$$$%%$$$$$$$$$$$$$$$$$$$$$$$$%$#&o#&$$$$$#&$&&#! .. *@#%$&&@&...... ..... .o&@#######&&##&&&###@#*. ..%###$o;.   ..... !*o##%$$$$$$$$&##%  ;###$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$&#!%##
.......................... o@#$$$$$$$&&#@####&&$$$$$$$$$$$$$$$$&#%.##$$$&###$$@#; ...;@&$&#&@; ; ;....;. o&##&&###&$*!!;;;;o%$#####&#@&*  .. ..............#&$$%$$$$$&##$ ; %@&#%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%&##!.!
.......................... *@#$$$$$%#@%.   .!%&@##&&$%$$%$$$%$#&@!o@$%&#&;$#$#&..... $#&&##% ..........&##&######&&@@#&!         .*####&@&. .. ...........&#$$$$$$$$#&#! .;##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##o 
.......................... *@#$$$%&#&; ........ .*&####$%%$$$$$@%.#$&#*  !#&#&..... ;##&##; .;....; o#####**#%%%&@$;  ;#@&.          !$@@&@% ........... $@&$$$$&%$#@*. .$##&%&%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##!
...........................*#&$$%$@% ; ...... ...;. ;$####%$$$#% %#&; .; o###...... *###$ ;... .. o#####&. *#%$#%        $#&            ;##&#; ........ %#&$%$$$%&##!. o@##%%&%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#&
.......................... *#&$$&@* . ;..............  o@##$$######o ... $@&....... $@#o ;... . o#&#&!@%   !@%#*           &#;            !###o ...... o##$$$$$$&@& .!#@&$%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$##
...........................!#&$&@% ......; .;........;. %@&##&%%$@o .... #% ...... .##.........%@## *@#%   ;##$             ##.             &@&........##$$$$$&&@* ;###&$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$$$$$%$$$&##&$$$$$$$$$$$$$$%$$$$$%$$$$$$$$$$$$$$$$$$#
...........................;##&#$ ........  o&o. ... ; ..&#&&#&&&%#&....*% ... ... !&...... .; .   o@%&#   .##o             o@o              o!...... %@&$$$$&##! &##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$%$$&##&$$$$##o#&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&
............................$###!......... #@&#@$. ...;. ;##&&###&#; ; ;. .......... .... ....... !@$%$#o   &@;             ;@$               ...... !##$$$$&#&o$##&%$$$$$$$$$$$$$$$$$$$$$$$$$$$$%&##&&#$$%&##;;#&$$$$$$$$$$$$$$%$##$$$$$$$$$$$$$$$$$$$$$$
............................!##$ ........ *@$  %&@% ;.... o##&$$&##! ...............;............ ##%$*&&   %@!             ;@$               .......$#&$$$&##&#&$$$%&%&$$$$$$$$$$$$$$$$$$$$$$$$&#&#$%#&$$##$; o#&$$$$$$$$$$$$$$$$$&#&$$$$$$$$$$$$$$$$$$$$
.............................&#* ........ &@o... &#@;..... %##$&#!$##! ......................... o#$%%%$#;  o@%             ;@$             ....... !#&$$$$&##&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&##@$$#&##$%&&@%;; %#&%$$$#&$$$$$$$$$$$$$#&$%$$$$$$$$$$$$$$$$$
.............................&@% ........;##;.... *#@* ..;  $#&#! ..&##o ;.. ................... o@$&#$*#*   #@o            o#*            .........$@&%&&##&$$$$$$$$$$$$$$$$$$$$$$$$$$$&###&*.   $@&$###@#&&###&$$%$#&$$$$$$$$$$$$$$##&$$$$$$$$$$$$$$$$$$
.............................$@$ ....... o@&...... !##% .....&@* .....$@#* ..;.................. o@#*!$###!  &#&#;        .%#@!            ........;##&##&$$%$$$$$$$$$$$$$$$$$$$$$$$&##@#*;.... $@#%##@*. .!$###&$$$&#$%$$$$$$$$$$$$$&###$$$$$$$$$$$$$$$$$
............................ *##; ...... *@$........;##$.. ; *#$.. ;.;. %##&; ;...................#&;!.;;!$@&&@!;$@##@##@#%$#%            ...... ;*&@#&$$$$$$$$$$$$$$$$$$$$$$$$$&###$*; ..;. !&@##&##; .  .! !##$$$&#$$$$$$$$$$$$$$$$&####&$$$$$$$$$$$$$$$
............................ !##o ...... *@$ .........##$ ... $$........ $#&#@*. ;.... .......... *@$;!;;;;;;;;;;;;;..;;;.$#$           .. .!*&#@#&$%$$$$$$$$$$%$$$$$$$$$&&##@#&*; ..... .o&@#&##&! .... .. ;##$%&#&&$$$%$$$$$$$$$$$$&#&*##$$%$$$$$$$$$$$$
..............................&#$ ...... o@&.   ....  .##% .;. ......... ;#& %@@#*... ;.......... .o#&;;;;;;;;;!;;;!;;;;!@@%           ...!%##&$&&$$$$$$&$$$$$$&&&&&####@&*!.   .;... ;&@@@##&*. .. .......;##&%###&$$$$$$$$$$$$$$$$$$##;%@&$$%$$$$$$$$$$$
............................. *##; ......;##!;*%o%$&@@&&&#* ............. %@*  ;&#@#o ...........;. !###*o;;;;;;;;;!o%&@@%            .. ...  .;!**%#&##@&####&&&%*!;.  .............;;..  .!***%o......; o#&&@$%##$$$%$$$$&$$$$$$$$$$##! ##&%$$$$$$$$$$$$
..............................;&#$....... $@% .....;. .!&##; .............!&@     ;&###*  .......... !##&#@@#@@@@@@#&%!             ............;. ;&&$@$.  . ....................... ;$##@######&@&; ...&#&@$ o@#$%$$$$$$&&$$$$$$$$$&##! o##$$$$$$$$$$$$$
.............................. *#@o ......!@#;... .......&#% ; ............$@o       ;$@##*. ......... .o&@$o.                    ................. %#&#* ........................ .&#####&#&&$$&@&##; *@#%;  o@#$$$%%$$$$#$$$$$$$$$$&##;..&#&$$$$$$$$$$$$
................................&#&;...... %@$ ......... *##. ............ *@$          ;$###%; ........;. .!*&@@#&%o;;....;;*&$ .................. ;#&@; ....................... !###&$%$$#&. . !###* ... ; *@&$$$%$$$$$&#$$$$$$$$$$##$...*##$$$$$$$$$$$$
................................!##% ...... &@$ .........$#$ ............. !##;            .$@#@&o  .. ........ ...;!o%%%%%%o;. ...................; o@$ ....................... %@%&%%&@o !#*    #&@* ;.; o@&&$$%$&$$$$$#$$$$$$$$$$$##o ..;##&$$$$$$$$$$$
................................ *##o  ... ..%@&!...... o@#!................&@*               .o####$!  ....... .........;....;.......................%o ..................... o@o ;##&.    @%   ;###o.. %@&&$$$$$#&$$$$#&$$$$$$$$$$##&.....$##$$$$$$$$$$$
................................. %##o ...... ;###! .. !#@o. ...............$@$                   ;$####$!  ..............................................................;...$@o  &#.     o@.   !@&#! %###%$$%$##&%$$$##&$$$$$$$%%&&#o ....o@#$$$$$$$$$$$
.................................. $##* ......  !%#@#%;%@*  .. ............ %@&                       ;&#&#@$o;.    ...................;.....................................&##  !%      ;@o    %#&#o##&$%$$$&#&$$$$$&#&$$$$$$$$$$##$ .....!##&$$$$$$$$$$
.................................;. *##$... ..;... .*##@&#o ..;............ *##                           !$#@@#####&$%*!;.   ........................................... ..&#&* .&      .@*     #&#&##$$$$#@&@&%&$$$&#&$$$$$$$$$$##&.......;##&$$$$$$$$$$
...................................; ;&#@!........... .;%##&.. ............ o##;                                .;o%$&####@@##&&%o;.  .....................................$#$#. &!     .@%    .###&#&$&&@#!;##%$$$##&#&$$$$$$$$$##&.........&#&$$$$$$$$$$
....................................; .*#@$.. ........... .##! ............ o##;                                           ;!%&###@#####$%o!;.  ................ .....;...%#%#% o&     !@o    .%;&&#&&@&*. *@&$$&&@$;$#$$$$%$$%&##&. ........&#&%$$$$$$$$$
.................................;...;. ;##@o ;...........  $@! ........... $##.                                                    .!%$&##@@@##@#&%*o;..   .... .... %% o@%%#!&$@!  ;$@.      o@&##%; .. $@$&###*. %#$$$%$$%$#&#% ... ......&#&$$$$$$$$$$
......................................... %##& ............. %@; ..........!#@%                                                               ;!*%&#@@@#@@##&%*o;.    !& $@##@&;;;%#@@o .     *##; ...; ;##&##$; ..o@&%$$&%%&&&#! ...........&#&$$$$$$$$&#
...........................................;&&@o.. .......... %#......... ;##$                                                                          .;*%&##@######&@*&$.;;!;;o@#!        $@&....;. %#$@$! ... *#$$&%$$$###$ ...;.........&#&$$$$$$$$##
............................................ o@&#! ........... #% ; .... !@&&                                                                                      ;!o%#&#&;.;o#@*          &@$.. ;. !&@#* ..... $#&$$$$$&##$; ..............##&$%$$%$$##$
........................................;..  ..*###o .;. .. ...;&.. . . *&#&                                                                                            @&o&&#o            $@&.....!%%; ...... ;#@$%&$%###&.................!##&$$$$$$&#$.
........................................ .. .o&@&&##@$. ..... ;. . ...;&&@o                                                                                             ;#&.            . %@&. . ....... .... o@&$%$&&##$.................. *##$$$$$$#@$ .
.........................................*&##$$$$%$&&##@%. .;........%##&.                                                                                               .&#%        ... o@&! ;........... .;&@&%##&#&* . .... .............$#&$$$$$##% ..
................................ ;. .o&@#&$$$$$$$&%$$$$####&*..    $##@;                                                                                                   o@#$**&@$. ;..##* ............; %#&&##@&o.......................;##&$$$$##o ...
...........................;.... ;%&##&$%%$$$$$%$%$&$&&##o%&@@@#####@;                                                                                                       !@#&o  . ..%#&. ............;&###&*;. ....................... o@#&$$&##;. ...
............................; ;$@#&$$$$$$$&&####@#&$$*%#&;;   .!o*##;                                                                                                          ;%@@#%...##o.. ..........;$*;  ; ...........................&#&$$##$.......
.......................... .%##&###@@@##&%*!;..    ...$@o ...  ...;$@o                                                                                                             *#@#&#&; ............ .......... ..................... o##&&#&o .......
........................ ;*$%*o;...  ............... $@% ........ ..&@*                                                                                                               .*###$;.............................................&#&&#&..........
........................;.......................... $#&............. $@*                                                                                                                 !@#o.; ........................................ $##&#o ..........
.................................................. $@$............... %@%                                                                                                              !#&@!........................................... %#&#$ ............
................................................ ;&#$................. *@$.                                                                                                          o@&#o ............................................%##&;..............
............................................... ;##$ ...................!@#;                                                                                                       *@##o..............................................$##; .. ............
.............................................. o##*..................... ;#@*                                                                                                    *@##o ......................................... .. ;##!  ................
................ ............................ $#@o. .......................$@$                                                                                                 $@##;............................................;. *%.; ..................
.................. ..  .....................;##&;.... ......................!##;                                                                                             &##&.;.............................................;. ..;....................
........;....... o&##########$*!.. ........*@#$ ..............................%@%                                                                                         .&@&$ ..........................................................................
.............. *#&@$o*%***%$&&######$*!. ;#@#!..........;..................... ;#@o                                                                                     ;##&$ ............................................................................
............ *##&%****%*oo*****oo*$&######&#*o;.   ......................; .; ...o@#!                                                                                 ;###$...............................................................................
...........!@&#%o*o**o****************oo*$&#######&&%o;    .............. ;. .. .. %@@;                                                                             o@##*. .;. ...........................................................................
.....; . !#&#$o*********************************%%$&#####@#$o;. ................. . .%@#!                                                                         %###; ..................................................................................
...... .$##$**o************************************ooo***%&####@#%!.  ............... ;$##!                                                                    ;#&#$......................................................................................
..... *##&o**o**********************************oo******o***o*%$&###@#$*.....  ... .. . ;#&@!                                                                *@##o .......................................................................................
....!##&*o*o*o*****************************************o**o****ooo**%&#@#@&! .... ...;..; !&&@*                                                           !&##$!..  .; ;..................................................................................
..!##&%o*********************************oo******************************&###&! ........... ;&##$                                                       $###*.............................................................................................
!&#@%******oooo*ooo*****%%%%%%******oo**o*******************************o*o*&@&&........... ...$###.                                                 *###&. ..; ..........................................................................................
#&*!*o%*%%$&&####################@#$*oo****oo****************************o**o*#&#! ..... ; .. ; .*##@o                                            ;&###! ..... ;..........................................................................................
&##@@####&&$$%%*****ooooooooo***o%&###&$******o*****************************o*o&#@o. ...; .; .; ;  !&##&.                                       %&&@% ....................................................................................................
****oooo***************************o*%&@##$*o***********************************%##& ............... .%@&#!                                  .%@##o ......................................................................................................
*************************************oo*%&###&%oo****o**************************o*###; ..............  .o###$                              ;###$; .. .;...................................................................................................
****************************************o*o%####$%oo***o*************************o*&#@! ................. !$&##o                         o@##%. ..........................................................................................................
********************************o*******o***oo*####&%******************************o&&@*................... %#&###!                   .*#&#o ..... .;.....................................................................................................
***************o********************************o%&###&%o************************o**o$##$ ..; .............#@; .%&##&!              ;&@#&! ...............................................................................................................
oo***o******************************************o**o*&####$o******o****o********o**o**%##&...............!#&oo*%#&&#&##&*        .$##@%...;.... ..........................................................................................................
###&$%ooo***************************************o***o***$&&##$**o********************o**###; ; ........ ;##&&&&%%%%*%%$&#&#$;  %#&#&! ;...................................................................................................................
!;;o$###$%*o***o*************************************o***oo%#@##&$*oo******************oo&&@o ........ ;##$o**o*o*******%###&###&o .; ....................................................................................................................
!!!!!!!!$###$*********o*************************************oo*%###@&%*o**o**oo**********o&&#$ ....... &@%o*o***o******o%#$ .!;...........................................................................................................................
!!!!!!!!!;!$###$***o**o**********************************o****oo*o*&####&%o***o*o********oo%#&#; ;... $###$o**o*o******o%#&   ..  .. .....................................................................................................................
!!!!!!!!!!!!;o&##&%o**o******************************************o***o%&####&*o*********o*oo*&##% .; *##%&#&%o*********o%##&###@####*.....................................................................................................................
!!!!!!!!!!!o!!!;*&@#&*o*******************************************oo***oo*%&####%%**********oo%&#@o !##$$%$##$*o*******o%##*o****o%&#o....................................................................................................................
!!!!!!!!!!!!!!!!!;!%###&o**********o***************************************oo*$&####$*oo******oo$@#&&#&%$%$%&##%oo*******##$o****o*##$ ............;......................................................................................................
!!!!!!!!!!!!!!!!!!!!;o$###%oo*o**********************************************ooo**$###&&%**oo*****$@#&&%%$$$%&##********o&#&o*o*oo*&#&; ...   . ..........................................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!*&##&%o******oo*****************************************o***o*$####&%oo****o$@&#$$%$$##&o*******o%##%oo%@%o%##%*$$&######o.. .....................................................................................................
!!!!!!!!!!!!!!!!!!!!!;!o!;!%##&#%*oo********************************************o***o**oo%&##&&&%oo*oo&##&$%$##%o*********&#&*o$@%o*&##$$$%%***%&@*.......................................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!;!%###&%o********************o**********o***o******************oo*$####&%oo*&##&&##**********o*&##%##**o%##%o*o**o*o$##! .....................................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;%####$*oo***o****************oo******************************ooo%&##@#%o%#&@#$***********o*%$##&***o###*o**o**o%&#*......................................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*&###$*oo***********o*o*%%%%o******o****************o******o*o***$####%$@#%**********o*o*##&*oo*o*##&*o***o**&#& .....................................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o&###&$%o**********o%%%%%%***%oo*******%************o********o**o$&##&##$***********&##$o***o*o%&#$*o****o$##o.....................................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*&####&$%*ooo*o*$%$&%o%%&&%%o*$%o*&%$%*oo**********************o&####&oo**o***$##$*o********o%#$******o&##;....................................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o$&####&&$%o*$$%o*oo%%o*%$$$%%$%&**o**********************o*o*&#&#$o*oo%@@#$*o***********o*o*******o&##* ;. .;.............................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o!!!!o*$&##&#######&&$$$$%*****o*oooooooooooooooo**ooo****%oo*o%###%o&#&%oo***oo**********o**o*****oo$##&! .;  . ..........................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;!o*%%$$&################################&$$%*o**o***&#&*oo*o***o***o**************oo*****o&&##%...............................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;!!!!!!!*$;;%&o$#&$&$$$$$$##&@####$*o***&##%*o*o**o**%$%%*o*o****o****o***o****%###@o ...........................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;%#. $$;!&#$%$%$%$%$#*  .%##@&**o&##**o**&###@###&##@#&$**o****oo********o*$&##o..........................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o#; %&!!!&#&%$%%%%%%@*  ;@%$$%o$##%!%&#@#&.   !#$%$$&&####$*oo************oo&##..........................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;*#! %#!!;*##$$%%$$%%%@!  &#**o*##&%##$%%%$@o   *#$%$%%%$$######%**oo****o***&&#..........................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;o#! *#!!!!%##&$%%$%%%&#. o@%o*####&$%$%$%%$@o  .#&%%%$%%$$%%$&#&###$%*oo****&#% .........................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o@o *@!!!!!&###&%%%%$%@% .@&o$##$$$%%$%%%$%&#. .#&%$%$%$&&####@#########$%o$##! .........................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o#* *@o!!!!o##$&#&$%%%&@. $#%&#&$%$$$$%%%$%$@o ;#&%%$&###&%o!!!!!!!;;o%&#####%  .........................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o#* *@o!!!!;%##$$##&$%$#$ o@&##$%%$%%$%%$%%$#% !#&&##&$!;;!!!!!!!!!!!!!!;!*&##&&o. ......................................................................................
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!o#% o@*;!!!!!$#&$$$##&%&#; @##&%%%%%%%%$%%%$@* !&##$o!!!!!!!!!!!!!!!!!!!!!!!!!*#&#&! ; ..................................................................................