, :                                                    
                                                   :,    ,:::      :~+: :                                               
                                        , ~:, +,~ : ,= =:~~ ,  ?~I?=IZ7$=~:    ,                                        
                                    ,,=:=+~+==?~Z$ZN$O7Z+Z++,=,?Z$8ZII$Z77,:                                            
                                  , :::,+++ODNNNNNMNNNMDZD$$~8OI8ON8ODNNNNN7=~::,,                                      
                                 ::,:=8OD8DDDDMNMMMMNDDNDDDDZDD8NO8OMNMNNNDODO7+,:~                                     
                                =?$7$DZDDD8ONNDNNNNNNNDDDDNN8D88NDDDNNMMMNDDNMN$$ ~                                     
                             ,:~~O88DODNNMN8MNMZDD8DDNNDMMDNDNDD8DDNNMNMMMMMMMNDM8?,                                    
                            ,=Z8ODDDODNNNMMNDDDO88DNNNMDNNDDD888OODNNNMMMMMMMMNMNM$7=                                   
                           ,+88DDDDD8NNMNDONODD8DDNMMMMNND8D8NNNNMMD8NMMMMMMMMNNMMM8O,=:                                
                           ?$88NNDD8DNNMDMD88ONMDNDMMNDNDDNNNDDD88NNDMNMMMMMMMMNMMMMM7~                                 
                        , ?$NNNDODDDNDNDDMNNDDNMMMMMMMDDNDDZ8NDDDM8DD8NMNMMNMMMMMMMMMNZ,:                               
                         ,$D88D8ODDND8NN88OD8DNNNNMMNDDDOO8O8DND8NNN8DNNMMMNMMMMMMMMMNN7=,                              
                         OZDD88Z8DDNDDDN8$88D8DMMNDMD8D8DDOO8O8NDNN8MDDNMMMMMMMMMMMNMMMD7:                              
                        ,8ONDDO88D8NDD$OOZ88MDD8NNNDD8D88ODONDDDDDNDDDNDMNMMMMMMMMMMMMMM8=~,,                           
                        =$8DDN8OND88OZ8ODODD88DN8ODODOODD8N8DZDO8ND8DNDNMMNMDDNMMMMMMMMMM7+:                            
                        :ZN8DD8DN88ODD8MNDNDNNDMNND88OD8DDO88DDDDDNDNDNNNMNMMMMMMMMNMMMMDZI                             
                      ,,+8DND88OOOOOZONNMMNDNN8DND8DDDDZODODO88DZODMDNNNMNNNDNNMNMNMMMMMMMZ+~                           
                     ,, $8ONO8D88D8$O8DNNNMDNNND8O8O$Z$7OO88D888OD8DNMMMMMMMNNNMNNMNMMMMMNM87,                          
                     ,,==OD88D88OOZO88ZNNNNNDDDO7I7I7I+II7Z$OOOZ8ONNNNMMMMMMMNN8NNMMMMMMNMMMD?~ ,                       
                    ,  +~Z88D8ZOO7OZO8DNDNNNDZ7??I==~?+??+7?7ZO8ODDMNNNMMNDNDNDDNMMMMMMMMMMMM$  ,                       
                       =ZOZ88DD8OZOZO8DDD8D8I++===~~~==+=+=++7ZZZZO8OD8MMMMNMMDMNMNDDMMMMMNMM$:~,                       
                    ,,,8DZO8O8D88O$7OZ$$8OZI+~~~~~::~~~=~+=+==+?$ZO88DMNDNNNDDDNMNND8DNMMNNMMN,~                        
                      ,?7OZZDNND$8Z777$7Z$I=~~~=~~:::~~~~~==~===+?7Z$O8OD8OD8DNMNMDNNNNNNMNMMNO,                        
                   ,  ?8N8Z8NDD8D8D$?7I$II=+~~~:::::::::::~~~~~~==?II$Z888D8DNN8NDDDDNNMMMNMMMM,                        
                   =~=DZ8DODDNOD8O8I77I?+=~~:~:::::::::::~~~~~~~~=+=I?7$ZO88D8DDDNDNNDNNMMMNMMMN,                       
                   +8ZONDD888DD8N877II+=~~~~::::::::::::::~::~:~~~====?II$8Z88DDNDM8DNNNNNDNMMMMD,                      
                   :8NMMN8D8MD88NDOII==~~~~::::::::::::::::::::~~~~~~=+???I$O88DDDM8DDNDDDNNNMMMND?                     
                   7~DDMDNZ8DNODD8$+??~~:::::::::::::::::::::::~~~~~~~==+?I7$ZOD8DNDNN8O8NDNMNMMMMO ,                   
                   +IONNMND888DDNI+=~~::::::::::::::::::::::~~:~~~~~~~==+?II7$ZOZDDNMDD8NMDNNMMNMMD:                    
                   =O$NDNM888ODNO+=~~~:::::::::::::::::::::~:::~~~~~~====+??I7$ZO8ODNNNMDNNNNNMMMMN+,                   
                    7NDNDNNDNNDD$=~~~:::::::::::::::::::::::::::~~~~~====++II77ZO88MNNNDMMMNMMMMMMI:                    
                    ?ODNNNNDN88ZI=~~:::::::::::::::::::::::::::~~~~======++?I$$ZZO8DMMMD8NMMNMMMMN+                     
                    ,I8NNNDDDD8O?=~~:::::::::::::::::::::::::::~~~~=~~===++?I$ZZO888NMMNMNMNNNMMM$:                     
                    ,~88NNNNNDZI+~~::::::::::::::::::,:::::::::::~==+++++??II7ZOO8O88NMMNDMNNMMMN?                      
                   =III+NN8DDZDI+=~::::::::::::::::::::::::::::~~=+??7???I$I$ZOOO8OO8DNMM88NMMMM~,                      
                    $IZDD8D8DDDI+=~::::::::::::::::::::::::::==+I$$ZZI+?++??77ZOOOOO8DDNNMNNMMMD,                       
                    ,~:7ZZDDD8N$+=~::~~===~~::::::::::::::::+?$7I?+++++?I?IIII77$$$ZO8DN8MMNNNM,                        
                      ,:8MNND8ND+~=====+IIIII$+~~:::::::::~~=+?7++=7?77Z7$O$III?I77$ODDNNNMNN8+                         
                      :?8DZNDODD+=????=~~~~===+===~~::::::=+I$?++I:$ MZZ77Z$7??+?I7$O8DMNNNMNNZ,,                       
                       +Z+?8OZD8+====~==?~~=7I7?+==~:::::~=IZ7=~:,,=$Z$=+I$7?++++?I$Z8DNMNMMNNZ:~ ,                     
                        ,7?I$OZD+~=~=+?+I7IZ N7:~=~~~:::~~+I77?=~~~+=+??+??++++++??7Z8DNNMMNNDMD+,~                     
                        ,,,~~~=+$~~~~+7?=::Z7$?~+=~=~~::~~=?II?+=~~~~~==++==+++++??IZDDDNMNDDDMM8==                     
                             =IIO=~~~~~++=+==~~~~~~~~~~::~+??I?+==~~~~~~=~===++++II7Z8DDNNND8OMMD?: ,                   
                             ::,O~~~:~~~~~~~:~~::~~~~~:~~~=+II?+=~~~====~~~==+++?II$O8DDDMNDDMMM+::                     
                                 ,~:::::~~:~::::~~~~~~:::~=+II?+==~~~~~~~~~===++?I77O8DDDMNMMMDO?,                      
                                  ~::::~~~~:::::::~~~~~::~=+I77?=~~~~~~~~~~====??I$$8DDDDMMMMO~:?                       
                                  :::~~~~~:~::::::~~~~~::~=?7$I?I=~~~~~~~~~~==++?I$OO88DDNMMMMMD,                       
                                  ,:~~~~~::::::::::~~~~::~=?II7?7$~::~~~~~~====+?7ZOO88DDNMMMMMMMN                      
                                   ~::~:::::::::::~~~~::::~+7III7Z=~~:~~~~~~==+?I7ZZO88DNMMMMMMMMMMN,                   
                                   ~~~~~::::::::~:~~~~~~~~+7I$7?$?=~~~~~~~~~+=+III7ZO88DNMMMMMMMMMMNNN                  
                                   ~~~~~~::::::~~:::~====++?I7I?++=~~~~~~~~==++III7ZO88DMMMMMMMMMMNNNNMN~               
                                  8O=~~~::::::~~:~~~~~~~=~====+==+====~~~~~==+?77I7$O8DDMMMMMMMMMDNNMMNMMN              
                                O8888=~~~:~:~~~::~~~~~=:~~~~~~~~=+=+++=+=+====??I77ZODDDMMMMMMMMMMDDNNNNMMMM            
                               8O8OD8=~=~~~~~~~~~~~~~~~~:~~~::~~====++======++??777Z8DNNMMMMMMMMMMM8DDNMNMMNNN          
                             ,OO8O88O7=~~~~~~~~~~~~~~~~~=========++??I++=====+?7777ZODNNMMMMMMMMMMNZDDNMNNMNNNNI        
                            ~OO888O88O=~~~~:~:~~=++???~=~~:,:,:~,=7II+===~===+?77$OZ8NOMMMMMMNNNMNM88DNNNMMNNNNMN~      
                            OOO88ZO8Z88=~~~~:~~~~~~=+++=++++~==+=++=++==~~~==+?7$ZO8DZ8MMMMMMNNDDDN8O8NNNNMMMNNNNNN     
                           ZZOO8O8OZ8OOZ=~=~~~~~~~:~~~====~~~~=~==++++======++?7$O8DOZNMMMMNDDDDNNNODDDNNNNNNMNNNNNN8   
                          =O8OOZOOZOOZOO8=~~~~~~~~~~~~~~=~~~~~~===++=======+??I$ZO8Z7NMMNNNNOO8DDNN8ODDNNNDNMNNNNNNNNN  
                          OZOOZOO$OOOOOOZO+==~~~~~~~~~~~~~~=~=============++I77OOZIIZNMNMNNDD888D8Z8DNNDNNNNNNNNMNNNNNNN
                         =ZZOZZOZZOO$OO$OZZ7==~~~~~~~~~~:~~~~~~~~~~~~~===+?I7$Z8++?$NNNNNND88888DN88DDDNNNNNNNNNMNMMNNMN
                         ZOOOZOO$ZOZOOZZOZZZO$==~~~~~~~::,,::::~~~~~~~~=++?7ZOI+?I=D88NDDDZZZZOZDOOZDD888DD88DNNDNMNNNNN
                         ZZOZOOZOZZOZOOZZOZOOO$$==~~~~:::::::::~~~~~~~=+??7OO~+I+?8DDDNDD8OOOOO$Z$NO8DNDNDNNDNNNNNNMNMMN
                         ZZOOOOZOO$OO$OZOZ$O88OO$$+=~~~~~::::::::~~~~=+?I7O?~+~+=O8N8DDD8OOZZZZZZO888DNNDD88DD8DDNNNNMMN
                         OZOZOZOO$OOZ$ZZZZZZO88OOOODZ=~~~~~:::~::~~==+I7Z7=:~~:~+8DDD8DZZOO$Z$ZZO8IO$DDNDDDDNDNNNNNNNNNN
                         Z$8O$OOOZZZ$OOZ$$OO8Z88Z888D=,+==~=~~~~~=++II7I~::~~:~=8888888D8O8O$$$87$OO8DDDNNDNNNNNDNNNNNNN
                         $O8O$ZZ$OOOZZZZZOOOO8DD8D88DZ,,~++??????????I~,,:,:~:~O88O8888OOZZZ$$88ZOOODOO8DDO8NDNDDDNNNNNM
                         +ZOZZZOZZZZZOZ$ZOOOZ8DD8DDDDO::,=+++++++++??,:,::::::OOZZ$$$OOZZZZOOO8$OZ$788DOODNDDDDDDDNNNNNN
                          ZZZZO$ZZZZZZZZZO88DDDD8DDDDZ~,,:~+++++++=,,:,,:,,:,OZZOO8ZOOOZZ?I$88OIOZZ$88$D88DDDZ8D8ON8NDDN
                         ?OOOZZZZOZZOZ$ZZOD8OZO88DDDDZ:, ,,~=+++:, ,,,,:,,:,OZOZZOZOZZOO$ZO8OOOOOO7OOOO$ZZ88ODDND8DNNNNN
                         ZZOOOZZZZ$ZZZO8OO8OOZ88D8888O:,77+:,=:,, ,, ,, ,:,O$$$OOOZOO$ZZZOOZD8ZZOOZOOZ88OOO8DDD888DOO8DD
                        ~OOOZOOZZZZZZZOOOOOOOO8DDD88OO:$7~:::,,, , ,, , ,:ZZZZZZZZOO$7I7ZOOOOZZZZO8Z$OOO8ZO8$ON7DDDDDDDN
                        OZZZZZ$ZZZZZOZOOO$OOO8DDDDO8OO~+7$I?:,       ,,,:Z7ZOZO$ZZZOZ$OZ88DZZOZOOI8ZZ?ZZZ88$O88888DDODDD
                       ,OOOOZZOZZ$OZOZO8Z$ZOOOD8D8888OO?Z?I8+  , : , ,,,~ZOOO8Z$$Z$$$ZZZOODO88ZZOZZO$8ZZZ8ODOZZNDDZN8D$D
                       OZOOOOZOOOOZZZZOOZO$OOZDD88O8DZZ$ZI??O+,   , ,, :$ZZZOO$I$$$$ZZZOOMOZIOZZ?ZZ8ZZOODZ8ODDODODDDD8DD
                      ,ZZOOOOOOOO$OOOZOOZZ7OO8DD8888DOO77$++O7~,,, ,, :7OOZ$ZZZO$ZZ$ZOZOZOO$O8ZO7ZOO7$ZO8IO8$OOD8888DDDD
                      ZOOOOOOOOOZOOOZZOOZZZO88D8Z88Z8ZZ77?=?++=::  ,,,?$ZZZ77$$O$$$$Z$OZMZZZ$ZO$OZOZZO$ZZOO8$8OZODOO88ZD
                     DOOZOOO8OOOZOOOZOOZZZZO8888Z8OOO8$?+I=:++=7Z=::,,ZOOZ$Z$Z$$OZZ$ZOOO8ZZZZO?ZOOO7ZOZZO$887$ZZOZ8ZDDN8
                    ZDOOOOOZOO8OOOOOOOOOZZ$OOO88ZOO8OOI7++=~,,:,,~+?=$ZOOZZ$$ZOZZ$ZZZODOZZZZOZZZOOOZOOZIO$OOZ$O$$IZ$8O8D
                   OD8OOOOZ8OOOOOOOOOOOOZZZZ888OO$OOO8?II~,~~:+$$77O~ZOZZZZZZ7$ZZOOZON8$$$ZZZZOOOO$ZOZO8OOZ$ZZOZZ8Z$8NZ8
                  ZO88O8O8O8OO88OOOZZOOOOZZ$88OOO$8OOOZ~++:,:~:~+IID=O$$ZZ$ZZZZZZO8OMOZZZ$Z$ZZ$$ZZOOOZ?ZZZ7IDZO8Z88OOOOD
                 +OZ888O8888OOZ8DOOZOOZZOZZ$OOZOO8$O8ZO:+,+~,=?$$II7Z$$ZOZZZ$Z7Z$$MMDZZ$7$ZZZZ$ZZ$OZOOOO8Z$O8$87ZO88Z$ZO
                $OOOOO8OOOO888O888OZOOO$ZOZOOOO$OOZOOZOI,,,~~+,~~+7I$$ZOZZ$$ZZZ$$$ZM$Z$$IZZ$OOZZO$$88ZOZ8?ZODZ87$ZOZZO7$
               O8OOOZO8O888OO88888OOOOOZZZOOZO8$888ZO8O?,,I?~+,~=777ZOZZZ$ZZZZ$Z$ZZN$$$ZZZ$OZZZZ7Z7ZOOZ$ZZ$ZOO8Z$OODO$Z$
              Z8OO8O8OOOOD8Z8D888D8OOOOZZZOZO88ZOOOO8OZZ,7+,:=::?7?$OOZ$$ZZZZZZZZZZ$DOOZOZZOZOZOZOOZOOZZ$OZ$$7IZZZZ8ZO$$
             88O8OO8O8ZOOO8OD88DDNDDOOZZOOO$Z8O8$8OZ8OZZ$,,:~I+??I+OZZZ$ZOZ$ZOZZZ$Z$NNOZ7ZZZOZZOZOO7Z$$ZO$7OZOO$Z$8OZZZ$
             8888O8O8O8DDDOZD8Z8D8888OZOOOO$$OOOZOOO$OOZZ:,=$=++?I?OZOZZZZOZZZZOZZZZ$MN8ZIZZOZZZZ$OZO8ZI77ZZI$Z7O8ZOZ8OO
            O8N8O888ZOOOOOO8DO8O888O88ZOOOOZ$ZOOOOOOZ8O$7~Z$:~=IO+$ZZZZZOZ$O8ZZ7ZZZZ$NMD8ZZOO7ZZ$ZZZZZZ$ZZOO87ODO$ID$DD8
          $8OO88888OOOOOOOO888D8OOOO8D8OOOOO$ZOOZZOO$OOZ$O7,:~$8+?OZOOZZZ$OZ8D$ZZZZOZZMNOZOOZZZ7OZZOZZI7OO$OID8O7OZ8DDDN
         ~O888ODDD88888OO8O8OOD88DDNNNNDOOOOOOOO7OZOO$OZ$O?,:D8~+?ZOOOOZ$ZZOZOZZZZZZZMNDOOZOO7OOZO7Z$Z$$$ZI?$O$$IODO888Z
         O88888ZO8DDDD8DDDDOO88OZO8DD8DDD8OZ$OZZZ$ZZZZZZZOZ?DI~=+8ZOOOOZOOZZ$ZDOZZZONDD8ZZZOOZO$OOOZOZ7$IZ$8OZ$OODD8DDZO
        O88O888888OZ88DNDD8DDDNDDNDD88DDDNOZZ7ZZZ$ZZZ$ZZZO8N,:~=D8ZOZZ$OOZZZZZZ$ZZOMDD88OZOOOOOZO$$ZZOO7ZZ$?$OOOD8D8DD8D
       O8OO8OOO8888DDDDDDD88O88DDD8ZODND88ZZZ$Z$ZZZZZ$$ZZO8D~:ZD+ZZOOOOZOZZZZOZZZONDO8OOZZZOOO$ZOZ$ZOZ7OZZ87ZZZ8NNN8DNND
      O88888O888OO888ZZOO8ZO8DDDDDOOODNNNN8ZZ$$ZZZ$ZZZ$ZZZ88DDD:=OOOOZZZ$ZZZZZZZZND8ZOZOZZOOOOOOZI87ZO7OO$Z$$ODDD8DNNNDD
    =88O888O888OOO88O8888OO88D8DNNNNNNDNNMNZZZ$ZZ$$ZZZZZZOODD7:~+OZZZOZZOZZZ$ZZOND8OZ$OZZ7ZOOOZOOZ$$OZ7IZZZ$I8ONNNNNDZ?I
   $88888OZ88888888OO8DD8DDDNDNNNNNDDDNMDODZZZ$$ZZZZZZZZZOO8DD:7OOZOOOZZOZOZZZONDDOOOZZZO7ZOZ8OOZZOZZOZZZ$OO8NNNNDZOZ$$O
   +8D8DDD8OOOOO88888DD88DDDDDND88DNNNNO8N: Z$ZZZZZZZZZZZ$O8DNN8:OZOOZOOO$$OZZMD88OZZZOOZ$OOZOZOOZZ8ZO$$ZOONNDDO$8$$OZZO
 ,88OO888O8O8DDD8O88DDDDDDDDDDDDNNNN88DDM    ZZZ$ZZZ$ZZZZO88DND:+ZOOOOOZ$ZOZONDOZZZOZOZZZZZOOOZOZZO8OZ$OZDD8O7$$$?$ZDDNN
 88O8DDDDDDD8O8O888DDD8DD8ODDNDDN8O8DDND     ~ZOZZOOOOOOOZZ88DDD?OOOOOO$OZOOND88$ZZZOOOZOOZOO$OZZOO8ZZ7ZOZOZZ8OZOZ8DNN$7
