50814504101152471324720168316528265883768758511924198589552724283907464034939460406922046919772177632004689345864742842923397836686903637448037544633322164350169289463823504671631771760469713382296970410414252586830303522712024667648703874716656468909623269489183314151107609195722584031407494224993778067044353640440604934153158246667359990233517410995838074534909589317772098838473013894294894222836830363695612025309041993202657315113759347672042429518286071821693887988222334245262404202765624145670285987898077142194092176850319114559128812322656693678956985419898717863969398326707191658782348383268689083145160461604768179522817500093029300565348836451517651691126095269631957292228589722941055117146101818322522336829505372426257061539911913238044394127603680412466232147709271602539550814249347897788449626897281536617270559156348104196735349343630096662771076075854904064999267427464659615574072159534775248268981718343983051340848384099833142768593341580952505011295661893169651030847310132107541882874676779337347910815722770873665137623944039283663605370908082736529401075392659351222845716678076698616935121232810187654817065918656601038425327133072810469397612668187689320639711555366918744187419957199984873158288676701235134666577559958681646264547866208277267338610853566846517639325824231495735465371830498743557086466347578071576185972194136295018855164347637331316614959402527316169373210847599641989827121969643753119066994810214825743890801617723172650068118802854263637667585526037522463531478536876551951909759162179914633049954539841204518304410540257379242249481416230184182398273530821758288728489225657307944212393868460330967655941677533708710982120319005116632559108130998712988212251556269440087316799161677527225184420290009332310970034684460213140302793269261782615946868614745464996909000822768791365252914314217423287419138068929525680293975807060458477883126389654192419544049703517006530855896806856077838750360730739132614117643207730350826083904119991981721989279138862428632356157721581546191620592410728723136147106493025176200491211793909844008685241299672012082660272034169221440301019378199878914965565162120824759848487159388094047401188378803226627366996034246597651155306177956213182270049568835250934397477322933166516854673206771998099957727014766933818609908560344935876956755721181735741976835408124017892237805493616276353363324393663686971319445715511562675550210828038853023234273771919603005507529766811480289974647872863794707119997844458633778463641296976876897778723222686075054842597757605258080064793694895876581431426479798377093199567464347880843538511539549567658277295568017942832941000723424251661312367895608745262378141958128972897034309396673898207389966471202418696220642881566194792650674874332436467539286067059655567912842258626522411434864015571151795324502813258097388544848081389306036282567378459188954962165985703503741812546943713518951699517003147326484616026471104806971133976016394816688763132126462327834611287081438654379407995106667133125523011734199369100250058491245492344838005641068597103722143631930832517684635486978406549160116827011365966991370456335421263115930888571253246664928576765649037246496478758116866483335913272887409566897764473034289285179952589241196426525603601419908206153574219226674398059893533975895207742381767649917562845456391689014976703212924882368633554422995400116312603268871257461706291167428782326765526551939999552835554460692060297120816562971221812929588916689960386537146128374570887745672417335588699526000982354144517779891363199941726511837198487723355002306579351430611044981498969542934310564176373405833655027193199335521873730153753808170659441501661463581862411194571554210571486518248539645818443284909696911035256415514789684433976832531717072965967268626451617129894341813784277442843836135877269060814493898049248382905946448647262370478366839634487259733067131675629088099322255371099792245664257227312874725117319905429920175431625510194046889041279954911717677553092761415190373736710845492318071824440925732704550659654263104270241193368751790028953090560459528543530128478851380950325429323552148146516834183623460541868944619911435137889124034452110660078339051594183363042664154498474366442582789912976573410438595604722917672893662746691564652674621247313465259830170516920693810057258785961157667663774869242910367510817672473760446148563872521276103594603999041600182479154974971466398225849448677353168856268961277588194102698787611152264932075028327544613913900275038103327214053613550486503343860702221909794817511034220857618178022447898937653935777291151554482468453384283848184321718802973922977136586233652324981522372879623068083548151695919262485751873078653654321221101915061445216943851832536934311743123561822991408676162486559586446243613215200817608007287851419455672534656922662695773662155288459628335410290674781113897863074842627855286569649004866346932633612659532979420746539503363047372265118590607044319188472388597675787282581695054470462302514722414093227997892363163221127649823684887230181241417518766448527618964395951623285869847521559489621277923936605164727916969228952743490642152692349178027862313431579541413926683386145813612176493770976180987043559218848386779170180164414555846947593781646329782914229382071310871499332105792520455411519289385492573541202822016961882463144942433133793553580549534008822503489575058736063071993899762437794804381532301807757368839731628082589506431863250472049840775507187771245608655834849266570889473595716378514827868221362554024106003030801331502662711216937054754551637853871827596852999530879840446845136842506498061845165388728814628657275943274045814246255872864639369599862655495181503637829859882694482421166892473830573142913724765314504762583240386113125361547268403434716564498289139602433602949644385369948739759