nodejs18-docs-18.20.1-150400.9.21.3<>,,f1p9|,:?6,"U^ϛpeSjfN;*P[yV)Dn,ȟ{[,'7bԭBmy-udcD)9$jmVP!QSrjqXIF T7e )o,&|sSI^;v lltKV;HJW`tJ" j[~[]!k~ޒV[ث1!"ц {4AL7KB(c옮t-R(>;H?8d & @|  @  h   = =A DHIL@LPL`L(L8L%9M|%:PL%F$G8H`IXTYX\p]^Ybcd"e'f*l,u@vhz4Cnodejs18-docs18.20.1150400.9.21.3Node.js API documentationThe API documentation for the Node.js JavaScript runtime.f1h01-ch2cSUSE Linux Enterprise 15SUSE LLC MIThttps://www.suse.com/Documentation/Otherhttps://nodejs.orglinuxnoarch3 vLd.n 97CPb]z|aS6X  j+s`eAZ _V)?} p)BKi{H|A oЭe2(}3X-<g pM"`6 7 R ?R+)P![#wP(AV26U::*%B/h~N֚QUr&;/sO:]9$oŖgiD##qP3Gi`k5S^FxXKSe6$d<J^ Ny xb5F~F?<ӝgc:"Y#`%wM"<Bqo/%a)\c.);}fAA큤A큤f0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2ee4e30015dc08942cc8f22f6be0ca5dbf6c87c85d3bcccfd814aa72f09f538e2b1733a61fb8e3597ced5d3d46cecef1bed5f45f046fecf739cdc0f2cdbcb36a7d84552422c6e05c7981da4f2e0e19fb697fff1f9ef189443d554da7d46007e5a1b9fbacc060430144358dacc9265a7babbbea03428843406f5473e542ab8ee5ea739c503f86709866fdaee25e8c9477ff65875ef761c4f66a6414a670a0adc2d5870f9a26aab4d993262c296be1b8e36cb66f233ae10f50e903bea2c6b2233426397056f6e06138851bd14bd762a83f4dc65b400d07f4c80ba758b096cdd1beb240db04a7bcf6b925661869baf9d4042178a532876c531562c635e1297624ad33263a9ccc37473936479a8b1b408fc84e0c277a07ee0220e1f503f6241371a02863f53e2c12212917cd00e9a663d37d58a165bbe501bed4148cf447aba9c3594e35cb18c97866ff100aee980af208eab0bf806865eb19d51afc338ae207009711ca10c73b0bfaacc1561063fac4cb54c89b5bb6dad8ea3cc2e3d9871fd0fdc1bab7db1080b5b630504e5131c92ac32e0ada2dbc4e5464878f8c1f669a520a9b0fe67cb629a205c021801aca6cf870c1bb60ec95c1d9559afd528b1a088b69ae9f73be57e3b237053dfe64d731649bf187344500548efbdeee7ce9c6a350d2d1be57e61bba3e9464aad835e2058cfb00b987cf42c47c899c18a0053b0124b62b7aaaf947e7781d9796463276818e26b403a4fa1019f0a69a02cad5e15d7a9ee860d237639a5864cd4f76bc66222b1728a39e3b389a0fcbe94a19a127b967c5b4a0f00169d4c5cad546979f7ee3200226d603ff46ceefd661403a6859df8b253aac540d304cde8b6da1a80a1d38e713416bb4a593713930ddd2a9aa7eb9cc003a496dc4f3c6fd0ae10fb21ce1bfdea6047694d2b0978ac4cf0afad10c5c95b6c380d162c9ace3d5369b36aa71dc81f3a66eee69943c1ece44b72109a52a0286df1d07a4f97c935cda9d8cb9e3eee5e1f9da97d83e879fb6b5089d27c80516b37a97c885395c56fdee9cde693e3f1eb4d6a5bbc45cc355d7b2bfd3b023b7474dea94f40aec9f2c1e4f7c0656e0b897e576bace05d13fbafcbae389e5902532ebb2c410f5a67e007872f08f1fb44a4a3cf2224d94aec0387bcd346cb7ee85d0a9778c4dc3721905b999fdabdbc7c3674e3e0deb4b8ee5cb478e111c2a1539cc737e50e7344a8b0a11831fe983aa53fdb17eab07f907f19109b79cfdabcce6737298f9c9c0dc7eb47a547070865d3a48fc023211ad402de7437033ca8b0234e71814a4cacdba06b7fee633f6bb8d9ad45845bdee90bafb763b9ac325922c49173741c92892eb6e161e8f98537626ea0035a721313487348b2a633b918a18d903fafe6d431a0735239e0bb962640d60ffa6608ff7c605a66c0aaa072f28538b7af96228dc2caabae6bc1db5f70788b34949b30234be7856d1e079adcfd60225ab6d410a824d063c2f9f5e0b2fc63d8c5e74410e8471f86e51a45e96a09f593c6c8ec53785aa9109794985aab95116d128b5a64f2938bd298076c1a0c022d696453cdd63dee250d208f7723b96a6aa779ee7df293809be2dffa4ecf012bed738b274edb67d707c7104fd9406ab0ebe9bf48cf7f7e75588a7f085a155011473b1ddaed83a6a00a9e0f8432f3485f348e13a656c9065d06547d11eacae9d77f9931920a0e8fbe89c34bc3d2adc3386725e0f6beb96d96b73bb29321df29b450319a4831e37547e4224136500a4c494458c12232aac96244adb74be4943d6d0a6dcff153df571dcd55c091b3ca3db7a6f4e512d5b8f5edec6d6b53217fa635575794536a02efca6b0d08ba922113be57934c60e66a10983237415b0d0cccb24526f5694d211f33a5fcd7d2bd5e154511c5f70c6f082573cd18e2ad89f9e490306d80d5561617db4ce18acf57acf009e7fb235d7689c09fcd98ae7b6116b49f8406c514f57d22767186a46860fdc589a6b3c2468bee0fa1a9257b149a632286fb9a0b25c66254406d508b51724b77530b29181f3438734d547eb4f3f4d7ce042fd21477a18227966f89b2bc8d1151a21d8c97bffee9dfc731e50da9df591c6b38cb211bd0e002e777b7478d4ce3ad1913c0a202b674df4dd9f343563dfd9bd126403a66113310270a0b4437cf999d195283191b024d6a6434fa3dd15bf78227250d4a821be882fe5a4e2d0a281dbad6929aa00d5c409a96d5978a17fc1b4d5f6ec302cb4f73a193b5380aa478c2b4da62487aba1b4e531ada4d349c8bd109c774a35c3b11b428ec3564e43b7d4119835e1e945fe302b2892341214a220e625825b50576f86451a47c88a6db4fbf067e5a8f5b532ec8057163672f4dbac23ce1062731ca41e2556896c22aa0a473d8cab49a6f3c32d08d2fecc7f844adfe288735eecd6d809c394c3a278c18f440fba59c7d1f443d9a536fd68e90453691aa32bf573c97dbfb4d15eb05d13b35d6830f00891cc479f9e7f537d4db77e1425c0214a13765615c7a5ea3dc321c7698bac18031c790f885f9a26fe13e1f39792d3cd98a27578a3346f94583cbc7bbc94ba4690f8ffb07df4467a714a67e8bc1d1c72d02a3a7a13361b9320591495053e1db79ff15a84d8fe30a4b8a9366d9cb2a0c45ee49e55725c9f732ac789a1468cd2010936efb3ce54ad0c8fdacb1e0edbf360b9800890e9ddfee2f734a5ba60dc0dedfbb2ea2efb5c14e64aef173afc0198e4b8281be28a176a534e6c1c97b9e30d4bd6f883e8e8c8391c19465a805c63bf8e8f1a8142d7f98175b0a05b8d0fff3d16f6d210566b1616932c429b6fc8314aa91c4472fe31c6f5eabb92c4ed5362e4b5504813aecdc1b3ef6c57365266392e4b2d795fd2940e868d4cb8e43f319da55391082f047534fd797c4bfefb1f857372fff73b061e25656144cd7e88f1290da385b05fb8e8d7cb219e9b81aeadedb4d24d8c553d7b948161adeedced3fe199f333c388d9efaf23d7d41d62fffee146050b42a12581c6739ecfd5339ed0acbd412901628d4e9c47a4bf4a3ba9cd0c5032ad691630bce6258b5adef7b441afca7c783f12e9d5849b7d25606799375506795cdb4cf53ef170dd496f4664180c12bc51825237dfae964ecb0844dc4aa4a56ca544604ab5b688b05617de0d4e9ab98b9932b61006d6b261b393d1c16cd9d5b62e84471056e9976398639037242abd4a170d74d9d9ea5bb5f56850ff23a527fa8488715b964e08b28fe84f6b25c159c77c9f04bd96532f147845aed2a3a4a3f8fa25d9d7c205cb9d458f93ce40cbe2da518159ceb604957d633f82ba32c8003aa94beef4ed0363a68059e03c6d0b06bd8fc617b5907739cc437c0f30914a6a41122f503bd5154c26ab0a73599e1d7367d27a7600275f33a4e62a0851a6a88af5e99a886f77fd34c86be86daefd39c1dd04e67f624e276e41f41689c387fd72545cac61905d530a5d97414f6f3344b25252d03f99574ad00748fd7b3be42a619a1d4a28b03738aa0c9fd586b03673b3ac076418ad7c5a55a02065b71595facdb6e959f1170e904bc995275bf44645797f07415139b9af6939faedb57f5833f3a263d3086aa5fbf8e975113675ba8973f7b7a479c469f3cbd230e05e82b98f162b23e7d984872d8e829839fec1624caef2c673f13aa7fb9173fd9107f6caec153ec82646ca8469cb58e1b2b475b4e641cca9b2b4df1276dcd78510b86a476b7ddb130dfff91bb4cccb58e888fdc20645681d92998c3a39fbf6a865e39afec24bc517b02e9e275144a282b591066e49fae9eecc74d77d19542515d9e474b94c417cee9bd6f1983c7245430fefc4c6f8a89c3b18ad7e8b73af98e1949cac05f4fb520ec016973350439db691cbf5129fe5498c9f1f2cdad227564291a64a98e4e0f7c34a5fdcfb47d39b3c14414b82e97c01ac2ad9b8d510e08a65e1fce3f8692066d42be3d43bd25046891f3bdc6ed4f0cee09de90e6e77c52c3f27ce7872e60e78c6d26d09811742f53038b12fbcd3c6687b17a9017d13f840a201675704c90e9c0a99ada348f75702bafdb859c2f146697f302d2b9c452ccca4f996a461839bd4f64f4c59434ae02152303c15f27bb9b7eeb827fbf71c1472cf72cb8de10aa1ef5a7859e07526d33ef65d5dcfbbaaf49d176583991fd387762246f9835d06ed3ac900e93825d5a3cc50f451c28e28e3391a8a4381137af2496c2ebd90d3945d3417d468d743f96ef81e8b56d60b4c5652e79ea02abbf78858b9ec55c49820b7b72bc8cbac9433e3dd00aa907e605370e7916f4368b2a469915ad0816b28df87234d059e6e2cd05f3bfc73d2fc631c595ad71b56eb9876dcc63c4f3bb570c757705721628eea116cff3acf20b822a985c87f5e7ecce2af27bdc4895baaf5055a9e1c6bf33218abbab8e623a8f950f290d2a04700cb70c1bfa76fbd669ac94150ddf8968b395ff55fef01cc6ad200804749c34f3e56d7f4fb80f096a2cd7cf736a614ad75a832e373397a46270dc43891b3bd57dce489aaf7c42a1c34783f8a9f50a1d2158212d32a34c88cf661ec26fc99d631a5e0e3cee7ba06fa2e0323a13a896580366dcbb9ebd121d6fc9da7f0001c563bd04635e561bd356e30516caad6ea90a77126cdb4db81c4717eb389508868bfad3b96c329754567321b6d7f26c1d4eea45a58347a49029aa1ead4ab7d5ad560e89de2b1c77ebd77e1b6e13c65b941bc3be803f8c6f25dfb58760c937da4f35a3b774d2eccbf0e5d6fc3f25dadfff5ebefa3b13143cdca4529aaea3dfbb2b3d82e41960f5bd42aac1de485ca63ac41e028be27490c1cfad9fee733a043b026557a122fc75850eeed538db9003ff3f88474b9decaadaddc8baca257b85a61ad45ac50922fec4d69251b4676bb2124559dc0cd66fca0568e075184c6a5b5e76defa1803861c54128246ac46b012baa35a9351be102c047bd345d86f946117a7835c7a4231e42209ba95f597ce9941c1d688678c8d2e8b47fd8d4f0bb5afcc10220f37b7846763b127fa3d5a2a515d16e3750225c0d13807e842050c51d5b29d94fe1c5656771d52de479fe6fc39f367ca7a1c158c3b983bd94623d8631badff9b0de84b5a35fa8e048649bc81ed99fb3402a85a0cf22dbd36203e1e0a543e618d886befe5d02c998330774320160d4fceb0e0759ddc45d565b496cb930161e81b6dc71f66a7d85c31bb0a0e895d8f94bc6ba0db0d1679f5ddcb153c18cfb751dc11a790b7ee5d3f4ab96cb5ce7d275959b5b142d6f809cadfc509b2f055af6afa33260dfe8748bbc0feea40006c81eab898575ae971d1175a03f7958222e6e6f3caac4cd1d3f21f1cf7a427db5c46b7ab6b89728c545ce8c0148bab8c81299d5412c81e77fc95f8445c32af2579dfc022abf93fdebf3e3abccf6efc8d3be3d19efb4b57a7ff809f7f4e0bbfb202b006dfd8de0b6626215387a33a3836229c59f795a17511f0176e7a78312ecd30bdd8574dab766bae5fff9dcefc60ad35aa5491086514d35484c28bd162d6802e6af890655c07f79472cfc19f2d97b7368f4b077b4a8c2b21c46400463aa8444d0ae0560336bc9d657e4df02c90969145a7a033e4b1410339d225da64a00cb664deb54f02fa38be4f5902c1af1fe7420ac4fff44de997c6109b10dae645f393f5f557929cf70249736166a4b3d8727a9b3af0ff93419fef66706d494c3553f084ee6ef6978f2dfc4d5044fdf6d91dabc9f6406907cb54525031d8f10dcd112267888357513c693bb27da53b33eed10035a7aba8660ca073d0bd850938d4853702b50d71c707273b7fb4c238db2a72364670c911a58dd054095b6a0d2b243e32fefac9882a872f47d916063dbe5c3fe839d7769f65e3b2ca5d1a9c6e3dd25812590f8cd05a091558f5a11e5787ef1603d26074ef6911543fd0ec5faeff92f5df5d63cd0dd9f9ed75fe80f85b38447f21005eb5ab340500f6c25c733cdc1ee9319461c0627453fa9cd00ae2c2f28cfab8f80286b1b73cd43e77f113db0861c0f8d42f3317f39eec259648b909b8adc306bd52b22a159b5b6272eb75d0b9b7133b92540caa98b6d335ea78b20945723e0dfb93bd247fb58b553469150f67ac9a03fd7998c7bef9eb953cea252a7c52bf085f4fb1e84c03fa98993893018251318d8353718f28879b37c804bdba06df6449ec477f6ecc84d55c16255eb256f108826c797c8013b2e48e16307a49c30df26a0c9db3086ca441823d2cb2c5fbcacb06110cb84ef552edcbdd2dabb0d2b6a2dae1d319c84465ce06bfd9747933b87a381db74971f8fdd6ea5b41bacc254147cf1b2c0c03712b30544b49eb7fc6534701a95e92443bbe2e0614951c9d2813e185604447a67292351e639d58485b20b1988a81eb8e055383c52ab0ba7b82e964c275643ad615f5a6bfd182a8c8408ec451a07cbb81c94fbd4272ce0f51286bfdb5d09768effc8a59461b9f793a0879a01d16361e918bf18c81950a77b326750361aadb1a6ea99efb2f5c01548dda75061ac8f7a14e28210955f15697cbeb9637ccb87ef2665d4b6994ee2ce2e40d80f744759fe36de4216a25ec82d2d2cb773a12f0b9b58d7d178e1b6e231ad492161dc841f2cf89e0f96889378a4b0b3939a1f5bf5530e03a29797b480435054cb214988be172bcbda4ee2d0dd9b6840bf81f37e8566f54b6116c9604da93064ae0d502b06c5579365c73ff79e93db6ed4e183a0f8d2111d025b325de3c2bf58abc518cb843f93d3cecec7def5125ba0ff653cebc0c6d4dbfa533b677db4d4f4ee12934782343a70b0d3c412cd6faed5164e2c85f9007ec7f4d079f9df840d532b396503611fd36127b5048da0244797244e9cd616f5e6769f3ce5c538e2d59e07a678cf9b89fbb024e27955ed51ed96be58146ff7598c235a560f6630fedfa8000974ec59bae47336b8fa750b4e1be9ed4fded48dfb18bea14ff47d10b18c1de6a6194a6d932322310d9232cbd5690593050323c097cb62ec69dac14dfc0e6b0660e4ed75502e6310e175e69f45caff8d1f67a710f7af300a024967c678c7cd56402f2a4d0badd1b124af95d40b6e026b7f86c4f187ad1afa05509290e8e52280cc4bf216b52e20dd344e19992b3e34e759f0a3d317ebfbcf296f7efafc9164fc67092e8fe17c3065677c0c803d08adcb120876397af9c818ce164fd1a2de1272f6816f183114c94822a2d2440bc335ee83a7f791fd988dacc71ced8fc097da62fa1c7e9b66e6d5d316ad25b6e9528b06431d6b7f1158215241187ab903a83d9716d596dd03914666a910a5ace569dc69f25d962ac77d89a07ba630c5bb2703f5c7eae55cefe4c6700e81921d9f5437b4e047dcf6e377d3d0c37875a7333d1732ec08586cf8f67926f5740043060f74ade35ad3cb3c4f0bc2f7141f25f92bc88af3961a7e7a2bb538a2193250f9d37716877f6c2894d7e92111cbdf85fbda9453fd7ab8fddc4645b7192b2ded58b5658ba2498294510e2aa128d938dcfc0408e78803c86aa5ed85c74c1d557db4046e82db551d3fc3d87f5c233c044e04fdfc77379d3c32851ba3c273d1ff15552b6b597399bd52f04397aef7108baf5bf2ce93c9039f610f853711a3e7fd520400822efb35a931c240789ed051c68da857e8120d43b04224af352de6340a1bf7f780da5f36682c9ad74849da2dff46c743529bc3c6db9ea9f615be9e241a7d80f5fe9dec768311920a83fc3d18116a809ff056e45d3f00c19c27d10380088bd8a45310de03d4b66f644fe443b4213762f2632485c2c8d93ef7b6c522e2503d9995fca2cb16b26df66d6579afbea14ccf54df955703249e29edc09e3036f4b1e4f18f82a3f513fe52d7d0d9d25a5277c2f6cce8d103dec401c2ac877fdf1719162ba9ce17aeb796e904d2aefc722cbf732b142bd9753732a518dc5964aa11c8f9c467f171813ecd1ab7ea76b552b9d0717aebd3f1375b5c5d5694b15757be6f7dd514fb844e37b2ebfce34f0c5d96c278766b4132f341e77b9e7c52b310945bfec45948b5f1c9f9da654bffc6f00a34b097d19f1ed891774f123b98eec80742e9707bbcdc5885719a736f5b833c59cf887e5fdaae5cb8cfc6fe3de5c171873bc8ab9eafcc5e3806d1e0316ede2dfdeeedc703af9919ee870fe0f100913cb61f6a52b1b3c3c0447122ff37bef13a9e8698f6873214f0219dfb71df9adb1845d5a33e7ffbcaf5182785d69b71acc187e9f6d431e34276ca232d425c962848c779607d57a0398367172d76a38484b4608dd7f5a90744342bcf6dcb64804480b329de4b857684d52a8fb7f546197a4af48bad95e51ce8f80b78592ac5795c6e86da4f57a91ec6876f9e9e52358d3877b7702e9ed59527b2cd92c1c024dc8cdaf7e0f6d95d24b864e498d4939e44ff9cb7b3bdeb597c6033fba128298b464895768dcc0be1c22dbe1e52a7f4a7446e30d6a717dce8041a6c97bf5ee41dafcea156ac25aaa8de81752f8444e2e0fc6ac007e5dc444e78b71b3c361d5597f6ce9797dcabacf32fd330f51ee50d01566c988fc2f5ec34a589b8eca1413d5dd2bc061ce6e2fa7609e58a7e357d32bce5345802d5c86ef462756b5feb3bf4c2b301d5b6ee1f66ad617fdbe58bf8393572cf5bbbf14252bda9dac8917d322f25b997a031cad0e21e73cf2cd71cd3f2d853fe4374b097e615345d51ebf39cc8bd003b3b6c7eb79d41a8de84086d2ec1cb49bed7ccb8009a1e486211fac3b33e5b782a99953d3050afe944cfad1804d657d362c93553d43eccc9c036a1d558cbb4da817123d49e244b2a5478441d3d6421d1b0165ffcfaec39ccd4927cf437f742152a1ff21d4987ebe91312dd6717e7e683bf266f2dcce238b1a05835bd2fb13e79ff5b8026b8736fd63ccd7d4d4afcad9b38e1f6ca4473106b020f8729243c793ade22421e8618c481499a2708ec933c9397a984fec758caec0fe1b1b513949d47f1e124rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootnodejs18-18.20.1-150400.9.21.3.src.rpmnodejs18-docs    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3f-f @eN@ee4@e-%e&@e @d@d@d7d@dxcU@cc@cT@cc<@c@clch@ch@c[@cMCcF@c@c5c1@c%c#b)bnb4@bb@b1@adam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.dedimstar@opensuse.orgadam.majer@suse.deadam.majer@suse.deguillaume.gardet@opensuse.orgadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.dedmueller@suse.comadam.majer@suse.deadam.majer@suse.debrunopitrus@hotmail.comadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.deadam.majer@suse.de- Update to 18.20.1: * CVE-2024-27983 - Assertion failed in node::http2::Http2Session::~Http2Session() leads to HTTP/2 server crash- (High) (bsc#1222244) * CVE-2024-27982 - HTTP Request Smuggling via Content Length Obfuscation- (Medium) (bsc#1222384) * updated dependencies: + llhttp version 9.2.1 + undici version 5.28.4 (bsc#1222530, bsc#1222603, CVE-2024-30260, CVE-2024-30261) - cares_sle12_capabilities.patch: no get_random() on sle12- Update to 18.20.0: * Added support for import attributes * vm: fix V8 compilation cache support for vm.Script - versioned.patch: refreshed- Update to 18.19.1: (security updates) * (CVE-2024-21892, bsc#1219992) - Code injection and privilege escalation through Linux capabilities- (High) * (CVE-2024-22019, bsc#1219993) - http: Reading unprocessed HTTP request with unbounded chunk extension allows DoS attacks- (High) * (CVE-2023-46809, bsc#1219997) - Node.js is vulnerable to the Marvin Attack (timing variant of the Bleichenbacher attack against PKCS#1 v1.5 padding) - (Medium) * (CVE-2024-22025, bsc#1220014) - Denial of Service by resource exhaustion in fetch() brotli decoding - (Medium) * undici version 5.28.3 (CVE-2024-24758, bsc#1220017) * libuv version 1.48.0 (CVE-2024-24806, bsc#1220053)- sle12-node-gyp-addon-gypi.patch: added variant of node-gyp-addon-gypi.patch for SLE12 compatibility. node-gyp-addon-gypi.patch is for SLE15+- Update to LTS version 18.19.0 * deps: npm updates to 10.x * esm: + Leverage loaders when resolving subsequent loaders + import.meta.resolve unflagged + --experimental-default-type flag to flip module defaults For details, see https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md - node-gyp-addon-gypi.patch, fix_ci_tests.patch, versioned.patch: refreshed- Security update to version 18.18.2 * (CVE-2023-44487, bsc#1216190): nghttp2 Security Release * (CVE-2023-45143, bsc#1216205): undici Security Release * (CVE-2023-38552, bsc#1216272): Integrity checks according to policies can be circumvented * (CVE-2023-39333, bsc#1216273): Code injection via WebAssembly export names- Update to LTS version 18.18.1 * deps: libuv update in 18.18.0 broke webpack's thread-loader. This update should fix this.- Update to LTS version 18.18.0 * build: sync libuv header change * deps: add missing thread-common.c in uv.gyp * deps: upgrade to libuv 1.46.0 * doc: add atlowChemi to collaborators * esm: add `--import` flag * events: allow safely adding listener to abortSignal * fs, stream: initial `Symbol.dispose` and `Symbol.asyncDispose` support * net: add autoSelectFamily global getter and setter * url: add value argument to has and delete methods - versioned.patch: refreshed- Update to LTS version 18.17.1 (security fixes). The following CVE were fixed: * (CVE-2023-32002, bsc#1214150): Policies can be bypassed via Module._load (High) * (CVE-2023-32006, bsc#1214156): Policies can be bypassed by module.constructor.createRequire (Medium) * (CVE-2023-32559, bsc#1214154): Policies can be bypassed via process.binding (Medium) - Changes included in LTS version 18.17.0: * dns: expose getDefaultResultOrder * events: add getMaxListeners method * fs: + add support for mode flag to specify the copy behavior + add recursive option to readdir and opendir + add support for mode flag to specify the copy behavior + implement byob mode for readableWebStream() * http: + prevent writing to the body when not allowed by HTTP spec + remove internal error in assignSocket + add highWaterMark opt in http.createServer * lib: + add webstreams to Duplex.from() + implement AbortSignal.any() * module: + change default resolver to not throw on unknown scheme * node-api: + define version 9 + deprecate napi_module_register * stream: + preserve object mode in compose + add setter & getter for default highWaterMark * test_runner: + add shorthands to `test` + support combining coverage reports + execute before hook on test + expose reporter for use in run api * tools: update LICENSE and license-builder.sh * url: implement URL.canParse * wasi: no longer require flag to enable wasi - npm_search_paths.patch,fix_ci_tests.patch,versioned.patch: refreshed- Update to version 18.16.1 (security fixes only). The following CVEs are fixed in this release: * (CVE-2023-30581, bsc#1212574): mainModule.__proto__ Bypass Experimental Policy Mechanism (High) * (CVE-2023-30585, bsc#1212579): Privilege escalation via Malicious Registry Key manipulation during Node.js installer repair process (Medium) * (CVE-2023-30588, bsc#1212581): Process interuption due to invalid Public Key information in x509 certificates (Medium) * (CVE-2023-30589, bsc#1212582): HTTP Request Smuggling via Empty headers separated by CR (Medium) * (CVE-2023-30590, bsc#1212583): DiffieHellman does not generate keys after setting a private key (Medium) * c-ares security issues: + CVE-2023-32067. High. 0-byte UDP payload causes Denial of Service (bsc#1211604) + CVE-2023-31147 Moderate. Insufficient randomness in generation of DNS query IDs (bsc#1211605) + CVE-2023-31130. Moderate. Buffer Underwrite in ares_inet_net_pton() (bsc#1211606) + CVE-2023-31124. Low. AutoTools does not set CARES_RANDOM_FILE during cross compilation (bsc#1211607) - fix_ci_tests.patch: increase default timeout on unit tests to 20min from 2min. This seems to have lead to build failures on some platforms, like s390x in Factory. (bsc#1211407)- Update to NodeJS 18.16.0 LTS version * Add initial support for single executable applications * Replace url parser with Ada * buffer: add Buffer.copyBytesFrom - refreshed patches: versioned.patch linker_lto_jobs.patch- relax Requires to Suggests for alts on TW- Update to NodeJS 18.15.0 LTS version: * test_runner: + add initial code coverate support + add reporters * fs: add statfs() * buffer: add isAscii() - s390.patch, sysctl.patch: upstreamed and removed- node-gyp_7.1.2.tar.xz: added dependencies so they don't conflict with npm dependencies.- Update to NodeJS 18.14.2 LTS: * deps: upgrade npm to 9.5.0 (bsc#1208744, CVE-2022-25881) * deps: update undici to 5.20.0 - Changes in version 18.14.1: * fixes permissions policies can be bypassed via process.mainModule (bsc#1208481, CVE-2023-23918) * fixes insecure loading of ICU data through ICU_DATA environment variable (bsc#1208487, CVE-2023-23920) * fixes OpenSSL error handling issues in nodejs crypto library (bsc#1208483, CVE-2023-23919) * updates undici to v5.19.1 + Fetch API in Node.js did not protect against CRLF injection in host headers + Regular Expression Denial of Service in Headers in Node.js fetch API (bsc#1208413, bsc#1208485, CVE-2023-24807, CVE-2023-23936) - versioned.patch: refreshed - sysctl.patch: unit test fixes- Update to NodeJS 18.14.0 LTS: * deps: + update npm to 9.2.0 * http: + join authorization headers + improved timeout defaults handling * stream: + implement finished() for ReadableStream and WritableStream - refreshed patches: linker_lto_jobs.patch, npm_search_paths.patch, versioned.patch- Do not use pkg_vcmp to decide BuildDependencies: this works based on 'installed packages' which is not interpreted correctly by the scheduler. Rather switch to boolean dependencies.- Again use openssl-3, if available. - _constraints: reset aarch64 memory requirements back to original otherwise some unit tests can fail - s390.patch: fix unit test on s390 with patched zlib- Update to NodejJS 18.13.0 LTS: * build: disable v8 snapshot compression by default * crypto: update root certificates * deps: update ICU to 72.1 * doc: + add doc-only deprecation for headers/trailers setters + add Rafael to the tsc + deprecate use of invalid ports in url.parse + deprecate url.parse() * lib: drop fetch experimental warning * net: add autoSelectFamily and autoSelectFamilyAttemptTimeout options * src: + add uvwasi version + add initial shadow realm support * test_runner: + add t.after() hook + don't use a symbol for runHook() * tls: + add "ca" property to certificate object * util: + add fast path for utf8 encoding + improve textdecoder decode performance + add MIME utilities - new_python3.patch, icu721_fixes.patch: upstreamed, removed- Update _constraints: * Less RAM for aarch64 and 32-bit arm * Use 'asimdrdm' cpu flag to use aarch64 workers where tests are more stable- icu721_fixes.patch: fixes compatibility with ICU 72.1 (bsc#1205236)- Fix migration to openssl-3 (bsc#1205042)- Update to NodeJS 18.12.1 LTS: * inspector: DNS rebinding in --inspect via invalid octal IP (bsc#1205119, CVE-2022-43548)- Update to NodeJS 18.12.0 LTS: * Running in 'watch' mode using node --watch restarts the process when an imported file is changed. * fs: add FileHandle.prototype.readLines * http: add writeEarlyHints function to ServerResponse * http2: make early hints generic * util: add default value option to parsearg- Update to NodeJS 18.11.0: * added experimental watch mode -- running in 'watch' mode using node --watch restarts the process when an imported file is changed * fs: add FileHandle.prototype.readLines * http: add writeEarlyHints function to ServerResponse * http2: make early hints generic * lib: refactor transferable AbortSignal * src: add detailed embedder process initialization API * util: add default value option to parsearg - legacy_python.patch, versioned.patch: updated- qemu_timeouts_arches.patch: set timeouts on riscv5 to 7x normal- skip more tests for riscv64/qemu emulation- Update to NodeJS 18.10.0: * deps: upgrade npm to 8.19.2 * http: throw error on content-length mismatch * stream: add ReadableByteStream.tee() - openssl3_fixups.patch: upstreamed and removed- Update to Nodejs 18.9.1: * deps: llhttp updated to 6.0.10 + CVE-2022-32213 bypass via obs-fold mechanic (bsc#1201325) + Incorrect Parsing of Multi-line Transfer-Encoding (CVE-2022-32215, bsc#1201327) + Incorrect Parsing of Header Fields (CVE-2022-35256, bsc#1203832) * crypto: fix weak randomness in WebCrypto keygen (CVE-2022-35255, bsc#1203831)- Skip test-fs-utimes-y2K38.js on armv6hl as well as armv7hl.- Update to Nodejs 18.9.0: * lib - add diagnostics channel for process and worker * os - add machine method * report - expose report public native apis * src - expose environment RequestInterrupt api * vm - include vm context in the embedded snapshot - Changes in 18.8.0: * bootstrap: implement run-time user-land snapshots via - -build-snapshot and --snapshot-blob. See * crypto: + allow zero-length IKM in HKDF and in webcrypto PBKDF2 + allow zero-length secret KeyObject * deps: upgrade npm to 8.18.0 * http: make idle http parser count configurable * net: add local family * src: print source map error source on demand * tls: pass a valid socket on tlsClientError - dns.patch: upstreamed, removed - nodejs-libpath.patch, versioned.patch: refreshed - fix_ci_tests.patch: partially upstreamed - openssl3_fixups.patch: fix unit tests with openssl 1.1.1 - new_python3.patch: enable python 3.11 as valid interpreter- Update to Nodejs 18.7.0: * events: add CustomEvent * http: add drop request event for http server * lib: improved diagnostics_channel subscribe/unsubscribe * util: add tokens to parseArgs - enable crypto policy ciphers for TW and SLE15 SP4+ (bsc#1200303)- dns.patch: fix regression https://github.com/nodejs/node/issues/44003- Update to Nodejs 18.6.0: * Experimental ESM Loader Hooks API. For details see, https://nodejs.org/api/esm.html * dns: export error code constants from dns/promises * esm: add chaining to loaders * http: add diagnostics channel for http client * http: add perf_hooks detail for http request and client * module: add isBuiltIn method * net: add drop event for net server * test_runner: expose describe and it * v8: add v8.startupSnapshot utils For details, see https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18.6.0- Update to Nodejs 18.5.0: * http: stricter Transfer-Encoding and header separator parsing (bsc#1201325, bsc#1201326, bsc#1201327, CVE-2022-32213, CVE-2022-32214, CVE-2022-32215) * src: fix IPv4 validation in inspector_socket (bsc#1201328, CVE-2022-32212) For details, see https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18.5.0- Update to Nodejs 18.4.0. For detailed changes see, https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18.4.0 - refreshed: versioned.patch, linker_lto_jobs.patch, nodejs-libpath.patch- Initial packaging of Nodejs 18.2.0. For detailed changes since previous versions, see https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#18.2.0 Patches carried over from nodejs17: legacy_python.patch node-gyp-addon-gypi.patch openssl_binary_detection.patch test-skip-y2038-on-32bit-time_t.patch cares_public_headers.patch rsa-pss-revert.patch linker_lto_jobs.patch versioned.patch fix_ci_tests.patch manual_configure.patch npm_search_paths.patch skip_no_console.patch flaky_test_rerun.patch nodejs-libpath.patch sle12_python3_compat.patchh01-ch2c 1712909873  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~18.20.1-150400.9.21.3nodejs18-docsapiaddons.htmladdons.jsonaddons.mdall.htmlall.jsonassert.htmlassert.jsonassert.mdassetsapi.jshljs.cssjs-flavor-cjs.svgjs-flavor-esm.svgstyle.cssasync_context.htmlasync_context.jsonasync_context.mdasync_hooks.htmlasync_hooks.jsonasync_hooks.mdbuffer.htmlbuffer.jsonbuffer.mdchild_process.htmlchild_process.jsonchild_process.mdcli.htmlcli.jsoncli.mdcluster.htmlcluster.jsoncluster.mdconsole.htmlconsole.jsonconsole.mdcorepack.htmlcorepack.jsoncorepack.mdcrypto.htmlcrypto.jsoncrypto.mddebugger.htmldebugger.jsondebugger.mddeprecations.htmldeprecations.jsondeprecations.mddgram.htmldgram.jsondgram.mddiagnostics_channel.htmldiagnostics_channel.jsondiagnostics_channel.mddns.htmldns.jsondns.mddocumentation.htmldocumentation.jsondocumentation.mddomain.htmldomain.jsondomain.mdembedding.htmlembedding.jsonembedding.mderrors.htmlerrors.jsonerrors.mdesm.htmlesm.jsonesm.mdevents.htmlevents.jsonevents.mdfs.htmlfs.jsonfs.mdglobals.htmlglobals.jsonglobals.mdhttp.htmlhttp.jsonhttp.mdhttp2.htmlhttp2.jsonhttp2.mdhttps.htmlhttps.jsonhttps.mdindex.htmlindex.jsonindex.mdinspector.htmlinspector.jsoninspector.mdintl.htmlintl.jsonintl.mdmodule.htmlmodule.jsonmodule.mdmodules.htmlmodules.jsonmodules.mdn-api.htmln-api.jsonn-api.mdnet.htmlnet.jsonnet.mdos.htmlos.jsonos.mdpackages.htmlpackages.jsonpackages.mdpath.htmlpath.jsonpath.mdperf_hooks.htmlperf_hooks.jsonperf_hooks.mdpermissions.htmlpermissions.jsonpermissions.mdpolicy.htmlpolicy.jsonpolicy.mdprocess.htmlprocess.jsonprocess.mdpunycode.htmlpunycode.jsonpunycode.mdquerystring.htmlquerystring.jsonquerystring.mdreadline.htmlreadline.jsonreadline.mdrepl.htmlrepl.jsonrepl.mdreport.htmlreport.jsonreport.mdsingle-executable-applications.htmlsingle-executable-applications.jsonsingle-executable-applications.mdstream.htmlstream.jsonstream.mdstring_decoder.htmlstring_decoder.jsonstring_decoder.mdsynopsis.htmlsynopsis.jsonsynopsis.mdtest.htmltest.jsontest.mdtimers.htmltimers.jsontimers.mdtls.htmltls.jsontls.mdtracing.htmltracing.jsontracing.mdtty.htmltty.jsontty.mdurl.htmlurl.jsonurl.mdutil.htmlutil.jsonutil.mdv8.htmlv8.jsonv8.mdvm.htmlvm.jsonvm.mdwasi.htmlwasi.jsonwasi.mdwebcrypto.htmlwebcrypto.jsonwebcrypto.mdwebstreams.htmlwebstreams.jsonwebstreams.mdworker_threads.htmlworker_threads.jsonworker_threads.mdzlib.htmlzlib.jsonzlib.md/usr/share/doc/packages//usr/share/doc/packages/nodejs18-docs//usr/share/doc/packages/nodejs18-docs/api//usr/share/doc/packages/nodejs18-docs/api/assets/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:33350/SUSE_SLE-15-SP4_Update/9795e257d82773c36209f0b2a451ea86-nodejs18.SUSE_SLE-15-SP4_Updatedrpmxz5x86_64-suse-linux                                                  directoryHTML document, UTF-8 Unicode text, with very long linesC++ source, UTF-8 Unicode textHTML document, ASCII text, with very long linesJava source, ASCII textASCII textexported SGML document, ASCII text, with very long linesUTF-8 Unicode textC++ source, ASCII textJava source, UTF-8 Unicode textexported SGML document, UTF-8 Unicode textexported SGML document, ASCII textC source, UTF-8 Unicode textASCII text, with very long linesJava source, ASCII text, with very long linesUTF-8 Unicode text, with very long linesHTML document, ASCII textC source, ASCII textAlgol 68 source, UTF-8 Unicode text\Ȁn)lutf-8855a97983ac80fa77557eeb81a80876257f6ccf171ff49e5b8ec1fa060114f67?P7zXZ !t/']"k%0 bka^&0G[2Py617a*ǎkFrR hd+|rh 1d\'~C %M=l2%< @F=R4˜#SЩ[s*t5<ŵ9,~lRLOӶY"ZaÁ$l*5d GiUu:x FkbIRwbloRVWsk<]+~}ioW3,QqL')MJYEѦ{#w~i1 6ԧxnvVV3UynETZ 2 gE*mx.?xe۱V+Dlm=[wBWJesg 1Z1wNtG%w=7"U:Kp3o*4)J]k_ ec^M'=O"&V n "_%>BS$\>(K?u`Y/#sjY;2lȕ~kg4;Bd?f$#>vtICPQ ʇ \Ө2UE%"Uד[4{ ϵ`mnP)| ~QXb'8DȃZ$; eN6e&x&gdM3718yض;.uhK?7}Ju:_<9:Vg&ArYX j!fYlaq+WE=.=<3X8En@ϟY{g-ft#}J!wٜ7 Wf(+$R=q"qG,uQ%I87t}AgDd]f:,V-;<V~oj]e+).B|g^ͪDϕ1paW׌ś\bBId' 5D4:*0.Hƕ a䒞hlZJR0Hf.$i wwجU@X9Q|[{a ;D'oҕft~3iQ{@Es~6所Y|k(-^kHlaQ 8Z8_Ʊ.97aZ3昁W $z2މ\^OJ jGyLBEozy үt}0*<]P]I3~ޡouؼnOR8ѯ*Af%wE~WZ:V X{1s݌s ׿owz'Ŵ7<ڑB,kV/dL_C/N`Fwv}?IjNl?3/_+A!$Z,W aE:<;~( ~9Uѯ,I9 ڢ*tcPqRgZNP Ru^,ts$+xkWS/K<9I'QjG`@r'p%z? 1v)]y;?memQ&=ܟ Z\K";֟чzVV auw.ϲwBIvAx5)X Gai, %@u9}ށ+VZ3-F v~6:TR87,EO Cnܜ_?w  :^*fG;wehy4 ||*Xl09#F79$G7mkvj0 ǗjU1 PpoI~q˗J3NCI>M2x1$\r%8_"r,@ų\ђS@r@=Y.5+EkdBlȐ2qA^ }82-9&kD3QQ͏Od󉦅{{]ѡ`>x\L0e4R\p݌QSCwnFQ?g/036")[d_|Ͽ4w|[V =T=sLRR E{)ӠhH އrVTlkJu^Fw+!/P &.ZH$|bB~jrOx8 1G94!Y"Կ! F߆ec7=V2gԏ@g5'UT yujnn a*8ß>2tt@{Q6%3桬xewe]M!z]L~Q"" t XT#ہFQ$p5|_s$~pW? obqY2YѷWxB6ۘ CY+UivW/ EH 8ePoge55ȸK7CJpmR`޶AA>0 v /⯀)*?M T1ZEWK[p8oe0_,­%Q>聆έE͉2I<1ԿVKE%Ю'"9١ [F&i . CB4㣅M*a|D׼:gΡ:9:)r I#㴲J!?p7F<{n;UCtzZsğ/Wt >lL3;aB6X` nOHΗLkQD-P0; o‰aj4C-f0hc,y8[Bgt; "P K|.EWP9@-u2̇=Γ`MS,D$U/cAsjuH%kfjO@.}&vGOGmsZF,̷+RCs N'{oT*onPYȰ[BG+0υirQ6$*3[_Ⱥ~XH0~LY3w×@NMo"ܮو'xb1  mx&Nٽ~wd& 1b$pGPGE;2E(zMuug*k}R}.MQ(؞w{&,1C׿am}V`xyeupbcFip|~8Q&ש VɀmyDZQ9d6%!xsP4]bb9J `0u;?BUu+U1G~A5Ta)ܽùήCFpc'AagoqG Vaȸ\TwA1l"~p0VCԄ#VO;ʨ(y1c,`Vh eX#u:WB/ZOM&~Yȹo_67@Dަa&0r8"ZјjBXW,hxPfEv1*[)WRD+ȱK7Rf`Hk-T-3VRD`Hg:]M5 *t};ְSa Boi)>.v%z oHKͥ`;oژ4n I~SsjJJb@0>|Iŵ \g㓘2Nzy^$%boG/(>:b; GۘoڊqfWF5%ͪ _Y!vlzYsvvC;% I{1NSmw%Г Xʘt0OxOlF P>93J6qZmxѥpKzzEV@Ȥ hx/↴1 ǻ^B櫃d>ԃhV0V̉Lnb O:Ϳu]b꬝EC Êe(TuVNZ9+!kBik֚Y額s*md\[Jj_BdԔFX1>[{)sc$E;e08KJN6^nPD0TL]Ok\Э޻iÄ,zqg yuN-/~WYccM> Eˇ$-,xX-TǺ5%׭;sglKYwl,7@?kW2;0ߕ +߆9?.gUvJ$~"Wߌ~Bw>e& <ɷ`eh̐NJDx'lHƎkVyW@엤*Z#B4™-`}u[s`fw*!=T˱(&xEN@5A^djmd@'+E[6!K/N{R}-v% Qm\6p\npo7gTZum&հMGDQ D}hp[۵ntCp j 9ŏ=fZ~(o0͈a]rM ^g&"X`4ݕ,Nc|{Llf:ܱ2eFKs؟zSX9/|lqA4::n{_Ԫvv)/%}Fr. IPx/ivGv1zq͋Ts .|D7__v|@-fQ* '+F^ۦ%j&VG`tXa6.\"- àN(!w-m:Y1@6%_WLgMU45 o]wTֿ̬͂o]\)gelyӡ1 MlLn[IN%O˾<>R Fiq)'sK<0&- p0w%b,Q5zca$EQ&KݹX@nTXk,%_8=p!9\%~du=LJxreD5xZ]΄V21GL\.\O|o vBbxQ'(ݧΊ6|soJSgTD>hLD9n e3}+o PԞ~zQJSV}aDh4h?өG V7TmBWRoȳP6 Iوp7H]@ߏ.,mJ;{ +.(_Ppb:dbb]LgF>owfzh@%jN@U{ ~0G2'`#) :z[έiw&UQ0(Tbn۔]B+^Ө+jt*8;b$߻e#u Tќ5ӰZ*˞bFc3o+Sʿh nM. m 8Eد3SUQڳa,-\< e*4⡘1X/_G% Ij)?XȮJ>QκWz?%uP'✧WpKzWgxy?+hx2YN HƉ d~R+ }A g,dC:[D}sN{_B̷bhi"'`YŔUVyLA4;Q;vR>+)Kb27+W@,z,nP&]uЄQg >=(PVlS1JqLjCwJ-^N$iRsw%}ϹgUM>ـIM[,lKkvfEǶ9=n:pKcb„ҙ科1N-[w O:$n) X:)/4F-6{S.̦ |BĤ.X)"!ced|* bTJďXw T>tv1@ۍXo;KHjh"[z;{꽼f .F',iŒu];F|&/ً5*}6,rV J#5GRҋBQ;=?:C<.(`<ٱNf:nd NG[f"kyԈ_[{#ClT|>FfzH񯍱#.y@KN`le#W/p3Py^+uCd WD^JGѮEKՇB.Nc ξ bi7|dpP$QsQo{.4 UDC@}5Eih/JSz%'4jw} +&t?估saSk-[8(BԼW:٩2ǝ๐>շ;7;KV09P cńTޯX~X4R-:s@ׇ 0-+hGga:q9=B[ :yj!2Oe'{ _GȩQhrN?=h!-ƙ=f+yΎ;QkeB"T9O#yxMPrgPӜ!CcGhD}X1kcנb4?uJthB,!a$H-ZV4\\/ jy*kY5!ZfȥZ>^9~$bP-O^D6vhm}irH@ã|eRcQdfW…MyDw" pW[VzJNd`܋c$E! Tt{tPX YZ