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