12061056637622363521967909852144171949683901643818342848793927288781152868658381638848770129695432244684468648153446409020491725882052127912710873956763257772988931069349728164651886183477869279425206622673910998314031277313498534095184689438229610380160852172826562641232411395182446489213164823838072491157588168891170143196931090476949799970258347766048788133783348651323898714476223265309883956494166002240593190267692795714192705267678679871555602371221627993421741978176893148341534357937534168896108218608614795216914174692024987185432043482741652397873950973692686324868556549646419485542420736419729665515890469178895153791395186134819102368777245334893255657818574842943896130658201297722212111264922415902150174997028805627040515338136186208156847423624331245759909694321559601437759913728927433348289195384600190614887626248329744314085632674487464195243920777059898609571994877878173980622114686425691635489555377567906910198024548341637056642851712883187112186881498972258683323303310386951607365441013907593495225844903893786322458152849587806128256793307644155761077215038699920806229889104026348317368392064804080788608898922025944937261275113196479989441467942145625974152416798319098986768556862662213344080958663382092477247551058435944856206591437294276635527784677977631748180932880444172331988467811074161576867419827932858425919311619282939678251412378432467124833925929554959011617210695117729890644662292188646861995741483223949039776222742315256951908165850636005298277745441524186393842852696704700819676055398153751584481268346431864621666323906994268236642239238488653199331617073142767735434972532512996443240990904357274154449658844778824015083754761036367185217470415567812361375385459615049172669568295125731464298768194620352158790469362014561580945479479919433618059611589546104191536101234161398532848897377402588111783684380443130391646230460351157427254615153205085210331317719813234537136379770454795793899004849833053832243766198211211732353325594401840212087745916878222506176365423494871838865327748459973214144695148335468402257443678166640242296167844084283261871957086616102997136509617875156828411179538717973347179594879644604781853665357795322585362232877080137319972092573409496101569422135352434847278911678149886055582205476934916291087292048783977472030804583184246537550764584646611723328217557995266236647437762918655805673885848926799874639462052692185411908030785062912225621792275206500243027137632492614243351241795872240484429153475799569049586076114789218411463154273865261447138015708410012329411742755378567382357372464740650139718495390713021021345217441305581882757429641226365424028827924632393975777358973298565152872427439196759398956415925373413415553196558613622749572288175134942175909596713805289277147741380511534515602954713754982403208691929500747291963881825986098947174392027889503551434167392564303878579260217169338279827871154929231388246481033095281821503961117793419801482228932715476998486800673512559509689779522152608131813589278854945951177267684603084976588467812314246320054239473513098096363018582592826559638160816248627188266254344673498259208929772473089152711443563848239166098766031671936899074942415421685314801749584942166366796239765949078655337797958368159599952776882172775675599847934020295874185433844491192888991481062099771833314791949190418974350255249309216447592316866468715284584607494532412264975877907913008473335629483122233922347174737639792453262521049273541538980896672847603133102282304920927583879054517345758216502414386186979149305952761359941412312303693366343041267723958629346279746431489336279770739437140840515171091861765762247782731449017447789261927015520632571052673831283207552001077016733177361311888234815681185422931476798823665026322434803329707158839164745903622701845261362774568403690432354833077389786191831844502089417476168834611825411916854278442937798873428156776792417877001406190654524489985269433941228268782172723967517212323302629194822760663654612465341496566156394526512718435158588666432089669374154342314488286799196326543985519156376728587381373055952957121800678179809244265128032103377262654854718413009076656898736664327683832458463117722849452271469074273361742710978314139122115743844187516148224787649950448182889778129473997973018535598669867101567710993249985921766583092664836179543117349256211242647353498254485472499430106033243824565987364195390932821482737494521968858383906931323071085302799591694673258838205068385012330097986797128871963699764215521646195707616391637845441559364475433468350225168129960835035376621225512047342418834078605791240586072289098254194130937534064834556128593735252772683362869217418794520934028767722464461336493081952934250357943469077837142101091496653281881183221731996615873394213459286128468799167359253465438139465319483765975347701921887411819249757845231504969564571894423726722960165644063841454584284254996773321365757169557912933225480639105015904486908352772991141653889718730442271897626143489618439217059596305578124467197306177381753281180901421667276418359624031785623758231551426347386213897451875919793517932991525052911051182344809998024854545197363909127931915696195342674275846205466535016820178175236655543674967963564348222909812047299763932185798845056243687465532702672785226551944230576313297236346756923816664284591551865143450123328047231662934093532158059815630409788969308632146664028446028241165826516502142594939171795331523982898145246336739775146057282758277841017599374420572364100042461606196934540930553947684530916295778898144968545448393401757921441595795647977692338583987577259329414861739826916157838195746125041352047898270111119696452455188830325476847691065897773137941687073017396431134242643212396183329441908381177977555219314011649155533771595289117675654848736969616456979674476475698216439