298143199215199951742008765777795146178253738966942942665817520171197994984380570712746395332205408471816666667043424224971324478235331025888111558926761688955849629437658226721297375722048783164696290503982625493950481186258318158618964786924508511295116983758177533259537550418610328958152402274876541780218392175678862694987653983669008703681896872606284258689232837634915839921484116705660149020033989556047449419371505469517759143923995491793062343382186404757010714529148912245004207943760463450921127125675266618282905199017043242312771478414410645594192863115532978172775599703320696094933977534265608847546945054426369963124866265241315790955742916751897029793657761052587955964741043404470397239772377240786972806792937579017892730348953738982016547794927921590585445214099395391584435992020357184502456722743245960165270488006877150682221541161063479909557149874757713368261563608569642556263888102694681687710459611874444941719245759358193939316771923158576902982919729687868339441797228758566918498379919179900429221697448830306044705471949268865782158623781277646276617794723241998686920462092800801784636765041720936642183536503499272957205324068484323140486351259610738197537072754332635162157754416429911273453457393663604013900329979596675818667376749899247710314324287317822945357578871332961270183366958200616834657122989644095536750212875782773373936649398328873114305717005033529194176545631772725169160504386223812188968204476633057105806133834925311198817537008899450966637871343499066011768280436587463623763494231384185132218352727812794643493061449702782889685364423597160789918662474998861995017605638353834868328975848573439936325739271519321731658744086726344439403756928848776568857147738183834524494504604597440841331207593110606319584246742864071830660134010519862335729944155787937678386985436334702970515455043273861924356882439289058268125520522923311668825865833636226798114199148457181385646081183081964144680896995829597418546074531822479824384673310625999125165960178487228857547285857584299427637420890878225997966917560122994773046482154867608767428638760554253725425472279513351917492373760264699528149227018977107450108229708774173953638318051937573812947448218853618428791813271960944780687895458547362689538557966129809594395293247904247291155203182441983805990849763171206619068649921886692438185525298169871168320813005757612639164385332662228270596053676753183640742286729070029622326897617310614678379273260793983061207695352814693764922195013539564037818050238551613893486593116532160463427671862796527162689544449810621113391611511412580953704946110682749582765818855646781472164214904440424996017712887269865042904185856074911641435008240563520212551166146026127553478645067151779776684960463657123084948785919432609648185597378553688184676124867506542940970964485614779562118014954134413843077389451525469984271102335650680801425364037836385325341346769816174212690928225514746905361037835787753884616164958282945444643284617357729439182398898045864760861283456096900343688482559880329823914394257782410688087740364447315896528546742307832730262749526745841382446368039619740601319323038986914797165188700423921574871617337765155745609777312880661439580422237532815840686965269620738451710465365197140498496756628563262874436206882148932967118129156516910107388029488717101473935152412727199375005143910375224441854059396328891813067840974281753798561839748782522969212096998726824631494836551486022258539475360503734814995238823443088341078238246374497439956461819311078422179731961361691742016325187430624826434385869951703951799186978969466007524424264207148782616726475151323621547103556588447823777688195592220419996654007962815709046175433089910635283006456916398296960208980659457859687176962781433081242818667814085088927294480575262244221996339935914664172590194678468229717759583864336982823983331344589649875720364013657146504570578624407382395580870035270721381902301258969109749114995283663673443739060316977713719672952139089495039858989674836752775726548035238914181320979502449725554404233196674855349816514905329018308486552829952397438803090832405281332648572980546022356230996344208903894985457902648111558402763266367073573084185747149969557894716358678584232194147332903338858366801385735971239038865927165759990458483450880967386655674624094147321562095052109713644924235577281415598568082618357566686987199659985791011267932137744154268533995164570872733776241404394997909659091596603456570085417181435747152390274341691363468539168208510178500697120482017386351172583997734468793930430784712413848836155926525438045281072111401569099005200299325227739933394827507628394548128861765384189212616869841692435476071401428481722413586653557867103253657726648872535340958076459123480312097847160366137532812930965291103959958132640412138447827293586887523921343747525394224575680888127388964859439570113379107611867651244078188659509966461318381543450763294298616756441618573775780185027492427454562129710645767346637033663500140426184548336944126085659687645964475400627710684056602225280059210101783874317641310373857539934325220737413475326296147949700176445838900777920289777698627814776813066514619363346222189680811721034374628763478322460429104332971619294366015959386710616088407531714720963993557666258966884060348521728423952897713682082891344856032997875260834149729359152145496230311056671839529224489969957559231684893451159506285781371473133301860271035763563676166191972886014011155958479839187161223724237372286295047224748658923557346016282267635332616925505454702935289819415532146093895412732084246035092171061705468921665023558580957202720422130219219366226915189176765637424860535555754826741505843817751678851642570121172501022132743114975828816691650753171334974621624821783376890370049980209389282219188966196769175683475459657424134841