14.03566884761819963051946138640704570856344294367413459927122615913606173750756372266209055056150775827676783548138141150754727963393345375668850233558310243074838331096402736790819333346101485644952611564548201748926359292582237721559441279374002501248483722291649998503667148022540406251352937647601818974962680550950363716083755589647112471783731198092354466633332675755702612211253934409048470967758654149077817580708670992881828953952037047326520075321141026655349289395461635330140876875261799595999239664402629534053159063485253835561768049645145190942117636155165424651028378585987810824223623517375617820837898422472621203772233549929958902279223330468441563378942702534127138594379426001641249971534212482217184414981993191014503357501229654383885534108806454992339470370537553637179949940298716667278334745708032238849777168946215376455433759131883914161230899188013214519601650545537933178078680135782449774728434632126734882086489178539269975736910510203934699857203007786582011778185733026680563094353372020968555286823690656492084937433813289425275607117108164559182413676460035623984532766349360398466359828590386616969588542992232107738596916010593225644516579179800579942206829437455075121588081975429142973968268659400453141616976108132965642326574577229786337473883203909468382084712500001099513316110925770878018060744305848319779689844179265564414249871205437232948661993870137381342932320609607534473813863842770443357909553091235755432305609241912710938641827995663567308914998430627479491244362008257757346769667747314556999864778907287307573530618018835177244807268039914358247441877416436507065968240874588103714044696540088849797382076533272567003941230414207039990452503092089660562139544060505332849485126233759444778662031160703806724582680563702753723237112749599387290224284786377343399025606141302620408310348443417715481540553221822227714574554926832746982487995487661549112429292834722818238311342654345727473051109439312558549134379479307633713557984711547903405244278764296068067805759015567636392549583186981262187448295761743379959642364781561537170105498826646757648354861568630845573157409713854088237477325940443646655102274127992769170035423302509202197849537586644889857853151743751653759805820672177943913916053954691469817411148355406513396642173644741637987679485796608713570928573964000315152907501070936237385134058462600552404059645827789380153662575458170143301043231585986349571752309970270650703403915283774218685524377982854595616145454523918590398083062939703865753554983672689322123437450056314764935098068936834686988704580221550344259469251182750559498418128098057212113204098185188105162337850746581829899204954435705440578911405113567496050857805156190664622043643815068890980545238802738260240186710256400212186253098826716259635634906730070126592076366851914734795893970247699089400425109974816702427550129866237574644529562006002660015478175603880892460814262641335966518908782418246767960108929044626494318286302684302987850980768860219011160053559060799447188007111889158360743212833701480150971387588636910470614170328318327416290919915978948541277432273308039680463630684715607609535089036046685543984138714414247778530121823658774895556414941506449977360187871223400492127501767202631700339190155693701505627164809695824601287591977590838700965723985248254395191760657954005841529028618919668167059220398687002965855511049502122370990196024930641943115343471064860570502336192815256605740815954675941498528435240225087722189384808742188019137431580428046616407235208573468149902273091677757133824722614772600571870617484436181673526190550395759778080555540618215774177587839347110557967525836222881214936235372154607864100625315404791808432592055394628301658390880689704904707105801957621339625187859843752271846646323315309558621158201834396260415619127103373502865528590193190489730206546358820077851494194619126437482324369620671669060034572012134302904989941967982911479848331045026247055476751153512315435482022512959866661358381297178417527178216090104080027722724839455690880477676207302367932454334022725557022184753496995692831396321144250432907866598093082681772648599222358642908769899780662412682014776195343453109655022297269320041532397416874888789446652565857454325611220106245596489309771936807994346974683534595182305185575761957025675646798714080397690533462949105990814790814542646442218815517022125476826901848656323290030751085563830453401178860814167391007670429587570807562766137046570562616029867301489156029930294560596932806385017164727297108442921770124170335381416701883288412467938738767029727416060476443382065165509519462960645142918166333760055812231700329111949369223881510858855501784385586291171883911978449188548317383519410988604312026414926430433149404209211693907976505250484335749120921580440782366304202092167374593129465783503750021532465027033018498931464473964170547277179352910098311286874308041224933383985974220971464832887813322688617788287538056364786962416388016911988803310696435697145982400278903698104456939453646957180128647037747027600771486454849465296562846642462904999155722276137501559801463269026905687700595528098287323428468894397470679010352881088711390091324743614478367702689042964403530087126731783372510935595310228314500290211840526051696969077119548359284944108745072103473191486091686112716932125414522316011512655257112735736823312540627857971195841298767110215038593897717290784311662869458289361555600072791390297708805648952533224368044768002916801320253663542827100531502912940396292264282384310574610865787636759234683637817440711870975577462470526928927932480401356001631282045302416455897412426386070034235176530725433724827215777814498645040077618949279342800717104597790620199972009573737826117758186712211082733785095822229670442886616351017579802834267553048984630444208557985600761416088849487463287548475333382028729814179175444791888414981556277209407434230467150233740867132126464839564302839236825853059570170307543380309594318693729275529085916632625662457779263679923145977766447436776927867703285473256849580042115354457609031372205481017840773751778201310344290317862179945644574222741051154631820205176665301690764320608678542817471418864228194934175584698719496484424868539572443148649785463673167649653477411650307225189195550943619908579468642872701501058957679316635996339790561574158819330857856875315649015556071848525857738633848672738371747756214166849445994505968962680260809617610928646744075817832843057845501028041451379935197120227167775660533200264087051276843622594236233028443050041417484697307777379517746419034821009742675423944418825481994954179607433365505412172751745574395555610660631069194602743767536615265393777049657398495725199999411668386964294690314413079119075642560069266065510243345198607508980031456199454944291758217045379311979786661893848002829612931540113286953643178648179729523808749092874611815741982599886762919984673701532918614168501921342733384716770772408337854377207982112090960421820156606117689920681975911884775682101853692846947334788371622736404633523249429840614112274738335348297066699369744809642046334978681047601595607967082017315800740703056539645414638056378946853560846778999335481094394788090267497338803014421670406468392364667795947365813813334817929457252952251697755111171588854796136972483730643563159380277702087550904140444228264899478640898998759864065158215361825949432443552021140644740575553022605815143711741915537791935108326054927687068866714081161643332692653476606227701583432786875109822400824941587369907650610798657745573777627664879644579267365320686421983775221514943850094145303863388494756802936903978356774934844471842546940842845163800787783151158235409620604158987951040815979156815070770639175950443725325718161346731214760205474488489416122856941010040765463350391534434217022984306878328310750602827516836400312210181136175028283647014365490224277776929870712494597073327050392980546118633119869318322507870959405591218349432707164989331218509639037210859291169194148890679043287392144269809833895988669774471470790669903115544998354518935966264316394048062117865064559346761539456498193463965222943260232766836854656966222072053728081700742511182111001301815055153556500134674957535614300846667254006029762449118441249739178790240338365088668348312513088120192243580610359342937911761571343219988622681159907136676776942054188165216680514781896591798938828224402500700564154972732736935543535878222990066164907546097531806545197891820499927534075014220536456071206385146364078720034997983783692841902866131523990673852707858345156385420946210211852547934146935487102028302305788188196140719614828310010331524623970081620200138081372134665353836805569162701964303818598244024413707925526925517688705347413870708322356608294210549090978410715623020717989314018731907287954217299558293866297882866060463726589815047860079719360629018915758929360273094107364957552621755236092577188076761533553703018302264665387669617819697366532491022750041124318062793685339004286748126542779268734418863804363772817129792858754399967910009994352097273942408536029984412117999521591892060748243952418090741807270722380666020240415735627278384396253379948547108024108612656284237356565535895319431175294948431704622127716298597724894406716318558274972871489502806024592752385486411983684328929376547680701107617490232005155002179252100191992549348437462507053405370717030536580039921053827271764982669013267258049177441588341414379779906066303260055437014172912881982274466044362164199075651490456339563125074816467458083659970153066392002021097785398631783345698793848589502757397200504123443865050899748570682942573236875031504541022026996338484419497180596140691472850630274997711781909069516353306609560097700631620877325116565622207183092896330168134383782975058561995547936515018897814364329156796206520866032241464716843587518223806338136050255824022206143025831180442963737812846642793668596402089435664446046805855637163680560859747004278541905619356615929804916908995783701352939571124515384837341243977643690826267515441136835672228699676046310010140532532425934398738332218170238773458270912212741918503937113474910924864853351163522775492896951878823434293224437754497111532077712672363247115016965236986882605264489860861366952859832461261914470741049337106174519881287264330828111377291619530535696974433915470386030279447663588934571949989910725993287163808387387847264528462737447940424544066872717197074728130334731556430351791236093270026337408528141172855384020460732272545932480899955100086622785961734593345750508816403369999940311885009809878184777585732784020168715588311168947233334501731592940462998231282726795277436746795194526909532056177412107021256966801902214026071525273082624990872546772124118629029922019666689056817674092077573873467412153559235438198524565545744495306012569193805275690163975467173527517166924784585218999616762334083067526743953710385492592646526199042871756390019410587306807104092056401902428358194600755290155312429739407837837534195618653420720388946006943800916070774563382959836191836972167651937143063136016934698090799820888450382741453471598194664618903177659128806013634405216568439890884213962525966644821210628673605506882445439178287298427127401842654138343194563528337135123969096988666017674984424670709842002642060221063843217001361981365547439131354366518296465177659105405624145400648749333751992205150066763480867737416588613334388698997382290072575777304140345110986864292150530032242554623165770457663925729265342954670830669384150832407445489037601180721756692573112770190152633259251168640270299016033546667374021606722549924577635619456504929912665631766207893154744289743413177982647077230410438752139216660598855493209137895459686056501199827876171821695836741342728207203708952551349079944900195942279676745913720651460928997458392800540865869499848270253423432968964398549432024357548751520941143038130615570449344180324430843451319600658327571776675031010284206226148924828208790674376525546210192519841086187737119984366323314917633106693793296376252632082187006872326843560379668608792974101201603972849500196306791158734864604495674738177709279242362851220331602290742657657163378641658876709672686394673839621676692098879297503092934147322478739342742601311386635900896809915295517074729551267188727728867381858368405489873161735432210859397415248852884951668720456169744367302460714935401417944587962813298472997567577295912923312720597642861995037123283176489539284158652530367532759809719889106503672744380460136990566702205889243910045144430553053791661142095339454759010199895997518063670841950372199260574877175938893082146921735913064062012559964869677862724369596430913694980254775468515998767842706707963718517198831876060071714613342075290473342434695806067769528054811872298682887017880261408089747487837729738551692827787349464010370554980001943920881399842944095050441214991038305727002559198407230592056292531889309559774432440929247241624718316298473395305907741944708673091872110858026623027155781461910059824373409857278092644832368794329343704247913290728338255578520243439462296948259669234150032943322306296726431757385366958904992198019022642128165373916426433242304625500476820994359804710313485370801631701363058833623432553098377031349123886312669298165534829840384230577475862114351751319770073527255858257991213711567543578537302817977336059231998573164378357854280763285264828622985722676539739190130727897709711581990626513895273944918166772617661437603879570947514743349797948513318683551652776850589030501646046861565672778400881340729343826683585278542733852994240219534962527902444804776404503486233810447237958448054996845395417213378583041368219033795972388298812550617290339510637407648246484924296963395155025430929980824523252732832894047072144631286024365750131034948506073430236381597943619728605748125610786428735504564892059496345688274784649814251033621237144341050954228899309955395709343802099502968907192458181469849828443535087922596272691262595454671854506335007486306732018315563591119512228247012057665582296655993549204758749268227640453734582925950293353992477506655238265112026479908202948248074272907274233303387990874987603639998531597704422626878706436598973610689789506256413104582680343371913850200411692703702153540934613648693871999999895074720902546092323907857034449824416061507555409886744179608236078829166395417156548612707790266959502507091972936592315289949668217819587642654641217768270447779594966955794984099540278801083634040419873230982645972179710717815043484038447847629098189197481141772371638461754013943769568991062750447625144421429096591503384008951836365335709532492234139385587866066985150879451963922577689456552456450435562093423053539782874939230156640479740819062822243926743158349772029326279547013772518286309037066045011724450049969213801004234634368635747018010406272971432947993355896652578942394479997929372947359410534001514494633693633743210764602811028263232908503242839984318748729965416551694532812301759482928572029392468420329119522989369059906791581066373685910089660362691929422109854577861987608702017118990084031049450864701757978824419221426792287242598000991108216067349283785726648541439377226117062233797495834768371646684718363206252238646027857202315851084977635088827564248483399996070662394996514052667985528968171700457444772388679759506750489952956095655681210384254715730054050166820745314367272017222918420165738129863735865538621320061971730689287701854705066430884106522013785221926604561246184230455499585560697636004018670772462990236398322039581048199571751126094676064631011037838863561820395848561039385366445637227784054861244931891467323938044443459599759431155903221901803585338739936649440404427173258578154500218871960984650000815650529657357255292586190605274406537479579489794595022149772897083245787954317151861821670259941129956996426347555322558840822960245791378778205753106216412455955922978672539443869715806594639097552380499127946712494706086394089870741036787581883223039758832258257116339310867603289681621418332875538655677454516057970923522851314916393372943848017042551247388723702575454573519435192514187624179461222023108961529481470829634573268123837369392892473711579709560680300308500040928037556094993875464924913281815320053135197564909011103153205604122107870687125869425965267403931602802553286277903690444840619042464395163296843750687025395183539023094702189036219195296092003673363027867284924134806026708908328274902333751066300332948358004192725344389950360905668943452144988808491883107870999074785477540011053943809765529644276140621798842839769756792125953894863979144972683450266867887599767461930299105400049981608137322761620271222428255563822844491592931474730030038753552454919463788024307963485313987350472479018571401921168101478830437799334300072193820707963880977187920880482157600642839867127498644644545547472103949395504457791024763495711297319352708930447514212437848956792510341205809567401011514378463772226872218534964354299541170070770959095308395227904145024929877531412457224785129997965509335360032099689123680010044874652722346380970020558055553835832887293576774865458407365276776688325260309547172088112252966998631249669074295654130402165512764799926754568684591781639816700719783813353164164415562469851072431103091189665968286389308820499651435629067516670905802943355278006613857099370530517436487969353294062164105012544601247893915659466110341629126392337791407804966715608890649608862609340802098830146952633297957243590177619179133631214474757027993568591456829381530658782570504575519434569200511966042726068617701222966595833183204367859340440488224177037740603279999127848662982522564362416015250546424802090617633339464508281277380924083439305788910103024364228868662446673974029293549980515512980631862376635853759535423067218191121977571482450739498562036118652177827531076797443230333977931472444130323755746943599689453607208843159906435560167995336335879491401038162731243758493677747987717355062636293524347787298160641543821357402982626970262720467136760949077584716644607307559659016746019441910638939335415413937843107117575093447602233359811125431820897552037368665385956655511667301327426201706188839281717295059760215810631693894476565339938349676298948719523569721998697432777354861876139350018218799736035064375172487689119923429527113202354104149592652323901661725861573476832756008172664043685678604982143416174176504181932625025603592660703219863231565383098200388296803522235229334346608681947273245754857995510950560186090190040246174319873830017707070490064032661925341352050360885416269252646631750994998059153821914922589258264627614366908757678133513282330996855317222144641265544885256961751251054988642098335379222784847212476485937828178521549586516613559418624071775317402820222802619643276368081685711644560406862074343181721921287463610482986446683788263029624290771811431502092341705310097045205272826585452495558944051322099304751375332021570875112587781505622483366221076719338819971273554637054101869775757991811533522169432005845648846769805514336088682245518395284965068436648009751820317364041787057286198808224923890740831343239853983051045663631827581432512265579395680882140765536752751715024278225304386051271726234058335354560820132318553288515829086794815968418486901638352178837543699323908184104901063447429804192698236318134302936795525854444153323387762502387025664783272248979572026309713265018240221714894299343291988805135917623595947688238001010105675811714873005675903606178646000131147963458102306288140787925550275908619358515113546998963582505742908352060924164948184817310007838359838843631445637801000164036288743967459335287365132493726775168703438094342496915986783749722498423329424395490339446951789278987309636856879843739621659015558601238761657449940045628736931450106661117118978759728061057328164810688653535466437739563673297261348652300952257954637466294678515761141825474601617187505682946692709099147390492782372949179390313094496695663097158336763565289165445528390431173069474786418914217118231447816476296968161177973479329224244079589313474943298792695624357826302039992889879813021705229564350421176573970401860606438925965245653478250878365946724106477646608525717605470698022850395157360063617710323268446020042545354721694269825113795925472795260611123913608295287751001920208861313136655135617848818833986350567679032795567831503551947085342213959008514561329804582137402197954290432440812824537706658021425328157200899724447573682396275521046528760034499344962418208475792084061142821851302381514532406275881271180905067274450890760055816796815124278604213179936952029699612777116484224122744000084669064520074091623637183270356635006124044307678769859069840525108852504735683094487330230882102737208712374448206579834911746700184801952775806203331737545665369272813726296548609458622875333922119198378289865333089292297738066050260135881366993725605138000685738393724122502059415374363660380284455190895036966498386690413850158120179507005128406480195616974860275901990075541093973195382155860905374746523478051427414950891758606895906645963023104807213688382735919728826646408715237819956528810689700143028866457833091912421353624915247554700277740068509222568894538734454065954405557765519309737643564819142620730207836882104309753035082955135597512745907688183575500736097623442397263065480745208209540004663050105949329375550262909041145331734257156178127778821891817936476508961108427378410539564180498045509703968381409298168703685700776012026263607137153602659988876329292335703095316984786029605405025840979724109100506101736745041116621544697655597905082310967314838389269360327235021302015556743672447756944809920137553035171205838483458042521657522151311589433301646702357292867207175324132126137639235164120530286733312827838109180577825844778143528007538101345186341800438982562941565703657436394047105405165816810525080731547170959863745000892775835483921010492282781621228005433653357053634386357875074677958453382967657342579833428658117568452680956916878990779340513561348580240045044448290777559353733342831236963316633462126232728871897097606886424493654881494581923411565567928750921699383422489365462512017796846293591196420863301572468810584911513719224060579506754542415699183844816448233214441007175620449116445794593455255190771950533760482763491824526313866024781595039542871796466066287007559490614690399770976152987100087272059036614679179779554429813225200922455693881150145713412490068563107505505958254104461430748126323098710828753583519979140059076481177737521112033375604678210764862554032961505357311077801621822477796723232046500213093719325936506717547968056840917642659971197211052246890503769518193474540503790633117133358637470571409167693592814947906258751749007883834672823852043980803411852363148906749150203675246216273794915730394020129183970905103052856324049858855444613362464237909134893152858684366832808547827355125797727280027802695488977828184890359374501160401167822121178673021944785277485022328430356646432803072005605993514763231449639370601091865207309632058172394278334320363678644985727809906378131440573243994708930324580165039945959857875101406554397036242331185497015235018983348161286292916561650155172955606122932716335683997186540986923372042379085729872498019084596448875903883178143937151155167076275600621803115585328076240344658378344666062103135051874854344771804378732127060652718773409785326490006598476999918912138987226517208480366357505573615953954428774484132145911950862767050581049386888935704018598674548013974924721110179192397206097889858239835637589966458804967127470265387600870097419740417343155284630265444136990079598133602207286362359907527366259051359744258368748658719134193434801169247776886908383962069882077683468491444421641874297410141933683639544173817180825373834531903594079064140472199950273198589279725506673811215192130706320903650597666255070530427160338946516674297427976750011269829931767846872047870153079070430076035117104054775764346609489755567105796275261258113734845960726203322838298781142829826641199033794406765341864321074342308378710742662492640555102057628847673329267665630701416340258269327834243619975656068923780171660625909611558418873164990954714497705415553456997813130610243752518572116534374989623408489884823080233184807212081730783104304498013244450498786576616773096373052575304852878444701691565378477860590986446214024983718042125581480219721039625117845816562573324373320689843490645433058230494183148692769466481924267024819150362626745382162251073895164002698865257248185479009198425497026295944694627432526204851933922706983954743065777358823425610885051842811896771023572291935522683695547432162680729872448262348008865185173791288687973034670266910019151169015195941927040443354553712829075395763574472575157447805047768003540418818934816491980676044923540371826470877015508779759964435320114668293956333986237195808993046404621846769122325768338871775877793212489613210299312869854017530449160858480242481426109438956819376675565402003962533392534795610535129033853506315837135645753876116218685868655905371369812751166941867359821717044146261392221621211792350527110433762221218086700387435157710515595291540733503656015201157769766687287644057402614424678698517259456416930468942071406019936587603424829148144586605497678081607501860250967829982149215704116247338894727649463143384776911565642426804714083227136926050606495627425419549906688532558140246733612711207658639015598598520090146641762076889107985444767057954008107932679092301188423220677834523647695422428904597273628934292552615029092921369042065395224563088163080425520576056346430155465990531299366484685295942975478813982138410279336586002237758579754440938056434381609897791246064435711211045912610645169950601512897069720373294505929239106145117355153966973312173500122595485403754050770842066221996204022757722059480726487558388115659863281858855733249832878523576781069945483021811680526235679727195902791698360140744003032502461796987515755186111515788368464639233508749835406212166856762023947407688903138815987648057547432604378117989685797904584643067050195763502245782121964985654025850516511653171848436537417471458400833263137865414852815403231521834916795809492089012137529708278107632477801027629362761142397443420999219426809919688530401604817271807662419546280882886498333102328393146553727897869954991045634072086198686141355902465911022228308863398858989546726682312700944372302994608518842059205697053340114828185419504552892613948650365871724777584501051159123269967045795875179775923702537006503713591666715513226590907210646776629039947209776821395356291403382777606163564517293976877817977306178272936697771557219569645681171614065817551990172067176209826977102726021599396010916964737848948359929918838146441021839165953743336646408172901256720975181339279394925511195550839951424585519754711904817947712903349295398914030722474518885430363584780695123929186983283073447743403084718993902933363530925348252864134396795815447174273274842582511219917493033172990360678139855537707823308188371290376686730714280787515002432178086302458116111574771550112768384924024900149120809806508671537842319340877049395226731610435929130590405906453038260570960011122140689117816100587706165664903253592150232882846999707596319771995375674721319060508807911870819732950154845275237294687979154343112313053204048758297977777714716765952929499035133336146355909322397220555103000312393393613709541083250972806302882386002051479996786596597456266845128513595546140711021892741036952581766592650697952589355431714149823373859259017723858446463999021074756064458515655163028723162725341882894453243047891458461189707612148527107565649690742780580693208096312633562073220144176244139737482611835236325219085362085653839699277263622822126763295610262697847983536512424446211523921223176663907547760659813323149014279016003155104525536951224874919869066551600949499519966969711721363706751142251170840836919372801946756543175986483280756794952518983317873073255771169211369043400322181611179616333496728988068769181369568666798708317541344502475991500339337878229780598188252007465987122213391266618946255537651925330162175018591123314193681204942619590699943975228199817170461667250478185582985352006095574997747465882995119801771554144853043637945661341129528098109721838882131758453686480980181736041038062298227438586468660085617365274801690526217826789520281666311855461272033483182328260209019254160284499219622527461941139190415580057069469637143633949615841618042077679342518708153145882538542147576529954778386992741413101598341301008179652101345011518545154083669698851938767430009649774724533365331168846521623453772649735812625094391523045145814556203578875234032256037905452827973804210390993635378077575082765257274694014345331795067556489005906490975149576874641039603366858056384111922586095365980542398228041440670272629100950790482040534062327155854149530907181257824307721837967021114151834637521855483896945703449171028993369962008027361484637437663836043483808891115584000653303646981919989121714670957571629178844011094800191954098181639840972315313152593292513605632831921985721086575823982010062668594746497308624483629718231223675016024229590428022175683815689010466658468130701789517124423776785515733695210725451632973280562785710131586720771946083448544611981155237463041567558877473545604607646232484219611121681126887083375150121446258172651092109824247384106705792544520490643253426119453222545123180695893220284474009175950193856935163875323175359203895937040695900563134170261676821388403415672089423998563606878997898302533459873287253778802955105396122510818096678771196170175179994402372472434376260003271299844796528567781135462777378884564279790060662915472808805310231269645646041665840511396381536039016403533796535293342542982330017397744852433696058610757508897115009902725610015422062487392959871732103129212531483628645319054705393670606424376279603026757781502589256171558290644971765222207501956605248064869485051949513721370086075999487298470848542217068600761769824426125866231640151413536283132095122977462800096174138278171526496001349028841073441422505579448263735678491549563269688214809209432592196290419500447944169422890831662390313203713706532172100645278905863657808629603891018498920356770385774132227080678142220217170635967829099778627271154576245598886681815133114016395396705416721293273970230703434531045010799098912230308696597439063530700052716218067717532400802832061195540044912174747813690240233988273757786570804096325186569931664172327897234343946549032814770588737285921296544051390099682869155941610739631620626083443807643097357522439976949561763018462458691847912699110862769219030525249588394716274317247572740324332886975894023304645153601472561357766320081912580067854938286658890709564318310598998604496050332576966665076624948142338391054389087637446695726795859593023279305317580851097092343726766333695571211728055241239897000704628317335529044355986163471194327947591871744273171394003903798839554544595567470296149135481332299270884759835886897664584653213002275414914830374232657950883013399798429600957023780238448444005701590355243105956782146569738501451789374600268451024560392538247236619168766308085293960413327383708147170638967378763779294928081692437040725538021682715030207482851790346165422429303115804602331984734841128426327222655508388135450528000079270152040510284265272621562216856557724789006214612409645561148270517064711815223916904879046664207494649437008594507974746386681406786630318623049465491197616494640954142628274549011903653887911802223400745339135015735323221448111786123991140042275408138756681770883846887852680298106687813718293050204784412191657711487787360542588580952944772347289940136343020403550877980561254237157337322145675630881956970128878136869033239885252851560716635394328244247358888876914656885828420746352674713592889470532809471553265560610895915041739798317006315857049896522414698368652425788449750396351978275614585311770925779638375814248916638870002819545837751485468284270932914443760385653465585074818396198495811475687785296805551258036119822218284379020562441396554215550256625154235444980110078611677110323019999571027104033042346934555294622545083877098317338547078294220955316570693103960749892875135660743829869689980667070881192725414955376154738532897964981338354791333650130266424593760700857455561069935819067344001658488558407488025542082213169095548839916728345443310870885204340648974485706291296754620800904480978141412350568640130010432842810481656343790723398547846884380910193415512514240219443489649123756748867970368309354946231398351702086812119704897876906726298303686112427061985116609895089137968165925918676928663561195698466367728636764268103442781239477262644439933575899005300380562212465600921458008453495436013368233707523250714987491414671828411564731652067958545102377485995087376013152273583340519651412179890051815948540419375635825820019929933668852662121537990741156484918845063895922273552018556721730683801082585869353817311228865946025561774828559106783416040268889232353872322863920575195892600506466398981900784143174772431632316984282982889350652943713156984323127593775627498436084420820345892251716618782738951834459322194366359481126025399912916112924696459857153319232606431669337110736766823149008843025169315321806663097871380694255527577711925535645551438298805039763926545730515736878658674213494582924245435582210807908779248491337482539163571847248537831629744131488895313024330540689809122596011436656019502707004191093100626230128304526618964176047036777451210321285466411101274030455893857227268445032976141612956166168090243724861633524368824413316322426760724621930722698258410774444903041008126454695999534744785483089632384223821089509716123083726915565319835359644554753968087634313803705927149007746048681884935757144478598055331063142241621516857057240641727757128288032184794417750087099431478525236852141814684318126392162049524249911708946687728339332033960059211323133153113788129212977435609357549324974719292468678220434014784256124538228389611030386775863021441849138492550722027534234792857506683608314877704195519112535240306514810585153328096574733443220996773160204964809093915401121413821287795932323394088694973679517282835104590785743921184035061981720223444519239123360244834759184505247756295261840769168915991133246105706567754161493272960932591817508657471980146758644885372523414849624781520955231602953074650090454288848570667544809871603567179367227347141735721514895793559478141365618661934628562185562304645623847755284006943166625569508923770321480830878461239881697091926811774476312121588407514108386401546106768374751024347841048365330212877781258114372729542772575603194729360695943931399999673276021753253258140383521652197187937854639662161221331686528265331774373830132005289305844760435251555479347173139000648084370168552417193645607048061835674015399583996915212486232553156364789855284854849467528384725094260346149108916573335406434421717951642625356746284447251725083484038762880168353958458745399600435298117364187453977504303722046897710129062438056243480786752080999253105371618487818062536980425586785920591251720553536254037673668032637807570307491939025990992374696737564225672099219083513263651044218617353641083269904294823440507857890915071916878370623330383840703619579764918214881684672115356635226826112656905341163880027146414531823623418686001122234546196344858126111417787371527536417513031889005653771558300086437476309417710092659797607906421261221331750141455974060993224040905594872231008413354446776404482169826721139811790720927280832557271494482715664803409659325431504668533901521927313580580105094561343632938377021127203519596003505005398805804107273617572619793841219474933882134326733634651637956238950722509358063974256730354372439504630879741495237640851423688982267924805568621646723522839978305858377271656157672800911541999420539939540628800486451526806685538923698768741169164667430190976775270932143958794902011162533216868746565664663316445375683100188049989031931751136658377867050551080844454280348457215452528446626270508113896996737826106145781510226629198252502180790498981264072668968132561472945168109876994052604059753311093872593327044879916362359423785143366503951162257229017754873612999199160887650337976202030951381723589598829862791313818225042633851551935308696022486922947744209183700701121062048317497887358044249778482338861776604593568579445815475150762074962174501876978656297426833306836526109604707629102949381501669051248959661609300694959745496698071651783729612668440701368361911409107723522067411869189775035832898367759002756243477770051301487174785918966155507113251122430800315644284875339912796921325849770810486371963506348457491702893452484814069193930408203603602000173537286335570074506722755482871443049121215023263837076913921718705006127256247577699835817576162979664153720433460463461102499522404523724671929074821274601713935983354652042311857736343729795585619594766780941886251286646424978906436227533160139584593854553124781895395689775698592954808827890549431886682268035648298869260221057299806072127330263101228679452328656404311987119887086053234611861109908143772373148316898941811501647303324616808823544757011665979492977511950782382460282514692586507832618650082527846819004441886627275012524365158385581716133924846046424015132451817630913684588317107271223126782619865433591791498556698105757539468671079835215028375312440385301988642470710776256835700177312903759253042943747877451215549028392963146531660413191365984313272965537793477575922152300070919013407535982863962022236913560774185110361668725148598281676995018822614608913092783414455065314491969037337053864652054770935781823264476941595168200400264457600596668567023303260846927776130873568295030852978273551376809787933251430415723357733519415931969051719962157564712531977043443977947944633725933488827722813386858692361972935285934826021399659846249029698927032720532811107412614431670041506182552239012857579182826240635825067971139400309033209367648661238203563913104846938066392090634131335408090406899780996235297993021702116232267623643375130933077171710189280114939960459284018475078687474993251209540032482690588091179827359453368782485087010492444995842277590411378484385925047964771767806671468071030244044623966214943967733900342107178119715220844709933857061292332793569695255394045259135283529502391181841500834923030087585303444726778973043695110002124406860272695414676362779398236655191509595972802530930146818647540829739588181991406631383252402769634216375745289044925918340172365449369868692119464065172856474728497585010981767469812307701900315815007437584924662338413446967614430221670821592442290969251179885000947187871884370093099935837978769597565885106702809156623790215208654678108534139380570810427771921217085570061342470120174965194441059920499138171853163493672938318858697489130445058140744846266077203338775753190999721168124860954360012109060012456628434953079255710178493029769386891011931975777827839277725981634184506017052521063136861484802252371309829516380499417503160513869380824661485856788999033683995724143545275440764675313567146676721882973865548618669245180664178049118166483832165870400713092573938687643138745099499226843217745326694843777061143745385346173859461665510122099089412535548706346488868546527349655432290813261950985383571091185708412711708449069265809650690618106489691902977142156815947907847857681586453589895568931185274477787006576341789802987834631127684499732214445776878902447490258284918565869723171386893271954737533650322461543268967156072654882790692147352262559235173163353792992466760409666355242254359490670160503090483493535922446796560901488803625476175247801566592666666980127131309484266050167131046227747958799148424955051204506390017083049724191955977560583514532881009635023702535203908493010698755419177998930569603686292402541671377925875380286550367202123575179944034211979601121636126892979696284206800912189797270377198638912041581187465103506871984428924361144298617826811571865027168668568654511808325096261964669517322818180197861872689670125694768576073177973447468670518932509069065642241628424281100955002824621377304429615574181070529119661023084576615394781261854617396485391400051013115657772505060788835628813399722386493441885546678433122501058426393439133705725488015388711545919898713999771229699084492526426201473545777460216675658478725427502658064290850198621198205658204141866218453328566926393289367900946455244386410055602600751729193919330055651929287126501367392968972651032085195129629832338854841992516255182145011465634347279694910815982824716008351589764597443286680551561055578530610919722404317738821866769058454946747508313296040635397551204749453861845783200079976079297269935080271526717948835035461689443304028865110653119873098976550044571505884090869581301796482861024177266692766115584594766374580094472056116469475894192511356582052136684876673536735227171913756701838023273067934869445529214115479895029429549632537320842257034829791269243673534713086413276947593306484641579900266284457539602724848089480193681580256530544593856902156459292008430259454515901375207487966077891358218297822834006656430840071340790549832643028396558602739767662641550312122461614036629280942748190968589064840714463358860396083109748958541539993708087640641540892776824041207183067721530152182136026677093271501215447737488333374982515559633545089776783137836535084771325475561690806673995293869960494831340303754591220477288211721254651015252413783135565052966728843324651506753363886293514304446194394898431204820038265909265750069516731316518722415588147222880697356127017842052421157703026336644994853351191238007592376054884696919739251253333784463201329540993734074249350391508561867605433323857913332521009004032887925796041528502656119770002585397506626369024703271752530702733403373706878319888538465895911112072848056408026534532095704813522345027568762217475231521850410758305613682398990628228922984908082366522872218535861871492215576757360083443272373391835222979118863473014504860609666906630683803114255937607051414403267482121985010754649785593667148018754957643632485260305418584052604886066928123619108868294296460857209771677364729295636670406117328170015719034602607319156002509011615939858417608256116113749284990667788082659011689789372580425035151046808361301656128191529971464115584144398310193911867872371627296041421332491835838161729282002173579319820326223813220608596692739365362259695533276751736473429332839055426487394077986073254713362466576049164758940692240750475029075051535690733453580727034178640839375748377046869474529239249853701309187166556542531418796411630496701377703758669145586463773361160685326614200864800946615193732812294006938773503292100623546502871135866203731552921303722781441435252206524004845607336779682676468947281272394856475923280044671351789780857899785361029131091522008530456822231435107534259747669144129074111636617249940400272424236900338490961360667899639348401863612233457033793274087077887959231410264943074943009351791326166535960484134605441966932675726689101116306818517367665450685094684098360937507138186939218375681352342300494815273875744784504927182525292476531826512652145195313469475048040903618891349536045568122646609875100274115613602743054064224125590914459382272037399809711931811661584804475101111619505861611856276902371088611967354456042231017020429025360984382813675744081863380057993707644438291446356363963820423049989539001499258784094754624659247224574186792345727959505588769057007095951884026409521599341507529491178568238684835003459155438504941508957564419750029302713909943333735737278423947692228384527520948118168150096033200387573120174013226800009973116424170394054433262413627182890961128693132977082928294989177947105202574904492182507745426143483771341855011638977146487053216797853407360401707641005153986832963987136215577378177589209768956246039557383695861808322465396238897566326987076856081791374430420675032687683697676956659374590962887512873886988298505129126618744955982904151918678570878033257744515072963913706417239125505778257885856700371730981021763413664170885654428944407310800442771026319138951203402481552153124688862466641963303302549794487848901969491733184272853263283090386675294038324803441809999093748934147079280088347952945019985135947316646323713964722800178964033764488988319425592484920167297848056476190806075301945050208839735741900903138549345503571634745704422000689188918390554980293828525764810869197853572472120815178594353476679810426411429708011006320398190818059918429990758969344760896901284513729338377351798375725392645900857575575240469586558035694306457639911487713847375449353501723725409874001979973606818510698912909609555586447089993508078945453559831856001582807091528762195360227578944652510205105423095940269058180428156079986403926509442952949787079507019167228030300224454423957283066127636417286323436863587985572259313869057156486680474569256420540742016396637978998531099753431748825012581422761494815728032185976314695107051794932694422356350418646152794920291828113232540065815571167259032564847331790014891022099636059096430654224760929046041852375035180965179745869286956577049847280349555923773567594729695815837434307876693038049392521655050677611335006735521118025874174542599545398900700877107764384005227729230453370854959633428345195453727921654612228811170480484712466266031286292906311959160456962374916201607773706473453582111781680778849764722440167187715514898213384377889150522285426199034788155000027971877159234614950331430644551698223296372086604094914732941586591430233118619043730339467945594848183651040393747567015375316670905017562420729050672674633816832359832781137645187494464493456578433184292746856078055305027175699124137937245633013746498207411212359777315673432152231199806255606743284160727445195820007584358565030649226034858118120030570325341283004349010115522772415936604991301308716700142022891982189874676603645738415223101117563731206833764114890689690890548473960561341950613135048748133660632695569740855754490139134302001484004852347184407967767865803704990672778891976125404188724774277522661442507338251597288975591196836044513961190864185080340960269222101592603508922561509691475025110711560115599496230058008400025061067612557041529743958228449268851086662961317834606614143750280975168148592760974342989501458964588442543049316933225812269358567404218648367646185440152125980221764751077504424910836489179656658371258648517518192768703325007376003678994189380357783719056491653870366947131509323588657621894720542808186228395184948689745794547862377956746752659359896165962559850110453245150737222095999290662100539061001362395212735061246807436535406035691966324158951560291196544739307047647216761065764132599932534742879098175924268315256591579999737545109448561910235163660296161470809359603962044002283597084396495936197870560378464268891692920878431334601834605454171009842403572077671977359257266936099820931730031734442871644983307059158242685535891287275629227216096241566359203577396797914791923508716714150740482565678340555829417876775216257047590820659631846403001917769450397528322276670708964862553474276912684241509319582785162145247941124329277881192984516923627672406414567926034204038981443764011881801475352927276873093418472225244500284879720690764376231089519352248759107214253578223546813028187651761139807032985293825691266717030035073734564423631931370568559302914746567108113220882442618916355494825746717653320367642824165090039152574105200528425922901422277957292633409971282309376420964561701868783824684305732494417892930897244028672437349402451639647303733149676429901342310933778756037662209320068024458601929689164395499841508430115047295671151451553898006499997345304887644826172940477058323074034072256768845582510679984483706635136027460563782970504346081150700075426585335326451434081424789479573484390722930451742142114393572236790909511451239832450627073116889418296938886426141373732329472590251424653786412444903118034045730715863777645246609657773188475517975563952845134632957491076345288167891136236361196748830881448001929661369036392041845447018646247287794518719844467535163261139751840157532203481557158380322235371687233405781046979825454680518803530025543289593391637790102450526874034487398214527999957391456586864162689703803411988592391079717624020766199385708971141629440551732158609566478234970662981209520221569252142038921391600578728617032909861037568241868588909954695710736793769020741719792226027784563852927646082901486530166969289748084923372662781196213672335575815195690848169968578275516486142719322108304741217782360771660961601130589729159214387567259170103414435580010135850918500325268699651543572273843157891593526317831914002334256241390506750553200052826860968339402366252602978645752394044841799719111674566726196344077567234892595568667472013628337408741147442043170672901129851178402995240764715729973410943270155314360592820088107388755424546923913527417363183424758400786648488041825801456699080812726534363783120977784882235260047164331551010545602278445682738080735021297985530794123624956793468443180537945135022922312639582970702865133559492195767079468577740341096608078291888983470683555263254571093931389096799760229980050862888491825622299892717184114028444160969859775598519116719055800882519784311816006026273373130489639800779242199728540651859536898705159116152003441275077855436175124316390614888998496916439141631233848809638741769667580079465001524900084071072243849545107258374946761236148349856510793006405329841783490549550109989706940395104508098879501736049979838257902148183231179874607149043589309162721151235790259517096535395365697172045745741767394589380580219826524577538491279855649450462552978377653754165487913032553690758929136940021675497010657667814551851524666505106401254268585338717101490071570202316993101030833511629320236088221553154079851100982120767537457956998160692612871418668532955499376017966762155342776451815208962837169413079668418054056407633935341739595329342346075025968455288106124837063042250066342320919297529125481993123420644704218290322993530555516667607925158314334839474264673213412301702641656995758603039628981296347035400460459459776039800499042758927363156337384384932128625102015318758161931952235579862351816959132840654087748329084245373302398571660556306523735625546598572245903970978587941988760262090792265257734419666434440095077647468580984183273109266483499107392945494197199386430790286181375676615002076993158441427442073577065217007511457673486728952578543428699740145493734693674655680960019283748323673675114964251318795452525475710019724877966153867629987927925962952196608280917762983240434847324719414036872074876450127177974890943755724214159286080576980952920240934792589735258623328586178984230885525533370389573424593032833850984505879069151891858849374152625600150576127348392808847591623869080190832392503705532877495850446973644993756212546226322708632284147084671532840047093981605165325421494324002345165149469064469309784221982205133568700849849217814208589343194910595046940093424111333135698886861300220109523910279225898904796930431266862198770099413833395882855630765938360549044507850383077902668141248410416458819987131787610882982462304112966102095046943762868891691293921424386601357265154195630472546095295927361587523438387727978464578809091890863943441904866020337333482735097704630821151358147080594748620355705658361354220973588996851719275294746056753230610414352487419477080658627201820077402552395624834178174282425965601866072201654241275656112742802477340979415826979128915537276307361579025260401249063135471906258794295904697822334583361254906805697924410299178913230748928332273233167059879702943360725754167615753237663934095186288919225306431197613722020727640538375224092797570519527415925620395096104992185043715329082902934587897721195992426491517901409591081873525134430405403782025935998769084757646796190711457865896416270047476157647126232459149848462769335188344412685914687862883434424335756421310442265951892969445503059725432090419657142823478008828331307611757518421164870521830386913408611472751745963002933722681326959053109080714868868417854146505295107027046372639617486215041030683711644474989172781590693184702296823338625038216423681507115025718079380807096477015245546033369928911273645983188309975153115143863620536177572798621213025967777012703710893531889526073711657034277028828185957232263151092928044733206822464717323357247717994909450968653900977585588834333174873187426991321426200118247918547954406952391218218092267865697931028917902739399608524709085205385145228496141832673217788908936048253382751444834681421484082518225166859458476716677461685830295011380489254075500510557116520982892069758649866574116138520638142131238915610806390716649712484420527197824236092055265511313931682539461636580847282371849964854826776979694362491019987570435778632564990664051322420207601298221778352072897564119174182215321213319219041414563577080764847796543463081907714079643998971973636314089144958775072080830755321649096137596258137206522203565266850737182165874394601170518458837659410755697785831793007335223718416730077711039820542914103846806823523887962589729125446655602078086338020594686904042564645741031510615410451740082776799977213535177938041867431594986386901722595030008506567601738502540041815010956524126064671052148396922248849188750989617011486785233846787356638332958186190879787323737033341569151656207530336536754017574786191811217495562846398484070782955584015839091843963456726385286102811450428510124785452293800900758108161774578707305795083727516600072099584299013435634082446021548463497197654064953131458767461334929846741758444365517066866439572520919268806312683272251107975893161160463267501654315555469691999070016243904270241053844257650207187173952688331827517250472543163994539151881426443586343121058843431135902844988760309930453517221197792487371906816562679205396778801793604558527390453848818916622646389080842783314036060599386097864232616057495852471852968477913140922406193027766621399680893056447440496647042446013586329468612713909078878752823941666283014082782087703811874562747269356134111738480609640034490053984777964248287947045290797301128634391429968120774204630290254680437096633043412352204403764870652542597599313161761780790628346230893879074915060267895222573029656845402469582842384098734321847125639937218995864530883247140518207209109817671035883128531842868354580688910465197185725855535158784715598734213331066301271500012467658704930022178867296499918155005276392236670060913574793793269652567706632173018739964414289785457561170327125743759446036980748567959735853410057396903523125586402021289861508910442848897928636900582843967143316169397556887859147145749419644358879161553697677613356660229608507698972568615353337336925334327444441552375380409738639858646144405145998512816709038217561283963990111223452396265601716767901001534328056859503916704784859655103466514339976309119698571444457578345848896796749922886222741297892294356693520894044271530408171334450087210886642105060345572011081648765589960063245356115081018483961055949528705835415903279391948181705573286617669999020643040277906248866282106446178104525361767089857907142299072718315675990180783901658173388912230564255946586605592344312316651756356011267364387358552739384394385098514111063319872195968159328467034446501151688545062514729419258105565037899123800970207454198902793274384610379032904011644906863806684143683075337757822401657410716937171089638085510904510988540709064110245846792939214469390754354813764530579926969373466100296987781268871861275485739480289567917247805172284832157330509456428427994807227184312106106448325604560463570100996519053568748257856665332835579870524335707358412633267642402879612705072250123373545169067951267656020400353930954049762253666329419343461854757904456902446881161633764709476727504880089342690079695929143136467839472164011609449427398441065759358730974127424928886968147750843947921340415671361339958331301392362436871181858033566113277993252972671423704946460847651767405391246968669362178168148328595532587290795510392600466191498580613990131555716366424077076884604363086720457533649966624641583027353119624992866896291677068396978139658512526738038309615872927826402898263470997260382366130785495602743610690365529074162902648085655179208899900445666256712952477230595052908116152849876924344550778925381252005222504805199837116960715704555149119374028845564144428704223452008357179170683693036711230335402089670961147419193816848272031964976580960841493499665904942787293201448267027206416902952210759369142397621176017592073393458783286606829796533053926960237061504925903952889914411927777784026848944401697279801905146383258807275802949576257989995460673808148707818530962309896509743866607382227182559157217461297434307793778085392406407799408342652714464988867044395870169435936685264607204065801759177843897852220396971201110183919995890711905165204105316332144956038904505359503426749845076906751178572374869504737413894875214085564421813008460681083950023054458244299471428192920261281100019374715909963718682616047235946631787145615488964332554800899194550630045079031826651426863110100753544369666149527676171842785246063034859125736128854626388606111121490511215738328525338823759511600330556760485567424849788894334736557589909300090700482226534015274751555194375754788994053588714061988067178508078167779116875631740955858945379197345463347345079739058430330231959832709382646142303787381385930701441597313166027859451811759674842164304985944274086224039468274798043118134804663652065831112830111544425558143097123404765662555368770561167835003164826829085964077725835838390684731279573099940706502607445759855991163046517297227908802351400843388520295119888445631246670343406667121414866601300606193915831950928582353490331532724333866572562879328368125663759896058776229324664325701820231932461633640552978363192963072023778926948908173035947898303957953413102252444317611555510874003214815654641500503111486677981861557682803373265986840006310463761740688464773608894272985394326231369476962317050593196838229951507061401790326492733440833360315869258946337359902216588365775338633659176803762706609792456596377438269836243259501982830897863791652843080003055244947030233328873786402388414594540760614450136923056537009254978164729797334425401291797101012906258695965950286435965797055965372281600085474528788276929279093763176980798037555975415023876962993348868407867552826756258304275100342220866458297895452375326920874793551091860462529347760023401822949306103212355378577094916650936287885577580230321055956874052316559235791645220154400775964209503547268250331117010446733214292369061091245503774525796727665105320978588830391617023849921745856108113457333241052384139445806069038215006140028299786313824207517739393205922592234949872787619790037272428004457500030841633101885205117111693182097384424244660019374742439341116789362252060006588676287626092984245852124517740792040206710988105427325107610697057506520170714396117689403269284508303346573103480514648663636138565356422461945077552897398954643719193390012378614472516164534434976201410613131002018076897586412144614772037079609131679588165930086179651690408240654625140394195257190227154025423090480017684967851912067059328647361516912900522848897248900599049105904655330314193933130518554202842225707776754915371511443098177394137718173212486954136618049605844302337587034488278470680458280952996812588885942638460294634136840183702244795208550254360908394210441369193472045149139917545141197684559429781078330016823943978143390997562822898904210021710802727116296711433822459588666274105746894336728179345807451946303721256813991178341835139725063718878293375472703571290875813923263011433899141995754749469501184174183274711967001094225245313183460278557265354190777129291847824045568534290376341907112572379418851729048853224009664981468044433849494535071792393907156742526414493167081184357897487814124283117881936058375619634561306688705448766320287392446802097648112461867033835042818974930584901595735067810850108938137674127098038340917462794165702861009407627628020015289817707841584407444220255122499236389909371643312241198523865043307626926238887811139951866183270832069155657219322444373451550470562672106032954280423705636455627591240117170962325296843449137833270582206754314777178999025501389845588278183756672312165858050417738177443332167865071557369118787959989809539863642491727885565505040946676810512108846954610380640143044344309987613781249785176815329520674649447396088989910744885811104378241178749651324097878494157027038187201774905301861691717506244883980041407936600156695519374409283771597497237799862481988708097739916380286581690300336294937200799408213424451902227963481971322814940278986983801641165555844199492785302616754806625502777099267992348954090371938364069311694081440902687189333866113988692210661008530996668167290011548853387224498980204051948576884781076588714263970438536796120111238727869599465052840547757515708640775991504238589733335169252267188516513318199319884712190191166659413675297324542289153618646843627068295660205481208022840292214281615869210832145343802100622381748434085370576627289361125781734088520194450108102730998117600659902379363516331786160482069616821633838589661915596128365937416914953468024569005859629379979073723185254982533280182258575120207602052171173995592025104734996147001509855787106165716489092389120790247455117114346066014712667483218825277251100763247971236844224269057549244976402128774999103545761267699276559936076301143901854697741207686962792890732749997054392741443495205503719354965547681650656204500566148572552617608170187402192640471475967574355453585104627754951655600961333444590899273364418490080724361788262497676651007965218492890869165331841803908347693639350737898842188126701027377467355376432336313800701644537674786705620384860988957220301510438675270482790802161744817516820419754993709949873067776662509162529387852212955018414749711044373356626626155240427393743261714467242952588524270656296891096748742925184174938045829288141114235382281887068958565619019834200746094215918495296475405783733221009090213952800847226258608908976083098168143114233812991632450259305968542479034808567519097224931907098042105396077775500663378917121326202257690521434016476435336910814631540401299823405013458174543244089518607658188640032781557968760120265041203562756729230776549039280290026998812920203739142785676195725923752599048971596359496828519917926182334110379597864287855274954318381840341347279720463056129295412689336785894240731788207913961581519979334747067954311319863419376747846519340399336711513815618273507048038376121029363029167816602239124420843381885443664134050266028806472420224873845028330623677069841037542647828477756415705621387857251274528454552321253240222245030836582068299821187320674300757894720278636528529434555404758797808874161474529235402443313767749860505416798530143328644728018478439131896600325940968541316907517383148000867123205651567034359672053448110053549708203191589758070194036084912898315298392294965162464092366802937152342651196622956587684284973606904351377837722586471120917986639874801986518235647909390597852787828373709712906546773781978580379071342476974223435182383772949610504748898942420747552551863990912520882419128153271197128758616473619927037482242852044777736612662319298971311113508779470127467917339853122086837670476246826028118383945097798531823553954171000985031811948856384315211883774495128944918720129514542053686545399760908986012141460191015158988113355479615319883433278060588194698146321105232366434898488477650448412173389068200305877140907595939289285600460325200519675176960213865427163261936922204730090173879861872576432527685299184230454260972256167518412128648425715161879118481665163124819389664149453583855022617169521144505982733119796706869392676539560065271417575117043307451340999881365246756468800432594931356172019172228223423612890187598448410106031484784609610193181450683038633279544764011177741575694980051296384669747126462931164972721747844746385499907503352508474320096888024729034731281580856197279574828088287116745535086493647941737405539655013920788801948114220144302704012699357033591006257003217694168925458922505833051276190390427581924685951608764497163623526952976197660111088842825000267263732517928946951442515289577277216241728209153610275911165739117241363263671981974521492862468285665637270769942259951202390018162509581616330091181629189592174747657877361181730661090807279540691728048707121052880236298972971021804620984635550429580500036941394655596671372824195463026488742194855357691185478600072718738495982307902783514868397522874106935267430569691608583091316305836696830391829860239009234480199711156741808949733020278147569692649691074504496562250784910502059118845954822716916171845879119290168816201062286766979388189627689542715252344533527637814269680733184944964254357204857495591637900362862655471538693466359017824126460730318860210149740773069129223110513053359226546214807691232534555058459143214293958401921549256430086421569840616750950165430610781858476121573909967346548641302921615632428106295463115445850561101902329519630617578681075429763374769752525824984691326110494213791271907620144503247801581098880114254521674047247475067430353680484901071806773154071165341733311251965160147754673196635110495332867063695033050126965088556012434264626152064599215232571323829874488582949106423345238588983362036378086385040973713005879683454736662680134257742010799452568904379647155185404489029981120226655316961958137176221300035825363303884187112893299410090309756259855289702728366917519775182894086384708462813632435193155373713655464512203055861473208391134481174949030577538335362521118714554399987312576245159394329301332253574986342069582883996885611330920006921569955025451927097610061980151497978694478549831447262319240063924745029406065910834106015160069914066329240671843981027344252565644679036051811203535710167499773431744746219419785097333453858275980146503722368967930640183268590376256115195579665471942113800390734208480534203592836323931297146899873872229645796321992430721734647024086893897959150578625282876251884932878706059736016331293638711876290005065881232583818325563824328906287047531433189281392367379872198474154907028938708151660699649418892384615298632962895283495864029660062332610791887068852253643248971416706209707075013081173845303558491618310557077595530200073048129619515951800510937324432653602156790504704780978100842620857166854579965339551361224441038880118624183342303577501444841278188066851378498956584837797400170389927964678719366127092161245591544009067512619320113902237405814216370400821219896741013203588858563316394050404342866151467924434196149698269061186677643119589875540803088299688272253278173148849804430074482105107574942045848479728759666896510206703181918630658640083259902858981588345225432076492175253339626701482528811731147414883369254149957859063379146737891257371158406340556180672458658764234656770896370758721971594916313556191438822175124670038382303632939673724000589185168487404944257559936636919686998572136055656444607583250792292302379126671559223861620385187169526086236334131147978851783323796359665997964771365590724747281595551208342282129758077850895060350159936064214192530904797476391237164551402477956671333527211521135564089196046411819443641257125968265252974145336951131444024845795825986748804983022853600626515469222466225351286617418005124988011116779461944392405275395377123846967276950384288700729444556984260768131403068960104003766869033906539606772293393704275276462094607165179353035620663260731115016167249085026623132735291327442648845904059575867935832944482916891705151207086479783178490900945681931215431314637166399924749569999789565136243207957177655620958470267510705775393527533467642750739354672101445953459654509774473035454394935594764823771135809274315162849513031865741370351548451845148474523895885365866939246567896930753054696048840520665082807496582753268390555285618105438819140559735630841183315612108185777746352595790293834746687014069835495415739188873643890437826511852386422170132547452379501878386368827372094581740683519764115776986769856253279077023663624644510147769246611249874619541957128330533328210460921140561865802699323987320951027185221345796952312120609298684420753486906055112908120017490266930250066149688004587931544022592016678093763685352398876478979895865114613332639284357647281089172112208770731410776896758880898584544113046627239073282910700770413345971394441831152649794186344190779635512956690420260839728815540698194454106331308988730024782074144527562350080939803578943695188522797830039633714626190459978457292711416821902353392386527881754403918227377510159416817644477267641282969122600655878774693127838336679644729110732082929462902147122101770347703278778548878302311687317086352643276133489542926644674284475216998735322539592882772332801900800226848560453582438890887230150420780897113574829613515877906691179984773894417954367545313593294944118992332106050509614389428996603778715602573442831675914409822158656720585486702840574649843637263544916833326869176802720288691083006159848545121701725647492381078220752608683309130311900581076989546309721370170825467487405517398750428636485047792331862156217449048922148288668373531443731140285226204430322076286439721228813224349616939811271462965311069202045975836445112423996951783534602966377717659178168227117968416484705333877773206409424731754583485584737920969977927248901398463712613659327153354549800159308723055134331463588402760599050610018501697565114244258472486158097256411131885125097065540174455770634600421002782666856806720584034189390265864613909441473483832026949121763363808756690148551599740095870762519133659544595672740559344399060081128593973741988849559823245397486411438607005755834077012596744218964775709156428166599591964555520782684130431908446033452927211942325082015173882250268351910854112121036918623038567292021096928413891399908642621764842096204333690407256629342849135471873735966440348043792156218589703590614997967463353508305249820892252767801422901849886969184593206312752570786757324660195612521397354990205576883139148183644392672314319104815023786498654592018591337704045613315961732049727413208376987676985809305130675063009052811234989361122809411023711936409042124361031275420045537423585179335252784698294437005252420394763342242452356094338404938670699548686646342711166087618823397805183189712452961806189088670217279365185044536241654127865842553320386703308193605040975831459732955852636148881325938619077015213547777572383672417933460267695090018215934103309016849741600031894014826146831293011347561303701349022235153496757325147981482773549913540824965998490665762730423804941126984797827777324944906585138781936948712953996239080494216043503683689112765677539474581523286171392606298266246138895515449829471306872200577854038400527292305676075795430544203385180833091529426227708791297838881630585916848084787268323480840265345393049730151371490909459681616795879623192802263156936128742504939356348873331430724791045614849033304163549761650167208408566213666757988503079917098089293348175218108806602195745089075953786689429472102174367071545035143497023417014197586240949230556830889813471259106475894860078801751488785867148405132398602598948112473726269282552993761396655260128745782118921441898717330199988815741900386308769390051515712048487353300229728719919555582663499158931160306298282416481004861510685427114548664381325484520674958544261585944116862217844835518130717210853070919782866555448214761550298307003915901940046624750930268725109850743952588597291476782123250448550242955719234759900563498637117740285462413999930317826715014530011583757011912222792238716614904553272633916343309445775801761063288864376460835099090850197575866743485572148625240932068835080543787541992528388004086466126863278526341796150463263062570099256392056765689536622926958176978439632612677176090741336572023130131412037064575187911018681204401519273379461828926906353077944903623556388430011578751058259853700740103282068807287234551815459133959776305718792227223434191342020406164069867850710253321621378719811467841441531861932951757794566872643819511646834266731281373685764631613382244344447389358868399146891304642782233380646481653374833310385672755826765913370296115681951018308771300750886311046201975775758362103200371971556355474200441650637180225466063380249400155203345998947807347020795582991201260806144879718016579898044293741850314631560878726430696392796583265402513222973364575480467525170168028304436349685751984905562399056322455685249869930692350054280722079165426725492297364751992648489570469884110795793612319252490256510170550393200397655032055932113017522176068090845902604288959849740271363246381448076437909531585314308239227496460271059577407790295170905047900837309016852151249924978630873025500150225190191261591979432006026369191089157193817331493715483958060218235699568732323619486387338136593879222613478708050098755333762113804839275932321387977991067694117319310596458380144680263670350626099592339396055647821516790935514536719626262929080976686452606897859681889442993238172944511799064915214759822632831862848785381322683119337930732077041418511436796834752333427069154153523199261269443033920219322514785010583379447479339991077028510734218167512735843256111044428424265942562055692979792757409383662752392051114119003445748185682964662180755677003712982886770063039714341693588307714887717377480598781878986050883819769005095036352477053454339732197742542567411740327374153754844087786401915482245900561089872016970557437584918348542521570869566561184274921830254989435957694629388396484885137231904851317253897814590745604193358435201055884036033203084243941376417733703079845081760111742764111934951068681857293167428030173821064802460767942041397887022854471424702540133530770992527935638838513139488830866354672901272610549267283345717188061268848797703256195405704731614450211935611426103455176323524340662807010199567236350292342204805722189327797869148874509408918657852066032872309095011416121370721555622178279707055540968914995470968488645738433093869483310465904370937608955462922652614619900055107601221111428345136318352396044674241906918220852220015943160295603866463592439631437909399720229960232872776881631911976472898031176313533752337580683362071000241125596013537433668613845105735231217911572719665970364427565206230665695969855495262022158200459311891884532745689119577836814881574514826766970023192480865678905575499691922336770539961710876784810788040951810731877248096245663762184594181275117136823353409039103766762998703613111706522844986791659401411455764096331257272973920946475485127635492377557622633536872383634431852258384087957684557145650226511781182465419654625214265514387834173208182923677873707413120817691343872868513349624952741969359469464900411885466672315911803674086028036256947535182696287622483040525967756765817595556378912465566928298541901453965828608896238367978654537239860097658180657226332272555418629234828286378697429531725833606258573647951271792730174495375174578224756203028335380391123665753689793381847633404133100879888833820655610358024839478126818004091310692272804867243894908399364324264464893183824164969643498749277134797741039717977392790971146847164912202767946797185322521827972630990764994670461131971085511744671840112616258971130512161505922229795303981957710270685484128249682959027664047136475849807115809000618672222184067890893734709378618800217884895019770797494497096426451028859687199394373103396673691980590781605129480276892324514185222862831866669795157105221178412041443155664072149109928222505302983689384130356269445993323410322964828807519017323787505787668360702107281482121579249991566913100990455374302959357395609101120867051612775863484944967992338132778820350907237016527202425050212256018561850105855760753543986318336732314780269867221590652980547692470055982070040624003461251408231634460827174930545418348491026413069689845089783577778939209806970307590582575588141557416424384492582858502202404371739992148366341862363125254759575478169639521243065550761988360920368076819006040899117993603594360278668405634496630381765193759749390444184257186343810529712055617086329957596333431057676988571914351536177885277038246581788618926661396798059889059666395878003956258067968489457524237418436334448448224855381823283761310027111927464514850181268073734371493526710377079329076909000117995161038495048742524567980341308585404567678439328463594380234388856211728095493528795675702797652229786126720554655012510584092612995195061333285830573942300977802715737875994573035310529705387702309169302039720314018571359670138706733860068504417807706489670175138026330454249401032300182269258534403095162677876041738525037987060632910217941392432487529997471589832481329136167014139915662439250196902237681165629375012295286062254419339193094953360197172269059039276794450884466934941361788225963610328265860675385956983513841894778622853961043614576734991709443379367528194130744947649267898550652931459127223471510319456040617891208090934109889308162562699491665925005852222437432017009894528747063174990656834793987190192998389916557016683575544006677015184880236412865773432212800694960829922135671277593489251212938434863917038686149259311506754363629036881842366674758989105182232002492699977124730273579507551448207685414375689109745611533317167385881619742610120767478680733463122318740685357617108698867335737284735699029552542559431753832512504122323670487188977250863834855401513895614509303714873171200194331167163446493097761187947828155497758820053916454882900872120281541847345894687439382712452651315499219661006743406050505797379769884302374977613801629636189324218593352299807145184156120862174136485538764447982628222460265194342777690605325024675435597167544186290489550458198493593300716300148253872337856773226226192045767096336042095281720979589132211757008394588786019211234492936994126880226674015443396052038382997608753627995913726514432451635046809671659466148539544608812609479547251053656348050891859762999025278511651312152783002525851352850314985966241028583378605351324464118573419673357520530297699434557201981296903888947770354792724340499324508411720858643971358063577635799325800388287966811728730244959163624405140393733997597758080470257734229982795117191240925644882214449479180786540073849145784075940323348824761749547090871129348509136510732246234783319349442026543392156002906408013012103674868808897477014283324149792608752656731854197452769253059547635982815210677418561266030774274275188238243902279559078505813747528811941215477540906532944602643188781450335037790941334737211642699251941117222438654072498524024203852837860989418204648940961681153504240724294362438698217184430288654172906335269950909147132894886637569592651491060665406800008671439656413688848555133649406092533591997445809333016075048632499207483034210118903449835967172268966797328359887001015832863491160332172234201084592263724310645185241063153120419481308468997722178385920058892172070897982417972840201938944159872122826558761711358128792864101694052920054329310911194442236651071854949013759193302581496230626676063509623605063493561185253377336009611196410259875128558792341121460303821248309574567902130051726217226509056341537029369764587985949191167682082397311929149972090900966901666824919513294589527632747754941975192788831323424500497090159161527040538392853719151531292757682587882805451550018083367847723940864505585165033215453215561898027849052855131676934993873008872985048359432721961933730695180147298214080777806638559421354671431655880431136188777248494087783224456629950621938245785226671963019555172223801334292616087744973174108320255366613752170485261722038078718956631849646792559577428463521284968526690307723006598124921910442832862884566702229793014052204647771548773181432173215412060212926850072335524786888577002501230567661997360876863265298272623868041961990194950540459882648865878317192703842971580884257596147478745917754580553429217935575901240557781969563880841247198233246517312638810437169662494747046963811100001857381824565258555518332740383881310743853202244609044120171069188608484310102511211996655093894387497033155389587190012556910700970604876652038144807464875136119261136836769419065582652744239819510054385525394527069255025209622976780434867714125268012950248041723303173036375228243690361724751669184907795425344369364524048328033108848002878358514052188260103517648234089990826026607167393754692239376433780510028148560755378592562377538870226839651562003344488431221476020376154500241799889375303205527739105236272458083838145024907870328636832304292964006782537649969471341989978700468289829125562850068793165277348689849879254193343816799983438760338472944773744708915194890905771134552872518265067065260546690320236282309152099460861727541759617862134562776017403153302601506973079593407352196930847581379925443293209495874394049621973008667581356254470861475223992179347963794303470449827474408400627801806780641033843759500449715740967727688891441079336037496487021013985000221050082398922348070502614908305862382735991758434348737543465536217189332835433996427663057834960393075268646793900597995117390324154412734653717176253851351290488811473183609934945325475453660981996981738740055448639496844199128598857340123980820907431993180566749282571214470485082197918433349448627541104750075548135774312462227179988334145233634945873682757062480522729398884367762730762587619758296214829498404029685648200843211616427497396480124300115023809936171774120021611976689346684367609114715791632668997124467537695876969158301486984489404182959320719520702941626838694004162195172577277587648675899942994067592334974710973996472940718060598016294243250252699501889561514576162493742723430696688538474845999094029716266815971938378326958686044150836468391518722421342343668770800246269063669299934756778906286859579701986214264829186504723648026998868891610853331774105494408809722878053795791314500638430793291312416777308286436995169102238280040319001877236317356975093569901244153492763137750763958480494330299890503854305630226294464757971100401861334818842668278334980143311637179330534689064802523242063633086993736349906882985730842824367451345292844802971276587251654080669544049363145440411356156555594416297870517835378562518975116628213729585206825149696363122633991527858565639716636602268761991155761076259232667457559486306674217104212561887918490596074028247040642999392438062382272947148538442883991565643112846278766437535309680241549760548550476253830426017863845191382294297319612284325850833981115840821599997743159724810776805173470791592370619912455241319709797054182361448743005805785627235544276848875116969863289473816086327815843224554679852752214574616887990628114103629380482569694038619235522662390548943477289757339212412952910319354172079207221869711174963959786541010109035252543236341302113274598213841666373943931755970379188500085140030003133340137843348540934600498894968363676629720062054154536262386287990386050412620552651540786517980932990692053491167807848853595405698538686852582296164537152581491779164192691037842132109357316543028414593425891347228723175775672993879491938045329089798592833340602309778303548509768038400179601333335091360846584263976975190185304541636896111731543465736368351806401523267068546548713062653659286265842729170909542847050297434921242807870959318575701524637250253179024569270053786426364135093965030498542928064482574967504372500281301298199709338908167839480056151288405571917291216777163027892886967955473092052815661961708129617551128420607509865201874060312794772182971624642921013325228973835673416142984936319745226141190864585076861034539213660361694021121018630133344672786541378691405880736074722251499935694928752673068435662395874085455446600164474505430924575714871966143093283837972959771556693382873884119655489176529195324338047389248395113771341538320777640135298383638841210877085502369039173401615554471499491984064183519440928685038254994717369352655867712175739188606315649466338684658037528597020972021523393139096532305582935084415764651638215318388375788445667322307461186296033164353368225764764008330858355091586806338598829525124006440629229781918644408733777062289001403495482106559000350803466046137917883810649438588523171422567044166258076927456411776789938673167918048935498928722828492421776686032649336357059847979871352088555487963236946361460523594951382797634005524556635374144683455623744907334501621699683622359048408727037844138743639328236253479904556731887895456810825699655446995145782608302256013919673163613002528256740476651568185836177374717851364512956669080591252904695502842883562938912649381251770891807218816326745313346153595339460137742991889658804649727384005787304909574503638943572046404791224067584678985030277732880930861460182817891735218586625050780250297298301376324079849299156843352814784293721792295683076771519257666889421183114870183500206498242513285810300079359324336608184295113598891255580037214413616756977604055519906438433908104157552021402762306998572758574173048266905115107914034572573998648767923285445333444494265067124686018379807206834480326396077188722522502513450380395125959820535385697431146712364029681151838205479036671519404866305269602150921851036759132158819717319634116062935305135470300807801663087294913746522049135923501492338221613036319538201597289607697660067512739373998778287073107032059878787072956938266045085678796974428457700500926097198875683047403526319769886899538073557836408693261810955060068840388251629031831758225891311262094850738318093812635933769407159121219572988001693583592681206412719920059529320487927428602494358178277814083273993283966317951995728740761973461931768563277098889404560764771236206606139835713422092749565139463798590839148825521721287509048787876327467265976772839604413385576219195666712262775408734002381805809353036554686943636014481685568257004778659894640575429001083251785437867932744280876654989114587961408541618276839138836533110250223901195980111746680387341215433924990612112046421622208942602365920783947531860718138040761258744411760926222769192978373077835383550479681291541730419265829428384727838507348216932906766456390065295725190691221264712226236305147511561048426517761358692900445103816739417149274216330600169473129766668933975135520151458811569097222467224123449521509203103278582310766162515862195543343289546902215929658841363216347027733666637995538876097897326020533940699026012671151023775646371435842399824611660105372002223923696731306477042402359168432532649489273941288867549923056256308366507920829595479715887025572643423918334003189406361243811007044125319800023289550890252157675467799720037312729821275777918915834099514493735974585975968932601518247699547971443218232905068273044348425575707921936017388325348651224112660910489009229124488083388206959958512560690399949127776550215489314346573979003343302851532237411099385545587863349835799206814891106302320252692577304779085732067090411069750021946689181892122257666640336885086638212165771446676845882338219098073284355282358584800699619872681658445093964901564162337619553009780339302453312211100976408675613983437386658635946366276436893086652203800095453812085758090548805847864812764921646976716461031592491494218992891889374031224672439131332334892879805010224247386352461076875962825921130138332226495100978496287076222719905920748436309091270948638821130291505259464361373626716228232398625949859048940469727780293633462841469520444966906708126041330632329635111258851798624094703848513139038613446956795512563971388179706010605017347789555304979756880015024783368407314819329016471764420986845617189544048861106252894668908169686648976191345984126296763587746323381046924694073386780381969857934486428674968345735520027654921788194661354228765472668454813860904027953835781561572585410665344471318401192380197935461174355595478996541913863080989573667328836661071494321191879285328444299409592343017862007576530650339041331973269486914562705076403900294763701460004935546292995927740756427011782597362657435094785225957866195341116709393553468998007685754011959132535311557132881741517951394418015540444145370936815932168920946423326589105139197223389515108823392421400805019804436672996715067333175258509211692870762622276730234062265687725518424266360031399385467271006121550617818537667285228660370618295982224773490857147121635849683075867541161940902933357478194946266545851838486284761998375435128507948358557942585284521810772610855159946065220868100604340000024810768631259693026632580731264367823879045238475614444668676293331681288470984951760396874287335073184714283153283127402849418918448751254482476541913161544813220137461724214692702117228308011870980327341389612742604105158168010945373825209429738942061470966778965127783051821574567536856809465941722082140425620543156257224459173946097015891209622187954374958594567754867901095057528248081805668506601646301860757646207004516387703500582044301898772185912122847822970203916346437184065277630189365189229496195498810228716954562358623836885498017095599294166368367974201068297231142370599038533686586017293900769481371132920383473226608092159776895562925439463611930750765478459635828219842751069609599404403282494045085853274235656183101285877159826268233032433310825695711989185493796386078447579414592006592036820524867681276251649402849005539300479062136954832719942558233098093241687636988951713689778034462582591402265277410383545629241405343679470732016290757780297703223073656819508824022185179798007380363200275550668383456526072676641882115572513754538960338612953423720598914204435065956309886153794934821972355774078163268192851533595129383463334750689226871924450523730669084989485559676650612660153437298195346407852817979370467230904200453276063595142012195408259147285902709368076137297649466012993136272828477429941614565309741734518818471780977088455219349763807862117686263275344962153422147094707513960014554796935534928724818420411067068966140877824496143242323272784838662246791937180548539719774175797426393833801690780308861035762049918326203810520440137561680537112618452943488230886704106704646106723453551294638378495238925357927170619197904449433931903142322349024561321598314763161274059462922246063183153465614299464080103944530807970810412602752114332170688587376003066850340771374254135101832008581343710905676181816919270742658281552849286840218309553159271169732134383370447415970246754395295442158848817748215804633561319765813895470926822301051694002877129367324936183363837694192458109551291256269194092970720605528621889631402372824714052067805878599174426840865118012973337274906300523060181838089624710832259354018361094253180015217287696106784882043040134981565090758465512141997610388895457013559973194804559655850317363617847631737824031215998325800038269695862714401982036102257785583361260928498068869811798786266179615791189332761003383661421531778071153870800183602123218261448934946373915014345766778234590625627022630988785016177154608844548394540775424534660059454363466513651985202247058399037151198152005729277863655012405345760293929292967408128671542347992101557588062815039504035996615234811937593854445475612543554184691419761335119529197646298960002906451315344493807087801335762928984901519894477975092800772190894657402942303783719207331912402748651439599111969305555947023698026615746395838721579329274964114339884511497316639190322413631600868908605245869222388455052921413762967235503531787993620662576698504768455997513754702652486151038729833320238883881181795149979387034744183924105729057963764561836339752256195670411667043797588120557661142628409030215860705610085702697573467778151077009117355946667859728214336697107363071406779269292327612809565004700269111820454955504864766893190341273568332055915578132918985221814457657640792187346223781312134032439580405793814928928166411169802230269820318890629751221805110380899243997090687250740105205600518044245514844031726686540609053884179083627199004034423033258757454424799937255470426011789449722517437981990352860283275466150922821467584711877160012236117086832643188874225310766317042984977175922870629176731834343046502489942704670025971478242063101848349679578512002043347646770227476626326362094578612607837892098216260193993844772066781919260459623283914827585512286488806062235365386946897073747709323515945556928763141450855998874454531111565370814642368008445847486447048184998746953905852268386951798962962343672058497332366029638004952152989366526245403967082887965199398200243956295416711374092472928564754948081908615712455085066435237263016423346194576350090168385066362061922738478949929530828210204937734562182355065725990818542994593524116332460048972430794449954031179407759587383807422457071910878086491610011980884924901326559198498520792271420387708538474966119152818658367112228309703565568834720093731458179603386126059037904492475894995751859380377524842644458826959300469874021283891701545038093737101654050134085303900107759290761355800429611941456011167827079503625826081813203410634960072542322054015462942167173891772698096107682795789803649603454746448520151880559540232556330543643346350809123203463556828152679549121634149542267697719082911007899398430124091933824989790469640904008943507310689072245964685093990005625324694179603289635715548248210143142547174611779006610602934990501115011612709769677975838466229202005201702491180219119344180810243023467428333258224231703088978051872886172246988710843856792676341146753902914505082415489012072688942444156774250607378726088655603698587530205234593022201040939878960230029961823580050844388368538794382713259299787375881957324002273075239740741592229186516511126588737699952056974518687263543507738382191576501539805943359694422726749061631336253493145152223759565755761284808908775686565694958729846261706312486957652596108666092851208873297789358219257038215577013158627257987369511367947356336701841867834838394459213732642994525822789131842609142282910675281995804729622714486539185369071755013031841076582117086216485064326710542259579595398964631092846183060509578201042515708884711115980084322975159654070108382865382353952333375812103510172317306985529457195483106322555221962118061073809822598184362310463236191539595933065900181705724747222285886375512102147614567836393384968416734723116318248246696671018983846568747736067186041560622693373076194032513636427737524085038063256560988514356322085899543104025845139915229532049873531237163556722509439106604050047671700667995808576362736079187846710227979348780