636675950541946516367069506829246480717285121143847086759083296526277682544579705495017829139786356160613263114841188892713470487436571577179359202984432216646715154729205645237322854123806676013695144168056078012880312881059846025076220747124329967085409641387112401716976139268668528971547432923287083110878468470158161253590591457641843806923164064687648508232713269009844452799739589773864566168222156137397892326758643785658144188515270516910611679338637672684448364693271136453826736826197026624752649869739574661983730308171029056940167611606847080878159483983554843068188224282519894957036791599764155244628938949696701825873995798550502617927097301299912919728126719863164244817319025515668517338950561947984112463375093519332986727756698216577580903085245717759556874149795111335316229634012396831522426811131594585521435459894013411575925667998551278395887988740274024152741198962336400118329301363537513493092196773551987284990199950300184847563340325282094548787508168805431870972183660775086959933643048546881760926682555846884352558786256191574255665896712857613074225175550313425344717983644922537589686440466444012884654173079728349750447044253699654901499675521686301426751873091671125168947923357819072918523996204873969955102009982820001990106978156367892147854774456354015863607577859952987196308372119653453455586778556619038272897360458205686876632847949602798507256475200367117752516749533396709536782404701959811334017268450681714535781098627429991478301294327689845809763372914330399551834208756049078453885787522326761065571179949119610607929575594470537203870951296686790199668443665079244534525967250502444249387201535802563692702946675378129761634521277289998264547072777767731314842312960058765912280413571875186854813275057127645524383635603287759199535206174714315621398819567367151589994489442631588432415657666318337945543932903731355993821829867269872568113766914735430491101839156630711943830726285609218279119591909634747837862756786638024393684261844836226552493998281552288011163862616777846562103253929335201241397980622326833655687198872527154024562113249595871060451181181485552172684961620458229230502299436842162012785667153958915649670548018086992973544236805141707580622266514115814873396351200950662728427842553007273726343271469912268583441057672538190687772276121483988241655633775622049862811593994546180033346645927346660119918391801492396778867112843019236835670066428434683757427171921925865716581924794667228248051555309990958605699826924925512336134495330732758379735909264085272956450034704926130386818825114995912664297854397303375867750201403218329411722791354566702999754333748757191971648774822727480445246081229502697112868936681191860221820602074408261891296221429594825339675455183213470572802956018974437565748354134463461964215173955906511872780723927433784205654689745983816443589224979047626714149273823472994979552997490039371961762179784979798027268621616738155989376789232992213058708827035053413664791875101351305791793833928518151673419157596142418718686711722259135020639769296985685590721950235542668459721721258781694589251172603468133046038941729338099469126811894572888552072560669828307987999004011514236694035654418853455350022993056393569867857600080425174438938653192722851863214804010479540837313320162264698637865251247021103110497481793962559684497876000938738377527179844871087948985408566079195546197223449154649268243262017492108857686777979469126015392677815346366788192386875886345176179040622469081661755546339676111710212549678448113135828474065729704618117613627822166989571592411861248799434868538767961745378953788647683668671456041393274712854242589881453343721176435491672583438397963623852313788685453659497679943132353203281646392725145677046823187815639493911260248777773754654815086987076201062992956749857282586135676930688652472829574185562215721429994233011091162283506081277969197799880497771308147472669733550247588502449835938928603227233266857149815328772667390232209762785128578429173840876629503253538408896480548959875939643286620856885243536506502273121563541262749683633501786219877848298970398602559043688315448513375955262454459489390698383842336338377174062909699986844521261580893077643219786936742238395160468712239770247857119160551575710344076846436393575933963964964447261667677142429552427145478235398416498853214237696281678869052241717272260074409368425756828717413935083903091366992250361361969389727186684325807491636045466253514249603255588293322891188798981045640874177787480764988336433621858666323149662163412187059036276172758311932218485498669506590440858482355397023866812354595934891996309473076283708503120027279748698208069496839147216987431375120282322190345804679696228915179940887926446612131682423920741242260452039312224214386576880992525016482071897544518860725811836667455380737081913076536342944914840530166101825289358545283664667949734521412106509293612425392234835146309101584104463154542594019997377779698200876797160771053138443728837995153087954274317339165631431648413756203721477032013865377622786967257555451513480420787940271128113537809338227174107188168085105295297985871310872000427051571695374443707192502875779351950251329361851175685966051909426764673495470489399742175328865483570753812041090486862372859264456321476763118642048498562431533644110547474649602362436981829924622962333399941937444910794603208100520133159912646632962565252531339728419741924436179574643323181483415164471188266968492595749738686223884849254264562743090043333321477293898169494853171462919728553865792984372506138472595692636011404185217242896843003178486296817131046527887286136976379697949338312689198301546309040361825186613841441378088817883472590338407569249478754368341252288280138821464071234144295220579331164146418535097844756595237378789882211919872255855945339660577348483969