870147078482943661638335826750204957848841381915253748139349138890279306363779346691953806323891457013831840866920561575376904767317253387256029426936483826718825338254463551170273193225172635345463164712431225456410719832855819674551834445722731604549988283516491298606160318333470129760957587659746054809768107621167867668299292878293783205170519945357512025301755594998752042315905696017758471699882878463151637948224327203033336727541185405240631051799038143347793995903730913544131199102791562594653321998594915171714158765273881520112727873862976724103131338137545046578189819284592371713569911275117056654464675536046213585770930794068107627703868101596786930663775676126391541154220490332416713251211635213266741573713477031795897716928977240456670252453582261003632527589426064790968496018411461034034593638331915944279672993887307562388954512287781303370040915440396618847320416416683890185789273233386099693959288475696320959311663592800141416997170645194179334694043923792949535865619774732063457975051574702953768462343107062554684898904259094341666779453921329128634096527403964182209984824933272332453139022899105372231717404382079117822622167956727712824846608914082194007891288982936253569516653924852656034811982870132584095579557079678733770173651259810480212167281687128215397477735387581998286038734885515224441631691835228397753966954012246792633820333258614210525135073477559325010235428381469192153213135513380935721326016298984599472627889712510829121208013314953576117118224606463603370292965876149324912871264111563733199391586132651074587424632318743151853657507056196076819106932307768847132355395217284259613834843609883434744832935664931213644874818864201130717339356592861499907148166873151309462937434545866408788992577697522836682607688226086344711872635565221551237627613595628909367856177380678780582468648972754336449176888163900155464598519974585151642783871080342356769747513098183583956004355238895152819685278976519644017492599103096538082736364237255395372304465767228957697850426401348722897587636218252295567762542115154151077340317579759218490693732712091252425156785787437246394854437137532354004404442558190445450645814664092700573894231674765504898600193358311787232512566286414637226355335824102638356238980568687122330387929480359996102869872591313996133592149606548313639237459049995307212233970333729441693422536439633200543322271620537242264179145468778378105580047357636428301228912831316423255315998128375312577385753550168712322779291599092629945251754316525948190898054407535913753906640396773599282846603417018119680456867710850681186591292572905600230288625576757548987794268440335747931229848915473817167539785595349687866234037660536228376221114574568974756937552673941592727919790361049313482935351740365054650156942780276836956889538544108224027074566383512625926816535497876155590221587047512429464588959268045005831278012614189770195977342384304488907952969892129528735171654442487782971246618219188298052778433730535160965735679848377550431956653900049796125786299958896227794959822277474990777989886238328664105288192107424988877417263257759300552725857446158144241012108584574779762252334249656635605631405280835910949257546612467859320086141867436643390269143825538367290600229616780609712902630367494615715749682097441488128337534762235245178741315210395756584777064226782935691325601627867175033694560429139306841888978285055499992550787324476472288995605772209384959256574949788616249840137489049269210350604480108664688671284868674872099504753863043130553285933748118729869839123672157106974815596475745549621735131283879484695637643422211213122612411942719150060134659147048159037655462945824215652517871314523562959198668681114490891298539389367420201148973180275417355171583621786579995420413618946773465275533992229451988948583297658596521403632672825591895882861579815171609322461242788673595921058265271724961755336241456038953528263010235060717554583134517396647993751424627913859568717494157809510273506771558867233601784084648375684882471323574737249266665952181017141334769916266854448377634231040482762320099883492114519081060153873306115905906899687380196013996044601460683555853750879511184548723429390230219843498789143426073169670755321135184527074909736217623953888382112458222427653896071445850847571337058691691235070533622149345374924541675784917797790314525019934855004565979122858832652412418636788885687046341891131366819546577948978677809783351859016362389955466151142704077776140609491754510623794014590449146079463257661007647571926877256626175371975982428403950651039916168019446593108034284782829555353927138951964631868654908329467152553220074739321053503781321546753297325535218686673489934986153251745967963531977129284143154674934412832174838336567843352719192646183999859802045824710987300725530881389706718202191873278717811425867532396969830232831963028944213202953120223118671772120317045319245152207816411352940244095066695220863572522949476368016327194717136633328289446993087355734290532506499518878906554804434865468895191699062308143868570646175916374363370653323305887858364355422014459453619163435890855069441669826935295833721289170827926466073337095152225552762182161489823143437198953525918391291601875787756893110062707379587224797828831971906135526219171375996752561591540383870984802505931932803482566461554640655629988388856867537275176688968932353188928879085915920376921297106574637887721488203576433528755260298656991404651589956915000569168935212769071997223400883685881461690875611846819737352075798421485380870295453002345345542791582013494052241163642583110888976312231151469792362454537225556669475776312180428836526830434876882539487537896817543655461368854729485157465728691766231452377938304539704758447129188583745437776991499469501539918186150974028585173225185619725837129350631373528025687314727738068989278