61863482841372903170775284763934428746654042719740860669269947199868032497836885077254431104059628512101899278870403539839070960829336378102579288983329197317973168457757604845282525607363351883777880567165477110984691861170795112564760253744161465492572087648464154704877073469944754471338285621376180188135827548231685474528342025966365435240945528847289235385878179127246360246458112157413626591232856764712714395439165988894789862960310813615204945164750971728194590185932644209775695019059045150571184864351733811374581246689643607239892813859462491275661224958096293671181729346122346138016276463747024188855665368430856608746639484206411474849067586908121117208567827892198662569495799653190278392255209458739806219317161476076239993592467553418798026946230055562286313162966758276734744496680266935221721385892109227944882253210816425872735114868604164960110748124006661671987015132196610089728854040172131776935259058419650523834161744353674960777424304487211850531454836688698853309672186244480243603681559077714847536408300391150513146167392362221119239774772518238987118700637042165156714340837447599391350721464537858115034594480106388214644912786499141753321213649656392056738587087774480775946316238493536237093293657413929764618889359656370474299136309185499311729542613992537338864882050809594385517842232333807875403883456463915634244616738341926386943969909886809613284490209617104247134864010845215082272997344039911868215551099848176077204685124549068383667205804817394417793556550005115499465423987085692564606738193322872749895390994405357773931211822192678205007699412015627697559238228392729137371867637980701476701642868173116046202917381654072215325094774354693995442563889760612207568997481350026469312088553512141913469723280216824689708629259966047333612999044921061512514203286656843274552235252352458177364808965505102248335210521608978607358942121726192667356686581539023089981796730621190983676078555340406687431331489195513369149383512585485305982139861269284358187534539566766562935969863862316437508336702225475291863822452554711666649729969447596179730737855443967186307940603595993725946436179771061672123121120514155844055789154063579760951075494251581153471959238395515514088669736723673872552045201287978388462111753233352204780156492102897050662400373378347459690301755661198236479128247365824456758362510797006202839134509366767228431100445957065733934736687315195654933662140430773902453888475637728984151738470474037449194522961900857535149200694098019745056092525617661128328521541572758305854682864430904876344210237938231094738864794091742255564858984984624912064291533955218580740723993217322654913461311095499533069125420563916141187596961497841403163441762068464425523166725076008267925725241558312045903421416157997564271433043644900317709177805534679193145833811206633810240431699270363322106594726466981830052853410728666201543782729462889956113528515497270783732740619993777581101767149876837149169778836596370252932422993384701706860638530288750258697181190712519897687710731541850031901467836485511495189179876291488579060916736517615746633890480513968149421273770039124926384809412913611443842351817651073287848103639741977860003491882919992581699465305691269934432077176913618641838709119605162473073413920804244448890680936245874551769993889537029684844492481921890922752864738577551946856224624376230680846069517873062307415663751827444462375373047203147551291331938152712135759077845854829111524426132456611589073488847446169707665184005552647257834474828983639917145516969193483268794475595554792103171392151561161759346637169432574907843288184253597220520234079443102739454509658512984365373147618629463968368464031463509383564041160350498538249676736972112225587934221493351284940007781242229033096382666220051533990057301642206438206179115961875297795829676601584767395724108451844351010172430579921354964839385404644605292859833611129904052397985695772581529066316454691011219981859186474556442433626734992895630593676796840933359759504402554317807481417667111847849292881849594499631416156413618650164957258928237494480571245376461554752112191420114373923064818355423181374020465892291949825501458744814875752510551733342678444708179233588172118018624477615716346943386026911814912028005423387761825991237851968982859756839184381119677210417743639518455065665297817751716805166274759356353289283319180069951182669519929338795065780362440912642543955752753746927020140421193637720734538478887333514191188174851308838251191617784146559607174154732719816814860085409241960149737256790116909801385427062357588848869305661584321520694770290593454282895583196615791026991340706707628839355425654411411790888710348498140182381052993672386904643984234878211467423634394000715698493174343235824968392238232029929331290124417447196615854956036295672123061491427490182953733887930633372350263139147460795476514744502046376046455472866790912326719756831572895579592396884049796886842118953261487212821307996270025639608018072625277633155555550119648302613418168078599650696457438471365733423918812765897084169857516295604433114718490976043946197179682298659172470957584373404990975206357447212168673048238780301382646255969488823018645669249731361831477995560169912381885149687889112905101677226019059707817485648580584195071268634523163101896587692551134209140523967114164635001175569031612792787094598768487695739994453069496636650727391459569096839688962081522412999064231855012722492492206480959434411333578252334108883696428994859134517055508454305572130145943410331788938365705384396883058211353314681021515907458754952645921458775298178048262310613881402252343787855351690354836566027534913354219896869423289861165423140171216469813700385583986818330501958674926094141400476842945952462152779841052065882458597114065500346567943666063412692576518564911957842387261848861626062