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