678189654869525889509306230041739530544521586710874541635294898136363366682427042624831228993030229348485725379750724897760093675978375870734799639790374395432900380491012916377848747108602824182404756993769411930333833077840355233535683199929429146784366895945907998824275143886406051151476415528936191501755127423123460250370083092379120997097228830788264505723413676596973983465914832661724093436965165857278723358778758246252145032567452450303097972976736204739930784052845083985383288657434815391851442818515744425368879521392247407842250288682823492108995933361404498640378778310253842645319077303740837556405579575493858739307779345748440917324942258400816022182417372783601629350989183527121754186272529513955107537843813778403180494323354461986337581541333519828837566659196446422233393694647464435037171772572934344817692167925071979584610565896254146261597671706935653974690078798430876465061165720663178943814139367922887414927932876794124648156284235713922312838815667251197034076714958177697329235200352776032893968551080253922126487330057496795798654774364817723922707140885401596464606523236391489985138429651143082360838605290259082762048547238385888530217144006987371377077442720201712662458642866818153226773210432215384460062763296542679423284280520927892414360187259521625781594699624595646693372903551438927596264267317608638593185613527389673718507405394736429314213887764557138602991297779863183516616238046363152477930979112486595608073337182884128864553477923833664561713373615405037140913292794661194952536174957883181605548132724282201918152636386527380627947886886089416735367475019567769467166291688605290294673854480316517253102147493948714556656837717778921631859480336942230402249484780585693564114349255542356192078980947698163844798997322318366164188238934335608446412465774797939982838906064281453683333379688779191328252898691943441814253057555660892509209251903467898891447448220816763862866529066793446447722308367806270583008824239161555243247955616410345240236569252349495111295317476089600644044833716570779453930081237462618951615363320236687597159814890353294764740579484240154280804503807129604679379315727023942682092415843888643215294814841713610827409281446349678036186697838695844739100381723633186746495837378081175795225088029187524647521495611442574329358815937207239548212855303050744699455873576350653976261543248646347822530463699508452525375526431792847757251240869068671757502226152628182334060795020447375969215242228935152701092482373769377702307475384598729465884433775162431761060682945232400312914417206901504773881452986571907673635951582472889554584814466827215694583764738794458211966122948966959002021869315790394675680483821811490834858202611781257430745929386467932817788750474798179142815151886485126228102456885854065530434441585783430985421406030431643593813822175335518039123426728116677944819054534285283273610912987375257525749665827894991429539921644875380225321257550492697245174093482628394320993318370576333030424877405712621840310859412517933307485976501990895434103612032243541623437167955962670713351860882610086389689815871142666819540260695842681929028827186985103645365683447852946556818385294599383700873748004439777839030279151237947866152151690784726605673131291442255143883654701936683763478946232938564170465586437196652132224138462015534277760869886955290583933553181671655618386441841444936592099421352959035437085906292760192286563897323548718567573478321888600136949578028372398267035907953463181338669758292539526371106722628758286831891274126134142271962796910195999449410819908047940011816037025403445705361822387152688520156070708093156775297345521553614482240861140056371790663418685252822031538563147962453803441848219204571776323956836988298932139921728428908934990173853725121638456925328937249513287498768007203157052147443772294949883453583902912844957264824447673497120834685790021492559169361756362479582069767395243129085308590594132876842632704964660995793158704985359583388752212246750163146952176835375725182659103535991019714753456465985599971356534686582941007259131394631083408634883056315241631066471688069196784851994494443429371732935712695154599263973102197729663705665322790007825898789514762579826338174392146718319128778001057149735946024137733761294417381162232889021401240981077968949784223643577355641171608212491831070501694434781588425914979264622513710367140823886872254343664551612550999186630049704636306766957700854336128230589416374939338228566730674435476506186992245322043282977392283816294989298528947198283784178974431327861685894109782165978312132767639683052847284678918324939201913787684169379682459815817653981250313847025773736907636813369373395104897339226721617777674762546737080748773789166750336081660163845744386204316882274844676296483421936577858855175826950615484595544544235625913997292975378505232589823792636812663673902308073855395165222019587293712329893568781272901680255399436132173268523541808755423386234792552881458065868000600652666083131507752627637262211742931542446831693331474584310455575390138129907901384457167896744298925146878488026958922751344531441724418318151777878818409132693034009151749379318994869601563913348283903453542873321102020312351438267761174602577742374227891218085490768337923614129368569562664513169902356021568201556683186896361698587532185212653464761543062296445726526428675962885512881884642298671730689729414944223442467911328297700369898313056774425126856395896993135390058525661482339019278327317923588989651211868871626478273331980829988532745896412519538036554960903946182177375308617562444588261766792510084951500699324421992521321891153056404411150698429292203505769357699550886522162913362916164392334028565462964514798338847117234483687183472402521624127764097971267739616062510813553349385406542781698925963910779154291497112375826120574735602