309966023695228925892875642653653325039757560333019116983319836019333337491433118245231618915334768591480299642166255344589501638986021788891589369178465139970223118369732725982576565945741857413112894865831687356456631677512612696332759510657479992196587069737382146802261153982422986998252021337329528027577420822863841673977729046252670116494288086856016193041152863931320047504681475349025664837058663141819029214484906054993204199654735046162060080677716454677419532262756783557350412140142647028198550236239938689772663768393586532890972953287785628676794596794108542264152509161367117131899452959456444432619631050456085609565881370634062821066699537625185693619389114979294826671033575611244542349641104944467034677465073555655051579261653913720355854937665797478906266085643938569385641387637755414622357574962144217895493243474327981825166839189997495878668430532267563684182088251439211111615064707672989988857866469451885407537252834943764288637820675925746812362916349624353281377800798253231966296341327471866253397238549955341004107827358438474248213137674235942812741879269593937621426925972721474313512733099576690414271724203290298177891447344919322908419319635078663058425917635748188284565268761602961288381169959136966529271703066126561037660364687412076389999066971691186132670575120497269098838159588038881431113753497449359148713181724474172858995433334458873438243138221770474726742160653246605693850452981505472938701185985241865967398077057960636667304813748992029315438396849702978482375927568115541546900078388627784792060065865945516148197433711651104137159301437457290224056995231274528862857675404185915546223993533499305003945179481829940686745079653729776083422912248080984265367830132441521364715270794629109423411721939234910948521829277833479676520745215245443246537675557387659914581751703689294610541529148681390783815067566789239781696739378094438517676976656014817471057584928481374354975419724826145627680003577424117871520136712509500874152441717532275317057225772614633923851910747344394666679653316882310024199391825263716425832562594538324788920723024142830364922460293715752931370236273841084644248955162802406907485007165838221409177623188374768804890232999500775792974424716989851569612566584974178493777161140244509424940922726299479640830512537270947137906425914333167865598517536844349084826129139146692227395435661856776186511317431938793296758665887881906111285390823933921878548064818089169421924595122940605434196894568724994649193345997787625843458262248681352544108417060892634869786903312677003022941570692448333581881622360346156253507159204307416048202851093771252925357525612386797462302516123089637018166285014582663650597844640515651827390130669363308586255364421728032382164716333157555365833948597541915748982858477967217790050781065441383727917675394393262639706162604493172246465908556944855407531525250141208164549490595406531657782329148984165260138263933382476234795409998840658938234596642369258915341847715430015221853123838056761515371351815081774861877443794169925890613814509311354452039109079667754367527184668427097381048807393865359046164897742565727692974546264658499580928340017546345951568178221842597278288910270992939911213158995528661162491477623234599619218233258294618827450630198038309505013135500571883451326297894676742162648372342121118177631488306728754442262860436186622205867891740419888649246192279282171182298873438611656895727690652719751732044551340342711765366062586863111319436496371490275749247236296955919180120907813617227508477373777904433667687083309891178855917489052338656670285127840544172522175945594609081663910763086689941498695704955628753588831839357651941126241514866516708436346222404940953764525248762996562389519441913471779668629145547412494487862750592569988212916586677993674661476716258144945532032645000901964447936226046154883300498252559436890535769784446288377476985318437394150778649055117033289291825297311525146441589849006368390628409111523883417771765490729395672811193652465172498425601185557615552634944842946840455817492185535833241858449729556958984387792863686798107994352666141153352174571457287356171907112738187007211156752883120043754646946368219405175675789333421117952218940641669353777143960770797519454423411093001605104375862392426721820322404422125340774525333380461883215243275799214524024740329086246427219737663518815983147132436867101813813504787563899411387164240558417527890463752874771346981626236258458065588647167961540402849814324858576199570673040862575207590115479200957842801884236107574140981449179861016571377405985158130337234002340719046513380867592129807468663818937613639495119088237088972583227206852972808675433839244135271368079162891704385576232424072117299168228575232096688143439509881351693330131776588557274314679059430212301125302128002946248695466529559260377876766762816696923237451344197590111661272998283758797763332868318411795085169998604626762198389397534759904160163254456520278691498505016138922959613722817396956871469963576940285685672470356531705714361514562814839959569423129156158252166750924182538452910408788919184675555600973321223747252055101965864272718853689147697420168958769727245350879232855140450858129940388616979895698895775067808431613152235962805758232094098573737947582639637970142698955951717168197088942563072846895828896663691827014366613250430104757223651690486709626138174648919816865694498546147457719059398497794838738359633652520589107546566536523670897419366608987850226532883373724877134444591077268126212074722778825379717429777185351757148647668660699005076611796147063875250437658660231614762465217378547467262768489991396994622482458315067552240329963128521100177405159619145833078107868008182413822929522485952115147105626299660399912607572773655758719929033494056055862346025515538001165358365252555549439032926913601238347253902092