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