55385076805195436166626701489564666339875359122543365237385748238547453231543256387611096291237399680792920597518476470655127092890392983432213112531192451468728280648511603991042072542735562432702216815338702855414687222494731775469729093519166320048602570628275823241614825172968805627078237828694261046431351786684623952994451289824155673655147834048222966347546091919977595855915188760743113897903478812352931342097597370135538448195960239991579753504096963445367150670519161833777494157197058643473264519663874765079062664269568078444639364615901368016768718650541009450928375467154176622571842287120711434768967169276732372779099489400484194919958117919410424699926975135529484770522273974673881012590404271037095944251447638426127928535769790978995859404854167412568372044951472657186192531625233087955503309534201196920679931872222255894557865523673741542191088191150378528853346380817958845309316223004619798043343939048415779546646256771567139743259498114942285559926648521236226435699499969055509521072410604517102328107705586699870985970951974604465585454605857289071716715025014568988808571584661897804522673998230926321366663656622216601950493286934836474336792597414996857058910112926890161018129593194740891802207877983814159072478609802066649741136954791366133087458919272484924597177691349557148998302632534451722619258175486324766575579062245432748640584420081227029845291083371048078139410689415494679961624738792819584895672157351933448932112553017476473780738746605669686446850203601167173689193645898770313232658167421162498170818088421784706439716486691964876896313501894882836384163212613238731709652733008646225472432647320240415027919387616253411579870584627014774882229997595627139745526870319861992510377890895195174521634439862924653759166250630083729551370103926850156668057475795965790394916892497466971247759171072681417527299162083673314722281707747356753983267041986346528683069683275630205153899262632476886712367353535597167347666207460289840130095495112702558474018421706796517677544545606232915229756904372007733180276429641799484541190212742740664288549122636768237362302074752780379953545018567620017483919763942120192722007846942540601232508667748951901969563539882784268744714893917901987931886224658290027266096603694555233798681612823297836482983145212579597217389785511637818289455615143694718373857592644043777910547718713916496921457396683414569037492570801625823815405928724305163826172597621328753031709774656686116364590595231648543709555887174399325999810512931547707287619079576035088962852954752563100828807505168616719130668150312544144130552385220853767351505751583529970541668076407096611922844849344124458310126585905468483167832208412324377709523249472040105021267719757452475497321252484643303281585941825335185155557864742548173239665131249629823248041838768213592685571929965067547598244276834921366685867956493711533847625424344675883108455823811942381455306375695215009845881907186523810082753634772797134468396137828705980121312661099809545941900983623896901925940564745118260971059545621486667486228813620244749768585765672415942107219520124885369168594374557433847358938802318793998628641562273375581841666696361939181714312914072291542179937974580949555345245677537133588357511900721835470338358964768717885133186636786838886629900335264417367557033541171313031598976898344590109362880153522952890743779376322832343637578015610926368953687388495401676585827895666019681151394147139597395108289384157188284242930934213718397680384811992682749820929321717168387787763590615441586172482455667871226754413615357427791477325464239831954492108679576931767219120152857472680076742948726911943448846670376086364424914196297102443449154588974887216952966649338745030418219504978752753318803379622778894932449582239655955117911251428895373326179239652921295233912326905273813185668919547948771243819852764369380488238552080813127894212291656832097808826096635395911311522209616951325232356230265376099916334426058411568443527738355475182645196632940127162529677351398640417793896182271355141886726346128128277659421368957671484886864276458882727087253266408482467243201696666068752736457700520444415613941876077671790685353465444086696330144163587139718147243752452101356611716388347230152586707194385472947704926253076661579347515585809888259686864614942470897741141819554559595228617710686279497984423582844332238572914969846827370553547222297714950349958662046884588817636438896856643022630169355930531368547466396551102449890365775023666978912727560754963194985452988209709871770294884298470792616183248148495322271141248214112185155169218347222278021450297161548971303248916372226282941891710577699715774300997773967786078214469309090878880314961832740688764611837029176596454329433688048525638177830337516196604961787567863637362009303154839895770559357397352216853688812548913459503493783419765756160926361414185059655933349917731932302376607931507793853452994677684907814624939638600275635770093086202889078574397305198320887087942077493955200016438887921953387028188240805544439519729548687689341390753069554478234536242151684402838572151290445043208910197770977051881218352844824224331753466440309111925311550276416105432984887064592513633489207700409012268508734963186983844613171198949610246504946334854202602924837525828337510761958092283653610974225307266939520719158393073854953653163303147363321176547779770161955751222474060335444388952195050919223108112220873030811597266943741337911879155453334496222480518965396186234324257479956664902916364583278460254633134163633116357539526436784817384793564517131421415415724668155103465924515127292664522072840284451652852645083975441270176455903447173734254242493551073158955655781423241497218129816881154693522986451233779706367745513690351943991594745106032884448429448405759381567337644117848501187049274922332406277