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