23248413981128035676745981568302942782977812249059187314614104430164474959695247525565917721008948836584767428442531069017243970731764647459815641128719023992342839466078622954349568218757228500273226219552416911441936572726058447363627462342688696316071896586486914928162100422873454635889433895180784992907426141303190675364863803153429663129608408368404174175738566339838022178467442156906008733430621423269774865827163744331734530692181492716737509934429482158054499691366915301696932237724420405611134543592774524534269847183889997788662184680831764354840283678935886857025143059433889714672509977680887519807860421338211570111514167368120863417946361191838669391740921705422197039447449318695686712140683667461689627885535348478672235432276389069417785716003728169709163323513838266761121918758812223148759015842648367443159514781407905910469733368205790640772180382942122717229632404829330387305599792914460039742196035293573715521684369783068499523998645864985481336696162645930537657275547381585907319710219329038467220284584660084624745854857147059174990909652212656868130431475948818751562714427592947078820396664832433834378866711684626025902833892876167812232703714775686868447259247748408225509218555585957822167531786649767725794376812397775742850688779766382257603898551991338458307990244743898910347272906458726720706777318891474537455141214954861601447432376772697397688081065601543102313018855160078946354519064944012054812575212122319026597481265464433969276657764859721660978620460664071732651413594622662373157693822893588061595979617995587783659157619236595233539363459797769683132897219283997870301948655263262310358187959070619576261642426914619797933157863146769881693914368906768912179511484148061489111788551215808658261875498870067646586987337977616185202456883981397681335084658141581044537430591994735191376961936459180179320802312501447719507686694866537753054351361712663155547408873507681766844611641034872568962533495527833102814343568513418864347256375714834376477882315455044870469410436063571518119948699310619316938241036868948455642314865483971089476191342002030909354556080640492258471799316708468255297245257536748621004961673889874478133576034692899432281179905493813351848628255582830276326529620081824492398119629349400841775394616981450639333895475507401285812715128561642238089888297703811501192885757634923643018521836631931524295937373387320104483067978193656020735755331504824964927662809634237212832435897470417059221668799115047146735674168782738433167368080637346103737086930546996562652891553802181915896948078917468652067472449513926427921229444248125665553792148318355873437557040411127496885572185886404818097425911818172243396115758427634941478456859029638714656706474760178952218773517279777885978824301976247475393225762387316126993033864952847995887792831956472930949125072838736656743474056357472001396670196582465880531493548327388310787528539410017585658268751466995531424452163823464199121157918934669674329049913703574076197210163881433628226938689491573813118424565275974067973834944897812102954236063909781742421971951456296160912628045984721915272245547593985846801664298987563483771468298968776763722197634431864754189735317767204675316692747966338880786630107907291754640552585472035004218483777317203960695818366846022565130879135631939793839132035394436823555603476652429443957782263513276307296255706791389682036782383488702016755406543080586592961346702840247916769917102588554984900671980569390414297219279918955856008710971067429941972033389418139039771691248413974485113259711266133421344087748458198335538974294998989836952958052404972456431159479694219831504812657994555215594895722977868996896017664017677121303660913275852585444294336790837083443119940097114128364569171351816738466484953387847787548815371096109644367023720693012229236228825908046905247444835624670822629953759849496283213858303466298040882381121693309266891794731715325678549122417493850529339541468355225674763663005771532521969613725191328572506351606851316531985941823834598496579542433901444663693091157620599294532561368286919305777592502708667947464949691599666267651488158072302080310528457980268925717885870399341837485446379925655550295399083781444049494107392918932406655759463283238885466680680216661419180985761606490270736604891186374926218231455646930563804870527743953780893836199954540110448338043784449167014573267118278267263843299224436690807659147187476441886539262281739345729109868961958853512604242889936753723582816413324114809758771207649074979533360305094098758545922986077429389095529388799568795188478971311375133773853634032163523756397084541877497313991328815656563079486852645254893690983761928412462258382869796066334185993322291823146995787664202846887119414378613376423119195221119492166932390303906545345584746567685462548352961657676320346272743494450015575728455227542038995229078198573254811698209315812341644880009365689609966456895301984857472380217936747378970493358962685731203954572122595063566742543264237371003198949641697339440478536815673583145988942399307771966888988807232474552117781758051886321457603641794299884371939527113962787275463321566792789338835387819713646449239911834345713513975390826221502016635612960988895256569520858227060482589955456816788552357157480924894768461940565304927919751411162424812961066815191016991265995672913916058731375266905978413040749494140962626638497854177598629372727813964366975183162576756126251341372776137771296088535342715393554217414224794849737528784811663047367464076778800101290968772227373479213697974109014518018394767448346451278241343249664190048914495837833267318942587379957998588156482550149621616848617706486789799109839259472891635146047694062177489596856924062865816855277277522614649524574809422773699160923813128088358747877795849442868291879916842750411571507446