postgresql18-test-18.3-150600.13.8.1<>,ip9|Ɍdv` dԈgUAfֶq[P*ggL# _-zBRNh[RxhhA63.DbC60N%OW9v/VmZ72٪&D )5o"9eYILv4: {K_6J='蒜;n( Twd5ey*{%/ޅaT%nqD ސiPo C C_G'MqYsM2 wO74R>>r?rd ' E:E [z          @  M  \   < pż(*84V9ɌV:ξVFoG H# I+ X-Y.\.D ]6x ^T bTcUdVeVfVlVuV, v^`wa xi yr zrrrrrCpostgresql18-test18.3150600.13.8.1The test suite for PostgreSQLThis package contains the sources and pre-built binaries of various tests for the PostgreSQL database management system, including regression tests and benchmarks.is390zp37UhSUSE Linux Enterprise 15SUSE LLC PostgreSQLhttps://www.suse.com/Productivity/Databases/Servershttps://www.postgresql.org/linuxs390x'&-l#XOX O3P;W _ G "5u6Eb }  H8_\ f9df)k& En( ?6#CH^( |DJ0XHHIjGirB5gN-_( R AzsFj&j)8) qRelRI2h3G=GO~w AAA큤A큤A큤iӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶiӶ9b11b731d149a27c381f82bffbecebf3772d9052ec18514c96c2d070fb960528ef281324e147482d6426b920a23bafd3fee151b57d59a913d611551a6a1935e6bffe1bc58eb7bac4f0eb44247336587d3d485f3d0055af0d596b178d393f85c2c73f7f96b087ccee92e8aacd16add78dc7520c39b706aab2a96142af98a6589643a5d140026fffcde4b72f6c99ffc208653cbb8f197b0eb4b5ebaba2eaf7450c309c7997ccf6b31745d46ddcdbb0e2283e5ff64823a22038bc51198a14359c38bb23338544b03ce9edd6a1c61841b6d88f92197d152c947db87644430a87a3707dbe59ca2db2c4b614c7a9911c5da8702d551a26cfbcd81b01ccdcfb2529b256594fc9d396317c052a5b89c84f5c25d44675b4c5f27ef925ce91e81ba52973dc987dff682279813b313d3700f5202e7189b561faa723108d070a697d9820ab241f59332622392237c33d997e605177db5d77dc09b370599005223b0adf901b5c972c72e1b7a2753042c08b6350191c2153a939ae18a5efeb460266049e244fb0313d461ed59f2d9a2f1a83c8dc73811b82fd2306f6a21d2e7eadd846696363c8807992f39cb915e6c26f0e9fdc3cc540bb4a259349e8bff6d4c08dccbb4626c740d44255d85afd0b39fed29a2fb35b4ca5e18bea981493480da7b74498eec9888d2a5972c8751ad18138164b99f561140923d09c2b872804c24dbad74c1a6cdb20215bf2ed33198292cec7bcd121ff035a73e76ecbda567ee5ebeba6b477a832d62f34bdc0a25a5ba36f2dbe62a35479d9e51a7326d482e418091ea2ed40e484d4ecca38ca21a8b2401f143c75d47e5b2a439704a7374faea0aafabe8bc0fc0e810dc5dff384080a30069434ea2bbf14c3b82c319f2546c0e4c12473a08036068a1a34dda1ae07ed7151b2603cdb15759dd9043175c763e17e76bff5cec9f3a721662e4737ee993c4bdcf80441e838625f39285458b9cfda3aa230dd4c6a1cd342b7c8db37e3a4098c5a25c24cd345c4d771af20cdc9790811d28fff024325684192db7f610a483fb8b260c0bb944cdcea0a56a5ff2f7dcd96a2412539c90d33287b842105164ebf3ab2193d865948c996ccd1ab6d8004b74cde361b3cbc4ae0f7c4f56bea9373d965fd81b4c28bfea65b048fb56bbec0790c13a5df5b17a0bf18334d08c210da6a8ec420994cadb184c14216cf0ccd018eb63b3a30e76b43fc35d744ebbbf5cdb1910792ea944ef9b05c72a1641eeb97c30b88ecefefab65a46e4166f6767d3271432473275d4cf4c37eae53479c5026344e60228d578b1c01d26265fe1695de91e102b575dd88806078568f2c42b39fc9bd2defb4722503077518ff6c65a9202d4522ea24d57d7b5a3d56905550b4cfa5d77759b9f0572c9aa9a6264fc7eb8ff2558f28e03f18046596cf0e0324fe2e163b15beb0df4fd351cfe6223a38eb1f0517798c96d43526def146ea5378767767b4aa5e69affe76425d2d60718abf317ab404746b12a73b0a5cbf44a28f2ecd65e0c36861393d9a8a6e175b3ce450a66efb26ecd6fad3400e0981aa5875e80fde29671c00bb321a4a0d337fd9212c24caf79a58cd0556e2158524efb05d11cdb001afd4bc502f6c4e0ffccfb2ac223e03b41de6cf26ddee25e90c8ffb08b97976c76c0ead099e356fa3ea632692bdabcd9cc190155525165a7c5b126ddfd5ce178887208bd78f09556c797b232fbff2a6328497211e7d248dc6f744988fea2925e575f235a7a96c4e487103662822e03ecbd42a44498750e6f9853165c17bf43babe434435f8ad95b30df40474d5c457131807e405c9c9a43135c7e57490300a45010bb875e6b8a821fc612f9062447fc9a9f8ee0cf339bb003f29f2f82db1d0d74832bbee6a667d7e8b4ce60dcb00308b78453183694e79fb0b8ea9790ec5a2de3751d8bcd3886a99ff788b60a2aa4d902e8d7670801b1a529a13c06b180730322fc3d0e508b4159946ee3253b87f0eebee45f384c579c4e8842b5343b4c7de2c9a04c23e984b186a21726c118c36a397171029bf508eb3f07435f96de4a8bace4a5965e9b95a6035b3ce77c53229b9107b344357bf7d45a3bbf8e974e1c87af11386837880435b88fe283c7730021989df606776041f66254bf64bb4363283246d131d86a86e63e768bc1ccb3750e1e9b25d1b3eb9d5155ae6b3db5edd99ca294b242c496a491813dd34308c3e61f331eca46239b495aa6eef8d64a30683523e00835d1aed59fc922dca7abde9f61f686482c12771d6201f7000cd51d94f4a9ed60d667819601f51188a7df8cf8291482b54fa9e5c53851128cdb901eb4b82fc2b37033077e0c56c6ef1be6cf0f2ae591a6e25c6eb39db6f03955e527b9bd27fc1c8dee011e1056dea1d987ae6d14fb26497bd995df87e57f0f95974c9e2556469deff24ae9b6806e32c6f63710d910ae9119d03a9a38da50cc9b039da0e822396349fcd6a44ef449755a4b4487c8c3d9ee61989842d0033b2b5cb94dbc519414dd004dfe869a7301e873f40259b7cf47cb4a428b0e0d0a629417243cdf852d8227b4ef7921a6c843531af8b9845e685a6cf31aed14e1f6a7498926ccd13d80d1db053334d7291ab29a5f7c1b790b58c236a010d60c6a4f478b98e90bdb97ee5a4ecc00d7a6f5ccd166847a241ab89df59f96fb43bdbc225926d8a153eedf653c4c12d0b7f3da6966546a8a78fa356a7fc748fbe1b31f79b3b58d93fae43f31c2234369f772f7736d9ed49c19f9d373c40e3e9ce31103a7a7b01da95726a6fd0af4bfaf0530246550df6689e42ad3cb3f3fdf576db36ecd827052778f5a47ae603ec518a9ac12db7029caaa907d0ed33cfba878df2f1cc1ba6b8665af0d19719837bbd934d40fe6be41714a31faefdc583986a1413edb7cdec20c891bdd47cbfb2e161987ae669a501508e15ce912ae3a9b438f117073253dec22140d5e1fd33eed7c11c37679276fc04c94c5ececb3bfece17e71b79d37a3cd00fee98c532abaa221d44ca5df60bcdb0bc08105ed7b8b5a1be78a475b05e3fe73f9485becd0e0b0148d1160c9954c4cd7acedaf8d12df56d45c87ba69bcffb653167a5f2ae2b8e7c5d6df270c43faacddc4f67ab96f6363851b4dd7202e1dbc45e53008c633afadf3e3030f3cb46af9a6f70eba0d4559d7dc595ba4e992ba17ccb03ccf90abbc986fe2e3c682536ee43184196a9165943b53785a1c558723989b3142e5bc0d1cccbcbe5cb2ce5436284c9a8e3a0993f6b99b5f45ea404da674183e4174425f0b9e2f570f13293d688b0f8a8b59264aaf22e3ff8431666afca85d0f908a34e5d1bbe4985dadee7fc68a73fa9ca428f2eddeee429701a0649149856a1ff3db8278b24e5c9c8df3f5722e68c5e5c9528262e5ad0f79d6a413acf7a20c06722667f82a2baf6e07efa2d8bebcb7f452088af3667907010b504307fe37fa96f47cd36085e47b5cc3b5313f277f392e1951e937fcfcb17816886416685940dcee907e4a0fd76b7649973701df78d0bbe057f1f70de99ba32a45b2fe2ed1eae9ec69176bdea4f584b83ba2f698fb4ee573628ef4417791a7aa2180e156fab84ac5ca2b546bdc990c8b1a307330786a930d99762fafa1e37b816457bb3ab19c74843a7ad84124f95110b042265580eba81e5be94b903b5402ed5467711c84147829dd093e176350d4f750b20010d18e686895776fdb5d64a9420e27030bfa4bc7bc0e5229e804fc05546d51f8d5e626b380e58724d56930ebffdd9df7c730cc0bfa03637a1087c3ba85b9e95ee14e6fcf0c6764e10ec9fdb792450c3ae007ffa6ad0cb8627ca4dc74dc66f180f4906ea49de440356442b29dc21f05b1752c8f3890ff2a5a96cc99cd1efe486c44786b6a76ab04f6f2499d10f0c073970207e452909c63da5a6eeba70163ad99700a51f69e6d6e6cb4513ec4c3c24364791356fb94ceb0041cad8b902db3079e37dca57b100904c762baf0a3adad8466d2534702f9f0dbf391561bd85e99938623593517143e9f14136ec4c36f7a87a45c5621f843da9b4d4bd4a5863ca7c56988f1586f001ebfdf66dfc66315c77fb6d61d3b2be24354cf7d09438bf20d8359adf237bf0bfe94df73545bc3673a14c68a4c3f5b49d43a4bee17e042aa43f6f24c5f30820b1caf4fe36791da3a673403e574fc3d4b369b06b36ed0e1431a1ea528a2b1d05debe0ea56f83c8c59958212293e45d8f96bec22910f13ccfdb28398e35e88bdf1df70c9e5b4102b731365c780b64d7dd280c0399515bd73a1830c9e0830d75a17a21b732588c94ac4f6b136fae3885b29a83e9c5bc61903deb3a8bcfdc3fda877d2b2e0f0ae23e178370e906c39b0605fd76eca864a3ae3fbd56aa56a0c667b03375e4ae6352e5d1841791b036a36f6dd998543db60a7360edda3f2414fd1c32dec1f8319e49be6eed959345d293e5e589cae534f8bcbe6ef74409bd7c4709d61fa1cfa38d8ea80e136d139ecf6a32b2fb4e4d87de670004ef5e808e9bf36f99413d3c86541bacf552ad4d867e34ad61a68a885da0eac5836a5e156eb0acfe5663889d14adfd21f925042b7d9de29a32fc8fa2573341f6143fd1b32ba93effe6a2ce9b26a92756779f71f76b80ee87e19fdb7167ffe97a8f0758617ac662c34dd24c3208fbec08dfe15e049f05b582798e296852b06d7f218cb215b553c1201b3c695d4309b5d5ec760fbcd9a80a5f1171aa522c27a21d650912d49c41f5d280f1ff8276ee1c7b266504d102a6f506b158a2ac9d73cfbaf66f55e7c95c995fc65df1214cb52f6a65b866f4cc0eec6a40d31894041577c4c29bb81a13bd4e0908ecfdd82e6893699d902f221d8db06b16a31ec87467bea48fe3d6ae0cc2e8133f88dc1124faffb09f9fc659b1479e30ea4132adb2c0530304c20f3c51b12145ecf9185e5d0e8416864a9adcecc53bcddc6a27457723a30302c29effc2369af53147215f4aef170761eb038fa1df11d4d4ac96eafff40336a07d26f11665add3394ebce3ef0ce0c6e133b8ed86e998a39e74f32d8634091f2a1a25abfb616fd1aa7df6cba986a11fc9ac5e085abf8ddc8bfece23be9b55b1c58df013cd0f906e9dd1572c65356d21eea710a6386f84cf6331518d285f6bc456247599bab1207cd8d0cec44665bcfe020fac62f0cf74feb01f2146133c98f5d20f6d69e6a854cac0130b5c4424964145b3599d5d2a27489e5e45a3d036cf175d4e07a8899127ed614f8250bbb03a359c822f4b9a2439949ac2add7a81ab8caf8b972bc49dd60b95aba890282fff834efec404351a7532826bf93dee731a06c50ee95ae72861d99a7a56bd2376e9325bfec62226c4e1e5cb50f71afd937e8333f34188a67311cdb285bbf29cd1093981d6cba41738cbf1a13b0d06e7b336c918a8763da6b2e50615a9b306bbab13f568aad2b93b265579c9afc823ef6bd09aea304a193cf18172dea5d0792b08d97944f078f5f5b82b79d8d26991425ee959f9327cd89c23660c23068a9b934b3dc943f63f8fdb194b2a05f980febabaa86fb3bc91859dc974644c03bd629a5cbe259e14897fe77b4783aa58ec45c4db50b4ec4983d8dec2fe7a90441a56adcf6dc73d66b207ee29ec49ad3ac27cc8dcf9da1a1f44ae053536851c5c54c19b2024c96c68d0ba99cd95be674da449213b82421007a6ea0c7a0d3004321229bff46ed8ec2574b60cbcd1a79e14ca38a284ad893f756a65e6dd32d9cab80033008c5b7dbfb292539968ef58793c902b653ddfc97821285b56eade2ebdccef9fd0717b672750c5b1d81841c0227efbfe10442a7b89cb54590f23189786f7c708bd3add7180d17d569b8e396752472655e1dac75708c95564df6fdbe14be3a951d596886c4bf673c749e0f76f0abfa343216b077480c481b810ca5a973d20ced8a0af9e8836f48bcea1bf5286266b2e804146e5e3c27304bb55febce56c735db35b8335ceaf736d130bd3546286028e3b726c676facba8e999e35dc99b985428edc6361d9e2ca91be8f75515b8fd0d7e1123bef4534649d64cb689405c4b2b60ecde7ee7802e930cfaa324786169848f206d8835ffd0bf8a637702c339767f879e76ef63abf52152de18e610591d1cd693049f69e243654582f2df1649ee372e88804529bd14aff91e3e25f3b7cbb16dead0376ae2d16c285eb242c102350bff73c3bae1811b14e599cfb80f1d7e9536e6b6c149cfcb11e415e3902cc524924ec144d63338be963cc5b130d164495922afafa49c97bad19060b692b853656fd31f037f08e9855507e9ea4cdfeb4e1abb6a23ddba41e2c82e81c4c59c9c73de31e8c8629b3a8b33e1e61c904f6895d3bb981f2552a6db6f0dfef63ee9ac76f859b67db7498c060b823a0089a5d86237120d691b2a03ac2a21edb776f696e9445efddbd6c45c936b53be16ae05082c074b972686454f2d4acf84616c9efc7159b648bd53a8c1a751bfba6a57a67c5dab545ad5b4af7d6c1f99af124af7792de62956ddd82b919095c292c348e1a747b06a34a03bd04d519d5e4bcbdfd2db5ce8d4f9b0c4549496d2687683e0dd09186edd6a6198096bc3d0be3bebdf22f68c0a786c284f48448f174667125cafbf38330ec41b5630ef3c0c2c269b56460720656e89e9d8ed90f4ef84218508caebe82d12b80d4a3a689887d7cff252ab2f644de5d3e1699f50668ca8f5dac792a88927e7f2410e0b99fe096b202430d225357a113f420a46466b42a68952ed8319fcc9119afc1121fb22fc4a970b806200b02d24a0f5212130ea3083cfa43988a98727a0dd990987ef757e86f07d974efb6c94109e8beeab03d5f2451b297254df6b6dea9fefe97c5b25e0ea48ea7aa4c00ce13b845020a3dc81840f020dcc7dafcd6acad480d9c34070a0cf15da406c6688c48b5b5544d01fc8af85822ee65949c4d5acf544ffe229d6be56b3d2b594f7b18203f6fad6356cffd3699ecbfd1497e184c0bea1f8eb6ccec12d7d1717ff1b619bef2934004455a59ba556ad25f84ea61e3617d4f7da9fcf9f7583bc0c80d80b3929c289e04fe98b5b68ce45b34c180dcc3717a6cde6d9accc3c9f37ada978234e8fd755bae8f32e05bb869d8045204527ad7282ba375d3dab6a298f96314fcdd5ffbda52a8d5254b120a06e47281aa5cac3d7531b542bc5a98f513cf65552e0e3ed68dea56a55c0620c6d936f935fad08dc63eab89dbc60047e2f25f1d7c1dd04776d99b72d35b739ee676f7f78e083e3f3ff80016bc1af28c2b1ff6c901eaad186df99d12c43498c810ebf403df6a63be1d177376438b0e0c6ecae29df73fabb233df06e7961323d8bd7c85992860da1fc07ea229b3d2cd0f9e88b90f299b635ac8c1067ba22effd20050df81f00b96f0e7a604b3255fc35667cd1e66c00b5a42744af4ea16f25a2d0b524caa72cb7d3f16ee836ade031ab48e9d043bb10d2e0625b5dfcd7bf455c6bf4a15c6e6f076b414a69b5fb5d4c119670c2405ff82b6b11b5149295956a0b8b9c6e45b7091e60d9aea958975b891edc0a4709fa63e178d5361cd5a348e18324edd6eb30ac6714d13b415caf77257d447b101d53057ec448d049436d6e58b3353b2b2f70c3cf217485d17ebdb33e299674dcfb2a8a9573e5fdd3c414c5aeb582a31b1d64705eaa019c9e8c91a5228ba9f35e02d49faad7b11cc27d5c53f1fe76feeb573237cfce51398e58e0b39da4e65f9d55aa1c39d7c79e50d747c3da16e0190a9e90c8fd5233c46258e808c0c955a1895579fcacef37d2f8302ff0a2f3d740bc34037c17cd62e19b18e9b591990411cdff2fa89108fbbfa251c230dba7dd6d0d7998ebd5268575d52d2c4e759fb739014abd6d824693b06f5da803e6a6c4ee374125b3f7f8ad3982e48061bde174cb5e1c9789c80c8a9f7591246a49c7d45d8452050a23fa3d43c3723b4eb1f266dcd126a9bc3fa87506d2778d104ffc8fcdf3cc29f0729b016ff1abd9e43ba0d3f9660b487d16a68ea6248cdd8a3dabcd9cf1d88592662c62dc13e265b6ef0c9ef330390ef0e24ad9fe6e716dee72bb444b01d6383bd948a41effa066ba7ff11a0b8cc778808beb23f0c92b3e9daac44f22f136e364c70230e03adf1982e5142e37ca875608cb5dad138e39575a19b1cfc804685d617529ad2c68c36f58fd106a281952521a0559f83c04bc26e3016a074df0f1f4b4ce5fce54393cceba4d453db8b98aa21bffea6b820274e0852b53632b23130d577dec7f8fd8bc4f30d21b0da514740b2601a38de07db787ea6608d6b9f45ceb2ec38e25e819a558548f0f6ea3ab8311a37413bad4ea83b43cb626a941be813ec0df2912b98a946a107687398a6ea640a4c999194e99d7b27b41b920e4f4384c90d9f68f49e4bc0fe8a6f296423b0f4e7a4bf577a0ee4fbb44f8fa7e39cb19dc5fa3fb85b42761a974567d99ba302a2df1f9e51066447a8e4db05b35f59f32f2a68317ccaeb97d56a99c291ba2054aa0063a7636a8a0d8efd6f0c9d8b4c9542f8c4d3d95fefbdc2d33fe8af0f8a3e47a82b5f34b2c858c69a4caed15dcd3635c90ab29192f6cf6564121c95dfed82daefd83e81d4ed07d3417ec6ffc67624e767573ec7dd531527cc3015f5601fdcb933f66c3d79276964f7dfac10fefbbb5b1c8f464781fc9a50c3c9f3ada4295f97f8e66b10f95090986e7daee3f8f0b3ae4c4027173f617115c8176ae1f8994ace2aa5e282e9f138f145173d7bf4d394014f13cd76c1fee487756ab10f2554e55561e137a994a4d944d7480dd36457e15796c1cdc5e9755e241e73a64afbb4c76505fb59acbe8b1fa3f8f32b3edbf91b2555835863fe59e86b720b70ba3c31f160fc1f4285a19ddff76888b304b4016d6eee766f6aae6acf4dfacae8efcbfda096fd30aa56f1b76b27e0936d4731022f8a15714c2344a7d713fffda095d544039026efc4430898aaae7b35f4da5a72ac83bab67130dac9158b7b2dec450286f3e323c12c61b66f2298c28b131a948bdff080a48522cf4b46e586a192a6293f45e7c30b7ea2b9507e1f1461a3a6872d4a480df6f89d698d10c6e99e4a8cb88232bca064c264cc2b68fc5b4ea1ed8648a3990b215ac054c22679d0c36622c0c1c7bc616099775f43099bb6778eb8e39523b00b6405d4ddbbc5ccc21f25142227fd0dbb6d288e68ab926acfb345985df3c2901c2302a0f6f4c89cbf5992f99829cee74b0ffa7cd286c823a5bc8e66a0302455d3f3323752c8bc29d09feba84fe378ef3df821986efc7ed4cf34bd0997775562ebf4732733d958063b6621776880ffafe0be9af60d8fdde0e81965bcba3fdd604dcb268d74c77de271b89b06a3cf21201aad1e7927a69160bc9cbc40b90c195d7be39e9e212a0703749f015e369632e9bc1f673fef17dbd74009d064dcc950c7202d8941e0433606e63cc90967d90ce4a92d74ff735628f85f4712988c88a5289f990092d5013da6d4926eb1912cd0252cb567bcbc0a054680667c68d04ceda75b048a468571a820c5d476543d4ed6a1a898d01a40ff5095c8dc04cc5d561e0261f2cdea97039188429f44a3fe667233deab0d661c488ff653850b86841c8f7958265c5827b7c198e100db299a8de3058fa6e73e4c7142b236e6dea16c806b4268ab9bbc312e2c4952da08ad3bdfc510c4db1a2462e12b5999f9e657468ed7fbc85ac1eacc370e7309b093ebd8444dd97925afc0f2b3c30eeef2aa01f622d1bf2d070ba0f1cefbcb406d370c3e7f6cc01ab07acb1b4e7c9f40b9e97d7a8a7f530d196b476ac333ebdf27c4d1250869e80dfe3020d0711e79e73d6ee264dcfc9592f0e918607ee1890d42398d44b5254efae56908b5537674959ce2eb3dfe29a6207ce7557d5660cbbe9a02342114ea106d976003bfa237df0b0fc484141f1cb6041f4c9310bc74cf919cb5ac7eef0a698e001b26171e8459f7e1ba1319603bb0b8516d31d8f7798e9f70853e99672381f7f3c4558ff96ad2457c2fbe51e75d1fed4e6c01b6f4fba2332e40f7874531ef0c077171c8176e6ff9b7629a23789c99ac225d57cd42dd48b32fad2b063e43cbeaaad71581d1410ba642912f93dfeeb3b9dbf5c0afe360528176b97cac3d3a8bd67d2506f620b2242a8d2af2c61d4bd4a87c95846eccfc02d1e5d9060ded6061197f9aa62a5e8b06eb69b27b21a77a96277ad77edc5b192ce1eb66d9bdc87cf320e3cea4cb425cb2894def2a904b80ed132b756c75ef9ad199930e31c5b5f6e3f6700544d4b40e65b0c6f7eae55b3d8982705753b20ec3363665e2925f6d2590a12fcc3b4b1971edc20e2103f9627d9fd19bc4992dfce276417be70affcfaef37b116ed74205cd08d58ae8822b367da07a6667579ab594af470534f3f75822319216dbd447691890d5ea434c59aa88c9e7667d98283328b5db643ec1a371d6d65db189b40f49443ea61eb077a550fffb468359b0e7905b27bd43fe5e8635fa0fb634dc63964aa44503f7b80dda36fb23a5b68ef6ff72b9c2d757728ce13b1a94b16bea67fd1857e3ead00e7a593535ef6c4f6ef497183d310f023f527e1e51558302d6678c1f026470c48315b4067a1d9b5ea8782d003b97a4478e001d1253c524df891c123c3fb535226c1b5eb0ec670ad229e273cf38813e2c3317ec9113d27e83347e54af4c3fe774e7749c25fa0c674af983ef34fb658df848a75c533b779445bab485abb8df1ec28409f9fda8ba9d3deebceefb7f2d58c67b63b9577b05e61e159face4fdc7d958e7bf119a29cfc4f3449d8d2d56888b8372d90bfe4a182d01003bd66fe696843298e94bdbba7c524cad9c97aabf7905de8b31c5db44c56969e3b277467ad7d767ddb43cfe2648722a6ec9807417fdf3b7f8e3704333f726391f7b9faefe53613c8d4597fdc5ddca18dde733007685fc0d93cae52082350a46fd1f2e07815cf36f71fa819b3464da2b62220adbf09bbb1ace07ef0f8c03c6bbeaf97adfc94eec3cb7ef54036f2e7bda83e52d69a7e2f0ee6a0ae5cb2f5ded1dd8fbe10b2129c49e642fe023f107ea70211c892af0a7eea1f5ab1e575cd9dd729c5fdb745a4e4cbd7ac48be704c7e589d8c34cec97a3bd7440820bff117b584ef10f384b858851e9e1af62b79157e3592fc9b2b08892565dd572e996f58a4663014dbb7477736d5290aac508e8de2e1a19ad1c7d8e0235d76c1cea4721ee41d44119d96a33884c545a9512d1f995fdc3e937bdf16b4069fbec4d13b08dfd20e0de3a6a13ba1cedcf20b90198bc72d51d9cd00b581ca69b09668e36e6f104c2b3a5ac46a7c2b0a41d5ce79b3803b2ceb91fc66662c887a7f6667b8708f0aa98270b120a459af4940cee0f8ed4e64f86c79327b641f831d62e87c8605b3f8c5e23dea6603af888c6f1bfadeb2d700ec85333ac15e5debf28ad3c288e5dcdcd1e557979892d70294134267050998e220d504be583c71952181aa3eb8b901e6222d11bb4fa139ac597c5edfe9e60a8582cb3cff94e4f3dccb2f7d9161f965d3370082fe2135f02a7c53b307147aaaa68f96e689c00a940bf222ed51ccb48186924ff99f1e0de18f1f2da567c33a1fb23640d7f55ae3ecfc6f97baffa5449573506a026727c3e6de0b53cb7d1122ccc5d6c17e319ba6b688560fd4de21c88f97e230906b8b60de2ad9e5cb72a80a994f757b2c102d0b913ddd29a8ccc934bfed883bfd720c867da7ec6f4591d1136eece9ef6cddce5c6d061f886173cb93ff58cb06a1a12771666f04701f3e9ea36a4f4ba27fa8210fdce8f4cd936f5e4d8266eb3053d9ef05556b9e2c317188d101876bc86038ec2269ef2acc6c579661c311fd98119f4a76a10c50ba90a9d55f63962311cccb4758a6f3e003ade0e5997432cee3ccd5df7bb771e29a863248b706fa4710a98105985c1a716e9df843268bfef2b86802731823eaac778fec0f77e6549f1e0d7f9c563fbe75666aae1a868eb8640d49a9efd2bac918d2c370863a6d772ce0a2ce065cd81871d77c0c5a8ab805bb95a28642f0742012ea792f7a7ed01d830b5295ec7ec19699e4331cd8348dbb7b5a84cea6368edf1ec8de4e6b66862b1b48cdd87ec48c71c5b8efd999a6833440f810a0096cc36c6426754565c8ad953ad73c745f36c3136c0c1c2e3fbbae34479f2be0ae46d62615f27eda6dc1c4790bef0b441aafe8b2fbb789464f83ce0b7e1a43557bb832df55b4cbb98ffb3753beea2ba905cf49943368c626f65827556b8f4efce950ac1074f4351ec5bdc0468609aa646d379e2ecf09b921194635e8a459b4ff30bd8671081c46d95f63177c376626dd7f36331a8136fb674cdc316314f383ad878adf0caa0c1e473bff95a6123344ada6f7d0ad0304a3a534dcc81cca452194a06dbc173cfe4fdc7b412a6ce717232e1633d24c9ce5ab3a913ff6236a96a1e81f2586980d1669cecce74d4df62cc6b1dfea15e80c893875f2a14eb862af5321149f022618b92f4fa726208a973497fa38c9b9c2d56e00b170069a717aa2e49c482cc0e9c8f42b4411792fe4be6bece125030a67c4918877e51afbd8eaabbeeb6aa0069f8638df2b5e131bb6d2097799746e8a986f2450d02f7cfc01d8a3ecaeda1c7bd2d398f582358a9f3127e0fbd52bee360518a18c6a23c04f4dec817d7452b511eddf4351a6445693054770962507be3bdb3d35c834b86a42ca1edaff256fcb070063932cb7314f1dd05083e84fda8263b8aa9cde4855ceba9d5d74d13edc1d83af1279e8811d67ed0a40ce15b58b29554338b6289b2cb05a34041120a3f6d90b458d35547c05d764e9c8e6e5add94cb9f029e0bc80f927c1730929dfeda4b2a369fc387eefa6da36eece4007e8734557fee931d0a5966f1354f8a40baeb8b3d25fe2fcbff2daf266ca14749764dba497526b1bbbbc57c2cf86a9037b4cedb2fd4099fda8009133876533f71430f0cd0aebf6123705ccebe547beb2077c4f12a416d6d71a828364424181cae1999ac65c988ccf8ace6d283e83e4358fb4db57212aa0f91740e18ef7033f254ca9d1688ccdc405ad3c467d3d10b125a85e62322f90140134dcb78085e1abdb35296d5966c374bdfdd853b57016efae8a8297ded51d9d37c193076c8fe9a9835ddfeab5f4d00f3801da5009b118598a1f36b115617bf10ef4ecac1ec92b17fd4a05d5ae52707b366747403a58355d183d9a357ba58c14ad4bb9fe9c627ab6cd7e57555eaccdac591f119855d9c026b1be5877a5f1917972b205f89da51ad43160846ebf2ff25ad44773870d979dd818b3d0fd44b7b570c84e2ab1c457c1453a0d1f86c51b8fe11adf35efd3ad75081622af835e0449eba961270be47ff881e9ed43e811286ebd510ee98de123dfa0607c9d27b6d8aec7c6ccc90f39eacb65b09980f262709801d90b4eaba1e8618e4457209bccae235bb49c55db101ce143adbc16a32d44341aa78df0b9cd87b3e67963421c4a3867c6dbdda83ad209a412515a6a0e304b60b38aff59a9bffe8ef432cae0536c2ba1c1027574df41b257a2a66959df5ac33d36a4ba2183ed7f8f80cf2238bfc02e307877590d6e0e09646227852d6362e0f3e549b53a4714f98e71bb802fb2a16a9b65fa96d7b95c5ebc523f287cf17ac8b9b6f0780f1cd3798f7d4f9b85577c85c66ce94998642083e781e43586821f7f8dc342f6bde0ed03a10b117ad899c3eae674dd4367f7d04ee8c2a12abfebe967a8f6f3092d8411979a7667d5632a0c7d5a164533f604688d9eecac98521749e0d332e6f82482bae674e60be46e95abf051c4e0961622f4c0ff5afff2bce641cf14f95fa2236fb16eb4b01a2721f7fa111473dfd6ea3e8c3b89f146c32c89c86d7daeedea1a723e28f431193f3a984a28611b8e72f056766f43dfc9626301e8e8afdd174d6ae54913dbcf405bc49ba430ae94b2df281e6b978682985187c9c75518d383e73d52d096dac9588d8fe60567577273cc5866ca145dcef0c5b1f9ed6103fd1b22f9b2d8434f020ab7610896bf42e08ae2b521547f7d2008bb2b213f3156ea05e2983d348b7cea85f78c685ad15085206d1aa09f6dcf303a76379158d2be119793047f9d89ece238fe5ba88767fa2f6e526c973a4bf4d040c96474e424dbc2ac39cc59b9868c945e344c5e38cd1b8422e6acaff7572485ae6dfe7542d3b7ff514652f8b721fe9f78605294b1d633dda7e968146c35b08744cff8dd7ce91a5ac511179b99a0a83075a2c9973c89c093f9d1d48c18243cd0f0a3966e5e0b0fe3be84cb960301b8232ad8d511b7f44572214beeb5316f7dd2b6448f616af598681e9275cb6d4a8987d0dd779912d653de08d0836c5f18e10aeb00210ae901fc0a97481583e347f87ef37d2f4c46dd66703c5c7af854db954e1744094f5522b77c8131a9af077487f74b08846cf67acf436885858976b963ef0b7e042852cf68b4805309e6e9a5426dacdc0017543815bb5284b7e5420f189ccff95d468647181a9320bacb1aba152f099420501dbd795a74b60ab94c720eb7376d353b93abf58ad2a840e85aaca0cb6901ed6827532281070d9487e092c6909826fd20673945555369ba5dd38aa55fff26a3bf624cd4e49d0c8ea36927ba2cc038d2dc7d8b61742f0a332445cb06d761774c9c1437dedd00387370fab0c6717400118d2077e720c9d707b23414d57f423e57b93358f7fb91a114b291f597a9c24aa99e1f7412cc3e6df282bf9be89fa0cb5c217d741dbd3dbf7eabd660d6896e74a37bb8475f9c39b724b991dca4fddad07f226a4c2f1a80e308f6bf9591cef56a2a801812ca95dab280624e19f53f3babf8acda03fb0fda1b9535af3ed50dd6a8b0ff8d3d34c77eb7a7f3a6ffef4ecc7cd0924cebf4db8f62e4d1fec3008bd2847c22cca8799735c085cddc80d56c083aafad268a8c896d9a8f086dc59f875e4ab7fd5ab5e1ec112731f01f7ca6e6a3c769558f6dc1489e75260cdd3e479ed42b927183058bbff3163d44e6f8063b85fec115d3626d4d2157e1aa8521b901ff8c486c144fa3c02c5bd0b59a77840a72c47caea4af175104de544c030f8d67f50704584fdff05e893e27f98a33cdfc52a49c5bf3cf168e6cb927aae3557507ddd8a4077dff7c481c4254492182b522ddd091e8d21bba2ced6672ac465b59925a662923acdc2345f5869bf13e69eef47160522be530340906bb3882e2b5c6c09bc0848c4a03081eba0c26fdc09684b3556f74942c7694d42bc7c0755bfdbfa594feb0affb737d211c5ee826b2f1353de99bb13ff7994f53c975936b82b20a2cd6212acbee4d51dfed5a42f085ad0cd54f30f99b8ca1418d875971cb80957a9a7990ce65c73dbc9bdb76690129e5596a4c9e07a9f30863d3c57fd6c107a29402e4938c18b87f6d8eb6d82f71b7a98eeae88d6d22aea94c247ce735e607d023bf085781785fb6e2053a6004bd914c8bdd0e7f50e3a6693b27daa326bc4fcd8416db261b948c53deded8f9c4fcf928e60c524356a72450e88ade8e0f212c62c12c56b83ed8ba2db8865007e18e13c3df76a78d5a30268e172c7d362432e803aa830adaf5f0206b72eea93e6ba433054253deee26b99992f3d8513d3937a8e5f38141768efb7859b005b8fef73f395fdf3006ec22036067625e31c20ada538e93251f83905f6614a87c1fc1cdcaaaa07cc79640c4471bdd435ad2cbc710ce5824b44d86041d3cfa4ada1cc69fcb92e53c2d26bc4bd82762e69884eb64cf453bf8fb226299228b7e7723896bb34d86863fd04183c7ca522ac283a671c4edd2e414efbb66c82604f3d3b1edc17a1e44d61cf3db4c3c570c4e12170d7a63c2592eaa545fbb57e93ac13de0902e8b4d885008ad9da9fbfc232e854af648f16f4d96ba3bb985915957b360e3e09a1dce9712078c402b5152272a5f502a79d413f90ad27981d599f2a7138df7e76301122f6d43217946702b386332a927363c780a61a7c85340c86df6ad3b6766079847a64fc911fe146edd0111c56e92e2714d7431978f43bdf802bde31cd76aa84d325f4f71425e663d3ea3494e36c0b03f08a0c54d22711a080303f7fb949ce42687f86e36b4cf628f1134659bf2e270f4f098d9049c46c6f863567bfb39f415bf6ea94e1c3a91ac5220e8759810845380ba93d5c2f904c86357ddc0743a586ed135123d1b5a8b26a24c282c8f26c076ed4ef19ac2538fefa8f184ad2784e84aeea2eca6254f52079da6a55c4d42973065126f0b8097f91334ec1042b16f7c97212246c6e92530e30841f3d77a4260a1925f9fbc82ab99ed26bc003f39f1ab576f719343b5a7f02d4beb3748c57a85ad2875e07c73e039def8d60bf423797f046ff9745a243694c419585e0fad555057f8c9002dc3b72fcf07044c5545756af5fe49fd09ceec95af730f9e380a3d80e758c4bfacd0d0ae30f07b871d2df70c866f25e19fa7d543e5b4ffec53fbd7fd4059fdd36de3872b7186b0ec795c05e601c79f5ddb6511e484ef76988ab71c9c9cb40bf3ba80bc9f2318442e0d9c54b94b21ab37524c422c09c476b21abbb339718949572ff3f840fc2a41da9c74801357b0386f830785bc7ae465d2ee471cad2fd7ab099924e95e3debac1e3664c52d26e4aa5f1bdbf5826ee2637649e2c2e34e501b0a8b21b5adb5ed128ef18b88d60414f2e43ddfd69d14167c2f362a22d9beb992e8c4b19bc073652fcb36c8cee4df41bc4601a31fc9640bb2a6c8ad5414c9549ff674e4c0acf5c03b4df6078adbe7e2c8b4ef6fa484a364086b825c532bab1fa8619cd780635ec8c97f83c82f38d3e8e8821ba19067532e78450f8678bd712a641e88be3326ba61bf32784b06bfdc80a22c29e923746a53fd69ed52234bc5bba15e1e706e0e919176455af7a14a91bee4d22f4767e7e78811431e9f42a275b12394ec591c65562914c702fb96897395ec1292c09fbbe9ec6d4e84881f45b3f776fca88b6be77c30f08331b946d6901545d34361d47d7b8285764e0e8f9960733ad49a5421e99e0f087af92083cfe866d875c32d752622bb5b1234edd9cb4e8f742008700f688602674285669dd135411fb6a9555cb0e8474f0c26be9ce5c0e9d780e76c90a2113ecf81d1383cdf1b855e1d4eba5a501ba2714e558a5d2b5b388edc41dee8d2b2949d6d165955b2cde85e9345f63856370429e99029c3f41faa0d89b4bbcb6fe7e466df6838cc91c9118868127b7ba3ec29183cf62f8a184a83c72314224412191ecba3f68aa5dd85b783374620e61670d18c10874c641ae663ed30984f7847cccd9b612c046bbd194a4f6198df2d14c3d1810a9071eb6ed8c3aff6cde97b0c1ee120d63f2b39d88c9740bee96a15fdab3af5a2287f2b2e470f806a7ac0f1ccfb473535c9257d6d64944fe7ad2787de5515b80fae535d4cf38cedbc52065b02f16d0d79a0276d679e440f7f49ceb73a72f32fa2cd671099fea4b74b2a40a845be26213739a20c450896c44ae41ceec3cfb31f8cae17cc95a5ebae595288315a55d2444c9e2b55cec980bd49935b81fc45c1c710cca1421827b292e549e28d06059f96aa42ad9f2d8ab08bc0760d58674d2c264098ac37c8cf4c5c49d1ce5d3a145e248e0d361fcbed4ffcf5bd0f5f2e74d282c77fa49cd628dfc120627bd546ecaca0adaec1b5c642a73bf39d077b1873b7c8f184b6d91f1a4dbe118fb25ee91cf8f9a013c600e0ede8c26d0b5bdbd6757d68f7ddeeb60d500a3dedc29995fdeaec817e22a66ef7545cc845d008b0bdeb408a442da70d2b3534bf939da08ec31c09155615632658644687cf45bb17b8f72434027de874092114dd035bf0aef3b8a4c880e6c7fed741247c8f8f76358e4edc74b24f17257a94a8e6d9f79ff7fbf8f3540782a7f80e42b2347d28a230ba98a0649d0a221a4df5c207c680796c4cf867cb2752216c39f807fcb31587d0c4006c12df38f6c2717ae1f021ae794de51bc9471467242ade3f0be14c025bb8b7eb9c2806c0cad66b0511d3bbf3791b4a3c0cae85c36d2f69ce40e51bb4a4b09b5ea0cfb703129455bc4f3e1dfdbcef369bf411e85feadc5cb0e9371e705dfdce8bd53d2cc4aaf71d94ef7aea7e864f21f9b684c962a9383fedc5e8c609da0baf26df878ce30b1b82360c35f92cf2b2e6e33bec94522d03e42b23e661bd6038c0936f12834270c75796054659ea634c667696772dd08552a7d440fa48ec47cccbcb8500fe8ae38f9f3a3c68d1d52f0c0ddeb219f996b3435b70df4590ae537d101e96ae0ca52b4b39da250beb5c3604c7c8481ed4e33dfb41ca4965279f4fd8136a3c6203ec6164dc86828165d102d9b0c2238f21dfe119a2882145e1ac70abdb09d828aa6d11120b1a14dd31a672d5c2b80545b5f1aeee245cba1471013722d8b8484b47d9aed1d2c0fe9b5fffa6537f9973cfbf4efaf69321685103e17d4d53b10d967eeb6698dcf2d83e8f6d1551fc1b00782b8056313bc59a0d2247113748384a6cd4dcdb15cb6a7a8ac2f039c60345a4a396eaac9156ab35e5ea75e88374c97ad1a1287f445e65c753bc1118ddf424b4b933a625927bc70dee31208819e97a70a066e016d13bd33e0b37da029a9f46c4b80199f8aaf5bde830eaef2cbd736b3d8efe3b696f02779be87651fa6652a76c4538537483997cabb8400b759d924e4aaa9e9592bcb66e7096af270481bbdff4bb751b4312ab0c8e1dc54c43f7ff36236c6dbb583dfc1aed628bdba130826f91e7f113b6d8707803e6e9ab007760ea0c3f43987118225f6589347273e9ffc7f4da426e1880b0c29aaab92dd359eb0fce0d4208210d8d3ceb65476d31ffd1f18152612a117fb8628566908a1625a59900324b5be291180509a2b5751d91c9269c91fc25b39175d029033a06bd3dee9a88fb5363fab3c09e526944dacc3012ccaf817e5e0830597aa9bd4235b533f827a9155dc70896b88bd653e68297a8c40ac8098a5e59b92485cf032c7e4c9cb9dd5670c077cc25f011839aa010bbe271c50103e68687dbdb3be925f7814dd1ed395bc428eadddca109d326ec1c5f99d2494fc636a664f7fc6ed82ed8a46d9f1802315ea09931d44bba12888aaa520226ef9903124403855b44cf9e9c469872cf634b2b3354f12259d932e7b192bdaa3b61f6d9e4dc00cc1612141a12e6aa8da0c8ac5291b534ec52227b07451647d96c86f8a751ad1a5fc6efa2b74c7fc794f5e2ad886b2fc4f9c68edcb463fc902f83fbb417e457a65f561ecc48c863f8d0082a5f743568cededf46b5a5770714e3fb19dc89ed3599e4d354097dc1d6aa14b13390f8655cf495ec43b067b8c726e97234ffb3296573a4ca4cbc4596b31facf122edb82616be36cdfc5f8dfc549cc4d262428044c0427b2d1b72cf75268f39fb0dace7e0b951746b20f4f7e82124c888a78479a5685c3f4f60ae36f2a29ff01b586d7240c9bb4652a82849609d3e96ca60abb7baf7cbeefa01745efed7fc39f3ac380a872a24f0a7e21020545064bd0c4136aae3eb58194c5a228012f882d62bcbaa714136b67aa7c6abb43213394222198d6a0632bee15fd2bc191b1127a02f3004736e377c5d32f52faa7f93a6d015382986913fd8e9e678f01fa6c52b5287a3d83646b6c43aaccec6e77ddd5c844ba333415f4999dabefa3cbe89c5f2f8aca444ae88d3b77dcf2909f82be7c5c166c0c44ac1235aa515483cba5e98fabd96f51dbabb30e9f6f5772da977433a074ae1aaa57c2c54b1d44ab3b9c2c2a8f1483002e89a94da1bffd20e32f9665d4cd10a22763768ca6fd2686b1219ac60b0a36db7b87c70287f63477dcd64eaa06867f2829f9f761adeb829708f93d4a336a1989a84bbd60c32bbbc19691598516fccdf846f5f06349ee2654eba5d4d29051b02ecaaa4aac19bab54590495f4ac686bafa0cf9a87aeea10223765a066f14d36ade578a5fe8b3269b5659f850246114139d46f382f83b1525aaf99a1636d2c859393ca9c9eecc6cb69295c59206adbeb4ba67de00420a288fa1ed49751aadb1040273151f9ad765c97c529f8300694c8fd442809efffc80c4f803d67159d1605cad80cf2f810174cc47b9d71b4d2386b0a533a0daa9e48eeaf3052d2e3a08fe635a7271af16d3eac2d094757e52adf2a991abff39e9b9bb975b877b8dd798bd18d0c82e32e38ca0f2c8da6c7ead538d93f3ba44ccaa4240ce6f81a5eaf1ac3ff114a860b51eee11596f525a983e4af1c03a7f0428e9a9e18b312b9034feb69ff7be2b322569695ed0a8207dd1ab790cfe5e37b002fdd3f9c0b0d4e4d2c67aa5084a397a26753082e632840cb1eeb939743f7ce083215b60ced1163d60d3c8ec90520d3d64eb10f10273d0837155a7e4f0b3994d40e197cf35fd613dbb4a9ce9847945b71665451db39b47df1344036ddf68ab250862609e569ffeb70437549a8244b482f8ab3f594bedc13c8d34bca18057f7bbb4cd60ffd9b640b2606d83a41890e7603b565c9e2acdad22a1601c21d953a95b56627d864aa410e2cb5d2b4983fe2aed04411e1acf6d3dae4a28cf38a6e7db15c900316feda36154a9f98948345be9c01e6ff335e1ccb88ef8f6a9ea586d41d8aab3528fb050008fece2f91d227aef0cbea55aba43746108af29d44d88917f7119715d334e0d1ead638c684889301106a5631251b64a29a19a9cd428968593d391b25e0a8ea895f3b2ab6529278b567f30c06a9a73672a1749249ada2d624b920c8768b7198161eac47bd8d8e608dc4a9fbc515720f3f015dd07d3f9022af4cfd2d639aae92ff57e79247ccc77de93ff40a7d6f2972655a3b9bdc61991bcc219711bea823859cb9ab5d23a148d1995369e383b75217c7db7fee38b4c34f36546b57143e39b926caacfac42494cebf178a8315ef1b8cb18c5cf51326668c08f0fe21358b19fb708639a519d1b1938cf04c181c2ab5b150c9b53fa21774421bacff5c4cc5a8936f83b75853787148494b3a47bad833f31e952b2abbfcf70875efb89b67d4c143b1dd5bf8adb623f24960d979619f1e697612ba5d25f949af72db66c76666345f9c68f6799daddc61a5558e2921c2d30f45dfe7e1eca8a0a62776329a86b54ffaa82c50db0e9a8bc130ea264ebcf36f7abfda4bc6e673092b147671342e3678d9348e26d8598c9140470181dbf79b07b1258b1c17a4f4b58531b5141f1a469f27fafaca32bfb3bd60c21b8a9c08ae8e6730514084fa475595261b863abef395b4496101d793206f1d555fee605588303edaad4130a300277803cfd4ba96a5b2f101644f39172a2baf2ad61a40f0b37f12c951d1c742d451fd56cadfdc3a74787382d2601f44b8498b527d7a59ce977c0b4c1bb536178302a3075275315fabcd95166e504b14e9feaef46597b1828a9f1e824a60a9a9a348a0a99c79acda71e78e9c9525b5e19a423043628158abfab6f77775f5aef4e8388123f76d8bb4a5457b0f9b0e562e84f9608895afbe7b72fc015a39e23a4bc4470edf8669f16eb40440e16a4cc089eb156d5aa8567b2ead91b659a59b4bea5a82290532973bb8222ab0f0dfc021e3f55bbc777bc06e1fa5f2e9862b5250ce56aceb5d843d9eeb4b997c5b30d43fe7183aff92c0375d5fef2d1f58f78846beaedf452d967037dcecae16e39590061814b76baddcbbd6b7c2e33772da1224f0dd476297ab7e4f7c111d94ea878009a6b5509c36525e4ac97dde14dfa68352b478d2192fff9a5f404c2f285abed8de1ed503a76fda6550881065cf33868437391561f086a15c68e8f0c2c8ece5a750ab34f4534a043740af120f1d3347100fd7f9d6098f7f501c602d9a70282be81695e4ed038dbde253f7198b580f2b33414211af17531128a79cb04fe724aa5fcb7953cd29450eddd0053cf10150e15995ce68f4e2f639cc16bd5e34659b1e61c5e005b488f306c41a349a55c768fe22a2882f0955ae8ae46d26d5baadcf7c3b1f83e5a2518e345aec6dbaa20903150b3878ca7339b4a2fe9315944225ef43ab08ed9e818bac4d43212539c87cf0b3684a4048b21c6e9b6426b83c567550af9e85bb535b2e8bba3cb5e83deb6b64360cf07e975f00d11fc4c4e672d2cc19d414b4bae5fc8e87838f89ec4fb2ee325994fbea6c8fe5bfd2d7a7e023179a6543089f74ddb5ec458c8f9ff219eab06f48f6ea13767c563782f80569ce364d0960cb70978640d3e28148196b6208f42e36c642cec3f8833157bf9ff9763f1dcd26f9a52eeaa800f9070cf1ed86cd3e4fb8dff882571547b4a8684762c7d164bc82c35b80fe866e9eff0ff23f4d100fddbfa5d52db0c54d705fb5e5160f004f4292d6889e30b2347e32933bec4b5d84c4bd699b2a2781d908a6bd848dd4172433252c8ce294d4007bb33e8f82a0100eaabce2619d6ba0e3f717f29803c5edeb9d4a4c88149372e509d04c91a05df18415514720389532fd9b5a67866953ba11c0d5a20c4cf49aa43976d2722d923851155f9937aac074cbe457b676653ad7c9c2dd2e77933855ca7fb3738d932b51c4218069abd02ddc2f9976c8222a14275cca550d206f2311c66a5235f719c347cb0b98f79a201cd359655b9eaa3cf18df37f5f7c978da566c8dad8b8ded795fb599d7937755b58b44ec4ac492030a27b7c8f7cde28803755ad0c0a0d71979e4e0e7d3d7ae3414f4cd330cd771646edb1fae301af4c14252f392862c8475337b44c34aec86992e248fa5db135755d78aa3f8c4d0983fb43de444e8c23984cf01cadc95034db1bfc1239a848d6b6fd4b057e0b65faa38139da27bd6975873c070aab2ed6e173c1e0c1b9325dddd13b47c096af330ebf8eff0e7194765cb55ad0e282460d041856a11cf87a2b718168ef05d0a60bcac22adccf37793387cb8be535112b8f441089b96a6d6f18b1cef4a045dd7f7bdb25a3c6d08b6ee9a4fea865df6217a977fbc3f75a67b333283857dd2a4b926f2e01c3819ff17baeeb4e28d45e46c6bf5db711a79f8064be5c5f1c69ed349addfa94c825306fce3edcc998c150cf772eafb697f885b1f5e0bae0d97c0aa3dec9b541ffdc5772799aea058af475c2cb61a960864b2a357a0c0d300ea5c08bd1591232aae372722a292c674bcb1f2232aba3f57be7f67807462157cd02c17b1440cfaac38365d79be21465df7fb53c11a1115d5643c9c2c9b0c102b351b9e89558e922af389278055be0d04e448a403fd709fcec5f102557217cd094564304c0359cf4c47923cc9c4b6471b4252ebfefee97491141efb5286416c871ec1c0fd121869dd6e2af39fdf98b5b1fccfc9e5d7d03b30a81bd602673d36f8582afa3b72e880ea16d9dc41b8f82c072f4fcf95542ea8436aa377eb7203aa4b79164bd856cfbe48775a6218043d93d57d0a1e11de06bb7a68935b568037de85ab43561f949d3969506d0d8ffdd8adcf363fe041b9282ecefc67e886c51a34c45a462b4571cf5bc525cf520884576eb770a3dca47cc9cca15977691a8ff09f60f5978754d971rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpostgresql18-18.3-150600.13.8.1.src.rpmpostgresql-test-implementationpostgresql18-testpostgresql18-test(s390-64)@@@@@@@@@@@@@     libc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.33)(64bit)libc.so.6(GLIBC_2.34)(64bit)libc.so.6(GLIBC_2.38)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.6)(64bit)libpq.so.5()(64bit)postgresql-test-noarchpostgresql18-serverrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1818.33.0.4-14.6.0-14.0-15.2-14.14.3iio@i8@i$Hiivh.hҋh@hg@hhhhh@h@gv@g;g@ggmE@g<}g4g(@g@fLf@@fV@f|fTuf8@eCe@eqe@eKx@e@@e%@d,@c@clcGc>@c6@c5c,N@c@c@cb@b@b@b@b|bV@b[@aaza@apa\>@aUaQ@aO@`@```q`OL@`Gc@`/@`#_S__@_F@_mmax@suse.commax@suse.comguillaume.gardet@opensuse.orgmax@suse.commax@suse.commax@suse.commrueckert@suse.demax@suse.commax@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demax@suse.commax@suse.commax@suse.comobs.coke518@passinbox.commax@suse.comobs.coke518@passinbox.commax@suse.commax@suse.commax@suse.comfvogt@suse.commax@suse.commrueckert@suse.demrueckert@suse.demax@suse.commax@suse.commax@suse.comaaronpuchert@alice-dsl.netsarah.kriesch@opensuse.orgdimstar@opensuse.orgmax@suse.commax@suse.commax@suse.commax@suse.comdimstar@opensuse.orgmax@suse.commrueckert@suse.demax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.comfvogt@suse.commax@suse.commax@suse.commax@suse.commax@suse.comfvogt@suse.commax@suse.comaaronpuchert@alice-dsl.netschwab@suse.demax@suse.commax@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demax@suse.commax@suse.commax@suse.comada.lovelace@gmx.demax@suse.commax@suse.commax@suse.commax@suse.commrueckert@suse.demax@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demax@suse.commax@suse.commax@suse.commax@suse.commax@suse.commax@suse.comgmbr3@opensuse.orgmax@suse.commax@suse.commax@suse.commax@suse.com- bsc#1258754: Update to 18.3 to fix two regressions in 18.2: * https://www.postgresql.org/docs/release/18.3/ * The substring() function raises an error "invalid byte sequence for encoding" on non-ASCII text values if the source of that value is a database column. * A standby may halt and return an error "could not access status of transaction".- Update to 18.2: * https://www.postgresql.org/about/news/p-3235/ * https://www.postgresql.org/docs/release/18.2/ * bsc#1258008, CVE-2026-2003: Guard against unexpected dimensions of oidvector/int2vector * bsc#1258009, CVE-2026-2004: Harden selectivity estimators against being attached to operators that accept unexpected data types. * bsc#1258010, CVE-2026-2005: Fix buffer overrun in contrib/pgcrypto's PGP decryption functions. * bsc#1258011, CVE-2026-2006: Fix inadequate validation of multibyte character lengths. * bsc#1258012, CVE-2026-2007: Harden contrib/pg_trgm against changes in string lowercasing behavior. * obsoletes llvm-21-aarch64.patch - Disown /var/lib/pgsql to support transactional updates.- Fix build on aarch64 with upstream commit 0dceba2: * llvm-21-aarch64.patch- Fix build with uring for post SLE15 code streams.- Use %product_libs_llvm_ver to determine the LLVM version. - Remove conditionals for obsolete PostgreSQL releases.- Update to 18.1: * https://www.postgresql.org/about/news/p-3171/ * https://www.postgresql.org/docs/release/18.1/ * bsc#1253332, CVE-2025-12817: Missing check for CREATE privileges on the schema in CREATE STATISTICS allowed table owners to create statistics in any schema, potentially leading to unexpected naming conflicts. * bsc#1253333, CVE-2025-12818: Several places in libpq were not sufficiently careful about computing the required size of a memory allocation. Sufficiently large inputs could cause integer overflow, resulting in an undersized buffer, which would then lead to writing past the end of the buffer.- pg_config --libs returns -lnuma so we need to require it.- Update to 18.0. * https://www.postgresql.org/about/news/p-3142/ * https://www.postgresql.org/docs/18/release-18.html- Update to 18 RC1. * https://www.postgresql.org/about/news/p-3130/- move libpq-oauth into the libpq5 package. it is a plugin that will be loaded via dlopen() if libpq encounters an oauth workflow during a connection.- In the symlinking loop for *.so files only handle symlinks and not also files. This allows us to enable oauth support- enable liburing and libnuma support - prepare oauth support. but it creates broken symlinks at the moment- Update to 18~beta3 * https://www.postgresql.org/about/news/p-3118/ Security Issues * CVE-2025-8713: PostgreSQL optimizer statistics can expose sampled data within a view, partition, or child table (boo#1248120) * CVE-2025-8714: PostgreSQL pg_dump lets superuser of origin server execute arbitrary code in psql client (boo#1248122) * CVE-2025-8715: PostgreSQL pg_dump newline in object name executes arbitrary code in psql client and in restore target server (boo#1248119)- Update to 18~beta2 https://www.postgresql.org/about/news/p-3103/- Fork package for postgresql 18 https://www.postgresql.org/about/news/p-3070/- Upgrade to 17.5: * bsc#1242931, CVE-2025-4207: postgresql: PostgreSQL GB18030 encoding validation can read one byte past end of allocation for text that fails validation. * https://www.postgresql.org/docs/release/17.5/ * https://www.postgresql.org/about/news/p-3072/ - Add postresql-pg_config_paths.patch to Fix a race condition while generating pg_config_paths.h.- Upgrade to 17.4: * Improve behavior of libpq's quoting functions: The changes made for CVE-2025-1094 had one serious oversight: PQescapeLiteral() and PQescapeIdentifier() failed to honor their string length parameter, instead always reading to the input string's trailing null. This resulted in including unwanted text in the output, if the caller intended to truncate the string via the length parameter. With very bad luck it could cause a crash due to reading off the end of memory. In addition, modify all these quoting functions so that when invalid encoding is detected, an invalid sequence is substituted for just the first byte of the presumed character, not all of it. This reduces the risk of problems if a calling application performs additional processing on the quoted string. * Fix small memory leak in pg_createsubscriber. * https://www.postgresql.org/docs/release/17.4/ * https://www.postgresql.org/about/news/p-3018/- Upgrade to 17.3: * bsc#1237093, CVE-2025-1094: Harden PQescapeString and allied functions against invalidly-encoded input strings. * obsoletes postgresql-tzdata2025a.patch * https://www.postgresql.org/docs/release/17.3/ * https://www.postgresql.org/about/news/-3015/- Apply postgresql-tzdata2025a.patch regardless of whether LLVM JIT is enabled- Fix build, add postgresql-tzdata2025a.patch- Disable LLVM JIT on loongarch64- Upgrade to 17.2: * Repair ABI break for extensions that work with struct ResultRelInfo. * Restore functionality of ALTER {ROLE|DATABASE} SET role. * Fix cases where a logical replication slot's restart_lsn could go backwards. * Avoid deleting still-needed WAL files during pg_rewind. * Fix race conditions associated with dropping shared statistics entries. * Count index scans in contrib/bloom indexes in the statistics views, such as the pg_stat_user_indexes.idx_scan counter. * Fix crash when checking to see if an index's opclass options have changed. * Avoid assertion failure caused by disconnected NFA sub-graphs in regular expression parsing. * https://www.postgresql.org/about/news/p-2965/ * https://www.postgresql.org/docs/release/17.2/- Upgrade to 17.1: * CVE-2024-10976, bsc#1233323: Ensure cached plans are marked as dependent on the calling role when RLS applies to a non-top-level table reference. * CVE-2024-10977, bsc#1233325: Make libpq discard error messages received during SSL or GSS protocol negotiation. * CVE-2024-10978, bsc#1233326: Fix unintended interactions between SET SESSION AUTHORIZATION and SET ROLE * CVE-2024-10979, bsc#1233327: Prevent trusted PL/Perl code from changing environment variables. * obsoletes postgresql17-jsonb_jsonpath.patch * https://www.postgresql.org/about/news/p-2955/ * https://www.postgresql.org/docs/release/17.1/- Add postgresql17-jsonb_jsonpath.patch as a temporary build fix.- Use cmake(LLVM) < instead of <= to also allow building against LLVM 18.1 and newer 18.x versions- Upgrade to 17.0: * New memory management system for VACUUM, which reduces memory consumption and can improve overall vacuuming performance. * New SQL/JSON capabilities, including constructors, identity functions, and the JSON_TABLE() function, which converts JSON data into a table representation. * Various query performance improvements, including for sequential reads using streaming I/O, write throughput under high concurrency, and searches over multiple values in a btree index. * Logical replication enhancements, including: + Failover control + pg_createsubscriber, a utility that creates logical replicas from physical standbys + pg_upgrade now preserves replication slots on both publishers and subscribers * New client-side connection option, sslnegotiation=direct, that performs a direct TLS handshake to avoid a round-trip negotiation. * pg_basebackup now supports incremental backup. * COPY adds a new option, ON_ERROR ignore, that allows a copy operation to continue in the event of an error. * https://www.postgresql.org/about/news/p-2936/ * https://www.postgresql.org/docs/17/release-17.html- Upgrade to 17rc1 https://www.postgresql.org/about/news/postgresql-17-rc1-released-2926/- Upgrade to 17beta3 (bsc#1229013): * bsc#1229013, CVE-2024-7348 PostgreSQL relation replacement during pg_dump executes arbitrary SQL * https://www.postgresql.org/about/news/p-2910/- Upgrade to 17beta2.- Upgrade to 17beta1. - Allow LLVM <= 18- Prepare for PostgreSQL 17. - Make sure all compilation and doc generation happens in %build.- Require LLVM <= 17 for now, because LLVM 18 doesn't seem to work.- Remove constraints file because improved memory usage for s390x- Use %patch -P N instead of deprecated %patchN.- Upgrade to 16.2: * bsc#1219679, CVE-2024-0985: Tighten security restrictions within REFRESH MATERIALIZED VIEW CONCURRENTLY. One step of a concurrent refresh command was run under weak security restrictions. If a materialized view's owner could persuade a superuser or other high-privileged user to perform a concurrent refresh on that view, the view's owner could control code executed with the privileges of the user running REFRESH. Fix things so that all user-determined code is run as the view's owner, as expected * If you use GIN indexes, you may need to reindex after updating to this release. * LLVM 18 is now supported. * https://www.postgresql.org/docs/release/16.2/- Upgrade to 16.1: * bsc#1216962, CVE-2023-5868: Fix handling of unknown-type arguments in DISTINCT "any" aggregate functions. This error led to a text-type value being interpreted as an unknown-type value (that is, a zero-terminated string) at runtime. This could result in disclosure of server memory following the text value. * bsc#1216961, CVE-2023-5869: Detect integer overflow while computing new array dimensions. When assigning new elements to array subscripts that are outside the current array bounds, an undetected integer overflow could occur in edge cases. Memory stomps that are potentially exploitable for arbitrary code execution are possible, and so is disclosure of server memory. * bsc#1216960, CVE-2023-5870: Prevent the pg_signal_backend role from signalling background workers and autovacuum processes. The documentation says that pg_signal_backend cannot issue signals to superuser-owned processes. It was able to signal these background processes, though, because they advertise a role OID of zero. Treat that as indicating superuser ownership. The security implications of cancelling one of these process types are fairly small so far as the core code goes (we'll just start another one), but extensions might add background workers that are more vulnerable. Also ensure that the is_superuser parameter is set correctly in such processes. No specific security consequences are known for that oversight, but it might be significant for some extensions. * Add support for LLVM 16 and 17 * https://www.postgresql.org/docs/16/release-16-1.html- boo#1216734: Revert the last change and make the devel package independend of all other subpackages except for the libs.- boo#1216022: Call install-alternatives from the devel subpackage as well, otherwise the symlink for ecpg might be missing.- Also buildignore the postgresql*-implementation symbols: this is needed in order to bootstrap when no postgresql version currently has valid symbols provided. Once the packages are built, OBS could translate this to the pgname-* packages and accept the ignores; during bootstrap though, there is nothing providing the symbol and the existing buildignores do not suffice.- Upgrade to 16.0: * https://www.postgresql.org/about/news/2715 * https://www.postgresql.org/docs/16/release-16.html- Upgrade to 16rc1: * https://www.postgresql.org/about/news/2702/- Upgrade too v16beta3.- Copy postgresql15 to postgresql16 and upgrade to v16beta2. - Don't create a unix domain socket under /tmp anymore.- Restore the independence of mini builds from the main build after the -mini name change from April 4, 2023. - Adjust icu handling to prepare for PostgreSQL 16.- Overhaul postgresql-README.SUSE and move it from the binary package to the noarch wrapper package. - Change the unix domain socket location from /var/run to /run.- Update to 15.3: * bsc#1211228, CVE-2023-2454: Prevent CREATE SCHEMA from defeating changes in search_path * bsc#1211229, CVE-2023-2455: Enforce row-level security policies correctly after inlining a set-returning function * https://www.postgresql.org/about/news/2637/ * https://www.postgresql.org/docs/15/release-15-3.html- bsc#1210303: Stop using the obsolete internal %_restart_on_update macro and drop support for sysv init to simplify the scriptlets.- Include -mini in Name: to avoid conflicts in the source package name and OBS internal dependency tracking.- Update to 15.2: * CVE-2022-41862, bsc#1208102: memory leak in libpq * https://www.postgresql.org/about/news/2592/ * https://www.postgresql.org/docs/15/release-15-2.html - Bump latest_supported_llvm_ver to 15.- Update to 15.1: * https://www.postgresql.org/about/news/2543/ * https://www.postgresql.org/docs/15/release-15-1.html- Update to 15.0: * https://www.postgresql.org/about/news/p-2526/ * https://www.postgresql.org/docs/15/release-15.html - Move pg_upgrade from *-contrib to *-server. - Drop support for the 9.x versioning scheme.- Update to 15~rc2 * https://www.postgresql.org/about/news/p-2521/ * Reverting the "optimized order of GROUP BY keys" feature.- Fix source URLs- Update to 15~rc1 https://www.postgresql.org/about/news/p-2516/- Create mechanism to specify the latest supported LLVM version. Automatically pin to that version if the distribution has a newer unsupported default version.- Disable LLVM JIT on riscv64- Update to 15~beta4 https://www.postgresql.org/about/news/p-2507/- Update to 15~beta3 https://www.postgresql.org/about/news/p-2496/- use %version requires for the contrib package for now as 15~beta1 is actually smaller than 15.- Add proper conditionals for lz4 and zstd- Upgrade to 15~beta1 https://www.postgresql.org/about/news/postgresql-15-beta-1-released-2453/ https://www.postgresql.org/docs/15/release-15.html - Refreshed patches to apply cleanly again: 0001-jit-Workaround-potential-datalayout-mismatch-on-s390.patch postgresql-conf.patch postgresql-llvm-optional.patch postgresql-plperl-keep-rpath.patch postgresql-testsuite-keep-results-file.patch postgresql-var-run-socket.patch - Add buildrequires for lz4 and zstd support- fork package for postgresql 15- Upgrade to 14.3: * bsc#1199475, CVE-2022-1552: Confine additional operations within "security restricted operation" sandboxes. * https://www.postgresql.org/docs/14/release-14-3.html- bsc#1198166: Pin to llvm13 until the next patchlevel update.- bsc#1195680: Upgrade to 14.2: * https://www.postgresql.org/docs/14/release-14-2.html * Reindexing might be needed after applying this upgrade, so please read the release notes carefully.- boo#1190740: Add constraints file with 12GB of memory for s390x as a workaround- Add a llvmjit-devel subpackage to pull in the right versions of clang and llvm for building extensions. - Fix some mistakes in the interdependencies between the implementation packages and their noarch counterpart. - Update the BuildIgnore section.- bsc#1192516: Upgrade to 14.1 * Make the server reject extraneous data after an SSL or GSS encryption handshake (CVE-2021-23214). * Make libpq reject extraneous data after an SSL or GSS encryption handshake (CVE-2021-23222). * https://www.postgresql.org/docs/14/release-14-1.html- boo#1191782: Let rpmlint ignore shlib-policy-name-error.- Remove postgresql-testsuite-int8.sql.patch, because its purpose is unclear. This affects only the test subpackage.- Upgrade to 14.0 https://www.postgresql.org/about/news/postgresql-14-released-2318/ https://www.postgresql.org/docs/14/release-14.html- Let genlists skip non-existing binaries to avoid lots of version conditionals in the file lists.- Upgrade to 14~rc1 https://www.postgresql.org/about/news/postgresql-14-rc-1-released-2309/ https://www.postgresql.org/docs/14/release-14.html https://wiki.postgresql.org/wiki/PostgreSQL_14_Open_Items- Upgrade to 14~beta2 https://www.postgresql.org/about/news/postgresql-14-beta-2-released-2249/ https://www.postgresql.org/docs/14/release-14.html https://wiki.postgresql.org/wiki/PostgreSQL_14_Open_Items- Upgrade to 14~beta1 https://www.postgresql.org/about/news/postgresql-14-beta-1-released-2213/ https://www.postgresql.org/docs/14/release-14.html https://wiki.postgresql.org/wiki/PostgreSQL_14_Open_Items - disable postgresql-testsuite-int8.sql.patch: it seems it is not needed anymore, need to be double checked.- bsc#1185952: llvm12 breaks PostgreSQL 11 and 12 on s390x. Use llvm11 as a workaround.- Upgrade to version 13.3: * https://www.postgresql.org/docs/13/release-13-3.html * CVE-2021-32027, bsc#1185924: Prevent integer overflows in array subscripting calculations. * CVE-2021-32028, bsc#1185925: Fix mishandling of “junk” columns in INSERT ... ON CONFLICT ... UPDATE target lists. * CVE-2021-32029, bsc#1185926: Fix possibly-incorrect computation of UPDATE ... RETURNING "pg_psql_temporary_savepoint" does not exist”. - Don't use %_stop_on_removal, because it was meant to be private and got removed from openSUSE. %_restart_on_update is also private, but still supported and needed for now (bsc#1183168).- Re-enable build of the llvmjit subpackage on SLE, but it will only be delivered on PackageHub for now (boo#1183118).- Remove leftover PreReq on chkconfig, we stopped using it long time ago.- boo#1179945: Disable icu for PostgreSQL 10 (and older) on TW.- Upgrade to version 13.2: * https://www.postgresql.org/docs/13/release-13-2.html * Updating stored views and reindexing might be needed after applying this update. * CVE-2021-3393, bsc#1182040: Fix information leakage in constraint-violation error messages. * CVE-2021-20229, bsc#1182039: Fix failure to check per-column SELECT privileges in some join queries. * Obsoletes postgresql-icu68.patch.- Add postgresql-icu68.patch: fix build with ICU 68- bsc#1178961: %ghost the symlinks to pg_config and ecpg. - boo#1179765: BuildRequire libpq5 and libecpg6 when not building them to avoid dangling symlinks in the devel package.- Upgrade to version 13.1: * CVE-2020-25695, bsc#1178666: Block DECLARE CURSOR ... WITH HOLD and firing of deferred triggers within index expressions and materialized view queries. * CVE-2020-25694, bsc#1178667: a) Fix usage of complex connection-string parameters in pg_dump, pg_restore, clusterdb, reindexdb, and vacuumdb. b) When psql's \connect command re-uses connection parameters, ensure that all non-overridden parameters from a previous connection string are re-used. * CVE-2020-25696, bsc#1178668: Prevent psql's \gset command from modifying specially-treated variables. * Fix recently-added timetz test case so it works when the USA is not observing daylight savings time. (obsoletes postgresql-timetz.patch) * https://www.postgresql.org/about/news/2111/ * https://www.postgresql.org/docs/13/release-13-1.html- Fix a DST problem in the test suite: postgresql-timetz.patch https://postgr.es/m/16689-57701daa23b377bf@postgresql.org- Initial packaging of PostgreSQL 13: * https://www.postgresql.org/about/news/2077/ * https://www.postgresql.org/docs/13/release-13.htmls390zp37 1772016646  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     18.3-150600.13.8.118.3-150600.13.8.118.3-150600.13.8.1testregressautoinc.sodataagg.dataarray.dataconstrf.dataconstro.datadept.datadesc.dataemp.datahash.datajsonb.dataonek.dataperson.datareal_city.datarect.datastreets.datastud_emp.datastudent.datatenk.datatsearch.dataexpectedadvisory_lock.outaggregates.outalter_generic.outalter_operator.outalter_table.outamutils.outarrays.outasync.outbit.outbitmapops.outboolean.outbox.outbrin.outbrin_bloom.outbrin_multi.outbtree_index.outcase.outchar.outchar_1.outchar_2.outcircle.outcluster.outcollate.icu.utf8.outcollate.icu.utf8_1.outcollate.linux.utf8.outcollate.linux.utf8_1.outcollate.outcollate.utf8.outcollate.utf8_1.outcollate.windows.win1252.outcollate.windows.win1252_1.outcombocid.outcomments.outcompression.outcompression_1.outconstraints.outconversion.outcopy.outcopy2.outcopydml.outcopyencoding.outcopyencoding_1.outcopyselect.outcreate_aggregate.outcreate_am.outcreate_cast.outcreate_function_c.outcreate_function_sql.outcreate_index.outcreate_index_spgist.outcreate_misc.outcreate_operator.outcreate_procedure.outcreate_role.outcreate_schema.outcreate_table.outcreate_table_like.outcreate_type.outcreate_view.outdatabase.outdate.outdbsize.outdelete.outdependency.outdomain.outdrop_if_exists.outdrop_operator.outencoding.outencoding_1.outenum.outequivclass.outerrors.outeuc_kr.outeuc_kr_1.outevent_trigger.outevent_trigger_login.outexplain.outexpressions.outfast_default.outfloat4-misrounded-input.outfloat4.outfloat8.outforeign_data.outforeign_key.outfunctional_deps.outgenerated_stored.outgenerated_virtual.outgeometry.outgin.outgist.outgroupingsets.outguc.outhash_func.outhash_index.outhash_part.outhorology.outidentity.outincremental_sort.outindex_including.outindex_including_gist.outindexing.outindirect_toast.outinet.outinfinite_recurse.outinfinite_recurse_1.outinherit.outinit_privs.outinsert.outinsert_conflict.outint2.outint4.outint8.outinterval.outjoin.outjoin_hash.outjson.outjson_encoding.outjson_encoding_1.outjson_encoding_2.outjsonb.outjsonb_jsonpath.outjsonpath.outjsonpath_encoding.outjsonpath_encoding_1.outjsonpath_encoding_2.outlargeobject.outlargeobject_1.outlimit.outline.outlock.outlseg.outmacaddr.outmacaddr8.outmaintain_every.outmatview.outmd5.outmd5_1.outmd5_2.outmemoize.outmerge.outmisc.outmisc_functions.outmisc_sanity.outmoney.outmultirangetypes.outmvcc.outname.outnamespace.outnuma.outnuma_1.outnumeric.outnumeric_big.outnumerology.outobject_address.outoid.outoidjoins.outopr_sanity.outpartition_aggregate.outpartition_info.outpartition_join.outpartition_prune.outpassword.outpassword_1.outpassword_2.outpath.outpg_lsn.outplancache.outplpgsql.outpoint.outpolygon.outpolymorphism.outportals.outportals_p2.outpredicate.outprepare.outprepared_xacts.outprepared_xacts_1.outprivileges.outpsql.outpsql_crosstab.outpsql_pipeline.outpublication.outrandom.outrangefuncs.outrangetypes.outregex.outregproc.outreindex_catalog.outreloptions.outreplica_identity.outreturning.outroleattributes.outrowsecurity.outrowtypes.outrules.outsanity_check.outsecurity_label.outselect.outselect_distinct.outselect_distinct_on.outselect_having.outselect_having_1.outselect_having_2.outselect_implicit.outselect_implicit_1.outselect_implicit_2.outselect_into.outselect_parallel.outselect_views.outsequence.outspgist.outsqljson.outsqljson_jsontable.outsqljson_queryfuncs.outstats.outstats_ext.outstats_import.outstrings.outsubscription.outsubselect.outsysviews.outtablesample.outtablespace.outtemp.outtest_setup.outtext.outtid.outtidrangescan.outtidscan.outtime.outtimestamp.outtimestamptz.outtimetz.outtransactions.outtriggers.outtruncate.outtsdicts.outtsearch.outtsrf.outtstypes.outtuplesort.outtxid.outtype_sanity.outtyped_table.outunicode.outunicode_1.outunion.outupdatable_views.outupdate.outuuid.outvacuum.outvacuum_parallel.outvarchar.outvarchar_1.outvarchar_2.outwindow.outwith.outwithout_overlaps.outwrite_parallel.outxid.outxml.outxml_1.outxml_2.outxmlmap.outxmlmap_1.outparallel_schedulepg_regressrefint.soregress.sosqladvisory_lock.sqlaggregates.sqlalter_generic.sqlalter_operator.sqlalter_table.sqlamutils.sqlarrays.sqlasync.sqlbit.sqlbitmapops.sqlboolean.sqlbox.sqlbrin.sqlbrin_bloom.sqlbrin_multi.sqlbtree_index.sqlcase.sqlchar.sqlcircle.sqlcluster.sqlcollate.icu.utf8.sqlcollate.linux.utf8.sqlcollate.sqlcollate.utf8.sqlcollate.windows.win1252.sqlcombocid.sqlcomments.sqlcompression.sqlconstraints.sqlconversion.sqlcopy.sqlcopy2.sqlcopydml.sqlcopyencoding.sqlcopyselect.sqlcreate_aggregate.sqlcreate_am.sqlcreate_cast.sqlcreate_function_c.sqlcreate_function_sql.sqlcreate_index.sqlcreate_index_spgist.sqlcreate_misc.sqlcreate_operator.sqlcreate_procedure.sqlcreate_role.sqlcreate_schema.sqlcreate_table.sqlcreate_table_like.sqlcreate_type.sqlcreate_view.sqldatabase.sqldate.sqldbsize.sqldelete.sqldependency.sqldomain.sqldrop_if_exists.sqldrop_operator.sqlencoding.sqlenum.sqlequivclass.sqlerrors.sqleuc_kr.sqlevent_trigger.sqlevent_trigger_login.sqlexplain.sqlexpressions.sqlfast_default.sqlfloat4.sqlfloat8.sqlforeign_data.sqlforeign_key.sqlfunctional_deps.sqlgenerated_stored.sqlgenerated_virtual.sqlgeometry.sqlgin.sqlgist.sqlgroupingsets.sqlguc.sqlhash_func.sqlhash_index.sqlhash_part.sqlhorology.sqlidentity.sqlincremental_sort.sqlindex_including.sqlindex_including_gist.sqlindexing.sqlindirect_toast.sqlinet.sqlinfinite_recurse.sqlinherit.sqlinit_privs.sqlinsert.sqlinsert_conflict.sqlint2.sqlint4.sqlint8.sqlinterval.sqljoin.sqljoin_hash.sqljson.sqljson_encoding.sqljsonb.sqljsonb_jsonpath.sqljsonpath.sqljsonpath_encoding.sqllargeobject.sqllimit.sqlline.sqllock.sqllseg.sqlmacaddr.sqlmacaddr8.sqlmaintain_every.sqlmatview.sqlmd5.sqlmemoize.sqlmerge.sqlmisc.sqlmisc_functions.sqlmisc_sanity.sqlmoney.sqlmultirangetypes.sqlmvcc.sqlname.sqlnamespace.sqlnuma.sqlnumeric.sqlnumeric_big.sqlnumerology.sqlobject_address.sqloid.sqloidjoins.sqlopr_sanity.sqlpartition_aggregate.sqlpartition_info.sqlpartition_join.sqlpartition_prune.sqlpassword.sqlpath.sqlpg_lsn.sqlplancache.sqlplpgsql.sqlpoint.sqlpolygon.sqlpolymorphism.sqlportals.sqlportals_p2.sqlpredicate.sqlprepare.sqlprepared_xacts.sqlprivileges.sqlpsql.sqlpsql_crosstab.sqlpsql_pipeline.sqlpublication.sqlrandom.sqlrangefuncs.sqlrangetypes.sqlregex.sqlregproc.sqlreindex_catalog.sqlreloptions.sqlreplica_identity.sqlreturning.sqlroleattributes.sqlrowsecurity.sqlrowtypes.sqlrules.sqlsanity_check.sqlsecurity_label.sqlselect.sqlselect_distinct.sqlselect_distinct_on.sqlselect_having.sqlselect_implicit.sqlselect_into.sqlselect_parallel.sqlselect_views.sqlsequence.sqlspgist.sqlsqljson.sqlsqljson_jsontable.sqlsqljson_queryfuncs.sqlstats.sqlstats_ext.sqlstats_import.sqlstrings.sqlsubscription.sqlsubselect.sqlsysviews.sqltablesample.sqltablespace.sqltemp.sqltest_setup.sqltext.sqltid.sqltidrangescan.sqltidscan.sqltime.sqltimestamp.sqltimestamptz.sqltimetz.sqltransactions.sqltriggers.sqltruncate.sqltsdicts.sqltsearch.sqltsrf.sqltstypes.sqltuplesort.sqltxid.sqltype_sanity.sqltyped_table.sqlunicode.sqlunion.sqlupdatable_views.sqlupdate.sqluuid.sqlvacuum.sqlvacuum_parallel.sqlvarchar.sqlwindow.sqlwith.sqlwithout_overlaps.sqlwrite_parallel.sqlxid.sqlxml.sqlxmlmap.sql/usr/lib/postgresql18//usr/lib/postgresql18/test//usr/lib/postgresql18/test/regress//usr/lib/postgresql18/test/regress/data//usr/lib/postgresql18/test/regress/expected//usr/lib/postgresql18/test/regress/sql/-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:42731/SUSE_SLE-15-SP6_Update/43ceee936a4d644712db196d47f3d944-postgresql18.SUSE_SLE-15-SP6_Updatedrpmxz5s390x-suse-linux      directoryELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=e60034abf9ba146658a3a0b988e42b412fc518cf, strippedASCII textASCII text, with very long linesUTF-8 Unicode textISO-8859 textAlgol 68 source, ASCII textAlgol 68 source, UTF-8 Unicode textC source, ASCII textexported SGML document, ASCII text, with very long linesELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=cf9271deb18a1479afc412c58431f4178e1f0b95, for GNU/Linux 4.3.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=7147793f1b2ea8a50d4d2bf7f45c30446a239fd4, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, BuildID[sha1]=ee1d70825417cb37ef76d483891ad5ea42752996, stripped R RRR R R RRRRRRRRR RRR RRRR R RRƟQHkOn &Equtf-86d7602dd8d7448a6e52d1e53a09f3fbc9808a560ca8e65a90000fc49021adf20? 7zXZ !t/[LF]"k%4E0#J:fWb.񩼯XfGa xұun MV0㪚4a(J*E^F"Lh$[dW8] @5KLyF?QNjr,Z5}&(u" |I)xFN/Z, m^ل!f i\ ."ڀLs!]T']ld2>\ Rfn fSR!ĬvGBσ;NG%3qԞMR%J~0 C);ZYT'峥Ay^sڝ~5@#‚_Bт(Eٜ ESoLسzho< `/˩w*G$W?Fv.Y,PNMǩ7u?ѥP79 l@wii-(k6z߉ESNxzih;CMA="CCYG,:͝{7#0U-7oþ"OC,_2Op^3P3ok36-x*? E;`$t/zوz~Ќ_}#Fx2Jn=*y6$錹YtlIQqO{ى3MԌOiUkMQm`W p^=MR -AФmfw)NhZR5a[ K7JNL~@>=TsM,t砦90*<Q Jl4iǪ3pm80PD2$Vo&!Q0V@ww&3OQ"$ݝs^̝,ٴ@Tؒ?iW(c&3)cbFf̡,CHn XDQ(zWf&KȒI:c1EO_Ni5}`(~rȪ1f̝`=؋ب _3޺۱<I)1GIq6/)^ rVw? 9j[܂aqS(iF? _@B2k,> 'HvQG\X9Gm= j+ϜbO.涟> ÍkWmP8Yy4+<5E⊵eƖH`&9%o&}hDA wwĠOI!;}#B2OgPj@e6(hˋ O"ko3uzSOo gDؗC<ں~Xv6y4~oa"Pt*J)Lo`ӐxB({:c>s(zce2$%RO[5 aeAi-JqXn}d\k|!>xBSM"ZLǓw7:R)u($iW7e6Jr-J_'# c^Bx>_W_(z~"֩fAb[;MKlp/z&o`);CJiwIe8YNƢ+kE)HY { M\VZ\DPŕd1*c'XmӐ1A\]Y]}o50$a_FW՛hbtXUf&9ycŮNr1-ӈffH/ /{e Wi|Kn"l 3Helu<*&]tHX3]y04JʛVn i O[fݡzmS5MVxZDKJZx$OfګE7=0C[=7)O̱vx {cvt0vYXy}I#b)C8uiohgۆcQaƱՖ3;fOnjdAf_kC3eS|"ZV6x>4nȨ08%k~vͧ=RDqEOx[ SϻU։%DIA%W^м@P3ޙfEc(QG/Uw>0E揽@O hꟸ}bKP^fD?4ѽfdFy+R8鄘t:tJyEr x  27d w葨%QsdO!9R2s\5u3^_6Vx(9ѭm8Vl+]a3 F&UFb<(F أ轰}|3jŜ %O'.3Q(_;.hlh(Wk"#(Z2j,C6J 9 dYS9=yblkLrNZTkpS(Oud+JxAJҜo cHd(.YgAQp Ix!4rѼW$H`4 woqJp?D*/123n~[]AvrHJ)kgeMNMloR#k5R{.-_XXN9o䝟 в<eOCn[{yI2ԃ?Rf?BZxG,)~׀S=E?'cxJu!IK.LȻC(@9W`B;J`w u9L՘ JT3ak]-VDND ӽ)˰mĺMO8BFU]`[J7j819,S+lţʆK|ƒ٭?ͤmD*+ zPW.#Xgj TW_v3ˇ,fiͺXSo3OzД`Fr]@V٦c%YVPo3A R8{GL73YsP'}l{cIDT(5Ba^%?zܙĩ+U6mHoݹ]hjQ6 Sq(pl< HBA.nWR>mq bd+WӨ%0 4qz֏/WIxң#j~ (j^O[ b<1Q_1s2#Um tQYM/ Y~6fi+@藌̲ռktϮ7\; gv~}֐ @i#! p=vw++%=/ \^e1 pW Ҩ=cZEbHq9prƢ tzU[^qIZӤ\`˰˾5,#Uџl3q,rN5.\ԪOpC15k Mݎ΄+ݦX37 esϥ-Hg-kԈ報N-/Kpi~3e Оo9)96c i=,3]X4a ~k:"^N|H<ƴd$LtpG| r wNsaHJ_@8-?]D*]tgN:Ƚo#&L᤺fs?kK\2.{nRk,Lvpd%n+Y0M;?6 w/&^Sh`Lp:6.!;NܓxmtL ˮz6 LfY"Ir%VD*?ڨtC"/L٥DmOt#JuUoç:(rL5~ SxWpoBgDbw .`yӒו]YAt6=ᓛ0(cV,\NtD7Gn ?LIAU:vd;NJkwb0U#-G8>5w!pLŤNq*'^](.5NN Gy QehE:% NH(J~D Hv&T3 cOT%U)mvd_=ڞ4v\Ϟ9,xڸ24rtTYsabNbm`$"<\X*6qlN~NmJ 2`!1;xHy|6[xŅp&ldqr6j]ae_ ꘟ,OΰKSCmer} !"r#.x `yE/: UTSX'{H~)( 30%HJhp8(]*LOo=^V-Xutm682/^Y}L$.pY#Aé?X5aJO1r T ϚQω1.r?y~^X"ֻ`}?fcS˩A_t*herٽr4.?y1ԆZ’&zsc};~HM'F<%;QՇGZ62>%]MYX9$.˟-޵Pά%?j`5adl`P)/dv|ݫ=p•Hr }׹c*q Mŗ?*۷34! 3i/g'ݯCfmTY𹫓BPK?i;MPg6(Z*;SU[Rx'9yO Mb6֭?˳e%wm|1Q&&Ո!B4XXiQXd$Ke'(#95b te{esL+tFHP,tϥW$Kݻ?@5E5TmmyhwՓw s18>G+ILЃ~3JhLXZ$P<'nBId1SdEE1ىc&GQR)՜!nU,jrj&39eS46)Ws-ߑm%+as|$"JVQRFЖ. .M?Tg8j6(k8?&6-Ҁ-I+$ 5NƔSp[@za[.͉ 꽷% bfRr5U%&n YXX6_пBoOR5o@E#h#K֓vBXk? 7/C| .޻" a;#VU*C>VVFEx$QRH@6\8R/[`F%"hu% ]:|Jc*LRj)^;Yڭə#e(;;ms}!Fͷ괍q""FbNe _O t%> _b*8.o]DTpI?T!Vh:<߳>݉{Jk K  = xzSr8VS{NƉnϜYj.iv?d||l +~Wہ19skO%VŜPrlSoT]99P2@y e32$ǿ0_|q'J]XT!_BPahzl-B-͹ >J/n5o3% R}v0\$'_lߤb m)bJ%^H?HƷdij#)m8zݸ}yTA[{cvtdASɕi@}x.)ʣAf| .,Kш@[xE~ȫ7 bSA'#&JFyprHUD*S[RލRjȶX7UVP9X-r$K @Pc#I57QW ;ڟRE@8 AR V i4 qm t7}9Cf j+i3mזȖ,t M6ꅿ6x:[hP@p[ ?zv A?ָlqMwƴm.h= pǮtR:.ΧYO#ݕ34ajA ||W {8T]GywmfpۨZ>-t;=:곉ϦaLGq+;ąSB}UVٝPUZtӼ裰FͪS  g!ZP`ٸF-`O`Gג_|'pzמm^>S8 k#A j*&jgd6;)v}7,q{ơ!BaC!ri-Lɇ#nrNVL7n}5:XVG׊p\v|+AHNn&"<~VЅ%\l8`|a'{i!FCHw p&'}'?8$,;bkF嫧*b&.aG;dԁ%nTyw74߰sQLЩZ+:.T[wr8 xH,Q^["kLB&/u!{Δ)Z]3F-ZaO222|:x'YbUn~֬S&PP :|;'6@EvUTvZ8EaE%.s\/ >f(z.&=hܧ%?5(wJl2'tt;y8GݐY`i$Ia!C4??֛ D諼Yvqʝ}ZHŮj-) M]V Q6칫7w)^:ubs36+tc!ꥍ5^˓@I(:EWڡ["ޠa j-v'+mrYr66ŵF!S['?mbԀֺyr|s8ҥ<|sZG !?rwhV}fSgehyHBǽϲ@k0eV띨`/͡`/Ȯ]/9:Ὼn+DFߟ{ ]me/#RS03XygvpzS)ۗlҔd Gfdֲ,zjYP UyBt,G<[9<5ʮmα'{=)2i(?kR0g]>M92:ql*7IbEz'! m#*A??/#p~k>7GEb$s8y8Cͪ<K\zH(4L L(̪ǝ$u&ݗRߏ <~6G0q^Ŧr[Xn@C'aM[혶|?tq2jߺb2F--HRV Nd=I7tI/Ó{:k^wH)c?CH,yd*p`8J]P$wS=J.%Ș7YB׆"BfgV{xf DSzfoY<\ڳ\~Džo`ހuݙ>[3$tV Af9Bb׬h$䩗 ߷=U)4 Yu\[t>}wT#f $xd)DL~8VojxX6(} ]lrRuXM􄤞r?t?9056pC`,&Ӗ b?/(3v/I>3b|Pkps+8ed_D~ҋAPߙ D6s\ǽ;Z/+6ceP\H- M\̉SHEWSTGnҜ2&D4("GKUb9Pj%p#Ho.KghZ U=\'",xɵ[ h5pycY>L&z֧~G•P}ͥAM~bIMs"U!NPDVT0zpK[<،d'nn{*0랬ABТ0.vD3i=F~4Ex|D"$  "@rJtbF4_ 눇FZLM Nj̥'盞{ˑ!yw|1|il;'|-g& k3*="brb`K(jpLn)_GR*D;nsṷ?pjMuu #r/8cB#yASS%(ŠoZ=Dkᅝ6TٚsCZԟƀPKRq?pG&~yB%+尃u9 0xlvZ!X/ $*4=C)ǂ@ SQaE{ S\p56\,`||nQQ+Mp9SYBƮyegxrO(Ob-ΐ"E=Lxطig-8ؕ[8Ԡ O1j ҟt~',满qdf5Ӽf|3&\u,s4UW{ zsx Ў=58)Rۥ[`O6jFJ?E{.&[B@џUV! ֱf>}^<ҨHIe P7@wˣp<1 Vd#BR޷_~%4%2n  Y~7i9Hk%K$bɍ/; I?+1QN0o@),4)A,QJELKE!0Zɻ࿋4pǻ/\* "Rq-fAHW[w(ߋG%.R&"6~Mb8%(mUrع'M!x=1 e \_RCs1Xil0Y|}@`%UKDߥ9c]0h`J &4hJk&Nx5i#B8oJoj8T1l]Th05^ؾsْZKaps.#PsTdc߮9y6ƵNi^7qC)TZL,L7hP~L|'Ji~[IQZ,HBKpƠ/L^C (@,F D$]~M.|$[v 0]U.QYWP_虹-EVn)BpihGD@F^N&e/]SNR森ZJmu{ 4qKmZӾj)Mdd+al7:npZ•1<86,#͐EԊ/Ogs4^@%z75 cK'xTM(.(,[b 'X;&POTxJM6/+ ᦽJ`V,t(@XVU(D`DW„'vtпDDMBayXư9jrԿi{(|ﵝ... /1\LU=~c [ؽMڶS f"?BIao5S@bѳֳt;,x}ޢq/áia@KdmYᦚ@l;/ߎc#˽\G$& ֺ.-p*[hW=nniͨ>*bzOcrttv0lM6U C {U66<@rw *$&d@xwJ4mX9{DA(+*6>](k>H[e Sے+0$TP nD"9,A;ctpZїZ2>W8z]a+ a ykBĦ-8Y|$=|n$H;xgy&2$6?0%|<;vT]}!ݐ8r'x[S&oL$ ;~?b 䔞Q!ױ,*L=7*QYqN'˪;+zh`NTc_L73,(1^7[\bE,\*dKv&h&ƉI0 !/}H qRqnܕK q{w59I[ VprLߩ}/j_38J$oT|X$K,qEI)_4HTrʡR9MT:ٚp|@;K5%oAnc‰]u_3:^h!z귚:`x2^( g˷0#c[Z=YJG{rj %L?C"y}.a)M&G ,5eAq2WGgYo02a-wd<]60Ci~dX7_8l&Ӯ$NeU_&b3a0''f%"zfD /BNm䲟9x̺B%|(A_ = ԦU N$Cï`$I6>_px1ET57 .rv,wkRs͊g"{.fYovN:2X]Lm-kx˰"X] :Q֑)44\ F;[8קjy7tK'J!c"k)Xxa>*U*|zgߢrnktZ ftrBG>uYBMi}̃$2m05plsPO/ЂGoBt%eSAtڲKÂ6Y1m\ޥ3:^]H= :F:$Ds#Ť%?z0Cٝ=ҟZҕ'%z}̍ G ASF\&0|Q/o涍n)*_q X*h^gQ|(ij0&1kÏ.zizd2)qhӈlh;7bq}QF]źA[[V=$׈sXxGGOx~8"f) ƼIFnqvS4}7@2F,$rF Sv 07y³7) #BaB<}"xϿ #-PANb.9iN0?˝'y79i/? p9(٧yYq, btR獐sVP u QtSA:B2=D6s Չb,rص/س@htP\_$hC!>Ia@넿:~"&h-) 9$bM(a (` 0r_oBV(m-doL&)#[E v69*瘁[?wg =|)/ _C8¡T0U/d;4e'F&JmdѮh\#F}}ou\0cy pU̯GLǾVviN*3>A[Bj LbcA "'ݪo 5R&$.O4GS;y3kzheL[Xz=m̫XxHO5, ܜ+|rf1|6uXܗs#hV}.#V'&](u##,LQ#Ǫ 0k h%Lw$nW{;r  6q.b#moX1Kx6cʳgNdxpo1IS{tPP;1eAC7IR"2E4Wwc62dN:_NA@_2`/(^:YEZrO:KKufY*T[ۦKQP觘溌ǴpN/u:L#JvOg Ԩ}6g?K[5f@ZCcE| vuU#`bWF. &JIML/-89eAՠyw$ }K,MaQ[oqmP*kxϿo%8F Uyo0T#P-nh}VB)q2˓˹ @z;Ϭmf BB'3́of 4 *&>)Ė X0Ј 9!+.(Jb:!`h\YS-:P=(>&xfPhLO> ^Ak7)z&iA zqnX"SzPF[b?ۤaɇLb!@N &$2T=Qwf_%)hGEƥފ}@U^k2"z,@Axas!" |i.zEDcc=$%yUaULX-TTkmf8k)Uk};k6re7GRx d P4O0'o\yHAQ2-P,lK"vgi7($)];N Ȭ( 8DX}<ᜒAo(% CUPl>:'mm8{sduud42K|ZZgBҫF)`W]enTVQĬ돶{|D> k{ sĭlRxUa a8!OZ෸'1b>tp2}?!mMxd2:WAg-Ka"mx}gH,C =cGQ׺J|7b 1c+㩵ÉPuLMi&ݡ  i߸ln1n}vХͰO0Oze3R Cm>ASYEb!o?:.9 wFEa+@G\ YfWۚvbLD2gI;~HP0E)eQR5* niGs9I"KUe`6bV%f u\i|>z3|%$rCdCBzQ:Tg x_}nt.R;˟s-e2+m1065Yiu[U*S" XqW}(5y|7$Ĵic/3.q\/(gʗLLzq_7h~`ԅiu*'ujX eCXhgo=Y}(RBHDEǧ ![7BXZ 9`Z{mP$WǶ$^v1cwMfVX|?ۮMog >T(@T"Zm`-4F@6-1hyfYʗ*_Z¨Q JVxTÜqLF<=Q $K:-MdΐP T 'OG]s $طwk5 fzسјUJ=@AB  kps`T =ZKM<2F_F`wϺ-]HSe|z߶+  SJBj2L-ɂ@ZiQ8  `W"'`611{>/ŨjxY{sbN)aII]M1|Rȉ;C/CL?SZ=r`8F>9)54֍pHF&