54917974777283427657798261687709422919293681249379111874664271617539121216395427933530978058009605876717761330772286003180147553618064321894526436783644877304326181567025480821335133774979842358748351922441480584487309392716180006057423241904099778493321535381729352332672798571493600759065284333881935531439942582255947585557741495378673456286876179093645357317189045243379338761778433756322889120933423335419261272521266344413928529382011321160614120856672299389913325983459365947538526874637275955817193011660688958528413342511646869776981441450739556171861982793345512774610837789753231354299498557394826509522524516174170448289094325235046401818948531514441245753638489716760474922910113653499113380658301705239542343524532884914730349828753260757676418283113895562835113213517933484580655237534830552728988420097134736681749072388128881086601933735979305861820153802990806421541511767717084332188427081438663109459735644242540838027120816324616585813449828927532903169497581687294226251868595232889068173381324643142197951325451635847131481903425566733429303052629757784046135648075177491856906643819589743096229673978243243938333955361183895268967416261049338102925907689624759134885315236318651022105917216652884463774995459771155527213141607226663516663954129675135164577564413676872344664049116713859103380697465254798886418847334242693986778845576063275454001541667198748804617237480452858653454391804393514075549105705353682027391761291615453605640398742326286514068434323176460661497705275827826778583780498657818690227082367149444231756982726830429523322107911308666221270204089979713115186734690672642604971078947311661605428392402793305452383617876094292880554823577654440479979048185694875486406745774144566280198528003967703276535897521315096676337185837962988020226808044860647772191576279885734023240138104686172734947572139971076280657472083049982181357585198749834222495293689161667578173846196070886316163961919040846652148635370235747558492979678091640568314477236494468382419992199550392434964566644939722344138317764556904225874121382672638673292598807550828424382617116084344818179603112587511180434310794307300730333378559668079835653024842830645317513841388056246451280159731983843694472766273197894012995908843079209558845025322726394480331558841727624111218888445353258954181602805738529164104638506913062234348613058963714229040861149405612653135104547361387947713476116929037864472185527415338774050348355882539551442249317385909094833939560112708567152915593421223751619839703978066929245391566935782443289535659269633995922321128308973127308790237819381613469594525575448835502281938943508610425075172094701999592128691120225034274277571048880710424012052378895302621879321194762226661795525839966907651451314428405648791043265662232976106582920595298481239816716695359166246813873548777213191032938741678665959600136076765355705694481447888182759895485815635218110775477424825948666412939400155933205055641786494755136498693052181354365277563061795897124075688339719467413298632459122813312552474743228294934129039628607727971948788538712044825480012131222059129103542791697857583890156042716405069278636124580834387802632511692586023261866220665065072940410745571899275042011452326659078539789150898439090638186617912711666648361782001963574993856368953992675829369578581169761273880204712691146004175338656606086728582155053243655638825303261316367204696295091766327701256843072544995053355697873715210873742531826057108682671317381292631619672848325990657632331334881952414046071495347114958938610330324449619565914405919477272923165639298073312745853616864079214281895450617472513958917145565716583511380996228620677104817533491455447167973288782576987466790674475564585574327358508083159777978267839244621637285992193209841429975397181374317344981541596752140308450448272659243788617205243971181682324505976716868178744433113693858518841627584240834589882277924424248525257601058174823699722152672224764095144139985696317454785292265454066722543559867393566520788789994983641960493649636178290715616487144746485566173060512828733686092426820821827561525624050684067335873023084367459264402813443611625205073636683433955994227872883066804420241067169690660992359357896133102500124154214906396455375623131886527974165939063853891171423203905647736192620866166548643668788064561385155265808352897340587636039686150849268148711874656343062552368375685245144881277733976784691927828498716193303660697925277222477671966918616265028321683368172942994514131015448296928847552551598041285928547206483311289117588591737133455275484076894586878127115038432936432034225659342674318843389439386996414048710568733344408548207013692728816396969963487923909378102203556184843889115841711467856855726852048448826671349353753087502181127163911329316145522177344766157993783916526511373264996131157483335152847671845795776646646751536862130162703379712447854982710289921130830061139160631718087817639199659438996963541614757539445517281071486037857416991077274777192912345275212591932366383047736115432546843186780250434169702433958428723922612859366176615320076471417091178099612044525755598738660187685639526611915526599630489405218911699808066122933518670236524522706292685744797342940664787731815022507572223041943658635056094993764996509901573535765733059250927684682635585245262649199270531437862835079962173126538794877064896535983889996906260259564860883199467540728999714316495933773968530489732417885291145913571192078281213597761400335915113930240715446537319111992936225975577142311278084051467244180054501284652676052054764630322073906840254319584539513087383902437231914271665792235236111994064529221321691855632307580247024080363027593064509714909057610595997362500322178004263699614453210229083664477995428792609465529569073941783767839803118528795657310853364314157374814193548307719697930240660706757832546973106