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