314486943889493987249113838484186278478221144407807142823876195673389319744260561226259622755728028441998587143274258114075140867895566581658129775959123803795266208074475097600076332847116085207247992818662242361698067467553435147731353678297517953757489467817188159195251355146337685613809765723514980128224482738342647479104178778492311284462317649408625493335400725786285895051083124889469713533349781616246224987512930324593957526556995517979316810540275152798844557341738369399153447856067029629251975513521598537976139853101202464768444237866939437679251992837352269732884058298857954314286655777097457578732397144359869415252871583876517323605907666737395484345192981795187173738680393663454931614207549351914379414879351815553713176123635441356426378311991175418148671699741042213282844244050452296447834226361380910058720437396763291999261597783123018938887183135226540609374982778630359821526736585159716412455596635380789342079614477738457888011211805160574652148938834365425284432042632591283494169647629605593300944613502388411596901220832145674662178774283509183070219082220294571312341014127347453381625953636013036361301844097306969085175149094334546225944931187912108618384045260598854224295391469937721991660266220597739138594174236544183258542099625818444138468812735342954711481493841556265756621491031705433324743819227315789246030931686481733844122761336356008692282239700332929418361521356327780464687064231395293398172119225361912571882502284733789556765010330625382350362516588701553722405397124015886376593811746540682328494895278254887207632387903254624997084627548914332237350572265314605586153844495821028458813783974100745366103492873995630184871602829355773105949367827590197477243022246463506632972266684637799326356396131493266447013925852551856579561185239582327462387532652707822778156451497266419280264184853142337466760214968337078003702383197785151442252470459693561853518340144931693125169655311437552044298112147491924860954528418949272097730189611384920979921529305842818689930088006175859211623771322295489260885577869294891256716607522536049534830070832799188449058235285845773258186239584082675237959196289956427024946423351392352589564379071681173102581181671575789847297029051556223557225446938908904144553839784784970688513906663020296531551615329132679949040952817196461074434378947693042139628753991330049556365929947242824477265068671751838699145994120438629364090694852422365115287665774650995023862747799052253233121652763563173194385833177702365567023353680694786521858884911750090665542487235529063339178266388227562097752850345139138107198238481376319158745732493576013591190054944070910382417267185232966467337704878846889769746904237246414605419466270543072167237287879622868867890254673688773588375327730935475452937236675450475904625189144458636529226762324541906509370795041841737772955476309619833107260520616415997639795552419344420433071442013519645836594356795734966431736399231438613130290465441620753861262129328723598369813348160996602681790197382320266369477849546923174540279395174621916979605737365629342884091515968091291502968475078651115265578501313998959669246557856035809445623854789598754284769384543159861895568275497700269686989754812177201899382383821903775512816898221836920862989981886147447608710781425942444426405354187632156516467103610142865049124648344108249255837518230712676582261021556456863855600059092214263292349468367394871475978379866284941697938498716066003319460838978682956365104631018281881282550769643608189565888482965688765426703450179716047124828849855427297982984574693425394878813874460757634946279289517118027821977643662268868483527244412938849222471521319576125857904998217294178796523099356684238801979048472949739478448898859703638615041745668946626751896768586561147951112312870819845838612303090244745082369333450037854409967123555555566355325699725296671156181909625699314769963475435653173111996273079962259330972910729477850295017496245915969259781799479462521828196831157748396046813999528306727398873200174231415385156810296671420312827489106260985375086251333481462034664866336052749324365069908627962779823467605759538774060271435464372882842889811573289504603641519505668697441543827355216695293965073638040771586323088594689643966428369452195895356755121775194290445061695572223928168769721450465326523319210564703565440646604898646928834922473082263585039772614610896929759599448869029921896631656515497015570398386299460951712067255499017113469134208324592933571529401261185515655123483912008479927327284922168298175273162619108935147988492052705238991644115062891436781578676375356947595755186474599757917958849927635469288516714977613735230393683767088817838953849562266757498375066161862643723002122566113876028876304018515768691661678328779976833116459611216118597024213733331871126192701010922546868490949747787677186929176220697108827317172857868953416801236951546312636417295986798885937353883993998408498069672190058308673674181248120707262057760316263648129280852536354929596338821548720985567834952073659987960307526237859176413946075746823026511521482419576644946388467762671032949803152266258485177488274951508790786184191121375963364449717521324972644564239035139248138336001380467485392260738004384786311647573542871308551789894167882354680053496808315506815250881521154368969789949951238973343956386690479256117592860425023791932905476932807379852393232883609953639593003791236361870066016596529772014313498469841811090936722776535075290237935124061534451235338110923188129310621210173942684165471295574295266638293527048428698514395035622442375285944367895946200237777810779742418893828662810691185492745879872469362138417439113955032851518169960141362865225043187986473336190179617435614242645371918025152319616328190209847509594751940696701831949438115416854251671148374353279501496775190415