570417852957516873433551130662848724039236985081781555714279473785859537565648540216331846438203176476772518396134872671823313799583863404070809465786406876610499516916105234112937954485199181007531843795202082602232549569619560044484108259979596622897635891524232596292944943994841859425833499012277310283462132852818076098099303112932471792180213072617152458374663763091485798215734858660242381134774395064718392453566591979525450775996830520467035913557459421556183045723299738420079125724648407298570011122920847921619817160475515528341986319118068904826636144943042808144795087285847446366659526311814830839760524068156359032141454925478412805865341695317996390849583421851411728865824602276211073657957862791488273202774154411086821691881545256355867661943186953193132484340868358859399546229351114306934956877825567243891205457761823880868851069909302214962421894438585447338239281046433473655763839218495983959075484580716704355430376884537795457367731037492772245513447209437209587487909445941307543248273488376745961712825447982682296703458943155698828235772398849911685983963235945625902625468618762823363302767354459023493608815545452665529466436254633577537859228266951621897858921875892700094461957675427097940463082864431783196077123049267232842771803078812336556289545729334585519994044781833807956475047689035555123483695830885758763711338233811593078125914219446161524248853130429471440729642643217276250441823603962856165976197603022219092006595627610284037854574467014276202718145234267108466259771724768386117809843897812228407436812796159587177109163409837603590602007825223229473298033841966621283667294849838763759116582269938830424116101553688326926440329331893059269123591131993464435448871600747265557283650204278818385944357384843778231570195638784766568835207210211914924306190633273425734442473999182273642188363841538586703880947693738018137976464826623032083194680871989881569082005818188463202390943819947821101512106269163777058764287254875203252480161518395298094016961318045768343511982587938910802771161450381060224893638445427054910946445296766893594313371727706475085162125332470895797030927623099404707096396391248899028056514261090493927935682958079310884103867763215598665157084565730668972897428299120399724052522132733549027807027699823244893924705409979503567919234092930215468346169635209646065057940665644288094965169081393898570538579766578184402310294586376669276221119866689203859749639085734571737108740901256456028036530215659190445135977844520186507570487088906445492289796505522242686002889921369782442858655845761081561774732071483811624180982687191619061353933187482454264585990247123079362222614992577926128348440593886361046240282397969762434976744825526399542294480518428230611532431750910345482314084696264127581950641835483571462076826860178061609364930131224230519032488218398015817462820664742906844555248033429401951151410744334135830497062123524507789391515546736464884163553297572050503326889811813192491112738066783391625485404943564534046619902468768740731387901905800336622506360319602791531473195295101895197654180160091975896546731454325148731009796499659004717969832674176677726223487692532349846856888706838558163643862771996694055859417751636391801430239975461912381898819554877240130355927339866690957576441617931788209413888335409847715720691495861647926409414376190495803816974421556409111487313588940025625487296291759036535345488999426378537637912148023846336724192598675426373312446995615419227694125295933810853495734932942525027850946114796956928416220947434199815311640167260707963441725437619859625350456832634381206144738497365531265948536177434738987964372979856561012654776123660349396132272878496595359374888316468959123562537918793231427446956762130163868617756594751924022525016731274908514371215326280083687630764443255602396118155906979466130546765249516387780678005446193498914714551646749328536579946077222784384333700898561691304023714425273744584217667378398882685662984784919986279780184586801672268035267248831916410739062375433785649942909543959411451292675940165577793124991194990029153587422053925121913778557095372361750123176438837581148475853487391671791462501971739958638976992879462469437267909019969874655480257766787640998231931428846642225861869755162179777261048177189452041236296907023649579527362601543152986373967233842932264588726329694616237716002760411545923079344855527293080718620373049322389253416842136842207298121847504695118064578861155992089930071744355636206799387933789612434431568224322838962087065874983770925945975227819473888158702708290189749236736750895919681178711508386630820347219904394129962896677111353218136760748867743321899403075279690271144965018367188851542792666962878593793464134418181892426672082089875608733823576681760823797264727915759018531523150321734153444052840164811501784459073704515939266101186988094627301944641282915379127469653106094692077403318609029242997594943415611977959885143843534633134774814047026111715489335608593233283747493537633287891726546062737111099692163782647683381219529326888116915379524690366824172435474648641754410761324644221111478839951135057126101316309727601183978153532915764945509973722198582153545669257997958035923128044183337568883165788609176477055262824545503632174386163461648330352486875535548271662441415980446452767152028499747600259731817862356771892308359400128021164853071095357154627714969623299769300729165409515148726264606742373171143582986399478495883215834407189764231686611633596787168751954944631771239363469399435932846452374755976354511217710362834469532157271612741981242345542427143287917475121773688000105179931348290636019912987287241932854532447968333860835586607970735911383135194348818411483972592993207435893888541253583210110988477675528895994462513061053646399851588785293589468966415795989671584023445408142191784670526255581012