4779345623072231508874969549283461172292198543163552591792186138872873704453472275666850096221421668765249891729401824343173619660799120272683784070135855365871264139933230194331207274937828437098761009693836748147767532911269847707657728845026170254386991098481416656607393924974246059189817833865429146728241377048755982947164931818402466792882222850420473781887624152084902862490999858623351745445550983193611705131740045923102874751797488876521722297599910142767372190138738734921837359081265218916713759264635721402506155078530228149590461211516959687474689158421896883825548764200737227033141575696583254731818975632413484822908999145750312001711750272014695914935730900667943360335035073643766079693460182457984925779180175048654016831360518720812135432615909976515102868842423969832491213396836484316940781493833830062251549511379577735211797830294087984717863243878710121596504532865814433110912752496045854173630636849935450491747117143011564714615083226221425314207219908574229645157894746577401048419820192182942351138265118919392892011559534198931681323393361483293648753172069887722481863805685004015836648827406023099871976162849753278256075737942201148629465302727587981838259005871220236511386596364807935145613831337393992462929447436613121973363579881796191927729035471264898398436485741147016277223612462765743870005847855767478263658691484242977959815696516202977281256191791113355795644192426517904275835360149675402735459336054611140625744694781114022985256970816843087251181808795302136572507096358650545804575026355518472849173113921678955210076158679870503575694943663551739284563217088571187792427048558148425879591059475828327899926518397621057325196863478711887877498091662541126885850664353805813594680864993319877547785496368228660167346706857398693324417793917259942334660904464128859519304617806161331145100328349379618319432897238274216878451068195650015020482631146843986879093797175571979247644143026543963050752778587369983872901982178530327401557690337646088867168231582210230596552326730646973823871990248163964296448492141272263993588613252044642517410027882645218289695485551720143251757068111880224757379465765251928557437875395314517423194633121818393787835137323457998407143769355512056668185973308333857525588652525296740965412962517735500236338682851237435363683623242636897541734013759732422954339925857096797544026454966744537245467338624237322486586587380373678660212913427291201856399919467617379926800802542753430782595752082714246785169552812945822617392355286209993166737830567117381408936865905328961033484243992879807203753977612923457159675135955742464345481581197453659543470719126477088910913744457900684391975052389297429614446567459871914414215771606159576682395157583836638656188127116275838267881766567178280061771688808230282112361924044976576908659932779701947340711681587918478188108580478480323744641652182379315421527770434169115940100815149978119633489972514743737413490714013856810839577730634187346125455948868324838101914969915231485538662593317934567984329752822618738524832031463447331865844837526253739033263396492388223675291328217485091048629703468523062680214044292805593561025500506594372892964991299911089479251013339444511831450754311775289806627465615372149178660914869704445823858464908370390457318178564746440277570672996622251813580927041175418472983103087214819518154312430479623109175780242273036999827448087147964048441365637455044395195467935641137308152761351062618402463664655344821220110947113770697624300468918202412345714654067222588274836379191946196553463837612836238917838536212609785198317494467559940294771708592298016869439235751619779223886830984172795426443743419290595823623047492980827936568389723737927907564084291955904060301286581329941457532180004401478443056720967118756670436775755208379945395699342965583504445298156565633312040035455179927327725320486622056792489554735001123782279333723958083179824332050722970309634824553214285673189904159838072258924637339520922923146509614918561594600949439926589363131450648716586681063237159210541837767929201324667840541536261782786465973644264026398743988703552328771913206151845430445776672456669719404553387957564225632373703731041292722811883948736923853327422667469996661960223251921061374646440692876083190568719643897191671408289438836826861154771194867876631752458469255102797095652368281165382003799591789426035119367013372741420191246973252639534165196477209637338852557634272831449376115339775799145326989066192324349278235940063612839558956743843836473324091169374575311786643358527634078024462764189884991527141693454468030129232401699464507893350957595080360712534334673877343840793258697591537542027794168216396314545191588375141207174992077667882619460933081455219492492964333639158278518859153631116929436621274896157869258454495471673000880011966116013421266612643634901359844862572254764088583298997874456239881454420382434868776290146385345559146427397358217434101536417835434640370531375856864176847492517879913985717172278929590818928785243253617146190493971795472159939313097679283117143287828094354991522391841490248526265422641155591522497172317930088682170749343878345428282215885057496064793178467321697624647943684079501169497703784444837639680447172733735665738542372961287170641643294730144129114828963152969550905876326666606851372723525158210171621868317253119561344190670084815732117877978811544701351248437723035217371417711941839883351842846576803135558883423494051389308356220837330931881399798206784152163795102688912988091810735585553768517125204372558237065760592282368609284667912866264930832527413395341682121358140555362734269350386425878926369650513209140133373852110809781267622409025190871098572713327257785045789525323918564362229313878210918430435927218018733631779253870785925399349145258934949607081253409773479141274256262412817986507