150586485444522598265363368980522953655886214706692113933183284247347778166602759755397226796883341226799849500035365691861785396627148613272767148775113941202438811646404282605496295033877442864919128331823273195216919383338899284231666610838918276775054655896662864095309777231813354800943430376434766467676252370887567437587927183700094139804180117582436520635616958031582813282085512854805012839141779696650319303171936656502837958793636294989537263256427638568377526239523856774062316106946563743819645367805399713432178148818446663382929304881132322100394970147533322584163435204796884332835236681697505767598486338693756551971014276873134404130322303905839685662314260419276093283728715678737517842611301033346601100672728331459710151205508320227982197722059785371351964061842056399825571829836785568400990281306435441347135743165450711884232647595409146187965186489715584822327772584901654388447891910718907862623895338515890688683869527505628896692568861711117852934886177942392782461898871344391211145918681855424288629027124361552587124890237560550350352937668547006744719213026234784786983772083920939072826190114748045042335665389431462842651205376393460892466114554273824809842547877504353331944688057897498165566968251467731385428808500799747958812381401017563455229501918252790289200467210672142215040003458028173120653704881149051085347597142362918196418677761438679590069538167301242261714589709619437864292888947195907595301853103841679502525607768266347215676968298338739696215238994662754267822656066175754358092711835893431825732777770949930798115790861206665971942010780463984574876209568424388618428493929426764795190287131510885484660006180895543402367394442914129909560577674825438414996551608699367415169717655875484634011247360764515739994169132649379052303947977019533423894721538269937180603892563491566375500792285290118040278707718656004213962422647111765683434407976637237316104102649916912902788986159974646156102727830155029416292686525942484951297748829499705142773295058551781515048783006276474169161542396945223629591897135782226583568435580132214228275489128331604210266060277569987190511990556815039756768993197904454367594034850732388212839296230897355991768485435206942258988170989726004456262529132658544344165641642152494347270545252333104792823851801909955091855180763819069475575882258667562273044258254395823232623434966156850298869586847670227459499139699982352815562807505834823282877515586796479919698548764009187582153053196013867712174697765586867526728718107237845219854965155646913673313767879867162666189555233246044982012718461916684609239916092309100741573136302224238092484443525557201303903944022156209115486504866570253289907262193507308023778019448921569471983674030151264644496346141777177035356557973190715349911339839727355331598772448335663005120279449505614253029342404110013125619541624475479544816964461854975993951547887788721235944188294081923290504023942097014623167963728673169686845018587491274927944827429878581349531694163639124424297373666477775328485279631513905407916789586782104751321139767597809205613530626547072864163533741564796078038683620672607360288512928286159029915499540069693842311562604537546396296341764252357286516332346681486376645883847914565135402269338528469297193449217531107612654358292152270149196329238893926967758557440806324145954871834592755168466367876225840122140004812303056743569562522059129631197915654956857375324549587679880803983183971262260162342081497353562617904733098768550455591279544476411407618299831612834875640604764118552279957221514616995234168020934159433385467718871980340587188432528825523775154219796538034978792813136420706547003935381970856701211436303598696157714420934635192657793304027433865273234428615979584919277607478923392425265429392916657431452316445164920176464605038336395844515677573298701381102582173445290132405976215814385079255921108490338346941185414678058984732863662055995863963469870964477194198441826055284426173895132273256075775422037790387068676054726071448342598091641029745781118495134783043503904082256975656629492986835233711829601916834798319645249983988434694406162435438177947232579078720630345246501440467006735005932184408405882392563747156815028765325723860776188495294617289728738352024714361475802854492667045340399622399797384969167534446697426614111340102837685686654753665651117561312606702041108070854243251808696319263676004734342742165453098953603759784532406461059081208488296515173143996827779277939757725104667451674640626247046900694029813177746122620504239635441254336203678464948925487946945986368545092038221857364973603340616630538726390814908611141955833234738098698780172381405144945745241617108244131625523591281575041177318645913236037393198688783674606337399330205781835538227334310737304255585721448706724044057282281717746988948874251011831431848415692270960746666715651616499987425195919283195980241708980775261461423986042603614941616389621052473643405176211502476577299948242820020991772852771836717773764017579262334712008387293275431766590222754731344240665068914327052461102877461280219744087101137735534844617253833445899117796208477735446758821884803245813325722012223330547395484671474862443184349623479027701165825737742738418881618533483682671292770146883676104845957797635332477656011311678327940183054888648486606623484111850170438558156028158031555148077901873760749942695083543905578210421115053549652494480284572392174941067205483646791565124507243154773047725414685029956772662063583551034728824694099132115209069381543439197420973899605515978023639429757799381824454844796072309990831475299764030883295159622963869640987749835401766718733576106907248811051500575591732468194865694326862693759072159192325832119598914696919835361770893642623532499333258195611729224635752296542551137831044365944849116813017640430489710292338273927979934819667