377457039906354629433025096508661578666187890993883039640221270846334478162063998132592484493989740118312222466143949448548815514074182541028857514222685202277571710346149364872493440535276441606173801418179507674572132913438712197251049308144420183381756773694287246622442976854302722423419435031979133698444919000854828444435881204721087128068875457007888343658201002840299185015878387315507962711444286110991848991396847913328611752148113359534754899358141850566418538435767260168454019334721107112483829346413444922353942241332722124996841961774262284115074924903714779476273435635391624336682702868684739928786770015727881619953043884958831991639217064708368872998167303727152319157594603954179810590761744905458455380395695598542495793968796391339209130223641595459944116129584965805884475013392602789132890793722518220042336764580333892149816095729651399633282994684779853593733967079369902309375805848904343245937921164352762282820847071179539786969649629724156769567364129565391822449848989788237078864916401061283080558367867954471047657926297397629113579111813510433096132192802094742086435745324352245232879505484742061629729898635745507865336007066713789332150942013149193990964783104756458186572399193695905941986139366086309939810314086442407954339377632346348224961321218269664136937798393049100456925246394173897475715938926370857914822939512278488277741902196347524572974986977222348673469442157179489819199364026875423361775127586514901060395153388861260501172760346341552474321359460123413976473623835592536297325529492972811460996274536777263583331802383133315325545692204612672829923568482542980778266551599180942569683818833265195814151241629676109410153556843160622959666877664908277463569232765129033544323734101578763575388140583584385023790314646638491214164217751902058573429451228718666629867559028931258243591590838339163749924572953037934648595440009271907908839986909206156783925202059771441961591967577254099663224142523581757968825332671656544231373744855396639795052743173999577798294548981094932177046885246121871807676706670955320151788702679583274009995645675791517935456679101313782315317368501026055632501236146415927947077464849237912348429161183354853861168220059675464743627836154752302432150915574560420661342862316406517942023914456883367980824023028308241024574802990705557310124485621176811206742829862745205993727244531661086161570697538715105916279883307792274230654820952643817874826513769304984949836414076107532889739497325806419257657149993626047634572487926641381607099432593164117999549574623148439874497283166593300172149619225784146232975312793950491038248399998446987221851726314112727516523825135521428424675068248298106340056693773273131054988582364486593201455702142369538519808430459747279654850029859983430538289909381256440492420573024315335053984380735426585417746648723440827354366659577333782772124620738354128892107389940332239736331538281398649396579597975951243569403271383977196346380447306448962630449896554976695019416032003810465434038288874924513794484148126496905356852445925311779086696412079326030560793107120873670468212369175203651931392344447732968461997165076704748352351315638843251133930673371643717374596464052539558618077169769439011709398701167209616641196197113292211520381567186487717936196768223141904836477038388858317551987270886671070457429288990901029232387629915563372940274816454446190373963004469895238279645467547569688671193393104527221541467235424077792730988193623367387289321569616615827132247488241191389324306393534996197841162002403918658222024538647934776229668753159610145782017797510167016131839602341879481744886971869013751709963665540711249313290890337447073470192734101706156579177829267591362692914864702884465280011459296131680125128200898944971700087302636110333331266276488572566352174921296332719734277147215149883369487044952440101280888391758915322245906710736201934513058047815775288639372372385865331397579926754638007780559718429210690776403709479960723632937397339827122818500871575962681150585865766550471344662590945157062559387247276806780981866344992761206740447679223656700493652541794751577253089493873207188757723428751551691011569662449040308608257820971721846850552232214840537652490172197984002608972614633003344372544412962679639367057679645720219114678755075293541495158381521351269657179339025275400892415756234532901489946816185020672487161905777918185255259670054486597956862944323153807568651454908574581515437807796254525083135531373778408232759697021616952892987126146971249028570758725892819215109446895996410079333998918157693432322534628047864865932096080335451006158734486858417877526249229591496330418959498680313658511048204896001141456924307693479391545671567010898768248513437946305289349648418590340924192757483292385064431991274939902462912562949070081271197628337968721779418696664539846924256955799543478088435684442876833592843545349262314153962552350579576661238091126438440933862298447433749237323051754387434111833840209859826215267841082574432233154775511125653593221939276829238194913750048512689261364422660796967944850783258913619627237664403558431930771442232849901980673047438443670614068318833238022804184149606604444395729076081031256423679641787071284759143192681419628183796131311326658836928679415076596761790127920468188835474233015288763905693031181792937230432452220472567325057490281532833873369210619376176498181118394716219494415610047639140198859179049808276970696580846925162154336779754428837495453817297248908082240970395503723658748044422422067891224251409263824272458547388819499474837722193307019330677678346465998695925197093307543411851581648406521118159570264641976794417986701168875489649233218485677584053760733761595597077263750792224455774252224292257392686185375455830867231763145140087592648185828165914375767119253534112890269491486374364622376808212122119908942