16171328387554482685331190882434878520109851968394236284189070885801434527845335973240474097715088311557790144497352432582799609245144121372993345214004974299863754972271456224591158591248307096941235707529768020650235156913868159704225383380563266853695524826539032364375227669298357388429586988639026694903985115430678482396862074356779872632225795354467558878191436314618009959231433257621572147432472648747254406763485605324704331569275822371826974698585951176758184624335631599565702779132257334266802442925172696866986554652641894972122918563372289319587627615990775941150833977891757384495356652659159849897970741213314758423629907444531794044925051794281316296094503505385237145889135625295587773164807849670657695604456731374322301982891488279606537550468575515065585011546953626416727918189486548115032246082647044979055125536272088883680313398333487284683429313540220872316990209778067603729645032208358469270358983405183228131949129787514787307244392921884507971346370514647235383834524498928080136640502799694805227785029428323966413676151145033273827417020589318325916582023499252541778411778447598503416237550112750309071231043522061202638289666415850715314989239011255060446949476704647311368805064791949625767547642267351187445823795211883333555726265345228945642567079968236481033371169839532467024212272179539753754613169544707107770891879817882731258099240083073707219295232333040270887536283259225134738702418585794890569497161682366173435631433963998295601873237838607870339917456681325827190893237618247275491675321819606811696986016192996022942039276930079168492362151298968414541260157290792261912830795326424198705222016525710547388486933949011683418755508535902314103152823276974202716731612853429781047966690651957171377333272325504696148892317884154546787453433065157360259882684968788839948415194184599723613383492830029968233509074463800462317316975778124834604634194603959754578427931504973829358586982811416275029709931412394122482917311689208157720996142278260461142942729086619003213076075360786198269819477336979298128871927873987977592096194847473477055588960448348115739114667315362694337112479984485574402377449083766692366066668816697409634424411313884720866852003318118917214957058484457997815556938329831147334824333151257924019893380588346045527854222776972200479636228479644917974607987228063902292985211882118689071564279738960638081763407462962950477895337727458259994901829815322887387271935513784696984718752367765779053606744596562089282920827618111365819232156031858524640460954491710584626009888029152498783944603466636757494214932556964787556229166038603483571185861544640217118163736849558533219954003449493562844860891308500764929447846705131621418684168410374258497697558873432868889813225620676723156909639196006873540254767867580084770486665413930318527261327349594684399850176205899044763979632984207792868060693042307564226897312223447015214963378431966336770473874118543847989091364682868695810663965277259365433141896484450631834160756855295203807691960723494320796203507571198227394749899096082891799817419318796608872405913982699897386778624733918877502562848219929501121569910492962734904634477286117568744172020997365622666629238331891784875243238741626179752369577585740644805559711791831220396947906232724338922710305333108569958226985105814173838556470071015362569214832739735799912641731853715537861989093940167983029288371423184773653417758898441820072547687951988533701061961875453679770678932994302863801665754738139755620249155758388664076429218162503339115934019743498867713490663547205223750222801189206874716996958000172332734637672482820355473201767521816947196461442921644162908535679243233190768821551959516371571143205613665514656045018109750280419353171150995753907722610119125533641512949793739027553666162221925184317384496149729263846298761555551442883189935024471930173750295903244107869588912465567577568534686237015067676881121472933715918372532961145152994199450243534538308048668903051742592081095697117986563623975503810513596554788022439446388174185518803338754943095498734951861170618055004137593482859419837544797589498370926485958449088997381173441276430545240609891381343512305648324868069166526551102893967192924480354297813595996579535962608652658799061935606299729299750405679806412770429532572105163392421231912225395934227722623975352753356597115591942319037829978533840306626234345480779256435964846382497549187253451643118131049443827664676799362812402241777542676251079956344892488342890193003871105110212208286182130332477743460359625131235566197122166908824324097294234944446677219011670664751565975498265254637424835414299252439209821311416967823421065186204115761007266572982739432655903758803166992478822992902115640419729280319562612602712467556814238357734867281595417437574337269029955406478583859549564177489744106285885963814826691184629457481336737277077862324659968416249142355200965789492370367669445687680479203670127485997556744762052041739571097048872637476718803109131588388567332843774173747373963154091475152621996448966074442394805731155170973671919433982418681115712574652528319977041761390635340657639476680611486934473655237878336889377730870141777921971499849064347766159700174925917376189938993561902277378719896013558414508413158267494974612221796138442277794809563936599802768322592078633286333905781725683159669891580611936627398340726659196685151794449966455623373736535585990144405392226762108809748790538043951440798163552641617564376586240454878235783313688551918596346650616098377925425733627933406309962592717274349313631350711190513842420171483610907325922580796667121288194577964284331856004717609550686465925830623618063736387032595010743684615595562371036562157944917809780170519799853522398453255122976791577038628677141320366041611468455167710299174205696251489586809624880766556231872646512453127