102083379421667986424617722577256146372462116094747206689491985226372082259702801680672282645470489753746513052380891832512852522229243704339723288225724193880130469811158310057212877270188488101177868881014897412175158502820814168570792347136760823109448683031798736813985934535391698172896254259844391344922224326211657264722117123877235210107934873164362410743757229915256763746296556360493172961682291074179475808649443168244355071829308219155513409146722089323576851049333664959472333193521682715995249026559102890468941117286393455230376507297222182184452819859233359017082716927718814954064659677109640759952715779554472744366887685771063858183337671284844302385426825720845457034150600095528699254431335539293363365604658337381938218631001570905036563353206103417493110939089859737902152303494842818426418517665682784585761859159061488968278718734183552174033226223970858271821546336043338331739628939626950645634968066849806142355904912753514819444574689894328212961345073450382037698768336164891540337794133297729314019562235772254851019030591267406017262065868875692350139553238043828238599706652676110854123237196543462789048203992875939071401802685321495789727422834431837439191333333965432388919994759302771951536925952632591529392826488830439818171519922292979275719673671562207568588020972911945199053741174249825376219457775676258687967716558931084298480719159453894033087317631473829876646441323525266935104547269741895896469186905189115840052736407948244766243367367786541367990518585378687374583186427771675051988906247483943468750496583613999330653999713914382649216902471483631426950972881465764322531824260828174184656174555742994031348240671232023808538038076920948738377089889720149018983132226069938348869987203734669560817236591548610853285961057642432999025122210434396379880927371920636924926536348350726424770330382866283024102562704469315529818348947381207856523641573388267831964895253716095824299685996794846668508017653588557281982294065641814627943366341479858208892670316635901934151494111974468552960889309576414513994135249516387268156995638950809757918162194178721557908229788533207802198641469269546354577756895936002153179735152099025628213866986093712332245272541316767611637191582247096166361546575941370865775483727345399968851961066414759173725195014555073129053180490562270968757236152278567088953675443583238235034222518614699277764811976560793497233720659653339112344559560985749479814022937087542696194542679983647176744620119511658513333611751263253574029436335554204506740726842459291388963909841756446715331386647056147229444847425072254622493989495224203892334020664445145703958810849311994127115621157562137605888859384722663384879229726831294748414663497172720785454523428901196328514455504750605167224161602413569297923773393274448638646511361504606950536339223953551044059668761365260514094541022691542001837341689763116501928026604943950095249183848181215103522406569633421199028589594500943317239162442741651211982768633594295569396359069740878223627796699981654552728513020492633880077819327443592222943283859309653156284365738906352259518247831679929841966882234692339632964983843282126977209648335423339952225845155107198121080271821527479884314154420186354548802364018766060648637928582106344562949933358601733474193683056998469611748044660679394804110594050428456101816683257621897367429484743349770421053415362102894067011154763182470524112521850422305586376462605550679322375220180181898759566752081156449257675108352922796085871954805540884569746884349585641444127807881073676862833766885612988913859557178619113088296589826977571228015413707177331502478510620498833227837107534682295281952964920892441129583108846816549464423897183526837867531736117241521802151566645537671626239723063502932182948615317045590734843594054265445471160164992348069541173162771551969114969132018636185983802175725580916257514741365308211880624398120031890690994201659376857659672696399079967681163955427683620061532952973031962153477967694475468048085226809853893493119088299551544423591289791456790234140833529960823042416670930436220420551524533246568323628754942113911170223287262617896952919485676589323746212895504572752256718514865565298598454684795206255408671448467633473283541253625643796682021791325561798802491991422454215445623042959659389382844489303363587980456788953665379260800633406726710474785707463914664630533431221621272169596223911398407071422774564328722648231958101447462409392360372975922416834906088390291244352861765186684907913118183350253921477172867759184232805987677564736732256088062428102760697975525155155886229981279515976591724435758614964361578485749967259680898300321958323528658973418073544292618398919247419924606487367985516934492264193491360828891432061904591543635608128181986718941209279497956460020861454955487777422738736508102716122198786209841316494697760292106705399553752228533241129492806848898667443207141659725614357306433551657817659968566704618460186209609741281054487156313547922293199352661708252114076768908339672481948470074769299552338174297165514069189142451203958760575756225678438732538057442570895015317639781379768890219474827450924715202729104981813722543691525148572577860327457039690969348292694665631728272826533028094675415341038980652955362463352499859812630848147547948773494562128952929553397159740301152108770815791794837870912951908502304446345018163929039967986300153268172708571587943568925820015545981247474991547065906087373859867005823996349318639657875213735697449775416780565521193826339286718057644677457987925109104297236570546611363522172436286669533668701761562366520768283438449939690293775948342919236306814606054464277323340181601226215884266290299113294937623382297701885495611061738341899292061676399277581271974252025304987281037202766479174186381912811143812380774458259482036109047497881357654