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