.....................................................;;..;;o*%%%%%%%%%%%%%*%%$$$$$$$$$$$$$$$$$$$$&$&&&&&&&&&&&#############################&&&&&&&&&&&&&&&&&&&&&&&$$$$$$$$$$$$$$$$$$$&&&&&&&&&###########################################&&&&&&&######################&&&&%!.....                                                                                                                                                                      .......
                                                      .......................................................;!!oo***%%%%%%%%%%$$$$$$$$$$$$$$$$&&$$$$$$$$&&&&&&&&&&&&&&###########################&#&&&&&&&&&&&&&&$$$$$$$$$$$$$$$$$$$$$$$$$$&&&&&&&&&&&&###########################################&&&&&&&###################&&&&$o;.. ...        .                                                                                                                                                         ........
                                                      ..................................................;...;!o**%%%%%%%%%%%%%%%%$$$$$$%$$$$$$$$$$$$&&&&&&&&&&&&&&&&###############################&&&&#&&&&&&&&$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&###############################################&&&&&&###################&&&%!.. .....      ..                                                                                                                                                      .........
                                                      .....................................................;o***%%%%%%%%%%%%$$$$$$%%%$$$$$$$$$$$$$$$$$&&&&&&&&&&&&&&###########@###################&&&&##&&&&&&&&&#&&&&&&&&&&&&&&&&&&&&&&&&&&&&###&&&&&&&&&&&############################################&&&&&&#&################&&&$o;.....  ...                                                                                                                                                         ..........
                                                      ...........................................  ......;!o**%$%%**%%$$%%%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$&&&&&&&&&&&&&&#############################&&&&&#&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&##&&&&&&&&&&&############################################&&&&&##&##############&&&&%;... .. ...        .                                                                                                                                          ...............
                                                      ..........................................   ....;!oo******%%%%%%%%%$$$$$$$$&&$$$$$$$$$$$$$$$&&&&&&&&&&&&&&&&&################################&&&&#&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&##&####&&&&####&&&#######################################&&&&&&&##############&&&&*;..  .    ...                                                                                                                                              ................
                                                      ..................................        .  ...;!!o***%%%%%%%%%$$$$$$%%$$$$$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&####################################&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$&&$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&########################################&&&&&&&&#############&$&%!...        ..                                                                                                                                     ...  ..................
                                                      ................................            ..;;;!o***%%%*%%%%%%%%%%%$$$$$$$$$$$$$$&&&&&$$&&&&&&&&&&&###&&&&&##################################&&&&&&&&&&&&&&&&&&&$$&&&&&$$$$&&$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&###################################&&&&&&&&&#####&##&###&&$o;.. ..     ..                                                                                                                                  .........................
                                                       ..............................   .        ...;!!!*%%%%%%%%%%%%%%%$$$$$&&&&&&&&&&&&&&&&&&&&&&&###&&###&&&###&&&##############################&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&####&&&&&&&&&&&&&#################################&&&&&&&&&#####&&&###&$%!... .   . .    ..                                                                                                                         ............................
                                                       .............................            ..;;;;o*%%**%%%%%%$$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&#&&#############&############################&&&&&&&&&&&&&&&&&&&&&$$$$$$$$$$$$$&&$$&&&&&&&&&&&$&&&&&&&&&&&&&&&###&####&&&####&&&&&##############################&&&&&&&&&&#####&&####&&*...             .                                                                                                                        ............................
                                                       ...........................       ...  ....;!o***%%%%%%%$$$&&&$$$$$$$$$$$$$$$$$$$&&&$$&&$&&&&&&&&&&&&&#########################################&&&&&&$$&$&&&&&$$$$$$$$$&&$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&##&################&&&&&#########################&&&&&&&&&&&&&####&&&&&&&$!.    .                                                             ....................        ........                                ............................
                                                       .........................    .... ...  ...;!****%%%%$$$&&$$$$$$$$$$$$&$$$$$$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&#####################################&&&$$&&&&&&&&$$$$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#######&&&&########&&&#######################&&&#####&##&&&&&&&&&&&&&#&&&&&&&$o...                                                              .....................................                        ....................................
                                                        ................................ .  ....!!o**%%%%$$$$%%%%$$$$$$$$$$$&&&&&&&&&$$$$$$$$$$$$$&&&&&&&&&&&&&#&&&##################################&&&$$$$$&&$&&$$$&&$&&$$$&&&&&&&&&&&&&&&&&##&&&&&&#################&#####################&&&&###################&&&&####&&&&&&&&&&&#&&&&&&&&&&*;..  .                                                           ..................  ...............                         ....................................
                                                        ..............................   .  ...!oo*%%%$$$$$&&&&&&$$$$$$&$$$$$$$$$$$$&&&&&&&$&&&&&&&&&&&&&&&#######&&&#############################&&&&&$$%%$$&$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#######################################&&&##################&&#&####&&&&&&&&&&&&&&&&&&&&&$!..                                                          .....................  ..............                          ....................................
                                                        ............................    . .. .!o**%$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$&&&&&&&&###&&&#####################################&&&$$%%%$$$$$$$$$$$$$&&&$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&######################################&###&&########&&&&&&&####&&&&&#&&&&&&&&&&&&&&&&&&&&&&&*;.                                                       . .....................          ......                             .................................
                                                        ............................     ...;oo*%$$$$&&&&&&&&&&&&&&&&&&&&&&&&$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&############&#########&#&#&#&&&&&###&#&&&&&$$$%%%%$$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#####################################&###&&&############&&&&&####&&&&&&&&&&$$$$&&&&&&&&&&$&$o..                                                   .........................           ....                                ...............................
                                                        ...................... . .. .. . ..!o%$%%$$$$$$$$$&&&&&$&$$$$$$$&&$$&&&&&&$$$&&&&&&&&&&&&&&&&&####&&&###########&########&&&&&&&&&&&&&&&&&&&&$$%%%%$$%%$$$$&&$$&&&&&$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&####&&######################################&&&&&############&&&&&&&####&&&&&&$$$$$&&&$&&&&$&&%;..                                            ..   ........................                                                   ............................
                                                        ..........................  ..  ..;o%%%$$$$$$&&&&&&$&&&&&&&&&&&&&&&&&&&&$$&&&&$$$&&&&&&#####################&&&&###&&&&&&&&#&&&&&&&&&&&&&&&&&$$$$%%%%%%$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&###########################################&&&#################&&&&&&&&&&&&&&&&$$$$&&$$$&$$$%o...                                          .    .........................                                                  ............................
                                                        ........................ .    .;.;o*%$$$$&&&&&&&&&&####&&&&$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$%%%%%%%*%%%%%$$$$$$$$$$$$$&&&&$$$$&&&&&&&&&&&&&&&&&&&&&&&&&######################################&#&&&###########&########&&&&&&&&&&&&&&$$$$&&&&&&&$$*;...                                            ............................                                                  ..........................
                                                        ..........................  ...;;!**%$$&&&&&&&&&&&&&$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&##################&&&&&&&&&&&&$$$$$$$$$$$$$$$&&&$$$$$$$$$$%%%%****%%%%%%%%%%$$$$$$$$$$$$$$$&$$&&&&&&&&#####&&&&&&&&############################################&&###########&&&&&&&&###&&&&&&&$&&&&&&$$$$&&&&$$$%o;.                                            ............................                                                   .........................
                                                        .........................  .. .;!*%$$$$$$$$$$$$$$$$$$$$$&$$$&&$$$$$$$$$$$&&&&&&&&&&&&&&&&&##########&&&&&&&&&&&$$$$$$$$$$$$$$$$$$%%$$%%%$%%%$$%*********%%%%%%%%%%%$$$$$$$$$$$$$$$&&&&&&&&&&&####&&##############################################################################&&&&$$&&&&&$$$$&&&$$$*;...                                        .......................................                                            ......................
                                                        ....................... ......;!*%%%$$$$$$$$$$$$$$$$$$$$$$$%%%$&&&&&$$$$&&&&&&##########&&&&&&&&&&&&&&&$$&&&$$$$$$$$$$$$%%%%%%%%%*****%%%******o***o**oo***%%%%%%%%%%$$%%$$$$$$$$$$$&&&$&&&&&&&&######################################################################################&&$$$$&&&$$$$&$$$%!;..                                       ........................................                                            .....................
                                                        .............................;o*%%%%$$%$$$$$$&&&&&&&&$$$$&&&&&&$$$$$$$$$&&&&&&&&&&&&&&##&&&&&&&&&&&&&&&$$$$$$$$$%%%%%%%%%%%***************ooooooo*oooooo********%%%%%%%%%%$%%$$$$$$$$$&$&&&&&&&&&###&&####################################################################################&&&&&&&$$&&$$$$*;....                                    .........................................                                            ....................
                                                        .........................;..;!*%%%%$$$$$$$$$$$$$$$$$$$$$&$$$$$$$$$$$&&&&$$$$&&&&$$$$&&&&&&&&&&&&&&&&&&&&$$$$$%%$%%%%%%***oo***ooooooooooooooooooooooooo*oo***********%%%%%%%%%$$$$$$$$$$$$$$&&&&&&&&&&########################################################################################&&&$$$$$$$$$%o;.                                     .........................................                                            ....................
                                                        .................  ....;...;o*$$$$$$$$$$$$$$$$$$%$$&&##&&&&&&&$$$$$$$$$$$$$$&&$$&&&&&&&&&&&&&&&&$$$$$$$$$%%%%$%%%*****ooooooooo!oooooooo!!!!!!!!!ooooooooooooooo******%*%%%%%%%%%%$$$$$$$$$$$&&&&&&&&&###########################################################################################&$$$$$$$$%%o;.....         .                   .............................................                                            ...................
                                                        ....................... ...!*%$%$$$$$$$$$$$$$$$$&&$$$$$$$&&&$$$&&&&&&&&&&&&&&&&$&&&&&&&&&&&&&&&&&&&$$$$$$$%%%%****oooooooo!!!!!!!!!!!!!!!!!!!!!!!!!!!ooooooooooooooo**********%%%%%%$$$$$$$$$$&&&&&&&&&&############################################################################################&&$$$$$$%*!....  .                             ..........................................                                            ...................
                                                        .....................  ..;o*%%$$$$$$$$$$$$$$$$$$%$$$$$&&$$$$$$$$$$$$&&&&&&&&####&&&&&&&&####&&&&&$$$$%%%%%*****oooooo!!!!!!!!!;;;;;;;;;;;;;;;!!;!!!!!!!!oooooooooooooooo*******%%**%%%$$$$$$$$$$&&&&&&&&&&#####################################@######################################################&&&$$$$$%o;...   .                            .........................................                                            ...................
                                                        ...................  ...;!**%%%%%%%%%$$$%%%%$$$$$$$$$%%%%%$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$$$$%%****ooo!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!ooooooooooooooo**********%%%$$$$$$$$&&&&&&&&&&&###########################################################################################&&&&&$$$$$*o. ...                             .........................................                                            ...................
                                                        ............. ....  ...;!o*%%%$$$$$$$$$$$&&&$$$%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$&&&&&&&&&&&&&&&$$$%%***o**oo!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!;;;!!!!!!!!o!ooooooo!oooo**o*******%%$$$$$$$$$&&&&&&&&&&&&#############################################################################################&&&$$$$*!...                             .........................................                                             ..................
                                                        ............. ..   ....;**%%$$$$$$$$$$$$$$$$$&&$$$$$$$$&&$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$%%***ooo*o!!!!;;;;;;;;;;;................;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!ooooooooooooo*****%%$$$$&$$$&&&&&&&&&&&&&############################################################################################&&&&&$$%*!.                              ........................................                                             ..................
                                                        ...........  ...  ....!*%%$%%%%$$$$$$$$$$$$$$$$$&&&&&&&&&&&&&&&&&&$$$$&&&&&&&&&&&&&&&&&$$$$$%%****oooo!!!!;;;;;;;;;;;.........................;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!oooooooooooo***%%$$&&&&&&&&&&&&&&&&&&############################################################################################&&&&&$$$$*;.. .                         ........................................                                             ..................
                                                          ...... .  ...    .;o***%%$$$$$$$$$$$&&&&&&&&&&&&&&&&######################&&&&&&&&$$$$$%%%**oooooo!!!!;;;;;;................................;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!oooooooooo***%%%$$&&&&&&&&&&&&&&&&&###################################################################&&############&######&&&&&&&&&&&$$o!.                           .......................................                                             ..................
                                                           .... .   ...    .ooo*%$$$$%%$$$&&&&&&&&&&&&&&&&###&&&&########&&&&&##&&####&&$&&$$$%%%%%%oooo!!!!!;;;;;;....................................;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!oo!ooooooo**%%%%$$$$&&&&&&&&&&&&&&&##############################################################################&&&&&&&&&&&&&&&&&&&&$&$*!..     ...          .     ......................................                                               .................
                                                           ....     ..    .!oo*%$$$%$&&$$&&&&&&&&###&&&##&&&&&&&###&&&&&######&&##&&&&&&&&$$$$%%***o!!!!!!;;;;;.........................................;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!ooooooo***%%%$$$$&&&&&&&&&&&&&&&&################################################################################&&&&&&&&&&&&&&&&&&&$*!.        ..               ....................................                                               .................
                                                            ..           .;!o*%$$$$$$&&&&&&&&&###&&###############&&&&&#&&&&&&&&&##&&&&$$$%%%%**o*o!!!!;;;;;;;..........................................;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!ooooooo****%%%$$$$$$&&&&&&&&&&&#########################################################################################&&&&&&&&&$$$$o;.....   ..         .... ....................................                                               .................
                                                                      ...;!oo*$$$$$$$$$$&&&&&&&&&&##&&&#########&&&###&&&&&&&&&&&&$$$$$$$%%%***ooo!;!!;;;;................................................;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!ooooooo****%%%$$$$$$$&&&&&&&&&&###########################################################################&&&&&&#####&&&&&&&&$&&$$$$%!;                   .......................................                                               .................
                                                                     ....!o!o%$$$$$$$$&&&&&##&&###########&&&$$&&&&&&&########&&&&$$$$$$%%%**oo!!!;;;;;;;..................................................;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!ooooooo**%%%$$$$$$$$&&&&&&&&&&&#################################################################################&&&&&&&&&&&&&&&$%%$*!.                  ......................................                                               .................
                                                                    ... ;;o*%$$$$$$$$&&&&##&&###&&#####&&&&&&&&&&&&###&&&###&&&&$&$$$%%%%**oo!!!!!;;;;......................................................;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooo****%%$$$$$$$&&&&&&&&&&#####################################################################&#########&&&&###&&&&&&&&&&$%%%*!;.                ......................................                                               .................
                                                                      ..;!*%$$$$$$$$&&&&#&&#########&&&&$&&&&&&&&&&$$&&&&&&&&&&$&&$$%****oo!!!!;!;;;;........................................................;;;;;;;;;;;;;;;;!!!;;!!!!!!!!!!!!!!!!!!!!!!!!!ooooo****%%%%$$$$$$&&&&&&&&&&#######################################################################&###&&#####&&&##&&&&&&&$$$*ooo;..              .....................................                                                .................
                                                                      ...!*%$$$$$$$&&&##&&&######&&&&&&#####&&&&$$&##&&&&&&&&&&$$$%%****o!!!;;;;;..;..........................................................;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!ooooo****%%%%%$$$$$$$&&&&&&#&####################################@##################################&&######&&#&&&&&###&&&&&%o;;!!;...             .................................                                                   .................
                                                                    .  .;o%$$%$$$$&&&#&&&######&&&&#####&&&&##&&#####&&&&&&&&&&$$%%***o!!!;;;;;;;;............................................................;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!oooo*********%%$$$%%$$$$&&&&######################################@@###################################&&&###&&&&&&&&&&&&&$*!.;oo;....            ................................                                                   .................
                                                                       .o%%%%$$$$$&&#&&&#####&&##&&&&##&#####&###&&&&&&&&&&&&&$$%%***oo!!!;;;;;;..............................................................;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!ooooo***********%%$$%%$$$$$&&&&&########################################################################&&&&&&#&##&&&&&&&&$%*;..;o!. .            ................................                                                   .................
                                                                      .;o%%%%$$$&&&#&&&###&&&&#&&#########&&###&&&&&&&&&&&&&$$$$%%*oo!!!;;;;;;;...............................................................;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!;;;;!!!!!!!!!oooooooo*********%$$$%%%%$$$$$$&&&&&########################################################################&&&&&&&&&&&&&&&%!;..;o!.              ...............................                                                  ..................
                                                                      .!*%%%%$$$&&&&&&###&&##################&&&&&&&&&&&&&&$$$$%%**o!!!!;;;;;;................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!ooooooooooo*******%%$$%%*%%%$$$&$&&&&&&######################################################################&&&&&&&&&&&&&$*;. .;!!...           ...............................                                                  ..................
                                                                     .!**%%%%$$$&&#&&##&&##################&&&&##&&#&&&&&$$&$$$%**o!!!!;;;;;;;..............................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!ooooooooooo**********%%$$%%%%%%%%$$&&&&&&&&##################################################&##################&&&&&&&&&&&$*!;. ;!;.  .         ....................... ......                                                   ..................
                                                                    .;!o%%$$$$&&&&&&&#&&################&&&&####&&#&&&&&&$&&$%%**oo!!!;;;;;;................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!oooooooooooooooooooo*****%%%%%%%%%$$$$$&&########################################################################&&&&&&&&&&$%o;..;!;. .         .......................  ....                                                    ..................
                                                                    .;!o%%$$$$&&&&&##&&###################&&&&&&#&&&&&&&&&$$$%%*ooo!!!;;;;..................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!oooooooooooooooooooooo*********%%%%$$$&&&&&#################################################################&&&&&&&&&##&&&&&&$*!..!!;  .        ....................      ..                                                     ..................
                                                                   .;!o%%%$$$$&&&&&&&&###################&&&####&&&&&&&&&&$%%%**oo!!!;;;....................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!ooooooooooooooooooooooooooo********%%%%$$&&&&&#########################################################&&######&&&&&&&&&&&&&&&$%o;;!!. ....     ....   ...........                                                               ..................
                                                                   .;!*%%%$$$&&&&&&&&###################&&####&##&&&&&&&&&$$%%**oo!!;;;;.....................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!ooooooooooooooooooooooooooooo******%%%$$&&&&##############################################################&&&&&&&&&&&&&$&&&&$&$o!;!;..  .   ......        ...                                                                ....................
                                                                   .;!*%%$$$&&&&&&######################&#####&&&&&&&&&&&&$$%**oo!!;;;.......................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!ooooooooooooooooooooooooooooooooo******%%%$$$&&############################################################&&&&&&&&&&&&&&&&&&&&$$$%o!;;.............          .                                                                ....................
                                                                  .;;!*$%$$$&&&&&&#####################&#####&&&&&&&&&&&&$$$%*oo!!;;;;........................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!ooooooooooooooooooooooooooooooooo******%%%$$$&&&##############################################################&&&&&&&&&&&&&&&&&$$$%*!!...... ....                                                                             ....................
                                                                 ...;!*$$$$&&&&&&&###########################&&&#&&&&&&&&&$$%*oo!!;;;.........................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!oooooooooooooooooooooooooooooooooo******%%$$$&&&###################################################################&&&&&&&&&&&&&&$%o!;..........                                                                             ....................
                                                                  ...o%$$$&$$&&&&#############################&&##&&&&&$&&$%%*o!!;;;..........................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!;!!!!!!!!!oooooooooooooooooooooooooooooooooooooo***%%%%$$&&&&&#########################################@#########################&&&&&&&$&&&$$%!;...........                                                                          ......................
                                                                  ..;*$$$$$$&&&&##############################&&###&&&&&&&$%%*o!!;;...........................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!oooo**********%%%%%%%%%***oooooooooooooooooo*****%%%$$&&&&&######################################################################&&&&&$$$&$*!;........                                                                           .......................
                                                                  .;o%$$$$$&&&&###############################&&&##&&&&&&&$$%*o!!;;..........................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!oooo*******%%%%%%$$$$$$$%%%%%**ooooooooooooooooooooo********%%%$$$$&&&########&&&#################&&&&#&&########@@@@@@@@@####################&&&&$$$$*!........                                                                         .........................
                                                                 ..!*%$$$$$&&&&#&#############################&#####&&&&&&&$**o!;;...........................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!oo***%$$$$$$$$$$$$$$$$$%%%****oooooooooooooooooooooooooooo*****%%%$$$$&&&&&&&######################&&&&&&&&#########@@@##########################&&&&&&$%o;........                                                                   ..............................
                                                                  ;!o%%$$$&&&&&&&&######################&&#########&&#&&&&&$%*oo;;............................................................................;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!oo**%%%%$$$&&&$$$$$$$$%%%%**oooooooooooooooooooooooooooooooooooo****%%$$$$&&&&##&&&&&#################&&&&&&&&&&#########################################&&$$%!... .....  ..        ..                                           .......................................
                                                                 ;;!%%%$$$$&&&&&&#####################################&&&&&%*oo!;;..........................................................................;;;;;;;;;;;;;;;;;;;;!!!!!!!oooo***%%%%$$$$$$$$$$$$%%**oooooooooooooooooooooooooooooooooooooooooo*****%%%%$$$&&&&&&&&&&&#############&&&&&&&&&&&&###@######################################&&&$*;.. .....    .....                                               ........................................
                                                                ...!*%$$$$$&&&&&&######################################&&&&$*oo!;.......................................................................;;;;;;;;;;;;;;;;;;;;;!!!!!!ooo****%%%%$$$$$$$$$$$%%***oooooo!!!!ooooooooooooooo!oooooooo!!!ooooooooooo****%%%$$$&&&&&&&&$$&&&##########&&&&&&&&&&&&&##@@#######################################&&&$o........       .... ......                                    ..........................................
                                                                .;;!*%%$$$&&&&&&&#######################################&&&$oo!;;.......................................................................;;;;;;;;;;;;;;;;;!!!!ooo****%%%%%%%%%%%$$$$$%%%*oooo!!!!oooooooooooooooooooooooooooooooooo!ooooooooooo*****%%%$$$$&&&&$$$$$$$&&#######&&&&&&&&&&&&&&##@@########################################&&$*;.......                 ...........        ............................................................
                                                                .;!o%$$$$$&&&&&&######&&###########################&####&&&%oo!;;....................................................................;;;;;;;;;;;;;;;;;!!!!ooo*****%$$$$$%$$$$$$%%%***oo!ooo!!ooo!oo!oooooooooooooooooooooo!!!!!o!!!oooooooooooo****%%%%$$$&&&&$$%$$$$$&&#####&&&&&&&&&&&$&&###@@#########################################&&$!.. .....                        ...........        ....................................................
                                                                .;!*%$$$$$$&&&&&&&&&###########################&#########&&$*o!;;..................................................................;;;;;;;;;;;;;;;!!!!ooo**%%%%%$$$$$$$$$$$$%%%*oooooooo!ooooooooooooooooooooooooooooooo!!!!!!!!!!!!!oooooooooo*****%%%%$$$&&&$$$$%%%%$&####&&&$$$$$&&$$$$&###@@###########################################&o;.....                          ...........        ....................................................
                                                               ..;o***%$$$$$&&&&&&##########&&##############&#&&###&#####&&$*!;;...................................................................;;;;;;;;;;;;;!!!!oo**%%%$$$$$$$$$$$$$$%%**ooooooo!!!!ooo*oo*oo*oooooooooooooooooooooo!!o!!!!!!!!!!!ooooooooo******%%%%$$$&&$$$$%%%$&####&&&$$$$$$$$$$$&&##@@@###########################################&*;.....                          .......................................................................
                                                               ..;o**%$$$$$$$&&&####&&#######&&&###########&&&&&&&&&#####&&$o!;.................................................................;;;;;;;;;;;;!!!!ooo***%$$$$$$$$$$$$$$%%%**oooooo!!!!oo**%$%%%*%*%%*****o***oo******ooooo!!!!!!!!!!!!!!!!oooooooo******%%%%$$$&$$$$%%%%$&&&&&$$$%%%$$$$$$$&##@@@#############################################%;....                           .......................................................................
                                                             .. .;!*%$$$$%%%$&&&####&&&&####&&&&&######&####&&&&&&&&&###&&&$*!;;..............................................................;;;;;;;;;;;;;!ooo****%%$$&$$$$$$$$$%%%**oo!o!ooo*%%**%*%$$&&&$&&&&&&$$&&$%%%%*****%***ooo!!!!!!!!!!!!!!!!!!ooooooo******%%%%$$$&&$$$$%%$$&$$$$%%%%%%$$$$$$$&###@##############################################$o;... ..                        .............................  ............        ....................
                                                            .   .;!*%%%%%%*%$&&&&&&&&&&####&&&&&&#####&&&##&&&&#&&&&&###&&&$*!;...............................................................;;;;;;;;;!!!!!o*****%%$$$%$$$$%%%****oooooo***o**%&$&&###############&&&&$$$$$%%%%***ooo!!!!!!!!!!!!!!!!!!!oooooooo*****%%%%%$$&&$$$%%%%%$%$$%%%%%$$%%%$$$$&##@@##############################################$o;... ..                        .............................. ............        ....................
                                                          ..   .;;!*%%%%%*%%%$$$&&&&&&&&&&&&&&&&&&##&&&&&&&&&&&&#&&&&###&&$$*!;.............................................................;;;;;;;;;;!!!!!oo*****%%%%%%%%%*****oooooooo!o*$&$$&#######@######&&&&####&&&$$$$%%**ooo!!!!!!!!!!!!!!!!!!!!!!ooooooo******%%%%%$$$$$$%%%%%%%%$$$%%%%%%%%%$$&&#@@@##############################################&*;... .                         .......................................................................
                                                             .;;.;!**%%%*%%%%%$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&###&&&&&&&&&&$$$%o;............................................................;;;;;;;;;;!!!!oooo**************oooooooooo!!o$$%%&#@###&&##########&%%$$$$$$$$$$%%**ooo!!!!!!!!!!!!!!!!!!!!!!!!oooooooo*****%%%%%$$$&$$%%%%%%%%$$$$$$$$$$$$$$$&#@@@##############################################$*!...                           ..............................................................  .......
                                                        ...;;;..;!ooo*****%%%%$$$$$&&&&&&&#&&&&&&&&&&&&&#####&&&&&&&&&&&&&$$$*!...............................................;;........;;;;;;;;;;;;;;!!!!!ooo**********oooooooo!ooo!o$%%$&####$&%!o&&&#&##&&&&$%%%%%$$%%%%**ooo!!!!!!!!!!!!!!;;!!!!!!!!!!!!oooooo*******%%%%$$$$$$%%%%%$$$$$$$&&&$$$$$$$&#@@##############################################&$*!....    .                ........        ..................................................          
                                                     ...;;;;;;!!!!;;!!!oo****%%%%$$$&&&&&&&&&&&&&&&&&&##&&&##&&&&&&&&&&&&$$$$%o;..........................................;;;;;;;;;;.......;;;;;;;;;;!!!!!oooooooooooooooooooo!!!o!!%$*%$##$*%$$*o!*&####&&&%*%$%***%%%%***ooooo!!!!!!!!;;;;;!!!!!!!!!!!!!!!oooooo*******%%%%$$$$$$%%%%%$$$&&&&&$%%**%$$&&##@###############################################$*!.....   .                ........        ..................................................          
                                                     ...;;;!!!;....;;;;;!!o**%%%%%$$&&&&&&$$&&&&&&&&&#&&&&###&&&&&&&&&&&$$$&&$*!......................................;;;;;;;;;;;;;;;;....;;;;;;;;;;!!!!!ooooooooooooooooooo!!!!o!o%$o%###*ooo$%%%%&#&#&##&$*%$*o****%***ooooo!!!!!!!!!;;;;;;;;!;;!!!!!!!!!!!ooooo*******%%%%%$$$%%%%%%%%$$&&$$$%%****%$&&#@@###############################################$o;.....                   ..............................................................   .           
                                                 ....;;;;..         ..;;;;!o***%%%%$$$$&&$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&$$$&&$&$o;;.................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!oooooooooooooooooo!!!!!o%$o%&&$*!;;!o%$$&&&&###&##&%o!********ooooo!!!!!!!!!;;;;;;;;;;;;;!!!!!!!!!!ooooo*******%%%%%%%$%%%$%%%%$&&$$%%%******%$&&####@###########################################&%!;......                 ..............................  ..... ....                ...                 
                                               ....;;..                ...;!o****%%$$$$&$$$$$$&&&&&&&&&&&&&&&&&&&&&&&$$$&&&&$$$$o;...........................;;;;;;;;;!!;;;;;!!;;;;;;;;;;;;;;;;;;;;;!!!!!!!ooooooooo*ooooooo!!!!!*$%*$&%!!;;;;;!*%&&&&&&&#$o!!oo***ooooooo!!!!!!!!;;;;;;;;;;;;;;;;!!!!!!!!!!!ooooo********%%%%%%$$%%%$$$$$$$$%%%*%%**ooo****%%$&#@@########################################$*!;;........     ........        ........................        ... ..                                 
                                          .........                       ...;!o**%$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&$$&&&&&&$&&&*!;.............;;..;;;;;;;;;!!!!!oooooooooo!!!!!!!;;;;;;;;;;;;;;;;;!!!!!!!!ooooooooooooooooo!ooo*%**$$*!;;;;;;;;;!*%%%*o;;!o******oooooo!!!!!!!;;;;;;;;;;;;;;;;;;!!!!!!!!!!!oooooo********%%%%%%%%%%%$$$$$$%%******oooooooooo*%&###@######################################$o!........       ........        ........................         .....                                 
                                                                             ...;!o*%$%%%%$$$$$&&&$&&&&&&&&&&&&&&&&&&&&&&&&&$&#&$o;.........;;;;;!!!!!!!ooo*****%%%%%%%%****oooo!!!!;;;;;;;;;;;;;;;;;;!!!!!!!!oooooooooooooooooo*****$$*!!;;;;;;;!!!;;;;!!ooo**o*****ooo!!!!!!;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!oooooo*********%%%%%%%%%%$$&&&&$%%*%***********%%$$&###@#####################################&%o!........       ........        ........................           ...                                 
                                                                               . .;;!o*%%$$$$$$$$$&&&&&&$$$&&&&&&&&&&&&&&&&&&&##&%!;.....;;!!ooooo********%%$$$$$$$$$$$$$%%%****oo!!!!;;;;;;;;;;;;;;;;;;!!!!!!!!ooooooooooooooooooo*%$$*o!!!;!;;;;;;;!oo!**ooo*ooooooo!!!!!;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!oooooooo*********%%%%%%%%%$&&&&&&&$$%%%%********%$&&##########################################&*!;..........     ........        ........................   ...     ...                                 
                                                                                  ....;o%%$$$$$$$$&&&&$$$$$$&&&&$&&&&&&#&&&&&&&#&$*;;..;!!o****o******%%%%%$$$$&$&&&&$$$%%%****oooooo!!!!;;;;;;;;;;;;;;;;;;!!!!!!oooooooooooooooo!!*$$o;oooo!;;!!oo!!oo!ooooooooooooo!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!oooooooo*********%%%%%%%%%$$&#####&&$$%**********%$##@@#@@####################################$*!;..........      .......   ...................................                                         
                                                                                      ..;o%$$$$$&&&&$$$$$$$$$$$$&&&&&&&#&&&&&&&##&$o;;;!o****o******%%%*%$$$$$$$%$%%%******oooooooooo!!!!!;;;;;.;;;;;;;;;;;;!!!!!!!!oooooooooooo!!!o***o!!!!!!!oooooooooooooooooooo!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!oooooooo**********%%%%%%%%%$&#######&$%%%%********%$####@@###################################&$o;............     .......   .................................                                           
                                                                                        ..;o%$$&&&&&$$$$$$$$$$$$&$$&&&&&&&&&&&&###&%!!!*oooo**ooo**%%%%%%%***********%**********oooooooo!!!;;;.......;;;;;;;;!!!!!!!!ooooooooo!!!!!!!!!!!ooooooooooooooooooooooo!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!ooooooo************%%%%%%%%$&#######&%%%%%%%%*****$&#@#@@###################################&%o;..............     .....   .............................                                               
                                                                                         ...;*$&$&&$$$$$$$$$$$$$$$$&&&&&&&&&&&&&###&%oo!!!!!!!!o*ooooo!!!!!!ooo****oo**%%%%%%*****ooooo!!!!!!;;.........;;;;;;!!!!!!!!!!!!!!oo!!!!!!!!!!!!!ooooooooooooooo!!!!!!!;;;;;;;;;.....;..;;;;;;;;;;;;;;;;!!!!!!!!!!oooooooo************%*%%%%%%$&#######&$$%**%%%%***%$&#@######################################&%o;...............    .....   ............................                                                
                                                                                           ...!*$$$$$$$$$$$$$$$$$$&&&&&&&&&&&&&&####&%o!;;;;;;;;;;;;;!!!!ooooo**o%$$%%$$#&##&&&&$$%*oooo!!!!!!;;...........;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;...............;;;;;;;;;;;;;;!!!!!!!!!ooooooooo**************%%%%%%%$&&&$$&&##&&%%*****%%$&##@@#@@#################################&&$o!;..............     ...................................    ......                                      
                                                                                             ..;o%$$$$$$$$$$$&$$$$&&&&&&&&##&&&&&###&$*!;......;;;;;;!!!ooo%$$&&&&#######&&$$##&###&$%o!o!!!!;;;;...........;;;;;;!!!!!!!!!!!!!!!!;;;!!!!!!;;;;;;;;;;!!!;;;;;;;;;;;;................;;;;;;;;;;;;;!!!!!!!!!!ooooooooo*****************%%%%$&&&$%%$####$%****%$$&&##@@#@@##################################&$%o;...............     ......    ...................   ............                                      
                                                                                             ...;o%$$$$$$$$$$$$$$$&&&&&&####&&&&&&&&&&$*!;.......;;;!!oo*%&&&&##&&$*o%&$%*!;!$&##&&&&#&$o!!!!;;;;;............;;;;;;!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;..................;;;;;;;;;;;;;!!!!!!!!!!oooooooooo****************%%%%$&&&$%$&###&%%*%$&####@@@@##@@@################################&&&$*!................   ..........................  ...............                                        
                                                                                               ..;!*$$$$$$$$$$%$$&&&&######&&&$$$$$$$&$$o!;......;;;!!o*$&&&###$%o!;;o%%$$%%%&&&&&#&$$&$*o!;;;;;;;..............;;;;;;!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;...................;;;;;;;;;;;;!!!!!!!!!!!oooooooooo******************%%$$$$$$$&###&%%*$&##@##@@##@@@@@################################&&&&$o;............................      .....................                                              
                                                                                                ...!%&$$$$$$$%$$&&########&&$%%%%%%%%%$$%o;......;;!!o%$&&&##&$*!!;..;o%%%$$&&&###&$$$%*oo!!;;;;................;;;;;;;;;;!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.....................;;;;;;;;;;;;!!!!!!!!!!!ooooooooooo******************%%%$$$$$$&####&&&###@@@@@@@@@@@@@###############################&&&$$&%!;.. ...................              ............                                                    
                                                                                                 ..;o%$$$$$$$$$$&&#######&&$%**********%%*o;......;;!o%$$$&#&&%*;;....!o%$&&&&&&&&&&&$%**o!;;;;;..................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;....................;;;;;;;;;;;;;!!!!!!!!!!!oooooooooooo******************%%$$$$$$&&#####@######@@@@@@@@@@###############################&&&$$$$*!;..................            ..............                                                       
                                                                                                  ..;*$%%$$$$$&&&########&$%*oooooooooo****!;....;;!o*%$$$&$%**o;;......;o%$&&&&&$$*oo!!!!;;!!;;;..................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;...................;;;;;;;;;;;;;;!!!!!!!!!!!!ooooooooooooooo**************%%%$$$$$$&##########@@@#@@@@@@@@##############################&&&&&$$$$o!;.................       ..............                                                            
                                                                                                  ..;o%%%%%$$&&&&#######&$%*oo!!!!ooooo****o!;....;;!o****%*o!oo!!;........;!ooo!;;;!!!!!!!!!;;;;..........   .....;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;....................;;;;;;;;;;;;;;!!!!!!!!!!!oooooooooooooooooooo**********%%%$$$$$$&#########@###@@@@@@@@@@#############################&&&&&&$$$$*!;.................................    ..                                                          
                                                                                                   ..!****%%$&#&&#######&$*o!!!;!!!!oooo****o!;......;;;;!!!!!!!!!!;;;;;;;;;;;;!!!ooooooo!!!;;;;.........     .....;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.....................;;;;;;;;;;;;!!!!!!!!!!!!!!oooooooooooooooooooooo********%%$$$$$$&&###########@@########################################&&&&$$$$%o!;...     .................. .                                                                    
                                                                                                   ..;o*oo**%$&&&&&&&&&&$%*o!;;;;;;!!!ooo*****!;...........;;;;;!!!!!;!!!;!!!!!ooooo*ooo!!!;;;;..........      .....;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.....................;;;;;;;;;;;;!!!!!!!!!!!!!!ooooooooooooooooooooooo********%%%$$$$$&&&##################################################&&&&&&$$$$$%o;...............;;......                                                                         
                                                                                                   ..;oooooo*%&&&$$$$%$$%*o!!;;;;;;;;!!oo**%%$*!;.............;;;;;!ooooo!o!oooooooooo!!!;;;;;............      ......;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;...................;;;;;;;;;;;;;!!!!!!!!!!!!!!oooooooooooooooooooooooo********%%$%$$$&&&&###########################################&&&&&&&&&&&&&$$$$$%o!;.....................                                                                         
                                                                                                   ..;oo!!!!o*$$$$%%**o**o!!;;;;;;;;;;!!!o**%$%*!;.............;;;;;!!!!;!!!!oooooo!!!;;;;;;;.............       ......;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.................;;;;;;;;;;;;;!!!!!!!!!!!!!!ooooooooooooooooooooooooo********%%%%%$$$&&&###########################################&&&&&&&$&$$$$$$%$$$%*o!;....................                                                                        
                                                                                                   ..;oo!!!!o*%%%%%*oo!!!!!;;;.....;;;;!!oo**%**!;..... ...........;;;;;;;!!!!!!!!;;;;;;;;;;............         ......;;;;;;;;;;;;;;;;;;;;!!!!!!;;;;;;;;;;;;;.............;;;;;;;;;;;;;!!!!!!!!!!!!!!!!ooooooooooooooooooooooooooo*******%%%%%$$$$&&&#############@@@#############################&&&&&&&&&&&$$$%$$%*o;;........       .....                .....                     .                            
                                                                                                   ..;o!;;;!!o******oo!!;;;;;;......;;;;!!ooo!!;;....... ...........;.;;;;;;;;;;;;;;;;;;;;;.............         ........;;;;;;;;;!!;;;;!!!!!!!!!!!!!;;;;;;;;;;;;;;;........;;;;;;;;;;;;!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooo******%%%%%$$$$&&&################################################&&&&&##&&&$$$$$$*o;;.......       ........          ....                      ..                              
                                                                                                   ..!!!;;;;!ooo*****o!!!!!!;;......;;;;!!!!;;.......... ..................;;;;;;;;;;;;...................         ......;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!ooooooooooooooooooooooooooooo*****%%%%%%$$$$&&&&#######################################&&&&&&&&&&&&&&&&&&&$$$$$%o!;........     ......  .    ..........  ...... .......   ....                              
                                                                                                  ..;!;;;;;;;!o!o********oo!!;.......;;;;;;............. ..................................................         .....;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooooo****%%%%%%$$$$$&&&########################################&&&&&&&&&&&&&&&&&&&&$$$$%*!;.............    ......................................                                 
                                                                                                 ...!!;.....;!!!ooo**%%$%%*o!;;.....;;;;................ .      ...........................................         ......;;;;;;;;!!!!!!!!!!!!!!!!!!!!!oooo!!!!!!!!!!!;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooooo****%%%%%%%$$$$$&&&&############@@#########################&&&&&$$$$$$$&&&&&$$$$$$%%*o;;..............;;;;;;;;;;.............   .......                                       
                                                                                                 ..;!!......;!!!o!oo****%**o!;;.............   ............           .....................................          .....;;;;;;;;!!!!!!!!!!!!!!!!!!!!oooooooo!!!!!!!!!!!!;;;;;;;!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooooooo***%%%%%%%%%$$$$$$&&&#######################################&&&&&&$$$$$$$$$$$$$$$$$%%**o!;;;;;;;;;;;;;;;............      ..    ...                                           
                                                                                                 .;!!;......;!!!!!!!ooooooo!!;;..........      ................          ...................................         ......;;;;;;;;!!!!!!!!!!!!!!!!!!!ooo**ooo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooooooo***%%$%%%%%%%$$$$$$&&########################################&&&&&&&&&&&&$$$$$$$$$$$$$%%*o!!;;;;;;;;.................   ........                                              
                                                                                                ..;!;;......;!!!!!!!!!!!!!!;;;....  ....   .....................        ....................................         ......;;;;;;;;;!!!!;!!;;;;;!!!!!!!oo***oo!!!!;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooooo***%%$%%%%%%%%$$$$$$&&&###################@##################&&&&&&&&&&&&&&&&&&&$$$$$$$%%**o!;........................      ..                                                
                                                                                               ..;!!;.......;!!!!!!!!!;;;;!!;;..     .. ...........................    ......................................        .......;;;;;;;;!!!;;;;;;;;;;;;!!!!!oo**oo!!;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooo**%%$$%%%%%%%%%%$$$$$&&&##############@###################&&&&&&&&&&&&&&&&&&&&&&$$$$$$$$$%%*!;;.........          ......                                                      
                                                                                              ..;!!;........;!!!!!!!!!;;;;;;!;.....................................  ........................................  .      .......;;;;;;;!!!!!!;;;;;;;;!!!!!!oo***o!!;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ooooooooooooooooooooooooooo**%%$%%%%%%%%%%%$$$$$$&&&###################################&&&&&&&&&&&&&&#&&&&&&&&&&&&&$$$%*o!;.....             ........                                                    
                                                                                             ..;!!;;........;!!!!!!!!!!!!!!!;;................  ......................................................;;;;;..           ......;;;;;;!!!!!!!;;;;;;!!!!!!!oo***!!!;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!oo!!oooooooooooooooooooooo**%%$%%%%%%%%%%%%$$$$$$&&&###############################&##&&&&&&&&&&&&&&########&&&&&&&&&$$%*!;;......  .................                                                   
                                                                                           ...;;;;;........;;!!!!!!!!!!o!!;;..................  .......;;;;;;;......................................;;;;;;;;.            .....;;;;;;!!!!!!!!!!!!!!!!!!ooo***o!!!!;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ooooooooooooooooooooo**%%$$%%%%**%%%%%%%%$$$$$$&&&##############################&&##&&&&&&&$&&&&&&##########&&&&&&&$$%oo;;;...........     .......                                                  
                                                                                          ..;;;;;..........;;!!!;;!!!!!!;;..........................;;;;;;;;;;;;;..................................;;;;;;;;;.             ......;;;;!!!!!!!!!!!!!!ooooo*****o!!!;;;;;;;;;;!!!!!!!!!!!!!!!!oo!!!!!!!!!!!!!!!!!oooooooooooooooooooooooo*%%$$%%%****%%%%%%%%%%%$$$$&&&###############################&&&&&&&&&$$&&&&&&&&###########&&&&&$%%*o!;;;......    ............                                                
                                                                                         ..;;;;;..........;;!!!!!!!!!;;;.............................;;;;;;;;;!!;;;..............................;;;;;;;;;;;.             .....;;;;!!!!!!!!oo*%$$$%%*******oo!!!;;;;;;;;;!!!!!!!!!!!!!!!!!oooo!!!!!!!!!!!!!!!ooooooooooooooooooooooo**%%$%%%%*****%%%%%%%%%%%$$$$&&&##############################&&&&&&&&&&&$&&&&&&&&&&#######&#&&&&$$$%%**o!;;......................                                              
                                                                                       ..;;;;;;..........;;;;!!o!!!;;;....................................;;;;;;;;;;;............................;;;;;;;;;;;...       .. .....;;;;;!!!!oo*%$&&$%%%********oo!!!!;;;;;;;!!!!!!!!!!!!oooooooooooo!!!!!!!!!!!!!!!!!oooooooooooooooooooo*%%$%%%%%******%%%%%%%%%%%$$$$$&&&####&&&&&&###################&&&&&&&&&&&$$$$&&$$$&&&&&###&&&&&&&&$$$$%%*o!;;.........    .........                                            
                                                                                    ..;;;;!;;;.............;;;!!!;;;..........................................;;;;;;;;;...........................;;;;;;;;;;...    ..........;;;!!!!!oo*$$$%%*%%%%%%***oooo!!!!!;;;;;;!!!!!!!!!!!ooooo*****ooo!!!!!!!!!!!!!!!!!!ooooooooooooooooooo**%%%%%%%%******%%%%%%%%%%%%%$$$$&&&&&&&&&&&&&&&&################&&&&&&&&&&$$$$$$$&$$$$&&&&&&&&&&&&&&&&&$$$%%oo!;;;.....      ...........            .                           
                                                                                  ..;;;!!!;;;..... ..........;;;;;......................  ......................;.;;;;;;;;.........................;;;;;;;;.... ...........;;;;!!!oooo%$$%%***%%%%***oooo!!!!!!!;;;;;;;!!!!!!!!!!ooo*$&&$%*ooo!!!!!!!!!!!!!!!!!!oooooooooooooooooo**%%%%%%%%%******%%%%%%%%%%%%%%%%$$$$&&&&&&&&&&&&&&&################&&&&&&&&&&$$$$$&&&&&&&&&&&&&&&&&&&&&&&$$$$$%*o!;;;.....    ..............           ...                       
                                                                             ....;;;!!!!;;;.....    .........;;;..................................................;;;;!!;;;.........................;;;;;...............;;;;;!!!!!ooo*%%*****%%%***oooo!!!!!!!!;;;;;;;;;;!!!!!!oo*%$&&$$%*ooo!!!!!!!!!!!!!!!!!!!oooooooooooooooooo*%%%%%%%%%*******%%%%%%%%%%%%%%%%%$$$$$$$$$&&&&&&&&&&&&&#############&&&&&&&&&&&$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$%*o!;;..... ....  .........      ...   .                        
                                                                        ......;;;;!!!;;;;....           .....;...................................;;;;;;;;........;;;;;!!!!!;;..........................;;............;;;;;;;!!!!!oooo**oo********ooooo!!!!!!!!;;;;;;;!!!!!!ooo**%$&&&$%%*oo!!!!!!!!!!!!!!!!!!!ooooooooooooooooooo**%%%%%%%%%********%%**%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$&&&&&###########&&&&&&&&&&&$$$$$$$&&&&&&&&&&&&&&&&&&&#&&&&&&$$%%*o!;....................      .......                       
                                                    ......................;;;;;;;;;;;.....               .....................................;;;!!!!!!;;;;;;;;;;;;;;;;!!!oo!;;.........................;.............;;;;!!!!!!!!!!!!ooo****ooooooo!!!!!!!!!!!!;;;!!!ooo*****%%$&&$%***oo!!!!!!!!!!!!!!!!!!!ooooooooooooooooooo**%%%%%%%%%%*********************%%%%%%%%%%%$$$$$$$$$$$$$$$$$&&&&#########&&&&&&&&&&&$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&$$%*o!;;;.............................         .            
                                                        ...........;;;;;;;;;;;;;.......                  ..............................;;;;;;;;!!o****oooooooo!;;;..;;;;!!o***!;;;............;;;;;;;;;;......................;;;;;;;!!!oooooo!!!!!!!!!!;!!!!!!!!!oo****%%%%%$$&$$%%**ooo!!!!!!!!!!!!!!!!!!!!oooooooooooooooooo***%%%%%%%%%%************************%%%%%%%%%%%%%%%%%%%%$$$$$$$$&&&&&#######&&&&&&&&&$$$$$$$$$$&$$$$&&&&&&&&&&&&&&&&&&&&&&&$$%*o!!;;..............................     .            
                                                            .......................                     ............................;;;;;;!!!!oo*%%$$$$$$$$&&$*!!;;;;;;;;!!o*%%%o!;;;;.;;;;;;;;;;;;;;;;;..........................;;;;;!!!!!!!!!!!!;;;;!!!!!!oo*****%%%%%%%$&&$%%%**oooo!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooo**%%%%%%%%%%*********************************%%%%%%%%%%%%%%%%%%%$$$$$&&&&######&&&&&&&&&$$&&&&&&$&$$$&&&&&&&&&&&&&&&&&&&&&&&&&&$$%*oo!;;...........................    ...           
                                                              ..   .........                            ........................;;;;;!!!!ooo**%%%$$$$&&&&&&&&&$%o!;;;;;;;!!!o%$&$*o!;;;;;;;;;;;;;;;;;;;;;;;........................;;;;;;;;!!;;;;;;;;;!!oo*******%%%*%%%$$&$%%%%***oooo!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooo**%%%%%%%%%%%***************************************%%%%%%%%%%%%%%%%%$$$$&&&&&####&&&&&&&&&&&&&&&&&&&$$$$$&&&&&&&&&&&&&&&&&&&&&&&&$$$%**oo!!!;;;;;;;.......................           
                                                                                                       ........................;;;;!!!!ooo***%%%%$$$$&&&&&&&&&&&%*o!;;;;;;;!!o%$&&$*o!;;;;;;;;;;;;;;;;;;;;;;;........................;;;;;;;;;;;;;;;!oo**********%%%%$$$$$%%%%***ooooo!!!!!!!!!!!!!!!!!!!!!ooooooooooooooooooo*%%%%**%%%%%**oo***************************************************%%%%%%%$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$$$$&&&$$&&&$$$$$$$$$$$%%*o!!;;...............;;.......            
                                                                                                      .......................;;;;;;!!!!ooo****%%%$$$&&&&&&&&&&&&&$%*o!!;;;;;!!o*%$$$%o!;;;;;;;;;;;;;;;;;;;;;;;;.........................;;;;;;;;.;oo*******%***%%%$$$$%%%%******ooooo!!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooo**%%%*****%%%*oooo*******************************************************%%%%%%$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$$%%*o!!;;;;;;;;;......;;;;;;....            
                                                                                                     .....................;;;;;;!!!!!!ooooo**%%%$$$&&&&&&&&&&&&&&&&$%%oo!!;;!!!o**%%%***!!;;;;;;;;;;;;;;;;;;;;;;;;.......................;;;;;!!oo**********%%$$$%%%%%%%******oooooo!!!!!!!;;;;;!!!!!!!!!!!ooooooooooooooooo**%%%**********oooo**************************oooooooooooooooooooooooooo********%%%%%$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$$$%%%**oo!!!;;;;;;;;;;!!;;....             
                                                                                                    .......................;;;;;;;!!!!oooo***%%$$$&&&&&&&&&&&&&&&&&&&&$%**o!!!!oooooo*****o!;;;;;;;;;;;;;;;;;;;;;;;;;;..........;;;;;!!!!!oooooo********%$$$%%*oo*******%%***oooooo!!!!!;;;;;;;;!!!!!!!!!!!oooooooooooooooo****************ooo**************************oooooooooooooooooooooooooooooooooo******%%%%$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$%%*oo!!!!;;;;;;;.....              
                                                                                                   ...........................;;;;;;!!!ooo*%%%$$$$$&&&&&&&&&&&&&&&&$$$$$$$%**oo!!!!!!oo*%$$%*!!;;;;;;;;;;;;;;;;;;;;;!!!;;;..;;;;!!!!!ooooo***********%%%%%*oo!ooo****%%%***ooooooo!!!!;;;;;;;;;;!!!!!!!!!!oooooooooooooooo**********************************************oooooooooooooooooooooo!oooooooooooooooo******%%%$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$$$$%%%**o!!;;;;;;;.....           ....
                                                                                                  ....;;;;......................;;;!!ooo**%%%%$$$$$$$&&&&&&&&&&&$$$$$$$$$$%%**o!!;;;!!!o*%&&&%*!!;;;;;;;;;;;;;;;!!!!oo****o!!!!oooooooooo************oooooooooo****%%%***oooooooo!!!!;;;;;;;;;;;;!!!!!!!!!oooooooooooooo************************************************oooooooooooooo!!!!!!!!!!!!!!!!!!!!!!!ooooooo****%%%%%$$$$&&&&&&############&&&&&&&&&&&&&&&&&&&&&$&&&&&$$$$$$%%**o!!;;;;.....          ......
                                                                                                  ...;;;;;....................;;;!!!ooooooo***%%$$$$$&&&$$$$$$$$$$$$$%%%%%%%**o!!;;;;!!o*%$&#&$%oo!;;;;;;;;;;;;;;;!!!ooo*oo!!!;;!!oooooooo**ooooo!!!!oooooooo**********ooooooooo!!!;;;;;;;;;;;;;;!!!!!!!!!oooooooooooooo************************************************ooooooooooooo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooo****%%%$$$$$&&&&&&################&&&&&&&&&&&&&&&&&&&&$$$$$$%%**oo!!;;......         ......
                                                                                                  ...;;;;;...................;;;!!!;;;;;;!!!!oo*%%$$$$$$$$$$$$$$$$$%%%%%%*****oo!!;;;;!!o*%$&&$$%%*o!;;;;;;;;;;;;;;!!!!!!!!;;;;;;;;!!!!!!!!!!!!!!!oooooooo*********oooooooooo!!!!!;;;;;;;;;;;;;;;!!!!!!!!oooooooooooooo***********************************************oooooooooooooo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ooooo*****%%%%$$$$&&&&&##############&&&&&&&&&&&&&&&&&&$$$$$$%%%%**o!!;;.....     ..........
                                                                                                 ...;;;;;;...................;;;;;;;..;;;;;;!!ooo**%%%$$$$$$%%%%%%%%%%****oooooo!!!!!!!!o**%%$$$%%%%*o!;;;;;;;;;;;;;;!!!!!;;;;....;;;!!!!!!!!!oooooooo**********oooooooooo!!!!;;;;;;;;;;;;;;;;;;;!!!!!!!oooooooooooooo***********************************************ooooooooooooo!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;!!!!!!!!!!!oooooo****%%%%$$$&&&&&##############&&&&&&&&&&&&&&&&&$$$$$$%%%*oo!!;;..................
                                                                                                 ..;;;;;;..............................;;;;;;!!!!oo***%%%%%%%%%%%%%*****ooooo!!!!!!!!!!!oo****%%%%%%%%*o!!;;;;;;;;;;;;;;;;;;;;.......;;;;!!!!ooooo****ooooooooooooooo!!!!!!;;;;;;;;;;;;;;;;;;;;;;!!!!!!!oooooooooooo************************************************oooooooooooo!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!ooooo****%%%%$$$&&&&############&&&&&&&&&&&&&&&&&&&&&$$$$%%*o!!;;................
                                                                                               ....;;;..................................;;;;;;;!!!!ooo****%%%**%*******ooooo!!!!!!!!!!!!oooo***%*%%%%%%%**o!!;;;;;;;;;;;;;;;;;..........;;;;;!!!!!ooo!!!!!!oooooo!!!!;;;;;;;;;....;;;;;;;;;;;;;;;!!!!!!!oooooooooooo*****************ooo****************************oooooooooooo!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!ooooo****%%%$$$$&&#############&&&&&&&&&&&&&&&&&&&&&&$$$%**o!;.............;
                                                                                              ...........................................;;;;;;;;!!!!!oooo***********ooooo!!!!!!!!!!!!!!!!oooo****%%%%%%%%**oo!!;;;;;;;;;;;;;;;.............;;;;;;;!!!!!!!!!!!!;;;;;;..............;;;;;;;;;;;;;!!!!!!!!ooooooooooo****o**********oooooo**************************oooooooooooooo!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!oooooo***%%$$$&&&&###########&&&&&&&&&&&&&&&&&&&$$$$$*o;;..   ......;;!
                                                                                              ...............................................;;;;;!!!!!!!ooooooooooooooo!!!!!!!!;!!!;!!!!!!!ooooo*****%%*%%%**oo!!!;;;;;;;;;;;;..................;;;;;;;;;.;;;....................;;;;;;;;;;;;;;!!!!!!ooooooooooooooo***oooooooooooooooo*********************oooooooooooooooooo!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!oooooo****%%$$$&&&##########&&&&&&&&&&&$$$$$$$$$$%o!;.........;;!!o
                                                                                              .....;..........................................;;;;;;;!!!!!!!!!!ooooooo!!!!!!!!;;;;;;;;;;!!!!!ooooo**************oo!!!!;;;;;;;;;....................................................;;;;;;;;;;;!!!!!!!oooooooooooooooooooooooooooooo!!ooo********************ooooooooooooooooo!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!oooooo***%%%$$&&&##########&&&&&&&&&&&$$$$$$%%o!;;.....;;!o***
                                                                                              ................................................;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;!!!!!!ooooo************oooooo!!;;;;;;;;................................................;;;;;;;;;;;;;;!!!!!!!ooooooooooooooooooooooooooooooooooo**************oo**ooooooooooooooooooo!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!ooooo***%%%$$&&&&##########&&&&&&&&&&$$$$%*oo!!!!!o**%%$$
                                                                                              ...................................................;;;;;;;;!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;!!!!!!ooooo***********oooooooo!!!;;;;.................................................;;;;;;;;;;;;!!!!!!!!oooooooooooooooooooooooooooooooooo*********ooooooooooooooooooooooooooooo!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!oooooo***%%$$$&&&###########&&&&&&&&&&$$$$$$$$$$&&&$$
                                                                                              ....................................................;;;;;;;;;;!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;!!!!!!ooooo**********ooooooooooo!!!;;;;............................................;;;;;;;;;;;!!!!!!!!!oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!ooooo**%%%$$$&&&###########&&&&&&&#######&&&&$$
                                                                                              ......................................................;;;;;;;;;;;;!!!!!!!!!!!!!;;;;;;;;;;;;;;;;!!!!!oooo*********ooooooooooooooo!!;;;..........................................;;;;;;;;;;;!!!!!!!!!!ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!ooooo**%%%$$&&############&&&########&&&&&$
                                                                                               .........................  ..........................;;;;;;;;;;;;;!!!!!!!!!!!!;;;;;;;;;;;;;;;;!!!!!ooooo******oooooo!oooooooooooo!!!;;;....................................;;;;;;;;;;;!!!!!!!!!!oooo!o!!!oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;..........;;;;;;;;;;;;;;;;;;;;;;;;!!!!;!!!!!!!!!!!!!!oooo**%%$$&&&###################&&&&&&
                                                                                                 .......................     .......................;;;;;;;;;;;;;;;;;;;;!!!!!!;;;;;;;;;;;;;;;!!!!!oooooo****ooooo!!!!!!!!!!!!!ooo!!!!;;;................................;;;;;;;;;;;!!!!!!!!!!oo!!!!!!!!!!!!!!!!ooooooooooooooooooooooooooooooooooooooooooooooooooooo!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;....................;;;;;;;;;;;;;;;;;;;;;;!!;;;!!!!!!!!!!!!!!!oooo**%$$&&#######################
                                                                                                    ............ ..            ......................;;;;;;;;;;;;;;;;;;;;;!!!!!;;;;;;;;;;;;;;!!!!!oooooooooooooo!!!!!!!!!!!!!!!!!!!!!!!!;;;;........................;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooooooooooo!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;..............................;;;;;;;;.!oo!;;;;;;;;;;;;;;!!!!!!!!!!!!ooo**%$$&&####################
                                                                                                                                ........................;;;;;;;;;;;;;;;;!!;;;;;!;;;;;;;;;;;;!!!!!!oooooooooooooo!!!!!!!!!!!!!!!!!!!!!!!!!!!;;;;...................;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooooo!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;......................;;;.;.....;;;;;;;;;;;;;!!!!!;;;;;;;;;;;;;;;;!;;;!!!!!!ooo**%$&&##################
                                                                                                                                 ...........................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!oooooooooooo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;;............;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooooooooooooooooo!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........................;;;.;;;;;;;;;.;;;;;;;;;;;;;;;!!!!!!;;;;;;;;;;;;;;;;;!!!!!ooo*%%$&################
                                                                                                                                  ...........................;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!oooooooooo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ooo!!!;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooooooooooooo!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........................;;.;;..;................;;;;;;;;;;;;!!!!!!!!;;;;;;;;;;;;;!!!!!!ooo*%$&&#############
                                                                                                                                   ..........................;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!oooooo!!!!!!!!!!!;;;;;;;;!!!!!!!!!!!!!!!!!!!!!ooooooo!!!!;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ooo!!!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;......................................................;;;;;;;;;;;;;;;;;!!!!!!!;;;;;;;;;;;;;!!!!!!o**%$&###########
                                                                                                                                     ........................;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!ooooo!!;;;!!!!!!;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!oooooooo!!!!!!!!!!!!!;;;;;;;;;;;;;;;;!!!!!!!!!!;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;............................................................;;;;;;;;;;;;;;;;;;;;;!!oooo!!;;;;;;;;;;!!!!!!oo*$&#########
                                                                                                                                      .......................;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!oooo!!!;;;;;!!!!!;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!oooooooo!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;!!!!!!!!;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;..............................................................;;;;;;;;;;;;;;;;;;;;;;;;;;!!o!!!!!;;;;;;;;;;!!!!o*%&#######
                                                                                                                                       .......................;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!oooo!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!ooooooo!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;............................;..................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!ooo!!;;;;;;;;;;;!!!oo%$#####
                                                                                                                                        ........................;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!oooo!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!oooooo!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;...........................;;.......................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!;;;;;;;;!!!o*$###
                                                                                                                                         .......................;;;;;;;;;;;;;;!!!!!!!!!oooooooo!oo!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!oooo!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;........................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!oo!!!;!!;;!!;!!!o%&&
                                                                                                                                          ......................;;;;;;;;;;;;;;!!!!!!!!ooooooooooo!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!oooo!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;...........................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!ooo!!!!!!!!!!!!!o*%
                                                                                                                                           .....................;;;;;;;;;;;;!!!!!!!!!oooooooooooo!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!oo!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!;;;;;;;;;;;;;;;;;;;;;!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;..............................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!o*ooo!!!!!!!!!!o
                                                                                                                                            ....................;;;;;;;;;;;!!!!!!!!!oooooooooooo!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!oo!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!;;;;;;;;;;;;;;;;;;;;;!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.................................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!;!!!;;!ooooo!!!!!!!!!
                                                                                                                                             .................;;;;;;;;;;;!!!!!!!!!!!oooooooooooo!!;;;;..;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;...........;;;;;;;;;;;;;;;;;!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!;;;;;;;;;;;;...................................................................................;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!o*oo!!!!!!!
                                                                                                                                             ..................;;;;;;;;;!!!!!!!!!!!oooooooooooo!!!;;;...;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;;............;;;;;;;;;;;;;;;;;;!!!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!;;;;;;;;......................................................................................;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oooo!!!!!
                                                                                                                                              ...............;;;;;;;;;;!!!!!!!!!oooooooooooooo!!!;;;....;;;;;;;;;;;;;;;;;;;;;;;;;;;..;;;;;;;;!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;;.;..................;;;;;;;;;;;;;!!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!;;;;;;;;........................................................................................;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oo**oo!!
                                                                                                                                              ..............;;;;;;;;;!!!!!!!!!!o!ooooooooooooo!!;;;......;;;;;;;;;;;;;;;;;;;;;;;;;;...;;;;;;;;!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;...........................;;;;;;;;!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.........................;................................................................;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oo***o!
                                                                                                                                               ............;;;;;;;;!!!!!!!!!!!!!!!!ooooooooooo!!;;;......;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;............................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.....................;;;..;;;;;;.............................................................;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!oo!!!ooo*%*;
                                                                                                                                               ............;;;;;;;;!!!!!!!!!!!!!!!!oooooooooo!!;;;........;;;;;;;;;;;;;;;;;;;;;;....;;;;;;;;!!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;.............................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;........................;;;;;;;;;;;;;.............................................................;;;;;;;;;;;;!!;;;;;!!!!!!!!!!!!!!!!!!!!!!!!oooooooooo!!ooooo***
