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