::::::::::: ::: :::::::: ::: ::: :::::::::: :::: :::: ::: ::: :::: :::: :::::::: :::: :::: ::: :::::::: :+: :+: :+: :+: :+: :+: :+: +:+:+: :+:+:+ :+: :+: +:+:+: :+:+:+ :+: :+: +:+:+: :+:+:+ :+: :+: :+: +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+:+ +:+ +:+ +:+ +:+ +:+:+ +:+ +:+ +:+ +:+ +:+:+ +:+ +:+ +:+ +#+ +#+ +#+ +:+ +#+ +:+ +#++:++# +#+ +:+ +#+ +#++: +#+ +:+ +#+ +#+ +:+ +#+ +:+ +#+ +#+ +#++: +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ #+# #+# #+# #+# #+#+#+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# #+# ########### ########## ######## ### ########## ### ### ### ### ### ######## ### ### ### ########
'##::::'##:'########:'##:::'##::::'##::::'##::::'###::::'##::: ##:'########:::'######:::'#######::'##::::'##:'########::::'####::::::::::::'###:::'###::: ##:::: ##: ##.....::. ##:'##::::: ##:::: ##:::'## ##::: ###:: ##: ##.... ##:'##... ##:'##.... ##: ###::'###: ##.....::::: ####:::::::::::'## ##::.. ##:: ##:::: ##: ##::::::::. ####:::::: ##:::: ##::'##:. ##:: ####: ##: ##:::: ##: ##:::..:: ##:::: ##: ####'####: ##::::::::::....:::::::::::'##:. ##:::: ##: #########: ######:::::. ##::::::: #########:'##:::. ##: ## ## ##: ##:::: ##:. ######:: ##:::: ##: ## ### ##: ######::::::'####:'#######:..:::..::::: ##: ##.... ##: ##...::::::: ##::::::: ##.... ##: #########: ##. ####: ##:::: ##::..... ##: ##:::: ##: ##. #: ##: ##...::::::: ####:........::::::::::::: ##: ##:::: ##: ##:::::::::: ##::::::: ##:::: ##: ##.... ##: ##:. ###: ##:::: ##:'##::: ##: ##:::: ##: ##:.:: ##: ##::::::::::. ##:::::::::::::::::::::: ##:: ##:::: ##: ########:::: ##::::::: ##:::: ##: ##:::: ##: ##::. ##: ########::. ######::. #######:: ##:::: ##: ########:::: ##::::::::::::::::::::: ###::: ..:::::..::........:::::..::::::::..:::::..::..:::::..::..::::..::........::::......::::.......:::..:::::..::........:::::.:::::::::::::::::::::::...::::
* *** *** * *** *** ** *** *** ** *** ** *** ** ** ** ** ** ** *** ** ** ** ** ** ** ** *** **** ** ** ** ** **** ** **** **** ** **** *** **** **** ** ** ** *** *** **** **** * *** **** ** ** ** **** ** *** * ** *** * * *** * ** *** * **** **** * * **** * *** ** ****** ** * *** * *** ** **** * *** * *** * ** ** *** *** * ** **** ** **** * **** ** **** ** **** ** **** * *** ** ***** *** *** * *** ** * *** * **** ** ** ** **** ** ** ** ** ** ** ** ** ** **** * *** ** ** ** ** ** *** ** ** *** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** *** ** *** ** ** ** ** ******** ** ******** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** *** ******** ** ** ** ** ******* ** ******* ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** *** ******* ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **** ** ** ** ** ** ** **** * *** **** * ** ** ** ** ** ** ********* ********* ****** ******* ** *** * **** * **** * ** ** ** ** ******* *** ******* ***** ** *** * *** * ***** **** *** **** *** **** ***** ** *** **** ******* *** * ** ** ** ***** ***** *** ** *** *** *** *** *** ***** *** ** * ***** *** ***** *** * ******** ** ******** ** * * **** * **** *
:'#######:: '##.... ##: ..:::: ##:: :::: ###::: ::: ##.:::: :::..:::::: :::'##::::: :::..::::::