322985523461162778998511037010185542591595263265799258717424907912196531731704542929383225460661132181378967556995666697512605295316455816378068308107788349588201512978201475708660977153409350396438916189564085602652053989218548538251174886584518883655377693649382588073501877192191345142062333314269424939500424359127315634829125847526171627149883596047606913453362494248366888696315111912218999473853238876156018042370776258155052982973129604157119366239882474958828909454572224108833602955526484771265849170433313160119382366098177256077636959421650834181280803376829258442146695694086974558575948870821607507308739718716025768366292972985210105159692355863662262822361067874829117413482685856527314530345284209525124572819291046999027193758373868050239618495513002603762522429688245988275487946340080274246398737613908484501779044979278944571783692762488768973450610946973538639268716379286949146369277386718236628795999622265038577897349815159925846297356108076778454402486283696501644347749666369476881412447011584865013369440720486934641631266411590864278418055476775879486251976099641807760573597097608282474861853428260953052982117444355310844143542938757037605423444243758912271294195777439665797587314669146581194154116147645794715198339713497786613147067709754706828875494709788189389611978213763122850680211297901279804498381267052365777244199737449290933832577170139601223391553794774992388406999510112308803510264428447411184023199353473439746694445478699351646205725696447181754488793969129909222299627858418734764640352291347054715349216958349887421366780109926743823160589297563016764840571154595294655743944629569109946462249713420760749462453301888166009023852985525973472289455588054623733270826546382476486918886573981811857820264154336561137187357432622352219609187177981001444784676949584238950830997238039778581275259475604262189913494414765793658943694544986586069712064527297851204765418889870407121971101600593544355673248470915675355822197113742306921863547585889846837917134552994523545165369427444011850444415724776078758329151041209281170830832911604389879135606935126008364748689078032102161818989565981835116525118227259021188449106558538479625103789520888573851254836226153471429612908367142660149655529395787565585689266996278842144192334761937238706141121764050685265591011906616613894083414021428794379734042631567416388590442389839353607772026662549086453998846018806736510985207563232857305377363447696196705359731295115176348670304929800668344195879321918376045451670720631782019731287068171678783329005182778157728370410275320170692097331571643642302672234647737989495391033277647358615154782976457097529015448573301447477229778690356437535992681354878667235676653513797308725683948933060260222034552215022541993603344619948898560505722573337608583392514101127738813345357656436934873370943229127982914946405237988240956564415164031746034312956281996255677909242177753897879754210838905195040781571160244258272861715008114373937418698784594311457559668438858383774628385561515929732396579038231718675768972277946738390391563289031991642237087579547567242166958054411711558367969108938366565353195949766429541893547436313633537716250641394559397501119706733819986717899591929833362237438415921826737432086601999306376886004197053551184606014688933175720653909804777266165827943320125169158784573799475331826149259154331198338627966853859613373145370664097898422478134207697358038652525914166822367693713010535551282524211849476841401317826242648618733503704188974018424114787048937925481356266583293178528296336682503999451728717528159221369946512315895329233785584171798858723965658193362680317456073353318878331340195812895683681095872587669371969814857956343944393347029094472772149620164504308721972743157602476799613652823716664155598769875275244121675592904463999576401023961387632092219616437468830484546675367345321558641576512735450913484741465844535966956389048606933408670372470741850467406211546676177369368664489269790009129809456611349504632629784595296365361415160203847312352389676390325345274511617007636376510252724877478062068295166233042815722963435624646921573373797264321989893858202586123671962843673774111781840312874173202392372107423961663389256722039966738245153916702958186951510936452211447484101798822951409537467162405375342323481693558976197694181023530184133638847574931538251551747662740777214098595885324836538982012969544625900550842927673150154029565144749205029144636139312722103806771795654757939878653427746479769425294494808800815851573860844071299120396651001061722352465848128011502353466494103146442234054564637259530423679519437799639175455589470267883346877794459804391914568272934729617342545433106353114252246555412623326704754339207722852520873995650273583351114571931694633531783833240373499672229259065624119888136218587749592224658880515987396435843497331289424137809856959120649568513992539074771961726262449718120015465559225448184489963673171553845865641879787525472938976805949170209722494063873535661444546548944437451144832017183225831859201010145788462150743350469670228925342889727558262066776382438789438883391580424113661700796375299865742511277657637216871317438569315353664261321419600916803320971649271324358544051372814122252317228467105896620821116366714382022016707712905369840697354056260221706477768258523380562569228701310513477895385364196050624014722613152369102718799480864150218155559270712953610629463707337995221295955226574003242538294470450847209335544177787880699059527444806725888927927651753356355547888318022224253466452160518648264007087799674426532682967696517687369168402979645337292852765832044387722665318836612924507634444272228090682816694814807084197900485994627556566439844301905723527727397948327967489377019402460417289825071503848716083087674211525640726444162907897642597860412862259631