                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                                      
                                                                                                                                ,+                    
                                                                                    ,%?,                                        ,#+,                  
                                  ,;,                                              :%@#*,                                      ;#@@@#?+;+;      ::    
                                  +@S;,                                        :??S@@@@@#?+:                                ,:?@@@@@@@@@#:     +?:    
                                ,+S@@@*                                        ,*@@@@@@@@@S:                                ;S@@@@@@@@@@@+   ,*?,     
                            ,**%@@@@@@@%*+,                                    ,%@@@@@@@@@?                                  :@@@@@@@@@@@*  ,?+       
                            ,+@@@@@@@@@@@%,                                   :%@@@@@@@@%:,                                  ,#@@@@@@@@@+  :?;        
                              #@@@@@@@@@@S:                                   ,?@@@@@@@@?;:,                                 ,+@@@@@@@@@SSS@S%%%?????*
                              ;?#@@@@@@@@@S,                                 :S#@@@@@@@@@@@#%S?,                             %@@@@@@@@@@@@@@@@@@@@@@@@
                                :%@@@@@@@@%,                                 ,+#@@@@@@@@@@@@@@@%;,                          ,#@@@@@@@@@@@@S*+;++*???*+
                               ,*%#@@@@@@*,                                    ,S@@@@@@@@@@##@@@#@##S:                      ,?@@@@@@@@@@@@?           
                               %@@@@@@@@@@%,                                   ;#@@@@@@@S+:,,;?*+@#?:                        :%##@@@@@@@@@S           
       ,,::;+*+:             ,:%@@@@@@@@@@@+                                  ,?@@@@@@@%         ,,                            ,?@@@@@@@@@+           
 :??%S##@@@@@@@#?+:,,,::;*%S#@@@#@@@@@@@@@@:                                  ,%@@@@@@@#*                                      ,*@@@@@@@@S,           
 :S@@@@@@@@@@@@@@@@@#@@@@@%%*;:,,*@@@@@@@@@%,                                 ?@@@@@@@@@@*                                   ,*#@@@@@@@@@;            
   :;*%#@@@@@@@@@@@@@@@@@@S%*+::;*S@@@@@@@@#:                                ,@@@@@@@@@@@@+                                 :S@@@@@@@@@@@S,           
       ,,;*%S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?,                              ?@@@@@@@@@@@@@*                               ;#@@@@@@@@@@@@@:           
             ,;*?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                            +@@@@@@@@@@@@@@@?,                           ,?@@@@@@@@@@@@@@@*           
                  ,;*?S#@@@@@@@@@@@@@@@@@@@@@@@@+                          :@@@@@@@@@@@@@@@@@S:                        ,*#@@@@@@@@@@@@@@@@#,          
                       ,:+?S#@@@@@@@@@@@@@@@@@@@@S;                        *@@@@@@@@@@@@@@@@@S:                       ,S@@@@@@@@@@@@@@@@@@@+          
                            ,:;+;;#@@@@@@@@@@@@@@@@S*,                     ,?#@@@@@@@@@@@S?+:                          ;%#@@@@@@@@@@@@@@@@@S          
                                ,S@@@@@@@@@@@@@@@@@#%:                       ,:*@@@*::#@@;                               :#@@@%?%S@@@@@#%?+:          
                                ?@@@@@@@@@###S%?*+:,                           %@@+   %@#,                              :%@@@?    *@@@+               
                               :#@@@@@@@S;,,,                                 ;@@?    S@S,                            ,*@@@S;     ?@@@:               
                               +@@@@@@@S;                                    ,%@@S;;;+#@S+;;:,                        ?@@@*,     ,#@@%,               
                                :+?%#@@@@S+,                               ,*%@@@@SSS#@@@SSSS%;                      ;@@#;       *@@%,                
                                    ,:+S@@@#?:                              :+?%SSSSSS##S%??*;,                     +@@#:       :#@@,                 
                                      ,*@@@@@?                                 :?%SSS%%%%?*+;:::,                  :#@#:       ,?@@+                  
                                    :%@@@@#@@@*:,,                            ,;*?SSSSSSSSSSSS%*;,                 ?@@@?,,:;+++?@@@%***+;:,           
          ,::;+**+:,             ,,;%S##@@@@@@@S%?*;:                            ,+?%%S%%%%%???+::;;;;,            :S@@@#SSSSSSS@@@@#SSSS%%+,         
    ,:;+*?%%SSSSSS%?*;,  ,,:;++*?%%%%S@@@@@###SSSSSS%*,                            ,,::::::, ,,:,:+??+,             ,:;++*?%%%SSSSSSSSSSSS%*,         
   ,+%SSSSSSSSSSSSSSSS%????*+;;++?%SSSSSSSS%%%%SS%%?+:,                                                                    ,:*SSS%%%SSSSSS?:,   ,:,   
     ,;*%%SSSSSSSSSSSSSSSS%*;,   ;?SSSSSSSSS?;::::,                                                                          *SSSSSSSSSSSSS%?*;;;,    
        ,;*%SSSSSSSSSSSSSSSSS%?+?%SSSSSSSSSS%;                                                                              ,*SS?*??%%SSSSSSS%%??*+;:,
           ,;*%SSSSSSSSSSSSSSSSSSSSS%%%??*++;,                                                                              ,;*??*;:,,:;++*??%%%SSSS%?
              ,;*%SSSSSSSSSSSSSSSSSS%%*;,                                                                                      ,;*??*+;:::;:,,:+*????*
                 ,;*%SSSSSSSSSSSSSSSSSS%?*;:,                                                                                     ,,:+*?**:      ,,,  
                    ,;*?%SSSSSSSSSSSSSSSSSS%?:                                                                                                        
                       ,;*%%%%%%%%%%%%%%%%*;:,                                                                                                        