:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::...:..........:::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::..::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:::::::...:::::::::::::::::::::::::::::::.:::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::..:::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::..::::::::::::::::::::::::::::::::::::::.:::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::..:::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:...::::..:::::::::::::::::::::::::::::::::::::::::::.:::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:...::::.:::::::::::::::::::::::::::::::::::::::::::::..::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..::...::::.:::::::::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::........::..:::::::::::::::::::::::::::::::::::::::::::::::::.:::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:.....:.::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:....:..:::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..::...::.:::::::::::::::::::::::::::::::::::::::::............::.:::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:.:....:.:::::::::::::::::::::::::::::::::::::::::.::.........:::.:::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:..:..::.::::::::::::::::::::::::::::::::::::::::.::.:...::::::::.:::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.::.:..::.::::::::::::::::::::::::::::::::::::::::.::.:..:::::::::::.::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:..:.:::::::::::::::::::::::::::::::::::::::::.:.:..::::::.......::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::.::::::::::::::::::::::::::::::::::::::::.::.:.::::::.::::::.::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::.::::::::::::::::::::::::::::::::::::::::.:..:.:::::.:::::::..:::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:.:::::::::::::::::::::::::::::::::::::::::.:.:..:::::.::::::::.:::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::.:::::::::::::::::::::.......:::::::::::::.:.:..::::::::::::::.:::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:::::::::::::...::.:::::::::::::::::::..::::::::::::::::::::.:.:..:::::::::::::.:.::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::..:.::.::::::::::::::::::..:::::::::::::::::::::.:.::.:::::::::::::.::.:::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....::::::::::..:.::.:::::::::::::::::..:::..........:::::::::...::.::::::::::::.::::.::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......:::::::::..:.::.:::::::::::::::::.:::...::::.....:::::::::.:::..:::::::::..::::::.:::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:....::::::::..:.::.::::::::::::::::::::...:::..:::..:::::::::.::::..........:::::::::...::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::::....::::::..::::.::::::::::::::::::::.:::..::::::..:::::::::::::::::::::::::::::::::....::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....:::::::....:::::..::::.:::::::::::::::::::..:::.:::::::..:::::::::::::::::::::::::::::::::::..::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::...::::..::::.:::::::::::::::::::.:::.::::::::..:::::::::::::::::::::::::::::::::::::.:::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::...::::.::::.:::::::::::::::::::.:::.::::::::..::::::::::::::::::::::::::::::::::::::.::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::...:::.::::.:::::::::::::::::::.:::.::::::::..:::::::::::::::::::::::::::::::::::::::.:::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::...:::::::.:::::::::::::::::::.:::.::::::::..:::::::::::::::::::::::::::::.:::::::::..::::::: ::::::::::::::::::::::::::::::::::::::::::::::::.....:::::::::::::::::::::::::...::::::.:::::::::::::::::::.:::.::::::::..::::::::::::::::::::::::::::::::::::::::.::::::: :::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::....::::.:::::::::::::::::::.:::.::::::::..::::::::::::::::::::::::::::::::::::::::.::::::: ::::::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::::::::::::....:::::::::::::.:::::::::.:::.::::::.:..:::::::::::::::::..:::::::::::::::::::::.::::::: :::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::::::::::::::::....:::::::::::.::::::::::..::.::::::..:.::::::::::::::::.::::::::::::::::::::::::.:::::: :::::::::::::::::::::::::::::::::::.........:::::::::::::::::::::::::::::::::::::::....::::::::.:::::::::::..::::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::...........:::::::::::::::::::::::::::::::::::::::::::....::::::..::::::::::::.:::.:::::::.::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::........::::::::::::::::::::::::::::::::::::::::::::::::....:::::.:::::::::::::.:::........::::::::::::::::::::::::::::::::::::::::::.::::::: :::::::::::::::::::::::::::::....::..::::::::::::::::::::::::::::::::::::::::::::::::::...::::.:::::::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::.::::::: :::::::::::::::::::::::::::::::..::..:::::::::::::::::::::::::::::::::::::::::::::::::::...::.::::::::::::::.::::::::::::::::::::::::::::::::::::::::::::::::::::.:::::::: :::::::::::::::::::::::::::::::...:..::::::::::::::::::::::::::::::::::::::::::::::::::::...:.::::.:::::::::.:::::::::::::::::::::::::::::::::::::::::::::::::::.::::::::: :::::::::::::::::::::::::::::::...:..::::::::::::::::::::::::::::::::::::::::::::::::::::...::::::.::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..::::::::: ::::::::::::::::::::::::::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::...::::.::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:::::::::: ::::::::::::::::::::::::::::::::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::.::::.::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::: :::::::::::::::::::::::::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::....::::::.::::::::::::::::::::::::::::::::::::::::::::::::..:::..:::::::::::: ::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::::.::::::::::::::::::::::::::::::::::::::::::::::::.:::...::::::::::::: ::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::.:::::::::::::::::::::::::::::::::::::::::::::::.::...::::::::::::::: ::::::::::::::::::::::::::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:.::.:::::::::::::::::::::::::::::::::::::::::::..::...:::::::::::::::: ::::::::::::::::::::::::::::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....::.:::::::::::::::::::::::::::::::::::::::::::.::.........::::::::::: ::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::::::::::::::::.. .:.::::.::::::::::::::::::::::::::::::::::::::::.....::::::::::::::::: ::::::::::::::::::::::::::::::::::...:...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::. ...:::.:::.::::::::::::::::::::::::::::::::::::....::::::::::::::::::: ::::::::::::::::::::::::::::::::::...::...::::.:::::::::::::::::::::::::::::::::::::::::::::::::::....::::.:::.:::::::::::::::::::::::::::::::::::...::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...:::........:::::::::::::::::::::::::::::::::::::::::::::::::.:.. .::.:::.:::::::::::::::::::::::::::::::::::..::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...::::......:::::::::::::::::::::::::::::::::::::::::::::::::::::.....::::.::::::::::::::::::::::::::::::::::..:::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::......:::.:::::::::::::::::::::::::::::::::::.::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...::........::::::::::::::::::::::::::::::::::::::::::::::::::::.::. ..::.::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...::....::....::::::::::::::::::::::::::::::::::::::::::::::::::::.:...:.::.::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...::..:::::....:::::::::::::::::::::::::::::::::::::::::::::::::::....::.::.:::::::::::.::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...:::::::::.....::::::::::::::::::::::::::::::::::::::::::::::::::....:.::..:::::::::::.::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...:::::::........:::::::::::::::::::::::::::::::::::::::::::::::.....::.::.::.:::::::::.::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...:::::.....:::...:::::::::::::::::::::::::::::::::::::::::::::.....:::.::.::.::::::::.:::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::...:::.....:::::.....:::::::::::::::::::::::::::::::::::::::::.....:::::.::.::.::::::::.:::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::........::::::.......::::::::::::::::::::::::::::::::::::::.......::::.:::.::.::::::::.:::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::......::::::.....:....::::::::::::::::::::::::::::::::::......::..::::.:::.::.::::::::.:::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::...::::::::....::::....:::::::::::::::::::::::::::::........::::..::::::::.::.::::::::.:::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::-----:..:::::::.....:::::::....:::::.::::::::::::::::::........:::::::..:::::::.....::::::::.:::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::------=-:...:::......::::::::::....:::...::::::::::::..........::::::::::..:::::::..:...:::::::..:.::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::----------::::...:......:::::::::..::....::...:::...............::::::::::::::..:::::::.:::.:..:::::..:.::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::----------:::::-:.......:::::::::....::::.:::.................::::::::::::::::::..:::::::..::.::.:::::..:.::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::-----:::-----:::-=:.....:::::::::......::::::::...........::::::::::::::::::::::::..:::::::::::.:::.::::..:.::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::----:::-----::::---:..:::::::::......:::::::::.....::::::::::::::::::::::::::::::::..:::::::::::.:::.::::..:.::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::---::::----:::::----:..:::::::......:::::::::.......::::::::::::::::::::::::::::::::..::.....::::.:::.::::..:.::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::---:::----::::::---:::..:::::......::::::::......::..::::::::::::::::::::::::::::::::..:..:::.::::.::::::::..:.::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::---::----:::::::---::::.--::......::::::::......::::..::::::::::::::::::::::::::::::::.....::::..::.::::::::..:.:::::::::::::::.::::::::::::::::::::::::::::: ::::::::::::---::----:::::::---:::::---......::::::::......::::::..::::::::::::::::::::::::::::::::. .:.:::..::::.::::::::.:.:::::::::::::::.::::::::::.:::::::::::::::::: :::::::::::---:----:::::::----::::----.....::::::::.....::::::::...::::::::::::::::::::::::::::::::..::.:..::..::.::::::::.:.:::::.:::.:::::.:::.::::::.:::::::::::::::::: ::::::::::--------:::::::----::::---:...:::::::::......:::::::.....::::::::::::::::::::::::::::::::..::...:..::::.::::::::.::.::::.:::.:::::.:::.::::::::::::::::::::::::: :::::::::-------:::::::----:::::---:..:::::::::......:::::::.......::::::::::::::::::::::::::::::::......:.:::::::.:::::::.::.::::.:::.:::::.:::.::::::::::::::::::::::::: :::::::::--::-::::::::----::::----::..:::::::.....:::::::::....::..::::::::::::::::::::::::::::::::..:::..::::::::...:::::.::.::::.:::.:::::.::::.:::::::::::::::::::::::: :::::::::--:::::::::----:::::----:::..:::::......::::::::.....:::..::::::::::::::::::::::::::::::::..::....:::::::::::::::..:.:::::.::.::::::.::::.::::::::::::::::::::::: ::::::::---::::::::----:::::---:::::...::......:::::::::....:::::..::::::::::::::::::::::::::::::::....:.::........:::::::..:.:::::.:::.:::::.:::::::::::::::::::::::::::: ::::::::---:::::::---:::::----::::::........::::::::::....:::::::..::::::::::::::::::::::::::::::::.....::..::::.::.:::::::.::.::::.:::.:::::::::::::::::::::::::::::::::: ::::::::---:::::----:::::----:::::--:.....:::::::::::....::::::::..::::::::::::::::::::::::::::::::....::..:::..:::.:::::::.::.::::..::.:::::::::::::::::::::::::::::::::: ::::::::---::::----::::----::::::---:....::::::::::....::::::::....::::::::::::::::::::::::::::::::. ::..::::..:::::.::::::.::.:::::.:::.::::::::::::::::::::::::::::::::: ::::::::---::::--:::::----::::::---:::....:::::::.....::::::::.....:::::::::::::::::::::::::::::::: ...::::..:::::::...::::.:::.::::.:::.::::::::::::::::::::::::::::::::: ::::::::-=-::::::::::---:::::::----:::::....::::....::::::::.......::::::::::::::::::::::::::::::::...::::..:::..::::..:::::.::.:::::.::..:::::::::::::::::::::::::::::::: ::::::::-=-::::::::----:::::::----:::::::..........::::::::....:...::::::::::::::::::::::::::::::::..::::.::::.::::..:..:::..:::..:::::::::::::::::::::::::........::::::: ::::::::---:::::::----:::::::---::::::::::.......:::::::::....::...::::::::::::::::::::::::::::::::..::..:::..::::.::...:..:..:::::::::::::::::::::::::::....::::::::::::: :::::::::--::::::---::::::::---:::::::--::......::::::::....::::...::::::::::::::::::::::::::::::::..:.::::.::::..::.:::..:...::::::::::::::::::::::::::..........:::::::: :::::::::--:::::---::::::::---:::::::---:::::....:::::.....:::::...::::::::::::::::::::::::::::::::...:::..::::..:..:::.....::.::..:::::::::::::::::::...::::::::::::::::: :::::::::--::::---::::::::---:::::::---:::::::....::.....:::::::..::::::::::::::::::::::::::::::::: .:::..::::.::..::..::..::::...::::::::::::::::::...::::::::::::::::::: :::::::::--:::::::::::::----:::::::---:::::::::.........::::::::..::::::::::::::::::::::::::::::::. .::.::::..::.:::..:..::.....:::::::::::::::::....::::::::::::::::::::: :::::::::--::::::::::::----:::::::---:::::::::--......::::::::::..:::::::::::::::::::::::::::::::::..:.:::...:..:::.:..::::::......................::::::::::::::::::::::: :::::::::---::::::::::---:::::::----:::::::::---:....::::::::.....::::::::::::::::::::::::::::::::...::::..::..::..:..:::::..::::::..::::::::..::.:::::::::::::::::::::::: ::::::::::--:::::::::---:::::::---::::::::::----:::....:::::......::::::::::::::::::::::::::::::::...::..::..:::..:.:::::..::::::..::::::::..::::.:::::::::::::::::::::::: ::::::::::---::::::----:::::::---::::::::::---::::::....::........::::::::::::::::::::::::::::::::...:.:::..::..:..:::::..:::::..:::::::...::::::.:::::::::::::::::::::::: :::::::::::--:::::----:::::::---:::::::::----:::::::::.......::...::::::::::::::::::::::::::::::......::..:::..:.:::::..:::::..::::::::..::::::::::::::::::::::::::::::::: :::::::::::---:::---:::::::----:::::::::----:::::::::--.....:::...::::::::::::::::::::::::::........::..:::..:..::::..::::::..:::..::..::::::::::::::::::::::::::::::::::: ::::::::::::-------:::::::----::::::::----::::::::::---:...::::...::::::::::::::::::::::::.........::..::.....:::::..:::::..:::..::..::::::::::::::::::::::::::::::::::::: :::::::::::::----::::::::---:::::::::----::::::::::---:::...:::..::::::::::::::::::::::.......::::::.::..:..:::::..:::::..:::..::..::::::::::::::::::::::::::::::::::::::: :::::::::::::---::::::::---::::::::----:::::::::::---:::::...::..:::::::::::::::::::.......::::::::.::....:::::..::::::.:::..::..::::::::::::::::::::::::::::::::::::::::: ::::::::::::::---:::::----::::::::----:::::::::::---:::::::...:..:::::::::::::::::......::::::::::....:.::::::..:::::..:::..:..::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::--::::----:::::::----::::::::::::---:::::::--.....::::::::::::::.......:::::::::::...:..:::::..:::::..:::..::..:::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::---::::--::::::----::::::::::::----::::::::--:....::::::::::::......:::::::::::::..:..:::::..::::::..::..:::.:::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::--:::::::::::----::::::::::::---:::::::::---:::..::::::::::......:::::::::::::::.:..::::..::::::..::..::::.::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::--:::::::::---::::::::::::----:::::::::---:::...::::::::......:::::::::::::::::..:::::..:::::..:::..:::..:::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::---::::::::::::::::::::::----:::::::::---::::...:::::::.....::::::::::::::::::..:::::.::::::..::..:::...::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::--::::::::::::::::::::----::::::::::---:::::...:::::.....:::::::::::::::::::::::::..:::::..::..::::..:.::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::---::::::::::::::::::----::::::::::---::::::...:::.....::::::::::::::::::::::::::.:::::..:::..:::..::....::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::---::::::::::::::::---::::::::::----::::::::.::.....:::::::::::::::::::::::::::..::::..::..::::..:::..::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::--::::::::::::::----::::::::::----:::::::-----...::::::::::::::::::::::::::::.:::::::::.:::::.::::.::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::---::::::::::::---:::::::::::---::::::-------:.:::::::::::::::::::::::.::::::::::::::..::::..:::...::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::---:::::::::----::::::::::----:::::------:::::::::::::::::::::::::::...::::::::::::.:::::.::::.:...:::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::--::::::::----::::::::::-=--:::------:::::::::::::::::::::::::::::::...:...::::::.::::..:::..::..::..::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::---::::::---:::::::::::::-:::------:::::::::::::::::::::::::::::::::.......::::::::::.::::..::..:::.::::::::::::::::::..:::::::::::::::::::::::::::: :::::::::::::::::::::::---:::----:::::::::::::::------::::::::::::::::::::::::::::::::::........:::::::::..:::..:::...::.:::::::::::::::::::::..:::::::::::::::::::::::::: ::::::::::::::::::::::::---::=-::::::::::::::-------::::::::::::::::::::::::::::::::.............:::::::..:::.:::..:.::..:::::::::::::::::::::::..:::::::::::::::::::::::: :::::::::::::::::::::::::--::-::::::::::::-------::::::::::::::::::::::::::::::::.........::::....::::::::::::::..::.::.::::::::::::::::::::::::::..:::::::::::::::::::::: :::::::::::::::::::::::::---::::::::::::------::::::::::::::::::::::::::::::::........:::::::::....:::::::::::..:..:.:.:::::::::::::::::::::::::::::..:::::::::::::::::::: ::::::::::::::::::::::::::---:::::::::-----::::::::::::::::::::::::::::::::.......::::::::::::::....::::::::..::..::.:.:::::::::::::::::::::::::::::::.::::::::::::::::::: :::::::::::::::::::::::::::---:::::------:::::::::::::::::::::::::::::::........::::::::::::::::::...:::::::::..::::..:::::::::::::::::::::::::::::::::..::::::::::::::::: ::::::::::::::::::::::::::::----------:::::::::::::::::::::::::::::::........:::::::::::::::::::::...::::::::..:::::..:::::.::::::::::::::::::::::::::::..:::::::::::::::: :::::::::::::::::::::::::::::-------:::::::::::::::::::::::::::::::.......:::::::::::::::::::::::::...:::::..:::::::.::::::.::::::::::::::::::::::::::::::.::::::::::::::: :::::::::::::::::::::::::::::::--::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::::...:::..::::::::.::::::.:::::::::::::::::::::::.:::::::..::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......::::::::::::::::::::::::::::::::...:::::::::::..:::::.:::::::::::::::::::::::::.....:::..:::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::::::::...::::::::......:::.::::::::::::::::::::::::::::::..:::..:::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::.......:::::::::::::::::::::::::::::::::::::::...:::::...:...::::.::::::::::::::::::::::::::::::::..::..::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::::::::::::::::::::...::::::::..:::::.:.::::::::::::::::::::::::::::::::::::..::::::: :::::::::::::::::::::::::::::::::::::::::::::::::.........:::::::::::::::::::::::::::::::::::::::::::::::...::::::...:::::.:.:::::::::::::::::::::::::::::::::::::.::::::: :::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::::::::::::::::::::::::::...::::::..::::..:.::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::..::::..:.::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::...::::...:::..:.:::::::::::::::::::::::::::.::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::::.::::...::..:::::::::::::::::::::::.:::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::::.:::...::..::::::::::::::::::::::.::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::.:::...::..:::::::::::::::::::::.:::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....::.:::...::..::::.:::::::::::::::.:::..:::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::....:::.:::..::..::.:.::::::::::::::.::..:::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::.::::.::.:::.:.:::::::::::::.::..::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::..:....::::::::::::::::::::::::::::::::::::::::::::::::::::::...:::::..:::.::.:::::.::::::::::::.::.::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::...::......:::::::::::::::::::::::::::::::::::::::::::::::::.....::::.:.::::.:.::.:..:::.:::::::....:::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::...:::.....::::::::::::::::::::::::::::::::::::::::::::::::.....::::.::..:::::.::.:..:::.::::::....::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::............:::::::::::::::::::::::::::::::::::::::::::::.......::::::::.:::::.::.:..:::.::::::...:::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::..:.....:....::::::::::::::::::::::::::::::::::::::::::.....::..:::::::::.::::.::.:..:::.:::::..:::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::..::.:::::.....::::::::::::::::::::::::::::::::::::::.....:::...::::::::..:::::::::..::.:::.::..:::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::..:::::::.......:::::::::::::::::::::::::::::::::::.....:::::...:::::::..:.::::::::..::.:::.:..::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::-::..::::...........::::::::::::::::::::::::::::::::.....:::::::..::::::..::...:::::::..::.:::.:..::::.:::::::::::::::::::::: :::::::::::::::::::::::::::::::----------------:..........::::....:::::::::::::::::::::::::::::.....:::::::::..:::::::::.::..:::::::.::.:::....::::.:::::::::::::::::::::: :::::::::::::::::::::::::::::------------------=:.......:::::::......::::::::::::::::::::::::......:::::::::...:::::::..:::..:::::::.::..::....::::.::.::::::::::::::::::: ::::::::::::::::::::::::::::----:::::------:::::..::::::::::.........:::::::::::::::::::::......::::::::::::...:::::..:::..::.::::::.:::.::..:.::::.::.::::::::::::::::::: :::::::::::::::::::::::::::----::::------::::::...::::::::.......:...:::::::::::::::::::......::::::::::::::...::::..::..::::..:::::.::::::..:.::::.::.::::::::::::::::::: ::::::::::::::::::::::::::----:::-----:::::::::...:::::.......:::::....::::::::::::::.......::::::::::::::::..:::..::..::::.::..:::::::::::..:.:::.:::..:::::::::::::::::: ::::::::::::::::::::::::::---::-----:::::::::::...:::......::::::::....:..::::::::.......:::::::::::::::::::..:::::..::::..::::..:::::::::...:..::.:::...::::::::::::::::: :::::::::::::::::::::::::---:-----:::::::::--::..........:::::::..........:::::........:::::::::::::::::::::..::::.:::::.:::::::..:::::::::..:::::.:::....:::::::::::::::: ::::::::::::::::::::::::--------:::::::::----::.......::::::::............:::......::::::::::::::::::::::::...::..::::..:::::..::.:::::::::..:::::.:::...::::::::::::::::: :::::::::::::::::::::::------::::::::::----::::.....::::::::......::::....:......::::::::::::::::::::::::::...:.:::::.:::::..:::::.::::::::..::::::.::...::::::::::::::::: ::::::::::::::::::::::------:::::::::-----::::::--::::::::......:::::::........::::::::::::::::::::::::::::....::::..::::..:::..:::.::::::.:.:::::::::...::.:::::::::::::: :::::::::::::::::::::-----:::::::::-----:::::::---::::::......:::::::::.....:::::::::::::::::::::::::::::::..:::::.:::::..:::..::::.::::::.:.:::::::::...::.:::::::::::::: ::::::::::::::::::::----:::::::::-----::::::::---:::::......::::::::::......:::::::::::::::::::::::::::::::..:::..::::..:::..::::..:.:::::...:::::::::...::.:::::::::::::: :::::::::::::::::::---:::::::::-----::::::::----.:::......::::::::::......:::::::::::::::::::::::::::::::::..::..:::..::::.:::::..:::.::::...:::::::::...::..::::::::::::: ::::::::::::::::::---:::::::::----::::::::-----..:......:::::::::.........::::::::::::::::::::::::::::::::.....::::.::::..::::..:::::..:::.:.::::::::::..::..::::::::::::: ::::::::::::::::::---:::::::----::::::::-----::..:....:::::::::......:::..::::::::::::::::::::::::::::::::.. .:::..:::..::::..:::::....::.::..::::::::::.:...::::::::::::: :::::::::::::::::---::::::----:::::::::----::::...::::::::::......::::::..::::::::::::::::::::::::::::::::...::..::::..::::..::::..::..::.:::..:::::::::.:..:::::::::::::: ::::::::::::::::---::::::----::::::::----::::::..:::::::::......::::::::..::::::::::::::::::::::::::::::::..:..::::..::::..::::..::..::..::::..:::::::::.:..:::::::::::::: ::::::::::::::::--::::::---::::::::-----:::::::..::::::......:::::::::::..::::::::::::::::::::::::::::::::....::::..:::..:::::..::.::::..::..::.::::::::.:..:.:::::::::::: :::::::::::::::---::::----:::::::-----::::::...:-::::......:::::::::::::..:::::::::::::::::::::::::::::::...:::::.::::..::::..::..:::::::...::::.:::::::.:..:.:::::::::::: :::::::::::::::--:::::---:::::::----::::::::...-=-.......::::::::::::.....:::::::::::::::::::::::::::::::...::::::::..::::..:::.:::::::...:::::::..:::::.:..:.:::::::::::: :::::::::::::::--:::::::::::::----:::::::::::.---.....::::::::::::........:::::::::::::::::::::::::::::::...::::::..:::::..::..::::::..::::::::::::..:::::..:.:::::::::::: :::::::::::::::--:::::::::::-----::::::::::::---....::::::::::::.......:..:::::::::::::::::::::::::::::::..:::::..:::::..:::.::::::..:::::::::.::::...:::::.:.:::::::::::: :::::::::::::::--::::::::::----::::::::::::----....::::::::::.......::::..:::::::::::::::::::::::::::::::..::::::::::..:::..:::::..:::::::::..:::..::..::::.:.:::::::::::: :::::::::::::::--::::::::----::::::::::::-----:....:---:::.......::::::...:::::::::::::::::::::::::::::::..:::::::::.::::.::::::..:::::::::.:::..:::::.::::.:.:::::::::::: :::::::::::::::--:::::::---::::::::::::-----:::::.:---:........::::::::...:::::::::::::::::::::::::::::::..::::::::::::..:::::..::::::..:::::..::::::::.:::::..::::::::::: :::::::::::::::--:::::----:::::::::::-----:::::::----.......:::::::::::...:::::::::::::::::::::::::::::::..:::::::::::..:::::..:::::..:::::::.:::::::::..:::::.::::::::::: :::::::::::::::---:::-=--:::::::::::----::::::::---:....:::::::::::::::...:::::::::::::::::::::::::::::::..:::::::::::::::::.:::::..::::::::..::::::::::.:::::.::::::::::: ::::::::::::::::---:::-:::::::::::----::::::::----:...::::::::::::::...:..::::::::::::::::::::::::::...::..::::::::::::::::.:::::.::::::::..:::::..::::::.:::::::::::::::: :::::::::::::::::---::::::::::::----::::::::----::::..:::::::::::.....::..:::::::::::::::::::::::::....::..:::::::::::::::::::::::::::::..:::::..:::::::::.:::::::.::::::: ::::::::::::::::::--:::::::::::----:::::::-----::::::-=-.:::::.......::...:::::::::::::::::::::::.....:::..:::::::::::::::::::::::::....::::::..:::::::::...::::..:::::::: ::::::::::::::::::---:::::::::---::::::::----::::::----..::........::::...:::::::::::::::::::::.....:::::..:::::::::::::::::::::::::..::::::..::::::::::..:.::..:::::::::: :::::::::::::::::::---:::::::::::::::::----::::::-----:...................::::::::::::::::::......::::::::::::::::::::::::::::::::::...:::..:::::::.::..:..:..:::::::::::: ::::::::::::::::::::---::::::::::::::----:::::::----::::::...::::.........:::::::::::::::::.....::::::::::::::::::::::::::::::::::::...::::::::::..:..::..:...:::::::::::: :::::::::::::::::::::---:::::::::::-----::::::----::::::--...::::::.:::...::::::::::::::......::::::::::::::::::::::::::::::::::::::....:::::::..::..::.:..::.:::::::::::: ::::::::::::::::::::::---::::::::-----::::::-----::::::---:...:::::::::...::::::::::::......::::::::::::::::::::::::::::::::::::::.......:::::..:..::..:..::...::::::::::: :::::::::::::::::::::::--::::::-----::::::-----:::::::---:::....:::::::...::::::::::......:::::::::::::::::::::::::::::::::::::::....::...:::.::..::..:..::.::..::.::::::: :::::::::::::::::::::::---::::----::::::-----:::::::----:::::....::::::...:::::::......::::::::::::::::::::::::::::::::::::::::.....::::...:::::::..::.:::.:..:.:.:::::::: ::::::::::::::::::::::::---:----::::::-----::::::::----:::::::....:::::::::::::......:::::::::::::::::::::::::::::::::::::::::....::::::...::::::..:..:::.:..:::.::::::::: :::::::::::::::::::::::::------::::::----::::::::----::::::::::...::------::.......:::::::::::::::::::::::::::::::::::::::::.....::::::::...:::::.:.:::..:..:::..::::::::: ::::::::::::::::::::::::::---::::::----::::::::-----::::::::::::::------::......:::::::::::::::::::::::::::::::::::::::::::....:::::::::::...::::..:::..:..:::.:::.::::::: :::::::::::::::::::::::::::--::::-----::::::::----:::::::::::-------:::......:::::::::::::::::::::::::::::::::::::::::::.....:::::::::::::...::::::::..:..:::.::::.::::::: :::::::::::::::::::::::::::---:::---::::::::::--::::::::::--------:...::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::...::::::.::..:::.::::..::::::: ::::::::::::::::::::::::::::---:::::::::::::::::::::::::::-----:::::..::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::...::::.::.::::.::::. .::::::: :::::::::::::::::::::::::::::--:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::...:::::..::::.::::...:::::::: :::::::::::::::::::::::::::::---::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::...:::..::::.::::...:.::::::: ::::::::::::::::::::::::::::::---:::::::::::::::::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::.....:::::::::::::::::::::::::::...:::::::.:::....:..::::::: :::::::::::::::::::::::::::::::---:::::::::::::........::::::::::::::::::::::::::::::::::::::::::::::..::::::....::::::::::::::::::::::::::::::...:::::.:::....:...::::::: ::::::::::::::::::::::::::::::::--:::::::::.............:::::::::::::::::::::::::::::::::::::::::::::..::::.....:::::::::::::::::::::::::::::::...:::...::........:::::::: ::::::::::::::::::::::::::::::::---:::::.........::::....:::::::::::::::::::::::::::::::::::::::::::...:......::::::::::::::::::::::::::::::::::...::.:::.........:::::::: :::::::::::::::::::::::::::::::::--::........:::::::::....::::::::::::::::::::::::::::::::::::::::::........:::::::::::::::::::::::::::::::::::::...:::::..........::::::: :::::::::::::::::::::::::::::::::::......::::::::::::::...::::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::...:::::..:::...:::::::: ::::::::::::::::::::::::::::::::......::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::::......:::::::::::::::::::::::::::::::::::::::::...:::..:::...::::::::: ::::::::::::::::::::::::::::::......:::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::...::::::...:::::::::: ::::::::::::::::::::::::::::......:::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::...:::::.::::::::::::: ::::::::::::::::::::::::::......::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::::...:.....:::::::::::::::::::::::::::::::::::::::....:::.:::::::::::::: :::::::::::::::::::::::......::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::::...:....::::::::::::::::::::::::::::::::::::::::....:::::::::::::::::: ::::::::::::::::::.::......:::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::........::::::::::::::::::::::::::::::::::::::::....:::::::::::::::::: :::::::::::::::::........:::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::::........::::::::::::::::::::::::::::::::::::::::....:::::::::::::::::: :::::::::::::::::......::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::::...:::...::..::::::::::::::::::::::::::::::::::::....::::::::::::::::: :::::::::::::::::....:::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::::...::::......::::::::::::::::::::::::::::::::::::....::::::::::::::::: :::::::::::::::::....::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::::...::::.....::::::::::::::::::::::::::::::::::::.....::::::::::::::::: :::::::::::::::::....:::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::::::::::...::......::::..::::::::::::::::::::::::::::::....::::::::::::::::::: :::::::::::::::::....::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::::::::::::...::.......:....:::::::::::::::::::::::::::::.....::::::::::::::::::: :::::::::::::::::.....::::::::::::::::::::::::::::::::::::::::::::...:::::::::::::::::::::::::------:.---:.:::......::::::::::::::::::::::::::::.......::::::::::::::::::: :::::::::::::::::.....::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::::::--------------::::.....::::::::::::::::::::::::::::.....::..::::::::::::::::::: :::::::::::::::::......::::::::::::::::::::::::::::::::::::::::::::...::::::::::::::::::-------::-----::::::.......::::::::::::::::::::::::::....::::..::::::::::::::::::: :::::::::::::::::...:.....::::::::::::::::::::::::::::::::::::::::::...::::::::::::::--------:::----:..:::.....::...:::::::::::::::::::::::.....:::::..::::::::::::::::::: :::::::::::::::::........::::::::::::::::::::::::::::::::::::::::::::...::::::::::::-----::::------::..::....:::.....::::::::::::::::::::.....:::::::..::::::::::::::::::: :::::::::::::::::........::::::::::::::::::::::::::::::::::::::::::::...::::::::::----:::::-----:::::..:....::........::::::::::::::::::....:::::::::..::::::::::::::::::: :::::::::::::::::.....:...::::::::::::::::::::::::::::::::::::::::::::...:::::::::---::::-----::::::::-=:..::.....::...:::::::::::::::.....::::::::::..::::::::::::::::::: :::::::::::::::::...::::...:::::::::::::::::::::::::::::::::::::::::::....:::::::---::------::::::::----:::.....:::::...::::::::::::.....::::::::::::..::::::::::::::::::: :::::::::::::::::...::::....::::::::::::::::::::::::::::::::::::::::::....:::::::--------::::::::-----..::....::::::::...::::::::::....::::::::::::::..::::::::::::::::::: :::::::::::::::::...:::......:::::::::::::::::::::::::::::::::::::::::....:::::::------::::::::-----::......::::::::.....::::::::....::::::::::::::::..::::::::::::::::::: :::::::::::::::::...::........::::::::::::::::::::::::::::::::::::::::...::::::::----::::::::-----::-:.....:::::::........:::::.....:::::::::::::::::..::::::::::::::::::: :::::::::::::::::...:....:::...::::::::::::::::::::::::::::::::::::::....:::::::---::::::::-----:::-=-...::::::::.....::...:::....:::::::::::::::::::..::::::::::::::::::: ::::::::::::::::::.....::::::...::::::::::::::::::::::::::::::::::::.....:::::::--:::::::-----:::::--:...:::::......:::::...:....::::::::::::::::::::..::::::::::::::::::: ::::::::::::::::::....:::::::....:::::::::::::::::::::::::::::::::.......:::::::--:::::-----:::::----...::::......:::::.:......::::::::::::::::::::::..::::::::::::::::::: ::::::::::::::::::...::::::......::::::::::::::::::::::::::::::::....::..:::::::--:::-----::::-----:.....:......::::.....:.....::::::::::::::::::::::..::::::::::::::::::: :::::::::::::::::...:::::.....:...:::::::::::::::::::::::::::::....::::..:::::::--::----::::-----:::..........:::::.....:::....::::::::::::::::::::::..::::::::::::::::::: :::::::::::::::::...:::.....::::...:::::::::::::::::::::::::::....:::::..:::::::--::::::::-----:::::.......::::::.....::::::...::::::::::::::::::::::..::::::::::::::::::: :::::::::::::::::...::.....::::::...::::::::::::::::::::::::....:::::::...:::::---::::::-----::::::::....:::::::....::::::::....:::::::::::::::::::::..::::::::::::::::::: :::::::::::::::::.......::::::::....:::::::::::::::::::::::....::::::::...:::::---::::-----:::::::::::..:::::::....::::::::::....::::::::::::::::::::..::::::::::::::::::: ::::::::::::-------------:::::.......:::::::::::::::::::::....:::::::::...::::::--:::-=--::::::::::--=:..:::::....:::::::::::....::::::::::::::::::::..::::::::::::::::::: :::::::::----------------:::.....::...::::::::::::::::::....:::::::::::...:::::---::::-::::::::::-----:..:::....:::::::..::::..::::::::::::::::::::::..::::::::::::::::::: :::::::::-----:-::...:::::.....:::::...:::::::::::::::.....::::::::::::...::::::--::::::::::::------:::...:....::::::....::::..::::::::::::::::::::::..::::::::::::::::::: :::::::::::::::::....:::.....:::::::...:::::::::::::.....::::::::::::::...:::::---::::::::::------::::::......:::::.....:::::..::::::::::::::::::::::..::::::::::::::::::: ::::::::::::---::....:......::::::::....::::::::::......:::::::::::::::...:::::---::::::::-----::::::::::--:::::::....:::::::..::::::::::::::::::::::..::::::::::::::::::: ::::::::::-----::........:::::::::......::..:::.......:::::::::::::::::...::::::--::::::-----::::::::::----.::::.....::::::::..::::::::::::::::::::::..::::::::::::::::::: :::::::::----::::......:::::::::.....:...:..:::.....:::::::::::::::::::...::::::--::::-----:::::::::::----...:.....::::::::::..::::::::::::::::::::::..::::::::::::::::::: :::::::----::::::.....:::::::::....::::.....:::::::::::::::::::::::::::...::::::---:-----:::::::::::----:::......::::::::::::..::::::::::::::::::::::..::::::::::::::::::: :::::----::::::::...:::::::::....::::::.....:::::::::::::::::::::::::::...:::::::------::::::::::::---::::::-:.::::::::::::::..::::::::::::::::::::::::::::::::::::::::::: :::::---:::::::::...:--::::.....::::::......:::::::::::::::::::::::::::...::::::::---::::::::::::----::::::-=-.::::::::::::::..::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::..----::.....::::::........:::::::::::::::::::::::::::...:::::::::---:::::::::-----:::::----...:::::::...:::..:::::::::::::::::::...::::::::::::::::::::: :::::::::::::::::----::.....::::::.....:::..:::::::::::::::::::::::::::...::::::::::---::::::-----:::::----:::...::::....::::..:::::::::::::::::::...::::::::::::::::::::: ::::::::::::::-----:.......:::::.....:::::..:::::::::::::::::::::::::::...:::::::::::---::::----:::::-----:::::-::::....:::::..:::::::::::::::::....:::::::::::::::::::::: :::::::::::------:.......:::::......:::::...:::::::::::::::::::::::::::...::::::::::::--::::--:::::-----::::----:......::::::..::::::::::::::::....::::::::::::::::::::::: :::::::::------::...:::::--:......:::::.....:::::::::::::::::::::::::::...::::::::::::---::::::::-----::::-----:.....:::::.....:::::::::::::::....:::::::::::::::::::::::: ::::::::----:::::...:::----.....:::::.......:::::::::::::::::::::::::::...:::::::::::::---:::::-----::::-----:::....:::::......::::::::::::::...:::::::::::::::::::::::::: :::::::---::::::::..:----:...::::::.....::...::::::::::::::::::::::::::...::::::::::::::---:::----:::::-=--:::::....:::::..::..:::::::::::::....:::::::::::::::::::::::::: ::::::-=-::::::::::----:...:::::::....::::...::::::::::::::::::::::::::...:::::::::::::::--:::-:::::::::-:::::::::...:..:::::..::::::::::::....::::::::::::::::::::::::::: :::::::::::::::::----:...:::::::.....:::::...::::::::::::::::::::::::::..::::::::::::::::---:::::::::::::::::::::::.....:::::::::::::::::::...:::::::::::::::::::::::::::: :::::::::::::::-----:...::::--.....:::::::...::::::::::::::::::::::::.::::::::::::::::::::--:::::::::::::::::::::::.....::::::::::::::::::...::::::::::::::::::::::::::::: ::::::::::::-----::::....::---...:::::::::...:::::::::::::::::::::::...::::::::::::::::::::--:::::::::::::::::::::::...:::::::::::::::::....:::::::::::::::::::::::::::::: ::::::::::-----:::::::..:----:.::::::::::....:::::::::::::::::::::::...::::::::::::::::::::---:::::::::::::::::::::::..::::::::::::::::....::::::::::::::::::::::::::::::: :::::::::----::::::::------:.::::::::::......::::::::::::::::::::::...::::::::::::::::::::::---::::::::::::::::::::::...::::::::::::::....:::::::::::::::::::::::::::::::: :::::::----::::::::-----:..:::::::::.........::::::::::::::::::::....::::::::::::::::::::::::--::::::::::::::::::::::::.::::-:::::::....:::::::::::::::::::::::::::::::::: ::::::----:::::::-----:::...::::::......:::..::::::::::::::::::.....:::::::::::::::::::::::::---------------------------------:::::....::::::::::::::::::::::::::::::::::: :::::---::::::------::::::...::.......:::::..::::::::::::::::......:::::::::::::::::::::::::::-------------------------------::::....::::::::::::::::::::::::::::::::::::: :::::--:::::-----:::::::::...::...:-:::::::..:::::::::::::::.....:::::::::::::::::::::::::::::::----:::::::::::::::::::...::::::....:::::::::::::::::::::::::::::::::::::: ::::::::::-----::::::::::::...:::--=-::::::..:::::::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::...........::::::::::::::::::::::::::::::::::::::: :::::::::----:::::::::::::::..------::::::...:::::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.........::::::::::::::::::::::::::::::::::::::::: ::::::::---:::::::::::::::::-----::::........::::::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..:::::::::::::::::::::::::::::::::::::::::::::: ::::::----::::::::::::::::----:.::::.........::::::::.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::---::::::::::::::------:....::....:::..:::::::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::----:::::....::::::::..:::::.....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::-----::::::::....:::::::..::::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::-----:::::::::::....::::::..:::....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::-----::::::::::::::....:::::..:....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::-----:::::::::::::::::...::---::....::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::-----:::::::::::::::::::::--------..::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::----:::::::::::::::::---------:::::.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::----:::::::::::::::---------:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::----:::::::::::::---------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::---:::::::::::--------:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::--:::::::::--------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::--------::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::-=---:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::