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