MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
WWWMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMWWWMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMMWWMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWMMMMMMMMMMMWWWMMMMMMMMMMMWMMMMMMMMMMMWWWMMMMWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMx#########xMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMWWMMMMWWWMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMWWWMMMMWWWMnn#**i,::::,:::::::::,:i*+nnMWWMMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMWWWMMMMWWMMMMMWWMMMMWWWM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMMMxz*i;:,,,::::::::::::::::::::::::iizzMMMMMWMMMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWWMz+::,,,::::::::::::::::::::::::::::::::::;+zxMMMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMzi:::,,,,:::::::::::,,,,,,,,,:::::::::::::::::::i#nWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMx+:::::::::::::::,,,,,,,,,,,,,,::,,:::::::::::,:::::::;+nMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMx#;::,:::::::::::::::::,,,,,,,,,:::,:,:::::::::::::::::::::i#xWWMMMMWWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMn;:::::::::::::::::::,,,,,,,,,,,,:::,,,:::::::::::::::::::::::;*xMWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM#::::::::::::::::::::,,,,,,,,,,,,,:::,,,:::::::::::::::::::::::::;*xWMMMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMz::::::::::::::::::::,,,,,,,,,,,,,::::,::::::::::::::::::::::::::;;;;#MMMMMMWMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMz:::::::::::::::::::::,,,,,,,,,,,,,::::,:::::::::::::::::::::::::::;;;;*nMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
WWWMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMz::::::::::::::::::::,,,,,,,,,,,,,,,:::::::::::::::::::::::::::::::::::::;nWMMMMWWMMMMMWWMMMMWWWMMMMWWMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMMx;:::::::::::::::::::,,,,,,,,,,,,,,,,,::::::::::::::::::::::::::::::::::::::nMMMMWWMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMWMMM*::::::::::::::::::::,,,,,,,,,,,,,,,,,:::::::::::::::::::::::::::::::::::::::nMMMMWWMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWz::::::::::::::::::::,,,,,,,,,,,,,,,,,::::::::::::::::::::::::::::::::::,,,,:::nWMMMMWMWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM;:::::::::::::::::::,,,,,,,,,,,,,,,,,,:::::::::::::::::::::::::::::::::,,,,,,:::nMMMMMMWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM#:::::::::::::::::::,,,,,,,,,,,,,,,,,,,:::::::::::::::::::::::::::::::,,,,,,,,,,,;MMMMMMWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMWMMi:::::::::::::::::::,,,,,.......,,,,,,,:::::::::::::::::::::::::::::::,,,,,,,,,,,:+WWMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMWMn:::::::::::::::::::,,,,..........,,,,,,:::::::::::::::::::::::::::::,,,,,,,,,,,,,,:nWWMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMW+:;:::::::::::::::::,,,.............,,,,,::::::::::::::::::::::::::::,,,,,,,,,,,,,,,;MMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMM:::::::::::::::::::,,,...............,,,,,,,::::::::::,,,,,,,:::::::,,,,,,,,,,,,,,,,,+MMMMMMMMMMMMMMMMMMMMMMMMM
MMMMWWMMMMWWWMMMMWWMMMMMWWMMx:::::::::::::::::::,,.................,,,,,,::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:xWWWMMMMWWMMMMMWWMMMMWWWM
MMMMMMMMMMMMMMMMMMMMMMMMMMMM#::::::::::::::::::,,,...................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,+WWMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMM;::::::::::::::::::,,....................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,MMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMM;:::::::::::::::::,,,.....................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:,+MMMWWMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMn::::::::::::::::::,,............```........,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,:;+WWWWWMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMM@@@@@*:::::::::::::::::,,,......```````````.........,,,,,,,,,,,,......,,,,,,,,,,,,,,,,,,,,,,:M#####@MMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMM@####@::::::::::::::::::,,,.....``````````````..........,,.,.,...........,,,,,,,,,,,,,,,,,,,,:W####@MWMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMW#@@#@x::::::::::::::::::,,,.....``````````````..............................,,,,,,,,,,,,,,,,.,W@##@@@@@MMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMW@#xx@W#::::::::::::::::::,,,....```````````````..............................,,,,,,,,,,,,,,,.,,nMW@Mx@#@WWMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMM##MM@W;::::::::::::::::::,,,,...```````````````................................,,,,,,,,,,,,,.,,*nW@xnW##WMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMM####@x:::::::::::::::::::,,,,....``````````````..................................,,,,,,,,,,,.,,*W@#@W@##WMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMM@####n:::::::::::::::::::::,,,....```````````.....................................,,,,,,,,,,.,,:#@#WM@##WMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMWW#@@*::::::::::::::::::::::,,,....................................................,,,,,,,,..,,,M#@xnW##MMMMMMMMMMMMMMMM
MMMMWWMMMMWWWMMMMWWMMx@#@i:::::::::::::::::::::::,,,,,,,................................................,,,,,,,,.,,,#@@WM@#@WMMMMMWWMMMMWWWM
MMMMMMMMMMMMMMMMMMMMMMMWM:::::::::;;;;;;:::;;;:::::::::::::::,,,,,,.....................................,,,,,,,,.,.,;@@###@WWWMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMn::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::,,,...................................,,,,,,,....,x@##@MMWMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMM+::::::;;;iii;;;;;;iiiiiiiiiiiiiiiiiiii;;;;;:,,,........,.,,,,,,,,,,,,,...........,,,,,,....,:z#MWMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMWWM+:;;;;;ii****ii;;iiiiiiiiiiiiiiiiiiiiiiiiiii;;::,,,,,.,,,,,,,,,,,,,,,,,,,,,,,,....,,,,,,,,..,,,,+WMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMWWWM+;;;ii**+*+****ii*****iiiiiiiiiiiiiiiiiiiiiiiii;;::,,,,,,,,,,::::::::::::,,:,,,,,,,,,,,......,,.+WMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMM#;**+++++++++++*****iiiiiiiiiiiiiiiiiiiiiiiiiiiiiii;;::::::;;;;;;;;;;;;;;;;;::::,,,,,,,,......,.+MMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMM#*++++++++##nnzz++*iiiiiiiiiiiii********i*iiiiiiiiiiiii;;;;iiii**********iiiii;;:::,,,,,........*MMWWMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMx+++++++##x@####@@@@@MxnnzzznxxxMWWWWWWMMMxnz#++*****++#zzznnnxxnnnzz###+++****ii;;::,,,,.......*MMWWMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMn*++++##zW@WMxxxMMMMMMMMMMMWMMMMWMMMMMWWW@WWWWWWMMMMMWMMMMMMMMMMMMMxnnzz##+++***iii;:,,,.......+MMMMMMMMMMMMMMMMMMM
WWWMMMMWWMMMMMWWMMMMWWMMMz;++++##xM#++#####zzzznnnnxxxxxxxxxMxxxxnxMxMxMxxxxxnnxnnnzznzzzznxWMMxnnz#++++***iii:,,,.....,+MMMMMWWWMMMMWWMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMx;i*+#z#+ii******+++++++###z#zzzzzzzzzzzzzzzzz##########+++++++****+zxxMxnzz#+++*****i,,,......xWMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMWMMMMMi;;*nMz;;;;;;i;iiiiiii*****++++++#####+#+++*******iiiiiiiiiii;;;::;i*#xxxxnz#++*++++*;,,....,,MWMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMWWi;;inMi;;;:;:::;;;;;;;;;;iiiiiiiiiiiiii;;;;:;::::::::::::::::::,,,,::;i+zxxnnz######+i,,...,,iMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMWWi;;;*+;;;;:::::::::;;::::;;:::::::::::::,,,,,,,,,,,,,,,,,,,,,,,...,,,,:;;i#zxxxxxxxn+;,,..,,,#MMMMWWMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMWW#;;;;;;;;;;:::::::::::::;:::::,,,,,,,,,..,,..,,.....................,,,,::;;*zxxxMWn*,.,..,,,nMMMMWWMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMM#;;;;;;;;;;;;:::::::::::::::::,,,.................................,,,.,,,,:::;izMWWz;..,.,,.:MMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMWMMM#;;;;;;;;;ii;;;:::::::::::::::,,,...........,,,...................,,,,,,,,,,,:::*#*:..,,,,.,*MWWMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMWMMM#;;;;;;;iiiii;;;;::::;::::::::::,,,...,,,,,,,,,,,,,,,,.....,,,,,,,,,,,,,,,,,,,,,,,,..,,,..,.nMWWMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMM;;;;;iiiiiiiii;;;;;;;;;;;;;;;::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,....,,.,,:MMMMMMMMMMMMMMMMMMMMMM
MMMMWWMMMMWWWMMMMWWMMMMMWWM;;i;;iiii***iiiii;;;;;;;;;;;;;;;:::,:::,,,,,,,:,,,,,,,,,:::,,,,,,,,,,,,,,,,,,,,,,,,.,....,*WMMMMWWMMMMMWWMMMMWWWM
MMMMMMMMMMMMMMMMMMMMMMMMMMM:;i;;iiii*****iiiiiiiii;;;;;;;;;;;:::::::,:::::::::::::::::::,,,,,,,,,,,,,,,,,,,,.,,.,,,,,zMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMM*;;;;iii*********iiiiiiiiiii;;;;;;;;:::::::::::::::::::;;::::::,,,,,,,,,,,,,,,,,,,....,,,,nWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMM+;;;;ii************iiiiiiiiiiiiiiii;;:::::::::::;;;;;;;;;;;::::::,,,,,,,,,:,,,,,,.....,,,:MMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMM*;;;;;i***************iiiiiiiiiiiii;;;::::;;;;;;;;;;;;;;;;;;:::::::::,,,,,,,,,,,,.,.,..,,:MMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMM+;;;;;i*****************iiiiiiiiiiii;;;;::;;;;;;;;;;;;;;;;;;;;;:::::::::::,,,,,,,,.,...,.+MMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMn;;;;;ii********************iiiiiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::,,,,,,,,.....,,zMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMn;;;;;ii*++*+********************iiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;:::;:::::,,,,,,,.......,WWWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMn;;;;;iii*+++********************iiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::,,,,,,,......,,WMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMi;;;;;ii**+++++******************iiiii;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::,,,,,......,iMMMMMMMMMMMMMMMMMMMMMMMM
WWWMMMMWWMMMMMWWMMMMWWWMMMMWi;;;;;ii**++++++++**************iiiiiii;;;;;;;;;;;;;;;;;;i;iii;;;;;;;;:::::,,,,,.....,.*MMMMWWMMMMWWWMMMMWWMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMWi;;;;;iii**++++++++**************iiiiiiiii;;;;;;;;;iiiiiiiiiii;i;;;;;::::::,,,........,zMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMW+;;;;;;;i**+++++++++++**********iiiiiiiiiiiii;;iiiiiiiiiiiiiiiiii;;;;:::::,,,,.......,.xMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMM#;;;;;;;ii*+++++++++++*+*********iiiiiiiiiiiiii;iiiiiiiiiiiiiiii;;;;;;;:::,,,,........,xMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMz:;;;;;;;ii**++++++++************iiiiiiiiiiiiii;iiiiiiiiiiiiiii;;;;;;;;::,,,..........;MMMWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMz:;;;;;;;iii**++++++++***********iiiiiiiiiiiiiiiiiiiiiiiiiiiiii;;;;;;;:::,,..........,;MMMWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMM;;;;;;;;;iii**++++++++***********iiiiiiiiiiiiiiiiiiiiiiiiiiiii;;;;;;::,,,,..........,;MMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMW:;;;;;;;;iiii***+++++++***********iiiiiiiiiiiiiiiiiiiiiiiiiiiiii;;;::,,,,............#MMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMW:;;;;;;;;;;iiii**++++++++*********iiiiiiiiiiiiiiiiiiiiiiiiiiiii;;::,,,,.............,zMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMW:;;::::;;;;;;iiii**+++++++**********iiiiiiiiiiiiiiiiiiiiiiiiii;;::,,,,,,.............zMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMWWMMMMWWWMMMMWWMMMMMWWMMMi;;::::;;;;;;;;iii**+++++++***********iiiiiiiiiiiiiiiiiiiiii;;;:::,,,,..............,MMWWMMMMMWWMMMMMWWMMMMWWWM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMM+;;::::::;;;;;;;;iii**++++++************iiiiiiiiiiiiiiiiiii;;:::,,,,,...............,MMMWMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMM+:;:::::::;::;;;;;;iii**++++++********i*iiiiiiiiiiiiiiiii;;;:::,,,,,,...............:MMMWMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMW+:;:::::::::::;;;;;;;iii***+++++*********ii**i*ii***iiii;;:::,,,,,,,,...............:MMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMWW+:::::::::::::::::;;;;;iii**+++++++**************i*iii;;;:::,:,,,,,.,...............+WMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMWM+:::::::::::::::::::;;;;;iii***+++++************iiii;;;::::,,,,,,,..................+MWMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMn:;:::::::::::::::::::::;;;;iii*****+*********iiii;;;:::::,,,,,.....................+MMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMx::::::::::::::::,,,,:::::;;;;;iiii*********iii;;;;::::,,,,........................,+MMWMWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMx:::::::::::::,,,,,,,,,,::::::;;;;;iiiiiiiii;;;;:::::,,,,,.........................,xMMWMWMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMx:::::::::::::,,,,,,,,,,,,,:,:::::::;;;;;;::::::,,,,,,.,............................MMMMMMMMMMMMMMMMMMMMMMMMMMM
WWWMMMMWWMMMMMWWMMMMWWWMMMMMWx::::::::::::,,,,,,,,,,,,,,,,,,,,:::::::::::,,,,,,,.................................MMWMMMMWWMMMMWWWMMMMWWMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMx:;::::::::::,,,,,,,,,,,,,.,,,,,,,,,,,,,,,,,,,,,,...................................MMWMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMx:::::::::::,,,,,,,.........,,,,,,,,,,,,,.,,,...,..................................:MWMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMx:;:::::::::,,,,.............,.,,.......,..........................................iMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMx;::::::::::,,,,,..................................................................iMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::::,,,,,...................................................................iMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi::::::::::,,,,...................................................................iMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMWMMi:::::::::,,,,,...................................................................iMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi::::::::,,,,,,................................................`..................#MMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::::,,,,,..............................................`````................nMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMWWMMMMWWWMMMMWWMMMMMWWMMMM*:::::::,:,,,,,...............................................````................nMMMWWWMMMMWWMMMMMWWMMMMWWWM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*:::::::::,,,,..............................................``.```................nMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::::,,,...........................................`...``````................nMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi:::::::::,,,...........................................``...``````...............nMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi::::::::,,,,,...........................................`.````````...............nMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi::::::::,,,,,..........................................```````````..............,zMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*:::::::::,,,...........................................``````````..............,:MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*::::::::,,,,...........................................```````````..............;MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*::::::::,,,,.....................................`````````````````.............,:MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi::::::::,,,,......................................```````.`.``````.............,:MMMMMMMMMMMMMMMMMMMMMMMMMMMM
WWWMMMMWWMMMMMWWMMMMWWWMMMMWMWi::::::::,,,......................................````````..```````..............:MWWMMMMMWWMMMMWWWMMMMWWMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::::,,.....................................````````````.````...............:MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi::::::::,,,,..............................`.``.```````````````````.`...........,;MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi::::::::,,,.................................`..`````````.`..````````...........,;MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi::::::::,,,,..............................`....`````.```..````````.`...........,:MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*::::::::,,,...............................````````````.`.```````````...........,:MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi::::::::,,,...............................````.``..````.``..`````.`............,iMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi::::::::,,,,...............................`...`..`.`````.````````.............,#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi:::::::,,,,,.................```..``.`..`.```````.`.``.``````````...............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,...................```````.```.````````.`````````````````............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMWWMMMMWWWMMMMWWMMMMMWWMMMM*:::::::,,,,..................```.`````..``````````````.`````````````............#MMMMWWWMMMMWWMMMMMWWMMMMWWWM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*:::::::,,,,,..................`````...``.`````.```..``.`````````````............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,..................```````.```.```..```.``````````````````............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi:::::::,,,,....................`.`.```..`````.``.```````````````````............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,..................`````..`.`.`.``````````````````````````............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi::::::::,,,............````...``````````````..``````````````````````............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,............`.````.```````````.``.`````````````````````.`...........,#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,.............``....````````````````..```````````````````.............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,..............`.`.``.`.``````.`.````````````````````````.............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,.........``..````.```````````````.```````````````````````............#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
WWWMMMMWWMMMMMWWMMMMWWWMMMMWMWi:::::::,,,,..........`.`.``.````````````````````````````````````````............#MWWMMMMMWWMMMMWWWMMMMWWMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,.........```.``````````````````````````````````````````.`...........,#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,.........``..``..`.`.```````````````````````````````````............,#MMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi::::::::,,,.........````````````````````````````````````````````````..........,.nMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,.........```.``````.```````````````````````````````````..............WMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM*:::::::,,,,.........`````.``..``````````````````````````````````````............WMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,,..........`..````````````````````````````````````````````............MMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi:::::::,,,,..........```.```````````````````````````````````````````............MMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMWi:::::::,,,..........``..````````````````````````````````````````````............MMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMi:::::::,,,..........```.````````````````````````````````````````````...........,MMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMWWMMMMWWWMMMMWWMMMMMWWMMMx;:::::::,,,..........```.````````````````````````````````````````````............MMMMMWWWMMMMWWMMMMMWWMMMMWWWM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMx::::::::,,,,.........``..````````````````````````````````````````````............MMMMMMMMMMMMMMMMMMMMMMMMMMMMM