2323510956879478427177920221227365859569966064302395307442339486817942187390193008733547381140233437325407288974907620949064699991314420658069256373312218646313586915388744437643807972891884827475497184121915371718766591449303536962712675224018688181154212251483444250725965739423557916739376608787331447587799019298644789842527116979632840365193749666049454182839212797983693499734498728578293049303687154266852575321848621131891992086857498037505560283189281258192593022785221956115357240544618569918869767497971847746924565631320039874589272578389683231762267356868648593432575302990911149763439520375566426173189287493243934059322986294842206550719731335317511230514911862340994594883434975822581486727975013491165114099723624799022943147839851507970937132910480994170837298816764970673048198258180389119119130745280557782833025829596969334447393216576749725742149173477099575670284652057189103646943131008508271251950233256775175625316876393442475510842004368488271323565634851085763183978571999813666823197240149299768321166308960842832898793334810282848375375324626675585287219550379445245669659058563108859763409669159122355782755430202315435358604540681266046119622584296752089492891198446996735506744372659365645527620288744649267505664271747662319962017641898612784345168215085827390638018017206977160308166319480055349589790662518360274525248792937166346878429266657934276396460408271983274027640894219475700386610272147148421173094485648631328192126323548462649943687798977565075806988357816653845946235762518122340988355465649455114474881508883105032335364095385776188736404985793258499161473772836060846592147033818950459498931056947849405184413227573838293728129113996557318393130653390469868137284281739288601355043235897550131236166678504483914460354928253290692830472915891176138802468618424429277311714085725865945121512761070805563966549419507790979520852017400820769843869148155291564393380206226145197587217905660240175203962979097454534370744661187142058968238576031395583483165667293224295079280282475328231509156482206358758227114594917381898045299448141977865840933084585106585194631182838393188693140634999239430375927481722159089099381219842895788006221254091419484621462070691641381846647361602229157810592012712465740747913935822418427017202110016662421645012455884137052833170532722159946616996991556493601233769441599072467513415951066386717481488168213508628910234924569274376554179149967599740101404623734021931136231061429848159593324265045207039931349928447121482221915714455104988935503010591816912242564300671957329615709041221250908699048424205985099106743932445861533926189797328587859322524829487049231754019494949028341844966492746214700698564331547567175314184265713198486396617993682371461765287438673392354711923175115443627607260637366858870336666834955191725718874993639493308729619258242006329360377418361582838069648898568145263546254782408608587979698198577221971381527613579717027128940848543153519619678836278298514859535393631587478636740816879668861348832888343734196347088466445272715979075612617533420876234402791466634091460495742190152120575654572631017089308055858100379860520432278968700595565461220383551295862735433904275894988191131391149617190317652465810388957569124567772086798169772838440209923445035766797438363626049899753010238258242220571722455439140608763097347837077378899342865609373541370896010544314506557174186367016957320166492349904842397934502910418816226494269373949760581636558731166908093285228288326503208307043268256787468682967075985081857942546384772742828644296319091958171308853229395891928391723437981117334234269231630103296989637532421579433511140915111141477120254675876633488409477232612628687390483126918521989017315723422555732422343026416718150978822652467895484319215273076161731055862197575364771944842861280094263926160287307472455277755152271927572280197084582495186473648853382678337986498905665336390024929922592413622320223625189363372322518961953889940448814811847985914703366354146151050745302857663713811198737471284127844999955302767153631964298828019186168701364339191524988573414420274310806284667964131947129591304940392293589788390596491429458934560590388596499529349729112775546533926144536774815942108256665544694283693227806743019650925964838708756645927485544541151126556245679865877272829562211551470747153476828246474159250069917271241051635981502022654344818564935579398122968283947364608630276213793186319209182552054946292847432962593941355948165811012081244370519352124417812904724870335219517949435662386911130795818108411029405578942455367439865331123839295559819697794111388359625956248530609066200952014552743512911024936325851744330856677958428874128892507401615345874585494426147295666400164022343719338949717081830322833776633485008551306688375591447297988142888532331360701072185859235212436310361605632213760756655908604113235347211396169610511419965776385415289446361912376209170798980286547658184232298516535372379817195894057966173944874779522976952684677989915883497748942513471015568356437943780036271481739474312722477995538909825981276323999964581133442981425063870677130564699132557654360312275425471437694754719085359156179605685659913973374186313774376222251489219464183913475547263908040018471630514629909902819813086791738252428458332612416288421239539263410333252120911099079153299917245704760778843395482618371527979995988594746167155550614985158479715833966285524245335852243194636633652968304326509549417138768625776340835884995562993488846945228869276970815305718430828703169975566891564341588333749486927335421130456983589223927090782833333320484955110797892307822034127101733596469086534321964464040500782647921181761362372983980496372148582496919323777453460105972114419130274551617793661087490162211483064286038873383589488334807105750306518045393532578347426