m
m
m
m
m
m
m
m
m
m
m
m ```......--......```
m `.:/+osyyhhddmmmmmmNNmmmmmmdddhhhyso+/:-.``
m `.:oydNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmdhso/:.`
m `./oydmNMMMMMMMMMMMMMMMMMMNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMNmdyso/-.`
m `` `./ohNMMMMMMMMMMNmmddhhyssooo+++++++++++oossssyyhddmNNMMMMMMMMMMMMMNmdy+:.`
m .:syys/` `:oymNMMMMMMMMNmdhyo/:::---------------------------::::/+osyhmNNMMMMMMMMMMMNmhs+:.`
m .odNMMMMN+ `-odNMMMMMMMNNdyo+/:------------------------------------------:::/+syhdmNMMMMMMMMMMNmhs/-`
m .yMMMMMMNm: ./yNMMMMMMMNmyo/::------------------------------------------------------:/+oshdNMMMMMMMMMMNds/.`
m `sMMMMMNy/. `+dNMMMMMMNhs+::---------------------------------------------------------------::/oyhmNMMMMMMMMMmy+-`
m .yMMMMMNo` `/dMMMMMMNds/::----------------------------------------------------------------:--::::::/oydmNMMMMMMMNds:.
m :dMMMMMNo` `.:+oso+:` `/hNMMMMMNho:-:-----------------------------------------------------------------::-:::::::---:/oydNMMMMMMMNds-
m -dMMMMMm+ `-ohmNMMMMMNdy/` `:hNMMMMMNho:-:---------------------------------------------------------::::::::::::::::::::::::---:/odmMMMMMMMNs-
m +MMMMMm: .:smMMMMMMMMMMMMMN+` .sNMMMMMNdo::::-----------------------------------------------------:::::::::::::::::::::::::::::::-----:ohmMMMMMMNo.
m `oMMMMMh:+mNMMMMMMMNddmMMMMN+` `+dMMMMMMmo/::::----------------------------------------------------::::::::::::/+ossyyhhddddhhyso+/::::-----/smMMMMMMd+
m `sMMMMMNNMMMMMMNmy+-` ./sys:` `yNMMMMMms/:::::-------------------------------------------------:::::::::::/+shdNNMMMMMMMMMMMMMMMMNNmdyso/::---:ymMMMMMMs`
m `oMMMMMMMMMMMMMy:` `yMMMMMNh+:::::-------------------------------------------------:::::::::/+shmNMMMMMMMMMMMMMMMMMMMMMMMMMMMMNmyo/:--/hMMMMMMy.
m :mMMMMMMMMMMMMMNd/ `sMMMMMNy::::::------------------------------------------------:-:::::::/ymNMMMMMMMMMNNmdhyysooosydmNMMMMMMMMMMNmho/:-yNMMMMMy.
m .oNMMMMMMMMMMMMMMMNo +NMMMMNy:::::::------------------------------------------------:::::::/smMMMMMMMNmh+:.` `-:+shmMMMMMMMMNho:sNMMMMMs`
m `+mMMMMMMMMNdyymMMMMMM+ ``````` -dMMMMMh:-:::::-----------------------------------------------::::::::smMMMMMMNy/-` .:smMMMMMMMMdyhNMMMMMs`
m .yNMMMMMNy+-` .yMMMMMm/ ``.:/+osyyhhddmmNNNNNNNmmmddyso+/:-.`` +MMMMMm+-::::::-----------------------------------------------::::::/dMMMMMMNy- `:omMMMMMMMNNMMMMMMo
m `/dMMMMMNs. `mMMMMMh. `-/syhdNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNmdyo/-`` `oMMMMMm/-:::::-----------------------------------------------::::::/yMMMMMNh:` `:yNMMMMMMMMMMMMm.
m sNMMMMMm+` :NMMMMm/ `.:+sydmNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNmdhy+sMMMMMMh/-::::----------------------------------------------:::::::+mMMMMMo` -omMMMMMMMMMMN+
m .yMMMMMNy- `/dNNms. `-/ohmNMMMMMMMMMMMMMNNmddhhyyyssooo++++++ooosyyhddmNNMMMMMMMMMMMMMMMMMMMMd:::::----------------------------------------------:::::::sNMMMMN` .odNMMMMMMMMs
m :hMMMMMMs` `.-.` `:sdNMMMMMMMMMMMMNmdys+//:::-----------:--:-:::::::::///+syhmNNMMMMMMMMMMMMMN/:::::--------------------------------------------::::::::oNMMMMN. ./yNMMMMMm/
m :dMMMMMN+` ./ymNMMMMMMMMNmdhso+/:--------------------------------:-----:::://+sydmNNMMMMMNd/:::::--------------------------------------------::::::::+mMMMMMs. `.:+oo+-
m -dMMMMMd: .:ohNMMMMMMMMNdyo/:-----------------------------------------------::-:--:::/+ossyyo/::::::::------------------------------------------:::::::::sNMMMMMy.
m `hMMMMMd: `:ymNMMMMMMMNmy+/-----------------------------------------------------------::::::::::::::::::::------------------------------------------:::::::::yNMMMMMd/`
m `yMMMMMN/ `/hNMMMMMMMNds+:--------------------------------------------------------------------:::::::::::::::------------------------------------------::::::::/sNMMMMMMd/.
m `oNMMMMNo` .odNMMMMMNmyo/:----------------------------------------------------------------------------::::::::::::----------------------------------------::::::::::odNMMMMMMms:`
m `+NMMMMMs` `-smMMMMMMNh+:--------------------------------------------------------------------------------------:::::::----------------------------------------::::::::::/ohNMMMMMMNh:`
m :mMMMMMh. -smMMMMMMNy/------------------------------------------------------------------------------------------------------------------------------------------:::::::::::+ymNMMMMMNh+.
m `yMMMMMh- -smMMMMMMmy/----------------------------------------------------------------------------------------------------------------------------------------------:::::::::::/sdNMMMMMNdo.
m :NMMMMm/ .omMMMMMMmy/-------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::/odNMMMMMMmy/.`
m yMMMMMy` `/dMMMMMMmy/-----------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::/ohNMMMMMMNmy/.`
m -NMMMMN/ `oNMMMMMNy/:-------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::/+ydNMMMMMMMmy+-`
m `yMMMMMh` .sNMMMMNh+:-------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::/oydNMMMMMMMNds/-`
m :mMMMMM: -hNMMMMNy:::--------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::::/+sdNMMMMMMMNmho/-`
m .hMMMMMh` .hMMMMMNy::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::::+sdmNMMMMMMMMNdy+:.`
m .sMMMMMN: `hMMMMMNs:::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::/oydNMMMMMMMMMNdy+.`
m +NMMMMN+` ```` ``` `sMMMMMNs::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::+oydNNMMMMMMMMNhs/-.`
m .dMMMMNs` ``.-://+osyyyyhhhyyyyyyhhhyyssoo+sNMMMMMy:::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::/oydmNMMMMMMMMMNdyo:.`
m +MMMMMd- ``.-/oshdmNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN+:::::::----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::/oydNMMMMMMMMMMNmds/-``
m `mMMMMNo `.:oydmNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN+::::::::------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::::/oydmNNMMMMMMMMMNmhs/.`
m /MMMMMm- .:sdNMMMMMMMMMMMMMNNNmddhhyyyssyyyyyyyyyyyhhhhdddmmmmds::::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::::/+shmNNMMMMMMMMMNhs/-`
m .dMMMMMo ./ymMMMMMMMMMMNNmdyso+//::::::::::::::::::::::::::::://::::::::::::::-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::::/oydmNMMMMMMMMMNms/-`
m +NMMMMN. .+hNMMMMMMMMmdys++/:---:-:::::::::--::---:::----::::-:::::::::::::::::::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::::/ohmNMMMMMMMMMNds/-`
m .hMMMMMs -smMMMMMMMMmho/::::::::---------------------------------------::::::::::::::::::----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::::/+oymNMMMMMMMMMNho:`
m +NMMMMm- -sNMMMMMMNmy+::::::::------------------------------------------------:::::::::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::/ohmMMMMMMMMMMNds/.
m .hMMMMMs` .oNMMMMMMmy+::::::----------------------------------------------------------:::::::::::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::/+oydNMMMMMMMMMNh+-`
m -mMMMMN/ `+mMMMMMMms/:::::-------------------------------------------------------------------::::::::::------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::/shmNMMMMMMMMNms:`
m :NMMMMN: -yNMMMMMNy/::::--------------------------------------------------------------------------:::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::/oydNMMMMMMMMmy/.
m /MMMMMd-:mMMMMMNh+:::::----------------------------------------------------------------------------------:::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:--::::/shNMMMMMMMMmo.
m +MMMMMmhNMMMMMms::::::----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::/ohmMMMMMMMNy:.
m `yMMMMMMMMMMMMd+::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:-:/smMMMMMMMMms-
m :NMMMMMMMMMMNy/::::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::/ohNMMMMMMMNy:` :sys+.
m yMMMMMMMMMMNs::::::------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::/ohmMMMMMMNd/. .dMMMMmo.
m `NMMMMMMMMMmo::::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:/smMMMMMMNdo. `sNMMMMMd/
m `NMMMMMMMMNo::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::odNMMMMMMmo` `+mMMMMMN+`
m mMMMMMMMNy::::::------------------------------------------------------------------------------------------------------------------------------------::----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:+hNMMMMMMd/` -yMMMMMNo`
m `NMMMMMMNy::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:omMMMMMMNs. ``.---` `yMMMMMNo`
m `NMMMMMMh/:::::------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:yNMMMMMMd- :shmmNNNmh+:` .yMMMMMd-
m `NMMMMMmo::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+dMMMMMMd. -mMMMMMMMMMMNdo. :mMMMMN/
m .MMMMMMd/:::::----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/hMMMMMMd- -mNMMMNNMMMMMMMm+/mMMMMN/
m :MMMMMMh/:::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:yNMMMMMd: ./oo/::+ymMMMMMMNMMMMMm:
m /MMMMMNo:::::::------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------omMMMMMd: `-hNMMMMMMMMMMm-
m oMMMMMd/:::::::-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+mMMMMMm: `.-://+yNMMMMMMMMMm:
m yMMMMMd/:::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+dMMMMMm:` `:shmNNMMMMMMMMMMMMMMm-
m yMMMMMd/::::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+dMMMMMN+` `/mMMMMMMMMMMMMMMMMMMMy`
m ``.-:://+dMMMMMd/::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:hMMMMMNo` /NMMMMMNNmmNMMMMMMMMMN/
m ```.-:+osyhdmNNNMMMMMMMMMd/:::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/hNMMMMN/ mMMMMMd/...-+ydNMMMMMN+
m `.-+shdmNMMMMMMMMMMMMMMMMMMMMmo:::::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/hMMMMMd. /dmNms. :dMMMMMs`
m `./ydNMMMMMMMMMMMMMMMNNmmmmddhys+:::::::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+mMMMMMo `..` `yMMMMMy`
m `:odNMMMMMMMMMNNNmdhhyso+///:::::::::::::::::::::::------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::yMMMMMm` `sMMMMMy`
m `:smMMMMMMMMNmdyso+//::::::::::::::::::::::::::::::::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:-oNMMMMM- `oMMMMMh.
m `+hNMMMMMMMNdy+/::::::::::::::::::::::::::::::::::::::::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:-/mMMMMM/ /NMMMMm:
m `+dMMMMMMNmho/:::::::::::::::::::::::::::::::::::::::::::::::::-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::/dMMMMMy :NMMMMN:
m -hNMMMMMNho/:::::::::::::::::::::::::::::::::::::::::::::::::::::::::-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::yMMMMMd` :mMMMMN/
m `oNMMMMMNho::::::::::::::---------------------:::::::::::::::::::::::::::::---------------------------------------------------------------------------/+oo+/------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::oMMMMMm- -dMMMMMo`
m :dMMMMMMd+::::::::::---------------------------------------:::::::::::::::::::::------------------------------------------------------------------.:ohNMMMMMMNdo--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::oMMMMMm- .yMMMMMy`
m `oNMMMMMNy/:::::::---------------------------------------------------::::::::::::::::::-------------------------------------------------------------+mMMMMMMMMMMMMd/.---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::/dMMMMMy` `sMMMMMd.
m .hMMMMMMd+::::::-----------------------------------------------------------:::::::::::::::::--------------------------------------------------------oNMMMMMMMMMMMMMMm:.-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::oNMMMMN: +NMMMMm.
m .dMMMMMNy/::::::-----------------------------------------------------------------::::::::::::::::--------------------------------------------------.:dMMMMMMMMMMMMMMMMo----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::+dMMMMMh` oMMMMMd.
m :dMMMMMNs::::-:--------------------------------------------------------------------------:::::::::::::::----------------------------------------------yMMMMMMMMMMMMMMMMo.------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::/hMMMMMm: oMMMMMd.
m `+mMMMMMmo:::::--------------------------------------------------------------------------------:::::::::::::::------------------------------------------:dMMMMMMMMMMMMMMm:.-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::::::::::------------------------:::::::::::::::::yNMMMMN/ +NMMMMN-
m `sNMMMMMd+::::----------------------------------------------------------------------------------------:::::::::::::---------------------------------------:smMMMMMMMMMMMm+.---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::::::::::::::::::::::::::::::::::::::::::::::sNMMMMNo` :mMMMMM:
m `yMMMMMNh/::::-----------------------------------------------------------------------------------------------::::::::::--------------------------------------:+ydmNNNNNds:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::::::::::::::::::::::::::::::::::/yNMMMMMh. :mMMMMM:
m `sMMMMMNy/::::----------------------------------------------------------------------------------------------------::::::::::----------------------------------..--:/+++/----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::::::::::::::::::::::::sNMMMMMMmso+:-` :mMMMMM:
m `oNMMMMMy:::::----------------------------------------------------------------------------------------------------------::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::::::::::::::::::sNMMMMMMMMMMNNdho:. +NMMMMm-
m `+NMMMMNh::::::---------------------------------------------------------------------------------------------------------------::::::::-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::::::::::::/sdmNNMMMMMMMMMMMNmy+-` `sMMMMMh`
m /mMMMMMd/:::::---------------------------------------------------------------------------------------------------------------------:::::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::://+osyhdmNNMMMMMMMMNhy+-` `yMMMMMy`
m -dMMMMMd+:::::------------------------------------------------------------------------------------------------------------------------::::::::::----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::::::::/+shmNMMMMMMMMNds/-` `yMMMMMy`
m yMMMMMmo:::::----------------------------------------------------------------------------------------------------------------------------::::::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::/+ydmNMMMMMMMMNho-` .hMMMMMs`
m :NMMMMNy:::::----------------------------------------------------------------------------------------------------------------------------------::::::::---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::-:::::://oydNNMMMMMMMNh+.` :mMMMMN/
m `hMMMMMd/:::::----------------------------------------------------------------------------------------------------------------------------------------:::::----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::::/oydNMMMMMMMmy:` /NMMMMm:
m :NMMMMMo::::::-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------::::::::+sdNMMMMMMNh:` +MMMMMd-
m oNMMMMm/::::::-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::::+sdNMMMMMNy- .hMMMMMs`
m `yMMMMMd:::::::------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:-::::::/odNMMMMMN+. /NMMMMm:
m .hMMMMMy:::::::--------------------------------------------------------------------------------------------------------------------------------------------------------------------::/+osyhhdddddddddhhyyo+///::----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::/smMMMMMMh/` oMMMMMd.
m -dMMMMMs::::::::-------------------------------------------------------------------------------------------------------------------------------------------------------------::/oydmNNMMMMMMMMMMMMMMMMMMMMMMNNNmmdhyysso+/::------------------------------------------------------------------------------------------------------------------::----------------------------------------------------------------------------------------------------------::::::yNMMMMMNs. yMMMMMh`
m :mMMMMNo::::::::----------------------------------------------------------------------------------------------------------------------------------------------------------:+sdmNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmmdhhyyso+/:----------------------------------------------------------------------------------------------------:ohdmmdho:---------------------------------------------------------------------------------------------------------::::+dNMMMMMd. .mMMMMNo
m /NMMMMNo::::::::------------------------------------------------------------------------------------------------------------------------------------------------------/+ydNMMMMMMMMMMMMNNmmddhdddhhddddmmmmNNMMMMMMMMMMMMMMMMMMMMMMMNmdhyso/::-------------------------------------------------------------------------------------------omMMMMMMMMmy/----------------------------------------------------------------------------------------------------------:::smMMMMMh. +MMMMMm-
m :mMMMMMs:::::::::------------------------------------------------------------------------------------------------------------------------------------------------.:+sdNMMMMMMMMMMMNmhs+:-.`` ```.````````.-:/osyyhhhdmNNNMMMMMMMMMMMMMMMMMMMNmdhys+//::---------------------------------------------------------------------------------sNMMMMMMMMMMMd:-.-------------------------------------------------------------------------------------------------------::::oNMMMMMh- sMMMMMd`
m .hMMMMMd:::::::::-----------------------------------------------------------------------------------------------------------------------------------------------:odNMMMMMMMMMNmdddyo-.-//-..:+syyyyysoo+:/oosyhhysoosys+//++osydmNNNMMMMMMMMMMMMMMMNNmmdhys++/::----------------------------------------------------------------------./NMMMMMMMMMMMMMo.----------------------------------------------------------------------------------------------------------:--omMMMMMh- `yMMMMMh`
m +NMMMMN+::::::::-----------------------------------------------------------------------------------------------------------------------------------------.--:ohNMMMMMMMMNds/./mMMMMNhhddhyhdmddmMMMMMMNmdddmmNNNmmmdddhys++/::-..-:+oyhdmNNMMMMMMMMMMMMMMMMMMMNmdyo/:----------------------------------------------------------------./MMMMMMMMMMMMMN+.-----------------------------------------------------------------------------------------------------------:::omMMMMMh- :mMMMMM:
m .dMMMMMs::::::::------------------------------------------------------------------------------------------------------------------------------------------/ymMMMMMMMMMMMmo/+smMMMMMMNmddddddddmNMMMMMMMNmmmNMMMMMNmmddddmmNNmdhy+/:-.` `.-:+oyhmNNMMMMMMMMMMMMMMMMMNNmhys+/------------------------------------------------------------dMMMMMMMMMMMMh:.------------------------------------------------------------------------------------------------------------:::smMMMMMm. `sMMMMMd`
m yMMMMMd/:::::::::--------------------------------------------------------------------------------------------------------------------------------------:smMMMMMMMMMMMMMMMNNMMMMMMMMNmdddddddmNMMMMMMMMMNNMMMMMMMMNmmdmmNMMMMNmmddddy/-.`` ``.:/+ooydmNNNMMMMMMMMMMMMMNmhs+/------------------------------------------------------.:smNMMMMMMNms:---------------------------------------------------------------------------------------------------------------:-:omMMMMMh`:mMMMMM/
m :MMMMMNy::::::::::----------------------------------------------------------------------------------------------------------------------------------.-omMMMMMMMMMMMMMMMMMMMMMMMMMMMMNmdddddmNMMMMNNMMMMMMMMMNNMMMMMNNNMMMMMMMNmdddmmNNNdy:` `.`` `.-:+shmNMMMMMMMMMMMMNmhs+/:---------------------------------------------------:/osyso+:------------------------------------------------------------------------------------------------------------------:-:-sMMMMMNydMMMMMh.
m yMMMMMmo:::::::::--------------------------------------------------------------------------------------------------------------------------------.-odNMMMMMMMMMMMMMMNMMMMMMMNdmMMMMNmdddddmMMMMMdymMMMMMMNdsodMMMMMMMMMMMMMMMNmmmNMMMMMMmysyhy/-:os+. `.:oydNMMMMMMMMMMMMNNdhy+:-..---------------------------------------------.------------------------------------------------------------------------------------------------------------------------:::::dMMMMMMMMMMMm:
m `hMMMMMm+::::::::::------------------------------------------------------------------------------------------------------------------------------odMMMMMMMMMMMMMMMMmsyNMMMMmyosNMMMMmddddmNMMMMms+smNNNmyooooohNMMMMMMNdymMMMMMMMMMMMMMMMNmmmmNNMMMMdssso+/-..-.` .:+ydNMMMMMMMMMMMMMNdys/::-.----------------------------------------------------------------------------------------------------------------------------------------------------------------:::::oNMMMMMMMMMm/
m -hMMMMMmo:::::::::::------------------------------------------------------------------------------------------------------------------------../hMMMMMMMNhsdMMMMMMdsoosyhhyoooodMMMMMmdddNMMMMNhoooosssoooooo+oymMMMNmyooyNMMMMMMMMNmNMMMMNNNNMMMMMMMNmddddhyhdmdho/-.` `.:+ydNMMMMMMMMMMMMMNdys/:..-------------------------------------------------------------------------------------------------------------------------------------------------------------::::/hMMMMMMMMMs`
m :dMMMMMNh+::::::::::----------------------------------------------------------------------------------------------------------------------.:yNMMMMMMNhso+shNMMNhosdNNdyoooooosmMMMMNmdmMMMMMdo+oooooooooooooooosyysoooooymMMMMNdyoohMMMMMMMMMMMMMMMMNmmdmmNMMMMMMNdyo+:....` `.-+sydNNMMMMMMMMMMNNds/------------------------------------------------------------------------------------------------------------------------------------------------------------:::::sMMMMMMMMm-
m -hMMMMMMNh+:::::::::--------------------------------------------------------------------------------------------------------------------./hMMMMMMNdoo+ooooossooymMMMMmsooooooyNMMMMNmNMMMMNso+ooooooooooooooooooooooooooosyysoooooohMMMMMMMNdyymMMMMMNNNMMMMMMMMMNmdddhdhs++/////:..-/shmNMMMMMMMMMMmyo:--------------------------------------------------------------------------------------------------------------------------------------------------------:::::sNMMMMMMMs
m `+mMMMMMMNdo/::::::::-----------------------------------------------------------------------------------------------------------------./mMMMMMMmyoooooooooooosmMMMMMNy+oooooohMMMMMNNMMMMdooooooooooooooooooooooooooooooooooooooooohNMMMNmyooosdNMMMMMMMMMNNNMMMMNmmdddmmmmmmNNmds+:-...-/sdNMMMMMMMMMNdyo:-----------------------------------------------------------------------------------------------------------------------------------------------------::::sNMMMMMMN.
m .+dMMMMMMMmy+::::::::---------------------------------------------------------------------------------------------------------------/dMMMMMMmsoooooooooooosmMMMMMMMmooooooosmMMMMMMMMMNyoooooooooooooooooooooooooooooooooooooooooosyhysooo+ooohNMMMMMNmhsoyNMMMMMNmmmmNNMMMMMMMNdhhhso:...-/sdNMMMMMMMMMNds/--------------------------------------------------------------------------------------------------------------------------------------------------::::yMMMMMMMs
m ./dMMMMMMMNdy+:::::::-------------------------------------------------------------------------------------------------------------oNMMMMMMNdsooooosooooodMMMMMMMMNsoooooooyNMMMMMMMMhooooooooooooooooooooooooooooooooooooooooooooooooooooooooshdmdhyooooosmMMMMMMMMMMMMMMMMMMMNmdmmddyssyys+//sdNMMMMMMMMNds+:----------------------------------------------------------------------------------------------------------------------------------------------:::/hMMMMMMd-
m `:smMMMMMMMNds/::::::-----------------------------------------------------------------------------------------------------------yNMMMMMMMMmsosdmNNdyosNMMMMMMMMMdoooo+ossdMMMMMMMmsooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooosdMMMMMMMMMNNmdmMMMMNmddmmNNNNNNdho-`.-/sdNMMMMMMMNms/-------------------------------------------------------------------------------------------------------------------------------------------:::-/dMMMMMm/
m -mMMMMMMMMMNhs+:::::---------------------------------------------------------------------------------------------------------yMMMMMMMMMMNdNMMMMMMmmMMMMMMMMMMNyoooymNNNMMMMMMNy+ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooodNMMMNmhysoo+yNMMMMNNNMMMMMMMMmmdho:-.``:odNMMMMMMMNy:-----------------------------------------------------------------------------------------------------------------------------------------:::-oNMMMMNo`
m .mMMMMMMMMMMMMNhs/::::------------------------------------------------------------------------------------------------------/dNMMMMMMMMMMMMMMMMMMMMMMMMNNNMMMMmsosmMMMMMMMMMMdoooydmmdyooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooosyyysoooooooomMMMMMMMMMMMMMMMNmmNNNmmy- `-+hNMMMMMMms:---------------------------------------------------------------------------------------------------------------------------------------::::yMMMMMd-
m :NMMMMMmmNMMMMMMMmy+::::::-------------------------------------------------------------------------------------------------:odNMMMMMMMMMMMMMMNNMMMMMMMMNmmMMMMMNmmMMMMMMMMMMNy+shNMMMMmsoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo+sNMMMMMMNmddNMMMMMMMMMMMMo...` `:sNMMMMMMmy+-------------------------------------------------------------------------------------------------------------------------------------:::oNMMMMNo`
m oNMMMMN+/oymMMMMMMMNdy+:::::-----------------------------------------------------------------------------------------------odmmmNMMMMMMMMMMMMNMMMMMMMMMMNmNMMMMMMMMMMMMMMMMMmyhmMMMMMMMmsoooo+oyhdhsoooooooooshddysooooooooooooooooooooooooooooooooooooooooooooooooo++sdmNmdysooodMMMMMMMMMMMMmyhyo/:-.:yNMMMMMMNh/---------------------------------------------------------------------------------------------------------------------------------::::/dMMMMMd.
m .hMMMMMm:--:/shNMMMMMMMNds+:::::-------------------------------------------------------------------------------------------+hmdddmmNMMMMMMMMMMMMMMMMMMMMMNNNNMMMMMMMMMMNNMMMMMNMMMMMMMMMMdysyyhmNMMMmy+oooosymNMMMMms+ooooooooooooooooooooooooooooooooooooooooooooooooo+oooooooooosdNMMMNNMMMMMNddddddho:-:smMMMMMMNs:------------------------------------------------------------------------------------------------------------------------------::::/yNMMMMN/
m /mMMMMMy--::::/+ydNMMMMMMMNhs+::::----------------------------------------------------------------------------------------:yddddddmmmmNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNMMMMMNmNMMMMMMMMmoooshNMMMMMMMMhooooooooossoooo+oooooooooooooooooooooooooooooooooooooooooooooooyhhyshMMMMMmddddmmmNNmh:-omMMMMMMdo:---------------------------------------------------------------------------------------------------------------------------:::::sNMMMMNo
m oNMMMMN+--::///://oymNMMMMMMMmho/:-:---------------------------------------------------------------------------------------+ddddmmdddddmmmmNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNMMMMMMMMMMMMMMMMMhydNMMMMMMMMMMdooo+ooydmNNmyooooooooooooooooooooooooooooooooooooooooooooooooooooooohMMMMNmdddmmNMMMMMh. -yNMMMMMNd+--------------------------------------------------------------------------------------------------------------------------:::/smMMMMMy.
m `sMMMMMm/--::///////:/oymNMMMMMMMmy+::-------------------------------------------------------------------------------------+dmddddmmmdddddddddmmmmmmNNNNNMMMNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNMMMMNyosydNMMMMMMmsooossysoooooooooooooooooooooooooooooooooooooooooooooosmMMMMNmddmNNMMMMMMN+```:hNMMMMMNy/---::----------------------------------------------------------------------------------------------------------------:::::/hNMMMMMh-
m .hMMMMMd:-::::/:://///::/+ymNMMMMMMNdy+::---------------------------------------------------------------------------------:hddddddmmmmmddddddddddddddddmmmmmmmmmmNNNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmmmNMMMMmmNMMMMMMMMMmsoydNNNmyooooooooooooooooooooooooooooooooooooooooooooohMMMMNmddmNMMMMMMMMMmys/-/yNMMMMMMd+::::::::::::::-:::::::::-----------------------------------------------------------------------------------------:::::::odMMMMMNy-
m :NMMMMMy:::::::://////::--:/+hNMMMMMMMNds+::-:---------------------------------------------------------------------------:oddddddddmmddddddddddddddddddddddddddddddddddmmmmmNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMNNmmmNMMMMMMMMMMMMMMMMmhmNMMMMMmsoooossssoooooooooooooooooooooooooooooooooooyNMMMMNmmmNMMMMMNMMMMNmNNNNNNMMMMMMMd+-::::::::::::::::::::::::::::::::::-----------------------------------------------------------------------:::::::::::/ymMMMMMN/`
m `oMMMMMNo::::/::////:::::::::--+ydNMMMMMMMNmy+/:-------------------------------------------------------------------------:sdddddddddddhhyyysooosydmmmmdddddddddddddddddddddddddddmmmmmmmNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmmNMMMMMMMMMMMMMmo+oydNMMNdsoooooooooooooooooooooooooooooooosmMMMMNmmNMMMMMNhhMMMMMMMMMMMMMMMMMMMMm+---:----------:::::::::::::::::::::::::::::::::::::::::::::------------------------------------:::::::::::::::::::::sNMMMMMMN+-.
m `hMMMMMm/-:::/:////::::::::::::://oymNMMMMMMMNmhs+:---------------------------------------------------------------------:yddddddddddhs+::--------+sdddddddddddddddddddddddddddddddddddddddmmmmmmmmNNNNNMMMMMMMMMMMMMMMMMMMMNmNNMMMMMMMMMMMMMNyymNMMMMMMmyooooooosyhhysoooooooooooooooooomMMMMMNNNMMMMNNyohNMMMMMMMMMMMMMMMMMMMMm/--------------------------------:::::::::::::::::::::::::::------::::::::::::::::::::::::::::::::::::::::::::::::::odNMMMMMMMNds:`
m :NMMMMNy:-::::://///:/:::::::-::::://+ydNMMMMMMMMNmyo/::----------------------------------------------------------------smmddddddddho:-------------/ydddddddddddddddddddddddddddddddmmmmddddddddddddddmmmNNNNMMMMMMMMMMMMMMMMMMMMMMMMNNNMMMMMMMMMMMMMMMMmsooosymNMMMMNhoooooooooo+ooooohMMMMMMNMMMMMmyooosdNNNmdhyymMMMMMMMMMMMMd/------------------------------------------------------------------:::::::::::::::::::::::::::::::::::::::::::::::::/oydNMMMMMMMNh:`
m sMMMMMNo--::/:////////::-::---:::://:://+shmNMMMMMMMMNmho/:-----------------------------------------------------------:odmdmdmdddddo:---------------:ohhddddddddddddddddddddddddddddddddddddddddddddddddddddmmmmNNNNMMMMMMMMMMMMMMMMMNNNMMMMMMMMMNNNMMMMMmoohmMMMMMMMMNy+ooooooooo+ooohNMMMMMMMMMMNhsoydmdysssooooosdNMMMNNMMMMMMh:-----------------------------------------------------------------------:::::::::::::::::::::::::::::::::::::::::::::::+shmMMMMMMNy-
m `mMMMMMd/-:::/://///:/:::-::---://////////:::+ydNMMMMMMMMMNds/:-------------------------------------------------------:odddddmmddddy/------------------:+oyyhhddddddddddddddddddddddddddddddddddddddddddddddddddddddmmmNNNNMMMMMMMMMMMMMMMMMMMMMMNmmmNMMMMMmNMMMMMMMMMMMdoooosyhdmdhoohNMMMMMMMMMNdsoymMMMMNy+oooooooooyhysodMMMMMNo------------------------------------------------------------------------------------------:::::::::::::::::::::::::::::::/sdNMMMMMm+`
m :MMMMMNs:-:::::///////:::::::-::////:///:/:::--:/ohmNMMMMMMMMNmhs+/:--------------------------------------------------+yddddddddddh/------------------------:/oshhdddddddddddddddddddddddddddddddddddddddddddddddddddddddmmmmmNNNMMMMMMMMMMMMMMMMMMNNNNMMMMMMMMMNNNNMMMMNyshmNMMMMMNhymMMMMMMMNmysosdNMMMMMMdoooooooooooooo+yNMMMMMm+--------------------------------------------------------------------------------------------------------------:::::::::::::smMMMMMMdo-
m `hMMMMMm/--::://///////::-::::-::/:///////::::::::-:/+shmMMMMMMMMMMmdy+:--------------------------------------------.-:ohdddddddddds-----------------------------:/shddddddddddddddddddddddddddddddddddddddddddddddddddddddddddmmmmmNNNNMMMMMMMMMMMMMMMMMMMMMMMMNmmmmNMMMMNNMMMMMMMMMhhNMMMMMMdsooshNMMMMMMMMhoooooooooooooooohNMMMMMh:.----------------------------------------------------------------------------------------------------------------::::::::::/hNMMMMMMm+`
m -mMMMMMy:-:::::://////:::-::::::/:////////::::::::-:://:/ohdNMMMMMMMMMMNhs+/:---------------------------------------.-:sddddddddddy/--------------------------------/shdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddmmmmmmmNNNNNMMMMMMMMMMMMMMMMNNNmNNMMMMMMMMMMMMMMNdmMMMMMMNyshmMMMMMMMMMMNyoooooooooooooooosdMMMMMNo.--------------------------------------------------------------------------------------------------------------------::::::::ohNMMMMMMd-
m oNMMMMN+--:::////::////::-::::::/:////:///:::::::::::/:/:://+syhmNMMMMMMMMMmdyo/:--------------------------------------ohdhhhhhhdh+----------------------------------:+hdhddddddmmmddddddddddddddddddddddddddddddmmmddddddddddddddddddddddddmmmmmmNNMMMMMMMMMMMMMMMMMMMMMMMMMNNNMMMMMMMMMMMMMMNNMMMMMMMMMMMMNysooooooooooooooooyNMMMMMh-----------------------------------------------------------------------------------------------------------------------::::::::/yNMMMMMm+`
m `yMMMMMm--::::////::///::::::::::/:////://::::::::-:://:////::::::/odNMMMMMMMMMMNmhs+::---------------------------------/ydhhhhdhy/-------------------------------------sdhhdddddmmdddddhddddddhhhhdddddddddddddddmmmddddddddddddddddddddddddddddddmmmmNNNMMMMMMMMMMMMMMMMMMMMMNMMMMMMMMMMMMMMMMMMMMNNNNMMMMMMMNmyoooooosyhhhyoosmMMMMMd------------------------------------------------------------------------------------------------------------------------:::::::::omMMMMMNo`
m -dMMMMMd--::://::/:///:::::::::://:////://:::::::::::/:::::////:::::-:+ydNMMMMMMMMMMMNdyo/:------------------------------/shdddhs/--------------------------------------/hhhhddddddddddhdddho/::::/oyhddddddddddddddddddddddddddddddddddddddddddddddddmmmmmmmmNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmmNNMMMMMMMMMMNhoosymNMMMMMmyyNMMMMMy.--------------------------------------------------------------------------------------------------------------------------::::::::yMMMMMN+
m +NMMMMMy--::://::::///:::::::::://:/://:/::::::::::::/:::://///::::::::://oshmMMMMMMMMMMMNmho/-----------------------------/+++/----------------------------------------:shhddddddddddddhs+:---------/shddddddddddddddddddddddddddddddddddddddddmmmmmmmmddddddddmmmmmmNNNMMMMMMMMMMMMMMMMMMMMMMMNNmmNMMMMMMMMMMMMMNNNNMMMMMMMMMNNMMMMMN+.---------------------------------------------------------------------------------------------------------------------------:::::::/hMMMMMm-
m `sMMMMMMs--::://:///:///:::::--:://////::/::::::::::::/:////://:::--:::::///::/+oydmNMMMMMMMMMNds+:-----------------------------------------------------------------------ohhdddddddddhh+:--------------:+shdddhdddddddddddddddddddddddddddddddddmmmmmmmdddddddddddddddddmmmmNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNMMMMMMMMMMMMNMMMMMMMMMMMd:-----------------------------------------------------------------------------------------------------------------------------:::::::/dMMMMMh
m -dMMMMMNo--:::/:////://::::::-:::/://:/::/:::::::::::://////://::::::::::/:////:::::+shmNMMMMMMMMMNdyo+:------------------------------------------------------------------/ydhhhhhhddhs:-------------------:+shhdddhhhddhhddddddddddddddddddddddddddddddddddddddddddddddddddddmmmmmNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNMMMMMMMMMNNd-----------------------------------------------------------------------------------------------------------------------------::::::::sNMMMMN.
m :mMMMMMm+-::://:/://://:::::-::::/://://:/:::::::::::/://:////::-::::::://://:////::---:/ohmMMMMMMMMMMNNdyo/:--------------------------------------------------------------+hdhhhhhho/------------------------:/oyhhhhhhhhhhhhhhhhhhddddddddddddddddddddddddddddddddddddddddddddddddddmmmmmNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmy------------------------------------------------------------------------------------------------------------------------------:::::::+NMMMMM:
m .hMMMMMh:-::://:/://:/::::::-::://:///////:::::::::://://:////:::::::::://:///::/::-::-:-::/+ydNNMMMMMMMMMMNmyo/:-----------------------------------------------------------:+syyso:------------------------------:/+oyyhhhdddddhhhhdddddddddddddddddddddddddddddddddddddmddddddddddddddddddddmmmmNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmmmd/------------------------------------------------------------------------------------------------------------------------------:::::::+mMMMMM/
m :mMMMMMs-::::/::::/::/:::-::-::://:://///::::::::::://:/://://:::-:::::///////::/::-::::::::////oshmNMMMMMMMMMMNmhs+:--------------------------------------------------------------------------------------------------:://++oossyyhhhhhdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddmmmmmmNNNNNNNNNMMMMMMMMMMMMMNNmmddddh:------------------------------------------------------------------------------------------------------------------------------:::::::/mMMMMM+
m `sMMMMMm+-::://::/://:/:::-::-::://:://///::-:::::::://:////:/:::::::-:://///:/:::::-::::-:://:://////+oymNMMMMMMMMMNmdy+::--------------------------------------------------------------------------------------------------------::::///+oooooooooosoooo++//////++oyhdddddddddddddddddmmdddddddddddddddddddddmmmmmmmmmmmmmmmmmmmddddddh:------------------------------------------------------------------------------------------------------------------------------:::::::/mMMMMM+
m .dMMMMMh:-::://::/:////::::::-::://:::://:::-:::::::///:////:/::-::::-::////::///::-:::::-:////:::/:/:::::/oydNMMMMMMMMMNmdys+/:-------------------------------------------------------------------------------------------------------------------------------------:ohdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddy+---------------------------------------------------------------------------------------------------------------------------------:::::/mMMMMMo
m :NMMMMNs:-::::/:://///::::::-::://:://://::::::::-:://///:/://::-:::-::://////:/::::::::-::///////://:::::--:/oshdNMMMMMMMMMMNNmho/:----------------------------------------------------------------------------------------------------------------------------------+hdddddddmdmddddddddddddddddddddddddddddddddddddddddddddddddddddy/----------------------------------------------------------------------------------------------------------------------------------:::::/mMMMMMo
m sMMMMMmo-:::::/:://///::::::-::://:://///::::::::-:://///:/://::::::-:::////////:::-:-:::::///////:/::::::-::://///oydmNMMMMMMMMMMNdyo/:------------------------------------------------------------------------------------------------------------------------------/ydddddddddd+ohddddddddddddddddddddddddddddddddddddddddddddddddy/------------------------------------------------------------------------------------------------------------------------------------::::+mMMMMM+
m `dMMMMMh:-:::://:::://:::-:::-::///:://///::::::::-:://///:///::-:::::::////////:::--:-:::::///////:::::::--:::///:////+osydmMMMMMMMMMNNdhs+:--------------------------------------------------------------------------------------------------------------------------+hdddddddddh::/ohddddddddddddddddddddddddddddddddddddddddddddhs/------------------------------------------------------------------------------------------------------------------------------------:::::sNMMMMM-
m .NMMMMMy::-::////::://::::::::::///////:/::::::::::://////:///::::::::://////////::-::::::://////////::-:::-:://:/::////::::/+yhmNMMMMMMMMMNmdyo+/---------------------------------------------------------------------------------------------------------------------ohhdddddhddo----/ohdddddddddddddddddddddddddddddddddddddddddy+:-------------------------------------------------------------------------------------------------------------------------------------::::/hMMMMMh`
m +MMMMMNo-:::://///:://::::::::::///////:/::::::::::://////://:::::::::://////////::::::::::////////::::-:::::://:/:::/::::::-:-::+sdmNMMMMMMMMMMNNmhyo/:--------------------------------------------------------------------------------------------------------------:shhddddhhdy/------+yddddddddddddddddddddddddddddddddddddddho:--------------------------------------------------------------------------------------------------------------------------------------:::::+mMMMMM+
m hMMMMMm/-::://////:///:::::::::://///////::::::::::://////://::--::::://////////::-::-:-:::/://////:::-::-:::://:::://:::--:::::::://+oyhmNMMMMMMMMMMMNdyo/:-----------------------------------------------------------------------------------------------------------ohhhhhhhdy/--------+hddddmmdddddddddddddmmmmmddddddddddddy/---.------------------------------------------------------------------------------------------------------------------------------------:::::yNMMMMm-
m .mMMMMMh--:::///////://:::::::::://///////:::::::::://////////::-:::::://////////::-::-:-::/:://////:::-:::-::://:/:////:::::----::///::::/+sydmNNMMMMMMMMMNmdhso/------------------------------------------------------------------------------------------------------/yhhhhddy+---------/hddddddddddddddddddddddddddddddddddddo-----------------------------------------------------------------------------------------------------------------------------------------::::omMMMMMs`
m /NMMMMMo---::///////://:::::-:::::///////:::::-::::://///////::::::::::/:://:////:::::::-::/:///////:::::::::://////:///::::::::::://://////::::/+sydNMMMMMMMMMMMNdyo/:--------------------------------------------------------------------------------------------------/osyyyo/----------/ydhhhdddddddddddddddddddddddddddddddd+----------------------------------------------------------------------------------------------------------------------------------------::::smMMMMMh-
m `yMMMMMN/--::://///////::::::-:::/:///////::::::::::://///////:::::::::://///:///::-::::::::/:///////::-:::::::/://:/://:::::::::::://:://///::-----:/+oydNNMMMMMMMMMMNmyo+/:------------------------------------------------------------------------------------------------::--------------+ydddhddddddddddddddddddddddddddddddy:---------------------------------------------------------------------------------------------------------------------------------------::::oNMMMMMh-
m -dMMMMMd:-:::://///////::::::-:::/:///////::::-::::://:///////::-::--::://///:///::-::::::://:///////::-:::::://://:/://::::::::::://:///////:::-::-:://///+syhmNNMMMMMMMMMNmdhso/:-----------------------------------------------------------------------------------------------------------/sdddhhhhdddddddddddddddddddddddmmdo---------------------------------------------------------------------------------------------------------------------------------------::::sNMMMMMh.
m /mMMMMMs--::://////////::-:::-::/:://///:::-:::::::://:///////:-::::::://////:///::::::::::/::////://::-:::::://////://::::::::::://:/:/:://:::::::::///:/:/::///oydmNMMMMMMMMMMMNmhyo+:-------------------------------------------------------------------------------------------------------:+yhdhhhhddddddddddddddddddddddddd+---------------------------------------------------------------------------------------------------------------------------------------::/yNMMMMMh.
m +NMMMMN+-:::://///////::::::::::/://////:::-:::::::://://////::-:::::::///://://:::::::::::/:////://::--::::://:////://:::::::::::/::///////::::::::://:////://:::::/+shmmNMMMMMMMMMMMNNdyo+::---------------------------------------------------------------------------------------------------:+yhhdhdddddddddddddhhddddddddds:-------------------------------------------------------------------------------------------------------------------------------------:-:+dMMMMMNy.
m `sMMMMMN/-::://////////::-:::::://///////:::-:::--::://://////::-::::::////::/:/:::-:::::::/::////://::-:::::://:////:::::-::::::::/:://////::---::::://://:://::::--:--://osydmNNMMMMMMMMMMNNmhso+::-----------------------------------------------------------------------------------------------:/oyhhddddddddddhyyhddddddddy:-------------------------------------------------------------------------------------------------------------------------------------:::sNMMMMMm+`
m .hMMMMMd:-::::////::///::-:::-::///////://:::::::::://////:///::--::::::///:////:::::--::::/:://////:::-:::-://////:::/::::::::-::://///////:::::-::://////:///::----:--:://:///+oshdmNNMMMMMMMMMMNNmdys+/::-------------------------------------------------------------------------------------------:/+ossyyyyyso+/ohddddddmddo-----------------------------------------------------------------------------------------------------------------------------------:::/hNMMMMMd:
m -mMMMMMy--::::////:////:::::::::///::/::/::::::::::://:///://:::--::::::://:/://::::::--:://:///////::::::-:://///::::/::-::::--::://////:/:::::::::://////:///::::::::::////////:/:::/oyhmNMMMMMMMMMMMMMNNmhyso+/:---------------------------------------------------------------------------------------------------odddddddmdy/--------------------------------------------------------------------------------------------------------------------------------:-:-/ymMMMMMNy.
m +NMMMMNo--::://://:///::-:::::::///://://:::::::::::/::::/://::-:::::::///::/:/::::::::::://://////:::::::::://///::://:::::::-:://////////:::::::::://////://::::::::-:://///:////::---:::+syhdmNMMMMMMMMMMMMMMMNmhyo+/:--------------------------------------------------------------------------------------------:yddddddddo:--------------------------------------------------------------------------------------------------------------------------------::::odMMMMMMd+`
m `sMMMMMm/-:::://///:///::-:::-:://////////:::::::::::/::::///:::-::::::////::/:/:::::::::://:://:///:::::::::://///::://:--::::-:://////////::--:::::://///////::-::-::-::////::::/:::::::-:::////+oshdmNNMMMMMMMMMMMMMMNmddhyo+//:-----------------------------------------------------------------------------------+hdhhhdddo--------------------------------------------------------------------------------------------------------------------------------::::+hNMMMMMNy-
m .dMMMMMh:-:::/:////:///::-:::-:::////////::::::::::://::/:://:::-:::::///////::/:::::::-:://////:///::--::::://////::::::-::::-::://///////:::::::::://////////:-:::::--:://////::/:::::::::://////:::///+osyhdmNMMMMMMMMMMMMMMMMNmdhysso+//:::-----------------------------------------------------------------------+hddhhdhs:--------------------------------------------------------------------------------------------------------------------------------::/smMMMMMMd:`
m :NMMMMNs-::::/:///////::::::::::/:////://::::::::::://::/:://:::-::-:://///::///:::::::::://////://:::::::::://////://:::::::::::://///////::::::::://////////::-::::--:://///////:::-:::-::::::://///::::::::::++yhdmNMMMMMMMMMMMMMMMMMMMNNNNmmdyyso+/:::-------------------------------------------------------------+hdddho:----------------------------------------------------------------------------------------------------------------------------:-:::/odMMMMMMm+`
m sMMMMMm+-::::/:///////::::::::://:////://::-:::::::///://::::::-:::-::////:::///:-:::::::://///////::-::--::://////://::-:::::::://///////::--:::-:://////////::-::::-::://///////::--::::::////:::///::::::::::///::/+osyyyhdmNNMMMMMMMMMMMMMMMMMMMMMMNNNmdyso/:::-----------------------------------------------------/oso/----------------------------------------------------------------------------------------------------------------------------:::::/smMMMMMMNy.
m mMMMMMd/--::////://://::-:::-:::///::::/::::-::--:::///:::://:::::-::://////::/::-:::::::///////::/::::::-:::////////:::-::::-::://///////::::::-:::/:///////::::::::-:::/://////:::-:::--:://///////:::::::::::/::///////::-://+oshddmmNNMMMMMMMMMMMMMMMMMMMMMMNmmdhyysso+/:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------:::::/odNMMMMMMNh:`
m .NMMMMMy---::////://:/:::::::::/:///::///:::::::::::///////:/::-::::::////////:/::::::::::///////::::::::::::::///////:::::::--::://///////::::::::::/:///////::::::::::://:://///:::-:::::://///////:::::::::::://:://///:::-:::--:://////+oossyhddmmNNMMMMMMMMMMMMMMMMMMMMMNNNmmdhyyyso+////:::::----------------------------------------------------------------------------------------------------------------------------------------------::::::::+ydNMMMMMMMNy:
m /MMMMMNo--:::////::///::::::::://///:////:::::::::://////////::-:::::://///////::::::::::://///////::::::::::/:///////::-::::-::::////////:::::::::://:///////::::::::::://:://///::::::::::/:///////:::::::::::///:://///::::::::::/:/://///::--:::::/+osyhdmNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNmmdhysooo+//::------------------------------------------------------------------------------------------------------------------------:::::::::::/+shmMMMMMMMMNmo.
m sMMMMMN+--:::///:::://:::::::::///:/:///::--::::::://///////::--:::::://///////:::::::-:://////////::::::::::/:///////:--::::-:://:///////::-:::::::///://///::::::::::://////////::::::::::/:///////:::::::::::///::/:://::-::::::///:://::::::-:::::::///:///+osyhmNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNmmmmdhysoo+++////::::::::------------------------------------------------------------------------------------------:::::::::::/+osydNNMMMMMMMMNdo:`
m `dMMMMMd:--::://::::://::-:::::://///:::/::::::::::://///////::--::::://///////:::-::::-:://////////:::::::::/::///://:::-::::::://://////:::::-:::://:/://://::::::::::///////://:::::::::::::/:////::::::::::://:/:::::::::-:::::://:/:/::/::::::::::://:////://::::::::/+oooosyyhhdddmmNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNmmmddddddddhhhyyyso+++////:::::---------------------------------------------------:--:::::::::/+osydmNNMMMMMMMMMMMNmy/`
m -mMMMMMy--:::://:::://:::-::::://////::/:::-:::::::://///////::-:::::://///////::::::::::://///////::-:::::://::://://::-:::::::://///////:::::-::::////:////::::::::::://:/://://::::::::::/::/::://::::::::::://://:://::::::-::::/:///////::::::::::://////////:::::::::::::::////::::::///+oooossyhdmmmmNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNmmmmdddhhyyssoo+++//::::::---------:::::::::::::::////::///+osydmmNNMMMMMMMMMMMMMMMmh+-.
m +NMMMMMo-::::///::///::::-::::://////::::::-::::::://///////:::-:::::://///////::-:::-::://:///////::-:::::://:/:////::::::-:::://:///////:::::::::///////://::-:::::::://:/:////::--::::::///:/::://:--:::::::://://:://::::::-::://://::://:---::::-://///://:::::-::--:://////////::-::-::::://::/::///::://++osyhhdmmmNNNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNmmmmmmmmmmNNNNNNNNNNNNNNNNNNNNNNNNNMMMMMMMMMMMMMMMMNmdyo/-``
m `yMMMMMN/-:::///:::::/:::::::-:://///////::-:::::-:://///////::-:::::://:///////:::::::::://://////:::::::-:////:::///::::::::::://:/::://:::::::::://:///////::::::::::////:/:///::::::-:::////:/://::---::::::////:/:://::::::::::://///://::---::::::////:/:://::-::--::://///:////:-::::::::///////://::::::--::::://///++///++++ooosssyyyhhhhhhhhhhhddmNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN/.``
m -dMMMMMh----:///:::://:::::::-:://///////::-::::::::/:://////::-:::::://://////::::::::::://://///::::::::::////:::///::::::::::://:/:/://:::::::::://///////::::::::::://:/:/:///::::::-:::////:///:::-::::::::////:/::/::::::-::::////////:::-:-::::::////:/://::::::::::://///:///:::::::::::////://://:::::--:::////::://:::-------:://////////::::::::/+++++oooosssssyyyhhdmmmNNNNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNmdyosmMMMMMN/
m /NMMMMNo---://////////::::::-::::///////::::::::::://:://////:-:::-::://://////::-:::::::////////:::::::-::://://:://::::::::::://///:////::::::::://://:///:::-:::::::://:///://:::::::::://///////:::-:::--:://::/:/://::::::-::://///://::::-::::-:://::/:/://::-:::::::///////:/::::::::::::////::////:::::--:://::::////::-:::::::://////////:::::--:::////://///::::::::-://///++++ossooosssssyyyyyyssssoo+++ooo++++oooo+++++//:--yNMMMMMs`
m `sMMMMMN+--:://////////::::::-:://///////:::::::::::///:/:///::-::::::///:://///:::::::::://////:/:::::::-:::////::://:::::::-::://::////:::-::::::://///////:::::::::::://://///:::-:::-::///////://::-::::-::://///:://:::::::-:://///::://:::::::-::://::/:////::-:::::://////////::::::::::://///::///::-:::-::://::/:////:::::::::::///::/:://::--:--::///://////:::::::::::://////::::::-::--::://///////::::::::-:::///:///:/:::-omMMMMMd-
m .hMMMMMd/-::://:://////::::::::://://///::::::::::::/::://///:::::::::////:////::::::::::://://::/:::::::-::://///////:::::::-::://::////:::-:::-::://///////::::::::::://///////:::::::-::///////:/:::-::::-:::////::://:::::::::://///////::::::::-:::////::://::::::::::///////:/:::::::::::://////://:::-:::-:://////////::::::::::://////////::::::--::///////:/:::---:::::::////////::::-::--::/://:/://:::-:::::::://:/://:/:::-:dMMMMMm/
m :mMMMMMs::-:://:://///::-::::::://://///::::::::::::/:::////:::::::::://:/:////::-:::::::///://::/:::::::::://///////::-::::::::///::////:::::::-::///////:/:::::::::::://///////:::::--:://///////:::-:::::::::////:::/:::::::::://////////::::::::::://///::://::::::::://///////:::-::::::::///////:/:::--:::::://///////::::::::::://////////:::::::::://////////:::::-::-::://///////::::-::-:::/::/:///:::-----:::://////////::--oNMMMMMs`
m /NMMMMNs::-:/://://///:::::::::///://///:::::::::::://://///::::::-::///:///://::-:::::::///::/://::::::::://////////::-:::::::://://////::-:::::::///////:/::::::::::://////////:::::--:://///////:::-::::::::///////:/::-:::::://////////:::::::::::////////:/::-::::::://///////::--::::::://////////::--::-:::////////:/:::::::::::///:::/://:::-:-:::://::::/:/:::::::::::://////:///:::::::::://///////:::--::::::://://///:/::-/dMMMMMm-
m +MMMMMN+:::://:://////::::::::://::/:///:::-::::-::::///:://::-::::::////:/://:::::::::::://::/::/::-:::-::///////:/:::-:::--::://///////::::::-:://://////:::-::::::://////////::::::--::::://///:::-:::::::://////////::::::::://::://///::::::::::://///////:::::::-:::/:://///:::-:::::::://////////::-:::-:::/:://////::-::-:::::://///////:::-:::-:://:///////:::::-::-::://////://::::::::::///////://::::::::::://///////:::-:yNMMMMMo
m `sMMMMMm/-:::/::://///::::::::::///:/::/:::::::::::/::/:/::/::::::::::////:/://::::::::::://::////:::-:::-::///////:/:::-::::-:://///////::::::::::/:://////::::::::::://////////::::::-:::::://////::::::::::://///////:::::::::://:://///:::::::::::://///////:::::-:::://:://////::::::::::://///////:::-:::::://:://///:::::::::::://///////:::::::-:::/::///////:-:::::::::///////://::::::::::///////:/:::::::::::://////://::--+mMMMMMd`
m .dMMMMMh:::::/::://///::::::-::////:/::/::-:::::::://:/:/::/:::::::::://:///::/::::::::::///::////::::::::::///////::::-:::::::://///////::::::::://:://////::::::::::://///////:::::::::://:://////:-:::::-:://////////::-:::::://:://////::::::::::://://////:::::--::://::://////:-:::::::://////////::--::::://::://///:::::-:::::://///////:::::::-:://:///////:::::::::::////////:/::-::::::://///////:::-:::::::://///////:::-:yNMMMMN/
m /NMMMMNs:-:::/::://///::::::-::///:/:://::::::::-:////://://:::-::::://////::::::::::-:://///::///::-:::::://///////::::::::-:://////////:-::-::::/::///:::/:::::::::::////::///::::::::://////://:::-:::::-::////:::///::::::::///:://://::::-::::::///:///::/::::::::::///:://///::::::::::://///////::---::::://////://:::-:::::-:://////////:::::::::://////::/::::-:::-::://////////::::::::://://///:/::-::-::-::/://////:/:::-+mMMMMMh`
m hMMMMMm+--:::/:::////:::::::::////:/::/:::::::::::////://://:::-::-:://////:::::-::::::://///:://:::-:::::://///////::-:::::-:://///////::-::-::::/::///::/::::::::::://://////::::::::::///://://:::-::::::://////:///::-:::::://::://://::::::::::://:///////:::::::::////:////:::::::::::://:://////::-:-::::////://://:::-:::-:::://:::////:::-::-::://:://////::::--::::://////////:::::::::://://///:::::::::::://///////:::--:yMMMMMN/
m `mMMMMMh:--:://:::////::::::-::/::/:/://:::::::::::////://://:-:::::::////::::/::-::-:::://///:://::--::::://////////::-::::--://////////:::::--:://:////::/:::::::::::/:::////::::::::::////::/://::-::::::::/:::://///:--::::::/://:////::::::::::::/:://:///:::::::::///:/://:/::::::::::::/::://////:--::::::/://://:/::::::::::::///:://///::--::-::////:::///::::::-:::://:///////::::::::::///://///:::-:::::::///////////:---oNMMMMNs`
m .MMMMMNy:-::://////://:::::::::////:////::-::::::::////:/://::-:::-::///////://::-:::-:://////////::-::::::/:://////::::::::-:://://////::::::::::/::////::::::::::::://:://///:::-:::::://://:://::::::::::::/:///////::::::::://::/://:/::::::::::://:://://::-:::-:::///:/://:/:::::::::::///:/:://:::-:::::://::/:////:::::::::::://://://::::-::::::/:////://:::::::::::://::://///::::::-::://::///:::::-::-:::://////:///::--+mMMMMMd-
m /MMMMMNo--::///////://:::::::::////:////::-::::::::////:/://:::::::::///////:/:::::::-:://////////:::::::::/::://///::::::::-::/:://////::::::::::/::::///:::::::::::://:://://:::-::::::/:/://://::::::::::://:///////::::::::://:::///:::-:::::::::/:/://://::-:::-::::///:////::-:::::::::///:/:://::::::::::///://////:-::::::::://////://:::::::::://:////://::::::::-:://:/:://///:::::--::////::/:/::::::::-:://:///:://:::-/dMMMMMN+
m yMMMMMm+--:://:/:////::::::::::/://:////:::::::::://::/:////:-:::::::////////::::::::-:://///////:::::::::///:://///::-:::::::://///////::::::::::///://://:::::::::://::::////::::::::://:/://:/:::::::::::://://////:::::::::://:::/://::::::::::://:////:/::::::::::////////::::::::::::://////::/:::::::::://////////::-:::::::://:///:://::-::::::://:////:/:::::::::::://:/://://::::--::://///::/:/::::::::::://:/://://::-/hMMMMMMy`
m `hMMMMMd:-::://:/:////::::::-:://:///://::::::::::://::/:///::-:::::://///////::::::::-:/:://////::::::::::///:://///:::::::::://////////:::::::::////://:/::::::::::://:/::///::-::::::://://////::-:::::::://////////::-:::-::/:://:/://::::::::::://:////:/::-:::::::///////::::-:-:::-::///:///::/::-:::-::://///////::--::::::::/::///::/:::-::--:://:///////:::::::::::://:////:/:::::::::://::://///::-:::-::://://:////::-:yNMMMMMm.
m `dMMMMMd::::://///////::::::-:://////://:::::::::::////::///::-:::::://///////::-::::::::////////::::::::::/:::::://::::::::::://::://:::::-::::://:://:://:::::::::::://::////::--::-:://///::///::-:::::::///////://:::::::-://////::::::-:-::--:://////://:::-:::::://////:///::-:-:::::://////://:::::::-:://////:://::-:-:::::://////:///:::::::-://////:/:/::::::::-:://////////::-::::::://////:///::-::::-:://////:///::--oNMMMMMN+
m -mMMMMMy:-:://////////::::::::://////:/::::::::::::////:://:::-:::::://///////::::::::::/:://////:::::::::///:::///::::::::::::/::::://:::::::::://://:///:::::::::::////::///:::::::::://///:://::::-:::::://///:/://::::::::://////::/:::::-::-::://////://:::::::::://////://:::-:-:::::://////://::::::-::://////://:::::::::::://///////:::::::::://////::/:::::::::::://///////:::-::::::://///////::::::::::://////:///::-/dMMMMMNs.
m +NMMMMMo:::://://///:::::::::://///////::::::::::://///:://::--::-:://///////::::-::::::/:://////::-::::::////:////:::::::::::/:::/:://::-:::-:://:://://:::-:::::::///://////::-:::::://////:://::::-:::::://///:::/::-:-::::////////:/:::::-:::::///////://::-:-::::///////://::-::-::::://///////:::::::-::///////:/:::::::::::://////////::::::-::////////:/::::::-:::://///:://:::::-::::://///////::::::-:::://///::///::--sNMMMMN+`
m `hMMMMMN/-::::/:://///::-::::::://////:/:::::-:::::////////:::-:::-:://///////:::::::::://////://::::::-:://://://:/:::::::::::/://:/::/::-::::::///////:/::::-::--:://////:///::-:::::://////////::::-::-:://////////::-:-::::////////:/::-::::::::///////:/::::::::::/:://:://::::::::-::://///////::::::-:::///::////::-::::::::://///////::--::--::////::////:::::::-:::///////://:::-::::://////////::--::::::://///////:::-/mMMMMMh.
m -dMMMMMh--::://:://://::::::::://///////:::::-:::::////////::::::::::/:///////:::::::::://////://::::::::://://://:::::::::::::/://://::::::::::://///////::::-:::-:://////://:::::::::://///////::::::::::://///////:::-:::::://///////:::-:-:::::://///////::-:::::::/:///////::::::::::://:///////::::::::::///::///:::::::::::://:///////::-:::::://:///////::::::::::::/:///////::-:::::::/:///////::::::::::://://////:::-:yMMMMMN/
m +NMMMMMh--::///::////::-:::::://///////::::::::::://///////::::::::://////////::-::--:://:/:////::::::::::/:////://:::::::::::////::://::::::-::///////:/:::::::::::://///////::::::::::////////::::::::::::////////:::::::-::::////////::::-:::::://///////:::--::::://:/::///::-::-::::://:://////::::::::://://::///::::::::::://:://////::-::-::::/:::////:::::::::-:::/:://////::--:::::://///////:::::::::::://:///////:--oNMMMMMs`
m :mMMMMMNs:-:///::////::-:::::://///////::::::::::://///////::-::::::////////:/::-::--:://:/::///::::::-:://://::://:::::::::://///::://::::::-::///////:/::::::::::://///////:::::::::://///////::::::::::://:://////::::::-:::////::::::-:::::::://///::///::::-:::://:://:///::-:::::::://:///://::--:::::://////:///::-::::::::/::://///::--::-:::///:://///::::::::::://:///:///::::::::://:///:///::--::-:::://:://:////--/dMMMMMN`
m :dMMMMMMd+:://:/:///::-:::::://///////:::-:::::::////////::::::-:::////:///::::::::-::/://:::/:::::::::://///:://::::::::-:://////://::::::-:://////////::-::::-:::////////::::::::::://///////:::::::::://::://///::-::-::://////::::::-:::::-::/:///:://::-::::::://:////://:-:::::-::///::/::/:::--::::::://::/://::::::::-:://:/::////:::::-::::/://:/://::-::::::::://///:://::-:::::::/:://:///:::-:::--::///:://://::-:yNMMMMN+
m .dMMMMMMNy/:/:/:///::-::::://////////:::-:::::::////////::-:::::::////////:::::::::::/://:::/:::::::::://///:://::::::::::://////://::::::-:://////////:::::::::::////////:::::::::://://////::::::::::://:://///:::-:::::://://:://::::::::::://:///::/:::-:::::://:///////::-::::::::////:/://::::-:::::/://///://::::::::::::///::///::::::-::::/://:/:::::-::::::::///////:/:::::::::://:///////:::::::::::////:/::/::--oNMMMMMy`
m .omMMMMMMd/::/://:::-::::://///////::::-:::::://///////::-:--::://///////::-::::::://:///:::::::::-::://///:///::-::::::://///////:::::::-:://///////::-::::-:::::///////:::::::::://://////::-::::::://:://///:::::::::://///::://::::::::::://://////::--::::::/:://////::--::::::://///::://::::::::://:///:/:/:::::::::::/:///::///::-:::-::://://///::::-:::::::////////:/::-:::-::://://////::::::::::://://:/://::-/mMMMMMd-
m .yNMMMMMms/:///::---::::///////::::::::::-::/:/::///:::-::::::///::////:::-::-::::///::::/::-:::-:://////////::::-::::://///////::::::-:://///////::::::::::://:///////::::::::://:::////:::::::::::////////:/:::::-::://////:///:::::::::://:://///:::::::-:::////:////::--:::::::/::/::/:/::::::--://////////::::::::-::://::///:/:::-::-:://////:://::::::::::://::/::/:/:::--::::///////////:::::::::::////::::/::--hMMMMMN+
m `+NMMMMMNds+/:::::::-:::::::////::::::::::////::///:::-::::://:/::///:::::::-:::////:::::::-:::-:://///////:::::::::::/:///////::-:::::://://////::::::::::://:://///:::::::::://:::/://::::::::::://///////::::::-::://////://::::::::::://:://///:::::::::::////////::::::::::://://::/::::::::-:://////////:::::::::::://::////:::::::-:://////:://::::::::::://:::::/::::::::::://////////:::::::--::://///////::-+NMMMMMy`
m :dMMMMMMMNho:-::::::/:::::////::-::-::::////:::/:::-:::::://:/:////:::::::-:://////::/::-:::::::////////::::::::::://://////::-:::-::://://////::-::::::::/:/://///::-::::::/::///:://:::::::::::/:////://::::::::://///////:::::::::::://::/:///::::::-:://////////::::::::::://://:::/:::::::::://////://::::::::::://://:////:::::::::://////://::::::::-::////:::::/:::::::::://////://::::::::-:::////////:::-/dMMMMMm-
m `+hNMMMMMMNh+:-:::://::::://:::::::::::/:///::/:::-:::::://://////::-::::::://////://::-:::::::////////::::::::::://://////::-::::::///://:///:::::::::://:/::://:::-::::::/::////:/::::::::-:://:////://:::-:::://////////:::::::::::://::/://:::::::::://///////::::::::::://:://:::/:::::::::///////://:::-::::::://://::///::-:-::::///////://::::::::-::////:::///:::::::::///////://::::-::::://////////::::sNMMMMM+
m `/yNMMMMMMNdo::::///:/:://:::::::::://:///::/:::-:::::///////://::::::-::://////:/::::::-:::::///////::::::::::///://////:::::::::///::/://::::::::::://::::://::::::::::/:://////:::::::::::/::/::///::::::-:://////////::::-::-:://///::///::-:::::://////////::::::::::://///:///::::::-::://////////:-:::::::://////:://::-::::::://///////::::::::::://////:://::::::-::://////////:--::::::://////////::-+mMMMMMd`
m `.odMMMMMMNmyo/://///::::-::::::::////://:/:::-::::://///:///::-:-::::://///////::::::::::/://////::-:::::::://:://///::::::::::/::///://::::::::::////::/:/:::::::::://://:///::::::::::://://:///:::::::::://////::/::::::::::://///:::/:::::::::://///////:::::::::::://///:://:::::--:://///////:::-:::::::://////::/:::-:::::://///////:::::::::::://////::/:::::::-:://///////:::-:::::::://///////::-/dMMMMMN:
m .+dMMMMMMMNmyo/:///::::::::::::////:////::-:::-::////::://::-:-:::://////////::::::::://:://///::-:::::::://:://///::::::::://:://:///:-::::::::////:////::::::::://:://////::::::--:://:://:///::::::-::///////::/:::::::::://////::::::-::::::://///////::::::::-::://////:/::-:::-::://///::/::::::::::::/://///://::--::::://:///:///:::::::::::///////://::::::-::://///:///:::-::::::://///:://::-:hMMMMMNo`
m ./ymMMMMMMMNds+::/:::::::-:::////////::::::-::://////:/:::::::::://///////:::::::::///://:///:::::::::://:::////:::-:::-::/:://////::::-::-:::/::///://::::::::://////::/:::::::::::///////://::::::-:://///////:::-:::-::://///////::::::-::://://////::::::::-::/:///////:::-:::::://:://::/:::::-::--::/://://///:::::::::///:/:://:::::-::--::/:////:::::::::::::///://:///::-::::::::/::/::://::-sNMMMMMy.
m .+hNMMMMMMMNmyo/-::::::::////::///::::::-:://///////:::::::::://///////:::::::::////:/://:::::::::::/::/:////::::::::://///:///:::::-::-:://://:///::::::::::////////:::-:::::::://///////::::::-:://///////::::::::-::://///////::::::::://::://///:::::-::::://///////:::::-:::://:://://:::::-::::://://:////:::::--::///:://:/:::::::::::::/:://///:::-:::-::///:///://:::::::::::/::://://::-+NMMMMMd-
m `-odNMMMMMMMNmy+:--:::///:/:://:::-:::::://///////::::::::://////////::-::::::/::/:/://::-::::::::/::///://:::::-::://://////::::--:::::/:://:///::::::::://///////::--:--::::://///////::::::-::/:///////::::::::-::://///////::::::::://:::////::-::--:::://////////::-::::::///://////::-:::::::://://:///:::-::::::////://:/::::::::-::://:////:/:::-::--:////::////::::::::::://:://///::-:hMMMMMm/
m `:sdNMMMMMMMNmyo:::////::///::--::::://///////:::::-:-:://:/:////::-::::::://:::://::::::::::://:::////::::::::://////////:-::::--:://///:://:::::::-:://///////::-::::::::////////:::--::-:::/:///://:::::::::::://///:///::-:::-::///:://///::::::::-:://///////:::-:::-:://::/:://::::::::::://:///://:::-::::::/::/://///::-:::::-::/:://:://::::::--:://::/:/://::::::-:::/::////://:::sNMMMMMo
m `-+hNMMMMMMMNmyo+/://////::-::::::////////:::::::::::////::///::-::::::////:/://:::::::::::/:/::////::::::::://///////::-::::--:://///:://::::::::://///////:::-::::::::////////:::::::-:://////://:::::::::::///://://:::-::::::////::///:::::::::::////://///::--:::::////:/::/::::::::::::/::///://:::-::::::/::/:////::::::::::://///::://::-::-:::://:://///::::::::::://://::://:-+mMMMMMd.
m `-+hNMMMMMMMNmhs+/:://:::::::::////////:::::::::://///:://::::::::::/://::://::-::::::://:://////::-:::::://///////:::::::::://////://:::-:::::://///////::::::::::://///////:::::::::////://:/:::-::::::::///://///::::::::://::/:////:::::::::://///:/::/:::--::::://:///://::-:::::::://://:/://::-::::::////::///:::::::::::://///:::/:::-::-::::::////:/:::::::::::///::://:/:-/hMMMMMm:
m `./hmMMMMMMMMNds+/::::::::://://////:::::-:::://///:://::::::-:::////:::/::--:::::::///:///:/:::-:::::///////://:-:::::-:://///////::--::::://:///////:::::::--:://///////::-:::::://:/://:/::--::::-:::///::///:::::::::://::/:///::-:::::::://:////://:-::::::://:://////::-:::::::://///:///::--::::://///::///:::::::::::////:::://::---:::::/:///////::-::::-:://///://:::::sNMMMMNo`
m `-/ymMMMMMMMMNdy+/::::::/:://////:::::::-::/::///://:::::--::://///:::::-::::::::://////:/::::::-::///////:/::-::::--:://///////::::::-::/:////://::::::::-::/:///////::::::::://::/::::/::::::::-:://://:://:::::::::::////::/:::-:::::::://:://://::-:::-::://///////:::::::--:://////://::::::::::///////://:::::::-::://////://:::::::::://///////:::::::--::////////:::-+mMMMMMh-
m `./ydNMMMMMMMNmhs+/::///////:::--:::::::/::///://:::::--:://////:::::-::::-:://////://::::::::://///////::::::::-:://///////::::::::::/:/://://:::::::::::/:/://///:::::::::///://///::::::::::://:://::/::::::-:::://///:/::::::::-:::://::///::::-::::::///////:/::::::::-:::////////:::::::::::////////::::::::::::://////:/:::::::-:://///////::::::::::://///////::-:dMMMMMm/
m ./sdNMMMMMMMMNNdhs+//:::/:::-:::::://:::////:::::::::///////:/::-:::::-::///:::://::::::::://///////::::::::-:://///////::-:::::://:/:////::::::-:::://:/:////::::::-:::://::////::-:::::::://:://::/::::::-:::////////::::::::-:::/:://////::--:::::////////:/::::::::::://///////:::::::-:://///////::::::::::::///////:/::-:::::://:///////:::::::::::////////::-:yMMMMMNo`
m `:ohmNMMMMMMMMMNmhs+//::::::-:::////:/://:::::--:://////://::-:::::::://///////:::::::::/:::////:::::-::-:::/:///://:::-:::-::////::://::-:::::::://///:://::::::-::////::://::--::::-:://////://:::-:-:-:://///////::::::::-::://///////::::::-:://////////:-:::::::://////////:::--:-::////:::::/::-::-:::::::////////:-:::::::/:://::///:::::::::://::////:/:-+mMMMMMh`
m `/shmNMMMMMMMMMNdyo/:--:--::////////:::::::::://///////:::::::-:://///////::::::::://:://///:::::-:::::///://://::--:::::/::///://::::::::::://////::/::::::::::////:::/:::::::::::://///////:::-:::::://///////::::::::::://///////::::::::://://////::::::::-::://///////:::::::::://::::://::::::::-:://////////:::::::::://:::////::::::--:://:///:///:-/dMMMMMN-
m `.-+sdNMMMMMMMMNmhs+::-://://////::::::::://///////::::::::::://///////::-::::::/://////:::-::::::::///:////:::-::-:::/:://:://::-:::::::://::/:://::-:::::://///:::/::::::::-:://///////:::-::::::::///////:::::::-::://///////:::-::::::/:://////:::::-::-:://////////:::::::::://:::::::::-::-::-:://///////:::::::::://///:///::::-:::::://:://////::yNMMMMMo
m `-+hmNMMMMMMMMNmhyo+//::////::-::::::/:://////:::::::-:::////////::::::-:::/:///://:::::::::::////::///:::::::::://:/::://::-::::-::://///://:::-::::::///////:/::-:::::::://///////::--::::::////////:::-:::::::////::////::::::::::/:://////::-:::::-:://////://::::::::://:///////:::::::::::/:/://://::::::-:::///:/:://:::::::::::////:://:/:-oNMMMMMy.
m `:ohmMMMMMMMMMMNmyo+////::::::::::://////::::::::-::::///////:::::::::///://://::::::::-::///:/:://:::::-::://///:://:::-:::--:://////://:::-:::::://///////::-::::::::/://////:::::::::://///////:::::::::::///::://:::::::-::://:://:://::-:::-::://::/::/:/::::::::://://////::::::::::::///://:/:::--:--::://::::://::::::::::://::/:/://-/dMMMMMm:
m ./sdNMMMMMMMMMMmhs+/:::---::/:///:/:/:::::::::::/://////:::::::::://///////::::::::-://:/:////:::-:::::://///::/::::::::-::://///////::::::::://///////::-::::-::://://////::::::::://:://////::::::::::////::///:::::::-::///:://://::::::::::://:::::/:::::::::::/:///:///:::::::::::///////:/:::-::--:://:::/::/::::::::::://///:///::-sNMMMMNo`
m `:ohmNMMMMMMMMMNho/::-:://///:::::::::-:::://///////::::::::://///////::-::::::-://:/:/://::::::-::://///://::::::::-:://///////::-:::::://::://///::-::::-:::/:://////::::::::://:://////::-::::::://///:://::::::::::/://::///:::::::::::::/:::://:::-::-::://:///://::::::::::://:///////::::::-::://:///://::-::::::://:///////:-+NMMMMMh.
m `-ohNMMMMMMMMMNdho++/:///////::::::::::///://://::::::::://:///::/::-::::-:::///://://::::::::://///////::::::::::////////:/::-::::::/::::////::-::::-::://::////:::-:::::://////////:--::::::::/:///:://::-:::-:://:///////:::-:::-::::://:////::::::-:://////////::-:::::::://////://::-:::--:://////://::::::::-:////:://:/:-:hMMMMMm:
m `./smNMMMMMMMMMMNdhs+////::-::::::://:/:////::-:::::::/://://::::-:::::::://:://:/::-:::::://////////::::::::::////////:::::::::::/:://////::-::::-::://::////:::-:::::://://////::--::::::://:/://:/:::::::::://:/:///::::::::-::://://////:::::::::://////:/:::::::::-:::///:////::::::::::///////://:--:-:::::////::///:::sNMMMMMs
m `-/sdNMMMMMMMMMMMmhs+/:--:-:::://:///://::-:::::://://:///:::::::::::///::////::-:::-:://///////::-:::::::://///////::-:::::://:///////:--:::::::/:/::////::::::::://:///////::-::::::::/::/://:/:::::::::////::://:::-::::-::///:///://:::::::::///////:/:::-::-::-:////::///:::::--::://///////::::::::-::////::://:/:sNMMMMMd`
m `-/ymNMMMMMMMMMMNmdyo/::-://://:////::::::::://///:://:::::::::://///////::--:::-::/:///////::::::::::://://///::::::::::///://:/:::::::::::///:::/:/:::::::::://:/:///:::::::::::://:/:////::-::::::///////://::::::::::://////://:::::::::://///////::::::::::://///////:::::::::://///////:::::::-::://///:////:+mMMMMMm-