670299262377936932648682968198705325934031991072946761866929628267259072068856222758784486930765075421230814871052469824065117891090242611190253552724758698611712817066808025439755575052789134538736303299060685367712387815434763289512847167835659839019877671632032968359332999770331569704002192866528958454478954052549941034547992564534094487519587508237840888262798597274063157999517450975429507824429530110545336863150826914817147072506325206615471381446318989038226210668693848223793934949213385211491101711411293427640890693387384511955664859959228993542987755980913051245040557221978859319297505897286133589587751737987777099357370356193063542239522814103276010529927478984454513364381325745876540127700762522860075467415659264945544936427607193593537011111597432368998499858210166199488988834829309760602146862179110874587371174251746435639811453048745661979731777124131718524062935177245896886252577221271224274468444434885826242215698321649888001093747220597357908482204189774302173659713462448897835478209558780320978845894494075459714747922996330274153819870438571587448268416716083167950459273495539592285947087881856761071575827460571185444309723727814371062552922961216269194720674394651803676577975431898217413631450143312610403140978729483446956987157595937417565558075764615217439956878461752605003879065742491697315741468647291924878277019049425984710236897354777863233421267362719487431772090276631421292662625133779715124396871885343329914330548344578370102421269281161120731929443534974547633101418610338081221094661850661254028720816914798796257483078956686175721574927343998850790351663175868466146205288678587225033986956180951346521387360240283978639649429717248916843487833058570569043146325980059557955561688284638494260863922325453416142242926214271843099229890252021067339155016353296715323443203409642023851698529605685236672716726363590979145317821375867384634116274526417938478877660710739604622322753088953478692988653615825854234380490287862778546878283546927899647650134133534597548529279333348683505475479053402736296858247733555468079325371415053599120791438342577164002066597880852922687992209340686366971217592876834518236076556495084483111961230836423535272466851915756530570368906450263591331761612935761644852501076508013957846658289815265448237932677252117141590849387797515224920556379259794127374568133979651420375628846796967477240639814263372698758276420996834435141471335303924807638612488017061985687062261612932056661176291755185084792214508810580930866711420789442963662325649243495167425776875086382285489557360544720478640595726864677715097788251520864820675979482232634708276843867299369003613908604955123548464706919657363739531441228819265632348329350972763056826488138794243780357573102522497966982821381399560374116750331745061688419793080740264341698164370534505800743164121335872989502641717855617009591496444278211373849117169785534885633565984813391241956508803148055368221895315853476821215526343466775576042943382084441769379017754886198994235877627499262296552324451746921465663883223007460571363631785202588984516860945751358440280156321691632389757571551087773196992241364292037190150329013603715589302635959699766134833350269116291431546975455934304251521566126585926729364910522271513691572865140651266151642757387246908167684459016931678441538708597249410203094142565145176312457427964759036586012525308727945763239587537585402621966787325021742419779402776080387568526677243605648121535959963887811058666282187252701296577554601695571232874205537636219782892442578864078328885049638325352522780289143163621397516346141895680693448845988226251697762380527186521440496191364360331908847385933888229663960433073805686371955720401756419668947231587311843891008660516380115669947395786630165959752308836675968206147240345232290568678984412495562171723008296885437721747104551874259672204490943109538869742084365349368604243328951872187587494371757138941381669606192722289503358163935262878539419601976055609686626810505713656741347635392679256745506431875596965725044613379386980568754730673062459541488119387920658523632008496486456005224870474893396059363786711254363615647386555847126377966389951137635577892701792597117679045909278607159596560941450711552182062881041115192896667942380794855046061006884892519834980819690242545850862885449494335973234365199485226309213735491661625670141928036804264575436449584368054695875859031915441293878693685348112904907741179719437713220392403027634266834307634965142317596310732188180261043790426071827878918452854631843965289585697809673062927636583548305430318456661993489423845154908380722239381725215973507166998459751482814052799809880272297792258816582669113403720919466186946515084760332745132548757794626781128648652699886646583270812127243785731208710501916531843781615426829278559559938437346610995041075801514199559292994757385600812016277159432936327731660160422786254698207169353236953755725380605793178374957372231991410898244899650402216174945413687593737544673644714664650298289732810956797361267524899674050632021347210483925248573630363563892636283138636185498048939115477423393110281557213661468575737917421244396683266186173522215322851945278936044702415891390697746752639986908484064612667564710826698456291273136359907820858144361374879661646905373663289378901233471847473150454754377021072306749560153604345826383924572160482437517174952107987790575413272138341260632383915327096390424456606996618483330678817363259157611484760434723407594143835060194680994922666923709188876263347698927573147934712425784272457920743017255899859565815593619449852868864239214864468631848142834154886844987735331864853348641564634356859669154485004028702874462957259974619178360449295390323454175497433679710821525886348737082409497646727693469844461182746002309154408039718630773196603936210696632425310739119506