KKKKKKKKEEEEEEEEEEEEKKKKKEEEEEEEEEKKKKKEEEEEEKKKEEEEG,::::::::::::::::::::::::::::,iiiii;:::::i::::::::::::::;;;;t::::::::i::::::::::::::::::::::::::::::::,t;j:::::::::::::::::::::::::::::::::::::::::,,,i,,,,,,,,,,,:..,,,,,,,,t,,,,,,,,j,,,,,,,,,,,,,,
KKKKKKKKEEEEEEEEEEEEEKKKKKKEEEEEEEEKKKKKKEEEEEKKKKEEj:::::::::::::::::::::::::::::iiiiit::::::,::::::::::::::;;;;i::::::::;::::::::::::::::::::::::::::::::,t;t::::::::::::::::::::::::::::::::::::,,:::,,,i,,,,,,,,,,,:..,,,,,,,,i,,,,,,,,;,,,,,,,,,,,,,,
KKKKKKKKEEEEEEEEEEEEEEEKKKKKKEEEEEEEEKKKKKKKEEEEEEED,::::::::::::::::::::::::::::,iiiiii:::::,:::::::::::::,t;;;;;::::::::,::::::::::::::::::::::::::::::::,;;;,:::::::::::::::::::::::::::::::::::,,:::,,,,,,,,,,,,,,,,..:,,,,,,,,,,,,,,,,,i,,,,,,,,,,,,,
KKKKKKKKKEEEEEEEEEEEEEEEEEKKKKKEEEEEEEKKKKKKKKEEEEEf,::::::::::::::::::::::::::::iiiiii,:::::;:::::::::::::i;;;;;,:::::::,:::::::::::::::::::::::::::::::::t;;;,:::::::::::::::::::::::::::::::::::::,,,,,,,,,,,,,,,,,,,:.:,,,,,,,,t,,,,,,,,t,,,,,,,,,,,,,
KKKKKKKKKEEEEEEEEEEEEEEEEEEEKEKKEEEEEEEEKKKKKKKEEED,::::::::::::::::::::::::::::;iiiiit:::::,:::::::::::::,;;;;;i,:::::::;:::::::::::::::::::::::::::::::::t;;;t::::::::::::::::::::::::::::::::::,,,,,,,,,,,,,,,,,,,,,,,::,,,,,,,,i,,,,,,,,,,,,,,,,,,,,,,
KKKKKKKKKKKEEEEEEEEEEEEEEEEEEEEEKKKEEEEEEEKKKKKKEEf,:::::::::::::::::::::::::::,iiiiii::::::i::::::::::::,i;;;;;i,:::::::i::::::::::::::::::::::::::,:::::,;;;;t:::::::::::::::::::::::::::::::::::::,,,,,,,i,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;,,,,,,,,,,,,
KKKKKKKKKKKKKEEEEEEEEEEEEEEEEEEEEEKKKKEEEEEEKKKKKE;::::::::::::::::::::::::::::;iiiiit,::::,,::::::::::::t;;;;;;t::::::::i::::::::::::::::::::::::::::::::i;;;;i::::::::::::::::::::::::::::::::::::::::,,,,i,,,,,,,,,,,,,,,,,,,,,,,i,,,,,,,,j,,,,,,,,,,,,
KKKKKEEKEKKKKKEEEEEEEEEEEEEEEEEEEEEEKKKKEEEEEEKEEG,::::::::::::::::::::::::::::iiiiii,:::::;::::::::::::;;;;;::;t::::::::;:::::::::::::::::::::::::,::::::t;;;;;;:::::::::::::::::::::::::::::::::::::::,i,,,,,,,,,,,,,,,,,,,,,,,,,,t,,,,,,,,;,,,,,,,,,,,,
KKKKEEEEEEEKKKKEEEEEEEEEEEEEEEEEKKEEEEKKKKEEEEEEEj,:::::::::::::::::::::::::::,iiiiij::::::i:::::::::::,;;;;,.:;t::::::::,:::::::::::::::::::::::::,::::::;;;;;;j::::::::;::::::::::::::::::::::::::::::,i,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,i,,,,,,,,,;,
KKKKKEEEEEEEEEKKKEEEEEEEEEEEEEEEEEKKKEEEEKKKKEEED,::::::::::::::::::::::::::::;iiiii,::::::,:::::::::::i;;,:...;t::::::::,:::::::::::::::::::::::::;:::::,;;;;;;t::::::::;:::::::::::::::::::::::::::::::,,,,;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,j,,,,,,;,;;t
EKKKKKKKEEEEEEEEKKEEEEEEEEEEEEEEEEEKKKEEEKKKKKEEL,:::::::::::::::::::::::::::,iiiiit::::::;:::::::::::,;;;,....;t:::::::,,::::,::::::::::::::::::::i:::::i;;;;;;;,:::::::,,::::::::::::::::::::::::::::::,,,,i,,,,,,,,,,,,,,,,,,,,,,,;,,,,,,,,i,,,,,,,iLDD
EKKKKKKKKEEEEEEEEEKKEEEEEEEEEEEEEEEEKKKKKKKKKKEEi::::::::::::::::::::::::::::;iiiii;::::::i:::::::::::t;;,.....;t:::::::,::::,i:::::,::::::::::::::t:::::t;;;;;;;j:::::::,t::::::::::::::::::::::::::::::,i,,;,:,,,,:,,,,,,,,,,,,,,,,t,,,,,,,,,,,,,itLGDDD
KKEEKKKKKKEEEEEEEEEKKEEEEEEEEEEEEEEEEKKKKKKKEEED,::::::::::::::::::::::::::::iiiiit,::::::,::::::::::,;;,......,t:::::::;:::::,:::::,:::::::::,;:::i::::,i;;;;;;;t:::::::,j::::::::::::,;::::::::::::::::,i,,,,,,,,,:,,,,,,,,,,,,,,,,t,,,,,,,,,i,,,,,;ijLL
KKKKKKKKKKKKKEEEEEEEEEKEEEEEEEEEEEEEEEKKKKKKKEEL,:::::::::::::::::::::::::::;iiiiii::::::,:::::::::::;;,.......,t:::::::i,:::::i::::,::::::::;,,:::i::::,;;;,;;;;;,::::::,j,::::::::::::i,:::::::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,;,,,,,,,,,t,,,,,,,,,,
KKKKKKKKKKKKKKKEEEEEEEEKKEEEEEEEEEEEEEEEKKKKKEE;::::::::::::::::::::::::::::;iiiit,::::::;::::::::::t;,:.......:t:::::::t:::::::,:::,:::::::i,:::::;::::t;;,.,;;;;i::::::,it,:::::::::::,,::::::::::::::::,;:,i,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;,,,,,,,,,,
KKKKKKKKKKKKKKKKKKEEEEEEEEKEEEEEEEEEEEEEEKKKEEG,:::::::::::::::::::::::::::,iiiiit:::::::,:::::::::;;;,........:t::::::,t,::::::i:::,::::::,:::::::,::::t;;..:;;;;t:::::::,t,::::::::::::t,:::::::::::::::,t,:i:,,,,,,,,,,,,,,,,,,,,,,i,,,,,,,,,,,,,,,,,,,
KKKEKEEKKKKKKKKKKKKKKKKEEEEEKEEEEEEEEEEEEEKKKEf,:::::::::::::::::::::::::::;iiiii,:::::::::::::::::i;,..........t:::::::t;::::::;:::,::::::;::::::,,::::i;,...,;;;;,::::::,i;::::::::::::,::::::::::::::::,;,,,,,,,,,,,,,,,,,,,,,,,,,,j,,,,,,,,,i,,,,,,,,,
KKKKEEKKKKKKKKKKKKKKKKKKKKKEEEKEKEEEEEEEEEEEKE;::::::::::::::::::::::::::::iiiiij:::::::,:::::::::i;,...........t:::::::ti::::::,:::,:::::i::::::::,:::,;;:...:;;;;t::::::,tj,::::::::::::i:::::::::::::::,,,,,,,,:,,,,,,,,,,,,,,,,,,,t,,,,,,,,,j,,,,,,,,,
KKKKKEEEEKKKKKKKKKKKKKKKKKKKKKEEEEEEEEEEEEEEED::::::::::::::::::::::::::::,iiiii,:::::::t::::::::,;,:...........t:::::::it:::::,::::,:::::,:::::::,,:::i;;.....,;;;i:::::::ti,::::::::::::,,:::::::::::::::,,,,;,,:,,,,,,,,:,,,,,,,,,,;,,,,,,,,,t,,,,,,,,,
EEEKKEEEEKKKKKKKKKKKKKKKKKKKKKKKEKKKKKEEEEEEDL,:::::::::::::::::::::::::::;iiiij::::::,it::::::::t;,............t:::::::ii:::::i::::,::::,::::::::;::::t;;......,;;;;::::::,;t::::::::::::,,:::::::::::::::,t,,i,,::,,,,,,,,,,,,,,,,,,,,,,,,,,,,;,,,,,,,,,
EEEEEEEEEEEKKKKKKKKKKKKKKKKKKKKKKKKKKKEEEEEEDt::::::::::::::::::::::::::,,tttiii,:::::;;;:::::::,;,.............i::::::,ii::::,::::::::::t:::::::i;::::i;:......:;;;j,::::::j;,:::::::::::,t,:::::::::::::::;,,t,,::,,,,,,,:,,,,,,,,,,,;,,,,,,,,,,,,,,,,,,
EEEEEEEEEKKEEKKKKKKKKKKKKKKKKKKKKKKKKKKEEEEED,::::::::::::::::::::::::;::,iiiii:;;;,,,;;,:::::::t;,..:,,,:......i::::::,ii,:::i::::::::::i::::::,:;:::,;,........,;;i,::::::tit,:::::::::::,,::::::::::::::,,,,i,,::,,,,,,,,,,,,,,,,,,,t,,,,,,,,,,,,,,,,,,
EEEEEEEEEEEKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKEEEG,:::::::::::::::::::::::::::,iiiit::::::it;,,::::,;tji;;;;;;;;i:...i::::::,ii,::;,::::::,:::;::::::,:i:::;;,........:;;;j::::::,;i,:::::::::::,j,::::::::::::::,i,,,:::,,,,,,,,,,,,,,,,,,,j,,,,,,,,,;,,,,,,,,
EEEEEEEEEEKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKEEEEt::::::::::::::::::::::::::::iiiii,:::::;;;;,;;,,,,jt;;;;i;,,;i;;;,.i:::::,,t;i:,::::::::;:::;:::::i::i:::j;..........,;;;,:::::,t;j,::::::::::,;,,:::::::::::::,i,,,,::::::,,,::::,,,,,,,,i,,,,,,,,,t,,,,,,,,
KEKKEEEKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKEED,::::::::::::::::::::::::::::iiiit:::::i;;;;::::,;tti,:.........:i;i;::::::ii;t,;::::::::;:::;::::,,::t:::t;...........;;;t:::::,t;;,:::::::::::,j:::::::::::::::,,,;:::::::,,,::::,,,,,,,,;,,,,,,,,,j,,,,,,,,
KKKKKKKEKEEEEEEKKKKKKKKKKKKKKKKKKKKKKKKKKEEL,::::::::::::::::::::::::::::iiii,::::i;;;;i::::::i,..............:it;::::i,i;ti:::::::::;:::i::::::::i:::;,............;;i,:::::,i;j,::::::::::,;,::::::::::::::,i,i,:::::::::::::,,,,,,,,,,,,,,,,,,j,,,,,,,,
KKKKKKEEEEEEEEEEKKKKKKKKKKKKKKKKKKKKKKKKKEEj::::::::::::::::::::::::::::,iiit::::;;,;;;;:::::;;:..............::i,;;,;:,i;t::::::::::;:::i,:::,,::i::,;:............:;;i:::::,j;;;:::::::::::,t,::::::::::::::i,t,:::::::::::::,,,,,,,,,,,,,,,,,,j,,,,,,,,
KKKKKKKEEEEEEEEEEKKKKKKKKKKKKKKKKKKKKKKKKEE,::::::::::::::::::::::::::::;iiii:::,;;;,,.;:::::i,...........:,,,,;;,;;;::,it;;:::::::::,,::,::::,:::i::i;:.:...........,;i,:::::;;;t:::::::::::,i,,:::::::::::::,,;,::::::::::::::,,,,,,,,;,,,,,,,,,t,,,,,,,
KKKKKKKKKEEEEEEEEEEKKKKKKKKKKKKKKKKKKKKKKKG:::::::::::::::::::::::::::::;iii::::i;;;,:.i::::;,:...........:;;;;;;;:::::,i;;t:::::::::,;:::;::::,::,::jji;i:...........,;i:::::,t;;;:::::::::::,j,,::::::::::::,t,,:::::::,,:::::::,,,,,,i,,,,,,,i,,,,,,,,,
KKKKKKKKKKKKKEEEEEEKKKKKKKKKKKKKKKKKKKKKKEf,:::::::::::::::::::::::::::,iiij:::i;;;;:..i::::;,.............:,;;;;i:::::,i;;t::::::::::;:::;:::::::,,ifi;;;;;...........,i,::::,i;;t:::::::::::,i;:::::::::::::,i,,,:::::::::::::::,,,,,,t,,,,,,t,,i,,,,,,,
KKKKKKKKKKKKKKEEEEEKKKKKKKKKKKKKKKKKKKKKKEi::::::::::::::::::::::::::::,iii;:::;;;,,...i:::i,...............,;;;;t:::::,i;;;::::::::::;::::,:::;::,i,ji;;;;;i:..........;t:::::,t;;,:::::::::::;j,::::::::::::,,,i,:::::::::::::::,,,,,,t,,,,,t,,,j,,,,,,,
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKD,::::::::::::::::::::::::::::;iit,::i;;;,....i:::;:................,,;;t::::::t;;;,:::::::::;;:::i:::;:,,:,tti;;;;;;i.........:,,:::::t;;i::::::::::::ii,::::::::::::,tt:::::::::::::::::,,,,,t,,,,;,,,tj,,,,,,,
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKL:::::::::::::::::::::::::::::;iit::;;;,,.....;::i;..................,;;i::::::t;;;t:::::::::;;::::,::,;;i;;;:..:ii;;;;;:.......:t,::::,,;;t,::::::::::;t,::::::::::::,i;,::::::::::::::::,,,,,t,,,,;,,it;,,,,,,,
KKKKKKKKKKKKKKKKKKKKKKKEKKKKKKKKKKKKKKKKEt:::::::::::::::::::::::::::::iii,:,;;,;:.....;::;:..;...::...........,;;,:::::j;;;;:::::::::,;:::::::::,::t:....,,it;;;;;i,:::.::t,,,;;jtffftii;,,::::,ij,:::::::::::,,,,,:::::::::::::::,,,,,t,,,i,,itj;i,,,,,,
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKE,:::::::::::::::::::::::::::::;ij:,i;;,:......;:i,...t:.....:,.........,;i:::::t;;;;,:::::::::i,:::::::::,:t..:,;;;;;;tti;;;;;;;;iii,,,,,titj;;,,,,;i,:,,i,,:::::::::::,ti::::::::::::::,,,,,,,i,,i,,;tt;,tti;,,,
KKKKKKKKKKKKKKKKKKKKKKKKKEKKKKKKKKKKKKKKD,:::::::::::::::::::::::::::::iii:i;;;,.......;,i,...f,........,.........i:::::i;;;;t:::::::::;;:::::::::,:i.:;;;;;;;;;;;iiii;;;iitti;;,,t::;t,::::,,;tt;if,::::::::::::;t,:::::::::::::,,,,,,,i,,,,,ttj,;ttttti;
KKKKKKKKKKKKKKKKKKKKKKKKKKEKKKKKKKKKKKKEf::::::::::::::::::::::::::::::ii,:;;;;........t;;::,,GG:........:,.......,:::::;;;;;i:::::::::;i:::::::::,:;.:;;;;;;;;;,,:.........:;::::,:.:;t::::::::,:;j,,:::::::::::,i,:::::::::::::,,:,,,,i,,,,ttt;,ittttttt
KKKKKKKKKKKKKKKKKKKKKKKKKKKKEKKKKKKKKKKEi::::::::::::::::::::::::::::::it:t;;;,.....::,fGGGDDDEDGi:........:.......:::::,;;;;;;::::::::,i,::::::::,,:.:;;;;;;;,:..............i::::i..:;,::::::::,,ij::::::::::::,t;:::::::::::::,,:,,,,i,,,ittj,,tjtttttt
KKKKKKKKKKKKKKKWKWKKKKKKKKKKKKEKKKKKKKKD,:::::::::::::::::::::::::::::,it,;;;,....:,LGDEDDDEEEEDDDGLi.......::.....;::::,;;;;;j:::::::::;;::::::::;,...;;;;,:..................i:::,:..:;,:::::::::,i;:::::::::::,,t,::::::::::::::,,,,,;,,;ttt,,,tjtttttt
KKKKKKKKKKKKWKKKWKWKKKKKKKKKKKEEEKKKKKEG,:::::::::::::::::::::::::::::,i,i;;;:...iGDDDDEEEEEEEEEEDDDDGt:......,....i:::::;;;;;i,::::::::ii::::::::i;...,;,:.....................i:::i...:;::::::::::;t,:::::::::::,j,::::::::::::::,,,,,;,;tttt,,,j;tttttt
KKKKKKKKKKKKKKKKWKWWWKKKKKKKKKKEEEKKKKEj::::::::::::::::::::::::::::::;j;;;;,..iGDDDDEEEEEEEDDDEDEDEDDDG,......,...::::::i;;;;;;::::::::;i;:::::::ii....:........................;:::,...:;::::::::,,ij,::::::::::,,,,:::::::::::::,,,,,i;tttj,,,,t;fttttt
KKKKKKWWKKKKKKKWKKKKKKKKKKKKKKKKEEEKKEEi::::::::::::::::::::::::::::::;ji;;;:,LDDDEEEEEEDDDDDDGDDDDDDDDDDf:.....:...,::::i;;;;;t::::::::,ii:::::::ii.............:,,,,::..........i::;:...:;::::::::,;i;:::::::::::,,::::::::::::,,,,,,,itttt;,,,,i,fttttt
KKKKKKKKKWKKKKKKKKWWKWKKKWWKKKKKKEEEKED,::::::::::::::::::::::::::::::ii;;;tGDDEEEEEDDDGLt;,,::::,;jGDDDDDGi:....:..;::::i;;;;;;,::::::::ii;::::::t;.........:,.........:t:........i:,i.....;:::::::::it;:::::::::::t,,::::::::::,,,,,,,ttttj,,,,;,,jttttt
KWWWWWWKKKWWKKKKKKKWWWWKKWWWKKKKKKKKEED:::::::::::::::::::::::::::::::tt;iGDDEEEEEDDDL,::::::::::::::,fDDDDGj........::::i:;;;;;i::::::::iii::::::i,.......::..........::L;........:i::,.....;::::::::,ij,,:::::::::,;,::::::::::,,,,,,,tttj,,,,,t,,jttttt
KKWWWWWWKKKWWWKKKKKKKKWWWWWWWWKKKKKKEEf::::::::::::::::::::::::::::::,jifDDEEEEEEDDf,::::::::::::::::::;GDDDDL.......,:::,:;;;;;;::::::::,ii;:::::i,......,........::iLGDDDLji,:::...i,,:.....;::::::::,ij,:::::::::,t,,::::::::::::,,,,jtt;,,,,,j,,fttttt
KKKKWWWWWWWKKWWWKKWWKKKWWWWWWWWWKKKKEDj::::::::::::::::::::::::::::::,fGDEEEEEEEDL,::::::...     ..::::::LDDDDL:.....,,::,.:,;;;;t::::::::iii:::::;,.....,.......:iGDDEEEEEEEDDDGGf,::i,i:.....;:::::::,;it,::::::::,,;,::::::::::::,,,,jt;,,,,,ij,,fttttt
KKKKWWWWWWWWWKKWWWKKWKKKKWWWWWWWKWKKKD;::::::::::::::::::::::::::::::iDEEEEEEEEDt::::::.             .:::,jDDDDL:.....:::::.,;;;;;:::::::,iii;::::,:....,.....::jGDDEEEEEEEEEEEEEEEDGG;j,t......;::::::::it;,::::::::,t:::::::::::::,,,,j,,,,,,,tt,;tttttt
KKKKKKWWWWWWWWKKWWWKKWWWKKKWWWWWWWWKKE,::::::::::::::::::::::::::::::fDEEEEEEEDi:::::.        .,;;,:.  .:::iGDDDL:....;:::i.:;;;;;t:::::::,iii::::,:...,.....:jDDEEEEEEEEEEEEEEEEEEEEEEDDi,.....:;::::::,,ij,:::::::::,;,::::::::,,,:,,,j,,,,,,it;,;ttttjt
KKKKKKWWWWWWWWWWWKWKKKKWKKKKWWWWWWWWKD,::::::::::::::::::::::::::::::LDEEEEEEDj::::..      .tLGDDDGGGf.  :::,DDD,t....,:::i..,;;;;;,:::::::iii;::::.........;GDEEEEEEEEDDGfjtjLGDEEEEEEEEEL:.....:;::::::,iij,,,::::::,t,::::::::::::,,,j,,,,,,tt,,tttttjt
KKKKKKWWWWWWWWWWWKKKWKKKKKKKKKKKWWWWKG,::::::::::::::::::::::::::::::fDEEEEEDf::::.      .jLDDDDDDDGLGGf. :::,GDL:;....;::;...,;;;;t:::::::;iii:::::.......fDEEEEEEDDL;,,:,:::,,,iGDEEEEEEEDt:....:;:::::::iii,:::::::,,,::::::::,,,:,,,i,,,,,itj,,jttttjt
KKKKKKKWWWWWWWWWWWWKKWWKKKKWKKKWWWWWKj:::::::::::::::::::::::::::::::ijDEEEDG,:::.      ,fLGDDDEDGLLLLLDf. .::;GG:.,...;::,:..:;;;;;,::::::,iii;::::......LEEEEEEDGi,,::::::::::::,;GDEEEEEEEG:.....;,:::::,iti,::::::,,t,,::::::,,,:,,,i,,,,,ttj,,fttttjt
KKKKKKKKKWWWWWWWWWWKKKKWWKKKKKKWWKWWKt::::::::::::::::::::::::::::::,;;DEEDD;:::.      ;t,,jGDDDLLLLLLLLDf. .::;G,......,::;...,;;;;i:::::::iiii,::;....:jfEEEEEGi:::::::.....::::::,iDEEEEEKEG,....:;:::::,itt;,:::::::,,:,:::::,,,:,,,;,,,,itt;,,fttttjt
KKKKKKKKKKWWWWWWWWWWWKKKKWWKKKKKKKKKK;::::::::::::::::::::::::::::::i;;DDDDL:::.      :     .LDDGLLLLLLLLGf. .::tj......,::i....;;;;;t::::::,iiii::;...,,,DEEDG,::... .:tfLj;... .::::,fDEEEEEEDt.....i,::::,itt;,,:::::,t,,,,,,,,,,:,,,,,,,;ttj,,,ftttjtt
KKKKKKKKKKKWWWWWWWWWWWKKKKWWKKKKKWWKE,::::::::::::::::::::::::::::::t;;jDDDi::.      .       .GDDGLLLLLLLLG,  :::j.......::i....:;;;;;,::::::iiii,:;..:::GDDDt:::. .:jGDDDEDDGGj.. .:::,tDEEEEEED;.....t,,,:,,iit;::::::,,i,:,:,,,,,:,,,,,,,ittj,,,ftjjjjj
KKKKKKKKKKKKWWWWWWWWWWWKKKKKWKKKKKKKE,:::::::::::::::::::::::::::::,t;;;GDG,::.      .        .DEEGGLLLLLLGL.  ::........;:,.....,;;;;i::::::;iii;:,....iDDG,::.  .fGDDEEEEEDGGGGt. .::::iDEEEEEED:....t;,:::,,iit;,,::::,i,:,:,,,,,,,,,,,,ittti,,,fLLffff
KKKKKKKKKWWKKWWWWWWWWWWWKKKKKKWKKKKKD:::::::::::::::::::::::::::::::i;;,jDG:::      :         .LDEEDGGLLLLDD:  .:.........,:,.....,;;;;t::::::iiii;:....LGj:::.  .LGGGGDEEEGGGGGLLL.  ::::iEEEEEEEG:...i,,i,,,,;itt,,:::,,,i,,,,,,,,,,,,,,;tttj,,,,ftttjjj
KKKKKKKKKWWWKWKKWWWWWWWWWKKKKKKWKKKKG::::::::::::::::::::::::::::::,;;,.:GL::.      .          fDEEEEGLGGGDDf   ..........;:i......,;;;;i,::::;iiii,:..,L,:::    j;...:,GEEGGGGGGLLf.  .::,fEEKEEEEf...i,:,t,,:,;itt,,:::,,i,,:,,,,,,,,i,,ttttj,,,,ftttttt
KKWKKKKKKKKKKWWKKWWWWWWWWWWKKKKKKKKKL:::::::::::::::::::::::::::::::;;,..tj::                  fGDEEEEDGGGEDL   ...........,,.......,;;;;,::::,iiiii;..;::::    ;       .GEGGGGGGGLGj.  :::,GEEEKEED:..i:::,t,,,,iitf,,,,,,,i,,,,,,,,,,i,itttt;,,,,fjttttt
KKWWWKKKKKKKKKKWKKKWKWWWWWKKWKKKKKKKf::::::::::::::::::::::::::::::,,,:...i::                   .GEEEEEEDEEDG.   ..........;:,......:;;;;t:::::iiiiit....:.    :         iDEGGGGGGGLG;   :::,DEEKKEEG:.i,:::,i;,,,iitf,,,,,,i,,,,,,,,,,jittttt,,,,,ftttttt
KKWWWWKKKKKKKKKKKKKKKKKWWWKKWKKKKKKEt::::::::::::::::::::::::::::::;;,.....:.                    LEEEEEGGGGED.    ..........;i.......,;;;;t::::,iiiit.....                DEEGGGGGGGLG.  .:::fEEKKEEEt:i::::::,t,,,iitj,,,,:,i,,,,,,,,,ftttttt,,,,,jtttttt
KKWWWWWWWKKKKKKKWWKKKKKKWWKKKKKKKKKEi::::::::::::::::::::::::::::::i;,.....:.                   .GEEEEEEGGEED,    ..........:,........,;;;;;::::;iiii....     :          .GEEEGGGGGGGDj.  .::,DEEKKEED:i::::::,,i,,,ittf;,,,,;,,,,,,,,,jttttt,,,,,,jtttttt
KKKWWWWWWKKKKKKWWWWKKKKKWWWKKKKKKKKE;::::::::::::::::::::::::::::::t,.......                  ;fGDEEEEEEEEEED;    ...........;i........,;;;;i,::,iiii:..                  GEEEEGGGGGGDG.   ::,iEEKEEEELi,::::::::,t,,;itft,,,,j,,,,,,,,tttttf,,,,,,jtttttt
KKKKWWWWWWWKKKKWWWWKKKKKKKWKKKKKKKKE,::::::::::::::::::::::::::::::t,.......                  LDGfGDEEEEEEEEDi    ............i.........,;;;;;:::,iii;..                 .,GEEEEDGGGGEDt   :::,DEEEEEG:,,::::::::,,;;,;ttij,,,,;,,,,,,,tttttt,,,,,,jtttttt
KKKKKWWWWWWWWKKKKWKKKKKKKKWWWKKKKKKD:::::::::::::::::::::::::::::::;,.......                 ,GG,:,GEEEEEEEEDi    ............::.........,;;;;;:::iiit..                   ,DEEEEEEEEEEL    ::,DEEEEL::,,:::::::::::,j,;it;i,,,;,,,,,,ittttfi,,,,,,ttttttt
KKKKKKWWWWWWWWWKKKKKKKKKKKWKWWKKKKKD,::::::::::::::::::::::::::::::;,........     :         .GDG:::jEEEEEEEED;   ..............;..........;;;;;;,:,iit..                   iEEEKKEEEEEEG.   ::,GEEEG:.::::::::::::::,,;j,tj,;;,,j,,,,,tttttf;,,,,,,ttttjtt
EKKWKKKWWWWWWWWWKKKKKKKKKKKKKKKKKKKG::::::::::::::::::::::::::::::,;,........     ;         fDDG:::tEEEEEEEED;   ...............:..........,;;;,;::;ii:.                  .GEEKKKEDGGDED.   .:,GEDG:..,,:::::::::::::,,:;ttj,,t,,t,,,,ftttjt;,,,,,,ttjtjjj
EEKKWKKKWWWWWWWWWKKKKKKKKKKKKKKKKKKf::::::::::::::::::::::::::::::i;:.........    j.   ....LDDDG::,fEEEEEEEED:   ...........................,;;,.;,,ii,.                  :DEEKKKKKDGDED.    ::GDL:...i::::::::::::::,:,,,ttf,,t,,i,,,ftttft;,,,,,,tjjjjjj
EEEKKKKKKKWWWWWWWWWKKKKKKKKKKKKKKKKt::::::::::::::::::::::::::::::i;:.........    LLi;jGGGGDEEED::,DEEEELEEED.   ............................,;;.:;:,;t.               t:.GEEEKKKKKEEEED.    :,GG:....i::::::::::::::::::,,;ft,,,j;,,,jttjtt;,,,,,,ijjjjjj
EEEEKKKWKKKWWWWWWWWKKKKKKKKKKKKKKKEi::::::::::::::::::::::::::::::;;:..........   GDDDDDDDEEEEEEDLDEEEEEffEDG.  ..............................,,,..;,;i.    :         ;DGDDfEEKKKKKKKEED.    ::f:.....;:::::::::::::::::::,:,ti,,,it,,tttftt;,,,,,,ijjjjjj
EEEEEKKKKKKKWWWWWWWWWKKKKKKKKKKKKKE;::::::::::::::::::::::::::::::;;:..........   LDDDEDDfLEEEEEEEEEEEELffDDG.  ...............................:,...i:;:    :       .iDDEDi,iEEKKKKKKEED.    ::.......,::::::::::::::::::,,:,,,;,,,,j;ttjttt;,,,,,,ifjjjjj
EEEEEKKKKKKWKKWWWWWWWWWKKKKKKKKKKKE,:::::::::::::::::::::::::::::,;;:...........  fDDEEffffLEEEEEEEEEEfffffGL   .................................:...:;i    ;. .  .,GEEEED,:,EKKKKKKKEEG.    :.......::::::::::::::::::::,,,,,,,,,,,,;ttjttt;,,,,,,iEEEGfj
EEEEEEKKKKKKWKKKWWWWWWWWKKKKKKKKKKE,:::::::::::::::::::::::::::::;;;:..........   ,GDDEffffffDDDEEEDDffffj;ii  ........................................i.   LtjLGLGDEEEEEG:,tEEKKKKKEEEG.    ........,:::::::::::::::::::,,,,,,,:,,,,ttLtttt;,,,,,,iEEEEEE
EEEEEEKEKKKKKWKKWWWWWWWWKKKKKKKKKKD,:::::::::::::::::::::::::::::t;;:..............t;Dffffjiiiitjjtitfffj,::............................................:  .GDDEEEDEEEEEED,,DEKKKKKKEEDj     ........i:::::::::::::::::::,:,,,,:,,,,,ftttttt,,,,,,;iEEEEEE
EEKEEEEEEKKKKKWWKKWWWWWWKWWKKKKKKKG,:::::::::::::::::::::::::::::j;;,........ .:::.fDjifff;;;;;;;;;;iijjji::.............................................  .GDEEEffLEEEEEELDEEEEEDEEEED,     ........i:::::::::::::::::::,:,,,,,,,,,,fjttttt,,,,,;;iEKKKEE
EEKEKKEEEKKKKKKKWKKKWWWWWWWKKKKKKKL,:::::::::::::::::::::::::::::tt;,....... :...:::DELiji;;;;;;;;;;;;,::,;i ............................................   GEEEffffGEEEEEEEEKKEDLLEEEG     .........,:::::::::::::::::::,,,,,,,,,,,,ftttttt,,,,,;;iEKKKKK
EEEEEKEEKKKKKKKKKWKKKKWWWWWKKKKKKEf:::::::::::::::::::::::::::::,tt;,.........   .::jEGf:;;;;;;;;;::;iLGLtt...............................................  LDEfffffffDEEEEEEEEELfLKEDf    .........:,::::::::::::::::::,,,,,,,,,,,,,ttttttt,,,,,;;;EKKKKK
EEEEEKKKKKKKKKKKKKKKKKKWWWWWWWKKKEt::::::::::::::::::::::::::::::ii;,.......:.   .:::LGfj;:;;;,,.,;;ijLGf...:.............................................  tGDffffftiitGEEEEEGffffLDD.    .........,,::::::::::::::::::,,,,,,,:,,,,,ttttttt,,,,,;;;EKKKKK
EEEEEKKKKKKKKKKKKKKKKKKKKWWWWWWKKEi:::::::::::::::::::::::::::::,;;;,.......... ..::::fffji;,,,;;;;itfLGf;.::......:.......::::::::::::::::................ .;;;jfjtiiiiiiiiiifffffjDL    ..........;:::::::::::::::::,,,,,,,,,:,,,,ijtttttt,,,,,,;;EKKKKK
EEEEEKKKKKEEKEKKEKKKKWWKKKKWWWWKKE;:::::::::::::::::::::::::::::,;;;,............:::::,jjjjti;;;,,:::,;i;,::...:.:.::::::::::::::::::::::::::::::::::..... ..:,tt,ji;;iii;iiiitffj::::   ..........:t::::::,,:::::::::,,,,,,,,,,,,,,t:jttttt,,,,,,i;EKKKKK
EEEEEEKKKKEEEEKKEEEKKKKKKKKKKWWKKE,:::::::::::::::::::::::::::::,;;i,...........:::,,,,,;;;;;;;;,:...::,,::..::::::::::::::::::::::::::::::::::::::::::::.::.  ifft,,;;;;;;;;iifjj:...  ............i:::::::::::::::::,,,,,,,,,,,,,,;:;ttttt,,,,,;i;EKKKKK
EEEEEEEKKKEEEEKKKEEEKKKKWKKKKKKKKE,:::::::::::::::::::::::::::::;;;t,.........::,,,,,,,,,,;,.........:::.::.:::::::::::::::::::::::::::::::::::::::::::::.::::ijffLjttiiii;::,,;tffi..  ............,::,::::::,:,,,,:::,::,,,,,,,,,,:..jtttt,,,,,,t;EKKKKK
KEEEEEEEKKEEEEEKKKKEEKKKKKKKKKKKKE,:::::::::::::::::::::::::::::;;;;,.......:::,,,,,,:::...:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::.:,,,;;ifftiiiiii;;;ifffft.   ...........:,,,::::::,,,,,,,,,,,,,,,,,,,,,,;:.:ttttt;,,,,,t;DKKKKK
KKKKEEEEEKKKEEEEEKKKEKKKKKKKKKKKKE,:::::::::::::::::::::::::::::i;;;:.........:,,,,,:.....:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::..::,,,;;;;iti;;;;;tjjjj:.   ...........:,,,:::,,,,,,,,,,,,,,,,,,,,,,,,,t..:;tttt;,,,,,i;GKKKKK
KKKKEEEEEEKKKEEEEKKKKKKKKKKKKKKKED,:::::::::::::::::::::::::::::i;;i...............:..::::::::::::::::::::::::::::::::::::::::::..::::::::::::::::::::::::::::::...:,,,,,,,iijtjjf:::.. :..........,,:,,:,,,,,,,,,,,,,,,,,,,,,,,,,,i:..,tttt;,,,,,;;LEKKKK
KKKKEEEEEEEKKKEEEKKKKKKKKKKKKKKKED,:::::::::::::::::::::::::::::i;;i.............::::::::::::::::::::::::::::::::::::::::::........::::::::::::::::::::::::,::::::::....:::,,,,,:::,,,::::.........i,,,,:,,,,,,,,,,,,,,,,,,,,,,,,,,,:..:tttt;,,,,,,;fEEKKK
KKKKKKEEEEEEEKKKKKKKKKKKKKKKKKKKKG,:::::::::::::::::::::::::::::t;;,..........::::::::::::::::::::::::::::::::::::::...:::::.............:::::::::::::::::,::::::::::::....:,,,,,,,,;;;,,:.........i,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;:...:tttti,,,,,;ijEEEKK
KKKKKKKKEEEEEEKKEEEKKKKKKKKKKKKKKL,::,::::::::::::::::::::::::::t;;:..........::::::::::::,:::::::::::::::::::::....::.:,,,,..............::::::::::::::,::::::::,:::::::::.:,,,,,;;ii;,,:........:;,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,t....:tttti,,,,,;jtEEEKK
KKKKKKKKKEEEEEEKKEKKKKKKKKKKEKKKEf,::,,:::::::::::::::::::::::::t,;.........:::,:::::::::,::::::,::::::::::::........::,,,,;.................:::::::::,:::::::,,::::::,:::::.......;ii,,: ........:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;...:,tttti,,,,,,jiEEEEE
KKKKKKKKKKEEEEEEKKEEEKKKKKKKKEKKEf,::;,:::::::::::::::::::::::,,j;;.......::::::::::,::::::::::,:::::::,::::.........:,,,,;:................:..:::::::::::::,::::::::,::::::::::::::..::...:.:....:,,,,,,,,,,,,,,,,,,,,,,,,i,,,,,,:...:tttjtt,,,,,;iiEKKKK
KKKKKKKKKKKEEEEEEKKKKKKKKKKKKKEEEf,,,i;:::::::::::::::::::::::,,j;i......:::::::::::::,::::::::::::::::::::.........:,,;;;;:.....................::::::::,:::::::::,:::::::::::::::::::::::::....:i,,,,,,,,,,,,,,,,,,,,,,,,t,,,,,i....:jjtttt,,,,;;iiEKKKK
KKKKKKKKKKKKKEEEEEEKEKKKKKKKKKKEEf,,,ii,:::::::::::::::::::::::,j;;.......:,::::::::::::::::::::::::::::............:,;;;;;:.......................::::,::::::::::,:::::::::::::::::::::::::::.:::i,,,,,,,,,,,,,,,,,,,,,,,,j,,,,,t:...:jjtjtt,,,,;;;;DKKKK
KKKKKKKKKKKKKKKEEEEKKKKKKKKKKKKEEf,,,ii,::::::::::::::::::::::,,j;,....:::::::::,:::::::::::::::::::::..............:,;;;;;:.......................::::::::::::::,::::::::::,,::::::::::,:::::::::;,,,,,,,,,,,,,,,,,,,,,,,,j,,,,,:...::tjjjjt;;,,;;;tDKKKK
KKKKKKKKKKKKKKKKEEEEKKKEEKKKKKKKEf,,,ij,,,,::,,:::,,::::::,,,,,,j,:....::::::::,::::::::::::::::::...................,;;;;;:........................:::::::::::,:::::::::,,:::::::::::,,::::::::::,,,,,,,,,,,,,,,,,,,,,,,,;i,,,,;.:..:,tjjjjj;;;;;;;fGKKKK
KKKKKKKKKKKKKKKKKKEEEKKKKKKKKKKKEf,,,ij,,,,:,,,,::,,,,,,,,,,,,,,j;:...:::::::::::::::::::::::::::....................:;;;;;...........................::::::::,:::::::,,::::::::::::,,:::::,:::::;,,,,,,,,,,,,,,,,,,,,,,,,;;,,,,t:...:jtjjjjt;;;;;;;ffEKKK
KKKKKKKKKKKKKKKKKKKEKEKKKKKKKKKKEf,,,ij,,,,,,,,,,:,,,,,,,,,,,,:,j;:....::::.::::::::::::::::::........................,;;;,............................::::::::::::,,::::::::::::::,::::::,::::::t,,,,,,,,,,,,,,,,,,,,,,,,i,,,,,;:...:jjjjjjj;;;;;;;ijEKKK
KKKKKKKKKKKKKKKKKKKKKKEKKKKKKKKEEf,,;ij,,,,,,,,,,,,,,,,,,,,,,,,,j;.......::::::::::::::::::...........................:;;,..............................:::::::::::::::::::::::::,,:::::,,:::::::;,,,,,,,,,,,,,,,,,,,,,,,;j;,,,;::...,jjjjjjj;;;;;;;iiEKKK
KKKKKKKKKKKKKKKKKKKKKEKKKKKKKKKEEL,,;it,,,,,,,,,,,,,,,,,,,,,,,,,jt:......::::::::::::::................................,;...........................:::::::::::::::::::::::::::,,::::::,:::::::::,,,,,,,,,,,,,,,,,,,,,,,;;f;,,;t:....fjjjjjjj;;;;;;;;tEKKK
KKKKKKKKKKKKKEKKKKKKKKEKEKKKKKKKEL,,;it,,,,,,,,,,,,,,,,,,,,,,,,,ji:........:::::::::....................................:......................:::,;iitt;,::::::::::::::::::::,::::::,,:::::::::,,,,,,,,,,,,,,,,,,,,,,,,;tt;,,;;....:tjjjjjjji;;;;;;;fEKKK
KKKKKKKKKKKKKKKKKKKKKKKKEEEKKKKKEL,,;ii;,,,,,,,,,,,,,,,,,,,,,,,,ti,........................................:...............................::;jGGGDDDDDDDDGj:::::::::::::::::,::::::,:::::::::::i,,,,,,,,,,,,,,,,,,,,,,;;t;;,,;:...:tjjjjjjjjt;;;;;;;fEKKK
KKKKKKKKKKKKKKKKKKKKKKKKKEEKKKKKEL,,ittt,,,,,,,,,,,,,,,,,,,,,,,,;i;..................................::;jLLLLLj;:::....................::iLGDDDEEEEEEEEEEEEEDL,::::::::::::::::::::,::::::::::::i,,,,,,,,,,,,,,,,,,,;;;;;j;;;;t:..::tjjjjjjjjt;;;;;;;iDKKK
KKKKKKKKKKKKKKKKKKEKKKKKKKEKKKKKEG,,ittf,,,,,,,,,,,,,,,,,,,,,,,,,ii...............................:,jGDDDDDDDDDDDGLfi:::.........::.:,tLDDEEEEEEEEEEEEEEEEEEEEDf::::::::::::::::::::::::::::::::;,,,,,,,,,,,,,,,;;;;;;;;tj;;;;i:.::jjjjjjjjjjj;;;;;;;iGKKK
KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKD;,ittL;,,,,,,,,,,,,,,,,,,,,,,,,tt.............................:,LDDDEEEEEEEEEEEEDDDDDGfi,:::::,;fGDDDEEEEEEEEEEEEEEEEEEEEEEEEDG,:::::::::::::::::::::::::::::;,,,,,,,,,;,;;,;;;;;;;;;;jf;;,;::.:itjjjjjjjjjj;;;;;;;ifEKK
KKKKKKKKKKKKKKKKKKKKEEKKKKKKKEKKED;,ittG,,,,,,,,,,,,,,,,,,,,,,,,,tt............................:jDDEEEEEEEEEEEEEEEEEEEEEEDDDGGGDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDi:::...::::::::::::::::::::::t,,,,,,,,;;;;;,,;;;;;;;;ijt;;;i:.::jjjjjjjjjjjji;;;;;;;fEKK
KKKKKKKKKKKKKKKKKKKKKKEKKKKKKKKEED;,ittD;,,,,,,,,,,,,,,,,,,,,,,,,tt:..........................:LDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDGGLGGDEEEEEEEEEEEEDf:::....::::::::::::::::::::i,,,,,;;;;;;;;;;;;;;;;;;tji;;,;:.:ftjjjjjjjjjjji;;;;;;ifEKK
WWKKKKKKKKKKKKKKKKKKKKKEEKKKKKKEEE;,itjDi,,,,,,,,,,,,,,,,,,,,,,,,ji:..........................LDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDLLLfLfffLfffffLLLLDEEEEEEEDf::.........:::::::::::::::;;;,,;;;;;;;;;;;;;;;;;;;tf;;;;:::ijjjjjjjjjjjjjj;;;;;;;tDKK
##WKKKKKKKKKKKKKKKKKKKKEEEEKKEEEEEi,itjEj,,,,,,,,,,,,,,,,,,,,,,,,ft:........................:LDEEEEEEEEEEEEEEEEDDDDEEEEEEEEEEEEEEEGLLffffffffffffffffffffffLLLGEEEEEDf::...........:.:::::::::;;;;;;;;;;;;;;;;;;;;;;;;ijL;;;;:::jjjjjjjjjjjjjjj;;;;;;;iDKK
WWWWKKKKKKKKKKKKKKKKKKKKEEEEEEEEEEt;itjEL,,,,,,,,,,,,,,,,,,,,,,,,ftt:.......................fDEEEEEEEEEEELLfffffffffffLLGDDGGGLfffffffffffffffffffffffffffffLLLLLEEEEDi...................:..:t;;;;;;;;;;;;;;;;;;;;;;;jjj;;;j::fjjjjjjjjjjjjjjj;;;;;;;iLEK
WKKKWKKKKKKKKKKKKKKKKKKEKEEEEEEEEDj,itjDG;,,,,,,,,,,,,,,,,,,,,,,,ffj.......................tDEEEEEEEEELffffffffffffffffffffffffffffffffffffffffffffffffffffffffLLfLEEED,....................::;;;;;;;;;;;;;;;;;;;;;;;;jji;;;,:jjjjjjjjjjjjjjjjji;;;;;;itEK
WWKKKWKEKKKKKKKKKKKKKKEEEEDDGGLfjtj,itjti;,,,,,,,,,,,,,,,,,,i,,,;jLf:.....................;DEEEEEEELfffffffffffffffffffffffffffffffffffffffffffffffffffffffffLfffLLfDEED::...................;;;;;;;;;;;;;;;;;;;;;;;;tjfi;;t:fjfGEDjjjjjjjjjjjjt;;;;;;iiDK
KKKKKWWKKKKKKKKKKEEEEDGft;,:..... ;,itj..;,,,,,,,,,,,,,,,,,;j,,,;iLL;....................:GEEEEEELfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffLfLfDEEL...................:t;;;;;;;;;;;;;;;;;;;;;;;jjG;;;fjDGDDGDjjjjjjjjjjjjt;;;;;;;;GE
KKKKWKWWWKKKKKEDGft;:.... .... .. :,itj..t,,,,,,,,,,,,,,,,,,t;,,,;LLf:...................fDEEEEEffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffGED,.................::i;;;;;;;;;;;;;;;;;;;;;;ijjj;;iDGGGDGGLtjjjt;,:::.......:::;tL
WKKKWKKKWWEEKEL:..........,,:,.  ..,itj. ;,,,,,,,,,,,,,,,,,;i;,,;;LLf...................:GEEEEEffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffLLLffffLDDG:................:,;;;;;;;;;;;;;;;;;;;;;;;jjji;;LGGGGfi,:.......................
WKWKKKKKKEDDDDL......:,,......:   .;itj...,,,,,,,,,,,,,,,,,;;;,,;;LLLi.................:iDEEEDfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffLLLLLLLLLffffLLED;.................j;;;;;;;;;;;;;;;;;;;;;;ijjL;iiGGGL........................... 
WKWKKWEDDDDDDGLt..,,:............ .iitj. .;,,,,,,,,,,,,,,,,;,;;;;;LLLL:................:GDEEDffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffLLLLLLLLLffLLLfLDG:...............:i;;;;;;;;;;;;;;;;;;;;;;ijfjiitGGG;............................
WKWWKKDDDDDDGLLt:..............: ..i;tj. .i;,,,,,,,,,,,;,,;;;j;;;;GGGL;................:DEEDffffffffffffffffffffffffffffffffffffffffffffffffffffffffffLLLLLLLLLLffLLLLLLLED:...............,;;;;;;;;;;;;;;;;;;;;;;ijjfiiiGDGL ...   ... ................. 
WWWWKKDDDGGL;::................., .,;tj.  ,,,,,,,,;;;;;;,,;;;j;;;;LGGLf................iDEEfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffLLLLLLLLLfffffLLLLLfD;:..............t;;;;;;;;;;;;;;;;;;;;;;ijjLiitGGGj.......... ................. 
WWKKKKEDGG,:.:.....::,,,,:.......,..;tt. ..,,;,;;;;;;;;;;;;,;;;;;;fGGGL;...............LDDLffffffffffffffffffffffffffffffffffffffffffffffffffffffLLLLLLLLLLLLLLffffffLLLLLEf:..............t;;;;;;;;;;;;;;;;;;;;;itjffiiGGGG:......... .................. 
WWWKKDLffi;;;;,,:........:i.......:.itt.   ;;;;;;;;;;;;;;;;;;;;;;;iGGGGL:..............GDGfffffffffffffffffffffffffffffffffffffffffffffffffLLfLLLLLLLLLLLLLLffftiiifffLLLLLD:..............;;;;;;;;;;;;;;;;;;;;iiijjfiiiGDGL......... ................... 
WWKKG::::.................:,......:.ttt.   i;;;;;;;;;;;;;;;;;;i;;;;GGGGLL.............:GDfffffjitffffffffffffffffffffffffffffffffffffffffffLLfLLLLLLLLLLLLLffffiiiiijffLLLLD,.............;;;;;;;;;;;;;;;;;;;;;iitffLiifGDG;...:,,,:..................... 
WKKE:::.....................:......iitt.  .:;;;;;;;;;;;;;;;;;;j;;;;GGGGGLt............:DEffffii;ijfffffffffffffffffffffffffffffffffffffffLLLLLLLLLLLLLLLLLLLffjiiiiiitffLfLDj:...........:j;;;;;i;;;;;;;iii;;;iiijfftiiDGGG...;:.:::::,;:.,;;;........... 
WKKf:.......................:.......,tt.  ..,;;;;;;;;;;;;;;;;;t;;;;GGGGGGL;...........:Gffffi;;i;jffffffffffffffffffffffffffffffffffffffLLLLLLLLLLLLLLLLLLLfffiiiiiiiijfLfLGL:..........::i;;;;;iii;;iiiiii;;;iiijffiijDDDf.::.:..:::::,i:.::::.......... 
WKE,:........................,:.....,tt.   .i;;;;;;;;;;;;;;;;;;;;;;LGGGGGGL,:.........:Gfffi;;;;;ijffffffffffffffffffffffffffffffffLLLLLLLLLLLLLLLLLLLLLLLfffiiiiiiiiiifffLfL:..........:j;;;;i;fii;;;;;;;;iiiiijffLiiDDDG;;:.::...::;,:::::::.,......... 
KKt:..........................;.....:tt..  .;;;;;;;;;;;;;;;;;;;t;;;tGGGGGGGL:.........:Gfjj;;;;;;;ijffffffffffffffffffffffffffffLLLLLLLLLLLLLLLLLLLLLLLLLfLftiiiiiiiiiitfLLfL:..........:j;;;iiijiiiiiiiiiiiiiitjfffitDDGGj:::::::,;,:::::::::::;.........
KE:............................;.....:;: . ..;;;;;;;;;;;;;;;;;;j;;;iGGGGGGGGL::........ffji;;;;;;;;ijffffffffffffffffffffffffLLfLLLLLLLLLLLLLLLLLLLLLLLLffftiiiiiiiiiiiiffffL:..........;i;iiiiiiiiiiiiiiiiiiiiffffiiDGGGt:::::::;,::::::::::::::,........
Kj:.....................:......,.......::....i;;;;;;;;;;;;;;;;;i;;;iGGGGGGGGGL,........fjt;;;;;;;;;iitfffffffffffffffffffffffLLLLLLLLLLLLLLLLLLLLLLLLfffffiiiiiiiiiiiiiiffffL:.........:fi;iiiiLiiiiiiiiiiiiiitfffLiiGGG;::::::,,:::::::::::::::::........
D::.....................;::;:..::........,...;;;;;;;;;;;;;;;;;;iti;iDGGGGGGGGGL:.......jji;;;;;;;;;;;iijffffffffffffffffffLLLLLLLLLLLLLLLLLLLLLLLLLfLffftiiiiiiiiiiiiiiijfffL:.........:i;iiiiitiiiiiiiiiiiiiiffffiiGGG:::::::i:::::::::::::::::::i...... 
j.:..............:..::;::...,..::.........,. .;;;;;;;;;;;;;;;;;;f;;ifGGGGGGGGGGL,:.....;t;;;;;;;;;;;;;iitffffffffffffffffffLLLLLLLLLLLLLLLLLLLLLLffffftiiiiiiiiiiiiiiiiijffff:........:;iiiiiitiiiiiiiiiiiiiitfffLiiLf::::::it,:::::::::::::::::::::..... 
::..............;...::.......,.::..........:..;;;;;;;;;;;;;;;;;;;i;;iGGGGGGGGGGGDt:....:i;;;;;;;;;;;;;;iiiitjffffffffffffLfffLLLLLLLLLLLLLLLLLfffffjiiiiiiiiiiiiiiiiiiiijfLft:........:tiiiiiijiiiiiiiiiiiiiijjfjiit,:::::i::::t:::::::::::::::::::i..... 
...............:,..,:.........,,:...........;.i;;;;;;;;;;;;;;;;;;f;iiDGGGGDDDGGGKDf:....j;;;;;;;;;;;;;;i;i;iiijfffffffffffffffffLLLLLLLLLLLLffffftiiiiiiiiiiiiiiiiiiiiiiffff,:......::,iiiiiitiiiiiiiiiiiiiiijji,:::::::,,::::::;:::::::::::::::::::..... 
...............:::,...........:;:...........:.:;;;;;;;;;;;;;;;;;;tiiiGGGGGDDDDGGDDDG:...;;;;;;;;;;;;;;;i;i;i;iiiiijjfffffffffffffffLLffffffffftiiiiiiiiiiiiiiiiiiiiiiiiiffff::......::jiiiiiifiiiiiiiiiiiiii,::..:::.::;::.::::::;::::;:::::::::::::i.... 
...............;:;:.............,............:.i;;;;;;;;;;;;;;;;iitiijGGDDDDDDDDDKDDG;:.:;;;;;;;;;;;;;;i;i;i;iiiiiiiiiitjfffffffffffffffffttiiiiiiiiiiiiiiiiiiiiiiiiiiiiffLf:.....:::jtiiiiiiiiiiiiiiiiiit;::::..:::.:i:::::::::::;:::;:::::::::::::::... 
..............:,;::............::;.............;;;;;;;;;;;;;;;iiiifiiiGGDDDDDDDDDEEEDDf::ti;;i;;;;;;;;;i;i;i;;i;;;iiiiiiiiiiiitttttttiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiitffft::...:::LGiiiiiiLiiiiiiiiiiit:::..:.:::::i:::::::::::::i:::::::::::::::::i... 
..............,i:................:i::.......:...;;;;;i;iiiiiii;;iiiiiiDDDDDDDDDDDDKEDEDG,,iii;iiiiiiiiiiiiiiiiii;;;;;iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiifLLf::::.::,GDfiiiiitiiiiiiiiiiit:.::::::::::i:::::::::::::::ii:::::::::::::::,...,
.............:i:.................:;:,:.....:....ti;;iiii;i;;;iiiiiifiitGDDDDDDDDDDDEEEEEDfLiiiiiiiiiiiiiiiiiiiiiii;;;iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiitfLLf::::::jGDDtiiiiiLiiiiiiiiiiij:.::::.::::i:::::::::::::::::t:::::::::::::::::.:G
...........::,..................,:....;:.:,. ...:;;iiiiiiiiiiiiiiiijiiiGDDDDDDDDDDDKEEEDDEDjiiiiiiiiiiiiiiiiiiiiii;;;;iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiifLLf:::::,jDDDGiiiiittiiiiiiiiiiij::::::.:::;:.:::::::::::::::::;:::::::::::::::t:DD
..........::;:................:;::....:i:;. .  ..t;iiiiiiiiiiiiiiiiiLiiDGDDDDDDDDDDDEEEEEEDDDtiiiiiiiiiiii;;i;;;;;;;;;iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiijLLfi::::jifEEDtiiiiifiiiiiiiiiiiit:::::::::,:::::::::::::::::::::;::::::::::::::,GDE
........:::;.................:,........:;...   ...i;iiiiiiiiiiiiiiiiGfitDDDDDDDDDDDDEEEEEEEEDDDjiiiiiiiiii;;iiii;;;;iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiitLLLt::;tttGEEDGtiiiitLtiiiiiiiiiiiti::::::::i,::.:::::::::::::::::,,::::::::::::::DEE
...:::..:::::..............:::...........:..   . .iiiiiiiiiiiiiiiiiiGDtiDDDDDDDDDDDDDKEEEEEEEEDDGtiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiitLLLj,ifjLDDEEEEttttttGjiiiiittittittf::::::,,:::i:::::::::::::::::::;::::::::::::::fEE
.:::::::,:::..............::,............,. .. ....iiiiiiiiiiiiiiiiijGGtLDDDDDDDDDDDDDEEEEEEEEEEDDGiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiijLLLLfjGDDEEEEEEEtttttfGtiiitttitiitijfi::::,:::::::i,:::::::::::::::::t:::::::::::::,DE
.::.:..,:::::.............:::............:; .......;iiiiiiiiiiiiiiiitGGttDDDDDDDDDDDDDDEEEEEEEEEEEDDLiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiijLLGGfEEEEEEEEEEEjtttttDGtittttiititttfff:::,,:::::::::i:::::::::::::::::i::::::::::::,DE
.::.::,::::::............:::..............:..... ...tiiiiiiiiiiiiiiitDDDtLDDDDDDDDDDDDDKEEEEEEEEEEKEDDLiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiitLLjfEEEEEEEEEEEEEtttttLGjttttttttttttjffff::,:::::::::::,;:::::::::::::::,:::::::::::::LE