666317136493104572111814734434261522633647513992180948895424466895294683573704431549825335486514876341387064573904220179203492313480299911137842252234633302834831286950391795592848192656689905750858507282738471015568154407788129048779143029175352698779934732815803867227167890236864021101866100797361353869341322833971344162668529965321340647233611914026182882163339766011417913767373529677438616174902394297472414884834835617879740101932676210751693874765653405598474448785885598010609032728238489570642771485734496315236550095463580719847410595293385724943776579339704972004226120224658668386697151187976345940165687746772482189129211568434962875843877210986691949361399068299111760724692133886847917755444784608279477191881707947447288773942735161348021843200564165947163480148701418020766803386337472712795510272521524470092828673335427408986123540737023770126801534256436909059997437524166231820838319268994653272686511985702416968743191302939198005599363655021368295927345030127905316192799689233055951521231965781596304806943975381687164025128126399922944999161896778546631993011105757326031415765845618126973437384061794994514032813980156577347705955484978918278286335095228395241393462310363970449875690176352857370678385486932043725524846231903408204297349670696375643023611494037921174707422348225459505931830635880259612299768131242566506651961766591622617464334923699677034333953192573293848820403210427820825494119258567464475658292887267268517466996415810357931536880040709581843489177543217159355824583485327565223829677440761074684436708040644513874973064585472169582065457503505968917088758676382194465421315443930595748054040967456229529508530181394524781227824745129943050762136574046901378624523487549774478380833761293234731398621255982558738331078254576415613374028410934517369940759681817919996823225088848962249401190372110939151930215614782647501385817761344184576942797026009809188682493541643064863973692203315589436828895630618692797584824726435822437235829496909988748899344605866843449070495624548097155968398337191141087967727404578236762017934242280109602245146048609534778821975831240858213807757811254346152217329686166863301572296251819898896973988416484726559854216940323124853629023513758491436443632454325791066106732192661119483604324226235556611916291761450744211528442274918950045592154124793176453185315248679539196480106341178252136387160613366171896687283548800327274803281256684046382386584995426245474527383016558230998812969333326776392086087434218514705343921718293261316584637324824445089647424953624253007741523905355621483669031819880219764928710889344118951385444718616319577107835731498542362315822463190115931567402937564303040156998760346578787425176413706645234702357455476502541212401907157723240113052278129663257894499769927525536908094902007878058012897393756615239292485745216486788211760538544548535557464267863586673133410967093741368582614535413827424118219980714639058727614868321195530936417377425853758817395201464346954746188725457077966226977646616518439363903423385072172531867616338421377549834507188526695630275951788939974387916464772751263428454668635099547161356448984737526417858189844812562323582377624568627758919905636285936453679947294368401402346349505382919326437862300687256795656403584135726339253987279777077784473418644454022835720111846307125533530613114540285825368693692944004241186625827383735682377471929640526685174060593475812237457995734446920303277930972117986102734455434123818275744699285467866581716748129233962665447538247406466734442143393911053533077750536180704799998057417989109978261822273654465879036468250205596783524925510787882491949583519329393928789889886864216709775098387227268070692597676654218233723123181349280280392602808966410726038682782449675096625438132272213487913975407755423871996136713879335163227675498805365271836117947500541832698777798864648764326673374647937219135806284806877041069808321882960440992963162807718274418225846181153533805755770426681630978179135740915833504814594615788181962414559316173539670369785919660554819967656749466341781819306189759244049608316163168853927343019815771936499030553386308470344019716383735069902320198544471012511398576825652781377543952636101190439461943100509737623763419154961196422146439485797990070005370405414461340164514713511139598679861683980371058344562708113242683332726308896908160739953131494634984766645217868659355223116674078321698567782925696232211036223917291383221752285599437593414652811847114736250514748320476445817219220129731133339273341636773389936350444991425075693794575981532016885877989814241372921870607721091404600332569346521827972258600473316349692312935035126585620886788859299965977961898702883994661165751893433793996601276593942174296268919813357975071993485582386361519816549328971481845511673361845482378523566093522122924843219241757157397558253212406080792947828863909526463481745043448684119468881878430583674101175722822689969117125026838539566077857362572962476531558709539116837266116166414608294556929645481668738647564668257773201923192438343154896126258459373068201807789459464192879089902154949445847194298410528566205801955162566287850429112354395842641194133354381492856443039471106319241946873448406455359735036117392497950934151993640924617967241928897482984375487929692382526202998633761133432490365122682761592855113459141482149169177359589272672755204175917196609895164608445985926471118871722336249647727432115827581744990376437924880134392809369246577042301844826096834285431244006344362881250408761198452934962548935590487078706336677090774618163579301512571409881822643663836502771730038804853380076802993653094870960373416975836610598994476680218270846552393351286399124693064050501033155445215474273633191146493155624166314289303964906987658028957692874153340603214067112820430707596795913308456115698376