*#*_*_#***#_
#*_*%####*&*#*#@##__*##*%*_####_*##****__##*_#&**@*##%_#___%##**%@##__%**@#_#_#@*##*###_#
*_###*%_@#%#%%%#**%
##*&*&&*%#####*__**##_@*%*#%*_###_*#*&*#__*__#*##%%*#*#_*#__&**###**##*
#%***#@*@#@*&*##@#_#
*#&**%**_#%*_%*_#_*&*#&@#__@*_@#**@@*@&*%*###*****#*#&&_#_&***_**###*_#**%@*#_#_*_#@#**__*_#%#@@
##%_**@##
%#*@*#&&__*&*%**_#_%_#*@*&%**#*#*_###%___@_&&*#&@#%****##*##_#&**_**#@@##*#@**###**#%##*#
#*##***#*%_***#&
*_*_#&_#_#&_#**@&**%*@_#&**##**_%#@%_###_#___###_*_#_*#*_&*_##***
**%*@
#*#@**_*__&**&_#_##*_#@%#_*%**%#%**#_*#@*_#@*_#_****##*###*_##%##%&*#@#@@_*##*#*##*##*#@@&@#*#@*##*#__#@__#_#*@#_*%#_##@#**_*&%%%%#*#%##*&_
**#@_*@#
*###**##**%__#%_%**#@%@*#_##%@#_*#**@##*##*_*%###__@%__#_#%%#_*#&*_##*%
@*__&*#
#*%#__%*####__#_#_%*@&*###*_#**%*&__##_**##*%##@_***_*%#**##%*#%@###&