862277307197618929484345491371651867927256066541103216263228967535938587381555435449966387268960523220807631319720345930379327044112231784955133973650879772938749378015933467274913668960086718814892247914197768924179033529726866322813896430953812880296019496678521198096726175117141367286017666563692932187318353017810821272386051819781509319439916330849742010450203167975629953792496852853771856070069544240496039203315465277186221330711117668619781844553856543454747428858612971337391251553550044773666370072757368686167694846491714329795841387453852751606102975148724237847923726535631629221798885388267472750681235975213845435024544690062051502418147156564943094182887820427864492133173967967676522096197281116166816867150342310136082286532334138403588211364781704436327468898221384262208209427084936689537189104476517251093262772252263373838332376913910261810830346646292782262885217815596498387781592491983700986324396737027681261390293871665783713811547402150965923917532593445485696956275156982468013458627100332064486798636227819988191113189591307063274146154288666347941076387685398326259715512499680336603578757394979631610034357607873268712186212454711251794648057489931735506370959924112252324018239078691826133678684777175513310280717948566422397031674307188752943474217630896279420826747088692670052504254438107831531392984735509912397555289837437833105140594454391998911125398620812791239844649659510932553647196139582585111701298346512712325986255503559776901149098294084465636658123307035796511321275762547134886314583923544757026120454351062697395426767887488669703998868283621431626947936402966106567783407549546077332488752714404936613994399687427314326654095686371547871772020567635065516090261415540295913975554596250175095856941185101628882854458180354953120927155055716946459498911132746373622541866318798691354955089507851216018814778862594353452838397770617317842864728336154481945905610891886468788156729137791074894409425772443612494905797985976249881817922551934995844598321552233421554972433792635447714219195640726907946579321374280817095546909227756261832493741362896161373423684196947375863656840839445972782823091855116800442058260349758216716320215339363945555033446310512324886213940266152684781473448156962267573221136186239163690335494869656069337943986265537857259732146218241432293341656982463517075673379317436090735346046440383547264205262733698517531234552769383531935704521942926903763306857895344686399827629690324967389948497532053631270622470436465174241095806731920082034750059789698257537456746914841228693276333303897038110632462333635070840390038561721132671467912853570938538286111622047243675070923354914250725661533181588217063171776627635897745465653532897863599419257516247954485434111026720509865481542164758755786081790364264536549112858119091271077916394287952685227749480711321928239748273241443800289480452249284579217508840616397849365217677908537217873437077694463663597228798817313572414830448995564116700414874540982312711599255674320034641129898487637637610280448199886593624659752815758599974024572443386977243209654442128303633132196579278565519371623260674689761667771818790287282923246073988194292011649028473502384664547756746214623618601356343005515680525579655276034903315820273194815910533112116632746337206503981954748291960672968753432385858709712718995882636738737105412841381389133407844714813161457179214689454675736954191543729223869983594480979351926155520957008812632593359806707219757091487599273025279098684528317302210218059973699712153538799888502040762398923510568987536249238927208049234731757711457432131159710374681460591649457542699787554014531579088418342963585418696994917022527352038061937829502299033625887050017258616864237420194873945100922464252172691199174564934609370397745100182725011631871114446141445784468758773472359293571037431527047248482793165219829558428827158074222891675466331111816342841341253997359323663613097808531603649545358641347427549188181352400535476523148597923427647678381926719734181079820805699775071855971687011842027311494875865041023111838471641625630067103897863663556523370172346463481240327861511980273698629436844254494245257102437780695743308168413406661543416746558885633773687314268718541655784098727430606446103120751843979245489251842730632593834608286736124489210094275151424988961672514958329576286055394820934943176542873414598869482351204611810126408061959120428295581130972909284678051315390813545901215159519410991396881243677769131628797819654153394203555910201180304811722338662135710157122461285817221781933758321602218222221078374216227821299996693402573314180778686593460919143577735666448954759256848501925505895807214206338071839347690929859383104323238292122634321885186477665448733300642959096109926665321495741611465144412231088820044910178253755302864197632169938991322397549917973170440518835273664278958456748665826149547235668525112702299888180955954926354504619242759236896475117895560155761712528296116788468615459476286384905534616170186059466469518808788522555494225445987503836625374124880864727632550902758076081101637044215445236994479137142823086537353874978888057644787505775322859526475165350029752156876571776139507218976985045295654114629898588074523866734013431674580675772073729680933656871804934024356492848592001314573631846864988691229636757642496453424659331784148733717565499944967714985347825166858286609614253161940265034546320885120562703820917968107303248538727950968558077671245142213337643542736458373727509283475823493590085819100867811693879904577897316961505947370554759343389357699206797275045992563468412851848699197158630948865616185732105290551521312161432707589388737232783447432919234804538609554817732944209456769794607452294565905281730644966050580162998113755226682486488289907402559099713885319711878046988772850256697479965298775931412939588769264817774499404