41904539868138554167915051346540593187641131921656373278016297824331957961492893432210167053114466236999012497520652649673232648462398011325529086478595769234382278278954535435712238316652299739762684146688328289799974200245751336652862474770529663797404381179445787658804894408935436903887323348631605246542574936718695119407355831704413872892387495874128953607995079368307585554791068790631764056089481234987457806010726810513657016930246352514593133701405677034732368477415881268926435871344836102247851333861945515215891596745447472386265952328390708671395728170886852769396974220387487890892418860780768064623715960745790644592949281890937686757647885777717694019302961314238371011585565701129181113699411759985314959234312026789445954752791786914624888313016602506498302785212227419933560958457187111877179053592404673969365332649581293277444628934540708847298577300853224596628833097249487722857684436665204198759036634949522573979375921164817244136922708783404226973517182909593891263643781256778327085894896250637812794402579070682643433723903396158026964467178699977874141494171213530472188709318929399426226789651527258270915213091103074805696225828539149615846561992254456441252835411731986760319454618925753740218699429728880294769021986464257516829631762514753789055353711130132481278920088423351469660626860714087485320495380910570624417433972282317339964349780012124928873459417680780434321673967614288315724120006928277262545093867611415128999780605134051630724041579171802729244739342303933588752965236527068622914068794442262065008737410018502477677246623593192347800745892664523486759012355116961352056607644549714865555886107393139570919968500350814819074633888644966582741278937028510329918559426692974081839660372771276576127592086452925969758372646640170792239577822955847788587218038002535545687425958877891577874646412533189977461505612490031496098469592115226485693069771560417858984304887634747626768395358841486506998291645629556334626591179900182041046135032111528670901391622121467628124956010524465105388425577229158974117708565718415281958714022401406129265206809471831252096493247642133662019790367895964441831820284214576171232846417361273161643194632454842826275498166635934148185047916477773379132108285864188674336996604315194368599208155167216563619645238028847091459076958292084871122567010436984201654135466037741973337478959191978945468905920138757282237587647716035199970719861012109833638654220785368504832872042979435165913781194286339617064948487425615425563876826546973384411969821854765070881392453148565787280435802374287258093339266964744357285894784349356319299393278568402584084772895186022745406741746955519766029358718422818312668945945299485051017617271174535010963899739165821381280934284209716977613454599251256351662516831616768788336099903299381971681391863377818367394697354146558303763297351179494336750118421993456684248772412121285167319094114355533195756224931645345748128981864804165155328852580550177377984346217834890700990788347803956759793161252985678846718345903566398742849035855076915687697331681216105132521930419515926919663298817555552012225474675806222789956648330399881076781681679646789787596852369734697290074205886739717684399276474456536411953403963206551041907729349231892103624269560716178999828345330137740256961416714966252559362750979094220272111233221528548339113973344829989766672472173343281595664610151319733234526602344818751521974676622849004270891629719802714889421655233641330480333800705447379014239754358790395752716795959072102267324894141397253542085902683193613122368503223888861417620414505021523375863143260837545001351383681908451681725513993901354553200341530773925940910189283886370245858393186047758750792161223374392456066948615821643377325402191952461136564628270029683209811645029935776047637220592865411190972055897639251075297134259624346160103724438410467851141929516858962363483871481562241924323821732557955952321594275664356231753154234186479118633058483557785877314415758641273104451878168972842615968938202981992457371144059071829291248209279133675265511686506782427881605788467521455817157757395886405593940883237223046431254651740933993616245575341443611259653830363069812800614286593604927285528774924771420902759554712893887388460786535070741143379958929279996038855442967761229083164610681316746975314235983228297684475523839642145415608436638081195166784888868962655974388983773529760514828434072734362561621787948061072287084754411216886781779396856324350847775904775856886723158518217712961449882723337983776642107815446136529622774668825517613600370659381083334062299065838647738874312961458517625038870062821546444366925197665400782672275012109738939565890629057354571539283031945750814605519240781611806256752088940643944819963647921207050944971545651586725394340028463195667026952246090209263673380067867154336986849565240122856909314464993909467774856936868852990364064453353514894484967127705725317624582674049738714039962602527840414629987278057114881351651438114610659606397742761359845356535558211983868188823644479162203685369354818536230842083400544096322726823416143578758894588538712375667946388546856219357338989625026649328547928581970993374671431796280169274329925779268835846731081779643908365517534858312708518205007381272283559564255121622535412026192093273139443160941854362511457604505527338126594981032089412595126881339794944881942535961114144140597678578562897176868679011687641281995590267924598654940158312428210069424994235712971929435194218556965914859328726516662653839233353298167937213906281333949755429942588145821716036353413632887543410413667205803707832676569844325296620939256329977517715780515163507454051128634195984847168705971629387012220144379284139958817227009805417883184514333981981368999514296936620491384826795057129932169460382606753513325271395929273772514823