                                                                                                                        ,::;++++++;+?#@@@@@@@@@@@@@@@@
                                                                                                                 ,:;+?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                             ,;*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                          :+%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                        ;%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                      :S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                     *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                    +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                   :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                               ,:*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                      ,:;::;+?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                    ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                    ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                    ::%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                      ,*#@###%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                        ,,,,, ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                              ,+?@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                 ;?**?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                    , ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                    :?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                    ,;*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                       ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                         +S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                :;;;+++++*%SSSSSSSS%?*++;;::,                                             :#@@@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                               ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@#S%?*+:                                       +::;?%:+SS; +@@@@@@@@@@@@@@@@@@@@@@@@@#?S@#*
                                ;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S;                                         ,   ,,  :#@@@@@@@@@@@@@@@@@@%:?@@@:  :: 
                                 ,*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S;                                              *@@@@@@@@@@@@@@@%?@@SS, :?S:     
                                    :?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%;                                         ,;*#@@@@@@@@@@@@@@@#;,;,;:   ,      
                                      S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                          :+;****++;;*S@@@@@@@@@@@@@@@@@@@@@:             +
                                      ?###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                       ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:           :#
                                        ,,:?%%%??*+++;:;S@@@@@@@@@@@@@@@@@@@@?:               ,+;::::%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:          ?@
                                                         +#@@@@@@@@@@@@@@@@@@@@?,             ,%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,        :@@
                                                          ,*@@@@@@@@@@@@@@@@@@@@#*,     ,:;+?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+       ,S@@
                                                            :%@@@@@@@@@@@@@@@@@@@@S;,;*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?      ,?@@@
                                                              +#@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,   :*#@@@@
                                                               ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%?@@@@@@@
                                                                 ;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                  ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                    ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                     ,+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                       ,+S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                          :*S@@@@@@@@@@@@@#S%?+;:+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?;++++***??%S#@@@@@@
                                                                             ,;*??%??*+;:,,      +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%             ,:;?S@@
                                                                                                 ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                  :+
                                                                                                 %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                     