16970363017662261293894104160102445202438487803610593362442335630658710945277147196689304770704187211122796284459565401828153261672397629783698888787908885901381480216972787021748092729299519356263954122629321573334472472724401292922372603829828509698946014138544658596489735829971839818475862249684144341153886561573154865583253786318510208842392933690275580155641528081023348595946156089045943071156417257804622329523977828687988516731560936433051343746812861756534430082117060293430273778267984224848113886158505668234716700630845141550906530464131920632047350476187657961746919946371636681421154797311349494930201472179077386245140919583324441622344569643229206979932230925550319835791840316055353905208328939747163095904167148128354646475971009941728687601055488000895944867874642055658172663786421691639949273398551271932603320143177084100944966625729758821853625565239691724068132049685727179083911410351365321953475451814760064412099133788405663497162251449895456937383652228905816640420848783140775507889551386495347225759489336625348523632767434291552253369532754052574547409169566502391282741876523564543725510385636225186680742395960965089649671321995927503702584598214901061531217936510586538889135246093745937516799182853421638423258448384300288929509221450477836495904493117271037152156237049910759470864339366714314479455196084846075675705990299067092951161923232681667125785027384411153014671191503539808270889567634827157140625645234625341046465686944394614425349468870967482331974805251618912714191357145392822007536715977088537540413993632645398872170671393347022251318850663108770351267009956296556627984922710676079291855287263228753108420958863690583233540881159558415541029965862360193911544114082094571550537664576965815164031772376088739382832557373187806328468303353222021833112438777739580148977209981239849517170494086288580724842887196379836781896376657804287247118144500614850677132196080733023900528282223466810633713554992684906016128603302084522382728573107169388360553354933592481348603569811264818144843226210033516692855278971880630484595236585299329636893573841467276542542887591730171191855954484879222293371208365535032779206477323408753658618049165060848826287015144887136752662510176835796368054299646916241447435986823687989239609237311907776722948534035578268628951256018445181740471271257146087951817221293525458545693739301180201119927743407349132106870791060307998767840400574363433648616728797260330166616617970320036282895292639439710660204089594781329975657485236918642416153013394294885011168523449508878749395834664909411202379079614426558862559142174529653995117476283728161255681819696698425941955840540134288982918888058784753373216417219072456529701068047104226718466286526731682133291128083352264782498168491189730614675384514551258361315319167489479447945845756943218155813570648584845444771477188762149525833705908430566549663190024897240789183422266718075335635186836414513977478901191586653652048466262228671914540571834581515897589943328889441221667973869477311306735217278422377718125943531957505262179565022789871548158907712191274647281766493144778642064245161135554361273714574540326071621456521506725398989128317675162966870267814472303190444883305970770447030207169874411236194577754161261397864562730067552353341365973645198544108377878848774730616698405045753480746800656410722631759743379727430596676880211525284071732387951499671741938434670412498782578320825588054801857754807113420951470253911241624780135244811603068127850009265533590161144567466972226763380407883148499804861356657899197087141993908029149543843811022056689120802240478377819038542826644025995520671543266077898113145591154319424079506820049587363544203214393558789278329403147931219199281395928167545253402813607353136645758257601657880225221835648264209099275924372895697190776247955934675921117210111278649533733198742948384358235783815519984051270260066836360307161370729160428675799753341871528494845361798615754661930216855446396527663692262546890994043307473736053843250245727714779592630281680389498866013372386166712770323137281961165190549370979062686439876762962494289313327601525902884616916401147944016666972652161468911566853858414825799629119988060470080774407514272301114248012277642151243379773555151283101161835332192827861292735946279664061621016548321150052761050617176196721282235291381775193293777899010782669802742582334349698117717719920476451755547580435519915618759965863880619116888215936930561814360626062869245519757056155287867893232460127924197059898914640343628259818219761994239169639031459238320605323996334889933206446321435208265736906933528037217802487718024166750698779505890844767411488656889599905753998657518798590641927451662261457952920019360151871544599339477148044729231143964541823214197551650103920793334333496688525421262048843099301053847714936466454957593406968608537327899748451626115912146208015509495517479182573337841877695378053290835762129326153645323607240357026606836337203527677025319575911232868898168516777881485365041863168261267497668392924387404388705028661352256936842535974913260935234641199303428577373771160950771753579663770255775394166976942679509932412633309045416366492154996714502417298855471192827764500894124893146187389756279147648714472369367867688141908759522420448384385744572320333416443540826917982299255943580845599475612768331666771366952269259954438776906847751445733577931494463933362028221471499304535470721684692088288547700258023650673535751305726394367842304845225348354498409992908910946158642066131969164263772259671415197948635110249545805806027711329613799923898826619697921228280529833949364907942366330914290999102514179845523890770227062249199890788065942918212770237491672345795606438323673203032614391557265614902956271603785241227602722939599827430248299129623807437954854244647751835923