297339452423844711277516618815455164803425682423698581346766762353495584562649207724926525196679124058821948311007844206722908320977334523675525452388352595444266708877752361027597960291562007418286767678334329276148832024166776393449166211981618081630570311999934782647079300295982334135312270964082971186625675280317632542651528474893843256808875126340476008455138187655245838315632880335682327153316250157651894908193259921764687860369877761568976178845892523156518551068413082059241623255893612617964606457473971112544408251850009436935619417518650291033596128586747084294653749129056892953896899717723859773660830181245074159499671703817424627186827130952867221811102463557556254738706030783739742412942054436843389632273050903787994874838512151262912769910746966077084415594277901762148876542190823282742534717252575654161925226726203662729504626076146871943043716190622658628347795472945503491170289907521787363398609692653041829598891943739144053254566155811113824572223463487381031412607685491699171641289755304371900534892071413696572974738932616168963387098256427421312769192430857129117197921763606496154663184470574676708849239399278679496977437635386874039025214179648878796795591365824646251113797945508471578359605366725181807256520390355024357921381708529521142181521643732627593750631837397198252636336842920308975307101853953198654497358018608762654782172704388064786083141639231645634129328138125975468359125347679589207319799437800148724038712473947393752395491983267040938369670915689488478468467421533541906287904669711515168117922835991793958079608479356312624131055309872859395918585365988792247715771844325492166224603534670329026906198949279234469654965883232161966088667915183218225762063337956853564224936083611239493979659979827082977369473525223461267456238206184336003306185363589196022964193592388068727175429706927813925556907715948249817365542424969283198665241603324399789097188355555767908755258652683945184763392436828918350857172693753647226647016466169861723669440948190470037751836184767458334310455074658629436757467426030445076114942391275078142539844987175674281129835984598121568235240548290339912735292901751740749236203275486631782219670372298522271909757215561589934220727234681684987635335543151350669416535054255653045615479797513048415551026864805390422512240191219911373743824297969048249262761239650823162648656254980164203683828810417709457011357675492016724030981060284932187597564509384054767895684220367626606544328809135283821510979824065869335762918787865837242733772991229752647260842643443759550481158359264844479643614686776280745459989583678372937983187755694663868709645977970837143399185100177487851829120842489882935655787701783365642493920711375727610185050127755935798613297112895499287876747895315251994650840981344757361266086957678338053887372834879300371214215272105300767425864043193307779839787661607359345032255195681772157969766698283429027827443800929715926118232096166697149382954787571768051029035942574784784704364786441434481982773531268132719550823965705596317961993425235110889254453944934750212911137499176997948696490368458825236951223723008757424168127799836219651946441778096350826641159514748376272762918158257719679319731486002886780342130397137254961116512250512323342742726034244548327987515146440136284561171638993574541021181346630354826679305081794132823764567673357113392202336441411098345253695565698320224093988447727915597891124737002227194379401151377215343837933756536656138399768589296915016391033851580599211643868665770192874355828435255953811927753152199464875962675618664707415129985190923617879281342243248386542781679792258842793538831584214747035446620895135872986254222813653066028665689331189221014392363161727597374193337448827437837497200980826778706946253949713857410989006388898959979236173075558938711379739627469511888879602891607528395340349458775493217611148500151032594383678122833792659386153201037318947692029618657303957137168417697088045112525799855865697398281842515780851273179766121943742361006665184857823194585976750093328460350498135513844045297243898911726687549271634583714465902124714597387172369568571947751493303377190125660493188968433175689121208653526495265652642107857938593024231995941276485966208439823211198820334145889238710666519284630587389454130845471351418399947185496169704129584072704938148486479589865682502441393377782473126940687729295195929986644222474435143183163546218698651088834583490936028567625631688405565475391916747663405681722398453937185982052878236054769698913343852792233680179819444729414968733224237116316594935367548330987598741334768899644886143852111257283354129293281181103061924459841633206984152622660419969664542595708367726887476075791789686973439563598537986136752185265522222285738678212359602434775953337950732345550992016861997958204425655292823697273787891208076177979818078202584344403956493899835968897684545920315053777591199572646796394461241911797885218547064178764277244740530330844543480557838614869646151338715054888317766969322664129721776967838953604173440596237285326532701844476516663533197158315246970531869797470566516183262952139430477631144481468447335166233243977573626166098647224942767642449596221442456343681615588296811571813289949147869187898483439884343499979064579349756157882766521234342770819110296550158978845404229684351443758591657858992025193421094965173387880727093104183502015338450458268169872707457943818957730976949567510846660465078651056872988816002391624652965804435524009692780092232839218137722600701238238952799713419527805717675297995950949160704457404943778477663205781476021779667695337472585990234260195041257956767874062499528932454090178323525996593245606383986334930727068148227813456026261561786555576366043656830267465988036933016306861817960090501316989639223552569698038356476151917913977534991219887939764533293