5827849823933503515299709708821785294384064453368082094944574513942472325532698834197639669417363829768071657212857896864443296573931930247870569869861012102469089919462569009618127249917679689959052318386097140525362747616900670431833235794178219015289163377479867320984389406348001063820887037804351939290447224487621698365606888358844449887022393747235854523126283368261013791806512941652794246988505203809995432606958784342199308795592101331611169213030139916619180697524701439135686919223743284533804870962190825502238029370892871526882759129861064308392726841704894685104572254377383908703722423664728723014892163452563723876858442726934127635498390931322166631772488221478901656783547236934867887168965873175338472154276329387929986940517847768694197264339793216994431446823613606468340763751426624955690439595564691639958254441249502567370182695428560531462984937098800562845304450767577682207327153083171742907961976255594877386293612924693721756581742927978619648296709599144159586305929418321401156597679403580783163479202262461116032448403283142661935206284221392157797584718893887135152442671593463350385545133714712665028779463038511825811677406898803905438958882003879748217483723207110973760307136911434451179529141170778435575697356087137998103772889149153818595746644515212077279425422496520846469437808933145972657283512116529931159022945192898921490604744717808335947623184887851429748857312176327875895032456951721871904154315462673159237235617090661865636747039841170594731124503774925229921790297871965695273439564619686893129655674591189459059504397321970717726144288847818723850413486488566029010686770704692842231847572313421409191229213773919537203539052313855651057353679715719137001736209233388414863079052543796340799836616413878491016865654799407775577069979359862213787119431195651358272478528652346045753393123416445689851994411798860115293782594035299778491484231870827847884575873856206665040541911781588757254816468376549916389933758407230491357572864954962929142238864642632173176246726556656221968911426014191495296939891580067473383388971594798817375146939249421647471002744734588386060071629411454842639072505466844608962358183435404855889706886589352572281478815492547958579632474388458716667504925365619150162129219639566920802705273280794711888959899222803676197465298724819261810588217021446363440706318715593861983152107955981192960748496854254102580572627684885237364700319502304837340363498755639883896150793406104442071958960484410244921424460840902499392399370303108706706815572992564349786902648288172092566474098578212346894166301673331184442440321722833967880811320930764752675368894471026496594480138491581988727128836225320055539158426361595031348752323142256140015559128153657053026780879861196130250697136761562657823827590474968220637882435149146933124034572063333970940171708408036752098971163342170214245384450582162272513187139184315045393699486028856000516378747930872034653301306026539705221495873563227716126323373569866476737452777999891341150734659832999374966873393977145521091344621559843148998113551988368352760754325610297443429477254413894886716830326781457841509131272985316732648035548249982140836609067969321498192387798014238229315991036511507291971976477844423162070997120561681865027857208222546602892357788258875542359598459115012319947240438006171659523765461114210797861565224971271073824284612424574219551155807652863322989878177917363369773834936713415339912099443619854593165755359147177111167369222163543336216330676935607020962570160770732578395585628892334838272071311812107629510413868552643492850303493354910289963473896584185898768974670583969728493697595939417395548616987875614421330535317306199154251776998846708289844567421003495857584669544124699448116584887068341551397676033229844830419490272649416790951783995223269317931621364220533961840692396689702564607279901041967381135967631963302127221530925861645656336751830894245467977950791788624296634182401862476915538458649175008813743443189360476146674662554854541735779389955704907382065536944872316391123929992033811197445830964654700778837167224072131263507791927547993459843552057390506097152191397565846765843286696659923401668116476079248301855434583331963097525291276217793198221485466104505878956260563470603223703213252671156363169923500642153195094976337358201335854318372374397123084831239996989858378119749855582713398623376557546720776766382285545218463218277353275711202681715178526135160939550801961850448849105903783592166723072467441825647321258948877801400299755821886435265482763321634356453063119290607454171733770348362419873338118738066466642470612695801638328825022386925627477852161427835633230653463634384925696728922339946214796404510402466172222668664645931029941163462933552328721316519372946050129831997879364298943504527294903280688457489784406196592613996981793191161165657816385611779798273279778381022778132047551963327568697965134662627953698503422143252721913820436739676435241057649877397512931460293308844967852826644131845818910042416001473019845430444270584972541677383944318118309153536615139393476125755190243639511289759994892231239706446017289522900432073822907281656527893689727911993358189632089009301304153165441795013674603504806415037806667022598645167492136233320314662757133155485716871349120067936188754894904493514787795985270346455436278126842593539489282830534374745325729233003825667639036831390508540846167660606637757150269966266784218841359216836315104944919469771254567862185196618116171684906256427189650491353987978199396396727419434026736853616644877417897837115283582910442021285341233483578533916107784129068949563784022252596778936956339085527495425044479653438745907857256111318868746227868903195048694319127756859640482632758988741431905744822898324735437292937537402249803437682459197937329886032240959915371