###################################################################################################
#S#     #           #     #                             #               #   #               #     #
# ### # ##### ### # # #  ## ### ######### ############# # # ########### # # # # ##### #  #### # ###
#   #     #   #   #   #   #             # #     #     # # # #       #     #   #       #       #   #
### # ### # ### # # ##### ####### ####### # ### #  ## # ### ##  ##  # ### ##### ##### ## ##### ## #
# #   #   #   #     #                         #   # #     #   #   #       # #   #   #   #     #   #
# ## ## ### # ### ####  ## #  #  ## ##### ### ##  # # ### # # ###  #####  # # ##### #  #  # #   # #
#       # # #     #   #     #     #       #   #   # #   # # # #           # #     # #     # # # # #
# ### # # # # ### # # # ##  ## #### #### ## ##  # # ##    # # # ### ### ##  #####   ####### ### ###
#   #   # #         #   #         #             #       #             #         # #       #   #   #
# # ##### # ##  ## #### # #### ## # # ### ###   ####### ### ## ###### #   ##### # # ##### ### ##  #
#         #       #     # # #     # #         # #     #             #   # #   #   #   #   #       #
##  # ### # # # ### ##### # # ##### ### # ###     ### # # # # # ### ### # ### ######  # # # # # # #
# # # #   # #   #   #   # #           #           #   # #     # #   # # #   #         #       # # #
# # # # # # # # # ##  # # # ####### ### ###  ##   # ### # # # ### # # # ### ### # ### # ### # # # #
#   #   #   # #   #       #               #     # # #     # # #       #   # #   # #     #   #   # #
# ###  ###### # # # ####### ##### #### #   ###### # # ### #   # ###   # # # # ##### # # # # #   # #
#   #   #   #         #   #   #         #   #   #   #     #     #   # #   # #   #   #   # # #     #
# #   # #   ####### # # # ### # # # ### ### # # # # ##### # ##### #   # # #  ## # ### # # # ##    #
#     #         #     # #     # #   #   #   # #   #     #     #   # # # # #     #       #     # # #
# ### # #### ## # # ###  ## ##  # #  ## # ### ###### ## # ### # ### # # # ##### ####### # ### # ###
# #   #       #   # #         # # #   #     #   #           #     # #   # #     #   # #           #
#  #### ####  ####### # #####     ##  # ### ##  ##### # ### ##### #  ###  # #  ## # # #  #### ### #
#     #     #   #   # #     #   #   # #     # #         #   #   # #         #       # # #         #
####  # ##  # # # # # # ### ### ### # # # ### ####### # ##### # ##### ##### ####### # # # ### # # #
#   # # #   # #       #   #   #         # #         # #       # #       #   #         #   #   #   #
# # # # # ### ##   #  ### ###  ## ### # # # #### ## #  ### #### # ##### # ### # ##### ## ## ##### #
# # # # #   # #     #     #   # # #   # #   #   #   # # #     #   # #   # #   #             #   # #
# # # # ### ### ### # ## ## ##  # # ### #####   # ### # # #   ## ## # #   # ### ####### # ### # # #
#   #   # # #   #   # #       #   # # # # #     # #   # # # #     #   #         #     #   #   #   #
# #######   # ### # # ### ##  # ###   # # # ### # # ### #   ##### #  ##### ###### ### # ### ##### #
#       #   #   #   #   #   # # #   # # #   # #   #         # #   # #     #     #         #     # #
# ### # #  # ## ### ### # ##  # # ### # #  ## ##### # #####   # # #   ###  #  ### ### # # ##### # #
# #   # #   #   # # #   #   # # #     # #         # # #   #   #   #   # #     #     #   #     #   #
# # ### ### # ###     # # # # ### # #     # #####   ### # ## ## ####### # #  ## ##  ##### ###  ## #
# # #   # #   #   # #     # #     #     # # #   # # #   # #   #     #     #               # #     #
# # ###   # #   ### # ### # ## #### #   # #   #   # #   #     ### ##  # # # ### ### ### ### # # ###
# #   #         #   # #   #       # #   #   # #     # # #   #   #   #   #     #   # #   #   # #   #
# # # #  ######## ###   ### ### # # #### ###   ## # # # ##### #   # # #  #### ### # # ###   # # # #
#     # #         #   # #   #   # # #       #     #   #   #     # #   #         # # # #   # #   # #
### # # # ##  ### # # #   # # ####  # ### #  ##   ##### # # # # # ####### # # # # # # # # # #   # #
# #   # #   #     # # # #   #       #   # #   #         #   # #   #     #       #   # #   #   #   #
# # # ## #    ### # # # ### #### ### ## # #   # ####  ##### # # # ##### # #### ## ### # # #### #  #
# # #       # # # # # #   #         #   # #     #     #     #   #       #     #   #   # # #       #
# # ### ##### # # #    ## # # #####   ### # ### #   ## #### #  ### ## # # ### # ### ### # # ##### #
# #   #           #     # #   #       # # #       # #     # # #       #   #   #   #   # # #     # #
#  ## # # ##### # ######  # ########### # ##### ### # ### #   #  ########## ### ##### # # # # # # #
#       # #         #   #                   #   #   # # # #               #           #   #   #   #
# ####### #########   # # ##### # # # ##  # # #   ### # # # #   ###   ### ### ####### # ##  ##### #
#       # #     # #   # #       # # #       # #   # # #   # #     #     #   #       # #   #     # #
# # ### # # ### # ## ## # # #   # #  ###  #   ##### # # ### # # # # # # #   # # ### # #      ## # #
#   #   #     #       #   #   # # # #   #   #       # #     # # # # # # # #     # # #   # # #     #
##### # # ##### # #### #### ### # # # ############# # # ###  #    ###   ## #### # #  #### # #  ####
#   #   # #     # #     #   #   #                   # # #       #     #           #       # #   # #
# # # ##### ####    ### #   ####  # # # ### # #### ## # # # # ### # #  ### ######   # ##  # # # # #
#   #     # #       #   #         #     #   #   #   # #   # #   #     #       # #   #   #     #   #
#  #####  # # # ### # # ############# # # ##### # # # # ### ### #  ## #   ### #    #### ##  # ### #
#     #   # # #     #   #     #       # # #   #   #   #       #       # #   #   #     #   # #   # #
## #  # ###    ## #  ## # ##  # #####   # # # ###### # ## ### # # # ### ###  # ###### ### # ###   #
#   # # #   #     #     #   #   #   # #       # #     #       # # #   # # # #       #     #     # #
# # # # # # # ##  # # ##### ##### # # # ##### # #   # ### ### # # ### # # # # #   ### ###  ###### #
# #   # #       # # #   #   #     # #         #   # #   #   #   #   #     #   #       #       #   #
# # ### # ##### # ##  # # ### ###   ####### # # ### ### # # # ##### # # ############ #    # # # ###
# # #   #   #   #   # # #           #       # #   # #     #       #   # #               # #   #   #
#  ## ### # ### ### # # ### ### ###   ##### # ##### ##### # ## ## # #   #  ### ### ######  ###### #
# #   #   #   #   #       #       #   # #   #     #       #     # # # #   #       #     #       # #
# # ########  ##  ##### ##### ### #####   ##### # # # # # # # # # # ###   ### # # # # # ####  # # #
#   #         # #     #         #   #         # # #   # #     #   #         #   #   # #   #       #
# ### ### ### # # # # ### #####   # #   # # # ### ### # # # # #####   ##### #   ## #   ## # # ### #
#   # #     #   #   #   #     # # # #   #   #   #   # # # # # #       #     # #         #   # #   #
### #   # # # # # ### # ##### # ### ### ###  ## # # ### # # ### ######  ##### # #   ### ## ## # # #
#   #   #   # #       #     # #       # #   #   # #   #   #     #   # #     # # # #   #       # # #
# ###  ## # # # # ## #### ###  ###### # # #   ######  ##  # ## ##   # ##### # # # ### ####### ### #
# #   #   #   #   #           #     # #   # #   #     #   #       # #     #     #   #       #     #
# ##### ### ### ### # # ### ####### # ## ## ### # # # # ########### # ### #####   ### #  ## ##### #
#         #   #     #     #       #   #   #   #   #   #   #     #   # #   #       #   #   #       #
# ### ### ##  #######     # ##### # ### # ##  ## ######## # ### #  #### # # #######   ### ####### #
#     #     #   #     #   # #     #         #             #   # # #     # #       # #     #       #
# #####   ##### # # ### #   # ##  ###### ## # ##### #  #### # ### # #   # # ##### # # ### # # ### #
# #     # #     # #     #   # #   #       #   #   #   #     #     #       # #       # #       #   #
# # #  ## # # # # ### #  ##   # # # #####    #  ##### # ########### # ##### # #######   # ### # ###
# #   #   # #   #     #     #     #   #         #     # #     #       #     #       # # # #       #
# # #        #### ### ##### #   ##### # ##### #   # ### # ### # # #     ####### # # #   # ##### # #
# #   # #   #         #   # # # #   # #     # #   #     #   # # #   #     #       #   #       #   #
# ### # ###   ####### ### # # ###   # #  ## # ####  # ##### # # ### # ### ## ## #  #### ## ## #####
#     #         #   #       #     #   #     #   #           # #   #         #         # #   #     #
# # ######  # ### # ##### # ## ######## # # # # #   ########  ##### ####### #   ####    # ####### #
#     #       #   # #     #     #             #   #   #   #       #   #     #     #     #     #   #
##### # ### # # ###   # ### ### ### ### ##### ##    # # # # # ##  ### # ### # ### #  ## # ##  # ###
#     #   # # # #     #   # # #       #   #   #       # #   #       # # #           #   #     #   #
# # ### # # # # ### # ### # # ### ### ###   # # ####### ####  # ### # # # ##### # ### # ###  #### #
#   #   #     #   # # #   # #         #     # # #   #   #     #   #   # # #   # # #   #     #     #
# # ### # ### ### # # # ### # # ### # #########   ### ##   ### ##  ###  #   ### #    ## ##### ### #
# #   # #   #     # # #       # #   #                   #     # # #     #   #   # # #   #     #   #
# ### # # # ####### # ###  ## # #     ### ##### ##  ### ##### # # # ## #### # ### # # ### ##### ###
#       # #   #     # #     # #   # # #   #   #       #   #   # # #         # # # #   #   #   # # #
# #   ### # ###  ## # # ### # ##### # ##### # ### ##  ##### ### # # ######### # #   ### # # # # # #
# #       #       #                 #       #       #           #             #         #   #    E#
###################################################################################################