55994049693622406495839477601381523535175924785191230119089552739886061445195974676690520980495520757527219134211418331107358358863892210680882123295853785548761526339771655774498332635614718653224390373612804609433912426359209520013272813259347785961768658784310687047147526778660416715026826946065482288136322684898683329157713305254789185012907086315230166655852755501391687996239342194709760020332328164984131841505690997927246419101689389847504300997452188538354612190854234335995594990661194089808400156187009789982600567896406864613009645739421977688590065458458813053289307383092653595175722310852352563883238436572585458968093632632546351375953266484614398898693758131169074156568426426129812329014245782233628534683516791343956684457645971581750311219312835627543941997150277615571349349713906629846573647799797393329731676137781012656211198513446096526088572280692265799062073728863332574085905764794133596379582678349336835821474128412579578418854779099541581011044837298854793324887299289700383287261592900145494213716664722942167759436518597466135216226468845172072375127195067183033119219923009445336642181899995693308297183972673452365797911551477375725012738524077548392125684671543387956461846392917948051595671838327161415183574536248191418854775151839808995115424075497166451043752566836281682238814324823919746839955769478967711126222547801430138498859369935180339786223490539879373664658122991376482676366462637468046496419561965370254709807617135700806761155073203270879950969928499785972719686572121133592467590525954593627100870075603054764498454021617000784941302439238669674112538141552022286370071811876737865651901083072892357839148527614639165194034987836859507901384877651247658319833631725478383911306171310028935927066926161640528192725304584237085914190857286791219032059278527295039361085933561226640873606519865724948300818695431700192964052667099058218858080376909144557472023119150822469876910551549145562119088413766582646574488276221469372279502569421418218887867269965959120708974459279217784257226402460949961442703789445467210330717830284519637167376331439958650769384038787775271228035556672391003224417548343978468165753261237684147096936083538299584635964101602692866488451663143923881185828312850293661871720336798266015574711225922563476003503217241871737406824339245265715719758252338685779755751969707194516576160398533460523257361945316877078898486653044781863599527837693166570942918720696698251327695072695275261911750067217507750323815782693555157943894761321501778398779409915146161176247271132628583350242613438138965825786489665736919736479830150583103677829174610589593411135894243631883434457926572078765965432211391463943676793063815948223634879273999321714930276298895106268993311969220288498858229160436482425768944283021733181904333679364875698159115472511520847086911133921628034929790280011528110610270723838296269388594730091539844132836389365121773216893552787365052819552243301926605584573340571820439546671975356872273597825944919889244944127997122910912256981142478645449185967046999854773944265643627369785888950405616762279622310950975354923498414953251886275514576649148963415632315492792231721469918975608136247131651722989284454461883838226666676517277458578552426717419807715894356710606194405701354387733279155611395465965279741904549280853829983885496335909393707148382735488481171439136748634146128024751458359436005277816513269564747015560409666696542110082417958991115735929255378124360615810561923943348561699444384456768482134121049431661193473497735404570552478513607657753729298591384313986508149653185392674324148382637562963837736694862914171063739905792682139351681569928894744772590987121300915422327710965268741348807719079116637782581171853724290521831261562016902187864322157543524539412243234943156621519704294917526381618612318482919537157977114655248666774071922510346019656135325856596170078944542223642032768899010481108100029705624961168243409766958157079175527290718069577743316035941653060169441366270234567172854375685306226831155246252427823322227226201469877515964343850130468907771781021781649797294225985898759593529265995651681980184864455823685235340174939403832134320899459443717471713643966169478157667754226442142677440716516782350767604237361071773067214738498594187486966220514210654799161327418489804021277771572414796878738539124224598062114495969724844321843095674664008521927592227399829755910175168178725481840970830955166735186149405167341269565551290351327806741386866490961066316664121065825358669116491343261377023178637623755128328839416022013790113034081767383535308778450750239413622770725632399297561827074323872339459957934513569306229214918786466540394654606603425688209886938513203337496877488418675184533505116519417663030528883335936930292813919559577786197156868166003327530507383877287563769204261979895384626720793666903615616278417594710872693960239772711424415532398873379688033857304833389786884732097245977221653695888671540499427973815812134164899347941891502489415693989498422797664296315787982970951497189423346665299443470348061831097572117987450897879736391221664585782878699099444449353370942899257191696275528850245474227336222176857303783303921702469909560692962282453889848156549545556619935112716381645262727273710232597677873755827646259301663989953221255777598149291413043378192375031677857227261138048518128181099349965127525955402371843275217695398986450832762774692375705663885799178224266133253769916880604618728359319116993996376187899067167603853593145911602862155469817137409955371638598135712266275332019841547564719495961262327251853462435838994229863797350766957629545878353334986458624294259623687562020312297379712188650194577410197797621718244570574352811873246126886634163994190400696497136850411086823167040251785378767145082853362656007316487080629354641153281872