23664784986538169951137991863703989341411152264015517554606399246097171137273944846111694550662474297277422383102363251892529701434862365412709288871718103294293493628198534397722769302717144931707036875240836032368880343198288216149603771965776474199996124402466667029094622415516852132906154416551569537545291614958301122172940768369580649706750929455881297749147236996826433791779809935246418267610805222914295355133975396049625797381667056567876447773513297665198322438247784105159333513349738757220239932906809869298398683082975912164344777746522515846520146201290221388601043519531757073261127437985932490093882123284324361535885948263118161323367459863763688838631857438444439376824770228621160263240383532900771089397715985065092901313362118040221616077106600539865089246104661626919248780169141755290383427909842577104345888205245806967025173271578636302243313472098308355338078892529246806408191728897796754986088944771649964296655222136723622426580182710538479263489925288934004622373968154984677171241772612039460216239429338462440079392493926605412768267543609784769222754036683157206032312793213664648563139246864515125928956102146253139038585794215751859698286091382844233302750707744994989756935289883537096486710069769463938680902103328047998572335897119957629471406017508594205589299508956582562100585242518655415888033636327925539510388791717348771978409362467125258085936311561741999777750823857774891618323310994328256534309425446055875727764212842278084247239476046988355797758915977216689697631336770455581261851550667855809677564004443757864535803131255739636939222343342445601709642129091951879646177776884504941488915218921133403150572645633377133861041785644467899620500227831047823194391237295525097777838488934048381682752749897541047399066534583261663991274757996118011313510785276941014446063629939421917851276270993811691175960975087349200467871303582149029479667535281511563902316243017702667352231414744942297219499417097630785059345885873003604371471175804284158381317665677864213354722783160928361499135697352847395130243547726773955994439987719398774251297575181509976476471131184267921064329495872044082787692061655288319216377146171823965444435295848863914215337780101630125438735937819986198054902292494287671588427357869182141361522617118947936713088607385882176422534730519592991757344605500533269995769809272933542013796541222053845912521312650193486666290071618575061747681356229977310932531682408523429524914392648222145997731386024445372221945516371343783069134664398850913969389991356263449969135988601947315871559176638201691081198631779457151938235043165133829951252697174934842333168282005077836609435455706006389055797346149593478998987729635071461268452099597559659325047963894123495157147041849264824819371150410001638441950276585636027117629313334325953521084169344839885088837528115752536399759183972866810877070181524481755984595725428775388507409224105934702100891515110409968912883335293539935531481296181576490789154704282376862012765311541097434294755526435567527476036879294717577465997499245366956702874826816756137840598685059499123594191222539866316597884755310195078292310184399873985041359546088938830962041930945688577849542814646189343769206225548958401734717495646029031534544674679089606661232093952542918054161382875817683458099692997315157026927492047202936668052137465554622349927598135886519406049357997358480152035705260290105575403221602872949859390632282658763348741613657433739031995944437302209381843279233921006577318774506690787090149822111876213877215120777749159274317907640237154491905567056613127216333554277936920389823379538302581398363497027257893790239069536922472606034921511944665381548274268193789722017931195803013448717658644355449353241756815611958831781508932823594061891142716985430672409374341433514566933047033097559558057963235741775391911622982983748126872226678627982256365308742443761951646488727607691498981225853461994571018637540173569328856910790647406289258256374108894023792460068236927827755568011275609396116726683713745732129324051192893876117420876617500461531807665256858263618497865306651181165046996201392618788036428218332853431738223685346794577755459022131933105240969024443151865617335788280484139993676325602224698460472139957564316454745489565572551413756512539625895474764187319966805660309782256865361094034479404902711768697818461433187267798387118725382161738023217862844906061258965024360441667863783249476409278438928509144943924650733579006492938416574227267725391694268560453150502773775151533420690383053977697841232962607219471891181536694959886977881998946704820246641455614723221335656219330693977258384036269994528833148529950682162086220688926026849391943208509771477508419639829649920438296874666370923804203029367256609077462345719387948926527485875964099220410669748014492059523583149141214910147747136784322466972149173625391825486235893354804357011187068430952765051153670982339175326981124297418653339685526511164739838524466452661230664368166731056399268864933538198697997674635366730836848403122355208898140767874509749941635111984414584837628268970387474505775469743643582171941903535754793106410208146942392478359046151787431098405417734466589780496898624856286958866881480365295376484042081599796592375771461771671781811621468957687580192761301263570554048537217574609528567232334034552705395997329939325081946272042628021996643173169773341224529096861274368095189608174879624343868831232122015822213551095465239130332139038762195148333519238788378797349733560667501420118306122326332965818777499729393040587220575828141548327575740189865127458643821532553224449199311545485665615408807659449997669098375483788728396271735874949460301568940726333447626027551534242788114520631373019740308697971311767261932803296909163906949891652663312205337323216278367528782311908880594653746