36869587848962956218549140511577443865546728997527359172683991726855994987524524258735744257155140479461736309500042606275252662779739711486354136441876960043218920055069326705293773719582136191251326245845089423013413757115019507716368910753302699072449430856121006111284883299300443413491653854352243000909069075154501415965615110360829699530654012829893495063687899880491505955355745099172189781487356210924104749692367267732366457587700925635548199738942407494461599896278773643214314174185446430248424958232812899125258827518242884325757524835790097711362726625768977862455029585633386712863206079731408343596460853246552440775248320388521728691954902796433140810478182274177050898687242938168992115964374021867528781776462603507280039730752374459317368699738299006301494187957997643491373928813804329053368674613159882236429531804543113685656297989832811534894647189432394164924832559878523736691147879615722226080236269813056379224723453647179622489965582187411662511198731741422207526438206741334112184814378350138204221761669014283024127319247565906198522072107970625875678888378779355961739006682443099307811388252661735694558550564902251182111001321928499789311935340640508394227967871556018532528132795862631308303327834798666405440268849569250102717492393678379097804095262591771059113364094671314746037058611036714764077555365619762333584573693936280661857121134461999781716538567232916485063016694320712425521449329641471458189739594188283642859430825814177585357495644757961124788103238892792797431078309943274256955117115995684502735945858188986603164049465772720016979806153361647965536732664066690267372722267965574569358922887839394454699224515249665595814752516448368193771230964471356947678079759371688035758194858581103752244751013543537762859619797782704578696177533245977919855768121244531248645898812513412343715952875143286938064720565370766136895284133856478252652714594773960631037369895789255812791592319418054801626919989749175438813009523650745047873863442026618375212864152937326336827127437125815941895953911395517056042725127260341949689192413224304891280981638442028584889266634804328246168434346289229821085499242667959676511774969412690674844463778771894149462591246443486370861715509375971295354621388472709495254188319500729234255415202625258787001718055846556139083408915566477609371764120763360177230604860635088221942801426642936864289248913358407467607739199342422199852153641351063017992068053965433358422115946201906730951507001556144865927291897441447688279613928322718329733347650615196084309072423615720625375966607121869881451217212025418911737386847639453742951330254924513241725182819239496053388323754242744591538188749036915913321097143823630548339155392034578759719894315548339167109252271556738141411676822825377317832644106339847328228567307451453481567678777995597757972771199455309137615803496990950587681431901725024152955797043076798135210817376591971216168767110856793579757924206374612969055813920195935008150592232097947951684608987756423343336488795125895439097382810341393628192135953677587595641380398453185998018587657382844361652914161674855363580759735826195303462832484152746973655325019182229405017158407553937721412433455770815897351126683231384154069824419117863828787647723331599292952337498388805991872448361212189419006894165691506829177443767787206785878897880071727600159691085218813570233915505030328887961545699166374256761357891262787767611505800902027103766101167844255515195668873983560037482994885635273472095404799829063641936961831205753964889377798601282661030474780121823004599530882919541247539833852030782995396576488128735827638364665283383905137833866975385316510416266734620576026284272376055148234720366908189660538393466661920950756165213660329273066966936319705666371713478405439066142461308753447019406040697782435135298788531863631172005895673463323390071973813203194382213894193663932254464184416152842824619919414060958480758582742267340293499586137914407171246467836424617422032652783409469695786405577863149383207964276139745058607457132432148214780874479853229651803810058888301933144411747582456333095222910173776704069769833516114031089573190844968878577156741829566906885013761570970972573834761767161911594853525535497754985524074898685129786479898891388225982525214304553889537630398888834298395811676519412816712818934438367397743210595878590254331176301855695187855146386958781970861326715827472547263258962740731109031824479851654871346178824989506553780273795600569648505181663535022526635572836136337246634565445953238787311842477109064889850825719242336897560867815471526402315975560312185232421839531837496123810782775266189441716211457613879692634727439148988498729334723583232390499387786226489216398735772529711982802315909550889856653989545493344731541039180183736819725896710519772933580163137841342030165239548582362820259414815109674858256471443389120007354379014604053903242476186373142955019378454037857922505278214119180927369316545752112561863994208233811404036844093585305720951673181655129829165494022825953208246128175689231834926028205550278922924171928128139757948926018425042237686822355518772065884693344381062453742287963920735558706443659934102469339423201632706773763740334764912967357611867454751341657226099866449495179685913437043980355439936863559791678472691454781198161525457155752331841644551234258721343853468064985793182002231996289140627202520561374869655226752307758115356871676725064683324246456581263329742172831694365721313901743153449666746494148699959480496577745703623566151323722961549034698856604911847283146592216606910891629145227864243200177467767365475168622178589852229578132620415393185929230480355677444440332695684886194428117803349337043962187654265525044440882083750498714129411601140410717842191551505081083626364033248952245956893197421517737090173748734834666786167358244498607987745