:DDDDNNDDNDNNDDN8O88OOOOO88888O88DNNDN:       +OOOOOOOOOZOZZDDDDZOOOOOOOOO8MDZOO$OZOOOOOOZZOOZ$Z888DOO$7$OZO8ZOODDN8OZ7O
88D8888OOOOOODNNNNNDDD8DD88NNNNDNNNNN:         =OOOOO8OZOZOODDNDOOOOOOOOZNMNDOZOZ$OOOZOOZZ$OOZOO8DDOOOZ$Z$8OZ8NN8OZZZOOO
8DDOO88O8DD88OO8NNODNNNNNNNNNNNNNNNNI           :OOOOOOOZZOO8DDNOOOOOOOONMMNDZZZO$ZZZ$$ZOO$OOZZDDNN7OZO$O8NMN8OZZZ$$ZZOO
ODD8D888OO888O88DNMD88DNMNDDDD8NN8DO             ,$OOZOOZOZZODNNO8OOOOOOMMMND8OOZZOOZZ$OOZ$OOOO8NNNOO8O8DNDO7ZOZOZZ888OD
8DD8D88O8DDNDNNNDDD8NN88DNNDDNDDN8+                OOZOOOZZO8DNN8OOOOOOMMMND88ZOZZZZZZZZOO$OZOO8NMDZO8DDDOOZIOZ$ZZ$88888