596822655373168591449098266473052319786947346388104284468238544969950214367109537857394230962309700471181995587121207396188522976774234813399577540021274227679297792531414534209701462775187336469537537690549357031725733657012730774286729627828550426380173379698909370290215218697123943369963754768224092037268632595566466934226864567312514724105136546294480420685961606527789596970408895775598384351417629768987359695733704180759127568673475303790838393788736345874179527766386115412383247252927079946799571129197178831778043318300894948637286048114991554385269573601287379790184243387120908544664491337768731330265459834721349141286694439247216903987135064985641421230706011777060426215411110576351979910035748142988768804236313967273551984591135717084171983642517651397042687866873844574447402525402751880677878290868447538787370277527059425755819659981854727009252596464218611882911864201593595689017978458380310156130677603908917337039903763781062944937389577210375523889847978338777739334018425455760617075279219433401510864544477020993746533521467678110762338888129498436501277045994752944045213951771252792988842688083716646324421143730796863712409434738104470884724574326425992141809287684428466826485492750839657743399570768267726870840634122366330428669828656594934516926161062061163962588537167544086796408110765736799949226688092475987228934613972656582858867561532827603837568344534478194125253787458372765309148743398270821457359781483556454859379056187572749648184158674336973488382105170391063481026930695572812718741489239532817305592320545521133922664624610975993045829731669155412569247741530467615880618489428975169350151006176103124495883373887857415187018768406309475737046450298877086596461861586435544256629240838583209262920725917687769158831119638139128769128296238669782560416472166424168334066682746685549858149376813196759998620599303526417081075982150532439538542920452761745975576328194189826894969657922853930132082155939998874475883123025427284353157734148636750525236935234650286404711335397184286211942319451717664044449631157915585763429692798464938150788622346750927901807126289728913674162426617924128356334661929396208797252146336285244801356385779309650652765308399995042932910336922980153984832420973795201246194632689506287265313679234968946683157398210537351211651314444711778758232651816101706812620087816658944531635946511860486646014476579494405489852792527883844608306662283648967058431546715739687622786730455968725090292761472908999934624869608612779128440714368193792407147605550223364824345351504161548184508904099341562810919947561142106893188474836473266564064795181713422376554354264651995915756373818160576118180445525205606229339612937720789992400920695039622114958526275404959495686589720418815128120420177042822785977792045698971564331139505347893647053970311281510786918403533502352254658132040309637213250985532284624825850825399418369503853973137579219355864703225595836069248409772798813655458887681382650415617498838456527439728649198383066399577519518614677369420262911658562610831306073987321443191393028085254703785056624411446517317519794665434260159005748633550575169419316176436257017429842535021868659588050909834300942204726912684945149286641367904842476113169949706933726117866215536009951647718475866941372892692252685763007095939425256771014368268814391005349787353582984154055783416076811754565646996989322774773155297520899174942125407866725013208076662615786439670243509545207359687848438515465671713955545449127228390888198675916025162393237038798356928857229643078834097999740876821451533180354678444100997864063955647837783961597377957492013243295454968112594263695144537972031372351173522626147252211035784706279767874457835891149296602462741528876972450677157766338286263686286137958802406132251116849140641628956270980892362124811324791552915666321177761268755975919478810872207645373792172214192016183891051767419339286950137517203026161943692452108338317100431368922915342733267573824481532186279740021944742309800109112256686975291170206743535594842776768874701322406532931493625078921426955170342387142157566704115543821273524755727977879334054191993824244182750279538113278252458902422458814325728802775801712827184522772759521817719492131670654605900562367053899250038382721108962025569512297312856654387064798690949559488142219189182690872356893742368940977701685592956378250999771687615579158139803618020346227414411867234473388035950646338706765013395725326965826243462901782925078983064520978050866619172589802634223631953738519943630199220453271503392958566862692590857773289682453139681156073166207827028825339396162125751554757283735984974448669402029293048185734314317585357326949418121534104478508113322612997343023913310908783305459353167368184391965549917748412112925817917815917735166512745383387669963497535089208023677661490551362807873149517526864565216696857695251960635810124806589854858802695075811086684814872925272642475128674388403624956287591296296244535638516810244637762826247108850232672141801141858219943191484129577567787647215593590773284043659874753339538970454045310944072782740920447251130353855146393672029606259518942289348460818955901712413361525532445937423206530605238252245587057222125941435240441965534656011964435817565371271077802889985281243472771168225006232406689661765828526887236458746087106146896643336885087220565248583745877597005737785508954206315791166357363683597978263632791810952358126886748543675818794478918301642459212644386285154625758046648149558813627021288172337916249587730247817216434949527735527753029229776874837877514575439466246550672574626550648347290535061674444767805146041407617150476518754494853572885137369481549414741425132856968088187301424488637174651213554988260918081034994818729110131135561947338212393935003513145281313768686237779400676799775269606140869538