56415234076867691261084306079348410446796787052177969227440782673078990968123685953715881692223437191413676578621488148543430302835955067237642043515495768583841578886780592974199170991780977090062164213808292364069171654338161871154702196781568630855125723385947902938809123125285154223055903401519034686179649322466391555949655861103135133293964755415826454718259729284961399334308095422056319645012957831116049234236758173240947318583284338757069606163395877791662694526969623227929179072440153305020870049504665643678344073390962097236843138481605263874939278284519761342866481137676625656932726531232953592637125302549184295449152243113747698017193115499757274231431801916884145540489498754287156745423551364129886503678726947452201248379920984444051997130067180295460928467194501930777857524526346355499373084301343381020562296136446147195543559821053437537450479089539593428904918111164915754292294178432789920463670601427657487255680683604288084627193794268644721935759005434868899678710499884539116164312433266329992771624907238615417138285853717115536686572057649560942603615814904366504182857643941294220429086633711511846492750382072849357441751452898486886996844708197343315086689798473987503545149061663175966096232366429127572176291314965239467759789759542258198402482602538632299025996198529631857971773207943752508773836066405291363634411260389116397915563096349441694360537820682468939815111982255257109224310088465549488722114650199379364656836913722099136766485688439440435817691031755574146540883710943953585078507850627453420892065897376894675617599382423725023804974754781657526461373506561304325256861927916861973034917290480346241434259836410039162116741162453425646688788556370243642297629278484397399194629610310070235773893440732175148781181231536923634872727710212179747728377730165885797568970972389555126839626248170386808034585628729620963162323039317968908324424280335717800950626501908841907472762724962062052104286388009938787092712663789495597954195031197361135777667401095232827345292359135264776972403480265123122293348338613421508748885533675262785531417931963041324153326889339128724424463049248589602210154294721382874321607520498871146652863091715355101799516149092583167585689898366323825476783485496942191880745983091390290321216853206816989473191223475444569278740276522230879573977876729827466141828248680532779942014471395138420349554487373596089985051597110087757549393447059621531351487359942756479238564934830955364271619884488532030228124586779783086153917373846434211694948644352092851443831766531290971822824415945354102080265209132077876715597773533971311823128100454214881095359479724365624832725324468155916422328808422276377355855345023883548670688446305863112867157560067088712131746139550826239541556077083744777679143247965014032642175546173677835850213023892721077336600892218504331504669195568203044077087845760837446346055487707544707093165589849552497918769447703999495046551882799691143446630168236646052296098445653721064408811149671227643794176757847310090433326138950594911674106211253070435139855707027985762165064845690328386526592745414394329878233743623651745385320255986346586817455544691192611276739854381268390784954125421798495180445716820303766514361483298323068305721420170752874517141021194427359439607409699398484356613019714607695439620116738857477646203655321521246792425450247272586994203763602624434961148191179690408743423575761063245991983157768732223546273965203676346025747001034626413664219880496931574584726465377736674862110633878445566391949565175878820484399680111865477250865997630569471877220876948971938360861156924822328235029655013694524482533502192407135922923250318338893299299606326841259619289241522888617089280883648917674314142816534844152490925897957950155273162894039415445965079720934645368268839305775183397402773432827791221365908060571837417203662285798881573741235245147954399602199212374907172444132218852465811136882183258284963924997892986144628159216293528682544899457318352034155380190617021718939719616754778231205729653579814984901047404530113219904180863122621077157756785054396392396233481069539882639140969386149296944573524910222923357931215353018541583194214766086325643237044671244142545400193653745856139083168587327833982901590422741122173934049472480567114955065081016524035255604907645490847755737433247389084155485682815762351224789222824345149032526453782052633108174905945462528469180461777791036368132158368863895087228071660989784336400049386522696139585802338447987147458044833844766286632420439917914695322323695372551638003357372997424370768837208725854977228675602700386772559792113306550166835713108915327736508494785897366750695679099584898780021383147811664347856468197843659628509098134919055111775177126586890013585716210184051286305535822826941398923942196993414056970233126892876057214929544146974547984888472699456792149124762960342352022420123175677774192132398992543678079224387526396963245158735236803378736065536774063788993478569511197116197345992621160329052903948950162156134760381664515583312788905504920931422299938208205909966128091585976121195299097434879633226832945104894728377136913483379406427791809703812879787663335889416520084620071780238894933304592111640832038284317349897026921653086200774074853322820631798700794168302185191533479601992574143236230589198819635626235237407667772645261860982729616978148732685824274874709644727801023679765686969835291344166473048349018465143898867998687559706837787293878508981589035543894182389253784599626876487860030744086572163605940755848618109147930892732503320325839210702389468559117457009983520779741061268120486829985552822172257942622481251522749834800274712634973645307954433252653623127027706565193389552771969381848922819387978122551361037240894357158971819675026592763771449123986424184982062515418520317152074646462285631