19909844862711373110832255904677285697545270383384734781174937361932459657347784291367396660525543877615342757432458300768758733474836627639890091154869970469438655872761517303445530091033582873828408115037515428490197511306284740783948381059442098468658331028779592228217381357747181521802161766045913929429091881893336173596052628357193376491058852634245957521312138659752435316999164254484471269379988637058111333507295137587229325065118132543243672895657291634153388516544962175238094349923726418278581752289892863022784404483018812248782005491440184094453637612295678984254333906452788233525202842586063799997531054333057908459380447204111661494840242576587562340965282352814577625598395347696786306844075187423615275978574158959737955844490929778243655925498917632908796566375184919319412975729723448911675134237128939831343264754151843804602200760356582673172356380990783177644836980401815932075475099448224738205792374323894821521928709973537143812759491756362600845741328602716689319134280853746281158234097023526770814697126818703496722318374612285015078971475747572386409015742537754855397430158853781290388455229448601393742035711754955435480162077936785546141512807468293783390615176840228766044844714281195215578046335098149759913603410464925956214466394303678418665842450729053782734610943822770223097007505733167476070198892076079594140241945641321855678235636945661046212718424764832685442812372947541279679751115051865160022248815105735542482771531189542102329538351668540224845910326014691299347759396293473933838669789644996845027801393786826740169567106399611021856451074448088441439868997530032599406565535353561620693622392711207497029737124972027412649665857190855349689643689503937992566557302897243008128811254476561755777465592466062555125827562658554124547326381901062238095450456160868730247383578904923178276920647022405533898685262555394686853837352783974762119117655277369251425199430942707825342649671451140784751545114603635710398883630383346315757324194312696581169553772290230929242155381257729179920960652903579089082020139571357773394201390911856930114406745848579655489171015560577794288244883295098227711642135277236120992895993769233728196312662976398130530826156100394249739878385379512519882096320201676441819313132285221481481398936888678872260784088213581932016787767949781912589872542130410596753479313990984409449525587463750988343398355864932755239259841158225363115993448161128685383966911427116281474493873895622165593525671700441313429581634477892218973985427767226745086968610457581443214417883269826829183262092240543092794729940742774825721216725556332552642023980226871486954753772951477709685433579582401382566436008951307398481930712915240052636808277471892375939822231849574806792217251968579233247241348854371017704397173508427540086018318376836899490349124196843350588849693699024274568988434123229423115982864744889897390106573753748107402581281172606989957052288448326144677346791377349115361366822766864572375502327779624419384820973566989947161057211987986340811395161152372181083976089472488715152216033436258131786548884954199253143824207904969546762212695586595487532947056777397431502275915254697168861016677365968052322735808567244512817784227794710826698506348222497223286940820138475036387359549175477748645817679964864982712828858962447894448667504646353739232809769186649948816848837699607539609740811605166210653954666841135442640653376638390717395519210688723346894716811514926241284608394475027888920813017186545686760397652142882095989798366899343739299235919655052273819588149568352317624660965233794368493884208164266549487960670192995408738547624613580550745806988284533769748389270853937900787223125409609082614849820363454534166219445802676267549774308402401157452983436612355763197171034954174687809352905361647873742328503825443855531132903496946532433364756106871915111832153918350277806201302530417760799321475722696559989833237453332953401507549601441423056465520658579122597841291355766247013400328298605264018886032343669195307527695136879262259959655361324516784341918505298822214302299474092068649316581897088493182292899714052072161867640632558109523048485262335584707637399133277268079999943082253529321933414440495021786435817160888818119742009858870985881610691694220503609468275736818944843669972289228847379629559676003734980190039177157460592818460520113915284336995113138318661679475574207419449916813537097889105150612059172741310856448074263432467865758163466671182127893387697357888279817372689764865296474425390542612693243477050281197907338111883854715119542657522815779517128346513184693788796372336173843556839916197183747903250930594616197519553651500027676258256525150729215671965139155900228501602465164324419374547485453540318663596635915685384840576179782237514604394335546640943950875487981906648826638826891000115955993015478344739470131027925726636456963067817231576498936269199289532766894181424881021310530497806970361887931699773549599587911764962927377432701006209387898673659489076639220729376907232821844147935732572504401838499629389222396641853844029372202837113518271668045671024285310837854848086781758593964925772786332364498265293244613159573891362460473617347527118369605475645595865380293636714776929948643929742737617641279377240339296129525265590195419926484554965187574841959654721939740233338454900435528383150533589863255396649758751854232521466642808914951365296599563905890253849776611746808133749083960195975145488877902318725783049561664849226297298203223627159041598365154030218474105821750952562706792977825444312571668773282036621914073562570711714995502989045713684933759839885524301222403065123087537785256275892890766886221461751825226377430479137413777967452762561028571522089645276914613843508143763186974999788206562956578688281366184921918254131837249162798413429490603811162836556825097172