                                                                                                ,,:;*???%%%%SSSSS#########@@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                  ,,;+*??%%%%%SSSSS########@@@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                    ,:+*???%%%%SSSSS#########@@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                     ,:;**??%%%%SSSSS#########@@@@@@@@@@@@@@@@@@@@@@@@
                                                                                                      ,,;+*???%%%SSSSS##########@@@@@@@@@@@@@@@@@@@@@@
                                                                                                       ,,;+*???%%%%SSSSS#########@@@@@@@@@@@@@@@@@@@@@
                                                                                                        ,:;+*???%%%SSSSS##########@@@@@@@@@@@@@@@@@@@@
                                                                                                         ,:;**???%%%SSSSS##########@@@@@@@@@@@@@@@@@@@
                                                                                                         ,,:+*???%%%%SSSSS#########@@@@@@@@@@@@@@@@@@@
                                                                                                          ,:;+*???%%%%SSSSS###########@@@@@@@@@@@@@@@@
                                                                                                          ,,;+*???%%%%SSSSS###########@@@@@@@@@@@@@@@@
                                                                                                           ,:+**???%%%%SSSSS##########@@@@@@@@@@@@@@@@
                                                                                                           ,:;+*???%%%%SSSSS############@@@@@@@@@@@@@@
                                                                                                           ,:;+*????%%%SSSSS#############@@@@@@@@@@@@@
                                                                                                           ,:;+*???%%%%SSSSS#############@@@@@@@@@@@@@
                                                                                                           ,:;+*????%%%SSSSS#############@@@@@@@@@@@@@
                                                                                                           ,:;**????%%%SSSSSS############@@@@@@@@@@@@@
                                                                                                           ,:+**???%%%%SSSSSS############@@@@@@@@@@@@@
                                                                                                          ,,;+**???%%%%SSSSS##############@@@@@@@@@@@@
                                                                                                          ,:+***???%%%%SSSSS##############@@@@@@@@@@@@
                                                                                                         ,:;+**???%%%%SSSSSS##############@@@@@@@@@@@@
                                                                                                        ,,;+**????%%%%SSSSSS##############@@@@@@@@@@@@
                                                                                                        ,:+***???%%%%SSSSSS################@@@@@@@@@@@
                                                                                                      ,,:+***???%%%%%SSSSSS################@@@@@@@@@@@
                                                                                                     ,,:+***????%%%%SSSSSS#################@@@@@@@@@@@
                                                                                                    ,,;+**?????%%%%SSSSSS##################@@@@@@@@@@@
                                                                                                   ,:;+**????%%%%%SSSSSS##################@@@@@@@@@@@@
                                                                                                 ,,;+***????%%%%%SSSSSS###################@@@@@@@@@@@@
                                                                                               ,,:;+**?????%%%%SSSSSSSS###################@@@@@@@@@@@@
,                                                                                            ,,:;+***????%%%%%SSSSSSS#####################@@@@@@@@@@@@
;:,,                                                                                       ,,:;+***?????%%%%%SSSSSSS#####################@@@@@@@@@@@@@
?*+;,,                                                                                   ,:;+***??????%%%%%SSSSSSS######################@@@@@@@@@@@@@@
%??*+;:,,                                                                             ,,:;+***??????%%%%%SSSSSSSS#######################@@@@@@@@@@@@@@
%%%???*+;:,,                                                                       ,,:;+***??????%%%%%%SSSSSSSS#########################@@@@@@@@@@@@@@
S%%%%%???*+;:,,,                                                               ,,::;+****??????%%%%%SSSSSSSSS#########################@@@@@@@@@@@@@@@@
SSSS%%%%%???**+;::,,,                                                     ,,,::;++***???????%%%%%%SSSSSSSSS##########################@@@@@@@@@@@@@@@@@
#SSSSSS%%%%%%???**++;::,,,,                                         ,,,,::;;+*****???????%%%%%%%SSSSSSSSS###########################@@@@@@@@@@@@@@@@@@
####SSSSSS%%%%%%?????**++;;:::,,,,,                         ,,,,,:::;;++*****????????%%%%%%%SSSSSSSSSS############################@@@@@@@@@@@@@@@@@@@@
#######SSSSSSS%%%%%%%??????***+++;;;;::::::::,,,,,,,:::::::;;;+++******?????????%%%%%%%%SSSSSSSSSSS#############################@@@@@@@@@@@@@@@@@@@@@@
##########SSSSSSSS%%%%%%%%%?????????*********+++++++**********????????????%%%%%%%%%%SSSSSSSSSSSS##############################@@@@@@@@@@@@@@@@@@@@@@@@
@@############SSSSSSSSSS%%%%%%%%%%????????????????????????????????%%%%%%%%%%%%%SSSSSSSSSSSSS#################################@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@##############SSSSSSSSSSSS%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%SSSSSSSSSSSSSSSS##################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@###############SSSSSSSSSSSSSSSS%%%%%%%%%%%%%%%%%%%%SSSSSSSSSSSSSSSSSSSSSS####################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@###################SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS##########################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@##########################SSSSSSSSSSSSSSSSSSS#####################################################@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@