596447439811741222204922635985123445779147641799455819656020292178466938558995940869124268152653006980600426787432685379781668682242487481868239432772646421897706712388658737252661184408736148172227813811839741243690513630518078624594195756978491897509207279033544787773111286425781729856172647996415864350637792086155369279606549677563393898502117920036155914229157873628855752565596824310636890313886514204512191687644240454193853824188742283501474348439085123191618529086873685950323220210525274277507827662523309123948068343552523480528624124493459672056194711690520473287237356892827930159756266005269657851042226751136805296129880421707546661505080336460865402123944839222174471718092398349824233878589239840161253924834685146136307504235353166044290859462551564169138318415661445548260361075848736591474843201875951583598167187291515943339287122735168042165629446940103627105652312017288735357514251252529592540570534555716193834839922460638829912239349886549440160987853200770273566827781188675560426033424717395821115355142527181731788062354598948384962436354440977241022538822336831585109435747361778010277996675573384561397734407653616091294596796725735291986257534104850101203422625375518738491412826807948427351636607605711975194056624675329184044257629349832944303422531033204977665514407359256222295507679152127764292519656970749199590264981510871203822291273166292112417749131528357904267666154615764981278689472573496470173592326159053427759618623976226257816489507602784355599702180239105157054033934048213774587586138456770189416849720456673287659557164571630134168464082618098023494740120472048890241729114027194859113420899437276683584267686996682354792183943852416848860837984244215016651937321328057701570127798618408399644262908813879396470179588068101752398320834330217686666773784042974106312439464582177799172221698244743671559376600953681314418423688211158480342364075868649243749750438929063640049025626698823114643119777861496138617098573246832118652006663283053489417026084341636247297994702715649084887600913812324141375308589903563651229115226125083353955492753542014395014179058991277350342199047149328747166700325793871597399952682084574795658416119706099132276104359590270142695841172937850198777595101409523468435490633014581493877669735781582439299161823514662839333512828950063893592595211330116724786907758091407991323545130253580968168562333550450046865857154331646943646545589227961747869256841457335011376810979633162428814258507536438834117168932577362960798922894337570152756928500924147177186692551163442656792297028212723989058222982044585997816399043111661544622111642699616368971050708995713854794099976534819049618352026514401689829442506486171733124690653162875359943858698534465519194330418373342167189261005688908292883756199235769072961460566534487297271876685971726494020607073493213872099621857587629574651994084662562113095798295792142334611356366647948195048837570236956977488288989851691680226084305221961821690287484508508660723360930825958599233893604848747114761737236701321782654464481038088395364143094612882249412327182017292609830045856603826443064971426506241468245693635723938237272770128630011045436798065444890449554664557349455584965329998504979706875552324879934262463746376864218999932256675157112714249077087382857044134879975130927823162974217545954869441357575759521915623887598609859695787880897558327858964910086276625876945161704130296409698428573893661455636785845634178496713365062886897059541624876632551758069633833248634727745868087798819317422474608769935217208957679007201617339104887967736529258628451165411784835004712842318036110102427643589223861852132498753827192992896027805027537016874937432480662205368870518062220447772209948224267048773822624687839194360673833733941958947916588937297946445661959822749095518590166515028928401690503699639671251724522421135296235136161660037533433270738529094910017537744847269724865107944444053331822239721256988688974436695428618401493135684721270717305101587696827390192292509147732839032189605174849116941316729412576835211860863070981377634676796503697247635815797246976976213704168712897588537355818656946185719166161681113943553753594683344912806315250407499816401369265272099062364258933966504621829629143723848511149232744691510292110271086585849438712370336247447138171896361142897044399651152894438264961225025938659727245194351408217115888931116873545017272423534271205765119921077200649773639418695852585092472280924782710985340106097631767974875533095735827179688347407891975387310816738958808835728967164369432351055730135290068504794460703527708353359827733499035184720172372581939472038726222395107540668083386828512600884930317565714537806175321831975579788312661131543708166484076105246787248832980865777648687366261085672553103290779478979509592703163286237877482342309017666279791556566270852481525949198845032938202258263884869982906494655677478264655408934649915438278202263769818224628290818713821203166741892510650133945727945702179271375616973036444872866608930797014315999937929094667992910417724211166520693256808493686869674986649412454611168109340378264996323844755237653853987141117656452455445351421914708701437324279734112663902833512521830579861692524334497052856313554859525841245383772931544143912318028786719032801661713592398954411586543553744325579949428796364636275220996961849888278910948654487563888292850671917806850980937455781778397116479717817438395583876982973475822848875390880982444161240786941854789526539479571461392462935492285217955764656942328416756413218799488745992676664037259359945244191825329134131273268496767669062208975201367665674431052931145601972736101475218203932245410551599434900828919759793308039172701985686018723489660883921693333102080934489106653833462617946207786465044550842934381362305922403343140151852112415593334014941541848528282522598558