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