libzypp-devel-17.31.2-150200.45.1<>,c>Bp9| #X0H0;18$@(mO'PV3 cD7cl}=V/J>ŔHnFКV,hd/LЫ>vzbR:A͒DhP0;Yo@^^7WhJGVSϷ4 ?Bva_XĤ܇qt. cغZHQUphtY3]@"bv^iۿȘɚB ܾ(4 4H#_s5wBX>=>AP?@d $ _  1Qu{   T   hx (894:HBtFtGtH|DIXYZ[\]<^'bcbdefluvlwxpyz<Clibzypp-devel17.31.2150200.45.1Header files for libzypp, a library for package managementDevelopment files for libzypp, a library for package, patch, pattern and product management.c>Bcabernet4SUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/Development/Libraries/C and C++https://github.com/openSUSE/libzypplinuxppc64le*i.*=# ~r~B> !-Ur * 3i7gTdj,. " o ko  0 N R0}(&Y   " x Aq;&l E x0"%z*#+!!'C VEx{)$Y 1y'.)k}D :F 6 H16?N'b&  (~ $Q\(> :%$@0 T{aCIG)v]I8%_^Ao V3&H|! F K.9Hs[ r# X*$!& "&/"% $#!%$&%%2n'%#(.+%"+Q! *8#$& !/O" %0- + N '!%c7 b y $+& /12,V _ 4$&+ E!b  ]!5 ?, s A I =~ .% xVJk-Tf9;| \;$ < &'ty R Fs (! ! x a4 / [XK F#($.AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤c>6c>6babababababababababababac=Cbac>6bababababababababbabababababababbabbabababababababababababababababababababababac>6babababababac>6babababababababac>6bac>6babac>6bababac>6bababac>6bababac>6babababac>6babababababababac>6bababababac>6babababڀpbababababababac>6babababababababababababababababababababac>babbababababababababbababababababababababbabababbababababababababababababababababababababababababababababababֺ>babababababababababababababbabababac"babababababֺ>babababababababababIbababababababababac+ Qbababababac>6bababababababababababababababababbababababababababababababababababababababababababababababababababababbababac>6babababababababababababababababababababababababababac>6babababac>6bababababac>6bababababababababac>6babac>6babababababababababac>6bac>6bababbc>6babababababababababababababbabababac>6babababababababababababababababac>6babac>6bac>6bababac=Cbababababababababababac>6babababababababababac>6bac>6babababababababac>6bbababbabac>6bababac>6babac>6c>b`b`1a98fae5f90fc5c5244a2f6b1cac2846d54fd621b6005ade54653ae322e74f1427f6f44095da55feb9765a8b3ed0e4d37936a57354b0a1abbe9c07f3f66e6faeee09a44d48614e3423bf51df77bcb5bc4b9e3fa28fc79cbee935c03fdacbd0ce6834dc280ad92a6d78319ee366aa9ceee7f21682445588b40f0ceccbbca31d05f1ea6e064083254c0a4f1f0a8ac3f638cbb2efbf9f97d9d4dc15bf7182a6d0166bfa7e4caa61b24c28d9b691d8fbf6c98067caa53d2eca450e752a77c181a9f36f6048a0c251098dd74b89664ef69ef9f63edaea37cfbc5263272963f321e3699a87f8c358c5b9120b9acc0a48f7bbf2148c15de6ef6fc921fc74c44f1ef53510f17e79cae76c5aba3b93f792f62f198f56205c519c696fc214aa3b755d07a7a3ad5bbf2d4bc35586e2305cb341e6d2777edd978ed080f29470856bf0b3bc06153359029a2684147abc40b82ffde7bbbd5712d7cf340f426b40e1a86b895647ac7922fbfeea953a070d777f48603f6ddc96d48e0546b041816528593fa6804e881c8415007924cdb73ec76d4d3d9601cf6c8a2309f51822f37ae38b1153a404df46548ed4ea7ddc96614f4a5abd42dcfbe4e2b218cfabaa696ba0b74ca9d4828f8554b58491a582136e2a9b990bd88bdc7a35f950dbcd19db969b541908f23257f3c03cc22260ed1d66d8d4bda849c6019a3c0cc46cd3a7511a3cb4a352b1f368ba95263b8ef0d5010d19c507aad1c64ce09524934d4d894a7c34fd1b07549413862aa66d005782a59ae680a934371b9f6e54dad3754c655912ac705b73bd4d2cbd273ae386c6ee7faeb8a34b3124cb2843ca13020bad286f463f5afd595a27c1ee528c61984e1f9e968039664cd40b0169f0f7bf5b031b1117fcb61ef3d422a7e674dc11c01e48dc74d117f345149ea0f20ccdeae7c9cfa3cb98b78e520e56d2bcba29386904a5c879798522c1426fb2f7c4db3d199b3c5363611bff2ad9d751548fb372e6ea1d9215b6ce648ad65f8ec67c315689b04002bb1887a33b7bcf24d27f2f192099e73d8da93c7db1c260ae824748efd08baba67dbd9643abd588f03d5524a94669172595392de080b74ac94e45c349cd46b0a78138196b708d018a054682c6336e3868f8e59f7ef5a96bb3b623d9d11d9f3352facb1a7c600968564c71435e3a75bf5c11e5797bfb1bf4de6ca90b7c24fdf451674da772e6789db43843c1979bdbe5cd9bbe49d984bdd9a2865d57f9eda6d8e232a7dcba729c9ea00b036d77175ead23b6250fcda8b2082e24d681fc4a21a9a213ba68b55238651d2847f3eab901c1cef4050d5fd1e4952caa9b40e4f9baa5b3f5b3eaab6bb8f87bb49d6e9b501c9dae1bc7bb571f04af0893fce409183c8ec74995af774c9d076d1727a8653d820478ad5d5040a281a5d8da4d58e81fe497b0aec0065a4b7ce4f29ab2896a879765f11064f857f141bcc958d16a0c94b5575960630ff925a720b17985c1aba8b3b42df7868e401524d2a35b71e630a263d850f0f85f6e92e39c30c76a35a3b13d0bcbf2f65720058738f3c465b43711a2e16c3e8a8301a9d18da993af8c2097fefb47d73cc256c8ecf9dc0864080dfa03a9a22ad0c244265036942cc27f80dd9a3e9c30f73a13fde7fdbe148059e5de990845a4fdcfc5ef9e0ab284bcbf87500dba81a5cb0a95317e0cc97099ee2edcbe850982fa3615b716179027c30e2357ab200ae17e288f383e75bda9a0b6b98f35caeb7e2fd1775d57c44e9f5478c8587ea2c039523bd065e2670eac66e6132e246471185982472aaee5021430420a3bc70884f699c587544162d96e386535deea4c17845ec27beda1c5a4c3c0c4fe47eb6b527c06a2531b760d6f6169f04f073affde7d820002d28b8e38c755bab0185bb31337875e05451d53ba578ecf1b1fe03a484e8b8f46153d1545ef8005436811acf72f490ccd36318d8630540c3ea8a2de7c24373e705c6dae9f7f6492c02550b28be9e2e1b691b55d11943368742f16c5cc20fbea234074390857f47362663caa9bf1aedc598cf9b51b2462cf2d9469c348c54cd6cafc9540a28a0b09b39a8cbd6ccf54932fb91e6da5e0e370c89cd0493b7c17e992bf7cc931f7b39fa0e7b42021e807ceed9e94365be2f33077c7c88e267dcc489fb9d001ef23dca3e23839892a3b2f236be61bb61aa62506e1eee0bbfd470badb13d96359077757d6ef3a8633f01eb61c1cfb6b6036be3bd13a95a9099dce85341d13c81312a901ba085bf20ac7c29667f3f3d63da4b4f41d2d5399fed0cfeaa21fcffc724c1bdf8e9fc0617d265a5976845d9e074a4cb6a705d4827ced28d0fba60815b690910b3cdf02599a5021b352d12fa2881a6a43352fb916ebfa59bd51152c000ede1f9fec40e8c3b58c745f49a70161e9810cdfa05fb054e2c644e189c21abfb42dfd4e4d3e75e7d5759f37d0e4f54c72e6e4282cbe3af602d04b22b8f145af67aac77d9d8fa858cacd3b9448ef58072007917aed875f675550514631d341ad31c6e0bb83e21f225d3c96f91252548f5543800be082d1f4425acc7b54889798132ffd129646901e6886d22d38058e6ac345215cc556b2c3f05f34f0334f253c50166fb104b705ab55b6fdcff3877c445e440a59e16d0d6a059ef1cce7fae56a4e79af4bfc9aec9b4860f8ebfa442fbe51868811f5052d45776bdbc89c36ae0b8b28068a4335c3a8d5795d58298eff5cdba3e0fe2fba941655c3fdd88c8a160c483dd0122b70c27a471934d93a3dd0cc8806f008dff4ebda2a30042fcbd22da041845a345fc36bdc5b1dcaaaed5ee92bf440fe9e5281f2082bb575fef254ababac3773802a6dc361616973f0a9eb6fee689e25a96d62f6880c2e2699f03bacfc6866fbefdb84ed5342377cd32250f139c45d5f31a4307dd9497039cb3440c366ca33c150e943c29259bbdb2a2a8221eaef6ec329820c9963549e46875645a292427098e2e11b801c9a57dcab22bf0dc15ff6d7016766adf58735d327194486fd7e22e0771068758e49490ccd773555775a6ce27ddc60321b054b3633d981efa8c75ce783fc1451e4ddb9e71c7b9414fc92b80c99c8c5d7970611cbe69579e9dc0ab5c0d59d0ffa8e7343614f94e11b2e3c9b396b89bfc5d366abe86ce931a5a34fc2ade864c7251a9c8f5bc5d9d16e10141b8240939e6957f6ea1ee58e66741da6d17a04ecb759ac80a338275cde2f09c4b5a047034ef46c617bce5f2324d0481d34b871c60593d7962053cbf143fafb098e8f3a7c251286f507a101ea83bec698c4963ef2e2af7a7b1282090351b926608ff153965db5cd94306b518bf76830fce3f83b932f648b6d8bdf972ebb596f7df14c07b49d1af191341cb0dd2939d930e7e94bc63be88c2502510ea0f7a336788d72642fbe046872b1f7be5da4fa4f0ae0b51b1aba1d88d6b2c37467a4eb97230777e396cecf02ed54dcd9514ad6f4028bd7adcfcb425a1198232ae02bf2b75c7cdcc322fe3c07e0a7279bb21ab959d821b342a8132811b65831b08549f63e338801a17c6767fdb2a698ff6e5ed0164a261849f1adcd3b80e1a586b7cb957dcf31ad0de966ab992f5665fbcc91ec1d501394b872329a1f77393615df583f5bfce991991e653c9f81b60153adb302694a8edde9d812e5ec89384ddbd3f35c644d2cbd8af2bb16b976b84211cc1c1f5aae5b66076cca3ff649d8093cfd6a0a566966f3409d6bece27ae702d6fde5f7f50502e307fcff1d1903d342f221c8c7067e77cd1a5650d3c213b2aae8223f8529c2a966cd3f10a7b03d83e81fa293e2eba44f66ec02edeed52f983e9cef09fbacdffff6d800b7d7a60a499bf5fc153f968d04cf26f1ff01bf7e887675b89f49b19fbe266f9337428bd6f4a87aa6bdc1b6d11ca194a6b83fd74b33161e823c8cafc3bf1d8b4c6b564c829b8b669055d40f4eecc440d8abc80c856e5c3249f8b07cea82c797df60379d9cb4dde27f36d81d09185047927035c49c5308f8d73e0e8e63c93e934bcf43e9c937ef8c0d92a42156d9b03b039df03d47510a3f6901c6ba0f63225abbc9e0fea417dbed1563597f9b49d366e84cd4a81a6bb8e142b7b53834f166fa09c79ab959dea139ae4c7f92990868f4a8f1982746c55e95ac85cbe185935af80a4bd9cbf48bb2857b58a07bf89d2c374e0fca31a845ef6a27627c231dbc5c7cbffe13f88bf2c1c0b3507bef3830544c1337a2b2e093d64d2ef2fd2b9d912dc4abef65699b62d20f03f50ff255b6e4f517bb874b50bb3c7b3fb3de6d66cc90487de68514bf7a857a63b59c9d18d3e991f120029b07313747711877baf0cb06850422f082989c43bf1460065bdca59120fb9ff7e6a9b5286ddeafb31be8ff53ca9673def966e0a3866a3ac586a055650f898fd89e1e1b96f6e68867840bbca503b477a4a1636e52c3a859eefb5f797114fcd06126dd71e098e0a580b64571b90a5106ce30cb9b83ec482de48535eee90e6cfde8675e805330092db3783b4c34ab8a331328be2b852777adad084772542349bc43314c7654cc2dee04bca176cde9a4c8886acd97dc7da234b8baf6d5019849b93f6e0fe3164df6a429d89b8d04de92edf5efbcad496ab813787ad751430b6d3c984cc079a5df730b3aca548f308ff03d63ff6f7914257c6d4746dd08f6458e52e2789430c4e2994efa2b54a65e4bf6cdeab314b1aae0d8a8aa125a188e32d8eb6cc10dbdd0c39d946f33b51695f319fbf61b2854130e7aca5d57bfc70b15beebb6110fbc6fc0c835c13ac1bbdd3c75286d45c60bf6a8d4b30ac053c744e7f345f6bd94d788d45f627bee1ecf1de107739ecfa5438d5e9455414cf8382d99da51126ac5d58746efbb6a3f44f0b142ea4fd8c8aa9ae071b140a3644df3ba525789d04bc55b2f103a2c334fc99154d9a8aa86b3c1985e14a4218998ea7bc76c1833878eb212553dd0de515e3feda900674949a0d4f020a3e1207ef5a13a8cbb5d3145884be04b23321c1888dab6989b0685c67f97d5e4ae9cdc72a4852eb2e95ba8030c5cd43bd2395a6151c83d295576785e0581d6e1a2be5647f1740408031f0111123c5499edc9b01599a0999db4c2d5550d49f8b6e4b2ef783abdb0c3a8e53f56e01b995b3f68d3f204ad51161d6e11b9830807f318666e816a390743c28e3d89a194464205861da685bd24cbbb969483d9c3200c402dfed4a79b278db7f71f79fb257df5a29c2c4bd0c53663faaf2add1bdb94cb544cbd0cdac917e9cceaa4411f92106c66291179d60bc5a77e6c69fc21178f6c9047b0a3f68e2326a7a583f1be1d7dab52c348276e49046c9f03351500a0e1eedea750d90aa097850b61e95f5a85eba50aa3ddda1624f72f08acf689e78dff58225bef5ff83858161685dd522dc1ab966f58db31c54f81374b43ca1e1c95eedc0c6be679a8aea48b10a073f4b8496ad762beec65b07982f69f8fd45f563a086b15221e39b1becdcebc4e42aac9d0554cab6c46c3d4a114191c74a7cabfda7d89919d6a10b4a405ad3c40853e71a1e611cf940726516242e90540c922569e2f86e7bfc5658a38598defafcb3f51ce6ef5bf117103f2384356a4adecf1f8c82eee3f3644b2fde0f31a3377c7b3b18ec3b01db20ea88ddbf84cd84d76a31114d8c6ec2facd69922a19a4f1967ca058030753b045b56b5df2804e34acaff6bf625c180affd8da14bb5361ae9959e38ff707d76c8913ccf165f0d06d0def40c506e175c239f1e76306e92b75205560699dafd4a3c618f634aad23b2d15211e541b3a65a5f15fbfd807e831e2c23a1d5532e456a0d0959e37e04c045f24e9dc47212c5e715747067cb5670f2df3740855c5a707d9a0b32cd3d297bfb8af107b37ed69c8aec15789aa23bbd6d31854573c61ac2111c691ebc1d041bfbcdc4ac40f95bde20f08f38db4aa0588052f2c28d7aa47e00eb6b9ed86062f28b5ea8eefb93408009cd0423df64ff03728111344daabd7296c318b0cbcd5078d507e26c9ae52cf17794d740ab7f2e8a4051ef55bc1aa868b8bf8af424373e584a55b6d3d23d97a62a828600147b2720a0ec4cf387619c7fd6e19da4eea9d45fa47486713d31bd41977135b9aa0a9c8ecb9b7bc8811d396f420838b6311c8d6d2c2990d07d46aa27ecf708d28465ffa9a3a0e6f973f3ccad483e920c5bf613cffb86a8a7f6ee53b82eed952cf95a7cf06724c794a508bd1061b26f2514f22fca68b9cf33aade67193daa0ab71f0a162e4d0094cd9ccbb30806336c96b43c83dea751cc4653c353f3232b7484c002942e68d53f08eab3c34c7c567138c621988493cb39cc3ee5bb216637c18514f4ea453235ec2c521062a76dd7ad5b39dabdc850935db5fea6e0ef565ad156cf2a6cc95a45e2f146a519a0e7acb72e83735e09b4d7343323912dfd01bd01a18dfacf9d7d6f2cfaff8f00f139e12f97e986e608104825b9854ef54f9a60cea1ca617c9d0ab8b849a8db160081f32efdde23073d0dd9ae125af802e500ea15af724cc135d5cc129f8e62f20b0f04edd6386373458313fea2ec7f7c5dace626af89a720cbb8f5996bfcc54073ec506e47dc141063f461a72bb308333abaa8e0b845798acb5b5182ec7b47eb3edaef046211c039df246b6ad4f69f9b94ad525c3ed2c88f6cf97556fee4cd28ba9183a7857cc69e33f0d6115e3b75f77c772d9735153882f11219b00c96611eff59578bd1ed1622db2ab46aa9d2956b45612d997c5aa09fb9235edb1536ad01263be34572a0a8c357f3a2d1d6bdaba5d4b58a4764e9ac483fc35adfbc36dec7d59e6cc9599de134b648fbe5584b932a852dffeb86fa45e412118280f11c3ec2c2d67a485e0ea5eb7e7246105e0069e20e560591c05c50018d31f011d9b00f0032be66efd37c332592e9b06c26efc1f3183077e5567491348c98c6c08b39b12efb0eb1f34b8799ce4644ae06d9aa3a88e10ebec7b6b04f9128cd425b5ba058cddfe2cb5d1384214ae9ffc3e9dab9e5b2927ef0acf0b351888ccf1f6123690e7c7470a2a1332279de1e4135b8c9ce1c5b3edbe670466cd680818db9a3d81a64b3e43ad80387ebc1b9d0aaefebc14aa946beff452346f6349475c557a7c66e2b4fd01f9a66d6e1e62c8b16f38a101686015cac4db31c0d6f11fdc72fcfbc6c114729584ab1424b672f28caddba86bbb48737bd21126274422d0f0715d0c362eacc85a3b28bffcb8f2d8774952ff2c6dd86665406886fceb0532188365ccfb11e65003afd04cd1da0302664606aae7388f5a559119cbeddbe2a5828b55a7dd3bc7d74f474b0faa0a560fa782d041bddc771aa0bcfc6e74963804b6a5dc2af3686644c473e08ff69d2bdde51761fd5ba605e9d7133a7a08fea6accad838cda5168eafb7f7d329a953e2704852035d6b099da4ff2b76acfb183ca7f8677130922be90cb270c4e1b8206deac2363312192a95ed317eae969d7fa4c3f87efea966d75a63b15eb05fd5762bbf26f667344a1167f638d26aa95455b7baf250103d5b9609da0f18ed78b8e0baeb63083c12970784e766cdb1965efd682c25888575ee79e39a08b8c194d9f20ad0dfa7202f4a1b4adc4f9af69ca16d031e2a31dd2656e60197a77343b12df163ccffdadda4b4092d68694aeb305d7b884183818a76cef9e698ac07ef2587f776258cf0c82eaae15dc8c930f510a1735ba834538c4cc32f6d8a7feac9dfcbb889a2b2fe76bc6823cfe680095c1eb3a84cb8a4cdcc94fa931a04b8652d5376b0b39947ec7d688417c4cc0bb2cc11265f5215dc19e83c0d6dc5abee3d23f2bf5a09e69f6736eddb1226bff76169b8dd1d1f18098f2df807b7a85ce2c8d33e5ff6ef182359d163ecfc74de096880a8f7fc7062bff874ad4ff763b8d5c784a422574fd054d5c3315b517ed602c66d0b80c1e0b03b1d4136dfba418e550e2974a8d1000bf0a333d0515a1df4c8e3ef9facab2bf7487baf70fa38c72a82f0c059a6f85e67ea631755aeb842cf458c53333ef68e941965b6962fd79bed00677561f4d4c7dc1661b5278813c045612fe3a64b79d34e980b058d8058be261024a0d76932deec1aeff516b4c733b8174310764b96994b8bfa7ccdb963fe8caaceb2047318f726f59b0ae8bd030ac9527495080ff0dbac0a49060019ec5da08a6f5bebc1dcc2f26df37900a051a09aed605785ed52dbd8e0d4efd5454b1bc911cd5985f10f2440a2563ca5a44faf2564139ae125531b599cbe20b7c998972a5ca093af00ea539c8ab41898055ecd34c42aa23a118d1db9aa38b738665b4b9ad30580f4b91ff640a078af54b58f71ac296ce1be7621bde9784f520d952e07cbbe3aab9d89d36d1ecdd048a98e84f991a01ae7fb60e0fb89c871d04282728f45416c93cb6da0d7bf08f5717e27b05c615530188d4306752c099fe0d9a2769b9eaa6506f093372e1dbea8177545407e94eb53323f42183f2fa5897a4a9555a8ddb8aa4a22361063bf54604f9a17eab9b4fa7e2259061f175b9bbd1426a34cb3bb9e503316a1593c53f02e7b3045a9e1e2bd0ca452a06c8c720c25c9986dd6a686ce6d384b66701877d812943b6701752404fac02b932d1c3e1402f201b0d8953c17906569575f7cdb6b6f570b8aac60048149bf6b9c7ee113ebd67435cb9e2168ba50de056fb80861f10ff2116ef46a35b518db6209cafbc18f3b1d2dac772b13f75cb43b0b786c6eb3ee679f93a21b404a97edf1f458e6482d5f92347bfae4103811a9b0fb23ea053f721031b72680b234717e230377f61668a8dff4d60effe100b1945feee76796ac5b7e2ad31728b624a5c66aedcd7fe42d15e78ddbcd4ec52ae5ad51069d1d9a8882ca39ac6c1ffeb72f3f66e1e6ca3ad5e699a4599a6f3ffa64fbbbc66b0993c8ba6621425aa6ff9cc0fcf05a34dee523375a8b0972883c28fc656dedea20439efe3108c5e5ed3ea108c5676d1bb6c437d323ccc79cc2ee2705067bb818d94d7a55209a574e89208a4058ab3f668e96945dcff4b56d3c7bf0fdd40073271fba2903b01092eece36b4c441b8b3b1d3ec0431182f60fa09d0932da735bc7584e214f731a098eb7b963169e001b94ea1c57be6aeb066471304b5c4cf9949a236e510fedb45261bc5bd705a28e63f0f20dc6f274835fe34a50b284c775db625e9c85c28fc2ebc158d933d4b1953e5d4866cde589ecf0a8e9e4dff9a4bf45e1356eefaa9eb5c5d8720242fbd342a852068429e198864b332d30540df3c0707ce387e4966c98776b7a342e3d9a7799d64d597877930fca6aa7004a3f3b15e050fa036e5c711c9897e6776da5d33ad100589fa92bfc2d16e11df1642755b2b6dc5185f9e024f89f47394b93aa88a58d5cbea1ba2c0819fac32b02047d8aacbf24e0710647606dd4136e751fd2e91f6d7910a7443454ec8acbed94eda64cf64ca08199664bdf9a928b62ee4b8fcba235b5d1bdfb7c3fc6a7c0e07e44aad8b67e2a685cef44a9ee898a1a28e18d1bb8f17a0e01ece922a6712a9dac87a2c7eb96a7d730185f1c0d4ace8af053b4690edf027d1b18e22621026482cbed422a93cd3e3e119e4f3ea15ce89f54e144b5d413e26f00220e201e5c9abf22be6196758f50813b46c6ce9e7e4cafda459e2f7368bfa1027065e1a2e6c0ad584148c4697492dbc5ffc1e0b5308084e8c53d6375a8db24b12ce9ebbbd94be461f421fefcac385ee80e9833517f160f27b93a0e2657bc5650267d7efd9bdcc5859a39470933dbcfb87af82d623aafb89ecd6a6063ccedc37517cd50de9332b942fd4ac37db875f6b8db8f9b88528e02682d23b9665fdab9d061066aa134955bcfe4b74a25fa709df7b223b6d44983088677a1832a4aa78d3bdc562b9d2ff842d0a3e3ac1fcb6a2ca1941081b36905a3430653ef0a3af946189648b867e6beda2bed0138b89389f7ef7e34a7bb6d60d80b58d6e00c5a1a62ed29617ecd6ec6521ab75195fb3ec2d4164a12dff9c413dd1cdc863bef22673b6b8dbd7f46085f07f9c388f86fe794cc8f9123ef43c8e045b353ad56045cf027614da7c47a41f5232cba7b27c402fdd54467c485e4e585ec1bbf04a05536fa745e138e96676ea7eb20cbfcc0ae3c38ffa46f0180c7c9c36fa8ed47235bb1da58978b06ff6d683604cddad3ad5f8371ad38eb4b2658d4bdb463426fde06eed0e89d07344c54bd7f33360a9fe336aa7fe1aa2029c9e29e9530197dd961a86acbbb36d8da7c0a234ffbfbd13f7423dc2b2391b9a0589a0f1cff8436c0a39abd8e73323cbb080d0dc98f4d60f74e8bc2046156ca4d65d3c8b1bfd98c2905ed8c4c12fbed4f2e3991c90aa65dc3cf5cbe4216419f92c889cd45cffd2d6d3fa28a82dd97423a5b101ca50eea1f0ab3aaf68b18f4be5845a6cf0bd0199e10fa52b828fc7ef37a5bb3bc64766e308680ee0c0d609e4c50678b5e90873892c4da25322d99d4213305fca1245c07c1964f2fdeacaaef965521a93d08b65db74a4d81da81d8f27fe90a22c2bdeef5a71569faa0dff5cf2481aa92ab950fa3a3a2a3fa0de8d0810c6ba39eecf49cdd82e8ed9a81189242e7f6e6e24f1a42b5eef843e5b5df340bb43b600f98dff9c0dc703416f9abb488f25ad7c1f88b1847acb151c310cd6ac230c23ce970fc5ce535a4fe8c07e8966efbfc2bf20fd009b90701f2004dacf4a4b187cfa787e6a422211db598a4e6bccad10970367f5d6391620cca5d5efece0182351caffff40daed8105386902ad4bf21fb9f18bedb43f6a42749400bbf72364c78a43750872be9be416f470aa0f938587ed9e6108201a14d85448c10f90e373d8da3f464c5e44a597ea0928c00d43be4b3387f25583bbc3dbb2d28a909c6db17b94313481cc71a9a962cf1fa7a7152f71b0f80dbc1a511446c8ea28f54ef0e687b1c81a4ff9c8e419f1568cbf8f104418c4c1709d2ed4c6bb371c3cf1f0888e54f1a7b6cdcbf6039b018ee51c683036048eb692da366d49e862138c0c488c79198515f736b1e2c44cd25cf7b153ff2e79592e489af59d3e05e18fd1813ac5004fa0064a60401191c09d48f0bfd5a6a0c28910400efb86a6be06630d0f39c73c854cf31db5b69980adbfd2c023e2f2313050602ea73586b7ff3b4cdda7d0a9984a4d6c5e6154661c1d5c9ee60c467a6fea7cdb4acdfc06ae7a82773845dc8c9251d02a3d63669c5a888edef8eec02713749d35ba3ffa8f6dd591a3264b7fdbf51c072a6d3fac651a539943292f7d8f0f1f652b3ac99cf55a49d1f69166a00030bdc94f687d9e5299cc54c6e3752b3043c19ead56d6e9718ca30191bb6fe1e6b7fdcc0c34798e45ba76a5a457e93fddc3c11dad8df9d49cc70db3cab0cc485b2cdc8da512f9dbbeb3414e943f70766b27682f742539f28731a402d86842acab14cd20d01d077bca5dea095694a68f43d1e706192cd02b20d37ebe0a26ad4499ddd78a44a363aa60c89e08a6af49fe8fedd868ca94e6359c090c1ef15b5ca3dcded135dc3b766b4f51b9bdb3c5fcaeba2136f3be31eb374ef1247c7c47ae77cba2460602a5ca05f2d370141be85a46bb2b008fac8829ac5772bf9c4b692cd01ebda7caf186a7ffdccaa4fae20484ade0e73973909d6e2d56cf0f46a15c0bb2443c285f2f66075031546f0c8dd36b97e80fda07a9cab3352f98120aab7555efd62068580d2725f00b1a3a2dd3c422736324ed03c736481153badd9987f12c944405b3904366b1342530782574df2b1bf91f362a3adb52426f40dbcc1bc40d92b3037a8a1592586aed1e47fb9dca68ff6bcdcb3009f9395e6148de27bfd726f67c0a5f9b837e28972ae43538d33b16b83d264b73773859ed5dc628c30bb1f405647fed67be7717eccc7608a77c32b31e1ef7e240448352e356dee01c15c453dbeb0ad99a9eff8621f32a6c7db075752b50e85ca6a9de8b0d208d50ffa92cc4262e61dfda42d7a69fcf4514474d83730079f36be8253ae8cd4eeea8ff9331c722c7ebec03a36e6272894032f1f49178c95669d52007c24ae7decc60bdf206e0c1710621272d544dd2dd5e04d4f9a123a2549777516cf5db5bd3f5db4d6b9477b2e0abaf58af5a858fc6ce9a82bf73fd000dbf0ad4f4cf1e4e8c7b5b4a8c1365f96cd97af6aa5792cc1d7a99c68d878baee022f4263222d76f177bc67c8f369b29f4fcf4181f17435af978e160b86182b600ddb522ba6005e5211c99a7f5d4f3730cf107d2da50bd594049f932c8d55af8e01b9c8f97a7de188298479e799b79aa1516190330ce9ef7dc2d6805eda38c3a3603c3bec957b6d09f9edbb8e99d807a71a53447f692b7189bc88a7939c0c4d936063808cd1ba2f60f07a230ec0654b42a33324510768c7ef734bf6c9f0dc961881c93b24ecc7da23580d54cc77bdb541564525839365cefa3f0bf99b023adc60746c187f6cbc5c47525d10843846cfbaeb29594a90a1adfbd8eda61845d12531acccc8cd1d19de5fbc0126aab91cc822002c036d924dfa3162013ab1ef4675934c154d5e80e5db58ba8e5571a5d0ee32a8d9302542b59566714b2ef2f8cad0fc506ac5f4711dc6f7485b0a036028baab25b3816313197b2db3b81bc0e30f3ff26efc4c6ea2ae39d586b19647f776760e1638258545dc0aa139b8beeebab5bb127a0d60bd32467023647d88d44a63bf6f65ba68d372b1169d5b4dcea97abbcc49eceb8be40a3a0a36cf52ac0406e3e4e215b1928e37d4189455771ea3c0d88a7085fa0005c53df3d4cdc2fd6e27a735fbd2faea5a108d51c707e23e1a9f6170639a383ed01236b9131984a8ea91957f864950422a3e662225beb8b5023a32f66f66d54d9825f9ed365b149dca907cac145942db92d9149ac941c0e656a4dc4d17ec7dcd8cd8d52ff62304d8d6f2228af79cb63c3d82bcf374d11fe4106868ad60a00d205735a01b7967d25deb4abff2f3cd20c7509434bcfcc74bbdbd3731bd53d9ca10d7f9d356aaa4fbc8132a4ca1f7c69af3e30946425d85a543ebad43e6f4755de58e67adec9c2dc4cc2a96b5b05c95b96ad85d825cc99334e805ffae509385156b2eabd49073988d01a25127bc2488e1824877873acd6b8f2d0e2f20683d5c565a74e496e3adf66ea34b9b2f0929db11725c30d17c6fc04dafb7f7275048d123a5131a560a1d69076e4948cbdcd9ead6753d3a20334a8f95811d0e0804cee162b81b12f948137b25ac589f998eaf896dbdde769b46f24775209b2699c5874bef9954e195d205d6be6dfc375bb4e4aac019f330242d9e7d1102b824ad9094d71165a8d7de7ca194e6d303c215e0969753362d3e6bc988bd751d4649251728c8e8a725a8ef4887aaa85ee2709a42e26239bbb7d3bf9848d032921233ac15acb58876ad48ffa09b6f5105dbb58ab37a118669a2eeef4fb3610e31b0d3db6ebb855c426cab615f573acfb950eff2446e6cd252047524f30fcd92606f5620aa0d5ff244bc97c0c06e94e90e4c3685061118c3cb08d74de1986c9c6141119e1b92fe48a4f688e912f61045f3cd42827458334e0cd7ea67227c03f8a315103afbe6f85ea8121da2d3be4ecad5b089a41cafec627b4b18945dd636f3658b7a4bcbedc60f2b6143c1064310b6675ca2bfad15755203000e4f7ac6dee6dedab20224233970ccd320cbf076cd45b9db11675a90b147d220f6066ca54e1009fd095c371c612a525c8364a7c658033ecb94c665ab64937d7195e965726bf158b537dcb9d15ec35c403559aa84ee5d7c9fb866e8a4c2da45d0da7d481d17bb2fbbd2eec1e43feb5c982a768f17f20d1f38620262a54597edd5f638a6d6882e80d08de1162270b3b4439d4bddec45874bd45967491f472b6036729c1729a2fdf6b7274317d29a76d5a3f8f2b77b0c62ae3ae02a2caf19f94302a52dc4bdbf4ddc107a6c2c948dc18fb4a718a2f3b2394d1ad72f1efc9eeba56594367478997271f7395ba7cd0cce6619af3a2f33fcbbd97ff57ace4ce4c56c7fa2e4ddb7be67e1f981f68673525d282b4b89c3a0ad5ca5ba563fd13ac1e2507305f99e7437c20bdaabd9d11aa8503e8cc640df43df1a634a1ed9d22f1289bf39ef188bfcf2ac57d7c8964c78c8cbc3d40bc7f4cd5a2b7dbb132eec4b00575d62b19cb4c3e0379c648bb090e3a6452367ca3c2c98fbbd5456dc66fd11d641e3c6b86940aeb13e9e93552803d5dcd11a4e929f5f6b5a1b258279334f88c1fae9ccccc6b5addcfee8d33bf3e5f6d2cb9ca0dd481f14b4ad5b6873d548e9406579df730594980ab2a5970a88c811b217ebf8614c7cf763513c3094a6958967d4dd7d19c2954b09eed0d5873ca14c7a07ec1ef28c71bc39337423db10b432ccf7e16aa37ca216282e4e958d496f41b087c3547a5f958bd64b4e81f5b298832c2fe2744187bed5bc77dfcc17d58e8f22a045d6356568e5b05a839269041013909839ec07287800a7cbd4f159c4769d669850b2903265633b8825d93d3d54a037cc4ca9c9ee2a3500c8ab867bcebd117a4a5e2dbeb123f9989a4130976f03e8c899c3e839ce7e64302b868d03c6032abf5f5241444140e4a11b552d63ebb79bd69cc7588e91afdc42143a3e29671d6001c540236d758c52ece4257d16199a33dce8d99cf5b4eda70a7109f6b40655ea5dba2c89d019362de81dd08af45b27229e7716a806ec2864e734c53268a6cc9000ab68cded8c9dd7b2029c70db15a4702b2abd0be90a842b4ae388ba0a7e0d1e152caf742e88c3cf8bcd22322ba57c5ff6307ef8b300aff4e048b6fb68542fc1c71ce1d9575e21cc2b2983986aa42ac2c8fb930cb0eed08074512931a7b56a73c8283e9e63c5497d642e95fec132a2aa017872f136dff555a0f6957e101248a0f2f1f71739cc86abe03fd0a1b7c98a4b0f4c67b28651edbadb569a176b9ecef778fbf64ada3cfdb8e5d77b94bf66bde0cfe0f7a7eeb9963ead5b2a463406ee201da2dd31e8105142faaa5a7c0c42eaffdd7f0ba02b328c30e521e4632934f604ff55cf7c9e99d219418291e4897889259a4d0b26d43f8faebf9685abd0c24ec5a3407979a7a13612a360b9188b364010e9af1ac034d2be0c2ed7db7d6f01acafde4ecbf45d45533ebef1804461e917d162b00ce96fafadd969690fef8fa017dc3a430e0d8cf2b704c97925c52cea473d275454fc1f81439cf12b9c4e2e4e06f38d38092b191a6a88a6629abcd1be9e4652db763952faf9b7b04ffe2f973501d1f7b015a621ea0bc42421616748d17536ec1c881d7bb92f1098553d0ab7da1efe0c24fece4cc08d277bb9cfc1a3a7bc1abeacbefc3c4cf1305fd2a1b1ff5bc9dba23956ac5f31d213785c7f2e1a64fb2e92ede39372945e49bd899cdeec68a83c565452e5ec54882784ee57a6aac84bee6517ad077b5abba5dbaa0f2aa50b4561d452d36c9c2483e0336fe3c23911855703233ecd34f3a748387b23c871396e40ae09938a03c515d3e20ba6aeb52c098dc74c4de5bd88cc810c9bc82312b900a9fa5e9a02b0bd6ec80aff7445cb61e7365cfa9eb0210e9eab43ab6fb502a97787298f1630f3112e9bddba503bcb46298ee773831ec144e5c7d385f65df50c138381413f656bf441d7a1ce938d9fe48e9200073eb225e3bbe0bba668179956467599a971c36a465e8124a5eddff68757d58a50c53686705721e770ab8dc1231d490a7e810b256d36868a4eb3792826423ca3d8e9c71daaaa863dfb7f26c9086e8365ad9e14cb61767c69153f794676d9d59058fcb3d965353a038674cc0709ae035e7730a46877753d1524cb87f9c8d0614872db224cad0780ff52803cd6f76f4b4c0b7f8b6b85c37c8ce530ad91d45b29357ca7b807362140a6a48c7470ca2d32f01bbff9c54fa9a0a5501f1eaa8a3e17b053c818db5c3592bd873a90945fb1aa7b989ff62da4cdf6e2981a7c6e4ed65574f9b4e610581768ba5e0af7c1eb88c10797056ac20a576aaedbd1c0a9fcc27cfb9fa9e2a3fac5cf091edaf7fd96fbf4304a65912e0cf115d2d921984cb1a0c9664841949ea94ec5c011d942f4a0da682fed13d49bfe34eb04b1c7b087998a44614b63ecdac133481a2bf9629cc700de91e845254d5aa2111ff175bdb318aa0746c3c5e602ed8602489ac9044e46bcf17b2cbbc870b9c5cc50050a7aa2472e347f950d69b49280e4c0becb51f04ca56c940f78b0c8b01c40507563b63e952c187e0858838963a5a4ac8653c8ba98d124b28673d244ae07376073be210a71b265f1a828d74ad651505ff8745cd7a498fd5b6ca5fcb301bbf8ed23f22212ed32397e1a37eafee5966fdb51602b9e142c5300b73a1861ab4d028607b0c25b8706a1615d61d2e431d3d55b01b33dfe147f4d3abbd4bb96c54e6d5c160f3cffcd339e0aa2e9c13843333003ad2e26e729e6f6f8a7cefc5cc7c94b520a9f9f81acc6564cf6eee6df4fcf95e0947601ab033ff2de7b8843c69260910be4f19b01280cb580c7e7abc91a1136b376e42ca55fbc7524c46d70905f2068ce51ccb723c3c706085820d265863f4052d29a850aac1fd2700a413c38024b5b6ae7618b7446f30faeb85e3c26e18c4b264c4dd1ba9ebea078bb88e79191ec115cda3881a4b103fa836215fe3d40c30586d40cc163ea33747dd1df94ea0c0b5782c100d09434e13200928136e3edc0d88fb5f1b1ac184401f60bfb32af542f7daf1338ad18e3645ff6c4995adc8d425f8a7b2e6d220f4030bf03974f21b395f8aee2cf07b21ebce1f5c9066259251486cda3a07e801979520f3b20051c2ec708580f4be46cc51d847206220a27a082e51ea9ebdd0dca92eeaffca7823b9a22b015b2cb10bc457e7eaa4642cb22ac403dc551bdd6ae8ee6fd58967311ff7c5331c0955fce762837f5c0187f919157bb3face87c2d0c4b9555adc8b90457392e425cce83c3c47296b1e4850d94bcb927902be8bec8b7d8e6cf21d8dbea72793f03821d873d1011d87b64c0ea140215f227524e4ffaf34e2182217b57a71935bca3b049fd1d3624d6387aa8d74c6693f30abbb9227cdd09409af31bfd432bc54f6b17a5706d6e3497bbd20258a5208d5de78f03fc6d4424ad7cc6b79a2f9bf30f7e1cfbf4eb573f4ff4472c7425f1487f65d63f9778404cb2769c6e1b2afb73b60dc793a3a800ae0ddf09438efcba77fe7a31bac6dac95d2aecf7906ef06f2af47998fec3f5eda187f852667723e6fc963bb260f2a2624d5f7389d219b3499e3cef6817f98af5454859a837d5ef98903417d1641c1e8c79397086ee40895b06dd418ca6fa50bd680ec260dc562123c2c6e0311675682163351f50c2fcf7c65cea2ee4a08bbddfa33e756c71a7effb2d5582a1e0da5ed65a47acfd8487911bf5e0add19703baa9d527c0c6cda64b35227dacceb5a52721d2e2ec4f6ce6627b68975e7dd7803c090d64eb5ae1ef19ca12769ed6a2ec1899094e4c5917131c8e82950789f4ac50a9d6b3a420761a5476489ad94f69c3ffa1f73cae8def96e2731e05d443fd4cfde6a54309eadff8bfe0bde2e3f9f7738f80a7d6f4087b4d37874e9b0092275497cc1f9d6dc34b0dea199ebc14a22dcb4c48c042c6e0e2feee960b507cefce76bf0774661f44f18b95a498a72179762c498d2156155e36d94ba233e2880a05777a1cf33013f00f3dcf9f35d82c1a40f72448170403fc82c5a0979633679530635ce0d55b0b03ab9b991ca7053bb6c37a79907a96f123dcfcac58af65a83c4c5c4a98300e611076e260fbcd9233b9715b2fa76338b1b5f8990b947168bddecd8a714014cc41f2175fca94a74903a2d1c9fd1c014d6d660078505e8844f5566e384a0a7de5a4471d6c8b93682166380955de36a63aeb7ba31e96bd9b4d4c6086bde2db3844291b9b5be9d725e077868eca115affcaf30a3bd94379f01bcf2852be7001098287f7b9ca8bbddf189f74e3aee203e67da7b008aaae8ea12f2103c5d15a1903c8d9d2232784dbfaff1b274ab5dcae0577f9dc139e2fe16c64c67413d8f61fc9879b1b6e584d2539004a7988241aa9d6ac74057fdc315e0b85d568ad6d92821d2e65035736409f9f5bea3b63cf7b292c7c1a7d0a14c241c71b08fb579f8b9e9678196057c871e19e72797d87249cc3f207cc33aaf66badbdce34f178cc5d7b9fb1806b66a92c51e56682613e195654f757bb3349e74bd6335b8d4ea1fbe56a9712988865c9a77b7f394e919a6490351755516214198ed9e0db362d697798930a98565e6d38f0111187665e4e91fa9ed3123065f59e42c83170a76a6605219c1bfae3076abf66020af86391579fa2bd48bd1fc456f8980464c6acfdafcd66cf932cdd8ffce47a4f5bad7da7c542db29420ff42a64f2a063dac4e904049910f1927a35ba5234703069b8ea06aae80668f755dd2108bd0dd6f3828576a8c12dc9b69ef831cf81c295acc4ea52ffad856c9844faf236fd78721f82655705bdc0137a6f1b1754296f2213ce3a2799e6a4048b9137ae6b7b64ad26d7da23f5091ad70da347f846cf76224d034e8ba1752565c2252bd6501cfe2cd298385a21c6a9da6126b0d94a9eb6c0940eb54f87635bc3925b380cdbea7eb32eb1cac9a636b80722ae3d27d5e52216ffcec226fd87d15437341b5c5672d0a4c595cf0a5e0a7fa91747212f1055f93b737b22f1780a97bd68d84d602d60a10749f80dd6c365caec519c02992d44854ed5a0591a2b9f77208a4b7e623dcecd7cca04cbfa94ebbf13409fbe7bb57290d6c82fd031043097ac60f1c1d4f76b07ff9e60221618456b956398c0430098e285165d0a1c5ff1d071f12b71f7052f99b9dced005a5d125cacdf5fd1800f25045457b458c0d525629ff0813ce29faab21b78e01cd7feb5c3c3cf2efa0c467c8e1a7a422774558213c5585679a2030b2b4d2e654c59d9091ad6e86f6537b02701ab0b2b6397a600c1e0fd6786c09b60c87930ef0ea2a9deed948970524841a157a74e47ac891fc549e32fcb817250bdc0cc1fbebc348e9bf900c64a498a0756c6359bf0b356e6391722ca1cc0ec91255292049d7846c9df1b4997458d85207c98b4b6a0eff90ceaf06ba7f8b6ec04b1afb962385adbd1dca01de98d20020a94146cd08d122ddf53710985ecbec4b0b226c7bd9bb5c66f98b5b05693f383bfa7dff2d07083caabc0db091efe11351562f6a90c909c76341ca989b19348788f7494e37b533bc8d16a930badd8afcf29cbc63787aadcb2edef2db73f7353b8eaa4d0b00fb7f7a77fd0c66ae59a4e9b6257407f8e7eabb2ffa3be95de412b29bc624c5c073cfa7860011c412246e26ca66c6db5ecbb7d8b1007ec22ed7c11cf98ae5f08c54c8f6df54d40afcca1f93847e244e956037c192158ac045d99f6d9b3e2f17f867509e6efabf28b149525137ba1ac48d6f88bc2a3c424b193a4f9d5155d749bb2835369b6698fdae636b31ba4f108dc13408eb0ce5c5f819ee4129c8590025fd91c7299dbac438cbb3f92028a98ca12a5bcc2fa98a902719b7f46bc8254b1468bd674ec9ac1ea60058c32ad3b1b84dd855a2dc6aa48fe978c8cea9096ec83243426461a8ac3002b374b10ee7ce58971cbddfee664a565bf30d2e4f426f82b35c3e214354616fd2206334e5a1d59a32d4b31a8c9a9666f7de1643cd802261220cfc3260874d9f6bb54b7e9e128fb3cc559458b6d9300d77a36151486110a80a902fafcf03e9d835063de5d1fad13b42b41ca0b094a5a65fd70f34fbc8647a10ed6cd462102913274f6d3e58034ac9ef32688b4280ae618b4f4856a3c1a0f35c44350e056262b2358de20balibzypp.so.1722rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlibzypp-17.31.2-150200.45.1.src.rpmlibzypp-devellibzypp-devel(ppc-64)pkgconfig(libzypp)yast2-packagemanager-devel@     /usr/bin/pkg-configbzip2glibc-devellibboost_headers-devellibboost_program_options-devellibboost_test-devellibboost_thread-devellibcurl-devellibsolv-devellibstdc++-devellibudev-devellibxml2-devellibzypppkgconfig(openssl)popt-develrpm-develrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)zlib-devel7.19.40.7.2217.31.24.43.0.4-14.6.0-14.0-15.2-14.14.1c=qc@b֜b'bbb=b8hb/.@bs@b[@a aNaadaa@amaaZaD@a2@a.a#```!@`N@`e@`6?`-@_@__@_@_@_}_m_d@_H_A@_ @^@^^@^V@^@^{G^t@^\@^O@^=Q@^)^%@]f@]@]7@]@]߶])]@]@]H@]9\"\\N\@\|\s\R@\8@\@\U@[@[@[@[@[[ @[[h@[[@[{[v[dC[P}@[O+[CN@[0@Z@ZUZ@Z@Z@Z ZtRZ\ZN@Z'Z%8ZOZ@ZZ@YY@YY@Y@Y4YY@Y@Y@YqYm@YlYf@YV=@Y.@YYR@Y@X@X@X@XXXX~@X@X@XpXXQ4@W@W@W$Wڍ@WҤ@W@W@WW~W~W{@Wm Wi,@WaC@W^@WV@WT@W5W!@W!@WW@WVVV@VaVՄ@VŲ@V=@V=@VT@V@VvVVS@V{@VjVii@V`.VQ@VMVMVI@VD@V?9@V<@V<@V;DV;DV8V8V*!@V(V#V@VCVO@VZV @V @Vf@V }@V +V7@U@U@U@UUe@Ue@UpUU@U@UU@U{@ŬŬUUȒ@U@U@UUUnU@UUUVUb@Uy@U'U@U3@U@UzUyx@Up=Un@Ug@Ua@Ua@UY@US$U8U7@U/@U/@U @UU.@TT@T@TܕTء@TOT[@T@T T@TT@TT@TeTq@T6T@T@TTp@TT5TTw@Ta@T_W@TVTN3T?@T>ama@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dechristophe@krop.frma@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.debzeller@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dedimstar@opensuse.orgma@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.de- Resolver: Fix missing --[no]-recommends initialization in update (fixes #openSUSE/zypper#459, bsc#1201972) - Log ONLY_NAMESPACE_RECOMMENDED because this is what corresponds to --[no]-recommends. - version 17.31.2 (22)- UsrEtc: Store logrotate files in %{_distconfdir} if defined (fixes #402) - Log backtrace on SIGABRT too. - Need to explicitly enable building experimental code. Otherwise an old Notcurses++ package which happens to be present in the buildenv breaks the build (fixes #412). - Work around libyui/libyui#78 on code 15.4 and older. - Stop using std::*ary_function; deprecated and removed in c++17. - Don't expose header files which use types not available in c++11. In 15.3 and older, YAST and PK compile with -std=c++11. - Remove no longer needed %post code (bsc#1203649) - Enable zck support for SLE15-SP4 and newer. On Leap it is enabled since 15.1 (bsc#1189282) - version 17.31.1 (22)- Add PoolItem::statusReinit to reset the status it's initial state in the ResPool (might help bsc#1199895) This may either be 'KEEP_STATE bySOLVER' or 'LOCKED byUSER' if the PoolItem matched a hard lock defined in /etc/zypp/locks. - Fix building with GCC 13 on i586 (fixes #407, fixes #396) - Be prepared to receive exceptions from curl_easy_cleanup (bsc#1201092) - Don't auto-flag kernel-firmware as 'reboot-needed' (bsc#1200993) - Remove Medianetwork and dependend code. This commit removes the MediaNetwork tech preview and all related code. First reason for this is that MediaNetwork was just meant as a way to test the new CURL based downloader and second: since the Provide API is going to completely replace the current media backend it would be extra work to ensure that changes on the Downloader do not break MediaNetwork. - version 17.31.0 (22)- Fix building with GCC 12.x release (#396) - version 17.30.3 (22)- appdata plugin: Pass path to the repodata/ directory inside the cache (bsc#1197684) - zypp-rpm: flush rpm script output buffer before sending endOfScriptTag. - version 17.30.2 (22)- PluginRepoverification: initial version hooked into repo::Downloader and repo refresh. - Immediately start monitoring the download.transfer_timeout. Do not wait until the first data arrived. (bsc#1199042) - singletrans: no dry-run commit if doing just download-only. - Work around cases where sat repo.start points to an invalid solvable. May happen if (wrong arch) solvables were removed at the beginning of the repo. - fix misplaced #endif SINGLE_RPMTRANS_AS_DEFAULT_FOR_ZYPPER (fixes #388) - version 17.30.1 (22)- ZConfig: Update solver settings if target changes (bsc#1196368) - version 17.30.0 (22)- Fix possible hang in singletrans mode (bsc#1197134) - Do 2 retries if mount is still busy. - version 17.29.7 (22)- Fix package signature check (bsc#1184501) Pay attention that header and payload are secured by a valid signature and report more detailed which signature is missing. - Retry umount if device is busy (bsc#1196061, closes #381) A previously released ISO image may need a bit more time to release it's loop device. So we wait a bit and retry. - Fix serializing/deserializing type mismatch in zypp-rpm protocol (bsc#1196925) - Fix handling of ISO media in releaseAll (bsc#1196061) - Hint on common ptf resolver conflicts (bsc#1194848) - version 17.29.6 (22)- Hint on ptf<>patch resolver conflicts (bsc#1194848) - version 17.29.5 (22)- Fix handling of redirected command in-/output (bsc#1195326) This fixes delays at the end of zypper operations, where zypper unintentionally waits for appdata plugin scripts to complete. - version 17.29.4 (22)- Public header files on older distros must use c++11 (bsc#1194597) - Fix exception handling when reading or writing credentials (bsc#1194898) - version 17.29.3 (22)- Fix Legacy include (bsc#1194597) - version 17.29.2 (22)- Fix broken install path for parser compat headers (fixes #372, bsc#1194597) - RepoManager: remember exec errors in exception history (bsc#1193007) - version 17.29.1 (22)- Use the default zypp.conf settings if no zypp.conf exists (bsc#1193488) - Fix wrong encoding of iso: URL components (bsc#954813) - Handle armv8l as armv7hl compatible userland. - Introduce zypp-curl a sublibrary for CURL related code. - zypp-rpm: Increase rpm loglevel if ZYPP_RPM_DEBUG is set. - Save all signatures associated with a public key in its PublicKeyData. - version 17.29.0 (22)- Disable logger in the child after fork (bsc#1192436) - version 17.28.8 (22)- Check log writer before accessing it (fixes #355, bsc#1192337) - Save locks: Update an existing locks changed comment string. - Allow uname-r format in purge kernels keepspec (fixes openSUSE/zypper#418) - version 17.28.7 (22)- Zypper should keep cached files if transaction is aborted (bsc#1190356) Singletrans mode currently does not keep files around if the transaction is aborted. This patch fixes the problem. - Require a minimum number of mirrors for multicurl (bsc#1191609) - Use procfs to detect nr of open fd's if rlimit is too high (bsc#1191324) Especially in a VM iterating over all possible fd's to close open ones right before a exec() slows down zypper unnecessarily. This patch uses /proc/self/fd to iterate over open fd's in case rlimit is above 1024. - po: Fix some lost '%' signs in positional args (bsc#1191370) - RepoManager: Don't probe for plaindir repo if URL schema is plugin: (bsc#1191286) - version 17.28.6 (22)- Downloader does not respect checkExistsOnly flag (bsc#1190712) A missing check causes zyppng::Downloader to always download full files even if the checkExistsOnly flag is set. This patch adds the missing logic. - Fix kernel-*-livepatch removal in purge-kernels (bsc#1190815) The kernel-*-livepatch packages are supposed to serve as a stable handle for the ephemeral kernel livepatch packages. See FATE#320268 for details. As part of the kernel live patching ecosystem, kernel-*-livepatch packages should not block the purge-kernels step. - version 17.28.5 (22)- Make sure to keep states alives while transitioning (bsc#1190199) - May set techpreview variables for testing in /etc/zypp/zypp.conf. If environment variables are unhandy one may enable the desired techpreview in zypp.conf as well: [main] techpreview.ZYPP_SINGLE_RPMTRANS=1 techpreview.ZYPP_MEDIANETWORK=1 - version 17.28.4 (22)- CMake/spec: Add option to force SINGLE_RPMTRANS as default for zypper (fixes #340) - Make sure singleTrans is zypper-only for now. - Do not double check signatures and keys (bsc#1190059) - version 17.28.3 (22)- Workaround Bug 1189788: Don't allow ZYPP_SINGLE_RPMTRANS=1 on a not UsrMerged Tumbleweed system. - version 17.28.2 (22)- Fix crashes in logging code when shutting down (bsc#1189031) - version 17.28.1 (22)- Rephrase vendor conflict message in case 2 packages are involved (bsc#1187760) This covers the case where not the packages itself would change its vendor, but replaces a package from a different vendor. - Fix solver jobs for PTFs (bsc#1186503) - spec: switch to pkgconfig(openssl) - Show key fpr from signature when signature check fails (bsc#1187224) Rpm by default only shows the short key ID when checking the signature of a package fails. This patch reads the signatures from the RPM headers and replaces she short IDs with the key fingerprints fetched from the signatures. - Implement alternative single transaction commit strategy. This patch adds a experimental commit strategy that runs all operations in a single rpm transaction, speeding up the execution a lot. - Use ZYPP_MEDIANETWORK=1 to enable the experimental new media backend. - Implement zchunk download, refactor Downloader backend. - Fix purge-kernels fails with kernels from Kernel:HEAD (bsc#1187738) There recently was a change in the kernel package naming scheme in regards to rc kernels. Since kernel upstream uses characters in the version that are not allowed in rpm versions a "-rc" was previously replaced with ".rc" which broke sorting by version, to fix this issue it was replaced with "~rc", which unfortunately broke the purge-kernels logic. This patch makes sure purge-kernel does apply the same conversion. - version 17.28.0 (22)- Enhance XML output of repo GPG options (fixes openSUSE/zypper#390) In addition to the effective values, add optional attributes showing the raw values actually present in the .repo file. (raw_gpgcheck, raw_repo_gpgcheck, raw_pkg_gpgcheck) - Link all executables with -pie (bsc#1186447) - Ship an empty /etc/zypp/needreboot per default (fixes #311, jsc#PM-2645) If packages want to trigger the reboot-needed hiint upon installation they may provide 'installhint(reboot-needed)'. Builtin packages triggering the hint without the provides are only kernel and kernel-firmware related. - Add Solvable::isBlacklisted as superset of retracted and ptf packages (bsc#1186503) - Fix segv if ZYPP_FULLOG is set (fixes #317) - version 17.27.0 (22)- Work around download.o.o broken https redirects. - Allow trusted repos to add additional signing keys (bsc#1184326) Repositories signed with a trusted gpg key may import additional package signing keys. This is needed if different keys were used to sign the the packages shipped by the repository. - MediaCurl: Fix logging of redirects. - Use 15.3 resolver problem and solution texts on all distros. - $ZYPP_LOCK_TIMEOUT: Let negative values wait forever for the zypp lock (bsc#1184399) Helps boot time services like 'zypper purge-kernels' to wait for the zypp lock until other services using zypper have completed. - Fix purge-kernels is broken in Leap 15.3 (bsc#1185325) Leap 15.3 introduces a new kernel package called kernel-flavour-extra, which contain kmp's. Currently kmp's are detected by name ".*-kmp(-.*)?" but this does not work which those new packages. This patch fixes the problem by checking packages for kmod(*) and ksym(*) provides and only falls back to name checking if the package in question does not provide one of those. - Introduce zypp-runpurge, a tool to run purge-kernels on testcases. - version 17.26.0 (22)- Properly handle permission denied when providing optional files (bsc#1185239) - Fix service detection with cgroupv2 (bsc#1184997) - version 17.25.10 (22)- Add missing includes for GCC 11 (bsc#1181874) - Fix unsafe usage of static in media verifier. - Solver: Avoid segfault if no system is loaded (bsc#1183628) - MediaVerifier: Relax media set verification in case of a single not-volatile medium (bsc#1180851) - Do no cleanup in custom cache dirs (bsc#1182936) - ZConfig: let pubkeyCachePath follow repoCachePath. - version 17.25.9 (22)- Try to provide a mounted /proc in --root installs (bsc#1181328) Some systemd tools require /proc to be mounted and fail if it's not there. - Enable release packages to request a releaxed suse/opensuse vendorcheck in dup when migrating. (bsc#1182629) - version 17.25.8 (22)- Patch: Identify well-known category names (bsc#1179847) This allows to use the RH and SUSE patch categrory names synonymously: (recommendedi = bugfix) and (optional = feature = enhancement). - Add missing includes for GCC 11 compatibility. (bsc#1181874) - Fix %posttrans script execution (fixes #265) The scripts are execuable. No need to call them through 'sh -c'. - Commit: Fix rpmdb compat symlink in case rpm got removed. - Repo: Allow multiple baseurls specified on one line (fixes #285) - Regex: Fix memory leak and undefined behavior. - Add rpm buildrequires for test suite (fixes #279) - Use rpmdb2solv new -D switch to tell the location ob the rpmdatabase to use. - BuildRequires: libsolv-devel >= 0.7.17. - version 17.25.7 (22)- Rephrase solver problem descriptions (jsc#SLE-8482) - Adapt to changed gpg2/libgpgme behavior (bsc#1180721) - Multicurl backend breaks with with unknown filesize (fixes #277) - version 17.25.6 (22)- Fix lsof monitoring (bsc#1179909) - version 17.25.5 (22)- Prevent librpmDb iterator from accidentally creating an empty rpmdb in / (repoened bsc#1178910) - Fix update of gpg keys with elongated expire date (bsc#1179222) - needreboot: remove udev from the list (bsc#1179083) - Prefer /run over /var/run. - version 17.25.4 (22)- RepoManager: Carefully tidy up the caches. Remove non-directory entries. (bsc#1178966) - RpmDb: If no database exists use the _dbpath configured in rpm. Still makes sure a compat symlink at /var/lib/rpm exists in case the configures _dbpath is elsewhere. (bsc#1178910) - Url: Hide known password entries when writing the query part (bsc#1050625 bsc#1177583, CVE-2017-9271) - adapt testcase to change introduced by libsolv#402. - RepoManager: Force refresh if repo url has changed (bsc#1174016) - RepoInfo: ignore legacy type= in a .repo file and let RepoManager probe (bsc#1177427, Fixes openSUSE/zypper#357). - version 17.25.3 (22)- Bump version to force rebuild against a fixed libsolv. (bsc#1177238, bsc#1177275) - version 17.25.2 (22)- Fix bsc#1176902: When kernel-rt has been installed, the purge-kernels service fails during boot. - Use package name provides as group key in purge-kernel (bsc#1176740 bsc#1176192) kernel-default-base has new packaging, where the kernel uname -r does not reflect the full package version anymore. This patch adds additional logic to use the most generic/shortest edition each package provides with %{packagename}= to group the kernel packages instead of the rpm versions. This also changes how the keep-spec for specific versions is applied, instead of matching the package versions, each of the package name provides will be matched. - version 17.25.1 (22)- RepoInfo: Return the type of the local metadata cache as fallback (bsc#1176435) - VendorAttr: Fix broken "suse,opensuse" equivalence handling. Enhance API and testcases. (bsc#1174918) - Update docs regarding 'opensuse' namepace matching. - New solver testcase format. - Link against libzsd to close libsolvs open references (as we link statically) - BuildRequires: libsolv-devel >= 0.7.15. - version 17.25.0 (22)- VendorAttr: Const-correct API and let Target provide its settings (bsc#1174918) - Support buildnr with commit hash in purge-kernels (bsc#1175342) This adds special behaviour for when a kernel version has the rebuild counter before the kernel commit hash. - Improve Italian traslation of the "breaking dependencies" message (bsc#1173529) - Make sure reading from lsof does not block forever (bsc#1174240) - Just collect details for the signatures found (fixes #229) - version 17.24.2 (22)- Fix bsc#1174011 auth=basic ignored in some cases (bsc#1174011) Proactively send credentials if the URL specifes '?auth=basic' and a username. - ZYPP_MEDIA_CURL_DEBUG: Strip credentials in header log (bsc#1174011) - version 17.24.1 (22)- Completey rework the purge-kernels algorithm (fix bsc#1173106) The new code is closer to the original perl script, grouping the packages by name before applying the keep spec. - Set ZYPP_RPM_DEBUG=1 to capture verbose rpm command output (implements #228) - version 17.24.0 (22)- Fix core dump with corrupted history file (bsc#1170801) - version 17.23.8 (22)- Enable zchunk metadata download if libsolv supports it. - version 17.23.7 (22)- Revert "Enable zchunk on SLE-15-SP2". - version 17.23.6 (22)- Enable zchunk on SLE-15-SP2. - Older kernel-devel packages are not properly purged (bsc#1171224) - doc: enhance service plugin example. - version 17.23.5 (22)- Get retracted patch status from updateinfo data (jsc#SLE-8770) libsolv injects the indicator provides into packages only. - remove 'using namespace std;' (bsc#1166610, fixes #218) - Online doc: add 'Hardware (modalias) dependencies' page (fixes #216) - version 17.23.4 (22)- Add HistoryLogReader actionFilter to parse only specific HistoryActionIDs. - version 17.23.3 (22)- RepoVariables: Add safe guard in case the caller does not own a zypp instance. - Enable c++17. Define libyzpp CXX_STANDARD in ZyppCommon.cmake. - version 17.23.2 (22)- Fix package status computation regarding unneeded, orphaned, recommended and suggested packages (broken in 17.23.0) (bsc#1165476) - version 17.23.1 (22)- Log patch status changes to history (jsc#SLE-5116) - Allow to disable all WebServer dependent tests when building. OBS wants to be able to get rid of the nginx/FastCGI-devel build requirement. Use 'rpmbuild --without mediabackend_tests' or 'cmake -DDISABLE_MEDIABACKEND_TESTS=1'. - version 17.23.0 (22)- update translations - Replace mongoose/webrick with nginx in test suite. This patch makes use of nginx to replace the current WebServer mongoose implementation. Also adds support for registering callback functions for certain URL requests via FCGI, making it possible to mock HTTP responses and test more complex HTTP setups. - boost: Fix deprecated auto_unit_test.hpp includes. - Disable zchunk on Leap-15.0 and SLE15-* while there is no libzck. - Fix decision whether to download ZCHUNK files. libzypp and libsolv must both be able to read the format. - version 17.22.1 (22)- yum::Downloader: Prefer zchunk compressed metadata if libvsolv supports it. - BuildRequires: libsolv-devel >= 0.7.11. - version 17.22.0 (22)- Selectable: Fix highestAvailableVersionObj if only retracted packages are available. Avoid using retracted items as candidate (jsc#SLE-8770) - version 17.21.0 (20)- BuildRequires: libsolv-devel >= 0.7.10. - RpmDb: Become rpmdb backend independent (jsc#SLE-7272) - RpmDb: Close API offering a custom rpmdb path It's actually not needed and for this to work also libsolv needs to support it. You can sill use a librpmDb::db_const_iterator to access a database at a custom location (ro). - Remove legacy rpmV3database conversion code. - version 17.20.0 (20)- MediaCurl: assert cookie file has mode 0600 (bsc#1158763, CVE-2019-18900) - version 17.19.0 (12)- dup: fix removing orphaned packages dropped by to-be-installed products (bsc#1155819) - version 17.18.1 (12)- Resolver: add solution actions for SOLVER_SOLUTION_BLACK (retracted/PTF) - Solvable: add isRetracted and isPtf attributes. - version 17.18.0 (12)- Introduce PurgeKernels class (bsc#1155198) Adds libzypp API to mark all obsolete kernels according to the existing purge-kernel script rules. - Add solver jobs for retracted packages and ptfs. Support for ptf packages and retract ed patches. - Do not enforce 'en' being in RequestedLocales (bsc#1155678) If the user decides to have a system without explicit language support he may do so. - Pass correct posttrans script argument (fixes #190) - BuildRequires: libsolv-devel >= 0.7.8. - version 17.17.0 (12)- Expose new libsolv API via C++ counterparts (openSUSE/zypper#214) - BuildRequires: libsolv-devel >= 0.7.7 - version 17.16.0 (12)- Fix empty metalink downloads if filesize is unknown (bsc#1153557) - Recognize riscv64 as architecture - Fix installation of new header file (fixes #185) - zypp.conf: Introduce `solver.focus` to define the resolvers general attitude when resolving jobs. (bsc#1146415) - New container detection algorithm for zypper ps (bsc#1146947) - version 17.15.0 (12)- Revert "Use CURL_HTTP_VERSION_2TLS if available" (bsc#1146027) - doc: add service example using variables - Fix build with rpm >= 4.15 (fixes #172) - version 17.14.1 (12)- PublicKey::algoName: supply key algorithm and length - version 17.14.0 (12)- MediaCurl: Fix leaking filedescriptors (bsc#1116995) - commit: Run file conflict check on dry-run (best with download-only) (bsc#1140039) - commit: do not remove orphan products if the .prod file is owned by a package (bsc#1139795) - version 17.13.0 (12)- Drop unused InterProcessMutex class and test - Drop unused WebpinResult class and test - Give posttrans script a parameter of 0 (issue #168) - Use CURL_HTTP_VERSION_2TLS if available (fixes #141) - version 17.12.0 (12)- Enhance scanning /sys for modaliases (bsc#1130161) - version 17.11.4 (9)- Prevent SEGV if the application sets an empty TextLocale (bsc#1127026)- Fix build with CMake >= 3.14.0: Starting with CMake 3.14, EXCLUDE_FROM_ALL now spreads from directories to targets. 'make -C someSubdir' when 'someSubdir' uses the 'EXCLUDE_FROM_ALL' keyword does nothing. (gh/libzypp#libzypp#165)- KeyManager: Work around bsc#1127220 [libgpgme] no error upon incomplete import due to signal received. - MediaCurl: add hint to check SCC for an expired regcode on http error 403 (bsc#965786) - version 17.11.3 (9)- Correctly handle exceptions when verifying the medium (bsc#1065022) - Only write type field when probing (bsc#1114908) - Don't blame user on TargetAbortedException (bsc#978193) - version 17.11.2 (9)- CheckAccessDeleted: Suppress reporting `/memfd:` pseudo files (bsc#1123843) - MediaCurl: improve reporting https->http redirection errors - Prevent SEGV if the application sets an empty TextLocale - Url: don't force printing an empty authority if the schema does not allow authority at all - Try to the missing rpmDB compat symlink in case the rpm package got deleted (bsc#1122471) - version 17.11.1 (9)- PoolItemBest: Optionally prefer not locked packages (for bsc#1113296) - ui::Selectable: add `hasLocks` to indicate a partially locked item (for bsc#1113296) - version 17.11.0 (9)- Simplify complex locks so zypper can display them (bsc#1112911) - version 17.10.3 (9)- commit: set `SYSTEMD_OFFLINE=1` during chrooted commits (bsc#1118758) - no-recommends: Nevertheless consider resolver namespaces (hardware, language,..supporting packages) (FATE#325513) - BuildRequires: libsolv-devel >= 0.7.2 (SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED) - Remove world-readable bit from /var/log/zypp (bsc#1099019) - version 17.10.2 (9)- Adapt to changes in upcoming Boost 1.69.0 - Do not fail service-refresh on a empty repoindex.xml (bnc#1116840) - version 17.10.1 (9)- str: recognize 'always' and 'never' as valid boolean strings - Fix needreboot code to use SolvableSpec parser (fate#326451) - SolvableSpec: Define a set of Solvables by ident and provides - version 17.10.0 (9)- Provide needreboot config files in /etc/zypp (fate#326451, fixes #140) - Need to fix soname due to libsolv ABI changes (bsc#1115341) - version 17.9.0 (9)- Adapt to changed type names in libsolv-0.7 - Package needreboot file (fate#326451) - Fix definitions of gettext macros (fixes #135) - version 17.8.1 (2)- Add infrastructure to flag specific packages to trigger a reboot needed hint (fate#326451) - Adapt to libsolv: Drop support for REPOKEY_TYPE_U32 - Resolver: add setInr to request solving namespaces - ResolverNamespace: add No/AllResolverNamespaces constants - version 17.8.0 (2)- Fix blocking wait for finished child process (bsc#1109877) - version 17.7.2 (2)- Fix conversion of string and glob to regex when compiling queries (bsc#1099982, bsc#939392, bsc#556664) - version 17.7.1 (2)- Drop type application due to poor metadata support (bsc#1100095, bsc#1104415) - version 17.7.0 (2)- Automatically fetch repository signing key from gpgkey url (bsc#1088037) - lsof: use '-K i' if lsof supports it (bsc#1099847,bsc#1036304) - version 17.6.4 (2)- Check for not imported keys after multi key import from rpmdb (bsc#1096217) - version 17.6.3 (2)- fixup! Add filesize check for downloads with known size (bsc#408814) Fix detetction of metalink downloads and prevent aborting if a metalink file is larger than the expected data file. - version 17.6.2 (2)- Adapt to changes in libgpgme11-11.1.0 breaking the signature verification (bsc#1100427) - Use %license (bsc#1082318) - BuildRequires: libsolv-devel >= 0.6.35 (for bsc#1100095) - changes: add CVE numbers - version 17.6.1 (2)- RepoInfo::provideKey: add report telling where we look for missing keys. - Support listing gpgkey URLs in repo files (bsc#1088037) - Add new report to request user approval for importing a package key - Handle http error 502 Bad Gateway in curl backend (bsc #1070851) (fixes openSUSE/zypper#177) - Add filesize check for downloads with known size (bsc#408814) - Removed superfluous space in translation (bsc#1102019) - version 17.6.0 (2)- Prevent the system from sleeping during a commit (fixes openSUSE/zypper#135) - RepoManager: Explicitly request repo2solv to generate application pseudo packages. - version 17.5.2 (2)- libzypp-devel should not require cmake (bsc#1101349) - Avoid zombies from ExternalProgram - Update ApiConfig - fix typo - version 17.5.1 (2)- HardLocksFile: Prevent against empty commit without Target having been been loaded (bsc#1096803) - lsof: use '-K i' if lsof supports it (bsc#1099847) - PackageProvider: Validate deta rpms before caching (bsc#1091624, bsc#1088705, CVE-2018-7685) - PackageProvider: Validate downloaded rpm package signatures before caching (bsc#1091624, bsc#1088705, CVE-2018-7685) - version 17.5.0 (2)- Flags: make it std=c++14 ready - Replace 'redhat-release' with generic 'system-release' (#120) - Ignore /var, /tmp and /proc in zypper ps (bsc#1096617) - Show GPGME version in log - version 17.4.0 (2)- Avoid zombie tar processes (bsc#1076192) - Replace the terminology 'uninstallable' with 'not installable' (bsc#1029392) - version 17.3.1 (2)- Show progressbar when running posttrans scripts - Execute service plugin script chrooted to the RepoManagers root (bsc#1080693) - Make sure the product file comes from /etc/products.d for the fallback product search (bsc#1086602) - Introduce ZConfig::repoManagerRoot to support having diverging target and repomanager root paths - Rename `stderr` as it can be a macro (fixes #102) - version 17.3.0 (2)- Protect code against broken translations (bsc#1082711) - Fix broken translated format strings - Deprecate the use of asciidoc for new releases - version 17.2.2 (2)- PoolQuery::addDependency add overload to define an individual Match::Mode (bsc#1043166) - version 17.2.1 (2)- Add /var/lib/gdm to CheckAccessDeleted blacklist (bsc#1079991) - Use gpgme instead of calling gpg2 binary directly - Fix leak in Digest.cc (bsc#1075978) - version 17.2.0 (2)- RpmDb::checkPackage: fix parsing localized rpm output (bsc#1076415) - Replace libexpat with libxml - Fix libzypp tests failing with `-Wp,-D_GLIBCXX_ASSERTIONS` compiler flag (fixes #84) - BuildRequire gpg2 as testcases need it (fixes #84) - version 17.1.3 (0)- Fix crash when installing broken rpm packages (bsc#1078284) - Testcase: Minor fix writing update testcases - version 17.1.2 (0)- Adapt rpm package verification to changes in rpm-4.14 (bsc#1076018) - version 17.1.1 (0)- plugin: don't reject header values containing a ':' (bsc#1074687) - Locks: Don't store duplicate locks (bsc#969569) - version 17.1.0 (0)- Fix default for solver.allowNameChange (bsc#1071466) - version 17.0.5 (0)- Stop BuildRequire dropped boost-devel (bsc#1062782) - version 17.0.4 (0)- When importing multiple keys, export the individual keys ascii armored for import into the rpmdb (bsc#1069381) - version 17.0.3 (0)- Don't filter procs with a different mnt namespace (bsc#1068708) - Support repo variables in an URIs host:port component (bsc#1057640, bsc#1067605) - version 17.0.2 (0)- Solvable: fix inconsistent retrieval of mediaNr (bsc#1065677) - version 17.0.1 (0)- Locale: Fix possible segfault (bsc#1064999) - RpmDb: Remove excess keys in the zypp keyring when exporting keys only (bsc#1064380) - KeyRing: Fix deleted keys not removed from rpmdb too (bsc#1064380) - Flag gpg keycache dirty when adding/removing keys (bsc#1064380) - Version 17.x for CODE-15, 16.x. is continued on SuSE-SLE-12-SP2-Branch - version 17.0.0 (0)- Fix media handling in presence of a repo path prefix (bsc#1062561) - version 16.17.3 (0)- Fix RepoProvideFile ignoring a repo path prefix (bsc#1062561) - version 16.17.2 (0)- Default to 'solver.dupAllowVendorChange = false' on SLE15 (FATE#323478) - Remove unused legacy notify-message script (bsc#1058783) - version 16.17.1 (0)- Support multiple product licenses in repomd (FATE#322276) - version 16.17.0 (0)- Propagate 'rpm --import' errors (bsc#1057188) - Fix typos in zypp.conf - version 16.16.0 (0)- Add testcase to compile (bsc#1055920) - version 16.15.6 (0)- Adapt to work with GnuPG 2.1.23 (bsc#1054088) - version 16.15.5 (0)- verifyFileSignature: Support signing with subkeys (bsc#1008325) - PublicKey: Scan and provide subkey information. - Enhance sort order for media.1/products (bsc#1054671) - Drop detection and support for rpm-4.4 (fixes #77) - version 16.15.4 (0)- RepoInfo: add enum GpgCheck for convenient gpgcheck mode handling (bsc#1045735) - Fix repo/pkg checks to follow explicitly defined gpgcheck in a .repo file - version 16.15.3 (0)- Weaken fix for bsc#1038984 if 'gpgcheck=0' in libzypp-16.15.x only. This will allow some already released products to adapt to the behavioral changes introduced by fixing bsc#1038984, while systems with a default configuration (gpgcheck=1) already benefit from the fix in libzypp-16.15.x. For details see section 'Signature checking' in /etc/zypp/zypp.conf. - Fix gpg-pubkey release (creation time) computation (bsc#1036659) - update lsof blacklist (bsc#1046417) - version 16.15.2 (0)- Be sure bad packages do not stay in the cache (bsc#1045735, CVE-2017-9269) - version 16.15.1 (0)- PackageProvider: enforce a signed package if pkgGpgCheckIsMandatory - Add RpmDb::checkPackageSignature to report unsigned packages - Fix repo gpg check workflows, mainly for unsigned repos and packages (bsc#1045735, bsc#1038984, CVE-2017-7435, CVE-2017-7436, CVE-2017-9269) - version 16.15.0 (0)- repo refresh: Re-probe if the repository type changes (bsc#1048315) - MediaCurl: Propagate proper error code to DownloadProgressReport (bsc#1047785) - Allow to trigger an appdata refresh unconditionally (bsc#1009745) - Support custom repo variables defined in /etc/zypp/vars.d (fixes #68) - rename: handle EXDEV error on OverlayFS - version 16.14.0 (0)- Adapt loop mounting of iso images (bsc#1038132, bsc#1033236) - Adjust zypp.conf for openSUSE Tumbleweed (bsc#1031756) - Change arch variable names conflicting with compiler macros (fixes #70) - Fix potential crash if repo has no baseurl (bnc#1043218) - version 16.13.0 (0)- Testcase: add missing solver flags (bsc#1041889) - version 16.12.0 (0)- add identIsAutoInstalled convenience methods - make gcc6 happy - version 16.11.0 (0)- Use a common workflow for downloading packages and srcpackages. This includes a common way of handling and reposrting gpg signature and checks. (bsc#1037210) - PackageProvider: as well support downloading SrcPackage (for bsc#1037210) - version 16.10.0 (0)- PoolQuery: Treat explicit queries for 'kind:name' correctly (bsc#1035729) - version 16.9.0 (0)- Add API to control resolver job to update all packages (FATE#320653) - Remove legacy vendor equivalence between 'suse' and 'opensuse' (bsc#1030686) - version 16.8.0 (0)- RepoInfo: Allow temporary repos to control their metadata directories (bsc#1032632) - Arch: add armv5tl - version 16.7.0 (0)- Recognize license tarball in rpmmd repos (FATE#316159) - Fix media verification to properly propagate media access errors (bsc#1031093) - version 16.6.1 (0)- Fix invalidation of PoolItems if Pool IDs are reused (bsc#1028661) - version 16.6.0 (0)- Fix X-libcurl-Empty-Header-Workaround (bsc#1030919) - version 16.5.2 (0)- MediaCurl: Treat http response 410(Gone) like 404(Not Found) (bsc#1030136) - version 16.5.1 (0)- Support multi-volume repomd repositories (FATE#320544) - MediaCurl: ZYPP_MEDIA_CURL_IPRESOLVE=<4|6> to force name resolution to IPv4/IPv6 only (fixes openSUSE/zypper#49) - Add support for openssl >= 1.1 - version 16.5.0 (0)- PublicKey: Create tmpdirs inside ZYpp::tmpPath (bsc#926844) - Don't create AnonymousUniqueId in chroot (bsc#1024741) - version 16.4.3 (0)- dumpAsXmlOnL: xml escape node content (bsc#1024909) - version 16.4.2 (0)- MediaMultiCurl: Trigger aliveCallback when downloading metalink files (bsc#1021291) - version 16.4.1 (0)- Add API for updating the AutoInstalled db - MediaCD: Fix mountpoint creation after failing udf mount (bsc#1022046) - fix misleading indentation (fixes #65) - Fix compilation error reported by GCC7 (#63). - Prefer calling "repo2solv" rather than "repo2solv.sh" - version 16.4.0 (0)- Don't raise FileCheckException if user accepted a package with wrong digest (bsc#1014265) - Also provide the exception history when requesting a media failed (bsc#1010952) - version 16.3.2 (0)- Let 'dup --from' leave an updateTestcase- in /var/log (bsc#1004096) - version 16.3.1 (0)- RepoInfo: Allow parsing multiple gpgkey= URLs (bsc#1003748) - version 16.3.0 (0)- guessPackageSpec: Don't break globbing (fixes openSUSE/zypper#97) - version 16.2.5 (0)- RepoFileReader: fix parsing of multiline url entries (bsc#964932) - Allow repo type 'rpm' as alias for 'rpm-md' (fixes openSUSE/zypper#100) - version 16.2.4 (0)- xmlout::Node: Allow adding nore attributes while the start node is not closed (FATE#320699) - Fixes broken XML output introduced by an unwanted change in 16.2.2 (bsc#998344) - version 16.2.3 (0)- Report numeric curl error if code is unrecognized (bsc#992302) - multicurl: propagate proxy settings stored in repo url (bsc#933839) - version 16.2.2 (0)- Rebuild .solv-files not matching the parsers LIBSOLV_TOOLVERSION - BuildRequires: libsolv-devel >= 0.6.23 - version 16.2.1 (0)- Product: Offer tri-state hasEndOfLife details (FATE#320699) - version 16.2.0 (0)- use more user friendly command names for "zypper ps" (bsc#980541) - version 16.1.3 (0)- Don't do media number substitution on URLs of medium #1 (bsc#798470) - version 16.1.2 (0)- Fix Shrink pool if all repos are removed (bsc#899755, bsc#987573) - version 16.1.1 (0)- API enahncements for zypper (FATE#320447) - version 16.1.0 (0)- Filter duplicate resolver solutions (bsc#985674) - zypp.conf: Add download.media_mountdir: Path where media are preferably mounted or downloaded (FATE#319462) - version 16.0.5 (0)- Fix bug in removeRepository which may keep an empty .repo file rather than deleting it (bsc#984494) - version 16.0.4 (0)- Shrink pool if all repos are removed (bnc#899755) - Avoid direct BuildRequire on libudev-devel (#60) - version 16.0.3 (0)- Allow PackageKit to drop the zypp lock (bnc#899755) - Avoid superfluous rebuilding of indices when solving - version 16.0.2 (0)- po: upadte makefiles - DefaultIntegral: provide asString (for FATE#320447) - version 16.0.1 (0)- Prepare cmake to maintain the .pot and .po files in git. Add initial .po file set derived from tarballs. Translations are now maintained via Weblate. - Provide 'libzypp(plugin:services) = 1' after fixing bsc#933760 - Bump major version for Factory, 15.x is continued on SuSE-SLE-12-SP1-Branch - version 16.0.0 (0)- Update sle-zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Fix credential file parser losing entries with known URL but different user name (bsc#933760) - RepoManager: allow extraction of multiple baseurls for service repos (bsc#964932) - addRepository: fix to use the correct history file for logging - specfile: add /etc/zypp/credentials.d to the file list - version 15.22.0 (19)- RepoindexFileReader: fix service metadata TTL default value (bsc#967828) - version 15.21.7 (19)- DiskUsageCounter: Limit estimated waste per file (bsc#974275) - version 15.21.6 (19)- Use PluginExecutor for commit- and system-hooks (bnc#971637) - BuildRequires: libsolv-devel >= 0.6.19 (bnc#971018) - version 15.21.5 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- media: Send stats header to download.opensuse.org only (bsc#955801) - fix build-compare (#57, #58) - version 15.21.4 (19)- yum::Downloader: Download only wanted 'susedata.LANG' files (FATE#320518) - version 15.21.3 (19)- installSrcPackage: trigger progress callback (bsc#580902) - version 15.21.2 (19)- Update zypp-po.tar.bz2- Don't buildrequire graphviz-gnome (bsc#964150) - Unwanted btrfs subvolumes must be filtered by device (not fsid) (fixes #54) - version 15.21.1 (19)- Update zypp-po.tar.bz2- Filter unwanted btrfs subvolumes (fixes #54, closes #55, bnc#949945) - RepoInfo: Provide access to repo content keywords - Build with boost-1.60.0 - version 15.21.0 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- ResPoolProxy: make begin/end pairs Iterable - String: Format and FormatNAC classes based on boost::format - DefaultIntegral: provide initial value - More specific exception message if GPG binary is missing (bsc#637791) - version 15.20.0 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- createPot: Fix plural form detection (bsc#955053) - version 15.19.7 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Add testcase for uncached repo-variables. - Fixed Japanese translations (bsc#949196) - version 15.19.6 (19)- Update sle-zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Fix broken product: <-> -release package relation (bnc#951782) - version 15.19.5 (19)- Use a uniform translation set for SLE and openSUSE (bnc#948924) - fix Plugin-services not updating repo GPGCheck settings (bnc#951402) - version 15.19.4 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- make Solvable::asUserString more readable (bnc#949957) - version 15.19.3 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- fix suse_version test (bsc#949046) - version 15.19.2 (19)- Locks: fix using namespaces (for FATE#318299) - version 15.19.1 (19)- fix reserved identifier violation (fixes #51) - solver: speed up collecting pool data to build the job queue - doc: short abstract about 'Code 12 Application Metadata' - version 15.19.0 (19)- solver verify: multiversion property needs to be assigned to installed items too. - ZYppCommitResult: add attemptToModify to indicate an attempt to actually install/remove was made (bsc#946750, FATE#319467) - version 15.18.0 (14)- SetTracker: fix computation of change sets (bsc#946898) - version 15.17.2 (14)- Pattern: support dynamic computation of pattern visibility (bsc#900769) - Avoid URL rewrite if probing local cache directories (bsc#946129) - version 15.17.1 (14)- Dummy (FATE#318827) to make Sles-changelog-checker stop whining. - version 15.17.0 (14)- Glob: fix reserved identifier violation - version 15.16.2 (14)- CheckAccessDeleted: Identify services by systemd cgroup (FATE#318827) - version 15.16.1 (14)- Reload multiversion setting from the target zypp.conf (bnc#906096) - version 15.16.0 (14)- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Don't cache repo releasever (bnc#943563) - Selectable: allow setPickStatus for non-multiversion packages (bnc#943870) - ResPoolProxy: add ScopedSaveState - version 15.15.0 (14)- zypp.conf: add solver.dupAllow{Downgrade,NameChange,ArchChange, VendorChange} default options for tuning distribution upgrades. - Remove obsolete method (bsc#941398) (fixes #50) - fix invalid XML (bnc#942518) - version 15.14.0 (14)- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Support caching of service metadata. A TTL for the service metadata may be provided in the repoindex.xml itself. The default is 'no caching'. (FATE#318136) - Fix setting dup_allow* solver options (bnc#941463) - Don't make zypper encode {} around repo vars (bnc#941453) - version 15.13.0 (11)- Update zypp-po.tar.bz2- History: Add 'command' tag showing who triggered the commit. The corresponding HistoryLogData class for parsing is HistoryLogDataStampCommand. Available data are the commandline executed, user@hostname and userdata/transactionID. (FATE#312298) - Add convenience comparison PoolItem<>ResObject::constPtr - Fixes for SWIG 2.x - version 15.12.0 (11)- Make multiversion an individual solvables property (FATE#318778) - SolvableType: common api to access solvable properties - Support for MIPS architectures - version 15.11.0 (11)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Resolver: Track changed requested locales and adjust installed packages accordingly. (part of FATE#318099) - Testcase: Store autoinstalled packages - Locale: Make it IdString based - Get rid of std::tr1:: hashes - Flags: Fix to work with 'enum class' - Hide away resolver internals - version 15.10.0 (10)- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Resolver allow tuning DUP mode solver flags (FATE#319128) - version 15.9.0 (5)- Flags: add stringify - add asString for Patch::InteractiveFlag - version 15.8.0 (5)- Update zypp-po.tar.bz2- add asString for Patch::Category - version 15.7.0 (5)- Fix lost pathname when importing repo keys (bnc#936373) - Disable code swig does not understand - version 15.6.0 (5)- Patch: fixup testing Category and Severity flags (FATE#318760) - version 15.5.0 (5)- Add details to the default signature verification problem report - PathInfo: Avoid ExternalProgram in clean_dir - call rpmdb2solv without executing user-supplied scripts (bnc#926853) - version 15.4.1 (3)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Enhance solv.idx file handling to support zypper bash completion - Fix SSL client certificate authentication via URL option ssl_clientcert/ssl_clientkey (bnc#932393) - version 15.4.0 (3)- Update zypp-po.tar.bz2- Downloader: Accept unsigned repository if pkgGpgCheck is ON. - FindFileConflicts: avoid nested exception on user abort (bnc#931601) - Support for *.check files in the systemCheck.d directory (#45) - version 15.3.0 (3)- Update zypp-po.tar.bz2- zypp.conf: Add config values for gpgcheck, repo_gpgcheck and pkg_gpgcheck. The default behavior 'gpgcheck=On' will automatically turn on the gpg signature check for packages downloaded from repository with unsigned metadata. If the repo metadata are signed, a faster comparison via checksums is done. By explicitly setting repo_gpgcheck or pkg_gpgcheck you can enforce the signature check of repository metadata or downloaded packages to be always performed. Those defaults can be overwritten per repository. (FATE#314603) - version 15.2.0 (2)- Write solv.idx to speed up bash tab completion (bnc#928650) - version 15.1.3 (1)- gcc5 fixes - Fix repo alias containing ']' not handled correctly (bnc#929528) - Fix SEGV when dumping rpm header with epoch (bnc#929483) - version 15.1.2 (1)- PubliKey: fix reference to temporary data - version 15.1.1 (1)- Update zypp-po.tar.bz2- ZYpp: Changed ZYpp::Ptr to be a shared_ptr; a precondition for fixing bnc-899755 - rpmmd: support 'metalink=' in .repo (for zypper#63) - RepoMirrorList: ignore comments and malformed urls in mirrorlist - PathInfo: remove minor/major conflicting with GNU libc macros DiskUsageCounter: remove ctors taking 'magic' bool flags ZyppCallbacks: remove unused PatchDownload callbacks - version 15.1.0 (1)- POODLE: libzypp should only talk TLS (bnc#903405) - Bump major version for Factory, 14.x is continued on SuSE-SLE-12-Branch - version 15.0.0 (0)- Fixes to build with gcc5 - RepoProvideFile: Suppress MediaChangeReport while testing multiple baseurls (bnc#899510) - version 14.38.1 (30)- Suppress MediaChangeReport while testing multiple baseurls (bnc#899510) - version 14.38.0 (30)- add support for SHA224/384/512 - version 14.37.1 (30)- New RepoVarExpand: Functor expanding repo variables in a string . Supports bash style default ${v:-w}' and alternate ${v:+w} values (FATE#318354) - Easy.h: Use __typeof__ rather than typeof in header - Support repo variable replacement in service url - Support repo variable replacement in gpg url - Gettext.h: Fallback to ::gettext if accidentally included outside libzypp - version 14.37.0 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Don't execute scripts in /tmp or /var/tmp, as they could be mounted noexec for security reasons (bnc#915928) - zypp/PublicKey.cc: Use GPG_BINARY from KeyRing - Support $releasever_major/$releasever_minor repo variables (FATE#318354) - version 14.36.0 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- PathInfo: Deprecate major/minor in favor of new devMajor/devMinor. The old names clash with GNU libc macros. - version 14.35.0 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Properly propagate repo variables in service refresh. - Let $ZYPP_REPO_RELEASEVER overwrite $releasever in .repo files (bnc#911658) - Call pool_set_rootdir to properly check for file conflicts. - Use xgettext --boost to support boost-format (%N%) - version 14.34.0 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Parse and offer productRegisterFlavor attribute (bnc#896224) - version 14.33.0 (30)- Update zypp-po.tar.bz2- Improve conflict message for locked packages (bnc#828631) - Fix broken de-escaping in str::splitEscaped (bnc#909772) - cleanup loging - version 14.32.2 (30)- CheckAccessDeleted: Filter PIDs running in a container (bnc#909143) - version 14.32.1 (30)- suppress informal license (no need to accept) upon update (bnc#908976) - version 14.32.0 (30)- Adapt to gpg-2.1 (bnc#908135) - rpm: do not obsolete yast2-packagemanager-devel by libzypp-devel-doc - replaceAll: fix endless loop on empty search string - version 14.31.0 (30)- Do not provide/obsolete yast2-packagemanager-devel by the -doc package: the -devel package already does that. - Minor .spec cleanup (remove Authors section).- Call rpm with '--noglob' (bnc#892431) - Downloader: unify workflow downloading a (signed) master index file - Fix iostream includes (fixes #34) - Explicitly call libsolv:pool_setdisttype (fixes #36) - version 14.30.2 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- doc: add hint to code 12 pattern packages - MediaCurl: Fix URL path concatenation (bnc#901590) - Move doxygen html doc to libzypp-devel-doc (bnc#901691) - Remove non-breaking spaces from changes file - Control lifetime of downloaded mirrorlist - version 14.30.1 (30)- Update zypp-po.tar.bz2- Store baseurls in list as order expresses preference - Support parsing multiple baseurls from a repo file (bnc#899510) - Fix handling local mirrorlist= files in .repo (bnc#899510) - Provide missing man pages (fixes #33) - Enable building autodocs, translations and test per default on debian - Fix several typos in output messages and comments (fixes #29) - Make the include dir path configurable (fixes #27) - version 14.30.0 (30)yast2-packagemanager-develcabernet 1665066562  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~17.31.2-150200.45.117.31.2-150200.45.117.31.2     !!!!!!"""##$%&&zyppzypp-coreAutoDispose.hByteArray.hByteCount.hCheckSum.hDate.hDigest.hExternalProgram.hGlobals.hKVMapManagedFile.hOnMediaLocationPathname.hTriBool.hUrl.hbaseDefaultIntegralDtorResetEasy.hEnumClass.hErrno.hException.hExternalDataSource.hFlags.hFunction.hGettext.hGzStreamHash.hIOStream.hIOTools.hInputStreamIterable.hIterator.hLogControl.hLogTools.hLogger.hNonCopyable.hProfilingFormater.hProvideNumericIdPtrTypes.hReferenceCounted.hRegex.hSimpleStreambufString.hStringV.hUnit.hUserRequestExceptionXml.hdefaultintegral.hdtorreset.hfXstreamfxstream.hgzstream.hinputstream.hprovidenumericid.hsimplestreambuf.huserrequestexception.hfsPathInfo.hTmpPath.hWatchFilewatchfile.hkvmap.honmedialocation.hparserIniDictIniParserParseExceptionSysconfiginidict.hiniparser.hparseexception.hsysconfig.hxmlXmlEscape.huiProgressDataprogressdata.hurlUrlBase.hUrlException.hUrlUtils.hzypp-curlCurlConfigProxyInfoTransferSettingsauthCurlAuthDatacurlauthdata.hcurlconfig.hparserMediaBlockListMetaLinkParsermediablocklist.hmetalinkparser.hproxyinfoproxyinfo.hProxyInfoLibproxyProxyInfoSysconfigproxyinfoimpl.hproxyinfolibproxy.hproxyinfos.hproxyinfosysconfig.htransfersettings.hzypp-mediaCDToolsFileCheckExceptionMediaConfigMediaExceptionMountauthAuthDataCredentialFileReaderCredentialManagerauthdata.hcredentialfilereader.hcredentialmanager.hcdtools.hfilecheckexception.hmediaconfig.hmediaexception.hmount.hngDeviceDriverHeaderValueMapMediaVerifierMountingWorkerProvideProvideFwdProvideResProvideSpecProvideWorkerdevicedriver.hheadervaluemap.hmediaverifier.hmountingworker.hprovide-configvars.hprovide.hprovidefwd.hprovideitem.hprovideres.hprovidespec.hprovideworker.hAPIConfig.hApplication.hArch.hAutoDispose.hBit.hBitmap.hByteArray.hByteCount.hCallback.hCapMatch.hCapabilities.hCapability.hChangelog.hCheckSum.hContentType.hCountryCode.hCpeId.hDate.hDep.hDigest.hDiskUsageCounter.hDownloadMode.hEdition.hExternalProgram.hFetcher.hFileChecker.hFilter.hGlob.hGlobals.hHistoryLog.hHistoryLogData.hIdString.hIdStringType.hInstanceId.hKVMap.hKeyContext.hKeyManager.hKeyRing.hKeyRingContexts.hLanguageCode.hLocale.hLocks.hManagedFile.hMediaProducts.hMediaSetAccess.hOnMediaLocation.hPackage.hPackageKeyword.hPatch.hPathInfo.hPathname.hPattern.hPluginExecutor.hPluginFrame.hPluginFrameException.hPluginScript.hPluginScriptException.hPoolItem.hPoolItemBest.hPoolQuery.hPoolQueryResult.hPoolQueryUtil.tccProblemSolution.hProblemTypes.hProduct.hProgressData.hProvideFilePolicy.hPublicKey.hPurgeKernels.hRange.hRel.hRelCompare.hRepoInfo.hRepoManager.hRepoStatus.hRepository.hResFilters.hResKind.hResObject.hResObjects.hResPool.hResPoolProxy.hResStatus.hResTraits.hResolvable.hResolver.hResolverFocus.hResolverNamespace.hResolverProblem.hServiceInfo.hSignature.hSrcPackage.hSysContent.hTarget.hTmpPath.hTriBool.hUrl.hUserData.hVendor.hVendorAttr.hVendorSupportOptions.hZConfig.hZYpp.hZYppCallbacks.hZYppCommit.hZYppCommitPolicy.hZYppCommitResult.hZYppFactory.hbaseAlgorithm.hBacktrace.hCollector.hCounter.hDebug.hDefaultIntegral.hDrunkenBishop.hDtorReset.hEasy.hEnumClass.hEnv.hErrno.hException.hExternalDataSource.hFlags.hFunction.hFunctional.hGettext.hGzStream.hHash.hIOStream.hIOTools.hInputStream.hIterable.hIterator.hJson.hLocaleGuard.hLogControl.hLogTools.hLogger.hMeasure.hNamedValue.hNonCopyable.hProfilingFormater.hProvideNumericId.hPtrTypes.hRandom.hReferenceCounted.hRegex.hSerialNumber.hSetRelationMixin.hSetTracker.hSignal.hSimpleStreambuf.hStrMatcher.hString.hStringV.hSysconfig.hTypeTraits.hUnit.hUserRequestException.hValueTransform.hWatchFile.hXml.hfXstream.hmediaCredentialFileReader.hCredentialManager.hCurlConfig.hMediaBlockList.hMediaCD.hMediaCIFS.hMediaCurl.hMediaDIR.hMediaDISK.hMediaException.hMediaHandler.hMediaHandlerFactory.hMediaISO.hMediaManager.hMediaMultiCurl.hMediaNFS.hMediaPlugin.hMediaPriority.hMediaSource.hMediaUserAuth.hMetaLinkParser.hMount.hProxyInfo.hTransferSettings.hUrlResolverPlugin.hZsyncParser.hproxyinfoProxyInfoImpl.hProxyInfoLibproxy.hProxyInfoSysconfig.hProxyInfos.hmiscCheckAccessDeleted.hDefaultLoadSystem.hLoadTestcase.hMisc.hTestcaseSetup.hparserHistoryLogReader.hIniDict.hIniParser.hParseException.hParserProgress.hProductFileReader.hRepoFileReader.hRepoindexFileReader.hServiceFileReader.hsusetagsContentFileReader.hRepoIndex.hxmlNode.hParse.hParseDef.hParseDefConsume.hParseDefException.hParseDefTraits.hReader.hXmlEscape.hXmlString.hlibxmlfwd.hyumRepomdFileReader.hpoolByIdent.hPoolImpl.hPoolStats.hPoolTraits.hrepoApplydeltarpm.hDeltaCandidates.hDownloader.hMediaInfoDownloader.hPackageDelta.hPackageProvider.hPluginRepoverification.hPluginServices.hRepoException.hRepoInfoBase.hRepoMirrorList.hRepoProvideFile.hRepoType.hRepoVariables.hSUSEMediaVerifier.hServiceRepos.hServiceType.hSrcPackageProvider.hsatFileConflicts.hLocaleSupport.hLookupAttr.hLookupAttrTools.hMap.hPool.hQueue.hSolvAttr.hSolvIterMixin.hSolvable.hSolvableSet.hSolvableSpec.hSolvableType.hTransaction.hWhatObsoletes.hWhatProvides.hdetailPoolImpl.hPoolMember.hsolverTypes.hdetailItemCapKind.hProblemSolutionCombi.hProblemSolutionIgnore.hResolver.hSATResolver.hSolutionAction.hSolverQueueItem.hSolverQueueItemDelete.hSolverQueueItemInstall.hSolverQueueItemInstallOneOf.hSolverQueueItemLock.hSolverQueueItemUpdate.hSystemCheck.hTestcase.hTypes.htargetCommitPackageCache.hCommitPackageCacheImpl.hCommitPackageCacheReadAhead.hHardLocksFile.hRequestedLocalesFile.hRpmPostTransCollector.hSolvIdentFile.hTargetCallbackReceiver.hTargetException.hTargetImpl.hmodaliasModalias.hrpmBinHeader.hRpmCallbacks.hRpmDb.hRpmException.hRpmFlags.hRpmHeader.hlibrpm.hlibrpmDb.huiSelFilters.hSelectable.hSelectableImpl.hSelectableTraits.hStatus.hUserWantedPackages.hurlUrlBase.hUrlException.hUrlUtils.hzypp_detailZYppImpl.hZYppReadOnlyHack.hlibzypp.solibzypp.pcFindZypp.cmakeZyppCommon.cmake/usr/include//usr/include/zypp-core//usr/include/zypp-core/base//usr/include/zypp-core/fs//usr/include/zypp-core/parser//usr/include/zypp-core/parser/xml//usr/include/zypp-core/ui//usr/include/zypp-core/url//usr/include/zypp-curl//usr/include/zypp-curl/auth//usr/include/zypp-curl/parser//usr/include/zypp-curl/proxyinfo//usr/include/zypp-media//usr/include/zypp-media/auth//usr/include/zypp-media/ng//usr/include/zypp//usr/include/zypp/base//usr/include/zypp/media//usr/include/zypp/media/proxyinfo//usr/include/zypp/misc//usr/include/zypp/parser//usr/include/zypp/parser/susetags//usr/include/zypp/parser/xml//usr/include/zypp/parser/yum//usr/include/zypp/pool//usr/include/zypp/repo//usr/include/zypp/sat//usr/include/zypp/sat/detail//usr/include/zypp/solver//usr/include/zypp/solver/detail//usr/include/zypp/target//usr/include/zypp/target/modalias//usr/include/zypp/target/rpm//usr/include/zypp/ui//usr/include/zypp/url//usr/include/zypp/zypp_detail//usr/lib64//usr/lib64/pkgconfig//usr/share/cmake/Modules/-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:26321/SUSE_SLE-15-SP2_Update/a0f3851d74369cfcc341d5b4078220e7-libzypp.SUSE_SLE-15-SP2_Updatedrpmxz5ppc64le-suse-linuxdirectoryC++ source, ASCII textC source, ASCII textC++ source, UTF-8 Unicode textC++ source, UTF-8 Unicode (with BOM) textpkgconfig fileASCII textPRd;`k`h&yutf-8b780624a0b0dc87c4984e4d5f9da7861c82ed217232f71c631d68cbda8657050?7zXZ !t/_\]"k%r=dxs~X߬`4ۊ:*n>h]b+ԩxJuH_->q8zlG`d͔f%XUn6]Ő7#6BԊ@s~ߒն?p_6L)ܬ-q=,FwϗXL{,_-oQ!CjLnֱɍL mZ0`(tgO94I@xG4Q;h9DF#U`BuS\-Ḱ^ticxLq+QWxmFps$>`vj7\^aɶ6s-"S= IP33Ia,K:TحVWm'_oeI >EKCɛ3gk)ƿ\H=NÓh>t/E]f9hfxA(iQYќyU_M tM0b/YH}&^T &pk DY,Df{H:!وfMĻ>uiԞLNqj{#s\yd!N''[T˦בiiAKC0N|S[,|H_I:Njr":1+d_ux3rhuZpQo=!qg(]T{f/KoԼwܧ~[xi\) hVRH#Vr 췶w@ ]xNd2{h[#f݄)EMbΨ:k N `4MBCk =%`惊Q9Qf/m "TϷW_|H]XO(﩯Ʊ ^J7.]RV^Ӵ!ˊ, LdÜme]':ٝLߞp6ӍP?$JU;/K9å:79% PTD4]z#N$bdC8綧8СL>LƐ{x Lǥ A5XQ?k/ʁ^DȒy3r<u^d.A."G㝘߂G4v"ٕy㦺Oǰ~jh`-CME̾ߡ'Lwg4 ]!Vx1תHe?4액*'`Gՠzk{$eX[W{&̌q&N3;owTqAdR>!51UnFa$VV&]ßn7SId/*FڈVFQ.p ąiMH ΘHزK1=n6~>e#Χ -j-4?v;ndAI.KlQ1#/޹9P0s94?{Ҍ>ּ0;*h>OsȀS!B. ݌lM\Q'z c}nֹb-1N%8cYTM]d,Xv!C4>̭zt*%;#UQL'`j6C,*pO7SC0/qAJDvjH.؊=[XU#tsj?@a85By2U_1 Ä\zSMAY[Wb;nP{&BFX5-7ڰh=ȁKaS~ڑ R/jt/F^Zsc"ڸA60ey$_e)o_'1n#Y z ߓv>jD4WC%@mu7xgV :rPkkg3vp70!g#;hy;ecqyK{œY Wး6@ bKaCAg &4] ܱBJǏa'_s-E L *<.OG K{D ]iU)4N}Q"55'5Puc) A ,n7s0zKO!n 1Y͗D\0z."a|Awe[.X[ӥ-79(qNp}n3֗Tºl-;Gtю(@W[8̽p'S^^\s!DzIiSbb;>>qci ¥P̼Ar9|R%4NmM4V j"0ugrց򊄻?&^#L_Ì8QJG^{kllQJ^]X02V"tu,f)RVŚI<)Z*@YG!ʝl&<<֞*/%33߇QDO@Ƿ-y kN}圢t`2}aD` x <7WqPӝgZ Z+ө?!&ZeOSd#LZX^Q*7"h!h@{E[f 47en_8oƁ cV|`)$+uEA+d롍NWY,O h.,njg1MV5Kp?wSk{~GETѢU+\7:P/=XEN [r)vXƜʊὧ ~-,^[r+3)2ZWx s#pHN Mns# #&,T?'WV#t};zHEEaU/EKi^*6*'PKPHwg7z1ed7u1g)W?KhgѾɢ<P#.xX?!]~,EiLC˸ ~lX "(d[Z5 o 4x%Uh /5{a`m1[Qҽgi(Z'fT UhvM`Q4]_p;Ws{ &XDN3>)ټA!w۲w:;T#gU373`SQw_3MM%KB"7."Lr:D[x5iUMXm~+!n U2F|ȢBOD=x}/6O5JRӲE)H/^傅#ї B 0Ҿ+>z8I߬㻘n朓;@ξK\kzT1FkׄE貲6.~!2u dԣiɊZL*wG@구w܉W6V)]ҍ|4G\T #!O-0ū: 8uhbp5><-*(27l`(֖JzIwc>pݐe`1;0jZtN}[*B{AAa%_c%޷?]tҨi &*q*@Ky:P6cglS<7rs+y~)mY+^|݂6TJI^}o&dO`aАiz4q7ULr`o&ꘌC'z٤I5KܻLf]e13F 0/-B(p`Ġ7κ?cT^pa PW#@qChK?ax=>ؙJn755*Z|C@5з]♗dZ3+#SZx{.-c=P)`"5Mu,Bw]zQZUfބ^t_FptĒS`QC8~Op I:t9):D bjozwj2rLf_Փ げ `2$QhAȒq6eX8WxxWRf b̮r6WJvvܐysڗ9Xb!]6+cX3G17q܍Kk&ouJK_Q݈`"F~Qn7E3pj)'t4 7%Q,JcbtL6ıc8=D}! \n'd\J焟9*!P|}؉Cs:ֲ'q.CoV\yе&'$T*7o?**jL78}wٻMxy1D2v_+tD~aQF"I A<{MyY{aJv47QⴐD%*191 34w9儞&q=󣱻<KQ8: ?]ߺPl\%pa>d&u] '*R9^8|A d@stIuq%U)nEIj[R~6i(%I읳M31u~e*;ETmhpĜט Q mn}/Bm,ԯjR+?Di9?M Fbx$k(6SGDP/RaFdcfVōbRA`Jo֮m,C a 5Hf˨W< {,RZeb+%z5ћךg [Ҋ`͕zc-0nXHUw:cuQӳHy3]80gOȁgp͓RdVv\gң;(D$j'! Bb\VyAn>Ʈ oI=D_=n^Y^@5Z L! \ê{6R">S X?&&iyLxwd1oNZV"7O8m*n-qe0U99}2/f_ΊO.м=,PG +|s[<UdR.&Rp ɅQ ٴ="DyeH'  _2e`yc(B}ؘ$A e vWjrw,c)Mge_ZPp2Xa!qf{??7&C]rA$y=e_㯤7#0L  L;Uݢ둤ʁ'!Mtdp;[B,sH Ь@‚ծ*_<{\_hDoJ5MW8_%B㍯ym⃿(MKi 6e1<׈nt2]Sr6]TL_k?Q㊥`6ż^ AfԉGVZ+ s07v TR8yo-;周0JһkaNwxP̒yqI7tdSo7>o* T'IϹ<3bDX4(.([շW fm {u{DLᜌߓ [cTerk)&SyʄXlxЕ`{)$'`rHIgfD)33o ;Z㰩Mρܾ9K1@OlK{aU?*Fv3^!bX!h*?x<^ٿi|[fi##uhR86?{!Hiuμ/.l7X\볻YѩTr|!ȈoK ގh6mͤQZ`*u tA_&[02"kN?T P.bq+h:VVE?LЭ/xlg&MZQ;ɱ~KeԴ-nOȀ VS7n:7nPIn2[cmUu|Q,-RE$uT:hУ>'zm6v4 uWi&^3b}'Zh:8rTD;},Hx2ѿcSފG捞.0ej/`VQV;f]lT@r9?%k*03s1\p~kFYyk挎>/1j+;r7ߘ%vX,n Z.C m;E3sF;7Ak:ߤ/o3fಋ \ryvi_zֺV4h<?,}&qM6#5Z2g G:[\!w[ʔ͒&<{U/QGnľM?ԩ- Y:\De+h=s>>4nOA{m=M^ ~-ӵ6r"۴֠K1dW?},ʓ#0Sl KOlvW3?&|8JxGt$3Z(!;;_&Xa'uV5uZWYx؎MxZEr_&ަbp8p'mch- x~dWbY!cԳh\FP?gd; x!^Kf#oiߓCUL[Hs< tt6tU>dܯN,6YJ?}VC IYe\-1glh=wW_vID #ޤZ}gfрbn)LsxZM?hNoxARae~h縞Fb0.- NA4_KRwm>1'A|GI¿aDk{.dfJ•uHBbUt-'2ӎ0͸iV[4K̾Aߊ|?(A ʒ@m*=>~/BPjd{E  D+xy(f*#`EEan\vŸk8 R5 ͒6\1^2@/g.|<@`r#LvP=7lh\A:L@QX9mF~]I%6~ wN) A Qd.*p+KhmīoHN1>眎˒m@V7*lsj)HQ'֯+k I"xp[y)NmO 8aJ-# p.AŲg؎XjmE>A*.I3x.kwp%ӿ!Fq$~W ,{^/{GEISlPV9 c= qfϪqÖc7zIL+[}SЍbZvs%֡(:8߳2l'!=C m2ı1Ofu^h:o,Q􋄭rjY1a="#3$╩'=WDӃc`7K'sR%ӛ[,Vo)5![`; ~Ypʁ4vm]PX]\Yٳ&&5ˤ[ڃwR@25/>@ A2;adX "GUDpCԝrP[r2u|f냇6xTTЎ{t" .bB잤fIm\]H QVFt>#A2- !c-w"=0!(8tzF{~9 0r 5zPaӍM`W"ٍ\N$pCͲ o&|Ti<I$\)X%z z9o n7&dnip!hĿӝ]uig hԨ ,#'@*',e^I 4cЕcN!?¥YL(!IJyZ{,>Óg EՈPޮIRzWɡ5"!,e\dP%4f+DKGp>oҎ<< ϟ~V:duw4B]XS=&éHlomHw|Qd0+ĹHT{g54|3T+*ijE c !򧅐P6)<@9jq|aQQ//R#T n2752 \$!%`A4䓝&nPZ[8a&9U5П`ѓ06H9?S#]<ZڧQ .TО'<ܿ<'S_3o%0{֦-%߉&ΗIԃnOuJ轲6lQBkO'FB&`1",8&7ykU`\#eZlZy^*4-1 ]- ǘi;dZY{@*{@,`)4Adc>6{ 2D:=`}3RY?QNL$P~Q?mhA0~x̡|n)s^9'Vߞ  "%([_k8+\MɷhC e'k.)hguogST9U3WmA-!e%3Fx\۽2F>|T~ͩऀtq l˼9|nuw5z:F9վ(_8x4: u .ۊ)XMuKґ:@>,4T/LR/ꊦ y+Yc_u~K 3|Ƭ-;Yus.Z mZtU 7vLxܫ![XK-x˄ՇU$ 7+6"ߊ{`ugF=4w/Id^đ\b-Ob!PÀbu/MQ4o8zOQD YMBiK뺐eQѩ6V$Ee*NEf]'s.=@eOͳk#O~+h>+Z 2}8/rB'΄Y\-غV7m0P?DK ՟әs % [l~gGZmɼ;`m``8 _;8 Q7o jHOrU6V5fԜysE^ M JA]5N{ O Nq[hHKӠ&j՛/Rf)Fy"`zIf4p/D[ܞ^u X[}Ab!,cJ:&_IOɳ]IJ_{Ǧ-|,'u! lx/~;OqTʧa\|8e fG9@شAs~o9K!N-)x`&.@@Ȏ>*UO6[-CٙA:rw/Vepb(AFO|a mtQ7d6 q~3|equgV[\KŴsԦ:vʢ4'G ԗ&zݝ{V72 C`HjCZyZ|@ӷT.MPnzZi.j6k0ɇ6̽mH~j.z)#lD-s'F3g|>J H`YŐ@ܧftY4\SJ-}K (bs]׺)ܴ~`i]yְk4c]s&ڴ>vDށ5GKy^)剰,PeXhl@2RgRCOI}D)qXuQmλJ;5~_nM6R}>]Яߑʾ_yr Ē]ك+h{>LnE]Рᐢ8K" ҤOLq{4E i{3D:} .U&٨ 9~ʜhpgA(ٖqJigAoZkCD`2b~ԂNsZIA5*LR] dH*4S=KdsƮs`z%1bGT K) @ģ zp**N!ERIZ&kµpIqH-+hCi>ӌt  []_Ms9d>2Àd3e%CHpտho1 -N f#MJ얚;I`\/OʴU- %9XYy فm I~--1<\DžbuBSf0z{JŮOv /yIVlPg('=#K6͌ڲ%1~F56 x0Sab)Ct> fR]mיDEFE Pa _@6'ԑm_@fVep˔`3TFwcNͭ"_=yS\p Oa_\g. 7\AQXM~ Z{#eB+Vw~А\1*x6!+ s]H̊2R_ Q%eR#3Ҿۑ\ib, 4"]8Xc IŸ497s@y&^*?j'9)c/8tvP, ֋hI$&y)tD7 0w~t(;S$]'_r` DъLכ{6Iɯ}P=g4x=k9i"|x󈗱2H%N1́['?:zMӯ5,o (8}^M1luP\n)s5 ǸO\+63 #;o0K|Zqw,Rݠz* ;>o,vjJHiMp\DX ˉ`iWjai`%̦QYĿ.쌰9 ouA&r?g`*.ɰYޡJ^93OekY|P.oĹ5Q޺/:v{/,',|z@οaqK-:FT.(TT[M@~nBȂE䶝cx, GD5 jm-][S!jAy HlݷAH"9WA_/(ֿۃ_ FU:ʰzQmT"C̮gFVxWPs)H0>q.. u}l?YG͐1e1,aģ_Qd0{i#2󡁥O$ UMEmHXSJGGE"ZPtr+^FxL4wE5mi0c" JõE>r=`D;a9uB5GT`%Q swauK*odhY9QӵOd5@@PO !'W%ƀJf6hF%$,]%}?:Y:d6u>1 *}muGZ.اuhup3$ Y栻+#0 %=!JXI+ն{a]E;پ;iY~+B~bNzvI79eIX%0Z>~礈R8O酮G$-IԃN?r+3=)J !祌*}?w,9/>@e=O%m oDal/hۚ\:dm '4O\G褒#٫aiCEŹF{R\·xTZ OœȏʝՑjlz8|D&aYnIr?~R;%!?k"<"`CLf: Ū"i"> MbyJ-e,Ek˝}#w~8͟F̸|Ic>RYR[p.c-n>Gہz] jKnFŹN9NeaR]5.sWm5"U kVkX# /"HJ؞OJjF%){%JCdG-2 1A0@;G=0I} ;O?k %N7TmȽᯘ%7zamA c}yۇՐZ 9,k[av(YGq^,XJE8զCW*:ˈڐѠ~fA.)l7lij r\( l$G`T>V՝n߃[>NxROAp1Ebݷ!j "+t2Ȫގ4wgߔ9MN}/,[>! o<Ә؇V+cOy}A Ւ5[${`rݧh'3 ^ZzGI,ڙ\=)3d2q:B}J2Cx{jgNJZ-}дXXX5p}`>WW6I ƗUR~Jhdf6)gpMȯw;fDܕQY{Bܒ(QvbkJt=bđW:VV%4JFzuCW<Uy>4+Lg8 8DMT?$d-fԡrLMx=z4[x£(amӸ~B:rtخX}\:E-%"i9.9@Q$h5[~ i8vou`FK:{lSNJ@OAje4,B- <B7O?\_QNP/]p0x=Z~wg.ڷa R0IJ1T?C{: _6d p<ס~"z*glwz;⫓U/[m58Zg μpѬS%dOtn3Cq~ af(KU4 toblkUQuiIZWsoW_eYfRQq5S Jϊ0(`Q = ǫw՞0›x\Zj.vdYDFk3AȔlr(SݡNvŽVߺq^gQg[x;;ovrᬡ Vo(x]z@pC z\&Jl)Mu /kPɕC\ .ul A'sa3iY}xZB`f\ "fG *[$2t.3߈Jcs0kwg3}oR+xDƂsy``^#(1D4!֖SQCdd2pϬ~":: O]Ȋ܁ٛÍ, .1"H"ay9sf#9MtSӸYNEdugwlM~2uүsxEXoA܇b,Çn]hږLCcޔ}?62j&B'z#/Fx۸>Pݣx׃12'^W6>㹂VSk2vi B"#,lI>bĂw64&Fٟu ZtԕNjuvMݭRpkfU2yOf0ԈL M'݁pVZ V~%!'| &ҷɈZjAuό1#Jاkgo_Risӷ'S3ڠxVb4,2IKdq M`dJ4.8BBvAiŖΥ"Oh ۍc>TT)QT/AQ_NMG}/sx]hbW)U Z~ERre866oؾ}^O,0(NYaX%|lTװrd}t#Bb%N}FK#˳,nN|4aY|ceU (F"g/WO+j <=Т6FRTXzۢrA}#I8 F^5e+05ٙ,L8Toa"۱#S/VB CrOӼz zXV$y?oi`>E|6K} /k` B !B+]eyfOДKq\bE0tUQGr$**?K% cfz"/yq% Y0ibaFԪ0(TZdS(F!i@D78N^fcN3ҁI^oC ks<@_4#F!a$WtH;l:gi6>'xs//oa;4g $GTjqxc3ǁ8d l;q(^3xںęg*Uư1Jx7?ߗ6}D׃hp.(};GRt(:kt7LW$&IeYkkX]&daNM.LW'CFTrd>~fRԞsW;AW!yHooVVFʌs5&jHu$Zpc،V&]kI%gz܎@V?׼(GWNÑQD'9w@g:7* مJbH逊=2 MicZ PLi,HXZsan?9:R2ʊFoJ3f'HI(w->"jPL!u_6odIMj'֘u2Hq a^%8J8s*~qm=a1gUsdH =[ÛCMJf]}$iKULˮ C:mY+*s6Q&iyt}'L#֑܁ED0nl]O g˦:_'҇8ABr1PJǭ>mیJXYwГsj{ns(])]+R\ ҕe'(N܎v#a4yYwg){=,y ԏΨŻLF>3Lf,Z7׶s `KOg ^NMs_ E&S (.X̝~`M˳d]͆^&9ji# ~k:_8,%*QshC!+/ {%@,+q_d9Gynh0 Adv2|R1>хX?t @#n4\1 ugjJ-Kħ& LT},҇=? 3`TI)/oKhtܗySafwѨ )礩~-52JIAړi~ÞmF` KSJYk0C>\6 }7n &Tq1^g4ʉcVQm Oli!A+@ k.hSPַ\zNb\D.{BTɚ1֠\;KdAMbso~kAܩ< ̒I=+,rFJjY쵿NO:O2B8CrtpAxd-l`t =&92!2V(!(Lv R8{ Si To3Cc6KtQL/R~yaש0U !4*j%Q@bk1K9I8DU"7)AJ C&,dqI/`w O"]@/MNb^T;f!OuQ YlK }zb ;]@f2cv$6ޱKL yYL:/P}éG+U@p$8XhY^#sԎNǿ+3tzF=÷ kc7_]?`u 8a4x:jP/_.jƇ|T q;($3(y]t7I'w d %7d%ֻSm n;s= 7V5(r~C\-<[M?O脫hZ YY~q| ԔN9B7ߑ$[=8+ot+xR`s iS`,<:9&F@;h)TdfZmK1hz K 쑍UW8ˑ:y89y3mGs"%9+Q'}2|0[n J ҀHsPsPYJ6;ޮ'\ՉX37+Ղ\i 9WXEdv#Lw+Dz6PYydƳŌ"qۓ?)EPH$&mE ӎݯ7&dD]W>Iᔑ}aV?/.vV0FD5 U9ޥ`1z4ݠzm,ǫ8is7ڊVӠdB^^k,wD^ He`1th?sC} {%r-A0o7-Οn>!6BJ4 I.jg`}1F5gP:% ^9t\([K NO|[_AXwVfD Jp2rӄӗi(B\5*>NDbۃXJ70|I&Udt}49 2 p#Ƣf;1QRyrS_wiR._̀\*Jk@ `,3:vbd ;ٕ eq0P\vE8Jb3q謲0:l+81jJ]aZa]σ9dLй'VQg Yq`Yg"e @I-A@I`ѩUy++$yY7 H n @StD'k< H+FI.tz:طK?RLIEAwa7ls%ͤ*܄٩BenD Lif 6.oo²?ЋJJd/X{T_CXV53 FuRt^F#{$|!e=0Vps _^\vVvFG4qRj7>e}DrC~7X P3CE8 cńMn@Tw.ZN-'J2&iPS ݒaM+q7)Lj4Y8PSHl /9g}$eO$L6R!M3^v 6y"}J׀;#  e!QEQc'8to9Q)1MAUKEm+h=$Mt=T.5)2YS#?KOl-(姆LvgaTBR# g+:>g<U'ugHA5 JءXy*u$\k:KO.c=[!Y4*v xS?ǜ<©_F3"ثR&?8COEgvEIJX-,|^JIQ9m7"sSzS_ '厌"Oc r-E"@mW#Eր.vv[:7hW h}"Nxʒ}kK/Pr cĖbg_JԤPdWa5iRPmǶQ ~Qr\obk ޓg(&fR\nO61n*;*:HW䴚5ೞhT3bګ߸*QNX[79UP 5UX=׎p,kRQK+[M>82%a*FG/j;ZmG(_)Ǜ@:'* l̒Xb~ٓj${y?F;Kǧԑ=X׊c)"T?S. _%B/ː9Z$5yߒgd#; ax8Ŏv1[U% +[Q&&AxlW&}`]lj-`ty&[ _ CYʚtd/1vhn^,_qB :l}ql;;({MADX`t}$yH鿑 rVt[HR7weD0G/Qs^!?ofS[aG>VKҵSgx CbE9 _jr7> 8yau䂎= |I(?^> W#ilrt< 5vzd+M5iK`KD=/NgdISMv2Bj8'BmsVtw9 [>`y;攣R%łv֬9ʕ#H +mǠMžtn,G ԥ H7$_-f+^ӳ$W.-hr9K2Mv g9L=B|3/Yekj8vaAW&i 4eBe1CAj`5ړ 36RF'K~I9OӤC|h#.8>:&^X[jǀ9j#wN&WFGƴ Rb^>" )B'lj;o!Jv:*\:1 ]`/,\F4 n7slz6z4F2_r^]Yۜ> sfM)h<i ]wrgV;#d'8]<"8yOy7!2:cy=0 |Q7V"$^h b)+5[d~i5WM2 ߽<5n7P n~h>̏.Ih}-*(?F>!Њ?-2*cI #aN3;Ft' {zڰmg$e,T:([Acͭ]C*Df!=&}ttþ 5&F04pY==5c$hy%Gl> bɗ7j+D"а/ca '.%g(iX/Շy$usP A~;C+zQHbzISX]$yW jpH^TDmjt\-4'v[b|d:XQ|!ɜW2cc.7~}^I@E d:98^>7ї!ulR'<;H|wtl.uTDp~ \+ֿ TD吕fLEm<(/y JR8(9ٙ>e h;Q8&蝒䎒3u]#w r݃kLi~)U;iAX٠>j4#eT)/8x_3(ޖ◩[bTJW򔔱;1ߖ[x jh & sa/gxsBF!FN1g0nks+20B2?fKTUWȡPw@h2̋]#1h( >gqSs6AgDؖ;)q_ve7a>S9;W+;D5AVv3tccٶw݋KV2"NAX2s VM/&%`: ][th?r?g7<Yd>hY29zۃg[Ǣ-?xޭ_,,w+9V'vM?@eoH~CN 48o$,o`!%m63D|U 7Ȟ%";y4?KNE0'C?~PX. LBẔ28Ev&>$k1Z505}AXA{`ەIP  6O~A3Ua}!Io0Ik:S&47pb "%:~Beڲ>[1g2asn^?12R6 8:F\#LHd$gW&GIuDLۂ#L8}/+Q\7EwJC4ut{knİNjk_ٔK^JRHx+V?ib6ŵ.h_2ED:3ǫ/+{$2PD.S5[ze:@wQ߮}=TRFEKM":jPPG&|JÕp ;[r6ZW?M|ydϯC12av$T@b}>" jd8[9}TU&/)\/ djcL}/bZW#-BFN[DWs*8V>ك,׸I?ݹ) є"_=&@',TZmNUhL+ݞQ`sg཰˽\ydɰpMEu@G)?+#}F })m|ߟ)98tW6tD=A8הYl-e2$Vq>"MePQ[qԱrkϓw27fttmNZ *'>dkv0(@ szm^,>iSTiHn!fY>Fj. t\yCEd3BLSUXs|*-iBm!_Cԥ^i/1WT58d ʈ7{ĺdP KιƿN]qdHaVV զ)뫁x Ռ?JyPIß0 :e>dAD޿CY>z媋 6TaBfQ)pa&􏮻6IjoI/}m)MZ bO.Rz>Q3umd~//5N3ג !)9la؋]w@..{w-3w8D/P|(p_{ hCf'2001<9iDAgt J[ma/1x;ԇo2ƍ)n_|4}2b4j{1܈ⲜQGc\,ŞZ ٮ_~o鉪(@/.@ wa>0!IBTK"ӹPSxAX RH)RUHN͏.{̓!%Bߛ82e%АۊoE^Ћ97GF?)-^Stc/~3H $r"oY"8I<`7[VuXbV`ܖ^ ^w<,Iϫ=ClH0r#eC}=#2[>AsBL"_c\_HBvT>3hK85v}<=>rR?qK>7xJ$6Up~r'$̱%ֺZ4D_j j]m:"M:uQT ="N{7h&E 듊ln*RsO p:/qzrg^Uؘ֬:*յƚ%1+]եRBeоԉd`zgB:GC0wGV 7NRk K%0x/ͭZ=!G m\Bt*BjeXgd pٍZZxJn$9Vݾf=c7!ybo蓲 mڲiL"C[3Xa[6c 74.]#~ⳖEMziã{:^4}ZWC!]A_{M.b5U nu]c]84-ZҿJvZ,R" HXC&ɟO~dnBhU\3:)?Ke3w9Gճe⚢GݵFaR؀#' &,˜ގ?52,/ goB8KV L rh|ZxVXz!FXh>~w ]yY̓oץ?/#ZKwP/oS\eJInFxTSd%5' )l4Tqw_u!^51K#@.nO:Pì{tQ`FfR) bp3mJZ4F7HvQ@iD<][7׬WS!$vC (%!O2k$iӗ4d[~4o<ˌ&kl,Y`"+Kl"OOi5=!,~ sXeak]䢋C xɿgY鿟˖*Wc PjLg '"Vg)y7SeJ xgPt"DTiQkr\Rϕ_ (88a -xzSw <bM+~mXM0m uKPj?biP+hlQ[gs+_&.J|il낑S_٨AJNA3<`*fH%ɪS(FMHD%9eʓ k}-"AGBD~!d:'BYh|:!JoI-93e;,'FtD@~?-8G%v~jJXIg -_+@{yJh-SY&@D0ڲTE;WdTg|&4#Ϗhus^Z'krG"cP` e(ZΌ7^DJB(D~+  #%zPiفZ >p)HV@):Daa@mdËl=o֩I6(ܾFϊ44<='8 ='%`7Ov (!V w5ء[ֶ\ Nhcou>,z\*|_KlPʱ vj RT;ÿQ3.+@AHH;“?0|5AeT{!Irk t>(Iƛ6Zi!#܏Pq0[ުGv̻ xks.65 7*i$@jc $UXsy:t ̴^Y/\}mնr}{JjAcSOO .+68'90Yh BEoa{ekS! mSWt|qPGKl2mM&6:![i%`GX@D|{#Z)DS"g~s |?ymrI]W4'@G{Sb =YN`gu:+a X >%~$)ګ1Oa\]۳ m d=z؃ω'DȴxKezҗb2k/q`w/n6< yxh~w e|k1g@g0)2I;->2E,uDu,*/n5Ђx8:O⒴ӓw:On\ g6/Mx^hxEWZ_3ioGR4-uٛ;|$Qk$b,V$5Vf^kiUxTNMYCթ +6G1GBuza3hC)*Xk;dwn)fV 0> G^X:t?:E:N^/cO{L=j:aи7gv!Ǭ0#占#@Kv R1'Q%i',x&RWO|caoX*NbKžV`K uGnhe} }ˏ@ȶVIRɉo5zV-.׍^Ϙ>W;{_mp`׽۽.ƞ{Nѣk2w&b6,\CɄ D΋_'&N#ad20(0DR-?!?q_r:"@DLd7, e(zjcMПBOv> \a1MV.5pW|?Rz’c,[]gGXh=`vIY;e̥xp^HIγ Gҫ.%vq\l8Qt_1 \wh$ bNV\Ap{6顟kD$$&*]`צSJ,pA:jO) U=YrdHK cm 7W}1C0-,hc5|b)85+wi 0}~i Qrף&Xcoރ(@M ~il~kOl8O)"?gs(,8[PYw,Fob쮯j(-j(cԺDLq$^~ si 7݈IEd l!nA qe.`}G`\/E6u/Tkl * ߊRTmUwz;zc 䠎zKV!psN]v]|!Yq_?hv9&|WCj2KnhsKQnN jS[ MgYW+UbeH\ @ ܩ,$F@*G^?4n66@"#[KWލk_$<e@vJ_FT>7ltي5A4V?]q,ܤPO7$G:aZ'{ײIWzy p//Ea Iu!d?ea| һIo9*ޱGљ(AȱP`D،7yixnYKIBcwk ;I~*ľ-`y$9M&AwȘL6sjb/=ŕg94P{usfA%ˑy1HWWc Z{0}ݞw>6ᢴ.GVq< !!.[ɮp!QF(I^<~ͺ8R;Jrpxw%mz3P}97Q4$^U@[6![ȭAi lPXnZj?(d|(F#zcQÄJp7O,Suߓ,yg13}¼`xƈUtҪV`|Bu u \!u84t ,+CB'C=L)ylBֆJ MkO,"R>8VZ#l$m 3DY:?ذS;90fr$*^cb_UgW@"U!hg@W,*2W|eӆq\zS&38$ݒPx.[iUYPxg 5ƥ4+x2W!&~׼hGFe5F_y\t/PZ[.; F\^t;G XmVN(Ε bqbBӻ'lp x*G iU lfZ'^Cv)EY|xϻku{bJ^tio٢z1J8[돡5WD++< IYBu92X0BkɿYWte"T5wtEy~\w$P0B z/< ]݊e ]VfWhhU4:+ N% iUo!C>YfRdأ#ΧDC?ob'Y['mX(bY4*7M2],Omhgǟ 4N6%2DGcjCRd~g)(߫QӦNv/z  %n{qrB"%<*4~ρ%Bʍ4d 3qzl8-ǘ?0l{5^v |r?N)B6/ED ĻgoMVEѿE =ʥTqGK#IFqKS*%|yonxXhը5zYZrZ LJCn l* 1a& b9,$t@Y#ûyzS,1_c)rIh죃[mu+" ۯCk25|hݣ'Gfrn %8f{<W{d+^`/ʥ6^ 7_8VSCC̶6PtІِf7_IU H9*p& bOi CWjRx٫=;1J|tK75rԨr?|q-Uz<ڛO 6pA(/7C{/$J>8(E$a'ΎN'y%=b~ADm ?BtdCVތQ 7yJ&~vpEeaŝ-j{L*m lYyw#ɥd lZzE;y264 GƝ$it*F1oǭhzr=dw0g۪([Ņ Ϙ/NKZs=nb ҳu},i"7*Bvzk͌|< D]<:`%xX9{*v̀4|!#|fN4.^ĝ pC[)[lr%k$k5 ҡ.fh^ɪ? f! x*laʼn8$LkfΆ *%$<^Ku}i"v;w{I0r,x[ 0~<&1YWu `Q]8岲G囥xR)^(0sR5<7PPs%D.rVEp`C-J{"ƔsS F/Y'\V)\Xbgp0!kf\:7 kroQYq5W"A?*]4 賳1KUm}soOu 1/%ԩ/  R!2wF<v1`yzXZ,`q6;tkp:7p&fLa/4Yz$C (@|􋆄ùn d%K( z:ى: NR>SYUOLyk$(9_/x s;ԶSW/O4Į?{3$ 1Qct׉eA.A Òb:f'1Qrt~Jzo~v#]krY.ߥԊ^bmNaoPX4$ qHx(S5c|x"OS'(t Z;͉=.1yqvlXݖ<po0:C%@^p-DPJG?knvV\EUR~%'if1۔_C9`VW$A[uk$J_:D(> JLn\5." у>r'ψTR>Cbv,>=DN|Eq ;Odž!͎%̊F|d](4"ʾ*GTd[dW* ?yp]flDQHu* .0 sޙwBK5bG\ e;ۤމ%([([%w F>RHȉ[+rC{^.k4& A Q{:'yCt,[ʭ#=Y)%hu[u7:P|a 1p1~i`QGB#H]j??8T"fu 6՝S%̑yQqmLnxhٸH+hRzA7/46^fUCX}@wbe4~.rtVU]D")+Me2pg7h_Y0s_{oPsMx]Q[t8픠G>#WH`\ZIia-Vmͷl,k߯$8}"t $ս1I/֐_3g6 !zٔzvb>FۑPaY⻝7eI$:CA~AJҙFzׂ*m'g,U)M'@R=QuyLwBrt&嶆fےڥEOY2N^ԀG<8~"\e8kUHuX8XTë6X9togDk93Q`*aAf󱟫kn0=tWɸ᳞P, 6T `h.@(jL,fi/6;O2qlD /T*s,1I:ܻ߲FՏmn@=B;yBqZPKV!qLPszkMv>Sl|[(B$^2drɸK9m`|CP"ʬiՒMD}Wk{~} gE"vuC[OӾ" 7Qfc{M۸ڲm[m>Q0Qc!.1~Ak`2tp:L o{1[OÌdwdl40Sf[OQ\H~詞_= ֵzQϤLQmja%ɲLk~L^phc*jگMws{i-,'qɛiWX͙%tuo'[}Lag f ?gw9R!8_ ńK%ɗvax@֥50{B3 F޹G!i58Ɗt=Jג( }7i֭pkC0n6#Kh)Ǫ{ $.E@GQDwj?uB5y.֭^O{+Ҕ6`Ӯj((38ǿwx醦~g@M4,o%ϥA:Dϛ|{%ef^.wW[1*9/W>+^x~U@M4q} 9.spKxjw̔2f]N F]kSxA(494"XAE*fۤ8O{{bŌxjsjj%!i3:TC&%g:iMc'40' XXRC4;ȻWI/iNx<ϔQBDž%D%J8>L!D@ԃ'k9N=-zI=jm82sat:GE'}Y)f2&W-1ij|m̃c!zA;s&LҪl 2nRLKcZ JnӃsUz>+aP`wZ;\l]Mg;[K gK-< J"? Nok~ԯs4l}9h0!7VҊ'V'+C%jdL` ܱZkӜs&^u-<_EjMGt26yFg"`:v]fxKS6p}GᬩI[@AF}|3i,`{s9oDbVx1EVTJrJk-E0!%SDŞwdžJB 07' |5Uc!ӆ'$M>} Elӓ|/z0i!$]srwЍxGWLB0J>7(pvo ͓U*Ty8CnӈsԃVd"X;Aҧ$v[/^d$k  ) {HG@ X4Y+Zt]vR}? IδZT$zpլLQJrxtBCt4V죮& uWG<>`֯w\dп>*L,rGN %z)R_vX:<+O{:JġWaim/|CI`F?Hv|bܱ^B.itI&d#+NrF(CsQtF !yǪҊiGܑp-D鏴!gDC\⤇MU}jU0q@bSWbҙ1唴lؖx"{+ซd sۊ ^hC 8&\Eu$}E uY.l%K_(JTV\IFh2e?j0B=h=A>$v M%ے{ZMEJ4 ߹"7{׸3=(C:9 4 Ւc(t t[c=W%%I1'9YY`łΟςRn%%R?ڷ[{M2 ^F@D;jwң ?Yoek 9je(to,e|ٿ ei׉22c@͸U,y@Z%<RD'v9Ẑ!4Kwzͽu% q^`PߞEPtkj#||Y+(Dw4=j--P#\S5c077n3H +'C/}}pX鿛8ނ}('+.9'v&Uau9.ߗgekk}S_C}4r<.7{Y P]JtQf\ `壘Fu6R! /n=8+r{[@hq*!_ltosPů<H1^ь_W0|Dy!rccЫ#** T3?(=Rʦ/dF8G'm@{#ݸQcr4):Իq7]KE{>vɾ˫'K0V0 ;c&nP:(-C.Z|%|3IِNtZmiRo˼SI#FJ}l|c.]1h_y66j4=bG4Gȵe΃q3&Md>7CcK8yO H4#Y5+hd]=SDJh~̺v̉k=pV8I@NΌI>L#oq8}dQJ>Hք͒w:cn60ZmIlU}e #}N)WKfxL< cÊ Y~"nt %T\{PUkڵBencnOWPY䱦b`ʧFGHRypE:5S{Z/ù;T/"=~M0å g=8}a%*Åߢ=#V+KO':ͮ,_:6VwXf0_k2,f\qD0׿G^}#.PH%N4rבh*17rN5"44hB*M={>sUn e?v^B6śe HR4M=\sJ"QU$ul}rkHU)1&Bв/,o!dШ3=VK=vwlg[Jm uȄmmiH" [^]Tsǯ,]2=X%25f5+';LyG(kѹd @ʞmlx^E&nQ pZ6,'tş+J˨GyGDaX 6(BV{PΣ2NC5P@W',Bv1뙾6W0]&]deXU< ^P$B>}j;`Ā tX-bLv;HOuHŭ!l1[By¶WhAuGd3_r>+Nzb(ee%EdMN[gkb_5+<1_1謳{.: eCr'B'r1kG geBf~c(\6мZ+π͍Zz?5Ben;l+M9 hO4 p:Y0 $?uAooGV5>Di)G$īB2+zw,L搨FѶSYZevw-gs&$نƏݕh$.r9FY@39yAK2tDEAi\y[gwM&wWz-ڈćN j8`>Xu`)11Ș*us)Mr-dBYv9u9lHU)p`ҁ[q*kiʽ0t7(+)IU=SM3Z | 7kqZbIFur3&A@MaHL4Fs$>r"r{ZLTq~e{[nB.zkbn s i(N apĐw— _f:vw.GفzZFSbltc]KȅdE3 `_+6<# H^1TlbEmh}VbGxl&ׅDh5 )5681JʴӱJ]>zh)yG) m?Gk~uu?I;pݟuo5񒀂*0haG%K[snp^;vjFIVÑsaoA v;h(l~"k~ C`X_9l(L|,ŝ> 1k|\*BiFW,/GDdc7cYЗȆ%đJGZdW[G\>ŕ̕4mm_ i'MT%dĢß_siTv- *gD)wu4m"y"-cg 9SE*3,Msx$גi6Q[y,SӐ/7dZ))Q\g >D3i3#YB+Z2)Ŷ'G ʴ\Kq~S̶ffJ2SVqSdj^l|t2I2WgayܾA A}6jvr(4r^l:ʩ Ѫs]%tKKͼj0DoXn`qs!DC=~ !%eP2x٥5Ӥ mSqI~J`迩}O[ #X-GnV sØCTqN} 7Cbur##G&!뭄[ޮ$ hh}G% e򠸭.d̟xza@5"hL'Nͣ+ \Fݪ`|d zR)aḊ}8Fֆ/Ui껔mF\zgb.4d|;f=Kysܸ'fhpRK`)dwZ@+Dvz'kLqzC-ʷ1~@>dEUpU`O sƄ4684K XGՐS^nonY:W:n370ɜL0WV:kAWv lU)YzD~NNJ䑵-8S-:v!rZZ"ѭyXyx5U8U:D<ǒR߻#[>%L\!WJ嚎d(t#]n|8J2ge*Nc86*O?9Z:OJ1_5 mdm<}U0"$דu0PY'JrR'%M;i@ZX}|WP ;^.6#&\)`9\2Z%QZLJ+XSTo@~/? jD](qz.m^Nwra| WlqS{D"|+:śY0*LO6u|&sp{KgˣY jCAV^UX $m |FQAӈg-DR47/2h٘իJsM]q$<7n>DQ3_f$x!m88v.:jGS)q6J\QgJ)RnLcsia:gTD$^nԻP-Mgk;}wV1==>hNK;,pz>VيqYjfu%}-#iV5fa`?yp ]ǭ40i8Z7 NExvylS/[{r5vGrލ+NI3ӣVt!,flWG=ϱ~oL6x{s\8v;lOV^tl(NϣTA伓Zmhzojy8ކؑ%nY"LE,I߸MBsbៗ Lf]} q؟GloU~@|ye?,gAi4Hln쪺*!hlÿ H>.Ou(oi2rWô7*X\r̐~@Տ5'/No](/ .zMIٛEө:_)xלuT jW"m" ;3w9sNi_^S`VbAQ~w>wn_3%gS̷ҷ[u=Tdbbg}.{%s&f.Q{]IEm+;p|b og:zL>g |o+)e3N|,ü+t^Ew)*$8<{\t!iãdYz 6T9հDcK˟9MhJ=Dr1+e_~޳!,rwg| {nCN 3)N@^cL6_ _8^wc;"Y=g'Tp߮)!Gl9GbԘ#b qlT«y8MT]J#Ҍ!?]?AKjGԣ (DNr_,,VmhHBRp[dt8Q/_k8Sa"7OꊮoRqsId֩,' C )6lm:&*؆#1Щ?/"3$J(!2J oA/(9RHzz= < I; `#=Jj; H-pum0윐Q#͂~# 5n-~/n>je7j )0Gd4Gxť2[/Rk̂#'C fX]KejPf+XeKS6NmjH>!" P񗗵*K #{΃  |10xM*QQ( G𒬉r<?C$7wUM*ΆEKV) .[b&8 d+AEafaq~tL4q ٲJj&TJs{N/6.o:曟pjS{i_JPpssET6?N.4Xe` Tu.@[Kq v|cP4Y8J f_qSDKXa`9i9 Zի=P*5UN 4d"f&~hG.Fـen2zzZ`Ƕ[1WQ8nA鈨hNUoA^rK_ f5 .{BI1Ip64ͨ_P>GvS0IdBOb5hxR~p`L(J׊"/]Qz^ 4WJ40 "U_;Gs"+dx5`ERAM)i-zkNxώm$xABTM)6|:] (/=D[Td2_kzlO ">GWܼb#y[0v79@ MYs`ٕG l\2Y<C᫚Nwk)>!JO+֎v|}A2/yuJ%۸Y45nqn E *ڪe\E=j㎡roE.f Pd^Ync$OWK#O=B޶,ZEqf+w Nr#qEY.VGdc$>.ʦ*6ݜo u2Hw XIGS]5jlPͰ>WڷcRW &ſrzBuNq/i1N>**/3fג8yI5/#D @!EC%]@"rv`2NVŠ&%Z)`F4 ]*~4:SV0x5eկ$_TDe)oF}qZκ1Vn$ qd&0Ax{Vkt i=VUkDVk2|iE[B$fKn}6DwC¯0\ؒ d vi;3(!KM>[B E '0!3KaHH϶#{OJ+ftU=hSWNtH `nP1M/ނON%@W'o@Fؖ5n%S:0jG*T;,-w RV Y"5^atMxi5DguW45󣎒jBpΑ15n-}np5,cz|q / ERVp&ҟv#퉐(1e鰈1F*Ő0?i{C8|@Sfh8|])o#A (af `CfZ0'>A.t}7F8`ҞGn ·Fߓkx-8]VdXgeqK_x(\h[YH }k0/uppzRy+o,Yh G]gz xoN~Qkc+j : |O-u,k)I v$0E\) ]TWki*ҧ3s sUP'1OZu ;Xwb8 QZ >7HB \.ySt3IG6حa?PPK )*'Ϋ2)Bul.sXW\/ըd:Y,ݔ ^$|rT5(:.fDd,Q*Rj5؋:V&!)$ë)r[4_nA'3 -LpaRs{8H2Sw5(iPP(I=IFtޫ$qvu-`C\+Ǫ98W]pRGɞ蓌`M0D.^GuN7g#4Z}4DčK̲S];H|EtgpΤTXꞒ񅑻<kޝ-n}#~5'~_UpH@rApU 9'ڵB34n~_& 6ECfB~0 n3:-Nqq]FyrՑhDߏZ-O9Pmmp]xYuT(e->\;bo5ӛz\;#(Vqar5`0d<0݈Oj/X۝>}y-ь:'Fq-Kг !dr)]4fҵөET^+ҏћZ㌿)3Þ=,+×Xm @T؄֓0EզJu}#˷[pP8BGWkD§ٌG qD#CW u7pDz1vAZYJ!(VVsbmk eK.0u8[J37baqb:`1|=@H\Evyb+gpv 4ff.>QbBc+%x/) qSΆrrY F"6ͅ.;yX|PBz1 nМW~Tz1& Q %lb}semmǒ̅FD+ l8#X38WF)K9i&&K+UHe?Q300-aYjWczPEtDŽ4]$y`.vAEts*ECo3-q{kE3)ʛ^&[yծڡ҅XChy*8) CڂIZ񈾒Yzyer 8RQ$`7L4q?nV<>zRh?C}n2Eк{Z^D6U|n=͡pqBe{8?k|l4`ظf^,@KHJYA^oLYG6' uU/qvI^/w%OX1 mJ^6_0vK?x۟7Y46K# iQ9JVw,I1Qγ䊆5@ ӧ. ? Xʹ?95\#0*0Իݣ^10_pR5#Mz oaYeXCN:,uC,k$x8XnǪLL`,mimU5ہS˽n.C؈@-87xmQE~R"P@D@LdĢSGr ˝E8yu/U+LKoqCRA[H,sEb`[{EJku ;d<~zڸ7Ok^>aK[*DMnZOT Jճ~dgkQ%WRL: Sx}OoU񦠉X  K&d/;-9]^JMaDL g'`SLez`T6t`AO2qT֛]q^`peۣ;0bfr1/{ bw` ө"Jc 39cvU!ТoεS-qS'20;-ʿLUREr|BngiYb[7w^?{(!6h52#+UFNZsжdX1jG6RU}m+>|0Iʌo0(:+tqNLesʑV32̟^6C 2))`n.ef'ނ+Ñ`6#بu uA6qQbiG+Q1_NWc1] w7]tg_-Lȯ1BWK-KՂgR Ԫjs Kē/׵VUziՒB4sYtwZ6o{L/Od5YW^L-A@8RD4g $Tyw5tPK2r݋S w-Oj0t W e hHCkr1DO(y9?iNrMGDְ8 Q(>Y}4VY4L}CDZ[qswzMUkrQuo\ԟ\P4_DY,P F_q G')ƺDxZ9}I>^2[ ZNc2'M⧔7]Zh">ac&-]o;U5m?kΡoh"1Ʌ+wٴ|9`+ifs(s>|rʙA +uXNSGKP0獮k%TulhCk~8rnw&LɜLH84iz!قЧ]kU/tP sZKomo\ڛ]2mpsF-XLk雚=͟]nA^E6"tm``-S>HNȃykj1fk )D~'r 4g?,sk0#рٯ]poRЉPӔ[/P0Of CB06|}0SvۇT A]`-lƀu-j5nQmxfCj:--|YItKH5W֙ pcCAf^ѧ4`q! D#k$>`}5`{Z %HYVt}/8#NzOT箵EmlK *FxWcfӿЇwLOd8(btR*xtmMe 9:Ho[ulk0. /$񧸎oKk:6_"mtISLG{(SzuqYpJB"LRscr0 @Naq-erA-7fG*ËH=:`-06hMq2On0JTW.qI=&#3;0 Ea)o͓~0LYs,+3 Vf>-:^hҡo3ݎD7,}Q&ElY#7mGĭaPP,j->{wEi%6냇Vϲ9F W>EW~g1yfi،E>7}DW!"VA.v'ŹcLF/?1$`arWϞbOpBhʄKk7Ë \jcl=s#TљL°}߬ i͉5KHo(JjrᴉKH AdrvVQ* EMU$^l#ŕ٧Cc