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