682020584804196482760811056294799184545761218558491191282387424438662596814505583463262309128552304863745028932634183477427892478683248738649812696939726172057597616237242332811928794775742730458510567160151765478411056111674136182823691760856407265416960316286335835262937177843179042412979648961686646236834969644154912458903917462586940532694156166286989101242567909621761166066202388490551818479880012235627731139787217886090901421374552553461253682241599227949932213385468392156200541723682383869124365202243677775330534549055791531364239451704200742411454963171339196537489335252416180879859740376933984873547318996188891965370228128952139878645604980314078974262825075896242621209935857181889189388427864606775171198375327137678778273954022130619968970655268185043035972179227103852136558996007181660818576249164187923650235716886199981245091475987785068357960364846094224280282622223875529347466930174074818449439213189090359418389888314357973367409231797963858325008551420458304621811817529574522119766782190792072792371499942119852579438431956634279574688185188851725929659587788045730847170467846704738797979877179484781934482436623993194433365514888473522808263432442964079923209115252468265185723174731443293364383409721146948735212052930173080164206270406188305950132984353978484981724568223201777467273762730433795575201655868802309884683980205552478865737022922834636709809221402746523433769999407448179023782077777205231111102880127628679145283112242964663279194429534505468565177763174169406261435891211714173823378101237017608861176383851885547881112196330377836830167225982277436531947808086540638467853246124216355758068604239271518012799964462551956213289257661138120242861556108918696326946774849994134988931861489758830554889329587189937336421077552552730484742123991071049598107569389597697881966064870931683812352811826828766921516771339245846610645067200662494638675718888391443242178995567325263710858150605974895464140583706667259958862539594999351375155109819398541395414103508592795871049759361443464492773224389342509887630161128397291284461904130792989276627822424502984991817071583292876315975559198257471806768413873663430419424157052289471185588665787021233310844557419639010422549479593409285951352864195851665588856467705906194225082667866150965575531264473185405416401390312659637275829880549139474854943119918717524125486676343738764635372471386285567958904501996795667890362010908291296025082644291891668060898342384513729671682370466913765357644936394252418274472342853149228035400629344176986078840342833471266511518644759471691170939450618784868017436231247951272966233797554616823726148170239784829911194574261867964804870983856317355326667443996128176151200557241233161849927935467882811552176263169798166861280594319184430490497262178278364356605920629967860743519254459627140384747522488656998532439811678038408933449716868561613095682159673056449389786915734857396206555268785128766507823585406107957251081327035627168165199632467888293899449945188050386794403614048285893195347307137455008649668971890951098784826943202243293083803866480149899738197640443351963737459191604934814373813726274229662390712242334169623864172256344650594133615333126421702911683698040310757198604500478695583413045583612737411169522506784363498528895655013288587740053327488223312027111570961501993218283879234885970685864168296881306469628444435155520890069443976753759688908290111024732598127210442159808800214382039636713939449120563957934513461701067205409990789637962490872403239728779335330691014385265493227484301687046519773110983467363364541639555439818747228603657475524674165359551845942014907237857276849180414491686209726142092209602089343197602023898638566544101219421670872096458238622114010364598843271797005913382905057579039127555867754533761585765716700920165135686188741465510617836677996949847722095808477414503916928345602398894169289795681718936747009179982295057908965416200148543591592715605833329159961297489863512284085696553661947101198149059085577683767658994688644427800415790783737537425854854225928160272331762129157438141219174812251348366182555827257747450770848289117870902533669137605973912806062440232424222909465114045727888864654490526057439648664219595459697675151297334672585310042935263920939323643653944186311025182830501669946564464496493181838230596482249773243642199410258557031195378994530791456328649770793869650335351196873508676997444991742127606596913897446810139441027686627541198016770671689088658308901451212514501235895413687261997948531305929527498539175321896741261608209090216373982914968180206116288062797366029899057137755307846809076248051163528646469672164762855331943244414219261141772688712248698011476213379792710399293186284134724447897851863294989891051415645349497744782662062802259842527535697183873365175925438847988149532701772768261992444015903587958201028396624034241431265814875141857342526831495312827569626168966918995463967284639825328438142213754797492886157416395737835937998967777134351618137271080861256938875371996330691699468618533089256716082807054216240253825667844012555800507383322662296745463307869047104114446145986297459445347382709297513684458108594328843831729298757555631514595832827315074086145980499894511660660813604481374671107568980778554356996244848174824394509022772775931436826689187853141077226281394738447617390245131446479883810238253832993994002205327078007477125897505686439630536841127743051114268078127935924462795492176335718299801253355271709265603776349272870650372766156088763542519714846922351928383789508649309267452122743637129570389549355630116713727655923689269993288563747021358695149957894421770062754545649193985341712860520881105240241198113779179415691862548459978783256892326288134460299179234334846925997041831083192189638904455677548564208245578156844836419864739653537225847343954725006