984448181596680724346149401440524358961343769281995113035490254684846528547334111430224373968017653022783566701052804923663915621593035865875517301830840961363081868347395604619522349111937663851601905949190569943028402830575454300537659892130226292054940516914799911938426964884271832229202983655885714761595596740102356188289486340431524464797973163745209515632821976990305733551145919373982532088262218029883332454781398181876969703350833932609066503610073734549429596045841529398782724389364881459097213660423522488844774162821559389479787562763435480491945583103588511758377748573058410091401927130997777822618162791599351610381858466839019023711966302348926318345136666043274696516966582019103192735731877930072536791758824686373784988403999877079351644660557492547761982856356129864591356111438115217031412426376757676321383103971848246395811093513210868090614156024659604436087391756385436705811287424801004969834376933580922256519631984628131765323725594504135680444725944144713948702173347960972948785661260042453913144880136991683046999714231040374621452910116872495520962772957472669884876710938633662995767112274996737023296598617771115665754535674599672685347947969497287372746591457767260325774029450850444452263756712783984984581863245267243929260800380779605582834545424037271720694655931076111322356486581563965952820507158718027628291781529414978720383836839773003468327595721902489885758233772787746865382881445085880973566603319182442783935831353455153817381667259298345537811199790749173240310956411779917672108699891806437289391075447260262154028498456175214322775872126161147867406012306072458271167985148156292122976733228860123514174313683915393337470986122816011770387192785197935065380222324787548402438959084700366758881239907078047598771130980893304361309529024756619942687846160112519708703536666686564878294296375566798017657290461542259603351496092192033870840808132707878202305454932331394623691962298856613017453117642289261734589953938776054973155857497296508929822981793216627014650349246817408325216138928786257966862492476230178704550726274477233691141984974893054586928571284952309837081364172122990599821222831382774717537244494730013042352385248790246794913143244479769842964665973239938989591833132862516741863667426845823826924935153043346054150472058951964739238767235840075147574279991091934638764828675409665920785742808887547899773016462528144756344240030248460554883148109962586466909241555929111812658541842388479454633156402200412171612855339887192316639012837814378174741492119302945884669483460948830212037178868781398474326437590905466535160941832644794358461778543482542407995245075143801743471272959972695427575247452082272149298450823568356203950674257872114469822499081375867312084442259817958606212845415242468936067475512298685515983668758335531223004109857072632643562361899163990847213451783984072519166474918274757640110529554986697895852728255564653969412788761910981381133356774235129754693749635614169078993290851858589085604910177053654359989742894496940454852779045486723330925603747201388174294687876666518547064232086135464379530408967997838982922798341624225246334323017525662808246968883361141176165387922818737524961940565319360618081755534326155714963539611345023843917393332628876706116351274429312323434271761964351872329374602795183619479512682584129611730093797756955022729252935390218512879610666411898652401947870343317205972226412954377779867851991032927944386628779937659095688899053095856405475219174920954275456161578511811853219351447476754515120857848867291888136372622226940503039034149937141065884981868484936216537841467632982687966950554598635424611935574869221644722031299242585616813344499413566008793190687082698599285599482725621860440835636291129156862587254181886077287688231222451443528752082460785849047362759752299302668264485726344542893024831464382853086138953589445258624069346182439376603892399542821359134851180454533881619774063417958805715151460827048427363136298708376412728445605289149492702210353927291775257494462564561404267163553468705752211684936202270943528424413369386193588289876694304299646041623596033569166874896024767486243247039924657016607631795640153609758979028093452683064677562550763049157239064775733904153353599867688542024354414637545806077128217840177336829333232160029061293937119891713629297457068634779233037445304314729885566510133618411114550547539150460828267253290197048731738704936713959632293242791228636564235988418048986313969070004669773960393950919608789319604951711738715654467424117288187588133633163425193537510116164991267211012680717491535065714311718590661977948601695422390814533624111355684592818522153479403034843883059430567788816476352744349801334074391415850136497448978386176337868995221056987577810151806846972973379980493068401129794948399327712737317160473613262809717462182709815247225586778052821589963515409982711899470262342918471889871337423152593209123368191856519561659901314243834462759235095258391127172498877319599154463376123868179581834411264268365019078833325372166469137827777149430798240522332936055124411893811422988131994646517138290104952295041890950975984832178086722959747035491194277042062636897261551823036932956027855423190845355163734516977936636797117564554811615078928401386466937051093612119697798153173902877148346966252599082239044818263666447551639737888113464865220455793223859306228526158709489245043916180121810555247108215145614591731856330099237128522413005913347601403605317455117556398585976702478224818981448424601767151498191344442565332257525153418492772461441544646327974193746714066801435422138394172847189944399951272490492853595118908848889673266522033579800468414362673884513363887127413597207299709735991811348639891017292942589169249387567625595169881438381308717713079089739245145263842414355221191478952858782466903233842232540890944406262