96009475406660563670199518895233117371724222281136934238635830697539632374415696601963547899136321917332736089564570523393386485804178691810425243961882195818974396857732156762683349809464182771121810224519647216903749525231415918241263129137216777867187997222969141886619159165129564124836737995315854807922014174674056028176625912615586185644640650425407706118439172637425458220097339422528814924445130395310916686095159911664784644675136037839866738136261355112622736792579066333025048867947176173642896092663753308655425199386418968661345527928371161846953462341783881224811119510517673838365597823707095347300719033543055886843912331083467315011164593275448406112665371066688592891986339854155105549280945336867103068406989459228797979173125168551092281515875194130111837494547722483884602723959033135158791111066276938477081556440516149849355383925914431896733521005030607469337459269356907223094488273440645236068456849247412446392423555214336098369553145665143854537413775661925849985383543674747540813685048382589281066155914476350843924833506825444004952515796925457892021035358823573598512393047690690037998173179657811018622883494633750427631413547429731881283791852610518631854668567339839744258657959829339410814053372550191168282027895995439726700962615701225849043215170114093719171836406390922673130981412345742197773699983326206461939207685241289820629816719853316229285392642241571671715013779372523570555310180848124838402757715826214869281893652654278021634956433034724717731472511976012889887109795076343336866796747551107158743005506172359364281213061463939447338286085213744941887250826248853139688843335875702522944197524918178604412144655744104875568544433048545373964288346227976577210198772934667109869447485589686755037638699318807361797530811173467603949258071333843464010148765201810049275727376783599918813139646060659380922856820051726333444532415950649573344934420128240874717171453221154448169272939361362497654729151426630201912270588632085237255715227698212747821580911121345315450954998698642209848528142931286635399442515414371733766431718899819637049498521056836443468829019655273509294319211403203147128111749550181148864596745085449455552754174772022232412460640188081508166445388681031655492997559023872706226873565094327614808568566977248590316024835362751686863358983544029740939628150726634023970646951592830504425271877828827374216537488764665614661270677071914128286468094178393972708488316963098716318766403983987555661436489754396810255942768610942583519824935812866882233657842645999364564590551458247092819822343592226556668691602503615496608375325829173665130550892657338993445490344321146358852454587734402941628015347699151150918515049962880471748701497560284883602698323089313243787563531297020673500583159466405407761499717932481283339389944512756317286198887637476836081276394534532291454925825637768247335919768739491603524114642525085366640106374984614064970163190461164153990377399854497699218155589539559192563419813887567760163373241663353919113498616893058258168332633151943954185758514466451975892476176318052279540781343972080296419007372279821669089247814735725912319201337273878569117917209934777735555183934405042295096297241702907814179191506324330477456837330956146360734130364917527069422449870116383175333794757694944620095722486525833484197792593726720120055009583745836820254593415418475875787581132206179925807107867609885958572334803952733275989588027214048797089652132788971707394379714929964563305946041166759126076493413314156388471970245904753551706922955264863567604420167179783124633747135530511558906883380380608884184231498699655931219195701266739689897481629483075348918632691884530946117433286381634597851319483587548321717625349850353809759541771514297883644655997548798843276394722256466270466513242864120253456518985206340503219693286122187373975306353857272216029350161236815644648966315369964185471441898057695936272522054446885701727999250693750300642091875808127559927937611736445141701640553889878424654055512384456388915732580985112769394291893579247703840832589533415194246843459905654259333322815852756413504739387554840817833403477288786686491571444044486011787462729513399742591768301280184655028857981147248271437924456432094745253671443261151449012607447914156281016702451775588447752441876722278720887423313603969516354528536822987343311217513196793649402929892097265860208599672121170614616833269514141627731217332187726442770886530271301833936359646644990198213764840524534360254173514110529782169739388843186511253194936741771759692534313299300953298013559928192989551794819310929347984549677120433582601905221260717268241893770294468417183307278891083322024489968283157320395348891924330144179480138499203729517288804211872884141450586015144640841846186768483833628453830591065536557040171672714363634729275314681780614916364703473163976783268340306342452287649924188109892336587813575585555176048736721417260552614775540655873724699454459780603912302786673277744437329964223398729343663923888335019800727843869309511418225716481707520641222338246777433624019303870916527779973646946686945416213835481564753066684615691461656778851965884306260273313233369329116884442637228596899639768375969750039080278642880770152724075725055076443302632434322604847281972401735998484660748693513492476345081867821114508839567532693793773624215596660691243831518960877425642276173127863325912843383138934749370239197903657958426464599860265576843866729768750819432558062029227326227654224735923956883830694989504254183683198498528227864524280785395171351519225195456125479715257666438063164186847066402276481527191401708485487932467717372359234258458108258185773229207229835764817095633032937254696406548889301549545833249530632670073102586428185569076318088549737657596871807645712443218621556735865627122134378592050633808771210007726643368272200