82122382460080304791805388596829331505163568456563183589548461723709588587176567909989881783042254967822412835880558229689935047179905935287383019245061012238456443995426583815489343383837798717567463930923957233862956430952138194331292494203575549929492841975645422638176576741948388440471158776997208174932700724288871154844818890135454424685683929017410688428172440322594296119121619528871771498889707577518765894315802589709576494946797562017636146066848343968122941984169394326603660262817248047202994351921636232297112140440771529700192288452589455969234881740632456802772934089620962226901808995056736825197158317426843136480307922924648200311553467788863902335278473776747774816175866742590531294982403682369155857223370832847796181255988537407786367675491784568391081548025987712129142518357226555008051872543459639381175571257754781306721412417679769717744863094793172725572996183557386128359466897347766776187011298431338595466198742763004890696327290147181775284710481985015870824180623349914247366215432956505873280631091950958140927900310271288644826943941650129984748514401445008005483179876814866938313624696272938797381067944885307297874253315986893792246969302143543354255693461327721919179118222597059172934610636757648463997134804716600063352792876655676345259878808815898850357473297748006940393631829724090862412928767501697725131723571831044523988435395672589558667590077531407937351196572674815046399169564307928417724779030445223235061537681965314415955315500784078674595472975132481556620413048320811472570733713919995475774878148086949110197069328886425427348287490742395049694132674374592777657691143911784055972615983694118143778078360760186849986571957091630031802683829595274027805478812186433685812483166210450161284230464282337856381724666144732450672028213281852267589277342132279654810760474429556947513065848419237634082165646944259970764928317123425741803542854112304534227263791766829384867852301435993963896707936224091079915382752814278602955626298036458433372754726551776856754824905950658315916747523887266403269197629354358855464738799394224224915223856866339316821826408592072208311685353439950494122814236239742764358020367259184344231634240008466455083093143599862551556431631568644867555644269488443776485344773711386585732283369721888818337768465259512611352224535870496205377041878563882175197027969733852241605872652628608821339008329776287474394640682316658224914630077170635318572796837049251980915375668144645678230373736106471303124238457659700455461244843778136864641629371235847278082597557387359044134184697233983702829447440268859781204709450581383831948895237480882141352432414723545408181896318303953160584976009439893418778670921434592615416373206213805760905413389386696131156635987908710359353441553131455983816431388517554012914974311670578907980774791883645393351319498734861232253499862733095431614522243394926795683369453551445078083165539338833652228423070431044557810772321488544629148151475524647835614119243160898534835771064399763734944250784098694062606971022414292474336504756987467488504844162948678278678315412503249657281860974567017217528716171451612112623126918716988395275854911878599350584725143354386380829237155568715433245723700466831686795390239807854338613173671613888946441790701578648134067551648462449233851626734882346307941560666512314677242993128586062353939415863933789868718770487308209176432072981821817966153618820233870611376311256659442595465287657254047144156224109180250936562682586353873023169999515335896963337408298058692645620522024291843817880746270489816528415834270869076653976686270603659248946236266111457019150123919594756083801410288334712986539699954172669439936716455191962747537872389598096834960357133346824472243042312142250699779600292051974076891935041985374243545856416535958417317921068555276571623363783347340836082872128943697218511931525769887321593133411662479642216367668456817991441119228997774428265166238997598458465969126780191806567953378235252187318471642272293971567542148584776922799654870751188654844258879140512847659069885885434941276985343829967390893975707175261107828607250379856189813777279059975682641332155591966905517190487419125997696150054647681679104449783262876120739057592682348517403486857970785421842520771522474739796408866221726515476957695308711124181635799418111457210409564485551746628596030618821630168866247526173923523737569482529307412516387469082128533914841588058888480038511118303329158459184977158224549550724127965811380633690199654249097433942799693351112908476161566612765885304264351284791842887316754994318493379887356320074156447673599784467476749288158799162805082389917884617339012697358914248454836742522311585630157239649499103782797047655827413345606881624886766146430125408324783934195144997995732664663844711048888589245302861673472152452454256298274819740247231351686352705364594146522110490856052714251188287546106199767637294916769670321444299061904240117715717655613193178728259016226879972420286146843293124085267903529466488259573498554036911164027536125866789775769892969817811127862248866973726931789519368250047104960384314146813190253131885805472674917265295815761766995127409518483621706701090482860580459671775814768827471215622436755609339550988294527711877399403866430266268417563735741322569121188854440155523652175180686975153849993765753721602718677758321344959763566895402536485611876522650942784195899435633448388932242169162365012784619612790423110678213960326545962158411393024352553787599703679771463196376859529179600559049244334294144964240221089244068909367256369861734318218205993491768876614937562115474513433174905699906498037083753053552445492814305509293388181762444214888977665391858118445771409369144849963431445896889761349827613310148255561330368723722682167766194090172824674411302641849270902879863240884464529525669993374414188045279099092