28895385547255825699219869906004688814191076292240341169098911512562328641431097471622622834674973144427277132829677446569274052331265156914757376741841249777777103404980784432671387469149827916897562784455886537936606926301236350245627013589271415566484524072863408582063641462980478064596355461896289958109532428218907438297184317530880796282469875470538619954541125471717331455122167226495322416983454639996944818091573177957231107018573489694198095254458394470980391089278198823694107414229748268353579933631766829582719396978831901721838065994959555954286198739875429394238624889943952010053033626665251856717936545945194451076549423973184727100716377637022999123615437480351151301901487954838845442492622563439190168822434344231579816379588903622631045478297408689151633983333713171745575612268888990637125786679354850001798886266517470535295666099106019327067144544057155602459244300844538003192244383524561021122050537465382929786472235059554153578320272671703357066433928218636843776066714553019154765883611321182070387836600589991260959041667940755480914167365338824211716499515692397034554525723262790802898381768488679288615169267183397554641872820376535908411072905821829912991761999796226741612028801744751833107674156910263448714086615364924830786815321736965349412860360033928128440617908773497210174073854190439910249832681955945280811161100956084385573943924594161810380227419504211272175246553650235636394457528893332984146556599077356910866811349128798974291499171659473995625680188836422131042542820070072899134163711610161082126372389883291785647499437016354326796137997017781458151988668156638386165661738854257919431696454768674270447512633988621399101926166343460411677699396474265322909062444586929853906516986669384272838863407859906283329445779482697137763215502892158099545628304443895411111653392792827035770497626978953504472673655472857517943579676022891513050896976853265382514078549249403635646629657247765205289917096498124840965657435853526766692192185905358796316135196872232238496646123288361427683743228633482785431759132811598884906375236456063583687601860969848843931351177665366489275444029098015538320932245826988174728427568403935433280428483386555043577735578687866294716273320312296692998502705987176976749720333987295328071118227917972107994741589026709663149292517109032170754644233951763245784615259569366756197031195459868924048266757530212170344031989562350030555380943557045914988928724043432963281309556192090767656887503239333257847825191987413680863776782877937793489022671513441159465498888330694912869333346484366142915774017872529396760680246287128906749184974572770487139606275548550266238629497012446257704912654889629399827340926763297517110595584946812796206771651179183382568338411146422336799769277054428853113226863071670739545721398304883197806480452283999804979983383978484552107559108858055434289882286112260791159281871950973251635346626829322264617832284798921441304906142984538823340968428688922796424758912913079898425823567971899127596392305546441001450245848459924808991967062040606432616768712558173096683232204677243663742492311265987701975947792629504513514969853042934098322376146173195313543961102461293266718061106351903052284366609826545516885626200653058516615183497175097607279386391993151929235263344113455580284769483538687031687469415934825319213385875078477669833766796797363094789814117451325053783089008205498991905228993689819028775785791553559667248776031193704231080595346724328543016112225927282996748388843339363268184104951883881990014964499608477184859398376347798668562374015591383219398284581573544149344349553411645059372290573852597233167576837900578188499728756482943262556145598974082282159307007715395062022964851794805606240951226881253194506700281156127626954170395948771917244063418925520053612485936521865342127077932438550345448005104781267924092964244672701352739383952688831333146623083175893576034605105075184155177426968032051933838186325126263173263391123282459400912787423235413831892141920174400385387813600761377758852296366117428799219996486137984272691725255171482160913250511374550519142723966250014444608371706760311684311596637966858844942943563416962427927935150899626022769623819947541735687415819754952281221708789293792219156560089390105741352984191331405657675023776566076497580759445715533790110138771602791156827145691617112374290143479670823754999713682299791353185871566485840909752953173955567763961455203889748513712499198645144774558674874483895644257212762955877669952226166435827975256085415631510826626350914837320641962393576310971418393796590695901151713597480014447657839383785267398648976543644833785229126692496034583259933397562986612666676296257219722389335860882983346059454796652116875169480376572477114272885518487110377965147906174788114305422618620846522116114558731835007592391119999414049164057480531987596480329161225166875669739919295519622986260819807888577396155808992240312924542610125960137355990853287606423689161956297132187436326615538619279603883615998838396845210164669168799331935989553983413784901118825239991111978589345021378855648495849166505030371740051452599343966761895303541568878385522217340132485264949798795242363412780411649413913689784459613169295242620029982319945384995793929720464801363166190995988984795815022835383826753347154557845607426703879104277016348999530498884681821544190486956443497264875776738621163266732734693135809552924093565966285651913515499603071601871032113030997097651194693779127503940457810737194632692361688251054996639448962302110246912489705632567342846343681767633911424809661839215784161797175545729994587591713184134579226460147981637778683626841783742072313476667907896865394059613172568183555260607096061426478386334563807546618731898447494535104980090332610370677361575818862408073696748719286772871241924253161801778951052212153873876779845