342717348767505785128396339558818242805749466861196137505497208685342703335971714696264551642528368869779499081266438446855553941756807193092667898387744779761049488832304561333006766096818623532597744843886595658094382720565572321613532118970410768147112427721059109970350879726219627819721056933552692708732280361129089612449130266265911726825964591963465301217551238914778139394568351548152100857780676437622286238387678992604889331459041101136409279382117396346267035514916704506781849031726114432392727596259387077122989272356837811543756282676412270079594959551724723643662651593950452995188198361510184721828865456437713802836749883704878854140114432182960708430536928619704249115860829410574041171239562497163284561678291987611213251707702774287345884501944093140961972337377890842013888968601634592509751672071423483973398758384969903903975277761340658884404945678447486765777871108260697489331584462558232952692392084684619954501100172910626596096742745922474831633739291295488069705693941076284701613761893514682471218612697429531099239466483964736396324197016661811889730212436705796890226862904413394981745244447034151911873425735164138180626499251385991912566667325566925441485655266599454844927941961128206111901429934332895937473676522484845886265652213753919047605521186922661821920321126932727968179135769922193193350701977663650257753577211306965235333759457653186854564886669286822470038670840846497562337693228784796985024878549885312848928516273781545617106465145658607530772218380944810478856977847046726278922938719197668794424585875248193664676538334253773891259068519231419962823329724035739747776182165320422714070801665834116944597237976471114752921633106321523225011515836897309740415847858418308285233035211747036904964384913295197956729695609175832871285357139423501694139443151188322304969731378189722221794677570025150763013304734381804883855686113731270011336216610023409419745332481274442959232910100138993582320696447950124326985845777692902757517211918424989651838812413799806651416857359183011688485249894964781896558017551024902263026465995189298537465255814481788757755626843370405011555352236457506449652038620312118843143165644185992579880878251240984092826800016592048034353223245050943867434405280825503767138366855660681207081735145505154524811585954476447669589637789547886128386638971214812467160889096043204391562442927571733912858610985672691208099448790611364336086411832190513684400592413933025182391507472209855039246852917776046778223006979748474394222490171487201248267174118220131118399602950985108133061765187756489182783739390814166710821005586668621637504485394958064858335739199597535082721343111862056424567760601409326271663448719694378286614811385982354103645097094575989348835305824627132108014626272637150387722213221414081299468793117633202754911990390728077151716014367838998241006383836224069844948717968981904492366576340079108501587864857765908597509667797565011850398620227097339024595402583336535654923459338687047574914654129425286718415222077023138948492765834646417705629936555632393468723978618562269189485071136392711279828523351334238381756191203177125185797716081248514027387475451194510680865221570886160777530406742476810649176645739966438525033743235652413870529687636620425014061480795531721514442115492376212735071693584282777392174011978162238997861579196811129269324635877860019413989367488056136881371577703726570998889261447754237838635636202892298280892336575126241427764142477498132315934085791815909555234262126687918433965123391666388909969260921482421686232744585664886873874131457241784861691389978634261063576954602209400041437378966875487403578062170810819397995815717834702074267884523207169581134711229280148604719795988707281895399623263884441147073813676749261186431642405712206756327779458264664345739869038302534273458269993214716436781325927045818272285319313537709689589943499591883570445540967935180351385727777626715009623478823415303487697681767125316049638272521057646310409358274646202329898306234170163395329441947762180967595001714582074060467015174434656456959567369300851639607297118385287972936964775635705966316203171976696232427555581016853715223429181442878628908463504166824662642119525151605566908887591966227474902398939461211730878534775168742682625441482403531824062717715857083104546055274296207449987794169873426116686883996420644871559824196366289914143424534035209372261014205388422122785255436876608148954456345772570290898391872413288330912618283594679718713152991224113681435391916697395482176633115312783354542165488998287601034554822168379261415251955927807780618765840228633577221526550651343167675699628629231781399835252963627986306336392828274764743526216566123818480173838249936747382212871321172833362232735491387226119928387643996058402295463930148211765530302255595885934572358642720065033238593250472011068924912073627133126847111772613334644189902216598617388596732085364495571771502738199055622994724986746579190788105903928971689586047256687791016495599739527699900946550525438161258522381732299268049506235822531364653341377240129520666813767557684209357393924900190964014361662570640775143320669579444536220087761755201978651041151434536687242576994221876215897375863136021259419470063207896446213805695925151642972300556534496950741497661237969784744797252874379690238568858041629392080757421465219577298353483058832461728211548450939775320419581143929509429828509993291463407822258533308576044246667467380812375861885091579499793364768605242393130324038889247467487430017333705017329555921564058466320140268953357868244569406036522373656648655156120620419724314170857459654484007607249024286936255445432797429519535656394231877552133985826019971574826159963285868606701910634429387260560056469082594156491966861570696711039701866374247760589627779032401390304343150715058394860662444544