                                        :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@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@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?+:                                                                             ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*:,                                                                        +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@