,,,,,,,,,,,,,,,,,,,::,,:::::iffj,::::,,,::,,,,,,,,
,,,,,,,,,,,:,,,,,,,:,,,::fLLLGLLLD:::,::::::,,,,,,
,,,,,,,,:,,,,:,:,,,,,::GLDGf.:::::L;::::::,,,,:,,,
,,,,,:::::,,,,,,,,,,::fDDf:::::::::K::::,::::::,,,
,,,,,::::::,::,,,::::LELf,:::::::::.f:::::,:,,:,,,
,:,,:::::,,,:::,::::LGDL.:::::::::::G::::::::,,,,:
,:::::::,:::,::::::fLLf.::::::::::::E:::f:::::,,,:
,,:::,::::,::::::::LEff:::::::::::::D:::L;:,::,:::
::,:::::::,:::::::LGLf::::::::::::::L:::L;;t::::::
::::,:::::::::::::GGf:::::::::::::::f:::Lf,;t:::::
,,::::::::::::::::LfL:::::::::::::::f:::Lt;,;i::::
,:::::::::::::::::Ef::::::::::::::::D:::Li;,;i,:::
,::::::::::::::::,f:::::::::::::::::L:::;ti,;ii:::
,,,:,::,::::::::::;:::::::::::::::Lfj,:::fi;;;t:::
:::,:::,,:::::::::::::::::::::::DG#LEj:::Lji,;t:::
,:::,:::::::::::::::::::::::::tEKt:::E::::fjtiKf:,
,:,::::::::::::::::::::::ifDGWDKD:::::j:::tfKtL;::
,,::::::::::::::::::::jDEKKKKKDL::::::D:::,LjLfj::
,,,::::::::::::::::::DG.::GLjLLt::::::.f:::,DGLf::
:,::::::::::::::::::,j::::::..:::::::::E:::::Djf::
:,,:::::::::::::::::D.::::::::::::::::::f::::Dff::
:,:::::,::::::::::::.:::::::::::::::::::D;::::Gf::
:::::::::::::::::::::::::::::::::::::::::j::::Kf::
:::::::::::::::::::::::::::::::::::::::::L::::,f::
::::,::,:,:::::::::::::::::::::::::::::::Gt:::.f::
::::::::::::::::::::::::::::::::::::::::::j::::f::
::::::::::::::::::::::::::::::::::::::::::f.::;f::
::::::::::::::::::::::::::::::::::::::::::L:::,f::
:::::::::::::::::::::::::::::::::.::::::::G:::,L::
::::::::::::::::::::::::::::::::::::::::::D,.:iL::
::::::::::::::::::::::::::::::::::::::::::D;D:Lj::
:::::::::::::::::::::::::::::::::.::::::::DiD.D;::
::::::::::::::::::::::::::::::::::::::::::Gt;LG:::
::::::::::::::::::::::::::::::::::::::::::D,:LL:::
::::::::::::::::::::::::::::::::::::::::::D:GDGi::
::::::::::::::::::::::::::::::::::::::::::D:DLGj::
::::::::::::::::::::::::::::::::::::::::::G.GLLj,:
::::::::::::::::::::::::::::::::::::::::::L:LGLLL:
::::::::::::::::::::::::.tj::::::::::::::.j.GjEGG:
:::::::::::::::::::tfi::ttj::::::::::::::jf:tLGLL:
::::::::::::::::::ttttfLtfG::::::::::::::Kt::jLLL:
::::::::::::::::::tLLffjfGEt:::::::::::::L:::DDEG:
:::::::::::::::::LjGDGjLfLDG::::::::::::,j::LLGDG:
::::::::::::::::fLELfjLiLfj,.:::::::::::Lj::DLLDG:
::::::::::::::::LGfjt,.:::::::::::::::::G:::E,DKG:
::::::::::::::::::::::::::::::::::::::::f::.f:DKf:
:::::::::::::::::::::::::::::::::::::::Dj::;t:DEt:
,::::::::::::::::::::::::::::::::::::::G:::Df:ED::
,,::::::::::::::::::::::::::::::::::::if,::D.:Kf::
,,:::::::::::::::::::::::,ttj:::::::::Ejfi:f::L:::
,::::::::::::::::::::j:.tjjLfLjLD:::::ttffjf:EL:::
,,:::::::::::::::jjGfff:fGLLGLLD::::::jjtLffff.:::
,:,:::::::::::::fLLLLLfLLGLGjfLj:::::,LfjffjLL::::
,,:,::::::::::LLLLLLGGLGGfj;ijG.:::::jGDjfjjLjf:::
,,,,::::::::fLfLfGGGLLfLfi;,jLL,:::::LGGGLfjf,j:::
,,:,::::::ffLGDfftiiiii;;,,;jf;:::::,DjGLLjftij;::
,,,,:::::GDGEGLfii,,,;,;;,ttff,::::::Ei.LGjtitj:::
,:,,::::::DtGLGjj:;:i;t;tjjtL::::::::D,LGLGjj,ij::
::,,::::::::GGGfLftj;jjtffjfj::::::::G.:GEGGt;;j::
::,,::,:::::::GLfLfffLffLfLi:::::::::L:KDDGDjtijL:
:,:::::::::::::.,DLLGGGLGf,,::::::::,f,ffDGGtt;i;:
:,:,::,:::::::::::::L.fGt:,:t:::::::;jEG:LGGD,;f,:
:,:::::,::::::::::::i:,Lt:::::::::::ffL::L;GD;,j.:
,,,::::::::::::::::::::,i:::::::::::GDj::f.DG;tt::
,,::,,::::::::::::::::::i:::::::::::DL:::f::G;tf.:
,,:,:::,,::::::::::::::::,::::::::::ED::;f::tjff.:
,,,,,,:,,,:::::::::::::::i:::::::::Dfj::tj::::G:::
,,,,:,,,,:::,::::::::::::.t::::::::KL;::Lj::::::::
,,:,::::,:,:::::::::::::::i:::::::,fG:::Dj::::::::
,,,,,:,,,,,,,,::::::::::::,,::::::ELf:::Gj:::::::,
,,,,,,,,,,,,,,:::::,:::::::i:::::iGGf:::Gj::::::::