3608744966069019689342304823204298629836720452993953733254874788414308880513554221312012686525944741824576965584225303806276431552861029818030273421724506860631867359813133874874925137555957468235691325778643420417225726834210864140422517525149263218630896978557775735002152841575594438328312403426684323651993437501616701959660172509576030506872854558341947585397674989927438274570334692583282977472187858877519021805385796597975883677822275792619254993046272957550598624529139660592718160250049334709194667463117282462166036225582726956872324826570226472181421866872764387631429132408522476757638750652251468938176668399584531989419335514235735741181826501786282455011725063749803707081268299244672757232614554175307232574614007998293068952452509366204844991361909329824606554499679474024774886485512769703381442773859215838483213806223251004237749492157521242843030385057448484333241546917794351168298244298455691438345975261211447332903599829544040938622073532664255536828257397732320641784533867303816335051872872332376087615929797377168061811860549026778551936112407487621543804710467878365249575311995801256558096295165757288202472699537069498289220683639711888593895404603814358329230870379565317568725926192990479837613176984839004184541018864610331934796606794784407132451127581638958513295649718918471512924843523741861317359242462988143454350558459512149758959857014942062695810781057191707912865035917201950616764705927716952716758056106312413312373707698636697212678730638595803171278793895176870741738979598353194795451429711552746627359609568307335295820037415483265244094728179061248567138359419429017987088509711864928869052543388372631177928972746302467014176267936363355025021462790367832562902840884972478608952227313180189472522723636026072402955583966084766423977162102081942368917494121216705379765894541189229391914580875578137646563752289648829716816068110359047476341776344068986186413712933900919448001376080553153742680165029404653984868570826775026490410896546459737185816496824392238315171246119534630994515426303138830767954402514250827289198151045883591552849113744602128312885951483826163961540353287812695497873417336657878480783946257747452067114536546821128445242323651219990177526053179736511718474559820083584341911474485326619133601430795633901457373438346947423652717539723759380484969501151166109161693054842563711356978555166406440292027701992710305837832789883087978126179884827240223514874374076505714528847486475839334248156889185193894611272082135364390886059889221993975700851765202715950141839405362016469659274003966895344695491423346802466987988683776574199245845394938344623441233906527180963694698983648914886486675790234451393815848667600276447057968382907838015883162755593260350633659848405747133524871124091493719482144952586860043759060911620491316587259718205195908454528565448962462086344783791633357867224055087056805012298059838880679988310659633858651298666497735840283197895251573875641472677058503325934409819963340934951448392301197496655136785960344559440380445450723788396339870794935695876998582246526733710499587969146794624656219649681193552911675443244753829391585692742964319554291034804285559686308630920422682028633937847251338746491801254512321533085129258958168383239042395359931697171935301860921513625156195163677448055102259619456362321704492347950205976904966968006486243997970305470825880295321341845607111232684696818710657146672312605651481881992322270826524825618783101593997250126774109212167942285417925327769761939887889083517821972934235754107315231978744669810311787674769261324019163166825235686495363489355725892051483517065173546863306984488628961919711331443444315508195989211682128110472287982865667877359934501473269066521577736207679685272195400946123601489186773676211566130844302508510049582946475118676554901303546071690411751431768623679483924838182337357145010011459543551206097759459613079367704822623583260367173303251127209603719532304673530488003052556570571524644386891890854572596274206094723879213463592193535094890497620809069382717791170140764278171973560031926675047178221409771870036258494406119876671814442146715555016126194193874822875364540342194772556985479174833102542319718233189777081345654941573631771428427434463628677957130919913102520509597895069111914824251081436511235053766341262022467249640227825728142658767731768935454489597947539936986711934971334565101698775585896807491652263942214496201468737463841490465307573808022710474193446318870186735496883598145695841204497776115332193597020998436463422696569498594742782924702801750131030943938369431732448318963481454474561059389618421697921254815885690461138608195253996212320938521247061967914489664617662824083346253624225852057392373854635909135599827821651567587959598639167929318462522794135760286871593457518351237128959731222446548061524191147963895323480436773707249383751117666982016852519870370913306394717836967206481728421182023477842477065178772550159355753670259587815212401842751420194395205936502568371302497031333118435768857378645961414727189452539831196708126111963724022789244231498672382222555697975246031626654800378669213180773871625733573076285175285523076445290675822187473362632094548378686703144417567862750319580631025664121152250911860737865604766406956326860664324082082787176881535313825726229212527312435158874340441718563737596888966084203091496153278698146617533752994145778494427858675315059079377879925879495153170857822927941478833403211819531123762789137277821821310835585228620935428225264370973201897878235677468894292932645795127524445255916708892927904165170404417887067063583583170567888789338232327487838165448453916983413351386547876532954455240931140917810827535945163408645863386173502382159490907441823466814916922746581715312872254196996503752233110630635855130715703998218049231