953239571505003201068344223167818919831685654338954403850085139326059384401291897076168294793899633909338834349992558523494760147713307409587924448031981048893980984336028110819333299105368554953376161289092347568289574744623069023451244010709702381221449959866345055135228629410553412647528683244516632212674230613442932663518236713548613782382131821001476353383249231516181001963766614921141653137131512343776424251318523423707786786314151475855668537596704663681871865658564100241677470211828342843478943553593491273408739128172452116230725778074850509161041125402781189038201497241787244805017496309675824638848552129712934159301048413186495654968294418470586046862941348388287084671664880141095581455431672835297156639071924208647163398306455195132436216026077267252549167614961958764590246589217699343912207404592277357621432520325622228885930437247975532737577055384619143048843419830400263044787151734971115652867747112712874564666681251870493809211903275617514978486592493231352776918031521627001164845540609290256183575403843342681771945101648393688700748648579151404745149706370697921254675253854778174224076776247621641339174679539261407865998211264414140155452677255782423500854660975375457170261471479726702687868346743586409925486625020978166528324232867215003940632881984485895159475867351431709319545417627974464837515601563733947701523300073822683659730188316408878926711761465351018261390721682505557714067398484852237312426618627221991898653922631994438787304541447733243533251958643787753733634678583519019703779514129739913167567862580096705174248521331939251472911706360429117087052280592917520744325219785846770588481502745956459257221928266731372738274211316790421161672739997910156460957385270899552971807749625557477557011328117379827959193802809268398987168853940782073968827087547581025152375817218736343696972114137493205807968945293572044637477718798267694314497052337969995722453238763078465603644662584703210721185016463472333178621171621004689167759562071338235988219865322503240898377192625191376319629212460615628788180341975704083204747542910361341181767849750768651550895791549282820586645140644269662066259331662994133815256983752983095023302429657762732767111684593752493541681844461889057928365227724476318482913009753269571033550132446545055459916155850241292381792849654744077587282279721692329294815264789616948258615640884226546677858126762642283915154267465888745904828975216037654996910091969233347372976809329069508643344042732769875345008337333701017175587635745026711132611135673973149199056964668097630911046059981619208486505695561949490059060873066205033551720708689891413838678207066643494414568762802687564725248700879912476495786579791854836430238395541228907668611498716145254895315813695606360440961927547487214676525214296401772275578316308471672197267228341578643107712994596836465784990630177369271045953222808892830120932867555918104444958190525554926673567419343843185550349232773492653920319202130534193935616184880662242631825825712585566571572319656536597914826294177337948308905360439561942927318312967751357766839250548178199819233385365553719605278408775278931578877075092779541721932840546422437117704442578563973906511049458736197891491441568747525569499444812469254341288826648524151898452741238144543711136292902239023121510952638156537495665204579500411032414691345691899314481673847104773986736770238947335541414911033721922518876839565379062084749914643356636903063745979612223062598856261774867073146872047043139856670423094257801590459585703535349094274360431780965705619773712764382615114889792248898617449632278738763555516109736767917038401260437797939296896001934560129198537424586256126529716828033809412703245567229936076167538475403921177732967178819740476978185240994658213247895892403021957274501689146744205070775825360780223526189736641496257411771174756813984614563915263881493557316012731440510368455152595802420675163602779727362905872382499928105199448195492650357965181733708842781129266184134742363802250196158136958847815964271693340647153974541432193332857778395472778116205224233652184885561118446497562982110728041693344261667242499241042538949480722995063841845599088592113128668459348364311187292531755913301765131482957724413496479539960327956837980992576547152985818594178499457116753728329329011219661820858896597963299190147793363349112128704470350023932411297814580766445867935126130966836264169578722290450650431331292943373497407775681523325274399759151960586929378960593476392843580783918525274930726724758591748392667475592093036340522072734759929398124804792880232087857554203598504864031733884684189894736705453758893714030961178599008900178826696574355796722668292751566511285125195922148616688817177906234861019619244216922110315483362429120898578427531987023459447367092591817839671383879508480648788217311443123297611868445744625252557775352941458644044411241861265096961230958681623255498114189075305602819118567764187287825240751136406937927326398553557265713959567968496229753032533120153804775966785625835178303032962992956789597783913832961053861697383633158998839081046990740525588851963914031804162891685121278961166031419378104412257872531198531793749593716353198703463662340493559302430599182818919943333737974818621146256267864723135750390078125638337843844553750967708341343176217942466337378715165949230626667254873433176966502481918346470703376896940143326273518285338175286726621493154851438335151389772884756912556461714499624721724673298021983708567264702045105579617886891978926247365393971177145507472752248059106860158577825430464916089712384159989636815997339089846733408298265686567413906878401868027701331969962978838372335686152172443531947279103857059097938714852746352472887662109615212228589150585264407377107598919889766695875368116037048094990135538301732454886533708229177509598196838811852433136