309980374408732274146152741954917426316630021137257142282065917478352236626021390957965655380418573078789692147111205432077582411074721827904915177442549074005599616987816191685254023460428399416793582482133913885730239466202899768318166351859385811962629995429912325193752342513693056718111477701352491795322181192441143222064628239660599236551086208906234716075348155352424750909717375887219680639911486468728850254851317531538336159327012419010687174421708163361174691597272719231071344095934440216616505420872975443735684677104435472560141668837418739774890108575644849552592743771444239592086477276835593536395124425762231714549948584174294223330566858574895550141363006160593351271652847020419093979911472993565915144245777974388739987824662224882109364983337102359761851140867232407896969324814579309718491584943704463120945827556809068934625782144554906171167431674488190468267148412681344208268184930052671974279285412606556036734912517463840991849068340432711894883154449262237786828537690183516671280188697801557827607089413345463315433454546588387592896460315329243134269208343893644357128594405914951573401583976359049649966528613443821856154883846807949374550729798337085173222803476766256567714728424814318353289275244792208972791565060298235707611908675487028439914524565998464619639393656683948221374259991277111724317201780756337385373674633664152661201254921885898847882927377703020423750239435304638740532222235412826664556812119434393510504737261926553700847578119305528236573083322918999253366844210932966793507252679889906563134364267246937582804915586609429994021026699325947920786849392786122053723676958445381816652398827006588263248794248176210749075785916684647038849270769822253991839756497253725023937868642365928934209566015106841667110965066437482897928250818931397988486218283831152982513609620786711628258798053056640617315063623720865479617250995475498493880349421861372807920408967906859100645232115841445682607623646958651123803078191262858569170183444527161530597361313115037206732081485888296012621495567353482474760647503339854782508920691326994554033945551909861298381176188864223484084472598719217399196200224194826173146927461508631593125994424083731650498315822277054672795342504538570081053141497239871634469241076680975747065543960244328665146468792985268462186318226985273205427326919584886913162980525154237705687978883895120177767127902618553946634562745189730417217849439050282152661249349227907151234267463876365595490465591422893037933916843036470802820386504743952449222795097472351948532958171489640815990936284439752123377159117138398999704997547655930558068857852107006697799792341058736271137982469373240598351053107291584858471419973994265480021196187878987421439864384963226414467765638046391807549932854750384781621513270275103467964349169967246388164346092418222168821228364960477542164270092188545186247373957728646895475943344808097866729718504774753323386218198733254032501543680080459642356629991147832064636552792416926179754791473204665467448808723512507039999138677823096097908623316690388252962583776586578187609569881983194280081668610134186017423969461306513129076151919427678651344614270996589899656805570474180996925583652414685719456466365723252839724482193894618095003981962816975450437524870679918938551719323498347917860226714172331490052032067302556463627302317497072899534014741271987987050711647687616468598125775181306270646485559883951646855138607100012046367047480275773428609010944776135668364117511998782121807195484532535341495228432224969713055698346858619240824269348681467615953388190275842790542575154124408589986293158850467826233477999131661758157341831202040547098093512337462744627356561181707358449330608884675613788773772364301512752779346793994429379449108912060575583893766977214482177218192477209966575951490191144786126381867002111547957569650995086051039112357391284326094144568424252443841428171612632123902259747629523468618562215408426657465720137966846782149144385415725468146275115253706413901968865571757931641229483876795542628637857622122044462033266047704574410677196734774885435859634078406587029231704514501309734198551510796143817576817054253630323474651644647472429723658259638299789389884849425955643678172289502859408980127323836274906038116706112660658649763239383512259796961545862229341896515460152417797468518320773890028765320126358163569668232012639239882531415889406854594007539731921461733507468261719227665670083900331888861720942790177975545932847616618594799282212034007839923192568323865091771894297913522682046412187670331691700165657899671285303668575015986881507018228747851807224945135170967289834119822681381597282868777065274884630056899959972265115558533773989146469043710258886697689998269041202350434121871389698422315245136451860381799746678855218534365394329752562889077219270292082629319937228587782918755714036255944504300644652374611823235399511221671158485024603056424466791804643738337739692996284266093574767652269950160166378351919756159454623065265957295088099284361942336379878427964319435937550642373737837444349181212774176702437562005726697872513677832096159186194877061933432141987294499356375247996699352295876230027681756400120664538069686271977236570887644713204121913043286850267675901589124685869506884249591534414213698459185291362902398841055548466916486325466512979724576997644919728525655514431738094555001812203425083150627398105666616280886174325676768499628472514485045666473773394956572489035764209124205119232296842042757088171304931759085799387738836942491174129661762629068464649498820457521733177246795969489334776570575178919828275233322805304696029794831735364354615970743501438507199848225872973165287223277763704418551312383371845028855082132580656747350019296079502976842111834530827899199154966953729185974765719344342522791921461422091990176112361461