3888443270532508277740515039462542137683525125122147679228507593722923204883727255773980941893519117214846345749716933336123595849945975232925725344008201986375604402875211942794398733468710650443975097891699099220324947826395097603431181995539457376253840339837767735126125762358481170771712593857306990473871472717146377520516060957233831961826138017437403560805362530585266178538519644836628687729724100490818973212631625061057570955352462731396328960215597928298929676274685204163842986737712883872144087755143847547052966481386008089688707156906535512534633493884568433678309554011984158423347635356359733547615791686731785085802784214084794716112992762148588798616058522303561867088997860339266862683921472337556148355710984498881038745781963141362368256378465262911376742796286458332035389285241867484873911995754757687992618441249408713633057267002191393451404171178159578371911187260423530815966209230091263124823850611584624472723026186565092582390350267158236231088064476527949458622483558512437142224953689235121997914706899087967456535231783549528341318312332194289461049179492069145890336780532543136460538230192569962223852659469856317642745122396103937681306453477850847460696251492783440981837031994939637634845224716982618085881930728622975887448986829496695125207734931325593303861897560616395776882040984342273475594709788784421221563176600225197089935644565501792369931957954404440960907112637349733442475243231357804223298271336903481558075191165930892598283690447936788847450091949302410347215632731935872434859594874565379569571498944535798253673936333394836755404625475428253679544815551245790415899379171511571739433195343246762356769517368598145875690386342978254418657992498244312328707265158341947646430267741450305076786664022361619715449427288482203705438082048368364248363292132052107161784676868297175368167794841588893417536527213931260968431977462200476067147091661456894143422381747850353245946840171429751665075966760555384999717960713139804882465859788048475928844923259148704115757703695994642057474051981911987145859718580224813438372500780595521716782595505377536017935144136415379227211253069379215675117877321499899955730224812189883301161974428857414478778210233832390613458430515241932904599502975937446287981646803109684811785391171122438707695114163724440006778621030625158777651086148333958294804348817619473742111621067597372879685879941739778319281502427104549721081257935512568568481496053144356585650094267986948339482399763330334248213660239359863955970844751251852529871765840510303000877673544629426752006323358248468533880791497724314135188732504996067366316316556023759302533281823101904614918967412276927799985118191213223187383380308945429279956029234804536021414555164147129147275766522130392230131947334321246117713811453157375902738270573898950121195531742652981442441432839804865835295774790709246012512353625144427848421678853688389731035215137484550297623085919973333779167174651503702299758488889153571375723178710596914579938348244359165571900462532134775717713334864697149033544641371168262115421444274878846381925364543920688325392329995168239446875468856823544857475271029635804720633048232752185522444125212632496507138751753487940413573479133073215028742982968249528251469035406266615647147246316602852238276064138455370960342773386063222378814276442451287116847542137378351520865614548872385896850137489417746124357295697738145294746022094958239346816599214335380589859160173442573075838695948793238614380745101976316655775246910501598764458964542415794133318944328649623617525806594444985257369179267676685704577890881708863151235759483197646405336044682022578696597917683639803972924320680276284799003854773777019500630075545855347347030670374262163931733122289898364942375038210831391557213059615487977312128032180137873293891118746323989713600638538750446217617246378069389162776854316248916599476140312519684190787952254095447690814412967796394638287137519597405019632651914337378900980721686617802073598709572797151827808079865213129502931054144043299670228599392432943873612221007072311248027488903096535799100898042037892717157691227191225989911408699397729525788101998714525004251632464146472867997788735163707767124949864016054042287084126332768319348590461487404361675248741428327885373895567552708460197274486559744428135467963428724714986538763634668902111075456242687531966044655152382927915661495713062346789480448927193717644238362839594539070810856201946881021488588562506672110421593700360915038494451187605691738745348783242218876167301548488722033871825329764553430455316359543559128394771972321886517862311111394891452461431551359430656463345011102957489424579742140012999111172814525914194395599832224848693456096157894483527874298302502457163184392059407728192977146288887792173236832837690371107452672887145071007837941595770163214044685638964874892362439465649472250107677966647732375253717942970366391826531959345451147659162365816218666773602428790488307787769446346394494024884744902668537788878878042502990620053612391014724426392544884242254574233023941541801365539599147048336851656063498384354926575700413099853176376937559148921958206557682154901712247841886257152558936195885981343135841484503225892339705072561056081484416247873973570410228028619386318641767964382255083928499435508620305247827117967639905942826138195714489750448252382071395766986819462583517955896346631452652794251333611850355569533956270277049782839825607939869377335510468548086943460213841344609567625227558581825566302115688241400195736246958212348290824374101718522285245502761384356636289643996117712087905240591598323641677514128568169246236419826693314411564459365731579023950675666349829898410007975488235132187567135222789478139592739252746483076695893012983475206372456338734661528564203083347367598861891464345945349241175069343940763922844803663644837878