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