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