31388836668953295061106581885814980291669902280280132906056665613259628384642252818318131847288505653510471815688017876885311624293972177408959427014891634173628279323838613877114453781953137396526461289144400847238018370361623392731424172385688477918814567138234409496030902971714254527028261260072438465073639937155999083126133748417129632129042480149642962446644753776297460396819695812460186792774113232639194345698693548416788577531594944180532636992629811751282884862966166327637677896166511356960579461485794470228209521047735430265024377294752710366580585757820622889323680379684621261426129492815919668407316903430465392260320176979848012383913468597806781653030255577451823302538873418839720781266193633960310771916639268659017795965535539607120521338488244472913096634275125752024928785092452965520321156691591229947561832415009759236152206327749395411851737670298626386795183314875519943484512989292342167558196682892347210761723966157080257062325928187122639357651611813121820423512575922647270446361552352857202509988617154514801572629165322274018396885130913158531867725827070229694187076960228638292176462985412627056234683211346613727177384674672265706653913414345519438661537104122781294053208132868847314687264397553348461310802422549512655370092463827649046841713177796628228661911408566803637327794096117391837639465792307860794599848560183160716163240097035050563051923380254039852767172176363489048310410687080886778979326855333772070833894324409879299785606946244968231515347712130262190966808954558408762800025515534618967572262322979578639534647540524510785599361221695740333299845009193055847636374220572449990866135038807805383175444729903892649466758623645759884186621435306405441926936232143537298846619487138785184423719852690378840838637642388393954201337781944258317846241365784792632890289457412444436005655253995224481626283721459937806114400381487918735969213438125433054375265949596679915778569074021116154923469315179783971995435025715044925224379200672467549828198791535693845255750128294907584367343356647679863923802849146888532973266515093310530891819727700869276545856411734617327527289420847454626373728344558145637630330719419313947872647973610615777661711812516288628663542943827866497905200956933951308097976209858969921709900945636145345681348811164405657864059816338556702161063835217933929821363287596220893788644273757146525291599477387627236235004454666659916342707432424492160418945288522633963538954816593567617561936781912576569687411433879412364074588016888230443869837845255231168738768991793642768663947790892686523135999123097795653814629286118116574862926979928332438920952717982239307430881692763835701186190343819259250108875243472279551151849835887176298427667750445132799856324481695296744780447603335399383409296688428896641901916643385318120732775387334990743762430378968539850564870016814412712317963721320316984317160575951397257921656256441517420260266003331115741850726834000753316341225577431427257335094482036294695148967931085622435865834419622483792813038683005997310022038590388571358795931206890981872362208643549242069749360671460391999172984219577705897045488196872808361351266613223378289508061753182105858034506471866777397458895310634457771176966451402271876813427889314884455272720968446636257563378986690756216406824710858948970511979078640082631284188939924967851082850728395123737569747969376226790516686567927859305269782588389890476561278813330756679031748673332448897246014008287064766134805492854266492534041786587900012556516914140738943296260485919619496889361851815439721189753143649337983742959904803744405175208038666036724134997442396612555981273277149923042751609351043934857995517499240359766204534482713174248040164429231420361973185553260267373358499475981240316636998725384456454887207910594397544469250382689358070327016013893544684854254991780528930865449871223858743151645182970086630906727447126600391277480591620634425617160625293108127977715646978223273172200502235239551141780091214907190990256625796589858043625677790911344435764112586018273907475163398869423747627537995656204832696411662256761271207460567742682221177070963079838040908664171517235353206903883951575834550233216181325739681756242430246601061850657291899113413509082894744527597711677140269101424339193871300279688255039908587017808959877621894483995753496704253498514998859755811700211267444475259219563220767503349628794083996348652453631808488197306154464253056370855189729618631654701594967433107556407389807185015281511175125293291679728273149164714174776323882710521145650576117137692310573582346391635749281984804655201159732065203523537190273684828779817052766394102247636381946647347183960599189584047854187784574758718867538579178203186653363553171723619945549355372673267964290559256151506554815387827995388916920199997804971256485224648428313126251360912260155975323011909145992387135458082543985623903999222109895320941796503467858437002972154743092738408854413200818765594068009983274134811243830123884889153637933915382542844659498041731059962696632685305870293436142032863244071706019677999547194477959587454112763557763221272153753760495831617361851019892697464384158303575910724179775544795146425117580316632817949890728173468469289324884884524611201561061337677536713372938535918462005723555861299896102546944621209379356927091830054299635276274657321577594874341891204518233930981749715383047205857104952946443179642844934815222816941117836971540902847077109059753583749868135938731444578308894634679525450622683151543879283924515203835734351404812258928303250281866873178848304243104926835710219298912015472277916306761624867185054227218265838417740285874323557966237343094535322615528941681668665472929263542993068391241468445755789506807129479397936264361601667134927957656297989682494062494845841556864717297887132398944137827