@@@@@@@@@@@@@@@@@##########S%?+;:,,                                                             ,;?S############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@#########S%?*;:,                                                                    ,:*%S#S#########@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@########S%?+:,                                                                           :+%SSS##########@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@#######S%?+:,                                                                                :*%SSS##########@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@#######S?+:,                            ,,,,,,,,,,,,,,,,,,,,,                                   ,:*%SSSS#########@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@#######S?;,,                      , ,,, ,                        ,,,                                ,+?SSSSS########@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@####SS?;,                        ,,                                  ,,,                             ,;*%SSSSS########@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@##SS%*;,                    ,,,                                           ,,                            :*%SSSSS########@@@@@@@@@@@@@@@@@@@@@@@@@
@@##SS%?*;,                   ,,,,                                               ,,,                          :+?SSSSS#########@@@@@@@@@@@@@@@@@@@@@@@
#SS%?*+:,,                  ,,,                                                     ,,                         ,+?SSSSS#########@@@@@@@@@@@@@@@@@@@@@@
%?*+;:,,                  ,,,                                                         ,,                        :+%%SSSSS########@@@@@@@@@@@@@@@@@@@@@
+;:,,                  ,,,,                                                            ,,                       ,:*%%SSSSS########@@@@@@@@@@@@@@@@@@@@
:,                    ,,,,                                                              ,,                       ,;*%SSSSS########@@@@@@@@@@@@@@@@@@@@
:,                    ,,,                                                                ,,                       :+?%%SSSS########@@@@@@@@@@@@@@@@@@@
;,                  ,,,,                                                                 ,,,                      ,;*%%%SSS########@@@@@@@@@@@@@@@@@@@
+:   ,,,,          ,,,,                                                                   ,,                       :+**?%SSS########@@@@@@@@@@@@@@@@@@
?;, ,,:;,         ,,,,                              ,,,,,,,,,,,,,,,,,,,,,,                ,,                       ,:;+*?%SS#########@@@@@@@@@@@@@@@@@
%*;,:;++:        ,,,,,                             ,,,,,,,,,,,,,,,,,,,,,,,,,              ,,                       ,,::;*%SSS########@@@@@@@@@@@@@@@@@
#%*;;*??:       ,,,,,                            ,,,,,,,,,,,,,,,,,,,,,,,,,,,             ,,                         ,,,;*%SS##SS######@@@@@@@@@@@@@@@@
#S%**?%?:       ,,,,,                            ,,,,,,,,,,,,,,,,,,,,,,,,,               ,,                           ,:+?%%S%%%%%SS##@@@@@@@@@@@@@@@@
##S%%%%%;       ,,,,,                           ,,,,,,,,,,,,,,,,,,,,,,,,                 ,,                           ,:;+*??*****?%##@@@@@@@@@@@@@@@@
###SSS%%;       ,,,,,                           ,,,,,,,,,,,,,,,,,,,,                    ,,                            ,,:;;++;;;;+?%##@@@@@@@@@@@@@@@@
###SSSS%+,      ,,,,,                            ,,,,,,                               ,,                              ,,,,:::,,,:;*%##@@@@@@@@@@@@@@@@
###SSSSS?:      ,,,,,                            ,,,,,,                             ,                                         ,,;*%S##@@@@@@@@@@@@@@@@
####SSSS%+      ,,,,,,                            ,,,,,,                            ,                                       ,,;+*%S##@@@@@@@@@@@@@@@@@
####SSSSS?:     ,,,,,,,                              ,,,,,,                                                              ,,:;+*?%####@@@@@@@@@@@@@@@@@
#####SSSSS*,     ,,,,,,,                                 ,,,,,,,,                                                      ,:;+*?%SS###@@@@@@@@@@@@@@@@@@@
######SSSS%+     ,,,,,,,,                                                                                           ,:;+*?%%S######@@@@@@@@@@@@@@@@@@@
#######SSSS%+     ,,,,,,,,                                                                                       ,,:;+??%SS########@@@@@@@@@@@@@@@@@@@
@#######SSSS%;     ,,,,,,,,                                                                                    ,,:+*?%SS#########@@@@@@@@@@@@@@@@@@@@@
@@#######SSSS%+,    ,,,,,,,,,                                                                                ,,;+?%SSSS#########@@@@@@@@@@@@@@@@@@@@@@
@@@#######SSSSS?:    ,,,,,,,,,                                                                             ,:;+?%SSSS##########@@@@@@@@@@@@@@@@@@@@@@@
@@@@@#######SSSS%+,   ,,,,,,,,,,,                                                                        ,:;*?%SSSSS##########@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@#######SSSSS?:    ,,,,,,,,,,,                                                                   ,,;+*?%SSSSSS#########@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@#######SSSSS*:   ,,,,,,,,,,,,,,                                                            ,,:+*?%%SSSSSS###########@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@########SSSSS?;,  ,:::,,,,,,,,,,,                                                     ,,:;+*?%%SSSSSSS###########@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@#########SSSSS?+:  ,:;;:,,,,,,,,,,,,,                                             ,,:;+*?%%SSSSSSSS############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@#########SSSS%*;,,:;+++;::,,,,,,,,,,,,,,                                 ,,,:;+**?%%%%SSSSSSS############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@#########SS%??+;;:;+****+;;::,,,,,,,,,,,,,,,,,,,                ,,,,::;+**??%%%%SSSSSSSS##############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@######SS%?**++++++*?%%%??**++;;::::::,,,,,,,,,,,,,,,,,::::;;++**???%%%%%%SSSSSSSSS#############@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@#####S%?**+++++**?%%%%%%%%%%????****++++++++++++++***????%%%%%%%%%SSSSSSSSSS################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@##S%??**+++**??%SSSSSSSSSSS%%%%%%%%%%%%%%%%%%%%%%%%%%%%%SSSSSSSSSSSSS################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@##S%?**+***??%SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS###################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@##S%?*++++*?%SS#########SSSSSSSSSSSSSSSSSSSSSSSSSSSSS#######################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@#S%?*+;:::;*?%S########################################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@