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