                                       :*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?;,                                      
                                     :?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%+:                                   
                                   :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+:                                
                                 :?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%;,                             
                                +#@@@@@@#SS%??*****??%%S##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*,                           
                              ,%@@#%?+;:,,              ,,:;+?%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?:                         
                             :?%*:,                            ,:*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?:                       
                           ,:;,                                    ,+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*,                     
                         ,;:                                          :*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S;                    
                       :+;:                                             ,*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                  
                    ,;*+:                                                 :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                 
                  ,;?*:                                                    ,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:                
                 ;??:                                                        *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:               
               ,*#+                                                           %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,              
             ,+#S;                         :;*????+;,                         :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*              
           ,+S@S:                        ;S@@@@@@@@@#?:                        %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;             
          ;%@@S:                        +@@@@@@@@@@@@@@?:                      ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,            
        :?@@@#;                         %@@@@@@@@@@@@@@@S,                     %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:            
      ,+#@@@@+                          +@@@@@@@@@@@@@@@%,                    ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+            
     :%@@@@@S,                          ,*@@@@@@@@@@@@#*,                     +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*            
    ;S@@@@@@+                             :+%##@@##S?;,                      ;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?           ,
  ,*#@@@@@@@;                                ,,,,,,                         :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?          ,*
 :%@@@@@@@@#:                                                              ;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?         ,?@
;S@@@@@@@@@#:                                                            :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+        ,?@@
#@@@@@@@@@@#;                                                           :#@@@@@@@@@@@@@@@@@@@@@@@#S%SS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:       :%@@@
@@@@@@@@@@@@;                                                          :#@@@@@@@@@@@@@@@@@@@@S*;,,   ,,:+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?       ;S@@@@
@@@@@@@@@@@@*                                                          ?@@@@@@@@@@@@@@@@@@@@+,            :#@@@@@@@@@@@@@@@@@@@@@@@@@@@#;     ,+#@@@@@
@@@@@@@@@@@@%,                                                        ,#@@@@@@@@@@@@@@@@@@@S,              *@@@@@@@@@@@@@@@@@@@@@@@@@@@*     :?@@@@@@@
@@@@@@@@@@@@#:                                                        ;@@@@@@@@@@@@@@@@@@@@@+              ?@@@@@@@@@@@@@@@@@@@@@@@@@@%,   ,+#@@@@@@@@
@@@@@@@@@@@@@+                                                        +@@@@@@@@@@@@@@@@@@@@@@?:           +@@@@@@@@@@@@@@@@@@@@@@@@@@S:   ;%@@@@@@@@@@
@@@@@@@@@@@@@S:                                                       ;@@@@@@@@@@@@@@@@@@@@@@@@%+;::,,,:+%@@@@@@@@@@@@@@@@@@@@@@@@@@S:  :?@@@@@@@@@@@@
@@@@@@@@@@@@@@?,                                                      ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%, ,*#@@@@@@@@@@@@@
@@@@@@@@@@@@@@@;                                                       ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,,*#@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@#;                                                       *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?:*S@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@#;                                                       *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?*S@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@#;                                                       ;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@#*,                                                      ,*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@?:                                                       ,*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@S+,                                                       ,+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@%;                                                         :+%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@?;,                                                         ,:+?%#@@@@@@@@@@@@@@@@@@@@@@#S%?*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@S+,                                                            ,::+*??%%%SSSSS%%?*+;::,  :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?;,                                                                                 ,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S*;,                                                                            ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?;,                                                                       ,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@