MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMXKKKKKKXXXXXXXXXXXXXXXXX
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM0ddddddddxxxxxxxxxxxxxdddddoooooooooooooooooooooooo
MMMMMMMMMMMMMMMMMMMMMMMMX00000000000000000000000000000xoooooooooooooodddddddddddddddddddddddddddddddddddd
MMMMMMMMMMMMMMMMMMMMMMMM0ooooooollllllllllllllllllllllllllllllllllllloxxxxxxxxxxxxdxxxddddddddddddddddxxx
MMMMMMMMMMMMMMMMMMMMMMMMOoooooooooooollloollllllllllllllllllllllooxdodxxkkO0dxxxxxxxxxxxxxxxdxxddddxxxxxx
MMMMMMMMMMMMMMMMMMMMMMMMOooooooooooooooooooooooooooooooooooooooookOO00KK0000coxkkdkkkxxxxxxxxxddoccddxddx
MMMMMMMMMMMMMMMMMMMMMMMM0ooooooooooooooooooooooooddddddddddddddddoc:::llccc:;llxOlkkkkkkkkkxxdxxo;.:l:;;o
MMMMMMMMMMMMMMMMMMMMMMMM0ooooooooodddddddddddddxxxxxxxxxxxxxddoooc;llodxc.''.',oO:kOkkOkkkkkkkxOOkxOk;:xO
MMMMMMMMMMMMMMMMMMMMMMMM0dddddddodddddddxxxxxxkxxdodddoodddooxkddxkxxxkxddxkkkd:0;xOOOkxkkkOkx,;..'cd;;od
MWXXXXXXXXXXXXKXKKKKKKKKkdddddddddddxdooddodooooxkdxkxxlooccoll:;:;;;,,,'....,;,O:xOOOkoxkkOkkl:,,':oc;,'
MNooooollllllllllllllllllllloooollcooddddoll:;,,cc:;,,'.         ....,'..,.'co:,k:kOOOOdoloxkd:;;ccc,,o;:
MNoooooooollllllllllllloolllcllldx,:lc:;'... ......',;:cclloloooooolc:, .. codo.lcxOOO0xoxxkdd;:llol,'c;:
MNoooooooooooooooodollclocldkOxoo:......,:clloooddoollc::;;;,,,'''.........cdol'ldokOOkdodcldOl,;.',.':..
MNooooooloooodooloolxxkxl;,,'.. .';cloool:;,,''''''''',,,,;;::::ccllldkdcoOxll.,o:;kOOxdll''lO:...''.::''
MNoooollllllddxkO0Oc,'.  ..,:cloolc;,,''..',;:clooddxxxxxxxxxxxxxxxxxxOOO00Ol: .  .xkxdc:: 'dOc'..'''ll..
MNooooooooldkdc:'.....,:lolc:,,''.'',;:cloddddddddddddddddddddddddddxxOO0000lc.      .;;;;.;ccllddc,'ol,.
MNddooooool::c'......''''..',;::cldddddddddooooodddddddddddddddddddxxxO00000O,       .lck:.:locc;;loocoo:
MNodddxkkxdOK0,:;.''.,;:clooooooooodooooooooooooddddddddddddddddddxxxxO000000x: '    .:;,, .ld;:.....,:dl
MNdxxxxkkkdOKd:xxO0k,oooodddddooooooooooooooooodxdddddddxxxxxxxxxxxxxk0000KKKKl...  ..;dOd';d0co',;;;;,o,
MNddddxxxxxKX;oxdOKO;ddddddxxxddddddddddddddddddxxxxxxxxxxxxkkkdxkkkkOKKKKXXXXo,..... .;:l;;docdlodlcolkc
MWdddxxxxdxKx;xxxOXO;dddddxxdddddddddddddddddddxxkkkkkkkkkkkkkkc'lddddkOOOOOOkl;'....'':ldcdlcldcl:coolkc
WNxkkkkkkx0XclxkkOX0:xxxxxxxxkkkkkkkkkkkkkxxxxxkOOOOOOOOOO000000c.'oOOKXXXXXXXoKx..   .,cc,kdccl,:clcclx,
KKKKKKXKK0NNcO00KXWXo0KKKKKKXXXXXXXXXXXXXXXXXKkO0000000KKKKKKKKKKO:.:kNWWWWWWWxN0,.....,oocxcooo,;:::;,k,
KKKKXXXKKON0:oxxk0WXoKKKXXXNNNNNNXXXXXNNNNNNWNKXNNNNXXKK0KKKKK0Okxdc.,oOKWWWNNxK0c,,'';clocxcdddc;;lclcko
KKKKKKXXKKWxoxdll:;;lXXXXNNNNNNNNNNNNNNXXXXKKKKKK0Oxcllox000KK0xxoccc:,';:d0XXxKOko;,...':ox:clo;::c:cldc
XXXXXXXX00WoOXXNNNOKoNWWWWWWWWWKKXKKKK0KKKKKKKKK0K0kooodOKKKKK0kxdlcccdl;',xKXxxdxd;'...';od;l:c  .....,,
XXXXNNNNXXXcNWWWWWWWdNMWMMMMMMMXKXKKKKKKKKKKKKKKKKKkdodxO0000Oxxxdlcccodo'.':dd:kxod:cocclxollll.......',
XXNNNNWWXNOdWMMMMMWWxXMMMMMMWWWXKKKKKKKKK000000OdkOxoodxxxxxxxd:c::,;coxo,'..,d,:c;;;cccccccc:,l':;'...,:
NNNWWWWWKXdOMMMMMMWNxXWWMMMMMMMXKKXKKKKKKKKKoc;,..cddxkK0KXKKKOc:;;,;cdko,'...d,,',lc::c;oc::c,;......',c
c:,:,ldXOXl0MMMMMMMNkKNWMMMMMMMXXXNXXXXKKKKK,.    :ddx0KKKKXXX0loll::ldOkd:cddodol:lc;;;;oc;;:,.     . .,
   '...,:d::cloocldxodoxOKMMMMW0OKNXK0XKKKK0:...  :dxk0KKKKKKX0lollc:coll:c;,,c,:,;lllcockdlldc'.......,:
  .ooool.''........','';,,cokKdc,x0KX0XKKKK0c';:;:cloxOOO00000Oxkkooolcco;cl;.:.''.:olcl:kddcoc... ..',':
   ...''.....................''''';codxkkkkkxkOOkkccldkOO0000OOc,lcc:;,',','..;.''':co:l:xdlco:.........,
      .;,''';:;,l;''.'........  .'',,;;::ccllllllc::codooddxkkxl,o,c:,. '.'...,..' ,;:','lc,',;........':
...  ..;xo',ldolWxcdo,,:,;::;c..odlcc::;;;;;;;;;;;;;::::::,;;coocc..,;;.:;'. ....' ...,.'.,'.''........';
.....'.,c;..,;,;o:,lc.''.....:c:loololc;,',:;,............      ..  ... ...         ...................,'
,........    ..  . .                                 .                               . ..... ....... . '.
.........                                            .                                 .    ..         ..
::::::::;;;;;,,,,'''''''''.    . ..                  .                                                 ..
MMMMMMMMMMMMMMMMMMMMMMMMMM:............................                 XNNNNNNNNNNNxlllllllllllcllllllol
MMMMMMMMMMMMMMMMMMMMMMMMMM:.............................................WMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMK,,,,,,;,,;;;;;;;;;;;;;;;;;;;;;;;;,,;;;;;;;;;;xMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMK,;;;;;;;;;;;;;;;;;;;lko;;;;;;;;;;;;;;;;;;;;;;xMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMK;;;;;;;;;;;;;;;;;;;;kXKc;;;;;;;;;;;;;;;;;;;;;xMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMX;;;;;;;;;;;;;;;;;;;:OK0o;;;;;;;;;;;;;;;;;;:::xMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMX;;::::::::;;;;;;::::xOxo;::::;;::::::::::::::kMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMX;;:::cc:::::::::::::dOxd:::::::::::::::::::::kMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMX;:::::::::cc::::::::xkkdc::::::::::::::::::::kMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMX::::::::cdo:cc:::::cxkxdc:::::cc:::::cc::cc::kMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMkxxxxxd::::::::ckd,:::::::;lodoc,;:::cc::::cccc:cccckMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMl::::::::::::::d0x;:::::::;dxxxo:;::::::::::::cccccckMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMl::::::::::::::xOx;::::::::dxxxdl::::::ccccccccccccckMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMocc::::::::::::dkd;;:::::::dxxxdo::ccccccccccccccccckMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
XXXXXXXXXXXXXXoccccccccccc:::dxd;;:::::::oxxxdoc:cccccccclllllllllOMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
ddddddddddddddlllllccllccccccxxd:;cccccccodxxdol:cllllllllllllllllOMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
dddddxxxxxdxxxollllllllllllllxdl:;cccclccoddddol::llllllllllllllloOMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
xxxxxxxxxxxxxxooooooooooooll:lol;':llllllodxxxdol:llloooolllllllooOMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
xxkkkkkkkkxxxxdooooooooooooolxxoc'cooooooodxxxdol:coooooooooooooooOMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
kxxxxkkxkkkkkkddxddddddooooooxdoc,:ooooooooloooc:;,coooooddooooooodkOOOkkOOOOOOOOOOOOXMMMMMMMMMMMMMMMMMMM
oooodlcllloxxOlloddddddddddddddol,;oooooo;:dddddol;,odddddddoooooooooooooooooooooooooKMMMMMMMMMMMMMMMMMMM
xOl0kO0OO00kkOkoddc;looxxxxxxxdol;,ddddddcddxdddol::ddddddxxddddddooooddddoooooooddddKMMMMMMMMMMMMMMMMMMM
oxcOxdkxxkkddxxcldl.ccdkkkkkxxxoo;'oddddddodddddolc;oxxxxxxxddxxxxdddddddddddddddddddKMMMMMMMMMMMMMMMMMMM
,;;:o.c,';:,:,d.....ooxkkxOXkxxdo:,lxxxxxxodddddoolccxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxXMMMMMMMMMMMMMMMMMMM
lc;cdcoo:cxclld,,l;'lccoodd0koddc:;ckkkkkkoddddddolc;dxxxxxxkkkkkkkkxxkkkkkkkkkkkkkkkXMMMMMMMMMMMMMMMMMMM
::c::,,c',o;cl,;;c:co;;;:llxdc;lccdkxkkkkkdddxxdddolclkkkxxxxxxxxxkkkkkkkkkkkkkkkkOOOXMMMMMMMMMMMMMMMMMMM
...,'..:..,',..,;:... ...,'co:,:.:lokkkkkkdddxxxddooc:xkkkkkkxxxxkkkkkkkkkkkkkkkkkkkOOOOOk0000000000OOKMM
,;'.''':....'',,':;..... ,;'.'x;:lolkO0xdxOdxdxxxxddlco00OOOOkkkkkkkkkOOOOOOOOOOOOOdc;'...'',,lkOOOOOk0MM
';,,,'.c'...'''..,...'c;;:c'..o. .'.;xcd;lxxxdOxxxddolc0K000OOOOOOOOOOOOO0000000ko'............';okOOk0MM
.   ,..,,  ......;;'.'dc;:l:'.l;''l'cO,o':coxxOxxxdddocxK000000000000000000000x'..................oOOOKMM
,';:...:o'::';,''cc'''o:..c;;:xxloKddOckcloxdoxdodddoollKKKKKKKKK0KKKKK000000d....................;kOOKMM
o:cc:;c;o,.......,;   l:,,c'.'od:l::,xok,';ldodl,ooollc:kXXKKKKKKKKKKKKKKK0k,...  ..  .............,l0KMM
;:c;.llcx:...,...,; ..::',l.;cld  .l,ld::';':,'c.';:;::;;0XXXXXXXXKKKKKKKKc.     ...   ....  .......'oKMM
:;:lokdlkxol:c,,':c...c:.'l,lold...:,lOdook,c..c,,:cclol:cKKXXXXXXXXXXXXKc... .....    . ..    ......'OMM
dlc,''..cc'.;:.' ;d.'.cc':dllolx,::d,dOx0kKlll;cl'lollooldXKKKKKKKKKKKKKx.:...  ..                '.:OXMM
;coc;,;:ll.'c;...c0...cl;:dd:olOlloOddKOX0NOlO:cx,oxxdxxxxXXXXXXXXXXXXXXKl.                      ...:0XMM
,,;:oo:;;o.'',;;,lc  .co:ld:':;k;.;lol0kK0Kkx0ook;lxkxOOkd0NXNNNNNNNNNNXc        .         .  .....',lXWN
lcccclolok;,;;cc:od;,;do,;lxxdxdc;ldc:0OKo0kdxdxKkNMMMMMWMWWWWNWWWWWWWWd.. .. .  ..  .  .   '.... .,:dXKK
:;',,:o:;xc:,;:::oxlclxo;:ldOxdkllokldOxOlcclkKk0odWMMMMWMNWMMWWWWWWWWX'..',.... ..         .....   c00XN
.'''..c. : ...   ::  .;:,,:::cloo:cldlxk0lodk0N0Kkd0MMMMWXOOMMWMMWWWWWx. .'..'    .       ....:,...:KXNWW
..:'''l,.:.......,;....''';:.;.:;,..c'ldkdddk0OOKdxkKKOkklcd0KXWWWWWMWxco,''.             :;..;0c.  lWWWW
''c,,':;.;;.''...',....,,:c:';,::',':':o;;...ldd0OOXkOOkk;,:::kKKKKXMMMMWX0'..'.         ,;;ll'dO'.cXWWWN
..:...';..c.......'....'':c:;;,';...;;;o;:.;,o:dxX0N0KOKNKocodkKNNWNNNNXNWN:            .;.,:o:x0'.:kNNNN
. :....,. c..    ..     ...;','';....;ldl0dllxod0dlxdxxx0NOkxxkkNNNXXNXXXWNd  .          .cc.;okX. lNNNNN
..d;'':c,;x;.....c;........:..''c,',,,locl',:xclcx'';cdxkK0xolxo0KKKNWWNXWW0;....       .dNO:;XNNkxNNNNNN
,'lc,:cl:co:l. .';.   . ..'c..,.l. .,.,l;l'ckKOkk0,'c0KOOdlkkdko0XXXNNXNKNNNNKlo.     ',;kXXXKKOkd0000000
..:;..;:''c'.....',..''','';.';,o,;',,,o,l.:xOxddklo,clkllllookxO0KOOxxkxxdodddc',. . ,:lx0O0d,,,';;:ccc:
..,,..':''c,...'..'.......,'.';,dc,;c;,c.l,;llc.,:cc..,:;'...';;;;;'........'''''.. . ......        .....
'','..',;,;'.....     ...       .....  ...                  ...                                          
.............                                           .  ... ..                 .                      
. . ........                                                                     .. .                    
 ...........             .....'.............................              ...............................
....................    .KMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM:        ...............',,''.................
lllllllolllllllllllllccclNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMKOOOOO0000000000000000000000000000000000000000
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM