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