657329204598096805462687785394112336970428053488299371763931615135980272671306173751334331142296617878527270247749295703790693507863323316866186911849970064312426101596953141384030538272873958314048907006488785506793207740459873443355706051416654486089751238524026541796185641889325402862104217869421486382800667944386345740221865395393521112648366186525658302758503868212213209237344986564673413219476902971579608182389248215834261528446441425986453264837211277107929950174757565474171190064909652787188651574432843617925137279901321350621404536111086569842925569280492363392273811921595231799562152265073318382477189222331545583719237696466034475712161643122260408310519913654286425915282310589647595505971009391318413856224824784818008042375794069664305529574676156395934972265444418668494196153709421969224041230564964976797285494735749546177088880845181896127652459129114785284927897677283818400423866288898167157093699221403247866511588155705836967683716928739180747656180236311477013205213031116509220417344628727203729935199193776262750716269640246963691523929448398535723931762953711663914356675912207525668475054909690418181467984325119266112735586685984984212519838612348078303684932578319553907473143479278128890563148575513645537317602388625216670621696269555588619233111920092393310403725274417154309271527908364875035492300450882423549115193399444573801238219694571564088742554923209910541281814864933495916924101229678351140050428855678593323518825841371894872310879785821676632233730502325142608485394046435437906297349731415937141770642426306487110536325769863422189153719749501869584276239514826866555168532760067977881550196170483393925441887653637895844271800469956560267519698488919116608235256730502194720630321779390816972006605394856768842737926222194114981736577333944226646006200781072571369766897613674287780561404098232382472412001665682956578655664048277170218357739316787475111813545932486426975573527918935998511031429359538609326574249861435588523580676381035959088198843699081747060368856692525150939763098797615427743254149179699626784431843388603230680452093813225307230809419411031822289136314140885332271969863774612770016138743253997604699810940213767188785469076280646818427189591606710506143151794421559536668616930591265260874174665740765818155692629513239451714722568215439742558719418743333927280151428923157342283264617582784423696275174433394930785592358786188936739149620096315137977188977691768167262342165180059178203715572210606625886276703951357886100996502559961286562665098775952308189190990759098436444895182452696803779564868551246038638766796125101838590966878639774625357054624991031779894579476264319876558436933899124825669395641165744288949175966460549994593117931132043369395781830344553869956904309911073785886478740259683283388386089733191929240202119004791410510828746230448774799872044464852411584345338508620818849492778373963174910113762891225795449500556813753435970611365231205315551153946191702620476214441243444427761198784249594942978388266702988922412677310790175882263961969542365436997008639447543123847236162173308995125632860639296548418028863410882717015356186661473911320351658376642811825192838853534439880710618459498971149074968865875220314814472245138468176957384782657578966569818132473254746803860237447875928262127535183425068307815373407917910343344835937470136366635783929037453078156628527805234621103356101810961621267179996245559224484696348063764427840367998603622636467971913849179691847993148994359151097181384772113293120093365607852931804957154611117504966482231471822975076613418696444273520300573295268319515727027147627145517897516612165582539965918361633809197021406434185224175807709958341668386465096184641891320305094278247715022897452432497935257229607809735341005343861958145173355629124781478589487520829015226494319699190904890651055961089406889665297644751540742378013919124352234466810797378354327568241035888857623764776683975965076727231931619804311993290006910428797236454572195071641574157235854480536553253851648482727912992154816098931278279750839234766035587635165839399609120535344076443119670653190973217620319797566933443525645865023585043311666821919176896794274914598620486021394434434891515290757575221243685852781224641568283226068119366813220865091695380592538977777028148523647320287197343871068765960563046831538422531279190266916608811550956992741860258452762806740959650611654364914697283867833148972597321254556137775955196967212176271545875376214160782874921409281887561164113724925240643094741007871667682339513799122329897485196938625849978290767046061045269460660869193114174044298752665963504543473924901275763390877427391355631517653142595098556386973737312729292164357089706066839153182656598253363245194681882785250560226052145016324033265881893416392352026968765230217634381145984920993365862662754785602095785615063163229138921446012562908963575816586713333116169820297903205319853075352309385687405820018604808417784431714271194516295429696250066853151432877005889313425084594861104813559033607335515670958240547343894735344680959208131558392888845206497976253362623311939122202250797591963519412942359253341834788475993625828276631139757297117316477624847346122705763017525824682424807310959767409042443280717251506285819841469490243511528922112736742167524290961129132030641432969202733266923887173882932815128478895182742214525377266677070802855980278124930282715045963374144482149454292948226444876604535193083776799748514836231508226218101133687687709799397668153546946440363452385666520722859795229560127822330493432407382834625584328552926915893728008682108941001353568238585539156651880830629928298349546420613772937478198616469001358446769955423081054371212954591976674590033977569630851656394992409538512617195610104412952954460534872886481706429043522456495522832434698952871892