49808204221664132119587593862539679955039317476815695211676934844052927006300953219214555216827367347154084497328197011687213837485939897263137849667215953414364151887565911255785886821934891115423178676556754409207330698871936984706496615376313692421206451989662070998165996353982351751992681256535688180941153208131337612172815120304408133430513907558712619609252334115019178365261110906512262981956778750245068986833335676669847049775148867958382242200945629751612052007812622091717195214665821411411182922096391369526323558472571417058366068821996193842337435261958116156608024802233839485189032097960394150642569382463548418902353723065088576284405756771250029094743394907409421586568663998248059048306694976402857652687950822548492015235219538868641892852192534614694021755123379348770134291905325625822173728818640626894713450184251045293556935962023904412249043615751852473711556713398291542901365254514982882875460127287364945047593932996259558635471281790451918304609899070749069465756761533681156772163873273014485284307046317326531071016956358930631411803810453456781538414102222088796745890648250129493984353646435659872823728849723424664189459894335612346737386723334513878089781618142284553513281117897255457466663664528648792839269304629849808324335983177204365333228580392032647143462753952799359417155347557689825296954160856529925141179659694747159216649913254974448650658301814320110695811594493097143523373965449927663424212111514332328594364257227073702651368797256108327294648264726153962726147511862135487266081439670687873951932397966138866683734625220055735343835342459102717364066693641331472857474029268629412501574067839981729553930704473809279926434689098816284348177064080467080074333208286444660565414296386442267056462711943814639118038271169887815887311672169941948980370146095114587068203848548486619260133295683535123707601731457311107876392163949607665895592232465618865741686385871883739999276493031850917567416794356193127896175665565091669696075667763423290668645393494548111800528704231560878396261548548133395243500110564671441886896437089987215403662681525894491966554889907478497295688000698238659159720475725158702133287377134273139825913097172661785980038678164274701428599710485575870163322089154867171701971352073127242475581738295036228605940739421612240998213724040315435309990555997325940993490462587487227322150332476364135367558146476732197568588834752457749826355963931076602094172692939137254843203879738548782161481433247289118107265147349417053945552523928858038844134128807264197341050659497514539461877237281668944496343436869152869482524098311029669928257646675019195667988482681421513341261724596082653342405036906217083408510113618172301525815387481555923446777333469301588626052087633473604141146541681710797590558802782915536065851501190842678979174799249712665746674811459661303163312672553200889252844080681674284557268515739160689827453939603914918629255043483754299992879430661936508860977152496449230826905700665448346654404774093100261765784401153681686985063856345846626870719039890902139494823355058872895748083421715488368901526161816396739471842363887801247159585318868468286606444760210736853509191308964784033685852171201487252362279129553836578072709173854144880412184532932979587906348576912016875714448346328883593217478621367144776547555008338935704903560762368188608049441251179833142355528619045333155840898593193515798478994928327598254870340415916399195633082652251343307902109236923249978085757231638449346273466080097681322939266429925348313778224154675036379259251601185753479131357190736758372204898048619393697956844292562866451386159329961342387044696549397816315439500967452229448861621937064933813746437765386599898384961052101681840182625620194733233547446012299657336914047903111125528114572248432169630395243919573599309534633511679557968456731383549632898974845433989886745989289296653454743748146506311313598762208600782495453555360956377287852535238074919419232579405601785488343703485670731819158514426479036388100223046924415313851169629672027413528848702485457085428183320808978373490743029918053859667639994604282564169343533704550177272378444559635153056692334898976006179922130755039262232860804860133739592990799341366057199818709364194956171111588063700626796019977362829313249388535316263727301554048521367189176183220872139421249811559238346460041263106787812865323362622991839473085231517113461148853996091236379298566703589861959144592385359554984104921639869350869240650252742772983287043483040871963667356353879381497978473685774452680449477894638479438696325043547071589535266626732154788639245397341422277885421525164755623241554280625053746864995695605787773176711692674599153080639879554268578727166549894238578871019954252753556356145195943347507079504536932580741858541131541422954483738434935001636173407419901424853925440172214942204614472667570724150838140923732901491814747384321469010435256835686820510134438414797547829105065827112396999263809489419757907465679778904803144595751829596532731984676644017668247228190133026274828168091805588541204110279745576770921383612891504227538199317735579335983617714159779575915358877335737492059117787600029803685786958257492268583404780501233955785469184939880788649085552374078210977114648666292847213372756460385950499532630420445498762316855131397792892549537041178722184376933524553205406542053885178412298469181468817732409818719141118121232752672533985604297181968597193355872554141510358965282891048375231282487011464980742283035295331990607629713016820321959174570961036918996598621211744549293504992629801994965295091306986507569752636542860532551314727377273411695531145406662870531255327961280907009793791088400695175882181681928818432142799636638148548391589090636322592930844199233303149454671370749317766839564415810473675803617826998655365482815116549775337686