| #########
##:::::::::##
##:::::::::::::## = . # * ######### > #################### = \ ############# . . ################# / + \ ###############
#:::::::###:::::::# \ < \ / \ #::::::::# * | #::::::::::::::::::# > #::::::::::::### , . \ #::::::::::::::::# / , * #:::::::::::::::##
#::::::# / #::::::# , / , - #:::::::::# = / #::::::::::::::::::# > #:::::::::::::::## _ + #::::::######:::::# * #::::::#####::::::#
#:::::# \ #:::::# * . #::::##::::# * _ ############:::::::# ###:::::#####:::::# = | ##:::::# + #:::::# / ####### + #:::::#
#:::::# . #:::::# , = #::::# #::::# _ \ / _ / #::::::# # \ + #:::::# / #:::::# | \ #::::# / #:::::# \ - . _ | | #:::::#
#:::::# / #:::::# = / #::::# #::::# * / * \ \ \ #::::::# - # + #:::::# \ = #:::::# \ / #::::# | #:::::# < < + < . #:::::#
#:::::# / #:::::# / < #::::# - #::::# / + / \ # #::::::# \ # / #:::::# / + #:::::# - = #::::######:::::# / < = ########:::::#
#:::::# - #:::::# / # #::::######::::### * + > , #::::::# - | > = #:::::# \ _ #:::::# | #:::::::::::::## / < / . #:::::::::::#
#:::::# ####:::::# , #::::::::::::::::# > _ , \ #::::::# - , + _ #:::::# | #:::::# * \ / #::::######:::::# \ . ########:::::#
#::::::# #::::::::# * # ##########:::::### / _ * #::::::# / / * > #:::::# - #:::::# = #::::# # #:::::# , . _ \ _ #:::::#
#:::::::##::::::::# < > _ > #::::# # - / * #::::::# > , _ = #:::::# #:::::# | + #::::# \ < #:::::# < = , _ , - #:::::#
##::::::::::::::# / # \ = / - / #::::# / \ - # #::::::# / + # #:::::# # #:::::# - > #::::# < #:::::# _ _ - . . _ #:::::#
##:::::::::::# \ _ \ , . #::::# > \ \ #::::::# | - < ###:::::#####:::::# / \ ##:::::######::::::# = | ####### . #:::::#
. > ########::::## | + + # _ | ##::::::## > + * #::::::# - > # | #:::::::::::::::## | _ \ #:::::::::::::::::# , #::::::#####::::::#
/ \ = #:::::# * . _ / #::::::::# / + #::::::# . | # | < #::::::::::::### # - #::::::::::::::::# / , #:::::::::::::::##
+ , > , ###### = * - \ _ ########## ######## = . / ############# * / / # < ################# = . ###############