Hello!
``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...................................................... ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..................................................... `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...`................................................... ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`````...................................................... ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````............................................................. ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````............................................................. ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.````````..``.`````............................................................. `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..`..`````............................................................. ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.````.``..`````............................................................. ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...```.................................................................. ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...`...``.`............................................................. ``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`````..``...``..``.`............................................................. `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.``..``.................................................................... `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````................................................................... ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.................................................................... ``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`````...```.................................................................. ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..............`......................................................... `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.``..............`......................................................... ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...``.................................................................... ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````....``................................................................... ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...```.................................................................. ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````...```.................................................................. ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.............`...................................................... `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.````...........`...................................................... ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.```````..`...................................................... ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.``````````..`...................................................... ``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.........```...................................................... ``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.``.```.````...................................................... `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.````...`...................................................... ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.```.``...................................................... ``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..``...................................................... ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.``...................................................... ````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````..````...................................................... `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`.````.``..................................................... `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`......................................................... `````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`......................................................... ````````````````````````````````````````````````````````````````````....`````.......``````````````````````````````````````````````````.................................................................. ````````````````````````````````````````````````````````````````````....````........`````````````````````````````````````````````````................................................................... `````````````````````````````````````````````````````````````````.```````````````...``````````````````````````````````````````````````.................................................................. ``````````````````````````````````````````````````````````````````````````````````````..`....``````````````````````````````....`........................................................................ ``````````````````````````````````````````````````````````````````````````````````````...`.``````````````````````````````````........................................................................... ``````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````.`........................................................................ ```````````````````````````````````````````````````````````````````````````````````.......................................................................................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ````````````````````````````````````````````````````````````````````````````````````.......................................................................................,,..,,,,,,,,,,,,,,,,,,,,,,,,, `````````````````````````````````````````````````````````````````````````````````````..`..................................................................................,,,.....,,,,,,,,,,,,,,,.,,,,,, ``````````````````````````````````````````..........````..``...`````.`.......................................................................................................,..,,,,,,,,,,,,,,,,,,,,,,,, ````````````````````````````````````````````........`````.``...``````..`...................................................................................................,...,,,,,,,,,,,,,,,,,,,,,,,,, ````````````````````````````````````````````````....```.````...``````..`......................................................................................................,,,,,,,,,,,,,,,,,,,,,,,,,, ``````````````````````````````....``......```............```...`..``....................................................................................................,,,...,..,,,,,,,,,,,,,,,,,,,,,,, ``````````````````````````````....``......```............```...`..``...................................................................................................,.........,.,,,,,,,,,,,,,,,,,,,,, ``````````````````````````````....``......``....````.....```...`````......................................................................................................,..,.,,,,,,,,,,,,,,,,,,,,,,,,, ``.````````````````````````....```````..````.``````````.````.```....````.`.................................................................................................,.,,,,.,,,,,,,,,,,,,,,,,,,,,, .```````````````````````..````````````````.`````````````.```````..``.`.````.`....................................................................................................,,,,,,..,,.,,,,,,,,,,,, ``````````````````````````````..````````````````````````````````..``.``.```.`....................................................................................................,,,,,,...,.,,,,,,,,,,,, ``.`````````````````````````````.`````````````````````````````````..````..........................................................................................................,,,,,,.,,,,,,,,,,,,,,, ````````````````````````````````````````````````````````````````````````...........................................................................................................,,,,..,,,,,,,,,,,,,,, ``.`````````````````````````````````````````````````````````````````.```.................................................................................................................,,,,,,,,,,,,,,, ````````````````````````````````````````````````````````````..........................................................................................................................,..,,,,,,,,,,,,,,, ````````````````````````````````````````````````````````````..........................................................................................................................,,,,,,,,,,,,,,,,,, ````````````````````````````````````````````````````````````..........................................................................................................................,,,,,,,,,,,,,,,,,, `````````````````````````````````````````````````````````.``...`.`......,,,;;;;;;:::...................................................................................................,.,,,,,,,,,,,,,,, ``````````````````````````````````````````````````````..`.``...```......,,,;;;;;;::,.....................................................................................................,,,,,,,,,,,,,,, `````````````````````````````````````````````````````````.``....`.......,,,;;;;;;::,.....................................................................................................,,,,,,,,,,,,,,, ````````````````````````````````````````````````````````````....``...;;;'''+++######++'::,.............................................................................................,.,,.,,,,,,,,,,,, ``````````````````````````````````````````````````````````````````...;;;'''+++######++'::,...............................................................................................,,,,..,,,,,,,,, ``````````````````````````````````````````````````````````````.``....;;;'''+++######++'::,...............................................................................................,.,,..,,,,,,,,, ``````````````````````````````````````````````````````````````````,,,'''+++##############+;;:.....................................................................................................,.,,,, ``````````````````````````````````````````````````````````````````,,,'''+++##############+;;:.....................................................................................................,.,,,, ``````````````````````````````````````````````````````````````````,,,'''+++##############+;;:..................................................................................................,,,,,,,,, ```````````````````````````````````````````````````.```````````...'''+++####################'::,.............................................................................................,,,,,,,,,,, ``````````````````````````````````````````````````````````````....'''++#####################'::,............................................................................................,..,,,,,,,,, `````````````````````````````````````````````````````````.````....'''#++####################'::,............................................................................................,..,,,,,,,,, ````````````````````````...```````````````.....................:::############++++++++#########;,,..............................................................................,,,...,,,,,,,,,,,,,,,,,, ``````````````````````````..`````````````......................:::############++++++++#########;,,...............................................................................,,...,,,,,,,,,,,,,,,,,, ``.````````````.````````..``````...............................:::############+++##+++#########;,,..............................................................................,,,...,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,................................................'''############++###############';:,.......................................................................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,.................................................'''#############+###############';:,.......................................................................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,..............................................'''#############+###############';;,.......................................................................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;::::::::::::::::::::::::::::::::+++#############################+;;:,,,,,,,,,,,,,,,,,,,,,,,,...............................................:::;;;;;;:::,,,,,,,,,,,,,,,,,, ;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::+++#############################+;;:,,,,,,,,,,,,,,..,,,,...................................................:::;;;;;;:::,,,,,,,,,,,,,,,,,, ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;:::::::::::::::::::::::::::+++#############################+'':,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,,,,,,:::;;;;;;:::,,,,,,,,,,,,,,,,,, ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++++###########+++#########++++++'';;:;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;'''''';;;:::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++#########+++#########++++++'';;;;;;:::::;;::::;;;;:::::::::::::::::::::::::::::::::::::::::::::::::::;;;'''''';;;:::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++#########+++########+++++++'';;;;;;;;::::::;::;;;;::::::;;;;;;;::::::::::::::::::::::::::::::::::::;;;;;'''''';;;:::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''+++++++++++++++++++++++++++++';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''';;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''+++++++++++++++++++++++++++++';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''';;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''+++++++++++++++++++++++++++++';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''+++++++++++++++'+'''''';:::::::::::;;;:::::::::::::::::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''+++++++++++++++++'''''';:::::::::::;;;:::::::::::::::::::::::::;;;;::::::::::;:;:;;;;;;;;;;;;'';;;;;;;;;;;;;;;;;;:::;;;::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''++++++++++++++++++++''';:::::::::;;;;;::::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++++++++++++'+++++'';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''+++++++++++++++++++++++';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''+++++++++++++++++++++++';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''';;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++++++++++++++++++'';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''''';;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++++++++++++++++++'';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''''';;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''+++++++++++++++++++++''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''';;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;'''+++++++++++++++++++++'';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''+++++++++++++++++++++'';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;:;;;:;;;;;;;;;;;;;;;;;'''+++++++++++++++++''';;;;;;;;;;;;;;;:::::;;;;;;;::::::;;;;;;;;;;;;;;;;;;;;;;;;:;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;: ;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;:;:;;;::;:::;;;;::;;;;;;'''+++++++++++++++++';;;::;;;:::::::::::::::;::;;;::::::;;;::;:::;;;;;;:::;;;;;;::::::;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;::::::;;: ;;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;::;;;;:;::::;;::::;;;;;'''+++++++++++++++++';;;:::;;:::::::::::::::;;;;;;::::::;::;:;:::::;;;;;:;;;;;;;:::;::;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;::::::;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;+''++++++++++++++';;;::::::::::::::::::::::::;;:::::::::::;::::::::::::;;;;;;::::::;;;:::;::;;;;;;::::::;;;:::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;:;;;;;;;;;:;;;;;;;::;::::::::::;:;;;'''++++++++++++++';;;;;::::::::::::::::::::::;:::::::::::::::::::::::::::::::::::::::;::::::;;;:::::::::::::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::;;;'''++++++++++++++';;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;:;;::::::::::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;:;;::::;;:::;;;;;;''''''+++++++++++++++''''';;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;:;;;;;;:::;;;;;::::::;;;;::;;;;;;;;;:;;;;::;;::::;;;:;;:::::;:::;;;;;;''''''''++++++++++++++++++';;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;::::::::::: ;;;;;;;;;;;;::;:;;;;;:;:::;;;;:::;:;;;;;;:;;;;;;:;;:::;;;:;;:::::::::;;;;;;''''''+'++++++++++++++++++';;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;::::::::::: ;;;;;;;;;;;;:::;;;;;;:::::::;::::::::::::::::::::::::::;;;;;::::::''';;;:::''''''+'+++++++++++++++++++++';;;:::::;;:;;;:::;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;:::;;;;:::;;;::;::::::::::::::::::::::::::::::::::::;::::::::''';;;:::'''''''''++++++++++++++++++++';;;::::::;;;;;:::;;;::::::;::::::::;::;:::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;:;;;;;;::;;;;::;:::::::::::::::::::::::::::::::::::;;;;::::::''';;;:::'''''''''++++++++++++++++++++';;;:::::;;;;;;:::;;:::::::::::::::::;;::::::;;::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;;;::;;;:::;;;;;;;;;:::;;;;;;::::::;;;::::::::::::;;;;;;:::''';;;:::;;;'''''''''+++++++++++++++++++++++;;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;:::;;;;:::;;;;;;;;;:::;;;::;::::::;;;:::::::::;::;;;;';,,:''';;;:::;;;'''''''''+++++++++++++++++++++++;;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;::;:;;;;:::;;;;;;;;;:::;;;::;::::::;;;::;;::::::::;;;'';,,:''';;;:::;;;'''''''''+++++++++++++++++++++++;;;:;;::::::::;:::::::;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;:::;;;;;;::;;;;:::::::;::::::;:::;;;:::;;;:::::::::'''''''''+++''';;;''''''''''''++++++++++++++++++++++++++''';;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;:::;;;;;;::;;;;::::::;:::::::::::;;;:::;;;:::::::::''''''+++'++'';;;;''''''''''''++++++++++++++++++++++++++''';;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;:::;;;;;;;;;;;;;:::::::;:::::::::;;;::;;;;:::::::::''''''''++++'';;;;'''''''''''+++++++++++++++++++++++++++''';;;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;;;;;::::::;;;::::::::::::::::::::::::::::::;;;'''+++++++#+'''''';;;'''''';;'''''''+++++++++++++++++++++++++++++;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;;;;;::::::;;;::::::::::::::::::::::::::::::;;;'''+++++++++''';;';;;'''''';''''''''+++++++++++++++++++++++++++++;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;;;;;::::::;;;::::::::::::::::::::::::::::::;;;'''+++++++++''';;';;;'''''';;'''''''+++++++++++++++++++++++++++++;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;;;;''''+++++###+++'''''';;;;;;;;;;;;''''''+++++++++++++++++++++++++++++'''::;;;;:::::::::;;;::::::;;;;;;::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;;;;''''+++++###+++''';;;;;;;;;;;;;;;''''''+++++++++++++++++++++++++++++'''::;;;;:::::::::;;;::::::;;;;;;::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;'''++++++###+++'''''';;;;;;;;;;;;''''''+++++++++++++++++++++++++++++''':;;;;;::::::::::;;::::::;;;;;;::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++++++++''''''''''''''';;;;;;'''+++++++++++++++++++++++++++++++++++;;;;;;;;;;;;::;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++++++++'''''';'''''''';;;;;;'''+++++++++++++++++++++++++++++++++++;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''++++++++++++'''''';'''''''';;;;;;'''+++++++++++++++++++++++++++++++++++;;;;;;;;;;;;;;;;;;;;;;;;;;;::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;:;;;;:;:;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++++++++''''''''''''+++'''''''''++++++####+####++++++++++++++++++++;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;:::;;;:::;;;;;;::;;;;;;;:;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;::;;;;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++++++++''''''''''''''+'''''''''++++++#########++++++++++++++++++++;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;:::;;;::;;;;;;;:;;;;;;;;:;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;:;;;;;;;:;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++++++++''''''''''''+++'''''''''++++++#########++++++++++++++++++++;;;:::;;;;;;;;;;;;;;;;;;;;:;;;;;;:::;;;::;;;;:;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::;:;;:::'''++++++++++++'''''''''++++++'''''''''+++++##########++++++++++++++++++'+;;;::;:::;;;:::::::::;;;:::;;;;;;:::;:;;;;;;;;;;::::::;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::;:;:::::'''++++++++++++'''''''''++++++'''''''''+++++###########+++++++++++++++++'';;;;;;;:;;;;:::::::::;;;;;;;:;;;;:::;;:;;:;;;;;;:::;::;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;::;;;;;;;;;:;;:;:;;::::'''++++++++++++'''''''''++++++'''''''''+++#+##########++++++++++++++++++'';;;;:;:;:;;;:::::::::;;;:;;;:;;;;:::;:;;:;:;;;;;::::::;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::'''+++###+++++++++''''''''''''''''''++++++#########++++++++++++++++++++''';;;;:;::;;;;;;;;;;:;:;;;;::;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;:::;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::'''+++#####+++++++''''''''''''''''''++++++#########++++++++++++++++++++''';;;;;:::;;;;;;;;;;:::;;;:::;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;:::;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::'''+++######+++'''''''''''''''''''''++++++#########++++++++++++++++++++''';;;;;;::;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;:::;;;;;;;;; ;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++############++++++++++++++++++++++++#####++++++++++###++##+++++++''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;;; ;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++##+#########++++++++++++++++++++++++#####++++++++++##+++++#++++++''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++#+##########++++++++++++++++++++++++#####++++++++++#####++#++++++''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;; ;;;;;;:::;;;::::::;;;;;;:::::::::;:::::;;;;;;++++++++##########++++##+++#########++++++##+++++++++###+++###+++++++++'''::::::;;;:::;;;:::;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;::::::;::::: ;;;;;;:::;;;::::::;;;;;;:::::::::;:::::;;;;;;++++++++##########+++++#+++#########++++++##+++++++++####++#+#+++++++++''':::::::;;:::;;;;::;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;::::;;;;;;;;::::::;::::: ;;;;;;::;;;;::::::;;;;;;:::::::::;:::::;;:;;;+++++++#+#########+++####++#########+++++####+++++++++##+++####+#++++++'''::::::;;;:::;;;;::;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;:::;;;;;;;;;:::::::;;::: ;;;:::::::::::::::::::::::::::::::::::::::;;;+++++++++######+++++++++++++++######+++#####++++###++++++++###+++++++++''':::::::::::::::::::::;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;:::::::::::::::::::::::::::::::::::::::;;;++++++#++######+++++++++++++++######+++++###++++##+++++++++###+++++++++''':::;:::::::::::::::::;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ;;;;::::::::::::::::::::::::::::::::::::::;;;++++++#+#######+++++++++++++++######+++++###+++++#+++++++++###+++++++++''':::::::::::::::::::::;;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::;:;;;;;;;::::::::::::::::::::::::;;;:::'''+++++++++#########+++++++++#########+++###++++++#++++++++++++++++++++++;;;::::::::::::;;;;;;;;;;;;::::::::::::::::::;;;:::::;::::::::::::::::::;;;::::::::: :::::;;;;;;;::;:::::::::::::::::::::;;;:::'''+++++++++######++#+++++++++#########+++###+++++++++++++++++++++++++++++;;;::::::::::::;;;;;;;;;;:;::::::::::::::::::;;;:::;;:::::::::::::::::::;;;::::::::: ::::::;;;;:;::::::::::::::::::::::;:;;;:::'''+++++++++#########+++++++++#########+++##++++++++++++++++++++++++++++++;;;::::::::::::;;;;;;;;;;;;::::::::::::::::::;;;:::;;;::::::::::::::::::;;;::::::::: ::::;;;;;;;;::::::;;;;;;::::::;;;:;;::::::++++++++++++##+###+++#++############++++++++++++##+++++++++++#++++++++++++:;;:::;;;;;;::::::::::::;;;;;;::::::::::::;::::::::::::::::::::::::::::::::::::::::: :::;;;;;;;:::::::::::;::::::::;;;;;;::::::+++++++++++++#####++++++############++++++++++++##+++++++++#+#++++++++++++:;;:::;;;;;;::::::::::::;;;;;;::::::::::::;:;::::::::::::::::::::::::::::::::::::::: :::;;;;;;;;:::::::;;;;;;::::::;;;::;::::::++++++++++++++####++++++############++++++++++++##++++++++++##++++++++++++;;;:::;;;;;;:::::::::::;;;;;;;::::::::::::;:;::::::::::::::::::::::::::::::::::::::: ;;;:::;;;;;;:::::::::::::::::::::::::::;;;+++++++++++++++#####################+++###+#######+++++++++++++++++++++'''::::::::::::::::::;;;;;;::::::::;::::::::;;;;;;;:::::::::::::::;;;:::::::::;;;;::::: ;;;:;:;;;;;;:;:::::::::::::::::::::::::;;;+++++++++++++++#####################+++###+#######+++++++++++++++++++++'''::::::::::::::::::;;;;;;::::::;;;:::::::;;;;;;:;:::::::::::::::;;;:::::::::;;;:::::: ;;;:::;;;;;;;;;::::::::::::::::::::::::;;;+++#+++++++++++#####################+++###+#######+++++++++++++++++++++''':::::;::::::::::::;;;;;;::::::;;:::::::::;;;;;;;:::::::::::::::;;;:::::::::;;::::::: ;;;::::;;;;;;;;;;;;;;;;;:::;;;;;;;;;:::';''''++++++++++++######+++++++++++++++###++++++#####+++++++++++++++++++++;;;::::::;;;;;;::::::::::::::::::::::::;::::::::::::::::::::::::::;;;;:::::;;;::::::::; ;;;::::;;;;;;;;;;;;;;;:::::;:;;;;;;;:::''''''++++++++++++######+++++++++++++++###++++++#####+++++++++++++++++++++;:;::::::;;;;;;:::::::::::;:::::::::::::;;::::::::::::::::::::::::;;;::::::;::::::::::; ;;;::::;;;;;;;;;;;;;;::::::;;;;;;;;;:::';;'''++++++++++++######+++++++++++++++###++++++#####+++++++++++++++++++++;:;::::::;;;;;;:::::::::::;:::::::::::::;;::::::::;:::::::::::::::;;;::;:::;::::::::::; ;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;:::::::::'''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++''';;;;;;;;;:::;;::::::::::;;;;;;::::::;;;:::::::::::::::;;;;;;;;;;;;;::;;;::;;;;;;;:;;::: ;;;;;;;;;;;;;;;;;;;;;::;;;;;;;:::::::::'''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++''';;;;;;;;;:::::::::::::::;;:;;;::::::;;;:::::::::::::::;;;;;;;;;;;;:;;;;;:::;;;;;;:;:::: ;;;;;;;;;;;;;;;;;;;;;::;;;;;;;:::::::::'''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++''';;;;;;;;;:::::::::::::::;;:;;;::::::;;;:::::::::::::::;;;;;;;;;;;;;;;;;;:::;;;;;;;;:::: ;;;::::::;;;;;;;;;;;;;;;;;;;;;:::::::::+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++''';;;;;;;;;;;;::::::;;;::::::::::::;:;;;;;:::::;;;;;;::::::::::::;;;;;;;;;::::::::::::::: ;;;::::::;;;;;;;;;;;;;;;;;;;;;:::::::::+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++''';;;;;;;;;;;;::::::;;;:::::::::::::::::;;:::::;;;;;;::::::::::::;;;;;;;;;::::::::::::::: ;;;::::::;;;;;;;;;;;;;;;;;;;;;:::::::::+++++++++++++++++++++++++++++++++#+++++++++++++++++++++++++++++++++++++''';;;;;;;;;;;;::::::;;;:::::::::::::::;:;::::::;;;;;;::::::::::::;;;;;;;;;::::::::::::::: ;;::::;;;;;;;;;;;;;;;;;;;;;::;:::::::::+'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;;;;:::;;;;;;::;::::::::::::::::::;;;:::::::::::: ;;::::;;;;;;;;;;;;;;;;;;;;;::::::::::::+'+++++++++++++++++++++++++++++++######++++++++++++++++++++++++++++++++;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::;;;;;;;;;:::;;;;;;:;;::::::::::;:::::::;;;:::::::::::: ;;;:::;;;;;;;;;;;;;;;;;;;;;::::::::::::+++++++++++++++++++++++++++++++++##++++++++++++++++++++++++++++++++++++;;;;;;;;;;;;;;;;;;;;;;;;:;;:::::::::;;;;;;;;;:::;;;;;;:;;:::::::::::;::::::;;;:::::::::::: ::::::::::::;;;;;;;;;;;;;;;;;;:::::::::'''++++++++++++++++++++++++++++++######++++++++++++++++++++++++++++++++;;;;;;:::::::::;;;;;;;;;::::::::::::;;;;;;;;;::::::::::::;;;:::::::::::::::;:::::::::::::: ::::::::::::;;;;;;;;;;;;;;;;;;:::::::::'''++++++++++++++++++++++++++++++######++++++++++++++++++++++++++++++++;;;;;;:::::::::;;;;;;;;;::::::::::::;;;;;;;;;::::::::::::;;;::::::::::::::::::::::::::::;; ::::::::::::;;;;;;;;;;;;;;;;;;:::::::::'''++++++++++++++++++++++++++++++######++++++++++++++++++++++++++++++++;;;;;;:::::::::;;;;;;;;;::::::::::::;;;;;;;;;::::::::::::;;;:::::::::::::::::::::::::::::; ;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;;;';;+++++++++++++++++++++++++++###+++###++++++++++++++++++++++++++++++++;;;;;;;;;::::::::::::::::::;;;:::::;:::;;;;;;;;;:::::::::::::::;;;:::::::::;:;;;;::::::::: ;;;;;;;;;;;;:::::::::::::::;;;;;;;;;;;;';;+++++++++++++++++++++++++++###++++#+++++++++++++++++++++++++++++++++;;;;;;;;;::::::::::::::::::;;;:::;;;:::;;;;;;;;;:;;::::::::::::;;;:::::::::;:;;;;::::::::: ;;;;;;;;;;;;;;:::::::::::::;;;;;;;;;;;;;';+++++++++++++++++++++++++++###+++###++++++++++++++++++++++++++++++++;;;;;;;;;::::::::::::::::::;;;:::::::::;;;;;;;;;:;:::::::::::::;;;:::::::::;::;;;::::::::: ;;;;;;;;;;;;;;;:::;;;::::::::::::::::::;;;'''+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++;;;;;;:::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;::::::;;;::::::::: ;;;;;;;;;;;;:;;:::::;::::::::::::::::::;;;'''+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++;;;:;;:::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;:::::::::::::::::: ;;;;;;;;;;;;;;;::;;;;::::::::::::::::::;;;'''+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++;;;;:;:::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;:::::::;:::::::::: :::::::::::::::;;;;;;;;;;;;:::::::::;;;;;;;;;;;;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++';;::::::::::::::::::;;;:::::::::::::::;;;;;;;;;;;;;:;::::::::::::::::::::::::;:::::;;;;;; :::::::::::::::;;;;;;;;;;;;:::::::::;;;;;;;;;;;;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++';;::::::::::::::::::::;:::::::::::::::;;;;;;;;;;;;:::::::::::::::::::::::::::;;::::;;;;;; :::::::::::::::;;;;;;;;;;;;:::::::::;;;;;;;;;;;;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++';;::::::::::::::::::;:;:::::::::::::::;;;;;;;;;;;;::;::::::::::::::::::::::::::::::;;;;;; ;;;;;;;;;;;;;;;;;;::;;;;;;;;;;;;;;;;;;;;;;;;;;;;'';++++++++++++#+#++++++++++++++++++++++++++++#######+++++++++''';:;:::;;;::::::;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::;;;:::::::::::::::::: ;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++++++++#+++++++++++++++++++++++++++++++######+++++++++''';;;:::;;;::::::;;;;;;;;;;;;;:;::::::::::::::::::::::::::::::::::::;;;:::::::::::::::::: ;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++++++++++++#+#++++++++++++++++++++++++++++#######+++++++++''';:;;::;;;:::::;;;;;;;;;;;;;;;;::::::::::::::::::::::::::::::::::::;:::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::;;::::::::::;;;'''+++++++++'''++++++#+++++'''++++++#####++++########+++++++++''';;;:::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::;;;;;;;;;:::;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::;;;:::::::::;;;'''+++++++++'''++++++#+++++'''++++++###+#++++########+++++++++''';;;:::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::;;;;;;;;;:::;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::;;::::::::::;;;'''+++++++++'''++++++#+++++''+++++++#####++++########+++++++++''';;;:::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::;;;;;;;;;:::;;;;;;;;;;;;;;; ;;;:::::::::::::::::::::::::::::::::::::::::::::+++++++++''';;;''''''++++++'''+++++++++++++++++######+++++++++''';;;;;;;;;::::::;;;;;;;;;::::::;;;;;;;;;::::::::::::::::::;;;;;;;;;;;;;;;;;;:::::::::::: ;;;:::::::::::::::::::::::::::::::::::::::::::::+++++++++''';;;'''''+++++++'''+++++++++++++++########+++++++++''';;;;;;;;;:;::::;::;;;;;;::::::;;;;;;;;;::::::::::::::::::;;;;;;;;;;;;;;;;;;:::::::::::: ;;;::::::::::::::::::::::::::::::::::::::::::;::''+++++++''';;;'''''+++++++'''+++++++++++++++########+++++++++''';;;;;;;;;;:;:::;::;;;;;;::::::;;;;;;;;;;:::::::::::::::::;;;;;;;;;;;;;;;:;;:::::::::::: ::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::++++++'''''''''+''++++++++++++++++++++++++++++++####+++++++++++++''';;;;;;::::::;;:;;;;;;:::::::::;;;::::::::::::;;;:::::::::;;;;;;;;;:::::::::::::::::: ::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::++++++'''''''''+'+++++++++++++++++++++++++++++++####+++++++++++++''';;;;;;:::::::::;;;;;;;::::::::;;;::::::::::::;;;:::::::::;;;;;;;;;:::::::::::::::::: ::::::::::::;;;;;;;;;;;;;;;;;;;;::::::::::::::::++++++''''''''''''+++++++++++++++++++++++++++++#####+++++++++++++''';;;;;;;;;::::;:;;;;;;;;;::::::;;;::::::::::::;;;:::::::::;;;;;;;;;:::::::::::::::::: '''''';;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;++++++;;'+++++++++++++##+++++++++++++++++++++++####++++++++++++'';;;;;;;;;:::::::::;;;;;;::::::;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;::::;;;;;;;;;;;;;;:::::: '''''';;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;++++++;;'++++++++++++++++++++++++++++++++++++++####++++++++++++'';;;;;;;;;:;:::::::;;;;;;::::::;;;;;;;;;;;;:::;;;;;;;;;;;;;;;;;;:::;;;;;;;;;;;;;;;:::::: '''''';;;;;;;;;;;;;;;;;;:::::::::::::::;;;;;;;;;++++++';'++++++++++++++++++++++++++++++++++++++####++++++++++++'';;;;;;;;;:;:::::::;;;;;;::::::;;;;;;;;;;;;:::;;;;;;;;;;;;;;;:;;:::;;;;;;;;;;;;;;;:::::: ;;;;;;;;;;;;;;;''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+#+''';;;''''''''''+++++''''''+++++++++++++++########+++++++++''';;;;;;;;;;;;:::::::::;;;::;:::;;;;;;:::::::::;:::::;;;;;;;;;::::::::::::;;;;;;::::::::: ;;;;;;;;;;;;;;;''';;;;;;;;;';;;;;;;;;;;;;;;;;;;;##+''';;;''''''''''+++++''''''+++++++++++++++#######++++++++++''';;;;;;;;;;;;:::::::::;;;::;:::;;;;;;:::::::::;:::::;;;;;;;;;::::::::::::;;;;;;::::::::: ;;;;;;;;;;;;;;;''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#++''';;;'''''''''++++++''''''+++++++++++++++########+++++++++''';;;;;;;;;;;;:::::::::;;;::::::;;;;;;:::::::::::::::;;;;;;;;;::::::::::::;;;;;;::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::'''+++''';;;'''''''''''''''''''''++++++++++++++#########+++++++++''';;;:::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;:::;;;::::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::'''+++';;;;;'''''''''''''''''''''++++++++++++++#########+++++++++''';;;:::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;::::;:::::::::::::::::::::: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::'''+++';;;;;'''''''''''''''''''''++++++++++++++#########+++++++++''';;;::::::::::::::::::::::::;;;;:::;;::::::::::::::::::;;;;;;:::;;;::::::::::::::::::::: ;;;:::;;;;;;:::::::::;;;:::::::::::::::::::::'''+++';;;;;;'';;;;;;''''''''''''++++++++++++++#########+++++++++';;::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::;;;;;;;;;;;;;;;:::::::::::: :;;:::;;;;;;:::::::::;;;:::::::::::::::::::::'''+++';;;;;;;';;;;;;''''''''''''++++++++++++++#########+++++++++';;::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::;;;;;;;;;;;;;;;:::::::::::: :;:;;;;;;:;;;;;;;;;;;:;::::::::::::::::::::::'''+++';;;;;;;;;;;;;;''''''''''''++++++++++++++#########+++++++++;;;::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::::;;;;;;;;;;;;;;;:;::::::::::