585294309014643676387647359999947307901716256593592855349976967829325891156608684036202901678299094001764358238161117166235282877738544967411215237949193912602202132353105977919540024063227084591553506963542069189028997416715264808647629665515727828466837208996655594780584133373704780794062121521980725124925325964722733392852387430991266935783529248915626872302427318756488969464779350290731661153523844062434172580279282131479297461944233698781586074407767351535717404741172535474368025704666139461168651105287654951461573764852304748265695006384258791112427470954434663621239470965041116214686920966811735983066855432372017470630166977085146566226851678293045885040944511667513285828050726781871144758796839328923368569271954229885172764499871441880997774846327753692023934134529346915446237138140265320002940437737252947350190407916975829383778877456352659703802168067683864341423337225651046052038445216396424446222557645647814992381723365517122729911800826641827427797237630975539891138492289698146975721264650193682815136851528693983950499819811302704379796984957640910147395768779490915185571451406442720332072645453683809786310333995147768925538419573636056789563499718404639721763062804357732941509651632758060753655015906378209148954436063395144623744207324737943932587742459353389066812979876313524217649984515467687244747609649849946822244543083081392981419953502854780255686915557752825137307980721416375881928259332177554859639587287223286953218650221641962628173178938327862475516452606707515421944936872745581772489372322543777432944782408923270118771160613396187785573525004397379931379803545159758673322383431471230919412932140228133073422887150007935653497241294379127385684949021841793549021605640238516842566127613714811093124191687970437982609206159496932600464025860291282286340437416686844635723010725465117682285532415495259956981623076676525081845808306571243304575734337622244613490822183989859110745817538438434437213876725725561575860458489423235972100563376913326416812965326798342384546776792645179316638493171687182384559877790299384985150143455583926951534427996412319667557192655706112383747689814126306989654564981664661752635230458435869273392365293607821833961457911967424335009241761321296685393443470758222824352176582494985665070732433573648118351115667575218057167498945797639557885623588682633621084623908874648994193479694218688982018923912853663438678261356637815272322407272291162182319571248865016611768056863063308690613565198097704078659780352167592756034933573653673606804730127083932653296723198934322331036109133569836916270299429423849229882633249399499749531172703497971563687303921947704445401687436055649136913416197522528007403383883780610233841649285666529426723916745152291296958715750252567597588572504811926732444764766349491538614913434668947485333396487840258985249617948813235029067665180190596116191659395966226652187845790173409321867411077161444920887059170999096164167383397611796550413098999183943451249969208024973198415189672631566852489574472447325540160988233383262039745729872848627377269919572042576693337473499222637569529459013337394972331681817489962949031819658377199365247721561292564791623721748948086300550675358419992137399480650142049559416119135533882828404700990594349997650523153551886237112945299093404671292302390138195411694473382751969994454516835896470810178676404542757679767927179237321447327463285779698819054742714460498509487973932849694252929443717072039688321023581691730658334015883611713236423910419515766998545144473941377477713946480718085613166798259651800875022125728351488225277956687813716164951131104151062846739610911570828114925231276106161564925359408219413187698054634854591859126391647316859524842958701775512615803651761281369169820680672580247493085779357898799859719342769419998992538771806528533052475990788728270124738985660714730985653741399449212638129167087922308934797216542236978786174714737686641771178657170238329427434831182018022627116066057200521685645672820980550074830337651809809741310315155475894857517755237167918162385235677135032168356509647859776687670452258155835938773483688816085617553844938654263672097105973837114701866627169629167486404566458643855951247419204315579375569222944510095777957621961308237652373517207981459143361861876544774594696312014775627694137314370610631505797189473995655685208407172848844221333499198734664377334476196013163080151489547467153185106864434986222257497098658451222886730942169914394136882443871631753645336788181718775475638823302267747125660596650077653865773456067579870603750575893795057252731606722098729114120333573585190687859505778813585477228563442785635237360992433215126367572664235845080561317670118676755322438459665931353548559603723308322419590248231117443237753383355297203243659907649199167959170566687581777853580825051124166791975967752272456482981817441845015687029909013743892757255951125550170197153362988352874915032463732912071113895659209689717859261621859206524421717703438854160197499941844686807768136988191796253320945328370839058882246367746319431526152186923569397865594785675461778971932427419357001768512592039601355381470876742221406974621606419431546893374100752501473327303849528459494212922594374436247431195241314588744982931375494797265284894161818329187130112947645802256545544954111723886920278455423167657305318506957054397758837186073698384651938794324759673329441917609155549631438796409965744305446143918202584605440889719572148404344172832999940434219301719400199888680710433397486885683509950140291853596510119383856384210091154197624545825502329857592699826888587673296291570617050524586407591543888106576942124415015633582153764957383258543526686903250281683890978749613881423350943043351170167159107706146020083801139321705463631501653781949678728841694420640472868564891250914096214503330885506159372553110169796668600