12603341871063804907137681279508694732722372286592283776667431156407635794838852875506294193377852022200245090024335547475363935499784838661534582429278960855186870771041349921626199758325511887949311296939758479641483502266827626308162957326172924765375123761541464464214283697771875232497514743902841916557907258385048296856060189844952883817935160618907347250175889002466849744407030356788464639995789445981768572573981618891748833751289940893936481896127874884001720889118823148567898615966919849718656557286857871874727023078676956378182345221546823114551253073295277440707911904942492225638531539047801459498277678006468165548029787821175818728869344049546321420548011205666819919291189388573059463917488814858506986951217372784794579965397624462256075749343223461977614777990797574654303746480832504173300058337894300285831876115999463839054805956445531286480538643563520862692559974499815432413552320194919791313772546660843096148084508195533336232473917594278892686829975410159468007693947635437393894335597930726115660297211070142341464423189113995255427243211841134412444921738803742052983689433349921792566287446986385742737841113652896256872187350111066283465111658919943299488867240892450173221734656962638249237488971236647280934244523733316230996477586291282768418866262665284249082632274476437908797952073150227688427865463933987432948558723669164214545377997141169528513792694875377017089689848332273904750727968133322923241471101850595369036063419974292837348697727113949252014463068915624019624396713399873959946945744671533497181477245442284068062457169561555326869662203959243259949279623460399064742332048818888830348106210341499978398912556100565154965609338823157167893309635577938419508981047627649291038925981768726126344086287850633865366117259128358481475044186611231930201806751839486013800391466897765247528815349351891397695754685858691778809037636567319393926644911915596553914620576642811360929057359904716352145314289225598578222323461161656928539327703914683107596469225030680565993716482417184682417334452729952051489482266628942332256128965507674235682236193859823717455775847734506906286236052437497795595922567779003880527821973343581521883489872906527782277996160408579188277259312203368340944298047414229972796779184891987488972146893361113064350849840713122869887876994590306883988450762766543161012600854221399464760107507128494931147594371252391459368246109798684568225205820421708328544196918479148351378872936228309318726918575111717703974448099501455221275597624143339312771209669481334211674803803139258067976031386941348634829133276038978749350538424675536824652977029551757897535377764631036174856439905141616290469367650551428338670111355452788585295073879263680978283750266361147166754402067853032181936451193019357100274766552828378914537935121662984656836061241159489247372661900957658552218143439702345450931285338123362382916942752139621909890269952125496418241477572291792564117314842094871558307732989668815364259023267102548955421355154412143437365566265379767118693478036518346717904583377386956756969058146746314526122529339499295332377316327639043146572246584535318529474913312708677697714049804872863975979604496166818916627271075404796389419328977114985145069254208150254334247948653359521309216248173478320885134319644098567169555219904423452305637740945258484522364639227526582036815036541501142282843988683555562739063215885677338212591296826617469342458287787562206420198833234484657359158096205752280316759218845260282683378422168349704936128756764574319103315700319651750933672693391626373967135283132202880163184433734657505153966484464969976822142412423224760665986696530859807360875107865677182515038687527126240908461877894906020568664207341268541491921514221559435862725366680591617465004285816865021835364574574029769854348717312850152101713899772195923383372624952315143384414604694748954345475161223779286359634056718655135274031406716097616012217364864825676059828263888702006502748988177714231951692634407229374971278233541769955088421995134973178055132154533152027513222111893182120752381887516469254859520308196641446698936970612635834233338454872902319574713591127495593830617349937564321096003244764153806450174131074862999783832629893054563387832165992979683778372787620612217013007884743191814843357781703093922225048739770194084851204104362203162426745978528143912002029276813464215735879163682622211662430517406956784076380858189092238815675595557437901234688556067240703288525176138141104852350379517742222140637090959898632907838176195469797042983690377853282167256820255987631768783931593745184125670385337486776211577310626430464525969085650572632230439043459647331147394421461634582584710812286291252228218143493879323040646213954076913672771699596606393629965773564854481607363923572603160753097729564534178458649569738649564873618812436623358589987798168106296375761691752322398897256353450861587677931184656108280792613641738775458593661478600069027569266852778880932660759527064015952564728232424842729178211492727574720148165621512132614825825290557986577127140165387015457815065138568712792336605189877131714617362049895875117482624470784345368458186887874632712063217235171622088971315263533975923379897930314711387256891426986622549025275403888475246274618310015566893570992183349386501419765553120873445889465647872951328668958966618790496317044554427666166505358115346965119207052708764672406955172924198193086120949388312097837939174194685188017777192956925863408843789658629402333287301439457549865192745281689516211032362377413403692926399659859423232901351937730199924717494676000799119122450597776143338754318295281994352701705115330432274421379388822125483581193696094734130725015281890919497323260924445938678954715144177564595772448823510724355247370698876738793339804954745463608497832414191379086770158836531708177339520682507