::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...........................:::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::::::::::::::::::::::::::..:::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::..::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..::::::...:::::::::::::::::::::::::::::::::::::.:::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....::::...::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:...::::..:::::::::::::::::::::::::::::::::::::::::::.:::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::..::::::::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:....::::..:::::::::::::::::::::::::::::::::::::::::::::::..:::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::...::::..::::::::::::::::::::::::::::::::::::::::::::::::::..::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..::...::::..::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:.....:::..::::::::::::::::::::::::::::::::::::::::::::::::::::::.:::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........:::.::::::::::::::::::::::::::::::::::::::::::::::::::::::::..::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:....:...::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:....::..:::::::::::::::::::::::::::::::::::::::::::::::..:.::::::::..:::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:.:.....::.:::::::::::::::::::::::::::::::::::::::::::::..:..........:::.:::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:.:....::.:::::::::::::::::::::::::::::::::::::::::::::.:::..........:::.:::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:...:..::.:::::::::::::::::::::::::::::::::::::::::::::.::..:...::::::::::.::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:..:...:..:::::::::::::::::::::::::::::::::::::::::::::.::.:..::::::::::::.::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:..::.:::::::::::::::::::::::::::::::::::::::::::::.::.:..:::::::.......::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ....:..:::::::::::::::::::::::::::::::::::::::::::::.::.:.:::::::.::::::..:::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:..::.:::::::::::::::::::::::::::::::::::::::::::::.::.:..::::::.::::::::.:::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::.:::::::::::::::::::::::::::::::::::::::::::::..:.:..:::::..::::::::.:::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....:.::::::::::::::::::::::::::::::::::::::::::::::..:.:..:::::.:::::::::..::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::.:::::::::::::::::::::::........:::::::::::::::.::.:..:::::::::::::::..::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::::::::::....::.::::::::::::::::::::::..::::::::::::::::::::::....:..:::::::::::::::.:.:::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::..:.::.:::::::::::::::::::::.:::::::.:::::::::::::::::..::.:::::::::::::::.::..::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....::::::::::::.::.::.::::::::::::::::::::.::::...........:::::::::::..::..:::::::::::::.::::..:::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......:::::::::::.::.::.:::::::::::::::::::..:::....::::::::.::::::::::..:::.::::::::::::.::::::..::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:.....:::::::::.::.::.:::::::::::::::::::::::...::::.......:::::::::::.::::............::::::::...::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....:::.....::::::::..::::.::::::::::::::::::::::...:::..::::::..:::::::::::::::::::::::::::::::::::::....:::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::.....::::::..::::.::::::::::::::::::::::..:::..::::::::.::::::::::::::::::::::::::::::::::::::...:::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::.....:::::..::::.::::::::::::::::::::::.::::.:::::::::.::::::::::::::::::::::::::::::::::::::::..::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......:::::::::::::....::::..::::.::::::::::::::::::::::.:::.::::::::::.::::::::::::::::::::::::::::::::::::::::::.:::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........::::::::::::::::....:::.:::::.::::::::::::::::::::::.:::..:::::::::.:::::::::::::::::::::::::::::::::::::::::::.::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......::::::::::::::::::::....:::.::::.::::::::::::::::::::::.:::.::::::::::.::::::::::::::::::::::::::::::::::::::::::::.:::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::::....:::::::.::::::::::::::::::::::.:::.::::::::::.::::::::::::::::::::::::::::::::.:::::::::::..::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::....::::::.::::::::::::::::::::::.:::..:::::::::.:::::::::::::::::::::::::::::::::::::::::::::.::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::.......::::::::::::::::::::::::::::::....:::::.::::::::::::::::::::::.:::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::.::::::::
::::::::::::::::::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::::::::::....:::::::::::::::..::::::::::.:::.:::::::::..:::::::::::::::::::..::::::::::::::::::::::::..:::::::
:::::::::::::::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::::::::::::::.....::::::::::::..:::::::::::.:::.:::::::....::::::::::::::::::..::::::::::::::::::::::::::.:::::::
:::::::::::::::::::::::::::::::::::::::::.........::::::::::::::::::::::::::::::::::::::::::....:::::::::::.::::::::::::.::::.:::::::::.::::::::::::::::::.:::::::::::::::::::::::::::.:::::::
:::::::::::::::::::::::::::::::::::::..........::::::::::::::::::::::::::::::::::::::::::::::....:::::::::.:::::::::::::..:::.:::::::::.::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::...........::::::::::::::::::::::::::::::::::::::::::::::::::.....::::::..:::::::::::::..:::.::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::::.:::::::::::::::.::::........:::::::::::::::::::::::::::::::::::::::::::::::.::::::::
:::::::::::::::::::::::::::::::::....::..::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::.:::::::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::::
::::::::::::::::::::::::::::::::::...::..:::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::..:::::::::::::::.::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:::::::::
:::::::::::::::::::::::::::::::::::..::..::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::..::::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::::::
:::::::::::::::::::::::::::::::::::...:..:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::.:::::::::::.::::::::::::::::::::::::::::::::::::::::::::::::::::::::..::::::::::
:::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:::::::::::
::::::::::::::::::::::::::::::::::::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::.:::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::
::::::::::::::::::::::::::::::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::.:::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::..:::..:::::::::::::
:::::::::::::::::::::::::::::::::::::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::::::..:::::::::::::::::::::::::::::::::::::::::::::::::::::..::::...:::::::::::::
::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::..:::...:::::::::::::::
::::::::::::::::::::::::::::::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::::.::::::::::::::::::::::::::::::::::::::::::::::::::::..::...:::::::::::::::::
::::::::::::::::::::::::::::::::::::::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::.::.:::::::::::::::::::::::::::::::::::::::::::::::::.:::...::::::::::::::::::
::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:.::.:::::::::::::::::::::::::::::::::::::::::::::::::::....:......::::::::::::
::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::.:::::.:::::::::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.. ::.::::.:::::::::::::::::::::::::::::::::::::::::::::....:::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ...::::..:::.:::::::::::::::::::::::::::::::::::::::.. .:::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:::....::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....::::.:::.::::::::::::::::::::::::::::::::::::::::..:::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...::::........::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ..::.::::.:::::::::::::::::::::::::::::::::::::::..::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:::::......::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::.:::::::::::::::::::::::::::::::::::::::..:::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:::::......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:... .:::.:::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:::.........::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::.  .::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...::.....::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:...::.::.::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:::..:::::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....:..::.::::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....:.::..::::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:::::::::........:::::::::::::::::::::::::::::::::::::::::::::::::::::......::.::.::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...:::::::......:....:::::::::::::::::::::::::::::::::::::::::::::::::::......::.:::.::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::...::::.......::::....::::::::::::::::::::::::::::::::::::::::::::::::......::::.:::.::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::..:::.....:::::::.....:::::::::::::::::::::::::::::::::::::::::::::.......:::::.:::.::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::........::::::::.......::::::::::::::::::::::::::::::::::::::::::.........:::::.:::.::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::......::::::::.....::....:::::::::::::::::::::::::::::::::::::.......::...:::::.::..::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::...:::::::::.....:::::....::::::::::::::::::::::::::::::::.........::::...::::::::.:::.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::-----:...:::::::......:::::::.....:::::::::::::::::::::::::::.........:::::::...::::::::...:.::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::------=-:...:::::......:::::::::::....::::...:::::::::::::::..........::::::::::...::::::::......:::::::::..:.::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::-------------:...:::......::::::::::::::....:::...:::::::..............::::::::::::::...::::::::.:::....:::::::..:.::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::-----------:::::::.........::::::::::....:::...:::......................::::::::::::::::...::::::::.:::.::..::::::..:.::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::-------------:::::-:.......::::::::::......:::::::::................::::::::::::::::::::::...::::::::.:::.:::.::::::..:.::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::-----:::------::::---....:::::::::::......::::::::::.......::::::::::::::::::::::::::::::::...::::::::::::.::::.:::::..:.::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::----::::-----:::::---:..:::::::::::......::::::::::......:::::::::::::::::::::::::::::::::::...::::::::::::.::::.:::::..:.::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::----::::-----::::::---::...::::::::......:::::::::.........:::::::::::::::::::::::::::::::::::...::.....:::::.:::..:::::..:.::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::----:::-----:::::::---:::..::::::......::::::::::.......::..:::::::::::::::::::::::::::::::::::...:..::::.::.:..:::::::::..:.::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::----:::----::::::::---::::.:--::......::::::::::......:::::..:::::::::::::::::::::::::::::::::::......:::::..:::.:::::::::..:.::::::::::::::::.:::::::::::::::::::::::::::::::::
:::::::::::::----::-----:::::::----::::::---......::::::::::......:::::::..:::::::::::::::::::::::::::::::::::.. .:.::::..::::.:::::::::..:.::::::::::::::::..::::::::::..::::::::::::::::::::
::::::::::::----::----::::::::----:::::---:.....::::::::::......::::::::...:::::::::::::::::::::::::::::::::::...::.::..::..::.:::::::::..:.::::::.:::.:::::..:::.::::::..::::::::::::::::::::
::::::::::::---:-----:::::::-----::::----:....::::::::::......::::::::.....:::::::::::::::::::::::::::::::::::...::.:..::..:::..::::::::..:.:::::..:::.::::::.:::..:::::::::::::::::::::::::::
:::::::::::--------::::::::----:::::----...:::::::::::......::::::::.......:::::::::::::::::::::::::::::::::::...:...::..::::::.::::::::..:.::::::.:::.::::::.:::..:::::::::::::::::::::::::::
::::::::::---:---::::::::-----:::::----:...:::::::::......:::::::::........:::::::::::::::::::::::::::::::::::....::...::::::::..:::::::..:..:::::.:::.::::::.::::.:::::::::::::::::::::::::::
::::::::::---:::::::::::----:::::----:::...:::::::......:::::::::.....:::..:::::::::::::::::::::::::::::::::::...:::....::::::::..::::::..::.:::::.:::.::::::.::::.:::::::::::::::::::::::::::
::::::::::--::::::::::-----:::::----::::...:::::......::::::::::.....::::..:::::::::::::::::::::::::::::::::::...:..:...:::::::::::::::::.::.:::::.:::.::::::.:::::.::::::::::::::::::::::::::
:::::::::---:::::::::----::::::----:::::...::.......::::::::::.....::::::..:::::::::::::::::::::::::::::::::::.....:..::.........::::::::.::.:::::.::::.::::::.:::::::::::::::::::::::::::::::
:::::::::---::::::::----:::::----::::::::........::::::::::::....::::::::..:::::::::::::::::::::::::::::::::::...:..:::..::::.::.::::::::..:..::::..:::.::::::::::::::::::::::::::::::::::::::
:::::::::---::::::----::::::----::::::--:......::::::::::::.....::::::::...:::::::::::::::::::::::::::::::::::.....::..::::..::::.:::::::..::.:::::.:::.::::::::::::::::::::::::::::::::::::::
:::::::::---:::::----::::::----:::::::---.....:::::::::::.....:::::::::....:::::::::::::::::::::::::::::::::::...:::..::::..:::::.:::::::..::.:::::.::::.:::::::::::::::::::::::::::::::::::::
:::::::::---:::::---:::::----::::::::---::.....:::::::::.....:::::::::.....:::::::::::::::::::::::::::::::::::. .:..:::::.::::::::.:::::::.::..:::::.:::.:::::::::::::::::::::::::::::::::::::
:::::::::---::::::::::::----::::::::---:::::....::::::.....:::::::::.......:::::::::::::::::::::::::::::::::::.....::::..::::.:::::..:::::.:::.:::::.:::..::::::::::::::::::::::::::::::::::::
:::::::::---::::::::::----:::::::::---:::::::....:::......:::::::::........:::::::::::::::::::::::::::::::::::...:::::..::::.:::::...:::::..:::.:::::.:::.:::::::::::::::::::::::....:::::::::
:::::::::---:::::::::----:::::::::---:::::::::..........:::::::::.....::...:::::::::::::::::::::::::::::::::::...:::..::::..::::..::..:::.:.:::..::::::::::::::::::::::::::::.....:::.::::::::
:::::::::---::::::::----::::::::----:::::::::::.......::::::::::....::::...:::::::::::::::::::::::::::::::::::...::..::::.:::::..::.:.:..::..::::::::::::::::::::::::::::::....:::::::::::::::
::::::::::--::::::----:::::::::----:::::::--:::......:::::::::.....:::::..::::::::::::::::::::::::::::::::::::...:.::::..::::..::..:::..::.:.::::::::::::::::::::::::::::....:........::::::::
::::::::::--:::::----:::::::::----:::::::---::::::....:::::::.....::::::..::::::::::::::::::::::::::::::::::::....::::.:::::..::..:::.:...:::.:::..::::::::::::::::::::....:::::::::::::::::::
::::::::::--:::::---:::::::::----:::::::----:::::::.....:::.....::::::::..::::::::::::::::::::::::::::::::::::. .:::..:::::..:..:::..::...:::::..::::::::::::::::::::....:::::::::::::::::::::
::::::::::---:::::::::::::::---::::::::---:::::::::::..........::::::::...::::::::::::::::::::::::::::::::::::...::..::::..::..:::..:..::......::::::::::::::::::::. ..:::::::::::::::::::::::
::::::::::---:::::::::::::----::::::::---:::::::::::-:.......::::::::::...::::::::::::::::::::::::::::::::::::...:..::::..::.::::.::..:::::....................::....:::::::::::::::::::::::::
::::::::::---::::::::::::----::::::::---:::::::::::---.....::::::::::.....::::::::::::::::::::::::::::::::::::.....:::..::..:::..:..::::::..:::::::...:::::::::..:.:::::::::::::::::::::::::::
:::::::::::--:::::::::::----:::::::----:::::::::::----......::::::::......::::::::::::::::::::::::::::::::::::...:::..:::..:::..:..::::::.:::::::..::::::::::..:::.:::::::::::::::::::::::::::
:::::::::::---::::::::----::::::::----:::::::::::----:::::....::::........::::::::::::::::::::::::::::::::::::..:::..::..:::..::.::::::..::::::...::::::::...:::::.:::::::::::::::::::::::::::
::::::::::::--:::::::----::::::::----::::::::::----::::::::....:......:..:::::::::::::::::::::::::::::::::::::..:..:::..:::..:..:::::..::::::...::::::::...:::::::.:::::::::::::::::::::::::::
::::::::::::---:::::----::::::::----::::::::::----:::::::::::.......:::..:::::::::::::::::::::::::::::::::........::..:::..::.::::::..::::::..::::.:::..::::::::::::::::::::::::::::::::::::::
:::::::::::::---::----::::::::----::::::::::-----::::::::::--:....:::::..::::::::::::::::::::::::::::::.........::..:::..::..:::::..::::::..::::..::..::::::::::::::::::::::::::::::::::::::::
::::::::::::::-------::::::::----::::::::::----:::::::::::---:....::::...:::::::::::::::::::::::::::...........::..::......:::::..::::::..::::..::..::::::::::::::::::::::::::::::::::::::::::
::::::::::::::------::::::::----:::::::::-----:::::::::::---:::....:::...::::::::::::::::::::::::.........::::::.:::..:..::::::..::::::..:::...:...:::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::---:::::::::----:::::::::----::::::::::::----::::....::...::::::::::::::::::::::.......:::::::::.::..:..::::::..::::::..:::..:::..:::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::---::::::::---:::::::::-----::::::::::::----::::::....:...:::::::::::::::::::........::::::::::....:..::::::..::::::...:::..::..:::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::---:::::----::::::::-----:::::::::::::----:::::::::......:::::::::::::::::.......::::::::::::....:..:::::..:::::::..:::..::..:::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::---::::---::::::::----:::::::::::::----:::::::::--:.....:::::::::::::::......::::::::::::::..::..::::::..::::::..:::..:::..::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::---:::::::::::::-----:::::::::::::----:::::::::---:::...:::::::::::::......:::::::::::::::..::.::::::..::::::..:::..::::..:::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::---:::::::::::----::::::::::::::----::::::::::---:::...:::::::::::......:::::::::::::::::::..:::::..:::::::..:::..:::..:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::--:::::::::::---:::::::::::::----:::::::::::---::::...:::::::::......:::::::::::::::::::..::::::..::::::..:::..::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::---:::::::::::::::::::::::::----:::::::::::---:::::...:::::::......:::::::::::::::::::::.::::::.::::::..:::..::::....::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::---::::::::::::::::::::::----:::::::::::----::::::...:::::......::::::::::::::::::::::::::::..::::::..:::..::::..:.:::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::---:::::::::::::::::::::----:::::::::::----:::::::...:::......:::::::::::::::::::::::::::::.::::::..:::..::::..::....:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::---::::::::::::::::::----::::::::::::----::::::::..:::.....::::::::::::::::::::::::::::::..:::::..::..:::::..:::...::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::--:::::::::::::::::----::::::::::::---:::::::::-----....:::::::::::::::::::::::::::::::.::::::.:::..:::::.::::..::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::---:::::::::::::::----:::::::::::----::::::::-------..::::::::::::::::::::::::::::::::::::::::::..:::::..::::..:::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::---::::::::::::----::::::::::::----::::::-------:::::::::::::::::::::::::::::...::::::::::::::..:::::.::::...::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::---::::::::::----:::::::::::-----:::::------::::::::::::::::::::::::::::::::...:::::::::::::.:::::..::::..:...::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::---::::::::----:::::::::::::---::::-------:::::::::::::::::::::::::::::::::::.......:::::::.:::::.:::::.:::..:::.:::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::---::::::----::::::::::::::::::-------::::::::::::::::::::::::::::::::::::::.......:::::::::::..::::..:::..:::.:::::::::::::::::::::..:::::::::::::::::::::::::::::::
::::::::::::::::::::::::::---::::----::::::::::::::::-------::::::::::::::::::::::::::::::::::::::.........:::::::::::.::::..:::...:::..::::::::::::::::::::::...:::::::::::::::::::::::::::::
:::::::::::::::::::::::::::---::---:::::::::::::::--------:::::::::::::::::::::::::::::::::::::.............::::::::..::::..:::..:.:::.:::::::::::::::::::::::::...:::::::::::::::::::::::::::
:::::::::::::::::::::::::::---::--::::::::::::::-------::::::::::::::::::::::::::::::::::::..........::::....:::::::.::::::::..:::.::.:::::::::::::::::::::::::::::..:::::::::::::::::::::::::
::::::::::::::::::::::::::::---::::::::::::::-------::::::::::::::::::::::::::::::::::::..........::::::::....::::::::::::::..:.::.:..:::::::::::::::::::::::::::::::..:::::::::::::::::::::::
:::::::::::::::::::::::::::::---:::::::::::------::::::::::::::::::::::::::::::::::::.........:::::::::::::....:::::::::::..::..::.:.:::::::::::::::::::::::::::::::::..::::::::::::::::::::::
::::::::::::::::::::::::::::::---:::::::-------:::::::::::::::::::::::::::::::::::........::::::::::::::::::....:::::::::.::..::::...:::::::::::::::::::::::::::::::::::..::::::::::::::::::::
::::::::::::::::::::::::::::::----::::-------:::::::::::::::::::::::::::::::::::.......::::::::::::::::::::::....::::::::::..:::::..:::::::::::::::::::::::::::::::::::::..:::::::::::::::::::
:::::::::::::::::::::::::::::::-----------:::::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::....:::::::..:::::::.::::::..::::::::::::::::::::::::::::::::.::::::::::::::::::
:::::::::::::::::::::::::::::::::------::::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::::::::::...::::::..::::::::.::::::.::::::::::::::::::::::::::::::::::..::::::::::::::::
::::::::::::::::::::::::::::::::::---:::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::::::::::::::...::::.::::::::::.::::::.::::::::::::::::::::::::::..:::::::..:::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......::::::::::::::::::::::::::::::::::::...::::::::::::...:::::..:::::::::::::::::::::::::::......::::.::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::::::::::::::::::::....::::::::::....:.:::..::::::::::::::::::::::::::::::::...:::..::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........::::::::::::::::::::::::::::::::::::::::::....:::::::..::...::::..::::::::::::::::::::::::::::::::::...:::.:::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........::::::::::::::::::::::::::::::::::::::::::::::....::::::.:::..:::::..:::::::::::::::::::::::::::::::::::::::::..:::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::............:::::::::::::::::::::::::::::::::::::::::::::::::....::::::::...:::::..:.:::::::::::::::::::::::::::::::::::::::::.::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::.........::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::::..:::::.::.::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::..:::::.:.:::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::..:::::.:.:::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::::..:::::.:.::::::::::::::::::::::::::::::..:::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::::.:::::.:.::...::::::::::::::::::::::::..::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::::.:::::...::..::::::::::::::::::::::::..:::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::..::::...::..::::::::::::::::::::::::.::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::.::::...::..:::::::::::::::::::::::.::::.::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....::.::::.:.::..::.:.:::::::::::::::::.:::..:::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....::::.:::.:.::.:::.:.::::::::::::::::.::..:::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::.......::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::...:::.::.:::.:..::::::::::::::.::..::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...:.......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::::::..::::.::.:::.:..:::::::::::::.::..:::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....::::..:.::::....:::.:..:::.::::::::.::.:::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::......:::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::.:::::..:::.:..:::.:::::::..:.::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::.............::::::::::::::::::::::::::::::::::::::::::::::::::........:::::::::.:::::..:::.:..:::.:::::::...:::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::..:......:....::::::::::::::::::::::::::::::::::::::::::::::::.....:...::::::::::.:::::.:::.:.:::..::::::...::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::...:...:::::....::::::::::::::::::::::::::::::::::::::::::::......:::...::::::::::..::::::::::.:::..:::.:: .:::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::......:::::::::::::::::::::::::::::::::::::::::.....:::::...::::::::..:.::::::::::.:::.::::.:..::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::..........::::::::::::::::::::::::::::::::::::::.....:::::::...:::::::..::..:::::::::.:::.:::.::..::::.:::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::----------------:...:..........::....:::::::::::::::::::::::::::::::::::.....:::::::::..:::::::.:::.:..::::::::.:::.:::.:...::::.:::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::--------------------..........::::::.......:::::::::::::::::::::::::::::......:::::::::...:::::::::..:::.::::::::.:::..::.:.:.::::.:::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::---------------------.......:::::::::.......::::::::::::::::::::::::::.......:::::::::::...:::::::...:::...:::::::.:::..::...:.::::.:::.:::::::::::::::::::::
::::::::::::::::::::::::::::::::---:::::::-----::::::...:::::::::::..........::::::::::::::::::::::::.......:::::::::::::...::::::..:::..:::.::::::..:::.::...:.::::.:::.:::::::::::::::::::::
:::::::::::::::::::::::::::::::---::::::-----::::::::..::::::::::............:::::::::::::::::::::.......::::::::::::::::..::::::.:::..:::::..::::::.::::::...:.::::.:::.:::::::::::::::::::::
::::::::::::::::::::::::::::::---::::------::::::::::..:::::::.......:::::.....::::::::::::::::........::::::::::::::::::..::::..::..::::..::..::::::::::::...:.::::.:::..::::::::::::::::::::
:::::::::::::::::::::::::::::---:::------::::::::::::..:::::.......::::::::.....:.::::::::::........::::::::::::::::::::...::::::..:::::.:::::..:::::::::::...:.::::.:::..::::::::::::::::::::
::::::::::::::::::::::::::::---::-----::::::::::--:::..:.........::::::::..........:::::::........::::::::::::::::::::::...:::::.:::::..:::::::..:::::::::: ..::.:::.:::....::::::::::::::::::
:::::::::::::::::::::::::::---------::::::::::----:::.........:::::::::............::::.......::::::::::::::::::::::::::...:::..:::::..::::::.::.::::::::::.:.::::::.:::....::::::::::::::::::
::::::::::::::::::::::::::--------:::::::::::-----:::......::::::::::......:::.....::.......::::::::::::::::::::::::::::...::.:::::..::::::..::::.:::::::::.:.::::::.:::...:::::::::::::::::::
:::::::::::::::::::::::::-------:::::::::::-----:::::::..::::::::::......::::::..........:::::::::::::::::::::::::::::::..:..:::::..:::::..::::::..::::::::.:.::::::.:::...:::::::::::::::::::
::::::::::::::::::::::::------:::::::::::-----:::::::---:::::::::......:::::::::.......::::::::::::::::::::::::::::::::....:::::..:::::..::::..:::.::::::::.:.::::::::::...::.::::::::::::::::
:::::::::::::::::::::::-----:::::::::::-----::::::::---::::::::......::::::::::......::::::::::::::::::::::::::::::::::...:::::..:::::..:::..::::::.::::::..:.::::::::::...::.::::::::::::::::
::::::::::::::::::::::----:::::::::::-----:::::::::---:::::::......:::::::::::.......::::::::::::::::::::::::::::::::::...:::..:::::..:::..::::::.:..:::::..:.::::::::::...::.::::::::::::::::
::::::::::::::::::::::---::::::::::-----:::::::::----:.:::.......:::::::::::.......::::::::::::::::::::::::::::::::::::...::..::::..::::..:::::..:::.:::::....::::::::::...::..:::::::::::::::
:::::::::::::::::::::---:::::::::-----::::::::::----:..:.......::::::::::..........::::::::::::::::::::::::::::::::::::...:.::::..::::..:::::..:::::...:::.:..:::::::::::..::..:::::::::::::::
::::::::::::::::::::---:::::::::----::::::::::-----::..:.....::::::::::.......::...::::::::::::::::::::::::::::::::::::....:::...::::..:::::..:::::...::::.:..:::::::::::..::..:::::::::::::::
:::::::::::::::::::---::::::::-----:::::::::-----::::..:::::::::::::.......:::::...:::::::::::::::::::::::::::::::::::.. .:::..::::..:::::..:::::..::..::..::..:::::::::::.::..:::::::::::::::
:::::::::::::::::::---:::::::----:::::::::-----::::::..:::::::::::.......:::::::...:::::::::::::::::::::::::::::::::::...::..:::::..::::..:::::..::..:.::.::::..::::::::::.::..:::::::::::::::
::::::::::::::::::---::::::----:::::::::-----::::::::..::::::::.......::::::::::...:::::::::::::::::::::::::::::::::::...:.:::::..::::...:::::..::..:::..::::....:::::::::.::..:.:::::::::::::
:::::::::::::::::---::::::----:::::::::-----::::::..:..::::::.......::::::::::::...:::::::::::::::::::::::::::::::::::....:::::..::::..:::::..::..:::::::::..:::..::::::::.:...:.:::::::::::::
:::::::::::::::::---:::::----::::::::-----::::::::...:-:::.......:::::::::::::::...:::::::::::::::::::::::::::::::::::. .:::::.::::..:::::..:::..::::::::...:::::..:::::::.:..::.:::::::::::::
::::::::::::::::---::::::--::::::::-----::::::::::..:--:.......::::::::::::::..:...:::::::::::::::::::::::::::::::::::..:::::::::...:::::..::..::::::::..:::::::::..::::::.:..::.:::::::::::::
::::::::::::::::---::::::::::::::-----::::::::::::.:---......:::::::::::::.........:::::::::::::::::::::::::::::::::::..::::::::..:::::..:::..:::::::..:::::::::::::..::::::..::.:::::::::::::
::::::::::::::::---:::::::::::::-----:::::::::::::----....::::::::::::::.......:...::::::::::::::::::::::::::::::::::...::::::..:::::..:::..:::::::..::::::::::.::::...::::::.::.:::::::::::::
::::::::::::::::---:::::::::::-----:::::::::::::-----....::::::::::::........:::...::::::::::::::::::::::::::::::::::...:::::::::::..::::..::::::..::::::::::..:::...:..:::::..:.:::::::::::::
::::::::::::::::---::::::::::----::::::::::::::----::....::--:::::........::::::...::::::::::::::::::::::::::::::::::...::::::::::..:::..:::::::..::::::::::..::...::::..::::..:.:::::::::::::
::::::::::::::::---::::::::----::::::::::::::-----::::...:---::.........::::::::..:::::::::::::::::::::::::::::::::::...::::::::::::::..::::::..:::::::.::::::...:::::::.:::::::.:::::::::::::
::::::::::::::::---:::::::----:::::::::::::-----:::::::.----.........:::::::::::...::::::::::::::::::::::::::::::::::...:::::::::::::..:::::..:::::::..::::::..::::::::::.::::::..::::::::::::
::::::::::::::::---:::::----:::::::::::::-----::::::::----:.......::::::::::::::...::::::::::::::::::::::::::::::::::...::::::::::::.::::::..::::::..::::::::..::::::::::..:::::..::::::::::::
:::::::::::::::::---::::---::::::::::::-----:::::::::----...::::::::::::::::::::...::::::::::::::::::::::::::::::..::...::::::::::::::::::.::::::..::::::::...::::::::::::..::::::::::::::::::
::::::::::::::::::---:::::::::::::::::-----::::::::-----:....::::::::::::::....:...:::::::::::::::::::::::::::::....:...::::::::::::::::::::::::.:::::::::..::::::..:::::::.::::::::::::::::::
:::::::::::::::::::---::::::::::::::-----::::::::-----::::..:::::::::::::......:...:::::::::::::::::::::::::::.....::...::::::::::::::::::::::::::::::::..::::::..::::::::::.::::::::.::::::::
::::::::::::::::::::---:::::::::::-----::::::::-----:::::::---:::::::........:::...:::::::::::::::::::::::::......:::...:::::::::::::::::::::::::::.....::::::...::::::::::...:::::..:::::::::
::::::::::::::::::::---:::::::::::---:::::::::-----::::::----:..:::........:::::...:::::::::::::::::::::::......::::::..:::::::::::::::::::::::::::...:::::::..:::::::::::..:..::..:::::::::::
:::::::::::::::::::::---::::::::::-:::::::::-----:::::::----:....:.............:...:::::::::::::::::::::......:::::::::::::::::::::::::::::::::::::...:::::..:::::::..::..::.:....::::::::::::
::::::::::::::::::::::---:::::::::::::::::-----:::::::-----:::.......:::...........:::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::...:::.::::::::..::.:::.::..::::::::::::::
:::::::::::::::::::::::---::::::::::::::-----::::::::----::::::--...:::::..........:::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::....:::::::::..::..::..:..:..:::::::::::::
::::::::::::::::::::::::---:::::::::::-----::::::::-----::::::---....:::::::::::...:::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::......:::::::..:..:::..:..::..:::::::::::::
:::::::::::::::::::::::::---::::::::-----::::::::-----:::::::----:....:::::::::...::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::........:::::..::..::..::.:::..:.::::.:::::::
:::::::::::::::::::::::::----::::::----::::::::-----::::::::----:::....::::::::...:::::::::::.......::::::::::::::::::::::::::::::::::::::::::::....:::...:::::::..::..:..:::.:::.:::.::::::::
::::::::::::::::::::::::::---::::-----:::::::-----::::::::-----:::::....::::::::..:::::::::......:::::::::::::::::::::::::::::::::::::::::::::.....:::::...:::::::::..:..:::.:..::.:.:::::::::
:::::::::::::::::::::::::::---::----:::::::-----:::::::::----::::::::....:::::::::::::::.......::::::::::::::::::::::::::::::::::::::::::::::.....::::::....::::::..::.::::.::.::::.::::::::::
::::::::::::::::::::::::::::-------::::::-----:::::::::-----:::::::::::...:::----=-::........::::::::::::::::::::::::::::::::::::::::::::::.....:::::::::...:::::..:..:::..::.::::.:::::::::::
:::::::::::::::::::::::::::::----:::::::----:::::::::-----:::::::::::::..:--------:.......:::::::::::::::::::::::::::::::::::::::::::::::.....::::::::::::...::::::..:::..:..::::.:::..:::::::
::::::::::::::::::::::::::::::--::::::-----::::::::-----::::::::::::::--------:.........:::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::....::::.::::..:..::::.::::.::::::::
::::::::::::::::::::::::::::::---::::----::::::::::----:::::::::::--------:...:::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::...::::::::.::..::::.::::..::::::::
:::::::::::::::::::::::::::::::---:::--::::::::::::::::::::::::::-------::....:::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::...:::::..::..::::.:::::...:::::::
::::::::::::::::::::::::::::::::---::::::::::::::::::::::::::::::---:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::...:::::::..::::.:::::. .::::::::
::::::::::::::::::::::::::::::::---::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::...:::::..:::::.::::....:::::::::
:::::::::::::::::::::::::::::::::---::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::...:::..:::::.::::....:.::::::::
::::::::::::::::::::::::::::::::::---:::::::::::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::...::::::::.::::....:..::::::::
::::::::::::::::::::::::::::::::::---::::::::::::::::........::::::::::::::::::::::::::::::::::::::::::::::::::::..:::::::.....::::::::::::::::::::::::::::::::....::::::.::::....:...::::::::
:::::::::::::::::::::::::::::::::::---:::::::::::.............::::::::::::::::::::::::::::::::::::::::::::::::::...:::::.....:::::::::::::::::::::::::::::::::::....:::. ::::.. ...:.:::::::::
::::::::::::::::::::::::::::::::::::---:::::::..........:::....:::::::::::::::::::::::::::::::::::::::::::::::::...:::......:::::::::::::::::::::::::::::::::::::...::..::::...:....::::::::::
:::::::::::::::::::::::::::::::::::::-=-::..........::::::::....::::::::::::::::::::::::::::::::::::::::::::::::...:......::::::::::::::::::::::::::::::::::::::::...:.::::...:.......::::::::
::::::::::::::::::::::::::::::::::::::-:........:::::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::::::::::::::::::::...:::::::..:.::..:::::::::
::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::::::...:::::..:::....:::::::::
:::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::::::....:::..:::..:.::::::::::
:::::::::::::::::::::::::::::::::.......::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::::::...:::::::....:::::::::::
:::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::....::::::::::::::::::::::::::::::::::::::::::::...:...:::::::::::::::::::::::::::::::::::::::::::::::...:::::..:.::::::::::::
:::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::...:.....:::::::::::::::::::::::::::::::::::::::::::::...::::.::::::::::::::::
::::::::::::::::::::::::::.......:::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::...:.....:::::::::::::::::::::::::::::::::::::::::::::....::::::::::::::::::::
::::::::::::::::::::.:::.......:::::::::::::::::::::::::::::::::::....::::::::::::::::::::::::::::::::::::::::::........::::::::::::::::::::::::::::::::::::::::::::::....::::::::::::::::::::
:::::::::::::::::::...:.....:::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::.........:::::::::::::::::::::::::::::::::::::::::::::....::::::::::::::::::::
:::::::::::::::::::.......::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::.....::...::..::::::::::::::::::::::::::::::::::::::::.....:::::::::::::::::::
:::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::...::::.......::::::::::::::::::::::::::::::::::::::::.....:::::::::::::::::::
:::::::::::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::...:::::......::::::::::::::::::::::::::::::::::::::::.....:::::::::::::::::::
:::::::::::::::::::....::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::...::::.....::::::::::::::::::::::::::::::::::::::::::.....:::::::::::::::::::
:::::::::::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::...:::......::::...:::::::::::::::::::::::::::::::::.....:::::::::::::::::::::
:::::::::::::::::::.....::::::::::::::::::::::::::::::::::::::::::::::::....::::::::::::::::::::::::::::::::::::...::....:...:.....::::::::::::::::::::::::::::::::......:::::::::::::::::::::
:::::::::::::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::....:::::::::::::::::::::::::::::------..----.::::.......:::::::::::::::::::::::::::::::........:::::::::::::::::::::
:::::::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::---------------:::::.....:::::::::::::::::::::::::::::::.....::...:::::::::::::::::::::
:::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::----------------::::::.......::::::::::::::::::::::::::::::.....:::...:::::::::::::::::::::
:::::::::::::::::::...:.....::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::---------:::-----:.:::::....:....:::::::::::::::::::::::::::.....:::::...:::::::::::::::::::::
:::::::::::::::::::...:......:::::::::::::::::::::::::::::::::::::::::::::::....::::::::::::::------:::::------::..:::.....:::....::::::::::::::::::::::::......::::::...:::::::::::::::::::::
:::::::::::::::::::.........:::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::-----:::::------::::..::....:::.......::::::::::::::::::::::.....::::::::...:::::::::::::::::::::
:::::::::::::::::::.........::::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::-----:::::------::::::..-:...:::.........:::::::::::::::::::.....::::::::::...:::::::::::::::::::::
:::::::::::::::::::.....::...:::::::::::::::::::::::::::::::::::::::::::::::::....:::::::::---::::-------::::::::----..::.....::::...::::::::::::::::.....::::::::::::...:::::::::::::::::::::
:::::::::::::::::::...:::::...:::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::---::------:::::::::-----::::.....:::::....:::::::::::::......:::::::::::::...:::::::::::::::::::::
:::::::::::::::::::...:::::....::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::---------:::::::::-----..::.....::::::::....:::::::::::.....:::::::::::::::...:::::::::::::::::::::
:::::::::::::::::::...::::......:::::::::::::::::::::::::::::::::::::::::::::::...:::::::::-------:::::::::-----::.......:::::::::.....:::::::::.....:::::::::::::::::...:::::::::::::::::::::
:::::::::::::::::::...:::........::::::::::::::::::::::::::::::::::::::::::::::...::::::::------:::::::::-----::::......::::::::........:::::::.....::::::::::::::::::...:::::::::::::::::::::
:::::::::::::::::::...::....::....::::::::::::::::::::::::::::::::::::::::::::....::::::::---::::::::::-----:::--:....::::::::......::...::::.....::::::::::::::::::::...:::::::::::::::::::::
::::::::::::::::::::.......::::....:::::::::::::::::::::::::::::::::::::::::......::::::::--:::::::::-----:::::---...::::::::.....:::::...::.....:::::::::::::::::::::...:::::::::::::::::::::
::::::::::::::::::::.....:::::::....:::::::::::::::::::::::::::::::::::::::.......:::::::---::::::------:::::----:...::::::.....:::::::........:::::::::::::::::::::::...:::::::::::::::::::::
::::::::::::::::::::....:::::::......::::::::::::::::::::::::::::::::::::.....:...:::::::---::::------:::::-----.....:::......::::::...:......::::::::::::::::::::::::...:::::::::::::::::::::
::::::::::::::::::::...:::::::........::::::::::::::::::::::::::::::::::.....::...:::::::--:::------:::::------......:......::::::.....::.....::::::::::::::::::::::::...:::::::::::::::::::::
:::::::::::::::::::....:::::.....::...::::::::::::::::::::::::::::::::.....::::...:::::::--:::----:::::------:::..........::::::......::::....::::::::::::::::::::::::...:::::::::::::::::::::
:::::::::::::::::::....:::.....:::::...::::::::::::::::::::::::::::::.....:::::...:::::::--::::::::::-----::::::........:::::::....:::::::....::::::::::::::::::::::::...:::::::::::::::::::::
:::::::::::::::::::....:......:::::::...::::::::::::::::::::::::::::....:::::::...:::::::--::::::::-----:::::::::.....::::::::....:::::::::....:::::::::::::::::::::::...:::::::::::::::::::::
:::::::::::::::::::.........:::::::::....:::::::::::::::::::::::::.....:::::::::..:::::::--::::::-----::::::::::::...::::::::....::::::::::.....::::::::::::::::::::::...:::::::::::::::::::::
::::::::::::::::::-:::------::::::.......::::::::::::::::::::::::....::::::::::...:::::::--:::::----:::::::::::---:..::::::....::::::::::::.....::::::::::::::::::::::...:::::::::::::::::::::
::::::::::----------------=-::::......:...:::::::::::::::::::::.....:::::::::::...:::::::--:::::--:::::::::::-----:..:::::....:::::::::::::...::::::::::::::::::::::::...:::::::::::::::::::::
::::::::::----------:::----:::......::::...:::::::::::::::::::.....::::::::::::...:::::::--::::::::::::::::-----:::...::.....:::::::...::::...::::::::::::::::::::::::...:::::::::::::::::::::
:::::::::::::::::::....:::::......::::::...:::::::::::::::::.....:::::::::::::::..:::::::--::::::::::::::-----:::::.........::::::.....::::...::::::::::::::::::::::::...:::::::::::::::::::::
:::::::::::::::--::....:::......:::::::::...::::::::::::::......::::::::::::::::..:::::::--::::::::::::-----::::::::..:...::::::......:::::...::::::::::::::::::::::::...:::::::::::::::::::::
:::::::::::::----::...........:::::::::......::::::::::.......:::::::::::::::::...:::::::--:::::::::------:::::::::::--::::::::.....:::::::...::::::::::::::::::::::::...:::::::::::::::::::::
:::::::::::-----:::.........:::::::::........::...:::.......::::::::::::::::::::..:::::::---::::::------:::::::::::----:.::::.....:::::::::...::::::::::::::::::::::::...:::::::::::::::::::::
::::::::::----:::::.......::::::::::......:...:...:::.....:::::::::::::::::::::...:::::::---::::------::::::::::::----:...:......:::::::::::..::::::::::::::::::::::::...:::::::::::::::::::::
::::::::-----::::::......:::::::::.....::::.......::::::::::::::::::::::::::::::..::::::::---:------::::::::::::----:::........:::::::::::::..::::::::::::::::::::::::...:::::::::::::::::::::
::::::-----::::::::...:::::::::::.....::::::......::::::::::::::::::::::::::::::..::::::::-------::::::::::::::----:::::.:...:::::::::::::::..:::::::::::::::::::::::::..:::::::::::::::::::::
:::::-=--::::::::::...::--:::::.....:::::::.......::::::::::::::::::::::::::::::..:::::::::----::::::::::::::-----::::::-=:.::::::::::::::::..::::::::::::::::::::::::::::::::::::::::::::::::
::::::--:::::::::::...----:::.....:::::::.........:::::::::::::::::::::::::::::...::::::::::---::::::::::::-----::::::----:..::::::::...::::..::::::::::::::::::::::..::::::::::::::::::::::::
:::::::::::::::::::::-----::.....:::::::.....:....::::::::::::::::::::::::::::::..:::::::::::---:::::::::------:::::-----:...:::::::....::::..:::::::::::::::::::::...::::::::::::::::::::::::
::::::::::::::::::-----:.......::::::......::::...:::::::::::::::::::::::::::::...::::::::::::---::::::-----::::::-----::::...:::::....:::::..::::::::::::::::::::....::::::::::::::::::::::::
:::::::::::::::------:.......::::::......::::::...::::::::::::::::::::::::::::::..:::::::::::::---:::::----:::::-----::::::---.::.....::::::..:::::::::::::::::::....:::::::::::::::::::::::::
::::::::::::-------:..:....::::::.......::::::....:::::::::::::::::::::::::::::...::::::::::::::---::::--:::::-----::::::-----......:::::::...::::::::::::::::::....::::::::::::::::::::::::::
::::::::::-------::...::::::--:......::::::.......:::::::::::::::::::::::::::::...:::::::::::::::---::::::::------::::------:......:::::......:::::::::::::::::....:::::::::::::::::::::::::::
:::::::::-----::::::...::-----.....:::::::........:::::::::::::::::::::::::::::...:::::::::::::::---::::::------::::------:::....::::::.......::::::::::::::::...:::::::::::::::::::::::::::::
::::::::----::::::::...:-----:...:::::::.....::...:::::::::::::::::::::::::::::...::::::::::::::::---::::----::::::-=---:::::.....:::::...::..:::::::::::::::....:::::::::::::::::::::::::::::
:::::::---::::::::::::----:....:::::::.....::::...:::::::::::::::::::::::::::::...:::::::::::::::::---:::--:::::::::--::::::::....::::::::::..::::::::::::::....::::::::::::::::::::::::::::::
:::::::--:::::::::::----:....:::::::......:::::...::::::::::::::::::::::::::::::..::::::::::::::::::--::::::::::::::::::::::::::......::::::..:::::::::::::....:::::::::::::::::::::::::::::::
:::::::::::::::::------...::::::::......:::::::...::::::::::::::::::::::::::::::::::::::::::::::::::---::::::::::::::::::::::::::.....::::::::::::::::::::....::::::::::::::::::::::::::::::::
:::::::::::::::------::....::::--:....:::::::::...:::::::::::::::::::::::::::..::::::::::::::::::::::---:::::::::::::::::::::::::....::::::::::::::::::::....:::::::::::::::::::::::::::::::::
:::::::::::::------:::::....:----:..:::::::::::...::::::::::::::::::::::::::...::::::::::::::::::::::---::::::::::::::::::::::::::...:::::::::::::::::::....::::::::::::::::::::::::::::::::::
:::::::::::------::::::::::-----:.:::::::::::.....:::::::::::::::::::::::::....:::::::::::::::::::::::---:::::::::::::::::::::::::....:::::::::::::::::....:::::::::::::::::::::::::::::::::::
::::::::::-----:::::::::------:.:::::::::::.......::::::::::::::::::::::::....:::::::::::::::::::::::::---:::::::::::::::::::::::::...:::::::::::::::.....::::::::::::::::::::::::::::::::::::
::::::::-----::::::::------:..::::::::::..........:::::::::::::::::::::::....::::::::::::::::::::::::::----::::::::::::::::::::::::::.::::::::::::::....::::::::::::::::::::::::::::::::::::::
:::::::----::::::::------:::...:::::::.......:::..:::::::::::::::::::::.....::::::::::::::::::::::::::::------:------------------------------:::::.....:::::::::::::::::::::::::::::::::::::::
::::::----::::::------:::::::...:::........:::::..:::::::::::::::::::......::::::::::::::::::::::::::::::-----------------------------------:::::....:::::::::::::::::::::::::::::::::::::::::
:::::-=-::::::------:::::::::....:.....:::::::::..:::::::::::::::::......:::::::::::::::::::::::::::::::::----------::::::::::::::::::..:::::::.....::::::::::::::::::::::::::::::::::::::::::
::::::-:::::------::::::::::::...::.::---:::::::..::::::::::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.............:::::::::::::::::::::::::::::::::::::::::::
::::::::::-----::::::::::::::::...:------:::::::..::::::::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...........:::::::::::::::::::::::::::::::::::::::::::::
:::::::::----::::::::::::::::::.:------:::::::....::::::::::::......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::::::::::::::::::::::::
::::::::----::::::::::::::::::------:::::.........:::::::::::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::----:::::::::::::::::-----:..::::..........:::::::::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::---::::::::::::::::------::....::....::::..::::::::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::-::::::::::::::::------:::::....:::::::::..::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::------::::::::....::::::::...::::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::-----::::::::::::....:::::::...:::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::-----:::::::::::::::....::::::...:.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::-----::::::::::::::::::...::::::.......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::-----:::::::::::::::::::::..:-------:...::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::-----:::::::::::::::::::::------------:.::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::----:::::::::::::::::::----------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::----:::::::::::::::::----------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::----:::::::::::::::---------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::----::::::::::::---------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::---::::::::::--------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::--------:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::-------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::----:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Download 6s Download 27s