4143730148309587529418772807100371077112984830679628884589935724541598668299211374399864837964061251476047751792814654533569103899274981129573816034468643234096419059903831534681251313384936764336334006319453701088289740698119370199600021655009473854812423213948234522282477694354847936457405291872494603571551183767600963433359743314458465435262199739965877142124788533957309494985254504700142273508236110336077594849949841248088488361301140302479662805428423106884518487089436371355043468529636450388170158167222176362665499636619701795935489983838140209195655256462056380448693221183942024854862042636822921989554567302610893430545154301767843364619952225187191614028941553087441307342789138827718632866289388927168870193016182217404522916973784586430340143020777756786432344121433279288560472218300784892042887967718002945868308014201454656144463693984904988345027693652372425189577327859320863477938857881814560935742013786587864184901462590239929472196106242513382143834773907958484310385745734769003528180413256905189631979216947713968854728545633134775774508522127110483178553800637628799976783568929540637639912717080151027381234705272505528642983727991907392463660734353999483247108475832065430731071311309798159596170525598108812436019066781659684772922073429083211984329782459636581854747730593243129522198382863037082755985621425339223300793829616447510873727969457135005273781134105382712926182135642911157735320931374158173249359181495116746071918626359594116136697295476951512891184832031048700927102961866340665849581521862724042237530965351878450767163164515244453483329842236967024686623852888158933997847149992432140876600616727934637906072061475727019828486734113010188555337240606516440253012244846452954982975586213416269805841055128440673417948312479468622298818786935396979894087434281131942904147056406203666297078938286327742287727742077732467899719483075505664314674601942525913735979113087310301820872602966540201014960452920458947924477147713163724573860909396785468483814096053792665870395001622507376939298805922435067134715012735148908832236124826047581530390059032272988548725472250615192357465631649866308335140342115292139392740741437407853806649476352143563642956240257451235958492495455020667729786851347669479302539349544085285513336525729220047575787290366742579789582528693985041099639221345934818867139237604102637520892949832212152815851927387294301770696669958637433256191613595555155607211589531834427278974494365593958356126968298738193199963259912022788939841121777819079769789224351295310681968366615196819279888311489895373295253603224847671484934786315384884954897880593403573313036955467891662312058919989027308349543973122276743466776864314598622909943875567650421881608173757066136482996757149339672198252924328892983645966361029601926298215333529813389049808846789741269797086446159659430803135446334523866606772130087192901223652046315315264477274711014621525358445274813183888583646405668334445856749111087000953022964628509496952926029292712316227566892528254321164631946461918333128141268670434128991375080756692224153153739548938606471923641589086476696800657857278702955684356753217619573282654941254731969102356025866240954111076300422833838625252202071932945506929918955822953989292491828109574088531395697289312323478375742375322292718644844598984357233812716616179194794474983227737681155774875467342418444217088179453320278536893743761535503035743256827493434785470718835136850636072558291367478719964267404728729886494850535827116428785510983274191356923418506050748368471739805818775156550665289371335289084807975913277598489713406135643366872303282764524492892357686269840443313382762149034294468087306869145774604754842272477190946885165815561820406254337292310098059383527690952657486722493580961219947374272145549162148412362941463310141960336215523382696652974178846574976642773853698492225713879457232481453185979574689023747711126033036710320511398183398325336246867863667693719217698083171801623829204151759279993501363533267092503773425618404387155641842546881107345257515715110998493543223465726329802909820134928492330326104124935466860006415339382342258177062684843627157879954665246747316022598581432372899680836907741312692253918516214614337289081774377194925651254161001273239161174101691673486032094915091547809788795472197183111986850755282077455265821150449024143245276179685555016888680229178599422199612097571729711932944729880214049922654113614304342408560902641274195148874751776946157645343909540958714654973443435725864517158911552784593357124633097627802836099996533893259697418739690961084124760581447318357043844222536935721354584616084026111886267986959249882988840377313393680261419681463712294551547181143464359460370731119128449195164546452580022341305470534137950224514311768652387511480473959525722167824067131424836631153399584065278760351063646551593263882025805619032056630138387713314057101014224295112229713006125334697523541485478387367682727804231228068962892130521801930596769341568416145455133162118439760822983635873525060306531558654654420954461613399308766841351323924544506198427393548113638573718553844043254384159340598923234609467777827999642567950437734592375990556671482939610977772915733817175694544968476971158769320159498948176596493125219683007005540144699949550947196626221168711942401872575607503021194828516328054525846337975442685114741141286834308226414539506158833722780182115893506688997134889734377416750459081396480197018696967858330450339575610125078156223042033605826211757895962845854363791542219734460728725722946017268877429167348838585644124338611359613390212989783471360746759792126625409477811760745160532610991824554882936507353282845443989411630473785100972317563779210330754460831275256358212765308067915639528142912603207134265370943762960775038264014838564712447406075470801081168542455