30929775840791310367406851187382556055919480648022441718502875195978802470446569246128759127952972337486682631965046444539421797961150755171488235739481257803733849299986200842738581718172927160832006232763191585292431789026442594605841407723554231962096025861523527907044941985879445210517544418464315208077136528209891992863557367513489913783145120367289452003139482275340738331499411185983302732269485424793423466413253890453884192997532953993025461455866742942533281924687973369581008271911472775038503195045888874279657276759730505720974916565086947968196530101710342701724958884539757966513977116113273621855452858685099071138883361309116293633922856816572925539318252250032755657384369646180380124664832617903054441025135011173860557829958587573998153940274024247851159235628834644501163885630461446187207955163063098607762622547090918024465213801802592848923971220722109737967815988228416054460357296310250064957989101922883334579675544969553515994766878477333227946642524398942180239028151976378223614876167666036172193671812084372297518527444534206519631768906670311801683548931221240660418511711413973124940148451975286688515987203194397769634233669802472091306229699965517709163016746982949315276846194355946448993544822115580181350714068211103344498282386776950313856844076616326807132720180275359807120496774093758604911159410558781635630832894073142617634296936916136829361374671932421226898142566727418176916288596928311082963310072478901833897103506963010052108825957169537571585464307129119929484892111777183021933436240246699546319426773838726290073897819452372589185956551373537534665553278696564878120562741927988118915611541188632613888362590295328358723197043484106343089526546969603431587055429860724012843936742296866534436440361487352015585666489222614709148149554361425040394588517047822113570541223158505761635418784161624293277621885513007365165538622569254868740510340308560857413027294412523917773836287298205083383950269420955893543487821429546598808564449735187973276267188995745792236019631406958097751821436776475544399325812714459706317727533892799454927261959433153967224414841814783557888721229806960554612077325929293095980885454378357591256509296567919547505707023575915503435585690313339985791829460428876665523382568323475802430625483169471717046701278525696629044951475319561510186654923915159812890295072343823379143679307880219830984934537678575327263833960916544631261556713131161467199861698878945784417337514435897027642757416395435088437089709551276737258746193285854537874765471916399573298832872735592123373746350701632781427665656939602700486011584978734111550942028582753270345638480585374404511394658470460145593732208505765789283614872562441957762823848004606794183117275582184181246947879197272980717615326676812342101572215718957847274204818597339261180470961589671692281060422266277079801278491814786084280848204224330873018392827790341696854359998756925156231685622874551554708835694307601574898087883376399555017505970993033826954098033766937674465960947317453235308342170917815397134864537196958990375628786184897761307881709492772405995359939444861527536439319107767043660917080477168465757526339434884313702842375529162957456408785821596467060477981965088153689334193486242434194181245368376444850591943119889485407541682331443508107839973813712665893605258057193981135539297901894438927911826298866341353550863194767126333078081337114236653203237823012261759309520692123332608171763863708146606457915452999611681534342974528979657516625435238376256475094543086474645804473621960369225745718828195014192488123376034821109825814662841033749735742791561267366644676133006669010171060838955939618316132054609281550038048812701788965197989565527168537258615963303193480194006971938877639360358744447927386249097737492837264219151780351496858798413833636373138422755158020146226630623938873793154260486686551808896452925891417637017386642961156197876181153059912404819093961812171238049463829912079368557327295169359590264192801375961113918487536631751398472943824438143869180827389751829347156843997118095433175783968563262371677239066695992947444979479695983429103235376781961528597045597988435521817590364718031708320003837370119318671204144674062887669073732776391826014783772271159117305279686220617961232854821844611353282112534346062832705570624338512549564526487510192772540543494558124142573046815907515442737310921513570672622839871801487723149274527939002912584887572211895782217695861207936599505977266884713484756674734733914375793937124537592123625471321430907395805519677915600072044409861918012799680068863048781465161054986450485967534641056774263197788177277037684237800832613257247042902623503111116243269613381566467770787763622092597249939328237176356390067567047173837195229331131611472966215582937540340282013615394253727969594595139138470527319261259159278746942026321730579582630774734135341543804649082728634513220886681637089919188161684212278047127515363340757251901433522935166752350395491938052767032398665580079648913392853422436865366625715624434232107731227076311499421394129441692131538267967527802233186779073138419622258928951972491457892820958953553922778162228122327244541152451734712161259716215835766093388237789013561433768039207658114477446810324051591544164290144496988863485568180595286018511011738549742352294050983654168905486184688622350944475717395731508652057885745570593596302588730864942920555793376990780822451665121283925492964326592338577240741861551961515225991090151057171635919288358126653430599033879309899247475321713355160848134540166954891611844803717440957618707470810348805007752519001268520118919387909321673426288622618781783356953637749688792554150088015653460753823129341881243141284415960628404138821236760640932571553755354861046321633148213978102181518183186587691053265605587964517753867092727968