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