::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::–:::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::–:::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::.:::::::::::::–:::::::::::::.:::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::.::::::::::::–::::::::::::.::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::.-::::::::::–::::::::::-.:::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::.-:::::::::–:::::::::-.::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::.-::::::::–::::::::-.:::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::-:::::::::::::::-.:::::::–:::::::-.::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::—-:::::::::::::-.::::::–::::::.-:::::::::::::—-::::::::::::::::::::::
::::::::::::::::::::::::::::—-::::::::::-.:::::–:::::.-::::::::::—-::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::—-::::::::-.::::-.::::.-::::::::—-:::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::—–::::::.-::-.::-.::::::–.–::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::-..-::::.-:-.:-.::::-..-::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::-..-::.–.-.::-..-:::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::-..““..-:::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::—————————.` `.—————————::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::-…`.“…-::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::-..-::.–.-.::-..-:::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::–..-::::.-:-.:-.::::–.–:::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::–.-::::::-.:::-.:::.-::::::-.–::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::—-::::::::-.::::-.::::.-::::::::—-:::::::::::::::::::::::::::::
:::::::::::::::::::::::::::—-:::::::::::-.:::::–:::::.-:::::::::::—-:::::::::::::::::::::::::
::::::::::::::::::::::::—-:::::::::::::..::::::–::::::-.:::::::::::::—-::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::.-:::::::–:::::::-.::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::.-::::::::–::::::::-.:::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::.-:::::::::–:::::::::-.::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::.:::::::::::–:::::::::::.-::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::-.::::::::::::–::::::::::::.-:::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::-:::::::::::::–:::::::::::::-:::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::–:::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::::::::::::::::–:::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::