676154721896915022197639342417299144298341821382648767669964928362188422736195036128840023992136467667818333420153695837484161333440230248745563185630214839619838465783478111939088701462411651557872778047826967469237740301030891749348631302316721622704892406416688995760561072727057185458529226691232925022925830081639579143215065574197346876641182261194232874016328735881069655680804556093665637585085063994575171681601680319209255315864365629370180688436667949662678198854316512212100242044854515352797551158298627378811619079705369216019910571615795258735343732483400587626595212861171489637898462285898246641110704295160497161217649423672653112974100760309208096879119029710711681419049450952166042900970518039550350317130984684291038822776869042459984614239552860418885063719341651293510092423358297823502082965110629272755367262916609253914569786502828671138621377011105523818898797684946522422037523157419619046553421517147530395017039984194968284617542738548574536361313075793731513287974958694133951427283559913577834373549702774844576502620783724374918527753113793984946688419333155438091481276874567140177015678486278525036648061063061376490709225817166285674242468857806341116756835692186031613946164041928039524050034433400819514915877790597364104164327721967579983368746703557983436998123450599177479243331314483878237365840594346903497950012506350588090613926603024584124315377663959818283989842162298425878453077505594951575416420696652777441825792904183982288426790441376195883640565476278189170837715794863271712833695151158476537881872767132074962824859999731943116615448130896458467490720566722178280115000430196669550669653011245955359746758789242639810716023061904519391078558802831815945625061269415407951798293819131651365742735927477689247814881462721312287343357178478825384910081339544838422547623031675468704823158238292432755717368762494393826857279409774199175972017925851403093015195475930015319462097910785329391199769237043495476838332896141203118164293515294042112517790585769564353866364630254182195170839571591478920853523237318370606332938961796055687237349026221084082828191891138938188024907096171483637691264964242675553110035604350200478912830921132142940705423945053732987707406845143318206808324845859869926450387927691694810176993016254072227427452358771974930688896114575841732126161947788554720113586852139422872623116318536709274791017688347281692915571291895161628803787426337524130626927581525238516638354214425834625877753946338944361913227836740165670537964175275363686311804779084072181652863241434011336280622698388602463551824396579391110365386776535227168522062541199662872714622192130036297917807662755047843080779344593662234193228820366439277050004645940966209792279989985809669078813906775152879882433974486359942808225162073683608146479953872235934846848857505713962481839270477227956066831811182290163155671674371346809630814055688340684572662010857401636057081508957389088839616637675057275410730405716534934845887748537313656823865337924459755610334412983136856531425511194041151453143069298677254393752726504892325183734831112791059917510747636147980325916141173568491042812987199067328465443919803880813827085164456667364292557374807480929165927974380662274379064605158674422563644128239174207289512094151045441591202799392455298447233858459687477662007614192697293887835251293052241995436882218797647186352294254385628561628154901748152088108429534776596492704997031507224138971575563656610505478158586414302747299426886637324307169859084211064975962573082134055661598327587621216562553597414586031372836134835608475965788410386227627599842911206686674792595520711851736349270682188260585246586435353671392356314549008031849678257730532685072647314566381638595694662709648878046889353392644292803828844197410140251627409768921516558920192488386823174662514158299349605222477998496892388827441729823649041529818428563861590086180827191554473215429097422708578261187945264766228662563153901178613394552392652243707828984706520934149574647197551185802258378681152511942596011512958283906330781903875785722792407290286779802430822934960022262717874828726621997132671765074308636885547841107941988287711650143362286268313094231114493014931688149923299354212418604378224689928427171971418632092229553663693678509473649044338569641619822055591848586568937137706492877538768296965871954699863604313831786351114957187767833751197134440798841598221643444091723485569294028109834949327795183888322932518653881890977074110107645176837600762037309011180175941354229352621661628276499758759887988156982507980256574894961609516541147066921653874477223244368354633089595177333779518464186863362254172349324222358691702505757052767041815568666669060381737524560573291788312870149401593190430196280331052363394560337131883372926948742254321452729701223921087136463384754225525140474516141553768413975552694666688956167281204494442839383659538687217653470008212789567188972155851951533992195960019764073977261448992765468789031625092527721545253169185466953163442078450441991682943551884293426064005068290178438308673885964806135926585285527909253031495498072505453287252473824348953252976868281687394968081487181169881444832489841281367407002504142726057179413284593931498765988659567259429147326400132551255916903230284280517151752622671695517695511296554339315911872317182994591618132486101474043112298635163563636872199455147598215429595815594957994788203998739997957635556043467989792840763585119617483794014307698335914938826106707198279311559452130896820392190204574113361696744254945510937644111492658761715652530828753967197614498602331866444583382811658487178216744481566663796741038893698812176422402619516097871840097716734183773137183446251751431304021834646822265026434634654312082473832396364415609580513509201097647813234862768071689417722127971886586443224908103549581891675356021492304