112120995673195634199904762839712994829910949654817332660156001021917660352629081674022132578197486925570478738383778331326087888636352251899753154166630792252284131244255308251604636385837987734162834264655303750975811249441532327084927203819359923417883444273567628588435520163146776297299092817182227540031723535999462155998785148539174552952933542589662703243010642991533936089789713757834233832108638108270380549818270756927765154450817314727333057245914831154142701849832687514728810744997770862026188373585946857279603141008046571648457217088910653114557575784329872377545896389963181531583083223487837289667337390838038989442418097252777259995879630417375418893341832927978723748613102325589833072971131891407989582044613822571027097670148194265785740916595558645593837208567982019976400276819121627989311127987822856208314691819979956396532913793990649715614768693171365063203830325013977203747431825427218852274408366469752713764463555915823168814308777690972650373127674689245995017113177578795139014611744684971879932444448239263483150798785255444361374557450790264252060565893059960635386197779491318770191615228182881058357523482193490401933531864782556051881137140299873924343496892576947361448229956119303524495582187782555771972688126510339312957276264161619534482336846737076703825637667192881012291130366334123761849746991689402154211151435531782424751664454211658663385309803149513938130651507911978715916552851966197913460475492078644640439797649455192061450146450039702171500403994982572749616306079566869976213234917181757882376728637935504220581247512544560286832723882495685019513427324169292122759789591065678432282862310768187857179648892553739571046054431654336977363125481536592091272470432876671963874525882513573568414887475661929049315576459545854353372790376613387957600857788144751853659138743117984959175520702868535180892486540105751882457334532541086810637781408582794756243114681326521812551284981229936526337999785519427946902315535786569837832792134678305973393653688211131657246171135890593232644036657334305079920527022082893587937169458788457941392867135832282776515072249531658259373211855593419227147514372860833945538409179471629233821625284955720973798899740613648906814235557174280087059541310522416434700834953014463458038955527909759195412630928994613343676798048481714381364282780610721622769749745185001488784775367430334825172646772101560802157138413869789107557134624207058191172093485199520698055296920936362353900282744120842847756837781806786422361463963573148206682422526414220468032748819425607469643719811226431618351957487353778636816215595868011870363528008172779934154087573283742257180878575104934921159237861730990676533916738749255826293170768096871219712056182539786737332389772788118880433915516570930072935649397636284401983198262258735114499745784290139981312480594113779506373218093459537258055540910957254010439023536795385230713625913654452310395597548154199399669544116531587369849110590337950117179851922364936414495847729156078996083295845322178381960507419904235288311250616318252154714724952916047278044394615306178241698321612752266599479079501800815131465922367453374218501131128026894187329773774811439889763415476787423999836373133550398030746789727529244065560935595781948173398590454346475132270323167253914222066173527834679811246810171333164343871338148031448020356652170805633129640905915598388149661924048674306214973543775292822552177620660322541982581218977927043475360663413319936718479549414191345147186988321659586921322769635566982439526350288419766288498736907111482764258044366065565181984595909515340626037332541361739270550973313343739403308813858227335481744755557045638896931899926913614915752167619830729530677050428169348573023493953437028731694407989723037677497144194172394134591059514728836946423284079977156339728182711958804805646399121383124540287255306071773538803955168019319229204428718164738012518411577340276687353462036160477155124856476757162389455445896170618146183977336729562556726189325602154924406668259164343330368395371494332322646923083672975744459488233754943116541480686519806813124579664613676690780865966351275260902081204401389075685959342401574474042576628039579196184605251787662598038475285516083887603375479819807834041272233364143107290268212028698610747682234119566948841881893106688933292941198969570565139595304198519034219870914853208584665904103255920187307181355211929208573952243234483816081360050607119334813739271369288010074970110572256985705569476506423366696077870052925138749419331843112393409393817157279021993212552842808492974413028629533164572460496112177462516365103447646025539544331479179891230328580737272367988503028675763661947521899978695398164771945453135494420213608199668473399524078363093574995192239127760181274338255725549451154302481940461951934127231067014016181554987660292771123940947072481828160462422633300378284623557317528505593897462854327317672691043121768150034441719726218370863979587317700768892366341440228772307395912702271197926710959661375650374860694189360153137684299814707005977494885367539691377592776367573681300895419854958611436277079961464219168988911742693978078285989218329687296542558570641841852082886182309817242266711314847592736514110112895833181193580285256557356961323037826888779478684942658354688522561009961653873998146198131967821461708427479165772268344018727461059982124293811858696255968676645883197524939539349877635139811937308451159228428133371587945928641417036265306568605520341141413084533781324574241317250862766401326971895424368799072309060512195385555400805284537900774931746037943568713728847917997677740679776679573622553241299789604442024274652188779815211845561683381622471463676082944987077200321673268460694860790368978570628751916341628523779385555827225945440240557326737689786819522857312017194959184904356684544019816793