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