................                                                                                                                               ..............;;;;;!!!!!!!!!!!!!!!!ooooooooooo!!;;;.......;;;;;;;;;;;;;;;;;;;;;;;;....;;;;;;;!!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;................................;;;;;;;;;;;;;;;;;;;;;.;;;;;;;..............................;;;;;;;;;;;;;;;;;;............................................................;;;;;;;;;;;;;;!;;;;;!!!!!!!!!!!!!!!!!!!ooooooooooooooooooooooo**
................                                                                                                                              ...............;;;;;;!!!!!;;;!!!!!!!!ooooooooo!!;;..........;;;;;;;;;;;;;;;;;;;;;;.....;;;;;;;!!!!!!!;;;;;;;;;;;;;;;;;;;;;;;..................................;;;;;;;;;;;;;;;;;.......................................;;;;;;;;;;;;;;;;;;..............................................................;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooo*
................                                                                                                                             ................;;;;;!!!!!!;;;;!!!!oooooooooooo!!;;...........;;;;;;;;;;;;;;;;;;;..........;;;;;!!!!!!;;;;;;;;;;;;;;;;;;;;;....................................;;;;;;;;;;..........................................;;;;;;;;;;;;;;;;;;;;;...............................................................;;;;;;;;;;;;;;;;;;!!!!!!!!!!!!!!!!!!oooooooooooooooooooooooooooo
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
                                                                                                                                          .                                                                                                                                                                           .                                                                                                                                                                                             
                                                                                                                    .@&               ##     #&             !;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    .. ;@&                                                                                                                                                                                                                                                                                                                                            
                                                                                                           ;%$$*            %@$     %#&*;          ;*&$    ;#*    ***%!