@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+- .+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:     .-*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=   :*=  -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#=.      =**@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#-.--.          .+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%.                 .-%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                 . :%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%.                 .*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=                  *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#                    %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-                   +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                  -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:                 -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-                 #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+.         .  .*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:       =#**%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@: 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#--:.        .-#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@- 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.                .:*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                  -%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#                    *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                      *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#-                       =@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@%%+=---::.                         :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@%%%%#%%@@@@@#***++=.              :*:                  .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
.         +@@+.:::.          .:-=++*%@@*                   +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
           -: .#@@@@--+=#++#%@@@@@@@@@@@=                  :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                 .:--+*%@@@@@@@@@@@@@@#-=                  .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                          ..  .::::::.                     -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%
                                                          .%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* 
                                                         +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=  
                                                         .+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:   
:                                                          .-=+#%@@@@@@@@@@%#*+++**#%@@@@@@=    
