7018351771402320591916099442551018044711443669775142952286088689538434926702269664555596731462851224141132912985328467895611084217692267172940066185160145065614154254932539839943928614097176098892598133412105896547458371168860093372205902977412885573621560384940793759859296106550504347412514981022099339840066979771573496729556794416495548896901810904234688890965389282153475942663573131100222599692851469180054056347697603092445023943412704313281087169151099757369217255747462815141449801190223903160490646220489866831290949712435388484499468013384566854648269477168274051451154294828678997808157453807676756929369995148875142493612190909791939944226752867495425400650452515873943577253941697856548662419627577593181484211648385458213801910964769259344805123651269915392655402867258866709674852794530278448609472720936416586969488875614480433571894908298768862087100662576567045674075006030228134117059583332672230781945141566252963141020236851426888989292587800971627139039827078373454518153963546331989831031136743771869687172054014701684129972396671696857329126581672513295821893749053840691440348271964250147986392370239775927918065573044598511675216653156105272771317246246666453631955496160733847608041476470685342196250562204749355945007354567646329431349933054515942527993865285372034787799294933691258223212586172823153539383922318548768324611699153176972642170977597982724964936617607173782884598517195119814469123688895795725657006106332343757414257761767827067668584964443601921166902081006205313674562685399734760127325408165053502252412478224253780349795887319392581764198565072873657875090196192433197506050975207688639447206547774385540174364667834199126893573946775084167250353383432755014328928228698169501565251867734888342477798425398446843375286504621443894324657108281542860336555301327617252064678957823311712128532302405048237330962267139765165817812672590575473355990593682694409776044256108797717673070960384252058247942632101365897264328285528351228154697604790601165717084660296839111549761859325564277709364312335558282369835614275431686049502132331489190665527728589770367835721206368116334679208698993362998822452491240488478425660978838373073679792954157232566241238605666751476671582997898965491118265819398662979064084728613049522664834635440726834958922264784287453994948393197309011128410796520434877675495079672448351421334810428746269447324193091689170141242142589392668377609975758577871364547094683018646362725429662274328528633944789796477747741015834854615471582244096562684491210237727519633353210276236043594169562318705347660709797143712528543113448911067172912634468195548337791567217505836966076835741921635284986789847299827411750219335903419761886716779449810714867717198628065759508931381940231164530919890957845775850150562912531367853175457592378406944996527594329367537627036429351506341754619061236620197014658294873259324266936066200913584009897101785923741994598374179438882762623844293522155875999480055212307942445930673061744024264164733915339282967565567746897087714277893735979913143841329294285633942884888521491694908942113750134966732850216396949336161490268938830931015986065327793986944229324009890889588025045752588816491258493760519934955837051044121328836176210320898820137090194852711472085955508874647369644424741663162262195413890326955944334375864766027417213390074727766686088902616275624795287646394376217601057936854624843569111652711925714474736355845527244599821977945421866227101647285765957744593814785503139315149477178865650648293328888119516563096454277712388333774430880257279322263185766215719342326546659699081419556141840256818337125405327247706049296310016833606789260411778482577867179408572568944069128793145683831648656722534155511726923697949849930311729009057903937261273524416768221150382199703115336384304824947816704243024412768116485304122701466631868132591744309446124949159651589954587403756193631789634259245998571448732830638648216415839851459940165102862323672029129523316335554331777241156966013061556223967616110879017917385448565349581488128793162986734170832626435715312841060303328839742773159165951618837275753118910914823746476079272073955529722396577841308575758317006083643095561559973926135573210567009935394298191541979513583273495714684373038952991508914378641299247350140271010252684483328279471195728638636063872201555300927712717903138877377628966985184760260135277022914334318890837026098721790659958505130253327506816303832293067998440339154467459569161540459936403524684011634421898877966825967742794720898474641738939569710482899905359835665861373626471681385791064987149296479072287505361215584315830193088742864189578120956776487867356823334757149591864502788644343533777156695631268272419649836146644325105240243295432752073796259353901306542441187853178562476203957503915484201394219689571725038237211691627896700512782377310309352793371330202296672436715267424678498812793788318777575152473080335074473524903966563238614365059467431135259462549791655322692427784526884714699266574877914617483613879742654298168437970244096932507658261651268577343334171209160581085739796110726826299068415933942199246783744918584790968334908843858081687366995836837665527022879467259009010838746925786663159195792853964949903736980309841153242576781064493191055959654518407384248252285564757752633764076334448497967841893969681167533014128245192150360397226160837643038553626256364974239893039340699182992808831648391126634910608885199480650091710278650839009192643554179202414028922061125539415335408796533226663658091187235469279206317892667106951193532964865831690540341587491186757587657509364184035059875390578572817788247371488910996144881312287237360519370936062332695126848771211126343737857128376027535925525715957906782184897200330864108673538859754977315542819487426560816292038189071422201914622938311341858742105651380958107306521609408