grub2-i386-pc-2.12-150600.8.21.2<>,gsp9|9m9,#d¸Ɗ4<=Vyϻ: )Ҧjn~vy`98i:=*VXeAhE״c7L!XBO nJYL&xGg|̈́Rԍ[X~'KyghŜEX3 xݙ<<}1V̱ yکf @x?xd # Yhlx|  L33  ~3  3 3 _c3 `3ed3kc3qbq3vPv` v w% (wO8wXQ9|Q:<Q>FGF3HJ3IO3XPYP\Q3]U3^dbdcesdeeefeleuf3vj wmx3xrD3ywwx'x0x4x:x|Cgrub2-i386-pc2.12150600.8.21.2Bootloader with support for Linux, Multiboot and moreThe GRand Unified Bootloader (GRUB) is a highly configurable and customizable bootloader with modular architecture. It supports rich variety of kernel formats, file systems, computer architectures and hardware devices. This subpackage provides support for pc systems.gsh01-ch4d%SUSE Linux Enterprise 15SUSE LLC GPL-3.0-or-laterhttps://www.suse.com/System/Boothttp://www.gnu.org/software/grub/linuxnoarch loader_type=`sed -n \ "/^[^#]*LOADER_TYPE=/{s@.*=\(.*\)@\1@;s@^[\"']@@;s@[\"']\\$@@;p;q}" \ /etc/sysconfig/bootloader \ 2>/dev/null || :` for bl in grub2; do if test "x${bl}" == "x$loader_type"; then mkdir -p /run/update-bootloader/ touch /run/update-bootloader/reinit break fi done!*( >dK j$4<L $  y4 l    te <B4 @8lh T0D(hb&?4dlEt5l x TD, @@)J d ( K;B#0`bpd' <0(%@x  L!\  %$j<TX8Dw9,  lL=" @8 D | 4 8X" ,lT @tDT( lt- t )\pdd  < @ ho(` pH40 . \! D`  h0#p;x (th4 4 h\\F8/lh0  H<% *L $  'dp|!TDQ !n\;LdA큤ggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg071e41b030c59b3d9e2cbc50171645a3dd819fc2505938bd11af38433ad42efcbb71b1a958647e75ccd990c30e25c88b75f198c49c42944317a9bf952c06f2ec03843977c881f31ce7ff88e48db217a1c248404f198c7bdc9c5fe3aeff4b9ec47a900902dd5d6a014f256d394f2b5e87db507d542f37e5f847e78e61557eb4720edc86aa80e92a7d31a865ad5cce74cd4c43464bced3eb44794add582e506ce187e372ca4667ded88bf95ba48e0871f7e1c74c98205f9b9e0a8f59694b4410436c3a0a7c9628ce2102a07bc0966043ac773748d4b63c1ad494a1713084e5384ca8d901caa4a994c481feea58e47261e0ed6d32846e1184c506bf0885575f574fe9dc1c21ecfc359d349286377f8e53841e52b38f308feda0bd3205f4129cac3a2ab57da6d3add0a73c70e336c882c681cd5be93b6fed66422715326ad0734c22447f4fdc12e31248fb14483330a096fead352a1d2ca0fc0453a724c3c1a2760054071d6fcf124716b619886e695deed301513a46cc66a820b4c88a2077803ef98dbf19d287c91a771557f8f10220d756dbc30f1d60b06999672cf666c8ce472e10044eb7aa679cf77122af7831ec4fd4e5389f38fa5e47c815a0df89cf18bbb51d4b9dac2199b63b8f6a1349b89d0c3da44df95e8bc3971872acc2f5a7f5db274784fd714c2fb09b54927dc6605ec7c08356ee7811bdc4c9d79ee5ffe13294b117f047dd2e0598b264a0a0874dc8d63dceeee8482ce6f710910c18d0771b1c98354bb72b433c52ad0d5a2423303721398c177ee171ab3c1368391966d86bb09e21a8e21b3c4f53765e92c2034ca200518d64b11d6d66d7177d8122961cf6c5c60512fd2a51006d9e88f71260e4c6ed86c7eb7bc94a0dee2a61998dd60f229d914bf93098d09e0bc33cc7d1227ba87a781b923e4456bb03ed27cb80f80dd91f95396988f3baae5068a183d6ca85b9a13443ca531fd882a559023e56bd5a856a3e6343b7e9f06388566ea5b6e8a3535fbaec1f695a0b3793caee5386237d4d3450b0fa61321246f8d3509d4be85feebcae219f909a52ef7b0a7213c344a74f87b23566224ed6b9115ac26797d1cfd405bc229e4c5e99d6b18f12463cdf9ecbac672d3027be0a695db635d0bdccaf0a5184636956a0769bb634f26429908c9cfd1d1c9dce2e102959781563c7c1943172a950e206f5cc3c57995bc7540290009583724d6ec30826e0580e80172eaae6b583fd72b0be64f38e604a8af89febceeb041e1e48b2f739efbc84b7a4091ece30784b3aaa77f02de42b94f24f1e71a267bbf626640ab8de6cf5851dbb3932569d59c1932ed57db6b2be759b72111f3be14cb5944c5652ee2c85f0aa04bb8af1cb18fc65b611b04afb4f36336bc9eb3b33a67c6651daaec50e06a414f7d404d3ba696708b7cd1276049f87fed3f2f497b660353dd42c7ef5ea0ba1c489b8876c2de7a101e42a2bb9c40cb5c2c09ab0916d6c7d2b840f7c5f942f28409b8c710bb60f474ca53fa3ff26c7a0258d837a67d7ec501288484d9143c3f7a739b26b012eaa9ee0b41ca42011f7e97ee401e06e19d654c674c7050df60d24fef77ed631b28d90d81a882cdd9cb1f66dd3b44d96c43d319e2ab331b3a0f190a49d7e60896b96002134e0518ff17f5d63f26a8e81ba972b798d5797373b26ca852bbdf5bcea9a9e4ef20ffb57cb7aa41e05883695a255918f78f7942461a94696ad3d92b446482617a5f59983e7bd8833d1ade37f58d2bd3d0eda2fb5bca6174ee42958d92fc43d707333182f1543bd9f3b9ca3d0bf96132497bc1a4a1ee58495164a36892661f791aed93944b64856afd54b80035027678f5a66148f7b17f9f123c3f4961be984f1fea4284ae5b5f4528a2149baf5ef12b1315f43a02478e686e73bd19e52f12fba0d1b1e0c87c501d32831b1036be15adb837dcf6b6600e7efe665ccd66bfb98d14707105cdba79ecbb51ce933470fac9316ea294ff936a7c3ec1b8e955ed40cb28a17023ba8936eb7876f91c15c1d058e2a8e16bcdd73fd8788f0d9c3d9c053097d82dc5aea51b2df07ed4c988449bcee3c7047096d32040363112f65811002e2ced20bec6bfea577fd68f63e614463ac61dd7f5a2a3dec6ec20a0c007783a2ddf3083d7512291c9d8686db7c72113a1d1fa647bb2a64cd470b2fcb0e301db81860c49d23bbad90e58672f70a33d97e420d8e54cacf174bc643c6bd1d624abddab53b01a287f0ed1cf2f876f56009000a781b847b28d746d95cffec9cd883dbc776a01ae849a21406b05a5852f6751b766f38a94927fe9b7bc1e809f0363e778e14c601e800faea271a2e75d3fc43cc4c26c09ceeba35d2f801b141bb9bd35116d4954e4e4c1cee717570b92c285829f7652cd6f7c4ed003f6f3d3b35c6e2cedcae2f935186cfbf9e63835c650f6f592a9134e3bacbf501d690169cf7d382458061d087f078b40e35462107db6b8f849615d90ae413465075742c5603a7386795a922cbc7351b283554ea16e8529a8cc12d73856d1d65e713d644605f6d4d2ce1d1888e8c4b8d403a9232c288cd06329798ff7f0d85d60bb3a10f38aae561db53e9813fee38cdcbc633fedac6d71c24b2415d60e372d1dbeb9f3faeb88dabc520934fc1ac222ef190398621d48af0428aff3de457012cfdfbb2b06c44b3913ba2546972b8d1b5cbf79d5e86ffbabb6233428d37e90c21a40704829153c72b8041aba0dc61a3dafdfe298f2393bf7039e120d2970d77eba0194b7859b043f46844ee2fd5a20e9139c3e2082c84a337bb6f2bf1270918a15acfcf455ced938466c5ceca40c3d35c74f039d9a255df122619cbfc0840356d7885d575537caabfd92aa661335040cc7086a45984742c1e46be84f23b6e2027a682ea930adbff1298390d0b7f4130aef881c2b4f86dbd06a65d5f4c32c67af057984e8623e446323b7cccdb865380c3462ab2a1c0bdd581d12a1c10f0e794cfffa2a330b211976f5771fbd30219989da03690a16d4de0b3ab7a364410d17540bca434eb076f9c6d4c0317a4554c4571399d2387e3f000abe054f84f825ae4fba2760d07f65e087319d5c3ea4177205d141e5283c629b1273c73e12949211e6333c7f785b6daaf4e3c8e97c0e08fad9b4834361cb231ff69a1ee93630955a081201315ac5db4b6f76c9dc59b3ca162d59f7a8c59939072336a233543c65412575d4a644f73059b3f687a2bdfcb6a9e0fbbcfae369f74745423d3f162fdb7af7ed105861b701d946153029b3b689214ca9e01e3ec71c70256bd0f5b0f0dac24cad9a2a80e036710db226b58d5ba03d702c10e23360c6199627a0141dac383556a0fcee12da57d2ba37ff9876a0d58cb52ba53ffac2f57800c84691df0985d6e73bb666471bfde7a350a913785ef1081b3a1b3453bd5d6f2427bb8d2f1f30a3efe20807b6dc5b2693d5219d1ddc6fc10270fcaacae1349a32486857f6eb854e1639d0f06c98c94b975fbcb560a5bbccc6c863b2ab82ad49ab54c8d752a120999cfa71aac94c9773ff8cf7ddc28937f8ce2fe48fa1a13b00ef3832f70515e858b406de09aedc4b0f2e5b69e7ffffc302aee9ed997a9a563a90eac13f2e3b2ae6e2464b2c3ae6a471517788cf8562a24603e67f0eaa2e39113c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855c291c170c6a4ad1e2f039c8d5cbc8904ba2f1d4dc28cc5305c286a278f45307ebc4845be8cefcfe88a9fe57e683204f2c9427e9195fd71e3ad4d627c634633d5a81780a4c9dddde0bb88fdd1724b576b86e4e6fd3e3f12ab299066640653248d32fc7f5de8c0a5dc0b1e7eb609ca31a77eb3475539e1d97a4543dca1b9b26c5759e61ec581c157ff2c9a324c77acd960343e0eeb55a57b35ec488087ebfeaa0e2677a0609edba91ccf55f72b881d0240fefaf340f2e03b577f115b4924ab2a92436ac9e6353db9a765b85f4dd31214306d5d9efa84d6109a5953b196f3e91aa0efefc966e548ac66b632f7243ce0bd2df2655ccb011d807283b2bac956960ee659847c21d1bb01c7b2a86dd2d3d23fc6f4a7c90915dd7ce7c5ba0124809e1d0c742c50a396447edca6ef2cfbb687685716eb1bafaedc8725f2906c5f8707a91adadb05fab6fdddd7c90cfcc594fdf1ae61b8ce5409057e890f58130629f578839e08d5a81d829ddd10cf8d1a422faf5aab3b1d43e6f26d660de8b9c846239e384f8069aadb94be6e848b9e565ccdcc420fc423628bc96465a27cf614833134010b272bd38913169d8ab2bd99e3c32e6e3e30281abea601885ab2ec68b37de5f8a47ced3711df52b59adbf5cdbcf21ad070532ead14234e0a34cab4ee151ca0bcd53e0b42b70f00fee8441b8a16e1aa92ea8164346b4185c963793e7df90dc3672630e8a9375e56bc4840805e2d78c439716431a6a4f2183eb3d4a681b9a0bd29f287312966baf5ed850130b37c87e651732b6a779d03b8d76eb804cd2a59466bb37712f04bc8564737e7cc315fecd7e7e9b21a65d431b32627ec7ce11403d093bcbc808c2c3ee3f3b2733dad84f1c83c3badd7ba92ee8ed11485bb7bfb533cf5d5cb62f8a38d6de6548c6ddef60b21cf1df04b40f1ea8870690eee52df2d603cb54483a4371c4b058a0afc67da045b69a921f05410893d4715758d344a044ecc79aae3a31cf8778229537844dadbe6b0549d2ebf7aa5e55faa3887e72b2aee0568e793eeb846d6cdc6c9ecce8f1b61df0b53d73d1e869e050110e13daf644f05bbce49de4be20e1ec3b57915b61fcebc739fabcd611ff2586735af6232c2ca60049787b9ce430777274de4eed5ab824ff24f7c02c25a378f12a350f0820a3ae4d1b38f183ec2e1ebdc188e0979bb1be12c7bd1b9f2c49c0c528cfc61159ca14b4bbae720066c40a01215d6dde055cc379eb1fe8e867681e001cb90c47edd1578a3adf651cac306e156427a46364ae78a52b56beb37e7773af9c1a2fce3e52b3a7660fbb0570df9a221799c65fe66aac439e47f243fb11c7175292072150448d24e4d4d397728947754bece35e054bbba68197762e6014868d6a4a9d76afa829e96703ee0c687a9d799767326da81f1a18d17f36eea52d2e35190590dc64e1e1bf36509f3f79cb7e0f12279af9593fa65003628e3fe1f9990e115c2094504300ce0ecaa821edba962e1c1989b697a1addc6b194f0d3130165e445580977404240bcb376cef5a127a64f3f767b60959f165f95db17dfcc56d14d593e1705c96dfd761e5b7b0fe571621a39636bfe793f0a766d78d0f84eb012cfa872b9944e9f6bb7a2c942d4e4b4fff89c2e939a4ffe42b380544ebc74dcc9bdbc48671db650deef48f47d8ed87f5964f15762effeef3cd3963be889dddc8cb56f3421ccadfe44086f5468b76d26413fd0ba89008088549daf17a03c6e57ddf687a3a9246e5f165b56f6b3302af373c43717f07136fc6de8fee08833e571263b272493d271495a3afefd98952bdfa0b23f0930e64c9604e447e25a5f3b243805af5174b74eec012410e4e8fe1d620c40f497767511d2b2ac8c22374760fec9f5577028fc95e3b1469f399356fcfc66b7e981da9c343ce3ed548080b6e20fa4e2b1e2995e1733468b85be6819b1369e180b1902f1aa5c96d76352967119b7eaf3b5acc84f326798c2360c6323f6eaa47589ac32c4ce63c07df18bbc44e692632ead7456ab1504da734efdd0e267b2a91010f4469b9bef7074f3475977ac7964da03c47ab897c7b691db4c185cd0ad522fff0ddfa4b6a5560d8f312e8450f775e6cb5b106688377f6fdef6772d930fec0e5dc1fac8d42de40379ace505a069e984662fe4c5ce534cf4d0b3d6da60c512d265ef2e9d07e981fa0a7c05f9185c5d885cac2ed2f138f9220fc12a7d5ad23bbcd2ed1c3dd63daebe88ce12d9b2d0d8919ecdd1c14c06072e04524954dcf0ddec7703d6474840064a921dae7b0f3fd473a4cc6d9d7750b6d0a20f85624794afaefc32c26b8d057199e4c679bdc101049197a59c30175e758ba77fe6b5de8c1c4d4c509bb748e6a77da6cc50d4ebfefc30b2162106303257a9a870dd4880cdc419dce6c2ebaf1cb40a8dc33699744d3c0a01fd1a19a23d9fca0234bd4fc6e0e03811d81839089e2681878a6513df6dddf72af727baf29e0f477992b7823d074c3e36f9091f339af58a2cd1bee5fdaadd24abc23d155861a01a195da111050a5f057dd7032f850480ddb063430d33e24e968749aee3a245acd0f2b49b6bc33f5adb0437f96ad5602265c815c72c2c8633544663de10dfd166ead8a2e7dcb0437a40928d9d251e3fb701dad819085425a5278c02ec599223a902229a34a945ce35018420d5e77616149d820f3d5afa0a0355fbdd371e78a2fca0c1e5be96c7420337975e5ce2ba40efeb0a5de671e4ffcb077b64442a26c6de31c83306569a226bbc0301c7cbaed1d0c36cd1ebc54c14202e5d6d590a4eddc6d2caad9c22552342f8b8cee34f92bea574fb888ff6deae36eaefc457c264e28e81a217554bbe1dfaaf380a127ca33da1bd3e6fbc52c570d0d95cb3d0ad9c5ec65cdf8d4978082816b9be3cec14f0bb8a6ac32a1e5e44c6144fcfb2e2426bf9662a7ec828fedba791738104829f960b76efd941a0bc038bde88b1a9fd047683ccc1c586a76b6ea5b7604ab0a59c3cdd2f8af7e61f17ac2522e3037ee01d2e14c0045b3937c6c7c04ad8ad7f3930bdf2e19203672df0687eae22366ce17161bbfb94758e26a1c7b86ca5f13d6ff39a5c3badcd849ebcdb2aeb9a60a0da9c54fd55544598ebd7133c0ed1e3400a105f3a1e12fdd814b1396094e7e6a7689c52e5edf2573864d6516d4efede21deb573d357b05f631807955fcf94725565250d434c7d334d6a3d5724ddf3fa91a20f3695517483be3ef39de340e61a86c6b3281d63052bba16151dc1da0dc424ff19a88d6c72147d3874429ae7993f656524588e8cef4714b0034be3a8b09b2dc6e79e213dbe9f655ccb715cd3eef185c0dfb5be4c022fc64f2cd26b86558b0d13b58d8a4587909f1db707981155df5d1dbbd59be7870a016907a67ec411e61391e7ed7411ec4bded8956483154aeb2babba5841553b7996c70e5e34a96c965f368a34d537dfd8288e6e47b66b712184f9c192a91df7ff7b4bde9d74bdbf9ae687386c13644c2cfbdf30bc3fa91e51b85afadb92d276fbd3a1321f73f50a313c91395f5fe96bf88f09faf1a288e916ca8da131618ae68c47eab842265fafbb0d4af6b1fb4d00d088db4e554c9de34b398ce012db9eb44cee041035f91acd5f3d4c03c6466506329c6208dd2baa3ba48803dce684f08a9afb6458c8f8cc8a69b53e0e071475135126f3e4c45b86c3b449c7cc3542223306c9d68129b8141052edade071b22f3a8c0ddffe99752597589690f4e26716ffaa90a88a980607f7248c605dd653efbf87626ab1ba2ac0f342292237467ff2637e69a4db9f6bc7d23c5934496326aea0b9721903df35a99d6e475959870420cae71035def4c7c07a2820021df8d80033eba9256bda39b8b2b67d1aed5d8993ad546f653efb71c1aeef2a11e52d0de5c0c73de1cecb2a91d76e393c184903f63c3f5c4f63c562685e636ac6808828504f8607fbcb6f294c1432cbc4e09ef3a206791b9b3c3165a38040f0f11ced2a8b7c356f9e2a6d33c8d2aba436d1f69fbaab88f25f66a7137e43e395efa4970313d7804aef5abecadcb7c3d7fb10d27afbf99631ba6ad0a9405f74e36bcae376850dc97904cbcf106bbda84b0348c0be4fa1f6ae549128b4a9a1f863417a441b2e0dddaeb7bb09c86ea43add45e5d729d59d41f71ced9d61881affcea7c9b0e6e060df451fd1f09ff28bf2a5c615d7d36fbe18369119bc00da8085139b021de4966b7e20e96c38ce9921d30734c872a3f18d9bd64caa4b8c00c4f0bf07b4267d85fb58ab0904be4713664e7846faa70c2ec7a2032698fe0e9bd17e7bbf12f794f1fda9ad486070baec7a2f1759842c18e8ec232a6695fb6af921c077a3faed418eea1146dd07abe926e4bc479cef07d131acdf96ca77d49cec139f62e0f442fd1d0d3433d5ff360dc563acef00ffba29efc54cf8960dcfdf4a8d20b794a8b923f1f951403e0b95a28b60e52582810a0ab9da6432bedc584b6e1e923a05c84f48eee5fd92ae28a14f050735e9899a8c5f60d8fe33f1429c5de12a5dfff60e47288fcffe1139114c00dc5a1fb44abd5658cdd2ba4b6ecc4f03480629f3a480e5a9e9f1a8fcf7691166e6976f7280bd3acc234cd4682ef6d88265f61742d5f56590bfe2acbe3894345c3e88218078a15f8b2df3d1782cdcc56d04a2e6147544c0133c8e058c3ab996764348ba851c1f74f89db8b5d6278ea878bd66e2501cf4f187f1396d4e84335078096890a6b8a1d7357662b96cb442fc41698d25682ab71e179f782cacd6139530f353c0b5a24acdefc70e8926c378ed84f883005198a0bae83dd4fad4eabc5422c87ef809e34ad6190cc3a76de0d1a459bf5fc6fab8ac7930d611a27916567e4b19cef69b3ebc06c2048cb62b0587c8be7b645db58182a87879c63ed3d455b48849e6b47122faadf06e633e87618e62229b91100f1346657b6ff18ace5b4065febf6048f16e7a2c32545200636cc9671adcd1a8078e27093c21d721bb41982dde9b77fb3bf665e10f94714ddc0440d72fd0c885aa40c0b6fc1d31c3b3c093c48a726c0ba9a7f8bfa28adcaa29f34cdaa28b7f14cd2d4be2d5f13c841dd255f2a2e4852a0e236ab31fb67b61ad7d6aec38910c354083b723d66ea2189b0cd017e28dc69de653df2e304ef2783ec71cc0a2b04a917916b527d15e0e0e62d8a0267d369d4b383e14183e2437ac4da33a65d8ca6758063dabf12a1cbf6f8aa69c916cfb3cb20647e4a8da92ec0e1349cd7819732d60e178039ab97dbd793e384630ea58e64efee556acc1e90005e28c94825c9e1564d4d9ac711b4ab3204db7af249ff1a27d1ff2813228f8d9448625e5885eeebf5b6a2d1fb0837cc3ee80bf271009af59af2cd16841e0c2a1c99004bac7f73febdca9d8590a528b3987d65da8e155dd2dad45e00f964faec0af1b457f7e242e8216f3c130647d98546ae154a2f1e55d34afda4cc9f6d97c67efedf8b11d48e2942012e28307005bb66ec6599b2b3fe7ab8e1c611ffec26685a3d5f84d20723a27c1442b861be44fbf58a4525eefe2ccbb2b5f7ceb21e8be6de6036ef0dc8a908e4cc248ef1d8aab87172e722d8c5bad9e137fd43994e0fe3d0fa16b1bf66cecf0cade9b655eaf1736a282ff588546472ee06147572f9dc8ceb83c4ea8afc4fa4f23da9f683a678d8fd1058decb9c7287014e19f0a5bc1f9f7cba3e2d3a8e43d4e86494587567bd3d7e0a3d4069370b4f8ccf0f5a401837d555dfd63192a0a599697f94a1dbc07ff3caa93dbe92ba6452cd529ad5a0199579dd8218e9def05a3462de730fd11790b91aeb538346c5a35e7001ac770a7b39b03349e8d59e87b77d2bf4d4a672d35a31a04b944af4342722d50a729e1672d0218eeee729c5127fbf1cd09c19563857f89c135ea3775901e7387376e47923a5767716667b170b95504a5ba4facfcd2196d03fba3b28fa787f870a0c9660dc56c85fb1cd4bcfea83625788c691fed9e21f7833f1224d718f5372511abf7ad1dcce850713fe5bdfb1ba00461a38a6789117f419eee5d2152fcbb2a8f2b98137a7ebb43742992a301e6d060336727032dd695f60a535db35c65d85826e9282634af376feb547b250d5ebf7135d2e9019007bd7c3013ea207f04edbdb2d26b4cab6dad5e6632d4c70009d2046af18595b372632330e714825b5c6b81bd24b5a9df785a45f25924ed92910eb80fe6d632c2751da82a0cd6fdacc70401d52816fc958fe47581ad7f4b4bd621b014c50560ac03ada9b0c2023518ff1d5d9f3fd80daa327c94ece0d7010e12ab8e55636d5d4ac72566269a41ac8afded87465ef02f23c92ce4f147f5eff2c12a7f22d2ab564b9b34160817a9eb2d416ccd6b27ccfd85182dc3ec8372e1ef2fd02644c46dc922ba5742f77ec893de112b2d5f801c830f612cbf0cf4c98c70f297d6d07e3f5f6deb2ba881df57ca2cb162047009cc4cb832ddafafb8abd59130f4d095a7fc9fe38e1e23be1fdd52ce77b0b1748fd536321f94276fa3cd97fcb1c6c50c1298a6e89f05b1259088a9934fabf075d49fb90d89b4fc921870b09dec376d59fb6ef90e7a174984bf8e889224681479f457d275cc1d8f4a7727c5eeddef5069593b4d3c94434f7879067c70eca310ac714e51ad8754f12132212efdea598e5c72d6980da1a13238dc711848a48c8df168a32bd39cc6bc643b95e3ba3944df0ef80202d747d503e44904d910ecdbf04380ce85ce9e0fb1197ce6f18322c1b2f57ffb31e985c43830d323cf7ed55d6e13e7fcc88a3a6af582ef0e4da0b59ceb569b22527c438e977c165910d201c6972965ad940cc79a4d297e160313482288c176f7e146415e7e165198f596d0548bc7eb6a6641b7778dc93a3d35bad6f5717f0c87dddb903ba85da65e0c89eefb7dc5b4a081ee1b10c98e13f7867d027e57d9360767b442523293dea595c84ecc9bcee011158bd210b59c5ed311a83a94e8f1367d7ce5ead3b0fae0719b4816a2b00e899302cf08461852e71d283eb1694f70a512214ebeb8cb88e8fc9e40e519d4b99f5fe85e65e99e97ba06702784515a2f6a14dd50d78056e78b56f7bfbd4b3beb9c19516cd8f3d4052a976e23320f40248a83e33dbe7f08a6354c019cca9f843bd132d58f382a2ff671fc73b8ed404c18e62d4100b31250e208322e6c9b8e7b9e61cbae7327d30dc3079c8224d83e5706f1508adfaf5e383310152af388a8811ab2097b81c1ccd45ec4733048eda4262cd0042415a47209a9a7f8a1d782136be9d16697f39c80fcf96c586e71926a52debfb0b613fd1a21016a5722bd75181373a8c759dd79026d52f1e01552c54f274ca3ee9d046c56fe58478d9f60d430736f25a6696bf098fa60cd657fce787ad7294c94c0f175a0a0198f8d724846024bdd0ba27d950567c04cb913356d6be6839851c9c6cc02a4a75b2863acbc56f104d604bac867b69c4eeb60fd2bafd43d16690e99e045eec9f622b4a44fb35328abfb8c3fca1b404918b2284fc23f4bfb6979d450b443ba47aaa7cd83ac5e6e3a3c117218431f64f2fedc5c1136f6b0bdcea1cb3bc74707703d178f6f6d261c4c2bac57f93c958991ea669c7d3a813c179273a0eb5ee2ab5349d85274ef58f6a05ae4ffe4122d8dd8d39d9360f8de77cd529e2c4f28f770b7ba63383d37e07fd86f673d1ecaac8fbaff853d85aefb1d608c315df54cb0eb506a67d118a9f9ea4fb09a21ac8c56f1aa9380d7a1be2fb2922a528e68fce5ae6a89c602b9db21293c7bc097538b1d256f7ebf67592b6b8f4f71f291b26a01277d84ec75b91b428760d15f7863b7064be3998a8ae7202959441e52c70a4408b2ccec3f9a4a39fad1f27e58cdc73903062809a384d310299de0fb678e5d3dc5fee78a2224cc3e329baca9bf4be8c6e0e5c5c0b510d91cccadaa991307eb110e3fcbbecf70a72e806a6f73bf690ad5ab805ded821972be9546bc550c5dfdfb76cf13430ca98332a246fc61279dd8e994d69c52240a53b4c310abd3532a41f46ffa229585bc85b1607b8b604e4ce242ade81a3bce3d48cde5a96dce33e96f046f204b012ac8fbc083cc1d503c7e9ab60e731097fcfcca22f9d5f948bc5f21ef1cceef0cbcba4827c2b850d885658316272db11cb4b3687e4334fb2a6a56d13b8a26669b60a7370b152915d07cd4917968c5d4e699e2bae73e1749ab16c5a4ea6a4e0f2c435266ecfeda60629ee58563cfdf91ea90f5bbe181d89fe739a9563b17c31b3e726e3fe3a23525c09720b212ef23b42362d7277c4f0396fb27eb3c6aec75895e9deef7ae9038caaa2d527909f129a5f7028ba723c0a2bdecb93208619925449e0a606dc6a94f32a73ac78584f83a8273e07a2956a2b5e87f507d618d59681ad0d5ef3f34ba061a651665e266b43a4c2b4e6ece096a28b9e4d0ca6f8a966270cd6e655b5217bd21bd91466963adad7a4e320f045d1f83add6a7dbe29a3b875152a9f2683ef69f07d954b761de31196581d01db845b96112f907f6e8771c734e1c50689a9775dd09720c493b5b482d60c3a084fbf82afa205ba7556dd4d10b3b11809c9e87c88911270cd697274da6afed8dd8547ac566925f3d140c2c5a407769c23f3eab860b8b9c9cd467a76abce3f7a77071e1dd778d60644d9524789e8b1f4a3d8762a2d0569c83dbd9e92a3492857d04b5dd22e78ff52f1fa1a1b07e779c5c7f163e70d9d8c3569b183bb62008803f2a3849aff097ed2aef5d0a08a89ac94927ea94a6d7ecb1545ad67d5ca6b8e51bf27c7a08aac9145e629bab60af4fff45704e339774ad6f002fbc22626f1091502fb1624ea72d0c4e7a58454a91045ea771071e9ecd89450dacec2774a6a45326979fc818b96ecffcac490d2ea79b86c3eec28c33851eb1dbfad5ab8a675cfdf04f93c53123b9047f7a81cf3976d14b38b178b435df661fa7714a808ea75db6dcfbddc10908bb13b83655ad3d0d5b8038166f8b98de99ba1ccd6ddb8f1e90e13bb53f7265f01e44d8b6aa88ea675627c210b975af9f58406a8eba1c1fef8603eeb89ce7a948c8c6069ede46a7305daa3c756a593196278e2ecaa7d0e1fc0897bba9f26e56ee8bccd29dbd2a72ed98a9aa52b5582002c2b7e18370e49a7a5e7329176f35d8544c2474796ea37bbcbed5ee2d2cdc9cf93235a520fa44ace34b05a54f4fcb95e37c4254bf51a909f9fda18ec8b4df74c6712adf90dd218be230581453eacbc95caac7c1ef5c4fd3968924679466889a75231698b8a7a2a2a5cd8f21ca45025cb83c786799564fc14fa8e71780fd7875ecfaf0d4cfe96880367bca3f62df73b146025f63ffcb080ad63134ea206eec2f8b4cba7e0e0ec71291e567ce5fdc996e9888c408e5fcdba6724a1de3040d1c576f1e8d32b9fdf02ea9e00d826bccbbb732a5d916c54f6c02bf9f15da704467e344330d0cf30230a7bf0ad36a23c7eb2976449b61bf93fe98841a93d6014711875868e81b60bf50ec06f9b67e4270a435da508801b48acb32edfb1c1cb630b17ed5bc594e2810a02360ac24c6dd0d79d9e06fe5163724e5587cb3524056df5e73c4c8d2bd31579c0635024be920b9947938b755511b09b13d4764035804a830559016cebd50b1c441707bf66733cdf1fbc0a493a81c9a06cb9ef93642205a36d3b7c266bd01e47dd37e79173a55a413ce04a84c264abf93d403e83fe3970edf9ec2b9a437e4b4b4e2fefcda0fd6b62106f3b3991e46e010a7da94d1410029d1d8c5e483810ebb05407545156959df822387e33bc255840600c4a72f9fced8518c5535793cd37b535420d4e5b176011b606f4f879d3215f3b3bd4a623840c61a068ff2187617725908216a630baf79c8e0dd2407b0caf58204221206fad5f6f52cb58131af4bbd406ecee5b15292700f7f5a6ec050c52f4fb99959d8995ccc6f10ca59a7554ecdf37cf635ac354b2a6b5c2addf38aad4361bf07495f6f3b1781fbd8ba29e4f0d6708897705fd642a34766c49d009dd85187dac51de3ed761aec00e4803b687039df33812b990dc2eaf8ff60e87b7a7741c29a90cfa95c32748da38bf9cbb49be8f71bfb59646132acb12a174f3786d82330ccabb52b2f1476e2178d6280c74f2f8d8df9rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootgrub2-2.12-150600.8.21.2.src.rpmgrub2-i386-pc @     /bin/sh/bin/sh/usr/bin/perlgrub2grub2perl-Bootloaderrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)2.122.123.0.4-14.6.0-14.0-15.2-14.14.3ggřg0@gg+Z@gfff@fJf@fU@f@f@f @ere7@eПepe@e@e@ee@eeL@ehy@e]@e\eV@eSa@e?e:Te9@e6`@e-%ee@eee@e@e e @d@ddܺ@d˖d\@d du@dS@dI@dBzdBzd>@d5Kd?@dJd@d@dd@c>@cc@c1c@cc=@cHccc@cR@c]c@c|c{h@ctcr-cr-c[@cV~@c>@c-c(Yc$e@c$e@c#c @b)b@b@b@b@bkb@baG@bT@b=b4t@b1@b+9b)@b)@b!@b b@aea@aq@aaa{a@a@aaqV@an@aKa7T@a/k@a.a @a @`]`ٹ`"@`@`@``@`q``}p`n@`P`J@`8`3`.V`U` l__t@_@__m_X_G@_A_?@_;_5+@__A@^x^U@^H^y@^t@^oj@^j$@^g@^Y^K^9\]e@]{@]@]@]W]]V]0_@]@]]@\ޢ@\ޢ@\-@\\\mA@\b@\N\J@\J@\I\HW@\@[@[@[[@[t[Q@[-[~[l,[j@[h8@[W[L[D[<[3|@[*A[#@[@Z@ZK@ZZJ@Z̧@Z@Z&ZZkZZ@Z@Zz@ZyZxG@Zg#Z*~ZOZ ZZNYeYA@YX@YY@YYYn@Yu@Y[@Y0YR@Y@X׭@Xg@X@XX~@XO@XZXXXX@XBX@XYXpXX@X|Xv@XlXfL@X=X @W@WiWWF@W@WWW@Wq@Wi,@WPW>@W=W'A@W!@WV@VՄ@VՄ@V@VT@VVvV$@VrVqR@VhVetVa@VV@VLh@V5V3[V2 @V#V @VV@UU@Uc@U@UUzUt2@Uq@Un@U]U[%UPUOH@U@U.RU/@UTTT[@T T@T@TT@T5TLTy@TeTR(@TR(@mchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.combwiedemann@suse.commchang@suse.commchang@suse.commchang@suse.comgcomes.obs@gmail.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comglin@suse.commchang@suse.commchang@suse.comglin@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comfvogt@suse.comglin@suse.commchang@suse.comfvogt@suse.comglin@suse.commchang@suse.comglin@suse.comclin@suse.comschwab@suse.deglin@suse.comglin@suse.commchang@suse.commchang@suse.comdmueller@suse.commchang@suse.comglin@suse.comglin@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comhpj@urpla.netrw@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comglin@suse.comvalentin.lefebvre@suse.comglin@suse.commchang@suse.commchang@suse.commchang@suse.comglin@suse.commchang@suse.commchang@suse.commchang@suse.comglin@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comglin@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comlnussel@suse.demchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commsuchanek@suse.combjorn.lie@gmail.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commsuchanek@suse.commchang@suse.commchang@suse.commchang@suse.comfvogt@suse.comrw@suse.commchang@suse.commchang@suse.compvorel@suse.czseife+obs@b1-systems.comfvogt@suse.compvorel@suse.czmchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comnormand@linux.vnet.ibm.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comlnussel@suse.defvogt@suse.comlnussel@suse.derw@suse.commchang@suse.commchang@suse.comolaf@aepfle.demchang@suse.combwiedemann@suse.comschwab@suse.demchang@suse.comrw@suse.commchang@suse.commchang@suse.commsuchanek@suse.demchang@suse.commchang@suse.comrw@suse.comrw@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comguillaume.gardet@opensuse.orgjengelh@inai.demchang@suse.commchang@suse.comrw@suse.commchang@suse.commchang@suse.commchang@suse.comglin@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comdimstar@opensuse.orgjosef.moellers@suse.commchang@suse.commchang@suse.comjbohac@suse.czjosef.moellers@suse.comjosef.moellers@suse.comjosef.moellers@suse.comjosef.moellers@suse.comkukuk@suse.deThomas.Blume@suse.comidonmez@suse.commchang@suse.commchang@suse.comjdelvare@suse.demchang@suse.commchang@suse.commsuchanek@suse.commchang@suse.commchang@suse.comiforster@suse.commchang@suse.commchang@suse.commchang@suse.comolaf@aepfle.demchang@suse.commchang@suse.commchang@suse.commchang@suse.comolaf@aepfle.dejmatejek@suse.commsuchanek@suse.commchang@suse.commlatimer@suse.commlatimer@suse.comagraf@suse.commchang@suse.commchang@suse.comrw@suse.combwiedemann@suse.comarvidjaar@gmail.commchang@suse.commchang@suse.comarvidjaar@gmail.comarvidjaar@gmail.comarvidjaar@gmail.commchang@suse.commchang@suse.comarvidjaar@gmail.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commsuchanek@suse.commchang@suse.comarvidjaar@gmail.commchang@suse.commchang@suse.comagraf@suse.comschwab@linux-m68k.orgmatwey.kornilov@gmail.commchang@suse.commchang@suse.comsor.alexei@meowr.rumchang@suse.commchang@suse.comdmueller@suse.commchang@suse.commatz@suse.comarvidjaar@gmail.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comro@suse.demchang@suse.comarvidjaar@gmail.comjengelh@inai.deagraf@suse.comolaf@aepfle.deagraf@suse.commchang@suse.commchang@suse.comarvidjaar@gmail.comagraf@suse.comagraf@suse.commchang@suse.comdvaleev@suse.commchang@suse.comarvidjaar@gmail.comolaf@aepfle.dearvidjaar@gmail.comarvidjaar@gmail.comolaf@aepfle.deolaf@aepfle.demchang@suse.comarvidjaar@gmail.comarvidjaar@gmail.commchang@suse.commchang@suse.comeich@suse.commchang@suse.commchang@suse.comdmueller@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.commchang@suse.comarvidjaar@gmail.commchang@suse.comagraf@suse.commchang@suse.comarvidjaar@gmail.commchang@suse.comarvidjaar@gmail.comdmueller@suse.commchang@suse.commchang@suse.comschwab@suse.demchang@suse.comarvidjaar@gmail.commchang@suse.commchang@suse.commchang@suse.commpluskal@suse.comschwab@suse.deschwab@suse.deschwab@suse.deagraf@suse.comledest@gmail.comledest@gmail.comjdelvare@suse.demchang@suse.com- Fix zfs.mo not found message when booting on legacy BIOS (bsc#1237865) * 0001-autofs-Ignore-zfs-not-found.patch- Cherry-pick upstream XFS fixes * 0001-fs-xfs-Add-new-superblock-features-added-in-Linux-6..patch * 0002-fs-xfs-Fix-grub_xfs_iterate_dir-return-value-in-case.patch - Fix "attempt to read of write outside of partition" error message (bsc#1237844) * 0003-fs-xfs-fix-large-extent-counters-incompat-feature-su.patch- Security fixes for 2024 * 0001-misc-Implement-grub_strlcpy.patch - Fix CVE-2024-45781 (bsc#1233617) * 0002-fs-ufs-Fix-a-heap-OOB-write.patch - Fix CVE-2024-56737 (bsc#1234958) - Fix CVE-2024-45782 (bsc#1233615) * 0003-fs-hfs-Fix-stack-OOB-write-with-grub_strcpy.patch - Fix CVE-2024-45780 (bsc#1233614) * 0004-fs-tar-Integer-overflow-leads-to-heap-OOB-write.patch - Fix CVE-2024-45783 (bsc#1233616) * 0005-fs-hfsplus-Set-a-grub_errno-if-mount-fails.patch * 0006-kern-file-Ensure-file-data-is-set.patch * 0007-kern-file-Implement-filesystem-reference-counting.patch - Fix CVE-2025-0624 (bsc#1236316) * 0008-net-Fix-OOB-write-in-grub_net_search_config_file.patch - Fix CVE-2024-45774 (bsc#1233609) * 0009-video-readers-jpeg-Do-not-permit-duplicate-SOF0-mark.patch - Fix CVE-2024-45775 (bsc#1233610) * 0010-commands-extcmd-Missing-check-for-failed-allocation.patch - Fix CVE-2025-0622 (bsc#1236317) * 0011-commands-pgp-Unregister-the-check_signatures-hooks-o.patch - Fix CVE-2025-0622 (bsc#1236317) * 0012-normal-Remove-variables-hooks-on-module-unload.patch - Fix CVE-2025-0622 (bsc#1236317) * 0013-gettext-Remove-variables-hooks-on-module-unload.patch - Fix CVE-2024-45776 (bsc#1233612) * 0014-gettext-Integer-overflow-leads-to-heap-OOB-write-or-.patch - Fix CVE-2024-45777 (bsc#1233613) * 0015-gettext-Integer-overflow-leads-to-heap-OOB-write.patch - Fix CVE-2025-0690 (bsc#1237012) * 0016-commands-read-Fix-an-integer-overflow-when-supplying.patch - Fix CVE-2025-1118 (bsc#1237013) * 0017-commands-minicmd-Block-the-dump-command-in-lockdown-.patch - Fix CVE-2024-45778 (bsc#1233606) - Fix CVE-2024-45779 (bsc#1233608) * 0018-fs-bfs-Disable-under-lockdown.patch - Fix CVE-2025-0677 (bsc#1237002) - Fix CVE-2025-0684 (bsc#1237008) - Fix CVE-2025-0685 (bsc#1237009) - Fix CVE-2025-0686 (bsc#1237010) - Fix CVE-2025-0689 (bsc#1237011) * 0019-fs-Disable-many-filesystems-under-lockdown.patch - Fix CVE-2025-1125 (bsc#1237014) - Fix CVE-2025-0678 (bsc#1237006) * 0020-fs-Prevent-overflows-when-allocating-memory-for-arra.patch - Bump upstream SBAT generation to 5- Fix CVE-2024-49504 (bsc#1229163) (bsc#1229164) - Restrict CLI access if the encrypted root device is automatically unlocked by the TPM. LUKS password authentication is required for access to be granted * 0001-cli_lock-Add-build-option-to-block-command-line-inte.patch * 0002-Requiring-authentication-after-tpm-unlock-for-CLI-ac.patch - Obsolete, as CLI access is now locked and granted access no longer requires the previous restrictions * 0002-Restrict-file-access-on-cryptodisk-print.patch * 0003-Restrict-ls-and-auto-file-completion-on-cryptodisk-p.patch - Rediff * 0004-Key-revocation-on-out-of-bound-file-access.patch- Fix xen package contains debug_info files with the .module suffix by moving them to a separate xen-debug subpackage (bsc#1232573)- Fix not a directory error from the minix filesystem, as leftover data on disk may contain its magic header so it gets misdetected (bsc#1231604) * grub2-install-fix-not-a-directory-error.patch- Fix OOM error in loading loopback file (bsc#1230840) * 0001-tpm-Skip-loopback-image-measurement.patch- Fix UEFI PXE boot failure on tagged VLAN network (bsc#1230263) * 0001-efinet-Skip-virtual-VLAN-devices-during-card-enumera.patch- Fix grub screen is filled with artifects from earlier post menu (bsc#1224465) * grub2-SUSE-Add-the-t-hotkey.patch * 0001-fix-grub-screen-filled-with-post-screen-artifects.patch- Fix crash in bli module (bsc#1226497) * 0001-bli-Fix-crash-in-get_part_uuid.patch- Fix btrfs subvolume for platform modules not mounting at runtime when the default subvolume is the topmost root tree (bsc#1228124) * grub2-btrfs-06-subvol-mount.patch - Rediff * 0001-Unify-the-check-to-enable-btrfs-relative-path.patch- Fix error in grub-install when root is on tmpfs (bsc#1226100) * 0001-grub-install-bailout-root-device-probing.patch- Fix input handling in ppc64le grub2 has high latency (bsc#1223535) * 0001-net-drivers-ieee1275-ofnet-Remove-200-ms-timeout-in-.patch- Fix os name is used for root file system mount (bsc#1220949) * 0001-10_linux-Ensure-persistence-of-root-file-system-moun.patch- Fix LPAR falls into grub shell after installation with lvm (bsc#1221866) * 0001-ofdisk-Enhance-canonical-path-handling-for-bootpath.patch- Fix memdisk becomes the default boot entry, resolving no graphic display device error in guest vnc console (bsc#1221779) * grub2-xen-pv-firmware.cfg- Fix grub.xen memdisk script doesn't look for /boot/grub/grub.cfg (bsc#1219248) (bsc#1181762) * grub2-xen-pv-firmware.cfg * 0001-disk-Optimize-disk-iteration-by-moving-memdisk-to-th.patch- Fix PowerPC grub loads 5 to 10 minutes slower on SLE-15-SP5 compared to SLE-15-SP2 (bsc#1217102) * add 0001-ofdisk-enhance-boot-time-by-focusing-on-boot-disk-re.patch * add 0002-ofdisk-add-early_log-support.patch- Sort tar file order for reproducible builds- Fix build error on gcc-14 (bsc#1218949) * 0001-squash-ieee1275-ofpath-enable-NVMeoF-logical-device-.patch- Remove magic number header field check on arm64 (bsc#1218783) * 0001-loader-arm64-efi-linux-Remove-magic-number-header-fi.patch- Reinstate the verification for a non-zero total entry count to skip unmapped data blocks (bsc#1218864) * 0001-fs-xfs-always-verify-the-total-number-of-entries-is-.patch - Removed temporary fix as reverting it will cause a different XFS parser bug * 0001-Revert-fs-xfs-Fix-XFS-directory-extent-parsing.patch- allow to boot memtest86 if stored in /usr/lib/memtest86+ * SR#1071109 can then work- Resolved XFS regression leading to the "not a correct XFS inode" error by temporarily reverting the problematic commit (bsc#1218864) * 0001-Revert-fs-xfs-Fix-XFS-directory-extent-parsing.patch- Version bump to 2.12 (PED-5589) * Added: - grub-2.12.tar.xz - fix_no_extra_deps_in_release_tarball.patch * Removed: - grub-2.12~rc1.tar.xz * Patch dropped as it merged into new version: - 0001-disk-cryptodisk-Fix-missing-change-when-updating-to-.patch - 0001-fs-btrfs-Zero-file-data-not-backed-by-extents.patch - 0001-fs-ntfs-Fix-an-OOB-write-when-parsing-the-ATTRIBUTE_.patch - 0002-fs-ntfs-Fix-an-OOB-read-when-reading-data-from-the-r.patch - 0003-fs-ntfs-Fix-an-OOB-read-when-parsing-directory-entri.patch - 0004-fs-ntfs-Fix-an-OOB-read-when-parsing-bitmaps-for-ind.patch - 0005-fs-ntfs-Fix-an-OOB-read-when-parsing-a-volume-label.patch - 0006-fs-ntfs-Make-code-more-readable.patch - 0001-kern-ieee1275-init-Restrict-high-memory-in-presence-.patch - 0001-fs-xfs-Incorrect-short-form-directory-data-boundary-.patch - 0002-fs-xfs-Fix-XFS-directory-extent-parsing.patch - 0003-fs-xfs-add-large-extent-counters-incompat-feature-su.patch - 0001-mkstandalone-ensure-stable-timestamps-for-generated-.patch - 0002-mkstandalone-ensure-deterministic-tar-file-creation-.patch * Patch adjusted for the updated base version: - use-grub2-as-a-package-name.patch - grub2-s390x-04-grub2-install.patch - grub2-btrfs-04-grub2-install.patch - grub2-ppc64le-disable-video.patch - 0002-AUDIT-0-http-boot-tracker-bug.patch - 0001-Unify-the-check-to-enable-btrfs-relative-path.patch - 0003-Handle-multi-arch-64-on-32-boot-in-linuxefi-loader.patch - 0004-Add-suport-for-signing-grub-with-an-appended-signatu.patch - 0016-grub-install-support-embedding-x509-certificates.patch - 0021-appended-signatures-documentation.patch - 0022-ieee1275-enter-lockdown-based-on-ibm-secure-boot.patch - safe_tpm_pcr_snapshot.patch- grub2.spec: Add ofnet to signed grub.elf to support powerpc net boot installation when secure boot is enabled (bsc#1217761) - Improved check for disk device when looking for PReP partition * 0004-Introduce-prep_load_env-command.patch- Fix reproducible build for grub.xen (bsc#1217619) * 0001-mkstandalone-ensure-stable-timestamps-for-generated-.patch * 0002-mkstandalone-ensure-deterministic-tar-file-creation-.patch- Fix unattended boot with TPM2 allows downgrading kernel and rootfs, also enhancing the overall security posture (bsc#1216680) * 0001-Improve-TPM-key-protection-on-boot-interruptions.patch * 0002-Restrict-file-access-on-cryptodisk-print.patch * 0003-Restrict-ls-and-auto-file-completion-on-cryptodisk-p.patch * 0004-Key-revocation-on-out-of-bound-file-access.patch- grub2.spec: Fix openQA test failure in SLE-15-SP6 due to missing font in memdisk- Update the TPM2 patches to skip the persistent SRK handle if not specified and improve the error messages + 0003-protectors-Add-TPM2-Key-Protector.patch + 0005-util-grub-protect-Add-new-tool.patch + 0004-tpm2-Support-authorized-policy.patch- Fix XFS regression in 2.12~rc1 and support large extent counters * 0001-fs-xfs-Incorrect-short-form-directory-data-boundary-.patch * 0002-fs-xfs-Fix-XFS-directory-extent-parsing.patch * 0003-fs-xfs-add-large-extent-counters-incompat-feature-su.patch- Fix fadump not working with 1GB/2GB/4GB LMB[P10] (bsc#1216253) * 0001-kern-ieee1275-init-Restrict-high-memory-in-presence-.patch- Fix a potential error when appending multiple keys into the synthesized initrd * Fix-the-size-calculation-for-the-synthesized-initrd.patch- Fix Xen chainloding error of no matching file path found (bsc#1216081) * grub2-efi-chainload-harder.patch- Use grub-tpm2 token to unlock keyslots to make the unsealing process more efficient and secure. * 0001-luks2-Use-grub-tpm2-token-for-TPM2-protected-volume-.patch- Fix detection of encrypted disk's uuid in powerpc to cope with logical disks when signed image installation is specified (bsc#1216075) * 0003-grub-install-support-prep-environment-block.patch - grub2.spec: Add support to unlocking multiple encrypted disks in signed grub.elf image for logical disks- Fix CVE-2023-4692 (bsc#1215935) - Fix CVE-2023-4693 (bsc#1215936) * 0001-fs-ntfs-Fix-an-OOB-write-when-parsing-the-ATTRIBUTE_.patch * 0002-fs-ntfs-Fix-an-OOB-read-when-reading-data-from-the-r.patch * 0003-fs-ntfs-Fix-an-OOB-read-when-parsing-directory-entri.patch * 0004-fs-ntfs-Fix-an-OOB-read-when-parsing-bitmaps-for-ind.patch * 0005-fs-ntfs-Fix-an-OOB-read-when-parsing-a-volume-label.patch * 0006-fs-ntfs-Make-code-more-readable.patch - Bump upstream SBAT generation to 4- Add patch to fix reading files from btrfs with "implicit" holes: * 0001-fs-btrfs-Zero-file-data-not-backed-by-extents.patch- Update the TPM 2.0 patches to support more RSA and ECC algorithms * 0002-tpm2-Add-TPM-Software-Stack-TSS.patch * 0003-protectors-Add-TPM2-Key-Protector.patch * 0005-util-grub-protect-Add-new-tool.patch- Remove build require for gcc-32bit, target platform didn't rely on libgcc function shipped with compiler but rather using functions supplied in grub directly.- Add BuildIgnore to break cycle with the branding package- Only build with fde-tpm-helper-rpm-macros for the architectures supporting the newer UEFI and TPM 2.0. * Also correct the location of %fde_tpm_update_requires- Fix a boot delay regression in PowerPC PXE boot (bsc#1201300) * 0001-ieee1275-ofdisk-retry-on-open-and-read-failure.patch- Add the new BuildRequires for EFI builds for the better FDE support: fde-tpm-helper-rpm-macros + Also add the the macros to %post and %posttrans- Correct the type of allocated EFI pages for ARM64 kernel (bsc#1215151) * arm64-Use-proper-memory-type-for-kernel-allocation.patch- grub2-mkconfig-riscv64.patch: Handle riscv64 in mkconfig- Implement NV index mode for TPM 2.0 key protector 0001-protectors-Implement-NV-index.patch - Fall back to passphrase mode when the key protector fails to unlock the disk 0002-cryptodisk-Fallback-to-passphrase.patch - Wipe out the cached key cleanly 0003-cryptodisk-wipe-out-the-cached-keys-from-protectors.patch - Make diskfiler to look up cryptodisk devices first 0004-diskfilter-look-up-cryptodisk-devices-first.patch- Change the bash-completion directory (bsc#1213855) * grub2-change-bash-completion-dir.patch- Version bump to 2.12~rc1 (PED-5589) * Added: - grub-2.12~rc1.tar.xz * Removed: - grub-2.06.tar.xz * Patch dropped merged by new version: - grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch - grub2-s390x-02-kexec-module-added-to-emu.patch - grub2-efi-chainloader-root.patch - grub2-Fix-incorrect-netmask-on-ppc64.patch - 0001-osdep-Introduce-include-grub-osdep-major.h-and-use-i.patch - 0002-osdep-linux-hostdisk-Use-stat-instead-of-udevadm-for.patch - 0002-net-read-bracketed-ipv6-addrs-and-port-numbers.patch - grub2-s390x-10-keep-network-at-kexec.patch - 0001-Fix-build-error-in-binutils-2.36.patch - 0001-emu-fix-executable-stack-marking.patch - 0046-squash-verifiers-Move-verifiers-API-to-kernel-image.patch - 0001-30_uefi-firmware-fix-printf-format-with-null-byte.patch - 0001-tpm-Pass-unknown-error-as-non-fatal-but-debug-print-.patch - 0001-Filter-out-POSIX-locale-for-translation.patch - 0001-disk-diskfilter-Use-nodes-in-logical-volume-s-segmen.patch - 0001-fs-xfs-Fix-unreadable-filesystem-with-v4-superblock.patch - 0001-fs-btrfs-Make-extent-item-iteration-to-handle-gaps.patch - 0001-grub-mkconfig-restore-umask-for-grub.cfg.patch - 0001-ieee1275-Drop-HEAP_MAX_ADDR-and-HEAP_MIN_SIZE-consta.patch - 0002-ieee1275-claim-more-memory.patch - 0003-ieee1275-request-memory-with-ibm-client-architecture.patch - 0001-RISC-V-Adjust-march-flags-for-binutils-2.38.patch - 0001-mkimage-Fix-dangling-pointer-may-be-used-error.patch - 0002-Fix-Werror-array-bounds-array-subscript-0-is-outside.patch - 0003-reed_solomon-Fix-array-subscript-0-is-outside-array-.patch - 0001-powerpc-do-CAS-in-a-more-compatible-way.patch - 0001-libc-config-merge-from-glibc.patch - 0001-video-Remove-trailing-whitespaces.patch - 0002-loader-efi-chainloader-Simplify-the-loader-state.patch - 0003-commands-boot-Add-API-to-pass-context-to-loader.patch - 0004-loader-efi-chainloader-Use-grub_loader_set_ex.patch - 0005-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch - 0006-kern-file-Do-not-leak-device_name-on-error-in-grub_f.patch - 0007-video-readers-png-Abort-sooner-if-a-read-operation-f.patch - 0008-video-readers-png-Refuse-to-handle-multiple-image-he.patch - 0009-video-readers-png-Drop-greyscale-support-to-fix-heap.patch - 0010-video-readers-png-Avoid-heap-OOB-R-W-inserting-huff-.patch - 0011-video-readers-png-Sanity-check-some-huffman-codes.patch - 0012-video-readers-jpeg-Abort-sooner-if-a-read-operation-.patch - 0013-video-readers-jpeg-Do-not-reallocate-a-given-huff-ta.patch - 0014-video-readers-jpeg-Refuse-to-handle-multiple-start-o.patch - 0015-video-readers-jpeg-Block-int-underflow-wild-pointer-.patch - 0016-normal-charset-Fix-array-out-of-bounds-formatting-un.patch - 0017-net-ip-Do-IP-fragment-maths-safely.patch - 0018-net-netbuff-Block-overly-large-netbuff-allocs.patch - 0019-net-dns-Fix-double-free-addresses-on-corrupt-DNS-res.patch - 0020-net-dns-Don-t-read-past-the-end-of-the-string-we-re-.patch - 0021-net-tftp-Prevent-a-UAF-and-double-free-from-a-failed.patch - 0022-net-tftp-Avoid-a-trivial-UAF.patch - 0023-net-http-Do-not-tear-down-socket-if-it-s-already-bee.patch - 0024-net-http-Fix-OOB-write-for-split-http-headers.patch - 0025-net-http-Error-out-on-headers-with-LF-without-CR.patch - 0026-fs-f2fs-Do-not-read-past-the-end-of-nat-journal-entr.patch - 0027-fs-f2fs-Do-not-read-past-the-end-of-nat-bitmap.patch - 0028-fs-f2fs-Do-not-copy-file-names-that-are-too-long.patch - 0029-fs-btrfs-Fix-several-fuzz-issues-with-invalid-dir-it.patch - 0030-fs-btrfs-Fix-more-ASAN-and-SEGV-issues-found-with-fu.patch - 0031-fs-btrfs-Fix-more-fuzz-issues-related-to-chunks.patch - 0032-Use-grub_loader_set_ex-for-secureboot-chainloader.patch - 0001-luks2-Add-debug-message-to-align-with-luks-and-geli-.patch - 0002-cryptodisk-Refactor-to-discard-have_it-global.patch - 0003-cryptodisk-Return-failure-in-cryptomount-when-no-cry.patch - 0004-cryptodisk-Improve-error-messaging-in-cryptomount-in.patch - 0005-cryptodisk-Improve-cryptomount-u-error-message.patch - 0006-cryptodisk-Add-infrastructure-to-pass-data-from-cryp.patch - 0007-cryptodisk-Refactor-password-input-out-of-crypto-dev.patch - 0008-cryptodisk-Move-global-variables-into-grub_cryptomou.patch - 0009-cryptodisk-Improve-handling-of-partition-name-in-cry.patch - 0001-crytodisk-fix-cryptodisk-module-looking-up.patch - 0001-devmapper-getroot-Have-devmapper-recognize-LUKS2.patch - 0002-devmapper-getroot-Set-up-cheated-LUKS2-cryptodisk-mo.patch - 0003-disk-cryptodisk-When-cheatmounting-use-the-sector-in.patch - 0004-normal-menu-Don-t-show-Booting-s-msg-when-auto-booti.patch - 0005-EFI-suppress-the-Welcome-to-GRUB-message-in-EFI-buil.patch - 0006-EFI-console-Do-not-set-colorstate-until-the-first-te.patch - 0007-EFI-console-Do-not-set-cursor-until-the-first-text-o.patch - efi-set-variable-with-attrs.patch - 0001-mm-Allow-dynamically-requesting-additional-memory-re.patch - 0002-kern-efi-mm-Always-request-a-fixed-number-of-pages-o.patch - 0003-kern-efi-mm-Extract-function-to-add-memory-regions.patch - 0004-kern-efi-mm-Pass-up-errors-from-add_memory_regions.patch - 0005-kern-efi-mm-Implement-runtime-addition-of-pages.patch - 0001-kern-efi-mm-Enlarge-the-default-heap-size.patch - 0002-mm-Defer-the-disk-cache-invalidation.patch - 0001-grub-install-set-point-of-no-return-for-powerpc-ieee1275.patch - 0001-commands-efi-tpm-Refine-the-status-of-log-event.patch - 0002-commands-efi-tpm-Use-grub_strcpy-instead-of-grub_mem.patch - 0003-efi-tpm-Add-EFI_CC_MEASUREMENT_PROTOCOL-support.patch - 0001-ibmvtpm-Add-support-for-trusted-boot-using-a-vTPM-2..patch - 0002-ieee1275-implement-vec5-for-cas-negotiation.patch - 0001-font-Reject-glyphs-exceeds-font-max_glyph_width-or-f.patch - 0002-font-Fix-size-overflow-in-grub_font_get_glyph_intern.patch - 0003-font-Fix-several-integer-overflows-in-grub_font_cons.patch - 0004-font-Remove-grub_font_dup_glyph.patch - 0005-font-Fix-integer-overflow-in-ensure_comb_space.patch - 0006-font-Fix-integer-overflow-in-BMP-index.patch - 0007-font-Fix-integer-underflow-in-binary-search-of-char-.patch - 0008-fbutil-Fix-integer-overflow.patch - 0009-font-Fix-an-integer-underflow-in-blit_comb.patch - 0010-font-Harden-grub_font_blit_glyph-and-grub_font_blit_.patch - 0011-font-Assign-null_font-to-glyphs-in-ascii_font_glyph.patch - 0012-normal-charset-Fix-an-integer-overflow-in-grub_unico.patch - 0001-fs-btrfs-Use-full-btrfs-bootloader-area.patch - 0001-ieee1275-Increase-initially-allocated-heap-from-1-4-.patch - 0001-grub-core-modify-sector-by-sysfs-as-disk-sector.patch - grub2-add-module-for-boot-loader-interface.patch - 0001-ieee1275-Further-increase-initially-allocated-heap-f.patch - 0002-tpm-Disable-tpm-verifier-if-tpm-is-not-present.patch - 0001-RISC-V-Handle-R_RISCV_CALL_PLT-reloc.patch - 0001-loader-linux-Ensure-the-newc-pathname-is-NULL-termin.patch - 0001-kern-ieee1275-init-Convert-plain-numbers-to-constant.patch - 0002-kern-ieee1275-init-Extended-support-in-Vec5.patch - 0001-fs-ext2-Ignore-checksum-seed-incompat-feature.patch - 0001-fs-ext2-Ignore-the-large_dir-incompat-feature.patch * Patch modified to new base version: - use-grub2-as-a-package-name.patch - grub2-fix-menu-in-xen-host-server.patch - grub2-secureboot-add-linuxefi.patch - grub2-secureboot-chainloader.patch - grub2-s390x-01-Changes-made-and-files-added-in-order-to-allow-s390x.patch - grub2-s390x-03-output-7-bit-ascii.patch - grub2-s390x-04-grub2-install.patch - grub2-use-rpmsort-for-version-sorting.patch - grub2-getroot-treat-mdadm-ddf-as-simple-device.patch - grub2-grubenv-in-btrfs-header.patch - grub2-commands-introduce-read_file-subcommand.patch - grub2-efi-chainload-harder.patch - grub2-emu-4-all.patch - grub2-util-30_os-prober-multiple-initrd.patch - grub2-install-fix-not-a-directory-error.patch - grub-install-force-journal-draining-to-ensure-data-i.patch - grub2-btrfs-01-add-ability-to-boot-from-subvolumes.patch - grub2-btrfs-04-grub2-install.patch - grub2-btrfs-05-grub2-mkconfig.patch - grub2-btrfs-06-subvol-mount.patch - grub2-efi-xen-chainload.patch - grub2-efi-xen-cmdline.patch - grub2-efi-xen-removable.patch - grub2-suse-remove-linux-root-param.patch - grub2-ppc64le-disable-video.patch - grub2-install-remove-useless-check-PReP-partition-is-empty.patch - 0004-efinet-UEFI-IPv6-PXE-support.patch - 0007-efinet-Setting-network-from-UEFI-device-path.patch - 0008-efinet-Setting-DNS-server-from-UEFI-protocol.patch - 0001-add-support-for-UEFI-network-protocols.patch - grub2-mkconfig-default-entry-correction.patch - grub2-s390x-11-secureboot.patch - grub2-secureboot-install-signed-grub.patch - grub2-gfxmenu-support-scrolling-menu-entry-s-text.patch - 0002-cmdline-Provide-cmdline-functions-as-module.patch - 0001-efi-linux-provide-linux-command.patch - 0001-Add-support-for-Linux-EFI-stub-loading-on-aarch64.patch - 0004-arm-arm64-loader-Better-memory-allocation-and-error-.patch - 0002-Arm-check-for-the-PE-magic-for-the-compiled-arch.patch - 0001-Factor-out-grub_efi_linux_boot.patch - 0003-Handle-multi-arch-64-on-32-boot-in-linuxefi-loader.patch - 0015-test_asn1-test-module-for-libtasn1.patch - 0021-appended-signatures-documentation.patch - 0022-ieee1275-enter-lockdown-based-on-ibm-secure-boot.patch - 0003-grub-install-support-prep-environment-block.patch - 0004-Introduce-prep_load_env-command.patch - 0001-grub-install-bailout-root-device-probing.patch - 0001-install-fix-software-raid1-on-esp.patch - 0001-ofdisk-improve-boot-time-by-lookup-boot-disk-first.patch - 0001-protectors-Add-key-protectors-framework.patch - 0002-tpm2-Add-TPM-Software-Stack-TSS.patch - 0004-cryptodisk-Support-key-protectors.patch - 0008-linuxefi-Use-common-grub_initrd_load.patch - 0009-Add-crypttab_entry-to-obviate-the-need-to-input-pass.patch - grub-read-pcr.patch - tpm-record-pcrs.patch - 0001-clean-up-crypttab-and-linux-modules-dependency.patch * Patch refreshed: - rename-grub-info-file-to-grub2.patch - grub2-linux.patch - grub2-simplefb.patch - grub2-ppc-terminfo.patch - grub2-pass-corret-root-for-nfsroot.patch - grub2-efi-HP-workaround.patch - grub2-secureboot-no-insmod-on-sb.patch - grub2-linuxefi-fix-boot-params.patch - grub2-s390x-05-grub2-mkconfig.patch - grub2-xen-linux16.patch - grub2-efi-disable-video-cirrus-and-bochus.patch - grub2-vbe-blacklist-preferred-1440x900x32.patch - grub2-mkconfig-aarch64.patch - grub2-menu-unrestricted.patch - grub2-mkconfig-arm.patch - grub2-s390x-06-loadparm.patch - grub2-s390x-07-add-image-param-for-zipl-setup.patch - grub2-s390x-08-workaround-part-to-disk.patch - grub2-diskfilter-support-pv-without-metadatacopies.patch - grub2-getroot-support-nvdimm.patch - grub2-s390x-skip-zfcpdump-image.patch - grub2-btrfs-02-export-subvolume-envvars.patch - grub2-btrfs-03-follow_default.patch - grub2-btrfs-07-subvol-fallback.patch - grub2-btrfs-08-workaround-snapshot-menu-default-entry.patch - grub2-btrfs-09-get-default-subvolume.patch - grub2-btrfs-10-config-directory.patch - grub2-efi-xen-cfg-unquote.patch - grub2-Add-hidden-menu-entries.patch - grub2-SUSE-Add-the-t-hotkey.patch - grub2-ppc64le-memory-map.patch - grub2-ppc64-cas-reboot-support.patch - grub2-ppc64-cas-new-scope.patch - grub2-ppc64-cas-fix-double-free.patch - 0003-bootp-New-net_bootp6-command.patch - 0005-grub.texi-Add-net_bootp6-doument.patch - 0006-bootp-Add-processing-DHCPACK-packet-from-HTTP-Boot.patch - 0012-tpm-Build-tpm-as-module.patch - 0002-AUDIT-0-http-boot-tracker-bug.patch - grub2-btrfs-help-on-snapper-rollback.patch - grub2-video-limit-the-resolution-for-fixed-bimap-font.patch - 0001-kern-mm.c-Make-grub_calloc-inline.patch - 0001-Unify-the-check-to-enable-btrfs-relative-path.patch - 0002-arm64-make-sure-fdt-has-address-cells-and-size-cells.patch - 0003-Make-grub_error-more-verbose.patch - 0001-ieee1275-Avoiding-many-unecessary-open-close.patch - 0001-Workaround-volatile-efi-boot-variable.patch - 0001-templates-Follow-the-path-of-usr-merged-kernel-confi.patch - 0004-Try-to-pick-better-locations-for-kernel-and-initrd.patch - 0004-Add-suport-for-signing-grub-with-an-appended-signatu.patch - 0005-docs-grub-Document-signing-grub-under-UEFI.patch - 0006-docs-grub-Document-signing-grub-with-an-appended-sig.patch - 0007-dl-provide-a-fake-grub_dl_set_persistent-for-the-emu.patch - 0008-pgp-factor-out-rsa_pad.patch - 0010-posix_wrap-tweaks-in-preparation-for-libtasn1.patch - 0011-libtasn1-import-libtasn1-4.18.0.patch - 0014-libtasn1-compile-into-asn1-module.patch - 0016-grub-install-support-embedding-x509-certificates.patch - 0017-appended-signatures-import-GNUTLS-s-ASN.1-descriptio.patch - 0018-appended-signatures-parse-PKCS-7-signedData-and-X.50.patch - 0019-appended-signatures-support-verifying-appended-signa.patch - 0020-appended-signatures-verification-tests.patch - 0001-grub-install-Add-SUSE-signed-image-support-for-power.patch - 0002-Add-grub_disk_write_tail-helper-function.patch - 0005-export-environment-at-start-up.patch - 0001-Fix-infinite-boot-loop-on-headless-system-in-qemu.patch - 0003-protectors-Add-TPM2-Key-Protector.patch - 0005-util-grub-protect-Add-new-tool.patch - 0010-templates-import-etc-crypttab-to-grub.cfg.patch - grub-install-record-pcrs.patch - safe_tpm_pcr_snapshot.patch - 0002-Mark-environmet-blocks-as-used-for-image-embedding.patch - 0001-grub2-Set-multiple-device-path-for-a-nvmf-boot-devic.patch - 0002-discard-cached-key-before-entering-grub-shell-and-ed.patch - 0001-ieee1275-ofdisk-retry-on-open-and-read-failure.patch - 0002-Restrict-cryptsetup-key-file-permission-for-better-s.patch * New: - 0001-xen_boot-add-missing-grub_arch_efi_linux_load_image_.patch - 0001-font-Try-memdisk-fonts-with-the-same-name.patch - 0001-Make-grub.cfg-compatible-to-old-binaries.patch - 0001-disk-cryptodisk-Fix-missing-change-when-updating-to-.patch * Embedding fonts in the grub.efi to get signed for secure boot- Fix error message "unknown command tpm_record_pcrs" with encrypted boot and no tpm device present (bsc#1213547) * 0002-tpm-Disable-tpm-verifier-if-tpm-is-not-present.patch- add 0001-fs-ext2-Ignore-checksum-seed-incompat-feature.patch, 0001-fs-ext2-Ignore-the-large_dir-incompat-feature.patch: * support more featureful extX filesystems (backport from upstream git)- grub2-once: Fix 'sh: terminal_output: command not found' error (bsc#1204563)- Exclude the deprecated EFI location, /usr/lib64/efi/, from Tumbleweed and ALP- Update TPM 2.0 key unsealing patches * Add the new upstreaming patches 0001-protectors-Add-key-protectors-framework.patch 0002-tpm2-Add-TPM-Software-Stack-TSS.patch 0003-protectors-Add-TPM2-Key-Protector.patch 0004-cryptodisk-Support-key-protectors.patch 0005-util-grub-protect-Add-new-tool.patch * Add the authorized policy patches based on the upstreaming patches 0001-tpm2-Add-TPM2-types-structures-and-command-constants.patch 0002-tpm2-Add-more-marshal-unmarshal-functions.patch 0003-tpm2-Implement-more-TPM2-commands.patch 0004-tpm2-Support-authorized-policy.patch * Drop the old patches 0010-protectors-Add-key-protectors-framework.patch 0011-tpm2-Add-TPM-Software-Stack-TSS.patch 0012-protectors-Add-TPM2-Key-Protector.patch 0013-cryptodisk-Support-key-protectors.patch 0014-util-grub-protect-Add-new-tool.patch fix-tpm2-build.patch tpm-protector-dont-measure-sealed-key.patch tpm-protector-export-secret-key.patch grub-unseal-debug.patch 0001-tpm2-adjust-the-input-parameters-of-TPM2_EvictContro.patch 0002-tpm2-declare-the-input-arguments-of-TPM2-functions-a.patch 0003-tpm2-resend-the-command-on-TPM_RC_RETRY.patch 0004-tpm2-add-new-TPM2-types-structures-and-command-const.patch 0005-tpm2-add-more-marshal-unmarshal-functions.patch 0006-tpm2-check-the-command-parameters-of-TPM2-commands.patch 0007-tpm2-pack-the-missing-authorization-command-for-TPM2.patch 0008-tpm2-allow-some-command-parameters-to-be-NULL.patch 0009-tpm2-remove-the-unnecessary-variables.patch 0010-tpm2-add-TPM2-commands-to-support-authorized-policy.patch 0011-tpm2-make-the-file-reading-unmarshal-functions-gener.patch 0012-tpm2-initialize-the-PCR-selection-list-early.patch 0013-tpm2-support-unsealing-key-with-authorized-policy.patch * Refresh grub-read-pcr.patch * Introduce a new build requirement: libtasn1-devel - Only package grub2-protect for the architectures with EFI support- Fix PowerVS deployment fails to boot with 90 cores (bsc#1208581) * 0001-kern-ieee1275-init-Convert-plain-numbers-to-constant.patch * 0002-kern-ieee1275-init-Extended-support-in-Vec5.patch- Fix no prep partition error on non-PReP architectures by making the prep_loadenv module exclusive to powerpc_ieee1275 platform (bsc#1210489) * 0004-Introduce-prep_load_env-command.patch - Fix the issue of freeing an uninitialized pointer * 0002-prep_loadenv-Fix-regex-for-Open-Firmware-device-spec.patch - Rediff * 0005-export-environment-at-start-up.patch * 0009-Add-crypttab_entry-to-obviate-the-need-to-input-pass.patch- Resolve some issues with OS boot failure on PPC NVMe-oF disks and made enhancements to PPC secure boot's root device discovery config (bsc#1207230) - Ensure get_devargs and get_devname functions are consistent * 0001-openfw-Ensure-get_devargs-and-get_devname-functions-.patch - Fix regex for Open Firmware device specifier with encoded commas * 0002-prep_loadenv-Fix-regex-for-Open-Firmware-device-spec.patch - Fix regular expression in PPC secure boot config to prevent escaped commas from being treated as delimiters when retrieving partition substrings. - Use prep_load_env in PPC secure boot config to handle unset host-specific environment variables and ensure successful command execution. * 0004-Introduce-prep_load_env-command.patch - Refreshed * 0005-export-environment-at-start-up.patch- Fix aarch64 kiwi image's file not found due to '/@' prepended to path in btrfs filesystem. (bsc#1209165) * grub2-btrfs-05-grub2-mkconfig.patch- Restrict cryptsetup key file permission for better security (bsc#1207499) * 0001-loader-linux-Ensure-the-newc-pathname-is-NULL-termin.patch * 0002-Restrict-cryptsetup-key-file-permission-for-better-s.patch- Meanwhile, memtest86+ gained EFI support, but using the grub command line to run it manually is quite tedious... Adapt 20_memtest86+ to provide a proper menu entry. Executing memtest requires to turn security off in BIOS: (Boot Mode: Other OS).- Tolerate kernel moved out of /boot. (bsc#1184804) * grub2-s390x-12-zipl-setup-usrmerge.patch- Discard cached key from grub shell and editor mode * 0001-clean-up-crypttab-and-linux-modules-dependency.patch * 0002-discard-cached-key-before-entering-grub-shell-and-ed.patch- Make grub more robust against storage race condition causing system boot failures (bsc#1189036) * 0001-ieee1275-ofdisk-retry-on-open-and-read-failure.patch- Fix riscv64 error for relocation 0x13 is not implemented yet * 0001-RISC-V-Handle-R_RISCV_CALL_PLT-reloc.patch- Fix out of memory error on lpar installation from virtual cdrom (bsc#1208024) * 0001-ieee1275-Further-increase-initially-allocated-heap-f.patch * 0002-tpm-Disable-tpm-verifier-if-tpm-is-not-present.patch - Fix lpar got hung at grub after inactive migration (bsc#1207684) * 0002-ieee1275-implement-vec5-for-cas-negotiation.patch - Rediff * safe_tpm_pcr_snapshot.patch - Patch supersceded * 0001-tpm-Disable-tpm-verifier-if-tpm-is-not-present.patch- Refresh 0003-tpm2-resend-the-command-on-TPM_RC_RETRY.patch to handle the TPM2 responseCode correctly.- Add module for boot loader interface. Needed for load Unified Kernel Image (UKI) * grub2-add-module-for-boot-loader-interface.patch- Amend the TPM2 stack and add authorized policy mode to tpm2_key_protector * 0001-tpm2-adjust-the-input-parameters-of-TPM2_EvictContro.patch * 0002-tpm2-declare-the-input-arguments-of-TPM2-functions-a.patch * 0003-tpm2-resend-the-command-on-TPM_RC_RETRY.patch * 0004-tpm2-add-new-TPM2-types-structures-and-command-const.patch * 0005-tpm2-add-more-marshal-unmarshal-functions.patch * 0006-tpm2-check-the-command-parameters-of-TPM2-commands.patch * 0007-tpm2-pack-the-missing-authorization-command-for-TPM2.patch * 0008-tpm2-allow-some-command-parameters-to-be-NULL.patch * 0009-tpm2-remove-the-unnecessary-variables.patch * 0010-tpm2-add-TPM2-commands-to-support-authorized-policy.patch * 0011-tpm2-make-the-file-reading-unmarshal-functions-gener.patch * 0012-tpm2-initialize-the-PCR-selection-list-early.patch * 0013-tpm2-support-unsealing-key-with-authorized-policy.patch- Fix nvmf boot device setup (bsc#1207811) * 0001-grub2-Can-t-setup-a-default-boot-device-correctly-on.patch- Fix unknown filesystem error on disks with 4096 sector size (bsc#1207064) * 0001-grub-core-modify-sector-by-sysfs-as-disk-sector.patch- Fix GCC 13 build failure (bsc#1201089) * 0002-AUDIT-0-http-boot-tracker-bug.patch- Move unsupported zfs modules into 'extras' packages (bsc#1205554) (PED-2947)- Fix inappropriately including commented lines in crypttab (bsc#1206279) * 0010-templates-import-etc-crypttab-to-grub.cfg.patch- Make grub.cfg invariant to efi and legacy platforms (bsc#1205200) - Removed patch linuxefi * grub2-secureboot-provide-linuxefi-config.patch * grub2-secureboot-use-linuxefi-on-uefi-in-os-prober.patch * grub2-secureboot-use-linuxefi-on-uefi.patch - Rediff * grub2-btrfs-05-grub2-mkconfig.patch * grub2-efi-xen-cmdline.patch * grub2-s390x-05-grub2-mkconfig.patch * grub2-suse-remove-linux-root-param.patch- Setup multiple device paths for a nvmf boot device (bsc#1205666) * 0001-grub2-Set-multiple-device-path-for-a-nvmf-boot-devic.patch- Increase the path buffer in the crypttab command for the long volume name (bsc#1206333) * grub2-increase-crypttab-path-buffer.patch- Add tpm to signed grub.elf image (PED-1990) (bsc#1205912) - Increase initial heap size from 1/4 to 1/3 * 0001-ieee1275-Increase-initially-allocated-heap-from-1-4-.patch- Make full utilization of btrfs bootloader area (bsc#1161823) * 0001-fs-btrfs-Use-full-btrfs-bootloader-area.patch * 0002-Mark-environmet-blocks-as-used-for-image-embedding.patch - Patch removed * 0001-i386-pc-build-btrfs-zstd-support-into-separate-modul.patch- Fix regression of reverting back to asking password twice when a keyfile is already used (bsc#1205309) * 0010-templates-import-etc-crypttab-to-grub.cfg.patch- Security fixes and hardenings * 0001-font-Reject-glyphs-exceeds-font-max_glyph_width-or-f.patch * 0002-font-Fix-size-overflow-in-grub_font_get_glyph_intern.patch - Fix CVE-2022-2601 (bsc#1205178) * 0003-font-Fix-several-integer-overflows-in-grub_font_cons.patch * 0004-font-Remove-grub_font_dup_glyph.patch * 0005-font-Fix-integer-overflow-in-ensure_comb_space.patch * 0006-font-Fix-integer-overflow-in-BMP-index.patch * 0007-font-Fix-integer-underflow-in-binary-search-of-char-.patch * 0008-fbutil-Fix-integer-overflow.patch - Fix CVE-2022-3775 (bsc#1205182) * 0009-font-Fix-an-integer-underflow-in-blit_comb.patch * 0010-font-Harden-grub_font_blit_glyph-and-grub_font_blit_.patch * 0011-font-Assign-null_font-to-glyphs-in-ascii_font_glyph.patch * 0012-normal-charset-Fix-an-integer-overflow-in-grub_unico.patch - Bump upstream SBAT generation to 3- Removed 0001-linux-fix-efi_relocate_kernel-failure.patch as reported regression in some hardware being stuck in initrd loading (bsc#1205380)- Fix password asked twice if third field in crypttab not present (bsc#1205312) * 0009-Add-crypttab_entry-to-obviate-the-need-to-input-pass.patch- NVMeoFC support on grub (jsc#PED-996) * 0001-ieee1275-add-support-for-NVMeoFC.patch * 0002-ieee1275-ofpath-enable-NVMeoF-logical-device-transla.patch * 0003-ieee1275-change-the-logic-of-ieee1275_get_devargs.patch * 0004-ofpath-controller-name-update.patch - TDX: Enhance grub2 measurement to TD RTMR (jsc#PED-1265) * 0001-commands-efi-tpm-Refine-the-status-of-log-event.patch * 0002-commands-efi-tpm-Use-grub_strcpy-instead-of-grub_mem.patch * 0003-efi-tpm-Add-EFI_CC_MEASUREMENT_PROTOCOL-support.patch - Measure the kernel on POWER10 and extend TPM PCRs (PED-1990) * 0001-ibmvtpm-Add-support-for-trusted-boot-using-a-vTPM-2..patch * 0002-ieee1275-implement-vec5-for-cas-negotiation.patch - Fix efi pcr snapshot related funtion is defined but not used on powerpc platform. * safe_tpm_pcr_snapshot.patch- Include loopback into signed grub2 image (jsc#PED-2150)- Fix firmware oops after disk decrypting failure (bsc#1204037) * 0009-Add-crypttab_entry-to-obviate-the-need-to-input-pass.patch- Add patch to fix kernel relocation error in low memory * 0001-linux-fix-efi_relocate_kernel-failure.patch- Add safety measure to pcr snapshot by checking platform and tpm status * safe_tpm_pcr_snapshot.patch- Fix installation failure due to unavailable nvram device on ppc64le (bsc#1201361) * 0001-grub-install-set-point-of-no-return-for-powerpc-ieee1275.patch- Add patches to dynamically allocate additional memory regions for EFI systems (bsc#1202438) * 0001-mm-Allow-dynamically-requesting-additional-memory-re.patch * 0002-kern-efi-mm-Always-request-a-fixed-number-of-pages-o.patch * 0003-kern-efi-mm-Extract-function-to-add-memory-regions.patch * 0004-kern-efi-mm-Pass-up-errors-from-add_memory_regions.patch * 0005-kern-efi-mm-Implement-runtime-addition-of-pages.patch - Enlarge the default heap size and defer the disk cache invalidation (bsc#1202438) * 0001-kern-efi-mm-Enlarge-the-default-heap-size.patch * 0002-mm-Defer-the-disk-cache-invalidation.patch- Add patches for ALP FDE support * 0001-devmapper-getroot-Have-devmapper-recognize-LUKS2.patch * 0002-devmapper-getroot-Set-up-cheated-LUKS2-cryptodisk-mo.patch * 0003-disk-cryptodisk-When-cheatmounting-use-the-sector-in.patch * 0004-normal-menu-Don-t-show-Booting-s-msg-when-auto-booti.patch * 0005-EFI-suppress-the-Welcome-to-GRUB-message-in-EFI-buil.patch * 0006-EFI-console-Do-not-set-colorstate-until-the-first-te.patch * 0007-EFI-console-Do-not-set-cursor-until-the-first-text-o.patch * 0008-linuxefi-Use-common-grub_initrd_load.patch * 0009-Add-crypttab_entry-to-obviate-the-need-to-input-pass.patch * 0010-templates-import-etc-crypttab-to-grub.cfg.patch * grub-read-pcr.patch * efi-set-variable-with-attrs.patch * tpm-record-pcrs.patch * tpm-protector-dont-measure-sealed-key.patch * tpm-protector-export-secret-key.patch * grub-install-record-pcrs.patch * grub-unseal-debug.patch- Fix out of memory error cannot be prevented via disabling tpm (bsc#1202438) * 0001-tpm-Disable-tpm-verifier-if-tpm-is-not-present.patch- Fix tpm error stop tumbleweed from booting (bsc#1202374) * 0001-tpm-Pass-unknown-error-as-non-fatal-but-debug-print-.patch - Patch Removed * 0001-tpm-Log-EFI_VOLUME_FULL-and-continue.patch- Add tpm, tpm2, luks2 and gcry_sha512 to default grub.efi (bsc#1197625) - Make grub-tpm.efi a symlink to grub.efi * grub2.spec - Log error when tpm event log is full and continue * 0001-tpm-Log-EFI_VOLUME_FULL-and-continue.patch - Patch superseded * 0001-tpm-Pass-unknown-error-as-non-fatal-but-debug-print-.patch- Add patches for automatic TPM disk unlock (jsc#SLE-24018) (bsc#1196668) (jsc#PED-1276) * 0001-luks2-Add-debug-message-to-align-with-luks-and-geli-.patch * 0002-cryptodisk-Refactor-to-discard-have_it-global.patch * 0003-cryptodisk-Return-failure-in-cryptomount-when-no-cry.patch * 0004-cryptodisk-Improve-error-messaging-in-cryptomount-in.patch * 0005-cryptodisk-Improve-cryptomount-u-error-message.patch * 0006-cryptodisk-Add-infrastructure-to-pass-data-from-cryp.patch * 0007-cryptodisk-Refactor-password-input-out-of-crypto-dev.patch * 0008-cryptodisk-Move-global-variables-into-grub_cryptomou.patch * 0009-cryptodisk-Improve-handling-of-partition-name-in-cry.patch * 0010-protectors-Add-key-protectors-framework.patch * 0011-tpm2-Add-TPM-Software-Stack-TSS.patch * 0012-protectors-Add-TPM2-Key-Protector.patch * 0013-cryptodisk-Support-key-protectors.patch * 0014-util-grub-protect-Add-new-tool.patch - Fix no disk unlocking happen (bsc#1196668) * 0001-crytodisk-fix-cryptodisk-module-looking-up.patch - Fix build error * fix-tpm2-build.patch- Security fixes and hardenings for boothole 3 / boothole 2022 (bsc#1198581) * 0001-video-Remove-trailing-whitespaces.patch * 0002-loader-efi-chainloader-Simplify-the-loader-state.patch * 0003-commands-boot-Add-API-to-pass-context-to-loader.patch - Fix CVE-2022-28736 (bsc#1198496) * 0004-loader-efi-chainloader-Use-grub_loader_set_ex.patch - Fix CVE-2022-28735 (bsc#1198495) * 0005-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch * 0006-kern-file-Do-not-leak-device_name-on-error-in-grub_f.patch * 0007-video-readers-png-Abort-sooner-if-a-read-operation-f.patch * 0008-video-readers-png-Refuse-to-handle-multiple-image-he.patch - Fix CVE-2021-3695 (bsc#1191184) * 0009-video-readers-png-Drop-greyscale-support-to-fix-heap.patch - Fix CVE-2021-3696 (bsc#1191185) * 0010-video-readers-png-Avoid-heap-OOB-R-W-inserting-huff-.patch * 0011-video-readers-png-Sanity-check-some-huffman-codes.patch * 0012-video-readers-jpeg-Abort-sooner-if-a-read-operation-.patch * 0013-video-readers-jpeg-Do-not-reallocate-a-given-huff-ta.patch * 0014-video-readers-jpeg-Refuse-to-handle-multiple-start-o.patch - Fix CVE-2021-3697 (bsc#1191186) * 0015-video-readers-jpeg-Block-int-underflow-wild-pointer-.patch * 0016-normal-charset-Fix-array-out-of-bounds-formatting-un.patch - Fix CVE-2022-28733 (bsc#1198460) * 0017-net-ip-Do-IP-fragment-maths-safely.patch * 0018-net-netbuff-Block-overly-large-netbuff-allocs.patch * 0019-net-dns-Fix-double-free-addresses-on-corrupt-DNS-res.patch * 0020-net-dns-Don-t-read-past-the-end-of-the-string-we-re-.patch * 0021-net-tftp-Prevent-a-UAF-and-double-free-from-a-failed.patch * 0022-net-tftp-Avoid-a-trivial-UAF.patch * 0023-net-http-Do-not-tear-down-socket-if-it-s-already-bee.patch - Fix CVE-2022-28734 (bsc#1198493) * 0024-net-http-Fix-OOB-write-for-split-http-headers.patch - Fix CVE-2022-28734 (bsc#1198493) * 0025-net-http-Error-out-on-headers-with-LF-without-CR.patch * 0026-fs-f2fs-Do-not-read-past-the-end-of-nat-journal-entr.patch * 0027-fs-f2fs-Do-not-read-past-the-end-of-nat-bitmap.patch * 0028-fs-f2fs-Do-not-copy-file-names-that-are-too-long.patch * 0029-fs-btrfs-Fix-several-fuzz-issues-with-invalid-dir-it.patch * 0030-fs-btrfs-Fix-more-ASAN-and-SEGV-issues-found-with-fu.patch * 0031-fs-btrfs-Fix-more-fuzz-issues-related-to-chunks.patch * 0032-Use-grub_loader_set_ex-for-secureboot-chainloader.patch - Bump grub's SBAT generation to 2- Use boot disks in OpenFirmware, fixing regression caused by 0001-ieee1275-implement-FCP-methods-for-WWPN-and-LUNs.patch, when the root LV is completely in the boot LUN (bsc#1197948) * 0001-ofdisk-improve-boot-time-by-lookup-boot-disk-first.patch- Fix error message in displaying help on bootable snapshot (bsc#1199609)- Fix installation over serial console ends up in infinite boot loop (bsc#1187810) (bsc#1209667) (bsc#1209372) * 0001-Fix-infinite-boot-loop-on-headless-system-in-qemu.patch - Fix ppc64le build error for new IEEE long double ABI * 0001-libc-config-merge-from-glibc.patch- Fix Power10 LPAR error "The partition fails to activate as partition went into invalid state" (bsc#1198714) * 0001-powerpc-do-CAS-in-a-more-compatible-way.patch- use common SBAT values (boo#1193282)- Fix wrong order in kernel sorting of listing rc before final release (bsc#1197376) * grub2-use-rpmsort-for-version-sorting.patch- Fix duplicated insmod part_gpt lines in grub.cfg (bsc#1197186) * 0001-grub-probe-Deduplicate-probed-partmap-output.patch- Fix GCC 12 build failure (bsc#1196546) * 0001-mkimage-Fix-dangling-pointer-may-be-used-error.patch * 0002-Fix-Werror-array-bounds-array-subscript-0-is-outside.patch * 0003-reed_solomon-Fix-array-subscript-0-is-outside-array-.patch - Revised * grub2-btrfs-01-add-ability-to-boot-from-subvolumes.patch * 0002-ieee1275-powerpc-enables-device-mapper-discovery.patch- Fix grub-install error when efi system partition is created as mdadm software raid1 device (bsc#1179981) (bsc#1195204) * 0001-install-fix-software-raid1-on-esp.patch- Fix riscv64 build error * 0001-RISC-V-Adjust-march-flags-for-binutils-2.38.patch- Fix error in grub-install when linux root device is on lvm thin volume (bsc#1192622) (bsc#1191974) * 0001-grub-install-bailout-root-device-probing.patch- Support saving grub environment for POWER signed grub images (jsc#SLE-23854) * 0001-Add-grub_envblk_buf-helper-function.patch * 0002-Add-grub_disk_write_tail-helper-function.patch * 0003-grub-install-support-prep-environment-block.patch * 0004-Introduce-prep_load_env-command.patch * 0005-export-environment-at-start-up.patch - Use enviroment variable in early boot config to looking up root device * grub2.spec- Remove obsolete openSUSE 12.2 conditionals in spec file - Clean up powerpc certificate handling.- Set grub2-check-default shebang to "#!/bin/bash", as the the code uses many instructions which are undefined for a POSIX sh. (boo#1195794).- Power guest secure boot with static keys: GRUB2 signing portion (jsc#SLE-18271) (bsc#1192764) * 0001-grub-install-Add-SUSE-signed-image-support-for-power.patch- Fix wrong default entry when booting snapshot (bsc#1159205) * grub2-btrfs-08-workaround-snapshot-menu-default-entry.patch- Power guest secure boot with static keys: GRUB2 signing portion (jsc#SLE-18271) (bsc#1192764) * grub2.spec - Power guest secure boot with static keys: GRUB2 portion (jsc#SLE-18144) (bsc#1192686) * 0001-ieee1275-Drop-HEAP_MAX_ADDR-and-HEAP_MIN_SIZE-consta.patch * 0002-ieee1275-claim-more-memory.patch * 0003-ieee1275-request-memory-with-ibm-client-architecture.patch * 0004-Add-suport-for-signing-grub-with-an-appended-signatu.patch * 0005-docs-grub-Document-signing-grub-under-UEFI.patch * 0006-docs-grub-Document-signing-grub-with-an-appended-sig.patch * 0007-dl-provide-a-fake-grub_dl_set_persistent-for-the-emu.patch * 0008-pgp-factor-out-rsa_pad.patch * 0009-crypto-move-storage-for-grub_crypto_pk_-to-crypto.c.patch * 0010-posix_wrap-tweaks-in-preparation-for-libtasn1.patch * 0011-libtasn1-import-libtasn1-4.18.0.patch * 0012-libtasn1-disable-code-not-needed-in-grub.patch * 0013-libtasn1-changes-for-grub-compatibility.patch * 0014-libtasn1-compile-into-asn1-module.patch * 0015-test_asn1-test-module-for-libtasn1.patch * 0016-grub-install-support-embedding-x509-certificates.patch * 0017-appended-signatures-import-GNUTLS-s-ASN.1-descriptio.patch * 0018-appended-signatures-parse-PKCS-7-signedData-and-X.50.patch * 0019-appended-signatures-support-verifying-appended-signa.patch * 0020-appended-signatures-verification-tests.patch * 0021-appended-signatures-documentation.patch * 0022-ieee1275-enter-lockdown-based-on-ibm-secure-boot.patch * 0023-x509-allow-Digitial-Signature-plus-other-Key-Usages.patch- Fix no menuentry is found if hibernation on btrfs RAID1 (bsc#1193090) * grub2-systemd-sleep-plugin- Fix CVE-2021-3981 (bsc#1189644) * 0001-grub-mkconfig-restore-umask-for-grub.cfg.patch- Fix can't allocate initrd error (bsc#1191378) * 0001-Factor-out-grub_efi_linux_boot.patch * 0002-Fix-race-in-EFI-validation.patch * 0003-Handle-multi-arch-64-on-32-boot-in-linuxefi-loader.patch * 0004-Try-to-pick-better-locations-for-kernel-and-initrd.patch * 0005-x86-efi-Use-bounce-buffers-for-reading-to-addresses-.patch * 0006-x86-efi-Re-arrange-grub_cmd_linux-a-little-bit.patch * 0007-x86-efi-Make-our-own-allocator-for-kernel-stuff.patch * 0008-x86-efi-Allow-initrd-params-cmdline-allocations-abov.patch * 0009-x86-efi-Reduce-maximum-bounce-buffer-size-to-16-MiB.patch * 0010-efilinux-Fix-integer-overflows-in-grub_cmd_initrd.patch * 0011-Also-define-GRUB_EFI_MAX_ALLOCATION_ADDRESS-for-RISC.patch- Add support for simplefb (boo#1193532). + grub2-simplefb.patch- Fix extent not found when initramfs contains shared extents (bsc#1190982) * 0001-fs-btrfs-Make-extent-item-iteration-to-handle-gaps.patch- Fix arm64 kernel image not aligned on 64k boundary (bsc#1192522) * 0001-arm64-Fix-EFI-loader-kernel-image-allocation.patch * 0002-Arm-check-for-the-PE-magic-for-the-compiled-arch.patch- Remove openSUSE Tumbleweed specific handling for default grub distributor (bsc#1191198) - Use /usr/lib/os-release as fallback (bsc#1191196) * grub2-default-distributor.patch * grub2-check-default.sh - VUL-0: grub2: grub2-once uses fixed file name in /var/tmp (bsc#1190474) (CVE-2021-46705) * grub2-once * grub2-once.service - Fix unknown TPM error on buggy uefi firmware (bsc#1191504) * 0001-tpm-Pass-unknown-error-as-non-fatal-but-debug-print-.patch - Fix error /boot/grub2/locale/POSIX.gmo not found (bsc#1189769) * 0001-Filter-out-POSIX-locale-for-translation.patch - Fix error lvmid disk cannot be found after second disk added to the root volume group (bsc#1189874) (bsc#1071559) * 0001-ieee1275-implement-FCP-methods-for-WWPN-and-LUNs.patch - Fix error in grub installation due to unnecessary requirement to support excessive device for the root logical volume (bsc#1184135) * 0001-disk-diskfilter-Use-nodes-in-logical-volume-s-segmen.patch - Fix regression in reading xfs v4 * 0001-fs-xfs-Fix-unreadable-filesystem-with-v4-superblock.patch- Fix installation on usrmerged s390x- Improve support for SLE Micro 5.1 on s390x. (bsc#1190395) * amend grub2-s390x-04-grub2-install.patch * refresh grub2-s390x-11-secureboot.patch- Follow usr merge for looking up kernel config (bsc#1189782) (bsc#1190061) * 0001-templates-Follow-the-path-of-usr-merged-kernel-confi.patch- Add btrfs zstd compression on i386-pc and also make sure it won't break existing grub installations (bsc#1161823) * deleted 0001-btrfs-disable-zstd-support-for-i386-pc.patch * added 0001-i386-pc-build-btrfs-zstd-support-into-separate-modul.patch- Delete the author list from %description (the %description section is literally for package descriptions (only) these days, encoding was also problematic). - Add %doc AUTHORS to get packaged that info- update grub2-systemd-sleep.sh to fix hibernation by avoiding the error "no kernelfile matching the running kernel found" on usrmerged setup- Use %autosetup- Replace grub2-use-stat-instead-of-udevadm-for-partition-lookup.patch and fix-grub2-use-stat-instead-of-udevadm-for-partition-lookup-with-new-glibc.patch with upstream backport: 0001-osdep-Introduce-include-grub-osdep-major.h-and-use-i.patch and 0002-osdep-linux-hostdisk-Use-stat-instead-of-udevadm-for.patch.- Fix error not a btrfs filesystem on s390x (bsc#1187645) * 80_suse_btrfs_snapshot- Fix error gfxterm isn't found with multiple terminals (bsc#1187565) * grub2-fix-error-terminal-gfxterm-isn-t-found.patch- Fix boot failure after kdump due to the content of grub.cfg is not completed with pending modificaton in xfs journal (bsc#1186975) * grub-install-force-journal-draining-to-ensure-data-i.patch - Patch refreshed * grub2-mkconfig-default-entry-correction.patch- Version bump to 2.06 * rediff - 0001-add-support-for-UEFI-network-protocols.patch - 0002-net-read-bracketed-ipv6-addrs-and-port-numbers.patch - 0003-Make-grub_error-more-verbose.patch - 0003-bootp-New-net_bootp6-command.patch - 0005-grub.texi-Add-net_bootp6-doument.patch - 0006-bootp-Add-processing-DHCPACK-packet-from-HTTP-Boot.patch - 0006-efi-Set-image-base-address-before-jumping-to-the-PE-.patch - 0008-efinet-Setting-DNS-server-from-UEFI-protocol.patch - 0046-squash-verifiers-Move-verifiers-API-to-kernel-image.patch - grub-install-force-journal-draining-to-ensure-data-i.patch - grub2-btrfs-01-add-ability-to-boot-from-subvolumes.patch - grub2-diskfilter-support-pv-without-metadatacopies.patch - grub2-efi-HP-workaround.patch - grub2-efi-xen-cfg-unquote.patch - grub2-efi-xen-chainload.patch - grub2-fix-menu-in-xen-host-server.patch - grub2-gfxmenu-support-scrolling-menu-entry-s-text.patch - grub2-install-remove-useless-check-PReP-partition-is-empty.patch - grub2-lvm-allocate-metadata-buffer-from-raw-contents.patch - grub2-mkconfig-default-entry-correction.patch - grub2-pass-corret-root-for-nfsroot.patch - grub2-s390x-03-output-7-bit-ascii.patch - grub2-s390x-04-grub2-install.patch - grub2-secureboot-install-signed-grub.patch - grub2-setup-try-fs-embed-if-mbr-gap-too-small.patch - use-grub2-as-a-package-name.patch * update by patch squashed: - 0001-Add-support-for-Linux-EFI-stub-loading-on-aarch64.patch - grub2-efi-chainload-harder.patch - grub2-secureboot-no-insmod-on-sb.patch - grub2-secureboot-chainloader.patch - grub2-secureboot-add-linuxefi.patch * remove squashed patches: - 0008-squash-Add-support-for-Linux-EFI-stub-loading-on-aar.patch - 0009-squash-Add-support-for-linuxefi.patch - 0041-squash-Add-secureboot-support-on-efi-chainloader.patch - 0042-squash-grub2-efi-chainload-harder.patch - 0043-squash-Don-t-allow-insmod-when-secure-boot-is-enable.patch - 0045-squash-Add-support-for-Linux-EFI-stub-loading-on-aar.patch * drop upstream patches: - 0001-Warn-if-MBR-gap-is-small-and-user-uses-advanced-modu.patch - 0001-include-grub-i386-linux.h-Include-missing-grub-types.patch - 0001-kern-efi-sb-Add-chainloaded-image-as-shim-s-verifiab.patch - 0001-mdraid1x_linux-Fix-gcc10-error-Werror-array-bounds.patch - 0001-normal-Move-common-datetime-functions-out-of-the-nor.patch - 0001-yylex-Make-lexer-fatal-errors-actually-be-fatal.patch - 0002-efi-Make-shim_lock-GUID-and-protocol-type-public.patch - 0002-grub-install-Avoid-incompleted-install-on-i386-pc.patch - 0002-kern-Add-X-option-to-printf-functions.patch - 0002-safemath-Add-some-arithmetic-primitives-that-check-f.patch - 0002-zfs-Fix-gcc10-error-Werror-zero-length-bounds.patch - 0003-calloc-Make-sure-we-always-have-an-overflow-checking.patch - 0003-efi-Return-grub_efi_status_t-from-grub_efi_get_varia.patch - 0003-normal-main-Search-for-specific-config-files-for-net.patch - 0004-calloc-Use-calloc-at-most-places.patch - 0004-datetime-Enable-the-datetime-module-for-the-emu-plat.patch - 0004-efi-Add-a-function-to-read-EFI-variables-with-attrib.patch - 0005-Make-linux_arm_kernel_header.hdr_offset-be-at-the-ri.patch - 0005-efi-Add-secure-boot-detection.patch - 0005-malloc-Use-overflow-checking-primitives-where-we-do-.patch - 0006-efi-Only-register-shim_lock-verifier-if-shim_lock-pr.patch - 0006-iso9660-Don-t-leak-memory-on-realloc-failures.patch - 0007-font-Do-not-load-more-than-one-NAME-section.patch - 0007-verifiers-Move-verifiers-API-to-kernel-image.patch - 0008-efi-Move-the-shim_lock-verifier-to-the-GRUB-core.patch - 0008-script-Remove-unused-fields-from-grub_script_functio.patch - 0009-kern-Add-lockdown-support.patch - 0009-script-Avoid-a-use-after-free-when-redefining-a-func.patch - 0010-kern-lockdown-Set-a-variable-if-the-GRUB-is-locked-d.patch - 0010-linux-Fix-integer-overflows-in-initrd-size-handling.patch - 0011-efi-Lockdown-the-GRUB-when-the-UEFI-Secure-Boot-is-e.patch - 0012-efi-Use-grub_is_lockdown-instead-of-hardcoding-a-dis.patch - 0013-acpi-Don-t-register-the-acpi-command-when-locked-dow.patch - 0014-mmap-Don-t-register-cutmem-and-badram-commands-when-.patch - 0015-commands-Restrict-commands-that-can-load-BIOS-or-DT-.patch - 0016-commands-setpci-Restrict-setpci-command-when-locked-.patch - 0017-commands-hdparm-Restrict-hdparm-command-when-locked-.patch - 0018-gdb-Restrict-GDB-access-when-locked-down.patch - 0019-loader-xnu-Don-t-allow-loading-extension-and-package.patch - 0020-dl-Only-allow-unloading-modules-that-are-not-depende.patch - 0021-usb-Avoid-possible-out-of-bound-accesses-caused-by-m.patch - 0022-lib-arg-Block-repeated-short-options-that-require-an.patch - 0023-commands-menuentry-Fix-quoting-in-setparams_prefix.patch - 0024-kern-parser-Fix-resource-leak-if-argc-0.patch - 0025-kern-parser-Fix-a-memory-leak.patch - 0026-kern-parser-Introduce-process_char-helper.patch - 0027-kern-parser-Introduce-terminate_arg-helper.patch - 0028-kern-parser-Refactor-grub_parser_split_cmdline-clean.patch - 0029-kern-buffer-Add-variable-sized-heap-buffer.patch - 0030-kern-parser-Fix-a-stack-buffer-overflow.patch - 0031-util-mkimage-Remove-unused-code-to-add-BSS-section.patch - 0032-util-mkimage-Use-grub_host_to_target32-instead-of-gr.patch - 0033-util-mkimage-Always-use-grub_host_to_target32-to-ini.patch - 0034-util-mkimage-Unify-more-of-the-PE32-and-PE32-header-.patch - 0035-util-mkimage-Reorder-PE-optional-header-fields-set-u.patch - 0036-util-mkimage-Improve-data_size-value-calculation.patch - 0037-util-mkimage-Refactor-section-setup-to-use-a-helper.patch - 0038-util-mkimage-Add-an-option-to-import-SBAT-metadata-i.patch - 0039-grub-install-common-Add-sbat-option.patch - 0040-shim_lock-Only-skip-loading-shim_lock-verifier-with-.patch - grub-install-define-default-platform-for-risc-v.patch - grub2-editenv-add-warning-message.patch - grub2-efi-gop-add-blt.patch - grub2-efi-uga-64bit-fb.patch - grub2-verifiers-fix-system-freeze-if-verify-failed.patch - risc-v-add-clzdi2-symbol.patch - risc-v-fix-computation-of-pc-relative-relocation-offset.patch - Add grub2-instdev-fixup.pl for correcting /etc/default/grub_installdevice to use disk devie if grub has been installed to it - Add 0001-30_uefi-firmware-fix-printf-format-with-null-byte.patch to fix detection of efi fwsetup support- Fix running grub2-once leads to failure of starting systemd service in the boot sequence (bsc#1169460) * grub2-once * grub2-once.service- Fix crash in launching gfxmenu without theme file (bsc#1186481) * grub2-gfxmenu-support-scrolling-menu-entry-s-text.patch- Fix plaintext password in grub config didn't work to unlock menu entry if enabling secure boot in UEFI (bsc#1181892)- Fix obsolete syslog in systemd unit file and updating to use journal as StandardOutput (bsc#1185149) * grub2-once.service- Fix build error on armv6/armv7 (bsc#1184712) * 0001-emu-fix-executable-stack-marking.patch- Fix error grub_file_filters not found in Azure virtual machine (bsc#1182012) * 0001-Workaround-volatile-efi-boot-variable.patch- Fix powerpc-ieee1275 lpar takes long time to boot with increasing number of nvme namespace (bsc#1177751) 0001-ieee1275-Avoiding-many-unecessary-open-close.patch- Fix chainloading windows on dual boot machine (bsc#1183073) * 0001-kern-efi-sb-Add-chainloaded-image-as-shim-s-verifiab.patch- VUL-0: grub2,shim: implement new SBAT method (bsc#1182057) * 0031-util-mkimage-Remove-unused-code-to-add-BSS-section.patch * 0032-util-mkimage-Use-grub_host_to_target32-instead-of-gr.patch * 0033-util-mkimage-Always-use-grub_host_to_target32-to-ini.patch * 0034-util-mkimage-Unify-more-of-the-PE32-and-PE32-header-.patch * 0035-util-mkimage-Reorder-PE-optional-header-fields-set-u.patch * 0036-util-mkimage-Improve-data_size-value-calculation.patch * 0037-util-mkimage-Refactor-section-setup-to-use-a-helper.patch * 0038-util-mkimage-Add-an-option-to-import-SBAT-metadata-i.patch * 0039-grub-install-common-Add-sbat-option.patch - Fix CVE-2021-20225 (bsc#1182262) * 0022-lib-arg-Block-repeated-short-options-that-require-an.patch - Fix CVE-2020-27749 (bsc#1179264) * 0024-kern-parser-Fix-resource-leak-if-argc-0.patch * 0025-kern-parser-Fix-a-memory-leak.patch * 0026-kern-parser-Introduce-process_char-helper.patch * 0027-kern-parser-Introduce-terminate_arg-helper.patch * 0028-kern-parser-Refactor-grub_parser_split_cmdline-clean.patch * 0029-kern-buffer-Add-variable-sized-heap-buffer.patch * 0030-kern-parser-Fix-a-stack-buffer-overflow.patch - Fix CVE-2021-20233 (bsc#1182263) * 0023-commands-menuentry-Fix-quoting-in-setparams_prefix.patch - Fix CVE-2020-25647 (bsc#1177883) * 0021-usb-Avoid-possible-out-of-bound-accesses-caused-by-m.patch - Fix CVE-2020-25632 (bsc#1176711) * 0020-dl-Only-allow-unloading-modules-that-are-not-depende.patch - Fix CVE-2020-27779, CVE-2020-14372 (bsc#1179265) (bsc#1175970) * 0001-include-grub-i386-linux.h-Include-missing-grub-types.patch * 0002-efi-Make-shim_lock-GUID-and-protocol-type-public.patch * 0003-efi-Return-grub_efi_status_t-from-grub_efi_get_varia.patch * 0004-efi-Add-a-function-to-read-EFI-variables-with-attrib.patch * 0005-efi-Add-secure-boot-detection.patch * 0006-efi-Only-register-shim_lock-verifier-if-shim_lock-pr.patch * 0007-verifiers-Move-verifiers-API-to-kernel-image.patch * 0008-efi-Move-the-shim_lock-verifier-to-the-GRUB-core.patch * 0009-kern-Add-lockdown-support.patch * 0010-kern-lockdown-Set-a-variable-if-the-GRUB-is-locked-d.patch * 0011-efi-Lockdown-the-GRUB-when-the-UEFI-Secure-Boot-is-e.patch * 0012-efi-Use-grub_is_lockdown-instead-of-hardcoding-a-dis.patch * 0013-acpi-Don-t-register-the-acpi-command-when-locked-dow.patch * 0014-mmap-Don-t-register-cutmem-and-badram-commands-when-.patch * 0015-commands-Restrict-commands-that-can-load-BIOS-or-DT-.patch * 0016-commands-setpci-Restrict-setpci-command-when-locked-.patch * 0017-commands-hdparm-Restrict-hdparm-command-when-locked-.patch * 0018-gdb-Restrict-GDB-access-when-locked-down.patch * 0019-loader-xnu-Don-t-allow-loading-extension-and-package.patch * 0040-shim_lock-Only-skip-loading-shim_lock-verifier-with-.patch * 0041-squash-Add-secureboot-support-on-efi-chainloader.patch * 0042-squash-grub2-efi-chainload-harder.patch * 0043-squash-Don-t-allow-insmod-when-secure-boot-is-enable.patch * 0044-squash-kern-Add-lockdown-support.patch * 0045-squash-Add-support-for-Linux-EFI-stub-loading-on-aar.patch * 0046-squash-verifiers-Move-verifiers-API-to-kernel-image.patch - Drop patch supersceded by the new backport * 0001-linuxefi-fail-kernel-validation-without-shim-protoco.patch * 0001-shim_lock-Disable-GRUB_VERIFY_FLAGS_DEFER_AUTH-if-se.patch * 0007-linuxefi-fail-kernel-validation-without-shim-protoco.patch - Add SBAT metadata section to grub.efi - Drop shim_lock module as it is part of core of grub.efi * grub2.spec- Fix build error in binutils 2.36 (bsc#1181741) * 0001-Fix-build-error-in-binutils-2.36.patch - Fix executable stack in grub-emu (bsc#1181696) * 0001-emu-fix-executable-stack-marking.patch- Restore compatibilty sym-links * grub2.spec - Use rpmlintrc to filter out rpmlint 2.0 error (bsc#1179044) * grub2.rpmlintrc- Complete Secure Boot support on aarch64 (jsc#SLE-15020) * 0001-Add-support-for-Linux-EFI-stub-loading-on-aarch64.patch * 0002-arm64-make-sure-fdt-has-address-cells-and-size-cells.patch * 0003-Make-grub_error-more-verbose.patch * 0004-arm-arm64-loader-Better-memory-allocation-and-error-.patch * 0005-Make-linux_arm_kernel_header.hdr_offset-be-at-the-ri.patch * 0006-efi-Set-image-base-address-before-jumping-to-the-PE-.patch * 0007-linuxefi-fail-kernel-validation-without-shim-protoco.patch * 0008-squash-Add-support-for-Linux-EFI-stub-loading-on-aar.patch * 0009-squash-Add-support-for-linuxefi.patch- Fix rpmlint 2.0 error for having arch specific path in noarch package aiming for compatibility with old package (bsc#1179044) * grub2.spec - Fix non POSIX sed argument which failed in sed from busybox (bsc#1181091) * grub2-check-default.sh- Fix boot failure in blocklist installation (bsc#1178278) * Modified 0002-grub-install-Avoid-incompleted-install-on-i386-pc.patch- Fix grub2-install error with "failed to get canonical path of `/boot/grub2/i386-pc'." (bsc#1177957) * Modified 0002-grub-install-Avoid-incompleted-install-on-i386-pc.patch- Fix https boot interrupted by unrecognised network address error message (bsc#1172952) * 0001-add-support-for-UEFI-network-protocols.patch- grub2.spec: Fix bare words used as string in expression which is no longer allowed in rpm 4.16- Improve the error handling when grub2-install fails with short mbr gap (bsc#1176062) * 0001-Warn-if-MBR-gap-is-small-and-user-uses-advanced-modu.patch * 0002-grub-install-Avoid-incompleted-install-on-i386-pc.patch- Make efi hand off the default entry point of the linux command (bsc#1176134) * 0001-efi-linux-provide-linux-command.patch- Fix verification requested but nobody cares error when loading external module in secure boot off (bsc#1175766) * 0001-shim_lock-Disable-GRUB_VERIFY_FLAGS_DEFER_AUTH-if-se.patch- Make consistent check to enable relative path on btrfs (bsc#1174567) * 0001-Unify-the-check-to-enable-btrfs-relative-path.patch- Add fibre channel device's ofpath support to grub-ofpathname and search hint to speed up root device discovery (bsc#1172745) * 0001-ieee1275-powerpc-implements-fibre-channel-discovery-.patch * 0002-ieee1275-powerpc-enables-device-mapper-discovery.patch- Fix for CVE-2020-15705 (bsc#1174421) * 0001-linuxefi-fail-kernel-validation-without-shim-protoco.patch * 0002-cmdline-Provide-cmdline-functions-as-module.patch- Make grub-calloc inline to avoid symbol not found error as the system may not use updated grub to boot the system (bsc#1174782) (bsc#1175060) (bsc#1175036) * 0001-kern-mm.c-Make-grub_calloc-inline.patch- Fix for CVE-2020-10713 (bsc#1168994) * 0001-yylex-Make-lexer-fatal-errors-actually-be-fatal.patch - Fix for CVE-2020-14308 CVE-2020-14309, CVE-2020-14310, CVE-2020-14311 (bsc#1173812) * 0002-safemath-Add-some-arithmetic-primitives-that-check-f.patch * 0003-calloc-Make-sure-we-always-have-an-overflow-checking.patch * 0004-calloc-Use-calloc-at-most-places.patch * 0005-malloc-Use-overflow-checking-primitives-where-we-do-.patch * 0006-iso9660-Don-t-leak-memory-on-realloc-failures.patch * 0007-font-Do-not-load-more-than-one-NAME-section.patch - Fix CVE-2020-15706 (bsc#1174463) * 0008-script-Remove-unused-fields-from-grub_script_functio.patch * 0009-script-Avoid-a-use-after-free-when-redefining-a-func.patch - Fix CVE-2020-15707 (bsc#1174570) * 0010-linux-Fix-integer-overflows-in-initrd-size-handling.patch - Use overflow checking primitives where the arithmetic expression for buffer allocations may include unvalidated data - Use grub_calloc for overflow check and return NULL when it would occur * 0001-add-support-for-UEFI-network-protocols.patch * 0003-bootp-New-net_bootp6-command.patch * grub2-btrfs-01-add-ability-to-boot-from-subvolumes.patch * grub2-btrfs-09-get-default-subvolume.patch * grub2-gfxmenu-support-scrolling-menu-entry-s-text.patch * grub2-grubenv-in-btrfs-header.patch- No 95_textmode for PowerPC (boo#1174166)- Skip zfcpdump kernel from the grub boot menu (bsc#1166513) * grub2-s390x-skip-zfcpdump-image.patch- Fix boot failure as journaled data not get drained due to abrupt power off after grub-install (bsc#1167756) * grub-install-force-journal-draining-to-ensure-data-i.patch- Fix executable stack in grub-probe and other grub utility (bsc#1169137) * grub2-btrfs-06-subvol-mount.patch- Fix GCC 10 build fail (bsc#1158189) * 0001-mdraid1x_linux-Fix-gcc10-error-Werror-array-bounds.patch * 0002-zfs-Fix-gcc10-error-Werror-zero-length-bounds.patch- Backport to support searching for specific config files for netboot (bsc#1166409) * 0001-normal-Move-common-datetime-functions-out-of-the-nor.patch * 0002-kern-Add-X-option-to-printf-functions.patch * 0003-normal-main-Search-for-specific-config-files-for-net.patch * 0004-datetime-Enable-the-datetime-module-for-the-emu-plat.patch- move *.module files to separate -debug subpackage (boo#1166578)- Fix EFI console detection to make it a runtime decision (bsc#1164385) * grub2-SUSE-Add-the-t-hotkey.patch- Downgrade mtools to Suggests for consistency with xorriso (boo#1165839) - remove info requirements, file triggers are used now (boo#1152105)- Add secure boot support for s390x. (jsc#SLE-9425) * grub2-s390x-11-secureboot.patch- Fix grub hangs after loading rogue image without valid signature for uefi secure boot (bsc#1159102) * grub2-verifiers-fix-system-freeze-if-verify-failed.patch- From Stefan Seyfried : Fix grub2-install fails with "not a directory" error (boo#1161641, bsc#1162403) * grub2-install-fix-not-a-directory-error.patch- Correct awk pattern in 20_linux_xen (bsc#900418, bsc#1157912) - Correct linux and initrd handling in 20_linux_xen (bsc#1157912) M grub2-efi-xen-cfg-unquote.patch M grub2-efi-xen-chainload.patch M grub2-efi-xen-cmdline.patch M grub2-efi-xen-removable.patch- Disable btrfs zstd support for i386-pc to workaround core.img too large to be embedded in btrfs bootloader area or MBR gap (boo#1154809) * 0001-btrfs-disable-zstd-support-for-i386-pc.patch- Fix grub2.sleep to load old kernel after hibernation (boo#1154783)- Enable support for riscv64 - Backports from upstream: * risc-v-fix-computation-of-pc-relative-relocation-offset.patch * risc-v-add-clzdi2-symbol.patch * grub-install-define-default-platform-for-risc-v.patch- Version bump to 2.04 * removed - translations-20170427.tar.xz * grub2.spec - Make signed grub-tpm.efi specific to x86_64-efi build, the platform currently shipped with tpm module from upstream codebase - Add shim_lock to signed grub.efi in x86_64-efi build - x86_64: linuxefi now depends on linux, both will verify kernel via shim_lock - Remove translation tarball and po file hacks as it's been included in upstream tarball * rediff - grub2-setup-try-fs-embed-if-mbr-gap-too-small.patch - grub2-commands-introduce-read_file-subcommand.patch - grub2-secureboot-add-linuxefi.patch - 0001-add-support-for-UEFI-network-protocols.patch - grub2-efi-HP-workaround.patch - grub2-secureboot-install-signed-grub.patch - grub2-linux.patch - use-grub2-as-a-package-name.patch - grub2-pass-corret-root-for-nfsroot.patch - grub2-secureboot-use-linuxefi-on-uefi.patch - grub2-secureboot-no-insmod-on-sb.patch - grub2-secureboot-provide-linuxefi-config.patch - grub2-secureboot-chainloader.patch - grub2-s390x-01-Changes-made-and-files-added-in-order-to-allow-s390x.patch - grub2-s390x-02-kexec-module-added-to-emu.patch - grub2-s390x-04-grub2-install.patch - grub2-btrfs-01-add-ability-to-boot-from-subvolumes.patch - grub2-efi-chainloader-root.patch - grub2-ppc64le-disable-video.patch - grub2-ppc64-cas-reboot-support.patch - grub2-Fix-incorrect-netmask-on-ppc64.patch - 0003-bootp-New-net_bootp6-command.patch - 0006-bootp-Add-processing-DHCPACK-packet-from-HTTP-Boot.patch - 0012-tpm-Build-tpm-as-module.patch - grub2-emu-4-all.patch - grub2-btrfs-09-get-default-subvolume.patch - grub2-ppc64le-memory-map.patch - grub2-ppc64-cas-fix-double-free.patch - 0008-efinet-Setting-DNS-server-from-UEFI-protocol.patch * drop upstream patches - grub2-fix-locale-en.mo.gz-not-found-error-message.patch - grub2-fix-build-with-flex-2.6.4.patch - grub2-accept-empty-module.patch - 0001-Fix-packed-not-aligned-error-on-GCC-8.patch - 0001-Fix-PCIe-LER-when-GRUB2-accesses-non-enabled-MMIO-da.patch - unix-exec-avoid-atexit-handlers-when-child-exits.patch - 0001-xfs-Accept-filesystem-with-sparse-inodes.patch - grub2-binutils2.31.patch - grub2-msdos-fix-overflow.patch - 0001-tsc-Change-default-tsc-calibration-method-to-pmtimer.patch - grub2-efi-Move-grub_reboot-into-kernel.patch - grub2-efi-Free-malloc-regions-on-exit.patch - grub2-move-initrd-upper.patch - 0002-Add-Virtual-LAN-support.patch - 0001-ofnet-Initialize-structs-in-bootpath-parser.patch - 0001-misc-fix-invalid-character-recongition-in-strto-l.patch - 0001-tpm-Core-TPM-support.patch - 0002-tpm-Measure-kernel-initrd.patch - 0003-tpm-Add-BIOS-boot-measurement.patch - 0004-tpm-Rework-linux-command.patch - 0005-tpm-Rework-linux16-command.patch - 0006-tpm-Measure-kernel-and-initrd-on-BIOS-systems.patch - 0007-tpm-Measure-the-kernel-commandline.patch - 0008-tpm-Measure-commands.patch - 0009-tpm-Measure-multiboot-images-and-modules.patch - 0010-tpm-Fix-boot-when-there-s-no-TPM.patch - 0011-tpm-Fix-build-error.patch - 0013-tpm-i386-pc-diskboot-img.patch - grub2-freetype-pkgconfig.patch - 0001-cpio-Disable-gcc9-Waddress-of-packed-member.patch - 0002-jfs-Disable-gcc9-Waddress-of-packed-member.patch - 0003-hfs-Fix-gcc9-error-Waddress-of-packed-member.patch - 0004-hfsplus-Fix-gcc9-error-with-Waddress-of-packed-membe.patch - 0005-acpi-Fix-gcc9-error-Waddress-of-packed-member.patch - 0006-usbtest-Disable-gcc9-Waddress-of-packed-member.patch - 0007-chainloader-Fix-gcc9-error-Waddress-of-packed-member.patch - 0008-efi-Fix-gcc9-error-Waddress-of-packed-member.patch- Consistently find btrfs snapshots on s390x. (bsc#1136970) * grub2-s390x-04-grub2-install.patch- Fix fallback embed doesn't work when no post mbr gap at all (boo#1142229) * Refresh grub2-setup-try-fs-embed-if-mbr-gap-too-small.patch- Revert grub2-ieee1275-FCP-methods-for-WWPN-and-LUNs.patch until merged by upstream (bsc#1134287, bsc#1139345, LTC#177836, LTC#174229).- Fix iteration of FCP LUNs (bsc#1134287, bsc#1139345, LTC#177836, LTC#174229). * Refresh grub2-ieee1275-FCP-methods-for-WWPN-and-LUNs.patch- Use grub2-install to handle signed grub installation for UEFI secure boot and also provide options to override default (bsc#1136601) * grub2-secureboot-install-signed-grub.patch - Remove arm64 linuxefi patches as it's not needed for secure boot * 0001-efi-refactor-grub_efi_allocate_pages.patch * 0002-Remove-grub_efi_allocate_pages.patch * 0003-arm64-efi-move-EFI_PAGE-definitions-to-efi-memory.h.patch * 0004-efi-Add-central-copy-of-grub_efi_find_mmap_size.patch * 0005-efi-Add-grub_efi_get_ram_base-function-for-arm64.patch * 0006-Add-support-for-EFI-handover-on-ARM64.patch- Avoid high resolution when trying to keep current mode (bsc#1133842) * grub2-video-limit-the-resolution-for-fixed-bimap-font.patch - Make GRUB_SAVEDEFAULT working with btrfs (bsc#1128592) * grub2-grubenv-in-btrfs-header.patch- Check/refresh zipl-kernel before hibernate on s390x. (bsc#940457) (Getting rid of hardcoded 'vmlinuz', which failed on PPC as well.) * grub2-systemd-sleep.sh- Try to refresh zipl-kernel on failed kexec. (bsc#1127293) * grub2-s390x-04-grub2-install.patch - Fully support "previous" zipl-kernel, with 'mem=1G' being available on dedicated entries. (bsc#928131) * grub2-s390x-09-improve-zipl-setup.patch - Refresh * grub2-zipl-setup-fix-btrfs-multipledev.patch- Fix GCC 9 build failure (bsc#1121208) * 0001-cpio-Disable-gcc9-Waddress-of-packed-member.patch * 0002-jfs-Disable-gcc9-Waddress-of-packed-member.patch * 0003-hfs-Fix-gcc9-error-Waddress-of-packed-member.patch * 0004-hfsplus-Fix-gcc9-error-with-Waddress-of-packed-membe.patch * 0005-acpi-Fix-gcc9-error-Waddress-of-packed-member.patch * 0006-usbtest-Disable-gcc9-Waddress-of-packed-member.patch * 0007-chainloader-Fix-gcc9-error-Waddress-of-packed-member.patch * 0008-efi-Fix-gcc9-error-Waddress-of-packed-member.patch- Use %doc for older products for compatibility, or may end up with unsuccessful build result * grub2.spec- Revert grub2-ieee1275-open-raw-mode.patch for regression of crashing lvm on multipath SAN (bsc#1113702) * deleted grub2-ieee1275-open-raw-mode.patch - Add exception handling to FCP lun enumeration (bsc#1113702) * grub2-ieee1275-FCP-methods-for-WWPN-and-LUNs.patch- Fix LOADER_TYPE parsing in grub2-once (boo#1122569)- Create compatibility sym-link of grub.xen in the old location to which old VM definition is pointing (bsc#1123942)- Add patch to fix ARM boot, when kernel become too big: * grub2-move-initrd-upper.patch (boo#1123350)- Replace old $RPM_* shell vars.- Support long menu entry by scrolling its text left and right through the key stroke ctrl+l and ctrl+r (FATE#325760) * grub2-gfxmenu-support-scrolling-menu-entry-s-text.patch- Improved hiDPI device support (FATE#326680) * grub2-video-limit-the-resolution-for-fixed-bimap-font.patch- Build platform-packages 'noarch' and move to '/usr/share/efi' for SUSE Manager. (FATE#326960) * grub2-efi-xen-chainload.patch (bsc#1122563) * grub2-efi-xen-removable.patch (refresh)- Support for UEFI Secure Boot on AArch64 (FATE#326541) * 0001-efi-refactor-grub_efi_allocate_pages.patch * 0002-Remove-grub_efi_allocate_pages.patch * 0003-arm64-efi-move-EFI_PAGE-definitions-to-efi-memory.h.patch * 0004-efi-Add-central-copy-of-grub_efi_find_mmap_size.patch * 0005-efi-Add-grub_efi_get_ram_base-function-for-arm64.patch * 0006-Add-support-for-EFI-handover-on-ARM64.patch- Change default tsc calibration method to pmtimer on EFI (bsc#1114754) * 0001-tsc-Change-default-tsc-calibration-method-to-pmtimer.patch- ieee1275: Fix double free in CAS reboot (bsc#1111955) * grub2-ppc64-cas-fix-double-free.patch- Support NVDIMM device names (bsc#1110073) * grub2-getroot-support-nvdimm.patch- Translate caret back to space as the initrd stanza could use space to delimit multiple files loaded (bsc#1101942) * grub2-util-30_os-prober-multiple-initrd.patch- ieee1275: implement FCP methods for WWPN and LUNs (bsc#1093145) * grub2-ieee1275-FCP-methods-for-WWPN-and-LUNs.patch- Fix broken network interface with random address and same name (bsc#1084508) * 0001-ofnet-Initialize-structs-in-bootpath-parser.patch- Fix outputting invalid btrfs subvol path on non btrfs filesystem due to bogus return code handling. (bsc#1106381) * modified grub2-btrfs-10-config-directory.patch- Fix overflow in sector count calculation (bsc#1105163) * grub2-msdos-fix-overflow.patch- Downgrade libburnia-tools to suggest as minimal system can't afford pulling in tcl/tk and half of the x11 stack (bsc#1102515) * modified grub2.spec- Add grub2-binutils2.31.patch: x86-64: Treat R_X86_64_PLT32 as R_X86_64_PC32. Starting from binutils commit bd7ab16b x86-64 assembler generates R_X86_64_PLT32, instead of R_X86_64_PC32, for 32-bit PC-relative branches. Grub2 should treat R_X86_64_PLT32 as R_X86_64_PC32.- The grubxenarch packages are now architecture-independent. [bsc#953297, grub2.spec, grub2-rpmlintrc]- Fix config_directory on btrfs to follow path scheme (bsc#1063443) * grub2-btrfs-10-config-directory.patch - Fix grub2-install --root-directory does not work for /boot/grub2/ on separate btrfs subvolume (boo#1098420) * grub2-btrfs-06-subvol-mount.patch - Fix setparams doesn't work as expected from boot-last-label NVRAM var, after inital CAS reboot on ieee1275 (bsc#1088830) * grub2-ppc64-cas-new-scope.patch- Fix install on xfs error (bsc#1101283) * 0001-xfs-Accept-filesystem-with-sparse-inodes.patch- grub2.spec: change %config to %config(noreplace) Don't overwrite user changes to config files on upgrades.- Marked %{_sysconfdir}/grub.d/40_custom as (noreplace) [bsc#1079332, grub2.spec]- Replace "GRUB_DISABLE_LINUX_RECOVERY" by "GRUB_DISABLE_RECOVERY" in /etc/default/grub and remove test from s390x install section in upec file. [bsc#1042433, grub.default, grub2.spec]- Added "# needssslcertforbuild", which got lost somewhere, to spec file [grub2.spec]- Replace confusing menu on btrfs "snapper rollback" by help text. [bsc#1027588, grub2-btrfs-help-on-snapper-rollback.patch]- Use %license instead of %doc [bsc#1082318]- grub2-emu on s390 keep network during kexec boot (bsc#1089493) * grub2-s390x-10-keep-network-at-kexec.patch- Add grub2-freetype-pkgconfig.patch to fix build with new freetype use pkgconfig to find Freetype libraries.- Fallback to raw mode if Open Firmware returns invalid ihandler (bsc#1071559) * grub2-ieee1275-open-raw-mode.patch- Fix error of essential directory not found on UEFI Xen host (bsc#1085842) * add grub2-efi-xen-removable.patch * rediff grub2-suse-remove-linux-root-param.patch- Fix corruption of "grub2-install --help" and grub2-install manual page (bsc#1086670) * unix-exec-avoid-atexit-handlers-when-child-exits.patch- Fix Nvidia GPU in legacy I/O slot 2 disappears during system startup (bsc#1082914) * 0001-Fix-PCIe-LER-when-GRUB2-accesses-non-enabled-MMIO-da.patch- Fix packed-not-aligned error on GCC 8 (bsc#1084632) * 0001-Fix-packed-not-aligned-error-on-GCC-8.patch- Fix incorrect netmask on ppc64 (bsc#1085419) * grub2-Fix-incorrect-netmask-on-ppc64.patch- Fix UEFI HTTPS Boot from ISO installation image (bsc#1076132) * 0001-add-support-for-UEFI-network-protocols.patch- fix wrong command output when default subvolume is toplevel tree with id 5 (bsc#1078775) * grub2-btrfs-09-get-default-subvolume.patch - insert mdraid modules to support software RAID (bsc#1078775) * grub2-xen-pv-firmware.cfg- Rename grub2-btrfs-workaround-grub2-once.patch to grub2-grubenv-in-btrfs-header.patch - Store GRUB environment variable health_checker_flag in Btrfs header- Fix incorrect check preventing the script from running (bsc#1078481) * 80_suse_btrfs_snapshot- Fix disappeared snapshot menu entry (bsc#1078481) * 80_suse_btrfs_snapshot- Fix unquoted string error and add some more checks (bsc#1079330) * grub2-check-default.sh- The %prep section applies patches, the %build section builds. Remove mixup of patching and building from %prep for quilt setup Related to bsc#1065703- Check if default entry need to be corrected for updated distributor version and/or use fallback entry if default kernel entry removed (bsc#1065349) * grub2-check-default.sh * grub2-mkconfig-default-entry-correction.patch - Fix grub2-mkconfig warning when disk is LVM PV (bsc#1071239) * grub2-getroot-scan-disk-pv.patch- Filter out autofs and securityfs from /proc/self/mountinfo to speed up nfsroot test in large number of autofs mounts (bsc#1069094) * modified grub2-pass-corret-root-for-nfsroot.patch- Fix http(s) boot security review (bsc#1058090) * 0002-AUDIT-0-http-boot-tracker-bug.patch- 0001-add-support-for-UEFI-network-protocols.patch: * Workaround http data access in firmware * Fix DNS device path parsing for efinet device * Relaxed UEFI Protocol requirement * Support Intel OPA (Omni-Path Architecture) PXE Boot (bsc#1015589)- grub2-xen-pv-firmware.cfg: remove linemode=1 from cmdline for SUSE installer. openQA expects ncurses interface. (bsc#1066919)- use python3 for autogen.sh (fate#323526)- Do not check that PReP partition does not contain an ELF during installation (bsc#1065738). * grub2-install-remove-useless-check-PReP-partition-is-empty.patch- Build diskboot_tpm.img as separate image to diskboot.img to prevent failure in booting on some bogus firmware. To use the TPM image you have to use suse-enable-tpm option of grub2-install (bsc#1052401) * 0013-tpm-i386-pc-diskboot-img.patch- Use /boot//loader/linux to determine if install media is SUSE instead of /contents file (bsc#1054453)- Use the pvops-enabled default kernel if the traditional xen pv kernel and initrd are not found (bsc#1054453)- Fix reboot in UEFI environments (bsc#1047331) * Add grub2-efi-Move-grub_reboot-into-kernel.patch * Refresh grub2-efi-Free-malloc-regions-on-exit.patch- Add preliminary patch for UEFI HTTPS and related network protocol support (fate#320130) * 0001-add-support-for-UEFI-network-protocols.patch- grub2-s390x-04-grub2-install.patch : remove arybase dependency in grub2-zipl-setup by not referencing to $[ (bsc#1055280)- Fix minor oversights in and the exit value of the grub2-install helper on s390x. (bsc#1055343, fate#323298) * grub2-s390x-09-improve-zipl-setup.patch- Make grub2.info build reproducible (boo#1047218)- add grub2-fix-build-with-flex-2.6.4.patch - fix build with flex 2.6.4+ that removed explicit (void) cast from fprintf call in yy_fatal_error.- Support LVM physical volume created without metadatacopies (bsc#1027526) * grub2-diskfilter-support-pv-without-metadatacopies.patch - Fix page fault exception when grub loads with Nvidia cards (bsc#1038533) * grub2-efi-uga-64bit-fb.patch - Require 'kexec-tools' for System z. (bsc#944358) * modified grub2.spec- grub2-xen-pv-firmware.cfg: insmod lvm module as it's not auto-loaded to support booting from lvm volume (bsc#1004324) - Grub not working correctly with xen and btrfs snapshots (bsc#1026511) * Add grub2-btrfs-09-get-default-subvolume.patch * grub2-xen-pv-firmware.cfg : search path in default subvolume- new upstream version 2.02 * rediff - use-grub2-as-a-package-name.patch * drop upstream patches - grub2-fix-uninitialized-variable-in-btrfs-with-GCC7.patch - grub2-add-FALLTHROUGH-annotations.patch - update translations- update grub2-btrfs-workaround-grub2-once.patch to also store saved_entry in additional environment block (boo#1031025)- fix building with GCC (bsc#1030247) * add grub2-fix-uninitialized-variable-in-btrfs-with-GCC7.patch * grub2-add-FALLTHROUGH-annotations.patch- Fix out of memory error on lvm detection (bsc#1016536) (bsc#1027401) * grub2-lvm-allocate-metadata-buffer-from-raw-contents.patch - Fix boot failure if /boot is separate btrfs partition (bsc#1023160) * grub2-btrfs-06-subvol-mount.patch- 0004-tpm-Rework-linux-command.patch : Fix out of bound memory copy (bsc#1029187)- new upstream version 2.02~rc2 * rediff - use-grub2-as-a-package-name.patch - grub2-linguas.sh-no-rsync.patch * drop upstream patches - 0001-efi-strip-off-final-NULL-from-File-Path-in-grub_efi_.patch- TPM Support (FATE#315831) * 0001-tpm-Core-TPM-support.patch * 0002-tpm-Measure-kernel-initrd.patch * 0003-tpm-Add-BIOS-boot-measurement.patch * 0004-tpm-Rework-linux-command.patch * 0005-tpm-Rework-linux16-command.patch * 0006-tpm-Measure-kernel-and-initrd-on-BIOS-systems.patch * 0007-tpm-Measure-the-kernel-commandline.patch * 0008-tpm-Measure-commands.patch * 0009-tpm-Measure-multiboot-images-and-modules.patch * 0010-tpm-Fix-boot-when-there-s-no-TPM.patch * 0011-tpm-Fix-build-error.patch * 0012-tpm-Build-tpm-as-module.patch - grub2.spec : Add grub-tpm.efi for Secure Boot- Fix invalid Xen EFI config files if xen_args include GRUB2 quoting (bsc#900418) (bsc#951748) * grub2-efi-xen-cfg-unquote.patch - Fix linuxefi erroneously initialize linux's boot_params with non-zero values. (bsc#1025563) * grub2-linuxefi-fix-boot-params.patch - Removed grub2-fix-multi-device-root-kernel-argument.patch as it has regression on how GRUB_DISABLE_LINUX_UUID=true interpreted (bsc#1015138)- Fix for openQA UEFI USB Boot failure with upstream patch (bsc#1026344) * added 0001-efi-strip-off-final-NULL-from-File-Path-in-grub_efi_.patch * removed 0001-Revert-efi-properly-terminate-filepath-with-NULL-in-.patch- Temporary fix for openQA UEFI USB Boot failure (bsc#1026344) * 0001-Revert-efi-properly-terminate-filepath-with-NULL-in-.patch- grub2.spec: fix s390x file list.- require efibootmgr in efi package (boo#1025520)- Merge changes from SLE12 - add grub2-emu-4-all.patch * Build 'grub2-emu' wherever possible, to allow a better implementation of that feature. - add grub2-s390x-06-loadparm.patch, - add grub2-commands-introduce-read_file-subcommand.patch: * allow s390x to telecontrol grub2. (bsc#891946, bsc#892852) - add grub2-s390x-06-loadparm.patch: * ignore case and fix transliteration of parameter. (bsc#891946) - add grub2-s390x-07-add-image-param-for-zipl-setup.patch * Add --image switch to force zipl update to specific kernel (bsc#928131) - add grub2-s390x-08-workaround-part-to-disk.patch * Ignore partition tables on s390x. (bsc#935127) - add grub2-efi-chainload-harder.patch: * allow XEN to be chain-loaded despite firmware flaws. (bnc#887793) * Do not use shim lock protocol for reading pe header, it won't be available when secure boot disabled (bsc#943380) * Make firmware flaw condition be more precisely detected and add debug message for the case * Check msdos header to find PE file header (bsc#954126) - grub2-s390x-04-grub2-install.patch: * streamline boot to grub menu. (bsc#898198) * Force '/usr' to read-only before calling kexec. (bsc#932951) - grub2-once: * add '--enum' option to enumerate boot-entries in a way actually understood by 'grub2'. (bsc#892852, bsc#892811) * Examine variables from grub environment in 'grub2-once'. (fate#319632)- new upstream version 2.02~rc1 * rediff - use-grub2-as-a-package-name.patch - grub2-s390x-04-grub2-install.patch - grub2-accept-empty-module.patch - grub2-btrfs-04-grub2-install.patch - grub2-btrfs-06-subvol-mount.patch * drop upstream patches - 0001-dns-fix-buffer-overflow-for-data-addresses-in-recv_h.patch - 0001-build-Use-AC_HEADER_MAJOR-to-find-device-macros.patch - 0002-configure-fix-check-for-sys-sysmacros.h-under-glibc-.patch - 0001-Fix-fwpath-in-efi-netboot.patch - 0001-arm64-Move-firmware-fdt-search-into-global-function.patch - 0002-arm-efi-Use-fdt-from-firmware-when-available.patch - grub2-arm64-mknetdir-add-suport-for-arm64-efi.patch - 0001-10_linux-Fix-grouping-of-tests-for-GRUB_DEVICE.patch - 0002-20_linux_xen-fix-test-for-GRUB_DEVICE.patch - 0001-xen-make-xen-loader-callable-multiple-times.patch - 0002-xen-avoid-memleaks-on-error.patch - 0003-xen-reduce-number-of-global-variables-in-xen-loader.patch - 0004-xen-add-elfnote.h-to-avoid-using-numbers-instead-of-.patch - 0005-xen-synchronize-xen-header.patch - 0006-xen-factor-out-p2m-list-allocation-into-separate-fun.patch - 0007-xen-factor-out-allocation-of-special-pages-into-sepa.patch - 0008-xen-factor-out-allocation-of-page-tables-into-separa.patch - 0009-xen-add-capability-to-load-initrd-outside-of-initial.patch - 0010-xen-modify-page-table-construction.patch - 0011-xen-add-capability-to-load-p2m-list-outside-of-kerne.patch * add - fix-grub2-use-stat-instead-of-udevadm-for-partition-lookup-with-new-glibc.patch fix compilation with new glibc- Fix build error on glibc-2.25 * 0001-build-Use-AC_HEADER_MAJOR-to-find-device-macros.patch * 0002-configure-fix-check-for-sys-sysmacros.h-under-glibc-.patch - Fix fwpath in efi netboot (fate#321993) (bsc#1022294) * 0001-Fix-fwpath-in-efi-netboot.patch- grub2-systemd-sleep.sh: Fix prematurely abort by commands error return code and skip the offending menu entry (bsc#1022880)- Add support for BLT only EFI GOP adapters (FATE#322332) * grub2-efi-gop-add-blt.patch- info-dir-entry.patch: Update info dir entry to follow renaming to grub2- Add serial module to efi image. Serial terminal is still useful even with EFI Secure Boot- Support %posttrans with marcos provided by update-bootloader-rpm-macros package (bsc#997317)- Remove outdated README.openSUSE (bsc#907693)- 20_memtest86+: avoid adding memtest86+ to the list with UEFI booting.- Fix new line character in distributor (bsc#1007212) * modified grub2-default-distributor.patch- From Juergen Gross : grub-xen: support booting huge pv-domains (bsc#1004398) (bsc#899465) * 0001-xen-make-xen-loader-callable-multiple-times.patch * 0002-xen-avoid-memleaks-on-error.patch * 0003-xen-reduce-number-of-global-variables-in-xen-loader.patch * 0004-xen-add-elfnote.h-to-avoid-using-numbers-instead-of-.patch * 0005-xen-synchronize-xen-header.patch * 0006-xen-factor-out-p2m-list-allocation-into-separate-fun.patch * 0007-xen-factor-out-allocation-of-special-pages-into-sepa.patch * 0008-xen-factor-out-allocation-of-page-tables-into-separa.patch * 0009-xen-add-capability-to-load-initrd-outside-of-initial.patch * 0010-xen-modify-page-table-construction.patch * 0011-xen-add-capability-to-load-p2m-list-outside-of-kerne.patch- add support for netboot on arm64-efi platforms (bsc#998097) * grub2-arm64-mknetdir-add-suport-for-arm64-efi.patch- use $PRETTY_NAME instead of $NAME $VERSION for $GRUB_DISTRIBUTOR in openSUSE Tumbleweed (bsc#995549) * modified grub2-default-distributor.patch - grub2.spec: add http module to grub.efi (fate#320129)- binutils 2.27 creates empty modules without a symtab. Add patch grub2-accept-empty-module.patch to not reject them.- since version 1.7 cryptsetup defaults to SHA256 for LUKS - include gcry_sha256 in signed EFI image- Workaround default entry in snapshot menu (bsc#956046) * grub2-btrfs-08-workaround-snapshot-menu-default-entry.patch - grub2.spec: Add true command to grub.efi (bsc#993274)- grub.default: Empty GRUB_CMDLINE_LINUX_DEFAULT, the value will be fully taken from YaST settings. (bsc#989803)- Add patches from Roberto Sassu - Fix grub2-10_linux-avoid-multi-device-root-kernel-argument.patch, device path is not tested if GRUB_DISABLE_LINUX_UUID="true" - added grub2-fix-multi-device-root-kernel-argument.patch (bsc#960776) - grub2-zipl-setup: avoid multi-device root= kernel argument * added grub2-zipl-setup-fix-btrfs-multipledev.patch (bsc#960776) - Add SUSE_REMOVE_LINUX_ROOT_PARAM configuration option to /etc/default/grub, to remove root= and rootflags= from the kernel command line in /boot/grub2/grub.cfg and /boot/zipl/config - added grub2-suse-remove-linux-root-param.patch (bsc#962585)- Support HTTP Boot IPv4 and IPv6 (fate#320129) * 0001-misc-fix-invalid-character-recongition-in-strto-l.patch * 0002-net-read-bracketed-ipv6-addrs-and-port-numbers.patch * 0003-bootp-New-net_bootp6-command.patch * 0004-efinet-UEFI-IPv6-PXE-support.patch * 0005-grub.texi-Add-net_bootp6-doument.patch * 0006-bootp-Add-processing-DHCPACK-packet-from-HTTP-Boot.patch * 0007-efinet-Setting-network-from-UEFI-device-path.patch * 0008-efinet-Setting-DNS-server-from-UEFI-protocol.patch - Fix heap corruption after dns lookup * 0001-dns-fix-buffer-overflow-for-data-addresses-in-recv_h.patch- fix filelist for s390x- Fix grub2-editenv error on encrypted lvm installation (bsc#981621) * modified grub2-btrfs-workaround-grub2-once.patch - Add missing closing bracket in 'grub2-snapper-plugin.sh'. - Fix snapshot booting on s390x (bsc#955115) * modified grub2-snapper-plugin.sh - Fallback to old subvol name scheme to support old snapshot config (bsc#953538) * added grub2-btrfs-07-subvol-fallback.patch- update grub2-once with patch from Björn Voigt - skip comments in /etc/sysconfig/bootloader (boo#963610)- Make sure all systemd unit files are passed to %service_ macros.- Add patch to free memory on exit in efi environments (bsc#980739) * grub2-efi-Free-malloc-regions-on-exit.patch- Remove xen-devel from BuildRequires required headers are included in grub-2.0.2- Add support for "t" hotkey to switch to text mode (bsc#976836) * added grub2-SUSE-Add-the-t-hotkey.patch - Add support for hidden menu entries (bsc#976836) * added grub2-Add-hidden-menu-entries.patch- Correct show user defined comments in menu for snapshots (bsc#956698) * modified grub2-snapper-plugin.sh- Fix GRUB_DISABLE_LINUX_UUID to be ignore and also fallback kernel device won't be used if fs uuid not detected (bsc#971867) * added 0001-10_linux-Fix-grouping-of-tests-for-GRUB_DEVICE.patch * added 0002-20_linux_xen-fix-test-for-GRUB_DEVICE.patch- new upstream version 2.02~beta3 * highlights of user visible changes not yet present in openSUSE package - arm-uboot now generates position independent self relocating image, so single binary should run on all supported systems - loader for Xen on aarch64. grub-mkconfig support was not in time for beta3 yet. - improved ZFS support (extensible_dataset, large_blocks, embedded_data, hole_birth features) - support for IPv6 Router Advertisements - support for persistent memory (we do not overwrite it and pass correct information to OS) - try to display more specific icons for os-prober generated menu entries - grub-install detects EFI bit size and selects correct platform (x86_64-efi or i386-efi) independent of OS bit size; needs kernel 4.0 or higher. - LVM RAID1 support - xnu loader fixes which should make OS X menu entry generated by os-prober work again - key modifiers (Ctrl-X etc) should work on EFI too - ... and lot of fixes over entire tree * rediff - rename-grub-info-file-to-grub2.patch - use-grub2-as-a-package-name.patch - grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch - grub2-fix-menu-in-xen-host-server.patch - grub2-efi-HP-workaround.patch - grub2-secureboot-chainloader.patch - grub2-s390x-02-kexec-module-added-to-emu.patch - grub2-s390x-04-grub2-install.patch - grub2-s390x-05-grub2-mkconfig.patch - grub2-efi-xen-chainload.patch - grub2-mkconfig-aarch64.patch - grub2-btrfs-04-grub2-install.patch - grub2-ppc64-cas-reboot-support.patch - 0002-Add-Virtual-LAN-support.patch * fix grub2-secureboot-add-linuxefi.patch - use grub_memset and grub_memcpy instead of memset and memcpy (caused errors due to compiler warning) * drop upstream patches - 0001-grub-core-kern-efi-efi.c-Ensure-that-the-result-star.patch - 0001-look-for-DejaVu-also-in-usr-share-fonts-truetype.patch - 0001-efidisk-move-device-path-helpers-in-core-for-efinet.patch - 0002-efinet-skip-virtual-IPv4-and-IPv6-devices-when-enume.patch - 0003-efinet-open-Simple-Network-Protocol-exclusively.patch - 0001-efinet-Check-for-immediate-completition.patch - 0001-efinet-enable-hardware-filters-when-opening-interfac.patch - grub2-xen-legacy-config-device-name.patch - grub2-getroot-support-NVMe-device-names.patch - grub2-netboot-hang.patch - grub2-btrfs-fix-incorrect-address-reference.patch - aarch64-reloc.patch - grub2-glibc-2.20.patch (related code dropped upstream) - grub2-Initialized-initrd_ctx-so-we-don-t-free-a-random-poi.patch - grub2-btrfs-fix-get_root-key-comparison-failures-due-to-en.patch - grub2-getroot-fix-get-btrfs-fs-prefix-big-endian.patch - grub2-ppc64-qemu.patch - grub2-xfs-Add-helper-for-inode-size.patch - grub2-xfs-Fix-termination-loop-for-directory-iteration.patch - grub2-xfs-Convert-inode-numbers-to-cpu-endianity-immediate.patch - grub2-xfs-V5-filesystem-format-support.patch - 0001-Add-bootargs-parser-for-open-firmware.patch - grub2-arm64-set-correct-length.patch - grub2-arm64-setjmp-Add-missing-license-macro.patch - grub2-arm64-efinet-handle-get_status-on-buggy-firmware-properly.patch - 0001-unix-password-Fix-file-descriptor-leak.patch - 0002-linux-getroot-fix-descriptor-leak.patch - 0003-util-grub-mount-fix-descriptor-leak.patch - 0004-linux-ofpath-fix-descriptor-leak.patch - 0005-grub-fstest-fix-descriptor-leak.patch - ppc64le.patch - libgcc-prereq.patch - libgcc.patch - 0001-Fix-security-issue-when-reading-username-and-passwor.patch - 0001-menu-fix-line-count-calculation-for-long-lines.patch - grub2-arm64-Reduce-timer-event-frequency-by-10.patch - 0001-unix-do-not-close-stdin-in-grub_passwd_get.patch - 0001-grub-core-kern-i386-tsc.c-calibrate_tsc-Ensure-that.patch - 0002-i386-tsc-Fix-unused-function-warning-on-xen.patch - 0003-acpi-do-not-skip-BIOS-scan-if-EBDA-length-is-zero.patch - 0004-tsc-Use-alternative-delay-sources-whenever-appropria.patch - 0005-i386-fix-TSC-calibration-using-PIT.patch - biendian.patch - ppc64_opt.patch * drop workarounds for gdb_grub and grub.chrp, they are now installed under fixed name * do not patch docs/Makefile.in, it is regenerated anyway- Make mkconfig search for zImage on arm * grub2-mkconfig-arm.patch- Add support to directly pass an EFI FDT table to a kernel on 32bit arm * 0001-arm64-Move-firmware-fdt-search-into-global-function.patch * 0002-arm-efi-Use-fdt-from-firmware-when-available.patch- Add config option to set efi xen loader command line option (bsc#957383) * added grub2-efi-xen-cmdline.patch- Drop ppc64le patches. Build stage1 as BE for Power Droped patches: - grub2-ppc64le-01-Add-Little-Endian-support-for-Power64-to-the-build.patch - grub2-ppc64le-02-Build-grub-as-O1-until-we-add-savegpr-and-restgpr-ro.patch - grub2-ppc64le-03-disable-creation-of-vsx-and-altivec-instructions.patch - grub2-ppc64le-04-powerpc64-LE-s-linker-knows-how-to-handle-the-undefi.patch - grub2-ppc64le-05-grub-install-can-now-recognize-and-install-a-LE-grub.patch - grub2-ppc64le-06-set-the-ABI-version-to-0x02-in-the-e_flag-of-the-PPC.patch - grub2-ppc64le-07-Add-IEEE1275_ADDR-helper.patch - grub2-ppc64le-08-Fix-some-more-warnings-when-casting.patch - grub2-ppc64le-09-Add-powerpc64-types.patch - grub2-ppc64le-10-powerpc64-is-not-necessarily-BigEndian-anymore.patch - grub2-ppc64le-11-Fix-warnings-when-building-powerpc-linux-loader-64bi.patch - grub2-ppc64le-12-GRUB_ELF_R_PPC_-processing-is-applicable-only-for-32.patch - grub2-ppc64le-13-Fix-powerpc-setjmp-longjmp-64bit-issues.patch - grub2-ppc64le-14-Add-powerpc64-ieee1275-trampoline.patch - grub2-ppc64le-15-Add-64bit-support-to-powerpc-startup-code.patch - grub2-ppc64le-16-Add-grub_dl_find_section_addr.patch - grub2-ppc64le-17-Add-ppc64-relocations.patch - grub2-ppc64le-18-ppc64-doesn-t-need-libgcc-routines.patch - grub2-ppc64le-19-Use-FUNC_START-FUNC_END-for-powerpc-function-definit.patch - grub2-ppc64le-20-.TOC.-symbol-is-special-in-ppc64le-.-It-maps-to-the-.patch - grub2-ppc64le-21-the-.toc-section-in-powerpc64le-modules-are-sometime.patch - grub2-ppc64le-22-all-parameter-to-firmware-calls-should-to-be-BigEndi.patch - grub2-ppc64le-fix-64bit-trampoline-in-dyn-linker.patch - grub2-ppc64le-timeout.patch - grub2-ppc64-build-ppc64-32bit.patch - Added patches: - biendian.patch - grub2-ppc64-cas-reboot-support.patch - libgcc-prereq.patch - libgcc.patch - ppc64_opt.patch - ppc64le.patch- Backport upstream patches for HyperV gen2 TSC timer calbration without RTC (bsc#904647) * added 0001-grub-core-kern-i386-tsc.c-calibrate_tsc-Ensure-that.patch * added 0002-i386-tsc-Fix-unused-function-warning-on-xen.patch * added 0003-acpi-do-not-skip-BIOS-scan-if-EBDA-length-is-zero.patch * added 0004-tsc-Use-alternative-delay-sources-whenever-appropria.patch * added 0005-i386-fix-TSC-calibration-using-PIT.patch- Add 0001-menu-fix-line-count-calculation-for-long-lines.patch (bsc#943585)- grub2-xen-pv-firmware.cfg: fix hd boot (boo#926795)- Add 0001-Fix-security-issue-when-reading-username-and-passwor.patch Fix for CVE-2015-8370 [boo#956631]- Update grub2-efi-xen-chainload.patch - fix copying of Linux kernel and initrd to ESP (boo#958193)- Rename grub2-xen.cfg to grub2-xen-pv-firmware.cfg (boo#926795)- grub2-xen.cfg: to handle grub1 menu.lst in PV guest (boo#926795)- Expand list of grub.cfg search path in PV Xen guest for systems installed to btrfs snapshot. (bsc#946148) (bsc#952539) * modified grub2-xen.cfg - drop grub2-fix-Grub2-with-SUSE-Xen-package-install.patch (bsc#774666)- Add 0001-unix-do-not-close-stdin-in-grub_passwd_get.patch Fix reading password by grub2-mkpasswd-pbdk2 without controlling tty, e.g. when called from Xfce menu (boo#954519)- Modify grub2-linguas.sh-no-rsync.patch to re-enable en@quot catalog (boo#953022). Other autogenerated catalogs still fail to build due to missing C.UTF-8 locale.- Allow to execute menuentry unrestricted as default (fate#318574) * added grub2-menu-unrestricted.patch- Add missing quoting for linuxefi (bsc#951962) * modified grub2-secureboot-use-linuxefi-on-uefi.patch * refreshed grub2-secureboot-provide-linuxefi-config.patch- Include custom.cfg into the files scanned by grub2-once. Allows to chose manually added entries as well (FATE#319632).- Upstream patches for fixing file descriptor leakage (bsc#943784) * added 0001-unix-password-Fix-file-descriptor-leak.patch * added 0002-linux-getroot-fix-descriptor-leak.patch * added 0003-util-grub-mount-fix-descriptor-leak.patch * added 0004-linux-ofpath-fix-descriptor-leak.patch * added 0005-grub-fstest-fix-descriptor-leak.patch- Do not force ro option in linuxefi patch (bsc#948555) * modified grub2-secureboot-use-linuxefi-on-uefi.patch * refrehed grub2-secureboot-provide-linuxefi-config.patch- add 0001-efinet-Check-for-immediate-completition.patch, 0001-efinet-enable-hardware-filters-when-opening-interfac.patch, grub2-arm64-efinet-handle-get_status-on-buggy-firmware-properly.patch (bsc#947203)- Set default GRUB_DISTRIBUTOR from /etc/os-release if it is empty or not set by user (bsc#942519) * added grub2-default-distributor.patch * modified grub.default- add systemd-sleep-plugin subpackage (bsc#941758) - evaluate the menu entry's title string by printf * modified grub2-once * added grub2-systemd-sleep.sh- fix for 'rollback' hint (bsc#901487) * modified grub2-btrfs-05-grub2-mkconfig.patch:- Replace 12.1 with 12 SP1 for the list of snapshots (bsc#934252) * modified grub2-snapper-plugin.sh- Fix btrfs subvol detection on BigEndian systems (bsc#933541) * modified grub2-btrfs-06-subvol-mount.patch - Fix grub2-mkrelpath outputs wrong path on BigEndian system * added grub2-getroot-fix-get-btrfs-fs-prefix-big-endian.patch- If we have a post entry and the description field is empty, we should use the "Pre" number and add that description to the post entry. (fate#317972) - Show user defined comments in grub2 menu for snapshots (fate#318101) * modified grub2-snapper-plugin.sh- add 0001-grub-core-kern-efi-efi.c-Ensure-that-the-result-star.patch make sure firmware path starts with '/' (boo#902982)- Fix btrfs patch on BigEndian systems (bsc#933541) * modified grub2-btrfs-01-add-ability-to-boot-from-subvolumes.patch * modified grub2-btrfs-06-subvol-mount.patch- Fix license for setjmp module * added grub2-arm64-setjmp-Add-missing-license-macro.patch- Fix install into snapper controlled btrfs subvolume and can't load grub modules from separate subvolume (fate#318392) * added grub2-btrfs-06-subvol-mount.patch * grub2-snapper-plugin.sh: use absolute subvol name- also Recommends mtools for grub2-mkrescue (used to create EFI boot image) in addition to libburnia-tools.- Support booting opensuse installer as PV DomU (boo#926795) * added grub2-xen.cfg for tracking default pvgrub2 xen configs rather than generating it from spec file * grub2-xen.cfg: from Olaf Hering - replace grub2-efinet-reopen-SNP-protocol-for-exclusive-use-by-grub.patch with upstream version: * 0001-efidisk-move-device-path-helpers-in-core-for-efinet.patch * 0002-efinet-skip-virtual-IPv4-and-IPv6-devices-when-enume.patch * 0003-efinet-open-Simple-Network-Protocol-exclusively.patch Fixes EFI network boot in some QEMU configurations.- fix grub2-mkconfig-aarch64.patch: fix arch detection broken by malformed patch rediffing- Cleanup patch not applied * remove grub2-enable-theme-for-terminal-window.patch * grub2.rpmlintrc: remove addFilter("patch-not-applied")- Merge changes from SLE12 - Do not pass root= when root is on nfs (bnc#894374) * modified grub2-pass-corret-root-for-nfsroot.patch * modified grub2-secureboot-provide-linuxefi-config.patch * modified grub2-secureboot-use-linuxefi-on-uefi.patch - Fix xen pvops kernel not appear on menu (bnc#895286) * modified grub2-fix-menu-in-xen-host-server.patch - Workaround grub2-once (bnc#892358) * added grub2-btrfs-workaround-grub2-once.patch * added grub2-once.service * modified grub2-once - Fix busy-loop and hang while network booting (bnc#870613) * added grub2-netboot-hang.patch - Add warning in grubenv file about editing it directly (bnc#887008) * added grub2-editenv-add-warning-message.patch - Fix broken graphics with efifb on QEMU/KVM and nomodeset (bnc#884558) * added grub2-efi-disable-video-cirrus-and-bochus.patch - Disable video support on Power (bnc#877142) * added grub2-ppc64le-disable-video.patch - Track occupied memory so it can be released on exit (bnc#885026) * added grub2-ppc64le-memory-map.patch - Fix grub.xen config searching path on boot partition (bnc#884828) - Add linux16 and initrd16 to grub.xen (bnc#884830) * added grub2-xen-linux16.patch - VLAN tag support (fate#315753) * added 0001-Add-bootargs-parser-for-open-firmware.patch * added 0002-Add-Virtual-LAN-support.patch - Use chainloader to boot xen.efi under UEFI (bnc#871857) * added grub2-efi-xen-chainload.patch - Use device part of chainloader target, if present (bnc#871857) * added grub2-efi-chainloader-root.patch - Create only hypervisor pointed by /boot/xen.gz symlink (bnc#877040) * modified grub2-fix-Grub2-with-SUSE-Xen-package-install.patch - Fix xen and native entries differ in grub.cfg (bnc#872014) * modified grub2-linux.patch - Fix install error on ddf md device (bnc#872360) * added grub2-getroot-treat-mdadm-ddf-as-simple-device.patch - Fix booting from NVMe device (bnc#873132) * added grub2-getroot-support-NVMe-device-names.patch - Document peculiarities of s390 terminals * added README.ibm3215 - Grub2 for System z (fate#314213) * added grub2-s390x-02-kexec-module-added-to-emu.patch * added grub2-s390x-03-output-7-bit-ascii.patch * added grub2-s390x-04-grub2-install.patch * added grub2-s390x-05-grub2-mkconfig.patch- grub2-arm64-set-correct-length.patch: arm64: set correct length of device path end entry- grub2-efi-HP-workaround.patch: * try to read config from all-uppercase prefix as last resort. (bnc#872503) (boo#902982)- add luks, gcry_rijndael, gcry_sha1 to signed EFI image to support LUKS partition in default setup (boo#917427)- enable i386-xen (boo#891043)- Downgrade os-prober dependency to Recommends (boo#898610)- grub2-snapper-plugin.sh: cleanup grub-snapshot.cfg not referring to any snapshot (boo#909359)- Require efibootmgr also on i586- Require efibootmgr also on aarch64- grub2-snapper-plugin.sh: fix use of printf without format string; fix quoting- grub2-arm64-Reduce-timer-event-frequency-by-10.patch: fix periodic timer on arm64- enable 32bit arm targets for uboot and efi- Replace 'echo -e' command in grub2-snapper-plugin.sh script to 'printf' command. '-e' option of 'echo' command may be unsupported in some POSIX-complete shells.- fix bashism in post script- grub2.spec: Fix conditional construct which wasn't supported by older versions of rpmbuild (caused error message "parseExpressionBoolean returns -1".)- fix errors when boot is btrfs with Windows partition scheme. The first partition is created on cylinder boundary that can't offer enough room for core.img and also the installation has to be in logical paritition which made MBR the only location to install. (bnc#841247) * add grub2-setup-try-fs-embed-if-mbr-gap-too-small.patch/bin/sh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./01232.12-150600.8.21.2grub2-instdev-fixup.pli386-pcacpi.modadler32.modaffs.modafs.modafsplitter.modahci.modall_video.modaout.modappended_signature_test.modappendedsig.modarchelp.modasn1.modat_keyboard.modata.modbacktrace.modbfs.modbiosdisk.modbitmap.modbitmap_scale.modblocklist.modboot.imageboot.imgboot.modboot_hybrid.imageboot_hybrid.imgbsd.modbswap_test.modbtrfs.modbufio.modcat.modcbfs.modcbls.modcbmemc.modcbtable.modcbtime.modcdboot.imagecdboot.imgchain.modcmdline.modcmdline_cat_test.modcmosdump.modcmostest.modcmp.modcmp_test.modcommand.lstconfigfile.modcpio.modcpio_be.modcpuid.modcrc64.modcrypto.lstcrypto.modcryptodisk.modcrypttab.modcs5536.modctz_test.moddate.moddatehook.moddatetime.moddisk.moddiskboot.imagediskboot.imgdiskfilter.moddiv.moddiv_test.moddm_nv.moddrivemap.modecho.modefiemu.modefiemu32.oefiemu64.oehci.modelf.modeval.modexfat.modexfctest.modext2.modextcmd.modf2fs.modfat.modfdt.lstfile.modfont.modfreedos.modfs.lstfshelp.modfunctional_test.modgcry_arcfour.modgcry_blowfish.modgcry_camellia.modgcry_cast5.modgcry_crc.modgcry_des.modgcry_dsa.modgcry_idea.modgcry_md4.modgcry_md5.modgcry_rfc2268.modgcry_rijndael.modgcry_rmd160.modgcry_rsa.modgcry_seed.modgcry_serpent.modgcry_sha1.modgcry_sha256.modgcry_sha512.modgcry_tiger.modgcry_twofish.modgcry_whirlpool.modgdb.modgeli.modgettext.modgfxmenu.modgfxterm.modgfxterm_background.modgfxterm_menu.modgptsync.modgzio.modhalt.modhashsum.modhdparm.modhello.modhelp.modhexdump.modhfs.modhfsplus.modhfspluscomp.modhttp.modiorw.modiso9660.modjfs.modjpeg.modjson.modkernel.execkernel.imgkeylayouts.modkeystatus.modldm.modlegacy_password_test.modlegacycfg.modlinux.modlinux16.modlnxboot.imagelnxboot.imgloadenv.modloopback.modls.modlsacpi.modlsapm.modlsmmap.modlspci.modluks.modluks2.modlvm.modlzma_decompress.imagelzma_decompress.imglzopio.modmacbless.modmacho.modmda_text.modmdraid09.modmdraid09_be.modmdraid1x.modmemdisk.modmemrw.modminicmd.modminix.modminix2.modminix2_be.modminix3.modminix3_be.modminix_be.modmmap.modmoddep.lstmodinfo.shmorse.modmpi.modmsdospart.modmul_test.modmultiboot.modmultiboot2.modnativedisk.modnet.modnewc.modnilfs2.modnormal.modntfs.modntfscomp.modntldr.mododc.modoffsetio.modohci.modpart_acorn.modpart_amiga.modpart_apple.modpart_bsd.modpart_dfly.modpart_dvh.modpart_gpt.modpart_msdos.modpart_plan.modpart_sun.modpart_sunpc.modpartmap.lstparttool.lstparttool.modpassword.modpassword_pbkdf2.modpata.modpbkdf2.modpbkdf2_test.modpci.modpcidump.modpgp.modpkcs1_v15.modplainmount.modplan9.modplay.modpng.modpriority_queue.modprobe.modprocfs.modprogress.modpxe.modpxeboot.imagepxeboot.imgpxechain.modraid5rec.modraid6rec.modrandom.modrdmsr.modread.modreboot.modregexp.modreiserfs.modrelocator.modromfs.modscsi.modsearch.modsearch_fs_file.modsearch_fs_uuid.modsearch_label.modsendkey.modserial.modsetjmp.modsetjmp_test.modsetpci.modsfs.modshift_test.modsignature_test.modsleep.modsleep_test.modsmbios.modspkmodem.modsquash4.modstrtoull_test.modsyslinuxcfg.modtar.modterminal.lstterminal.modterminfo.modtest.modtest_asn1.modtest_blockarg.modtestload.modtestspeed.modtftp.modtga.modtime.modtr.modtrig.modtrue.modtruecrypt.modudf.modufs1.modufs1_be.modufs2.moduhci.modusb.modusb_keyboard.modusbms.modusbserial_common.modusbserial_ftdi.modusbserial_pl2303.modusbserial_usbdebug.modusbtest.modvbe.modvga.modvga_text.modvideo.lstvideo.modvideo_bochs.modvideo_cirrus.modvideo_colors.modvideo_fb.modvideoinfo.modvideotest.modvideotest_checksum.modwrmsr.modxfs.modxnu.modxnu_uuid.modxnu_uuid_test.modxzio.modzstd.mod/usr/lib//usr/share/grub2//usr/share/grub2/i386-pc/-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:37794/SUSE_SLE-15-SP6_Update/eb9aa2d504fd26ed79711b1fa6700845-grub2.SUSE_SLE-15-SP6_Updatedrpmxz5x86_64-suse-linux  Perl script text executabledirectoryELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not strippedELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), strippedELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, not strippedASCII textELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), BuildID[sha1]=cb4194538e8b7d2c15ed213af4434deff1456122, not strippedemptyELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, with debug_info, not strippedELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, strippedPOSIX shell script, ASCII text executable, with very long linesR if test -f /run/update-bootloader/reinit; then rm -f /run/update-bootloader/{reinit,refresh} /sbin/update-bootloader --reinit || : elif test -f /run/update-bootloader/refresh; then rm -f /run/update-bootloader/refresh /sbin/update-bootloader --refresh || : fi/bin/shutf-831eeb08193baf3e2901d356bb60a7213cb2d500348b2776f7184cb00432bdf3e?7zXZ !t//]"k%N=ry5a]ǥ}ώw@)vZ4#߳%G%.Ǻ|IO0@?(ڪW`|ENy ~ϋ͒|9}1NuʼΝn@ BXU $EDDbo6–QV Bkwh |TWV*;oSA;V?J7nطt?mء v݊Z| 97 ,*qa95')r|󈆗@8pI-G6^ՒR6UÑb㊅/ͶO.Žz,gHe(njiTB$3bեwG=7 7Z[J;3mT{Km5v0&RoyZ~oi2)5ЋY h7@:5.f%hG5yĖɠÝ I:L2$brXliY&\FP;x#7h#,ӄ,MRQwJJcGj/(]e>hcQ0Gߘ)Ue?CIK6q1MނʉkmM)) j5_L U[p1dGFDF7u7.$]:gd S:ӚQ"íYx'*^ı+vaDl-!=Q lx9[)?FBȩKe2 O^ɃdCV\v)率?AqKsd GT0>Gm6$ Z8rS(ٺ`MJ%w#v |-`IMNo)L;ņUc[.4~&+Heډq<椅99}oNlc$/6:}qtʅ)B/ ٺӺ KrXɆV^)ۯVR CV1gc.\#vݮ_v5-Q}2æ+hgNNҕ"*I;Aj βRkQ>;x]_uʵ*KݹBЙ#5(Lm{6m䢾v)P9XK3DGb";}#'1)V ӫ!p=vBN;}AH.t/B~,IKgyz 2x7|QKqv 23Fk+8`  Ej |<92 fy'u W&jA ]JIվD|q&20ZS|e30E׬zPM0oP\GPpi=4l`= [СQ1vQ"g/7*j:O#v̯0yB9X2 "3\6C\?*9iJIJtrZR17eK_,<H >[*ͺ] qa9Ҳ; &Mšh\9*rA;t(bY>DU Ζ/g-NsQ]pMi->Ú70 l(Y޹R#.#hBŤFŽ6|9WךIiJ+}_,! dR-;(^ <?úS`j~aC%SQ8FW_:,L<ܞBqr%oIηx4ԸAj9ި!jLX^ް)jL|syazԺK3¯.哅'ntOB2J6&ĒD)X"v;C'y yI58^- 4sT7:e£8H@7 d;fǘ"+ }in cph/e>|CN a8,Rd[r}ppB^G]lnHV:ck_;` 'U!T¿*5Es gl [YiٯQ0?O }ˤ8F1QJXcNDВn[ r;&x5 A׊-%i `?D?0:.]UK76muSv\'aDkU^3pڷM sr#p@MAJZ-2ƁZe.#<8v7\K+bEg~U}9r 䚯aB!_~Z\ <+=?P]J&*'Sw#bbNpi<4@ a8U $B_w2Ugnj XrMcg <\Πȧ֖#klX(J9p+I]hQdZz\pt͓4}N Tq݈>-ܞpxU{j81]VkXQ3lOxQ^_I&^PM3SPȮu'Yo9Q~n04J/!K?\YJ ;G QyA*J|Ceo_rj_gّm9^a=1 sPxh?Kޞ8c_9(L27~ &G/#ӗdzQ#{@eT=s˲H8?/]S[8 ݛgӔE1[Tpݬ¼WMfo-r"dB8ּOӫDr+dۄLPZWs; +^cE-3bK>i>FyO챏i)(Ft%t|Y܆M4+_!b2ߝ4=A o%,1 V 3rƚA{:aq,h~9 xsAǕuYvMngߔ)}IhBC?KmDWgaO6&K P+?+vV LJzQ>spvx' RĶ%+AsRJ|匾&S~ʀpDodf#A1Q'$$;*vĵ'H Kp! ĩaLJ4J- !_ǫ"4γхCGY4\۷zWgZD>%_ejk Ǟ ABfm!v5Q0RQL墱<8ˏ_ƌVSiu&Zٖ 6%~أ1%fZw;7f0 ka[~7(3?qn|j\'bWoR2Μ'E̢Aa>m yM0M@yPcnCvpFp;lةW#3nm_]@OEJaO xiA?bzHKl<IM۳dëh6ޥɵ٢c!EŚ}En} B"1IA{TM{xȰX2 ׈:2Qc=[vixnM!"CJN\->sH_(`Jz3?Y9?`-mRzB4<-zvմcD;jF`FuTq \.TUV I9'í1^9V%{LnGfs~'>6w֟/4c<d;\1/CCSP&^ %Jn2 6mu<U, [D-Syr_n-SֺB'QR{ S|[: l-h]Rw .n#TK9|m? udP.`;Q>s@MK Rp(DiS$3seŻٴ/7 bZƪPJb}l]^;Ʋ۪L et.)Dy݄v:UZN&c50늅'@zMUQ nO0a^bqqbf emu3 -Zi7jDD`S HF'bCD)]Ž8<.`zG:&.OjM T@I}i,=ja&=LSWÃm?zf.hx ew\#닋Gi5J YNP7֫!cΣZ@n;{犥]3Ka8aU̫UyGc|)p'@/xWw9 /E:iksK-V~3Q4hM$O2k-|}~~03SO<$XQP?Xι0V j1Y+jv`z:vL5 Y b~NxE'h"1fBk[AqO H&6=(`Pz=%!ؕPݪ_Պc>ڌ,aQ:ؔ&mU9mY <ُk,q Lch'qd=TV*o%#Uxx r,@$)\/ovN9[r$%lc88&! uk=Na9ָK55T8!,aayE}mߑYB` (B< H{M32\|璊 MHe5>ǐmqKZ!؃E FYa,KH)a*ُYRqy)%.m7@O<#5: Pzyq_n{ gq8gKEZ[`ƇvhZ &Tߵ~1CQ7dȶ>=Kf?`=&:LOH~k2\'%qzMqgb*}z*[L8T44E ')1.+mEˆe]a427XQ=$rzTidPͺF/V.~ȄXnD%ϗX*Pz3 pKE5_ E(s2U#$XO}}##!HMe.} jܰej)f0Z_9!~Ç Q]Rb)@P3,rhBP^i n#bRCd(Y}TE _o ".T#ܘss4x@͒6=ú1~Ut;2mT(`h7a2NC.ha4Okh]egW;ɳU5بǻb};LR!6kaILX>῔oSeL}%u$rOС5~H;uʰ4zxإW08x(Gmtׅ␝ԁguCLf6yAo?[\#pC'^ P~e?h[ƛmrBw8 &Jtvdu#T9)d ]*{ =$fKV++L4BюS?3|%pndT*M9RzGvQ,sWk 6o\Ym:,*{9e^ l}&fӥjpr`,`{x3907Scϴ7ɽ[쬃R3]z~Ci4PþS ݢtŠA9 |+jrFO\0ޕϿ9$en*5eű7I>Y6{W{5 pHRkFjP)tfcxki#W]X/+; oi ( B(Dg*$[fiKG(8ɛse./,ѵ>HpܨH]ʄhU1l_ٺ=d 0{OIy.(2ҽ^W6iQ?HTH^3*Txm[IIL9FL1W2#{7ᰀO}LL̍9¶equ\D5ڳ!Wb6# ^ZmFtաHpHutS =6s0؉`;&i}?-*2 ۹mb^z),^'o@k>;܏ߕ! wZV(Ǝb' (-De:f t;5N%'Du܂(yf/3HnSW]H=sb%RwKH_P\]I+D:쮦^'eڨH~bk8ʤ@@4LJb",*E0%@5_uGѿuewa͈CώSzɨ3{2ck( w!Y[ +jMeïdke-uR֪ۘ 8b{ ƔSCI'"yxp6Va *]:K>¬Ka쟩Җ( !pAݖM53SCѺyRs1<ō"꥘ fszLG;R^j=QzLD“vDVJ [pz⊳7^:K:vW` [ ;N5Yd0pƋql_;QQc\y1f:~G&grAb9Lw\T(kO3n(>M¤x2Wc?Cv-ˮ"g޻ET|exc4,/]4M;85i#Ǹdmv#Np_iE\%8yv5BPN;[5&*b_@RkE(:b$7NhDw";/;nGZl&~+O8J%1-:ߟ=~ABmUxx/yDIFB"2D*:_*"xaa5_̑QP29fy$= TdEP$+b ~'`T1IXe^@rOxY&^xEit5D gא;s< ݭg05xBٝ57E@“dNkڑ'҅<۷g5]Ylݱg ^둉m.L8OJ9-`^9"228R3U׉E~:w2/=zv.jr|+~N&Z@`eO}4~La5^&gAUh*s{PzlL7Bu` !v"a-TĤ~88&H腞(E/Vz]DW(pkK<һvV]}n!g\j 88M0ygT"ÚnE PNZ',;tj$Q>$QXS5'N8 :nWIqG=>oiO@cξF wG{fԟ\8Nq`ʜP1ّZdRP|Wd~37>U2Rsüf`(Ŝ?!eݨGx  Jxg4$}{|!DqDJapyآߔf&7۴%HO3_vE'hfQq-/H˔j;l'?aRbI-sԥb1o5ӑ4kWSUbb}$$KW,znN5",W)XD ֊wD}SʉL7ݭPw=%E\MMD+ a@K,`ޤ*T?Wb5 xC £ IUv.aM0,UYqjPbeB~r6`Us0 Q]J)1= %mV@^EDr?t.]Ȟw<<''P;5 [ n(3'悳#:!{j l~͏H9UºcѼ{3Rr_:# QKY> \gǙvks~IFg(Fb$ZV^ġn"O; Nl&V9f[/Y#`-Y7o03"F Fiɤim!"S(|) GȂ&$):}mL .J6,ffcx =-&\"{.k{_9HVpR ~T V 1bV~o0~ô~gTՂ^7SyU,J1<'Gu6c[:~1ş1(&76>YS=gġS z#/$惟B[hjB/ ڨY@x| 7 jtJ Zh'ĥW3aiJ+?ͼu fWӶ{_^ Enqh!Rrvd}16]MU^,{İr)Wѥg3Bx4-",1Bҋq+P ͒5pޝ?W=P`$Qj$1ef#VSѽi*YH=w:*;3c9{KMed:NaAr,dGI=:SRZ) E(P<hI]#ÑO\cĆeC& mng .C*P^s+K`}քx{l>e$|XhMkUױ81wu|+ԅ|F}%;&DT05MH F}U]jMB\y]EԚ#{,~\2:CB-x0ն;-]F:!+utunhUrCn'% 㡍2~_1UDם4xKf+j 9ٓ,8BM q).8j<=x:˷$Q ş= j: ' "j<Ňf[K0`bN[/]E-U )?im6bz=eEI\=ĀZZo A@5#,!ӾJKvB֙]=Į< "69~Ws=Y^i:C kմHAņ{,ed\y xjO܅a 6HN9}ݺ WEvb '/Vȇw Gtbı Ϳ&5# c1XIz̶,tQ U[ԃ(kuyH~Oralty[.M&4BEY(bWy>-^؂ dSf;NvW@֥Y{Xa*(NUPhy VBhJXqYoj&t;5 ukn|'> AQ SJݴ[׫=Sa+25pXsC]EuH?%-J9>8f#T%fg SO8_궟 ,6 G1`i`-_P}:%쪱!`5'@Tm#3G]ZP~M>Έ-"0l%8[> `%prT^fsqfO͂uUQV>xeΆj[)Ce:hRMUk/0C?\~Q%r}΋aH&;+=WcW{5k)0YTrGxWڹ%_gJA9%7gaFF|)5O~cXpvP4[izRe$t09bQGbv[2rYm0uԡ <ŎVʼ}ˑuFI5-x~3vRBʾCxS)4t iHdjndj\#ПԤ]\ڰ=]X]cP^Ś '"8ɕ!І{ l&[dBfS}6qaJL]aPWIUlN# cvW)BժM QE=[&~uqʹYbEVA73 ]_1=} ɔƩ魌5뭳q% іb{f~k5.[G0*Ead!Y$液,^A\~ilɲͤ ܒ h%rɋL[uuXbӂK.zEJ [Ic!WM =(ҷ0Cw$ٱ ^֦ P0%CX-Z%I;F!!BM)$BpJ5G|Yc܏wMUF8jחQE@ ?yy4\fcATNWkWQ|5ܩ;"ݝ]G-tu"UeAj;TLX{,iՎcKˡUC< P+n"HU2tmה]}:*"Oj̶BݷĔk[s3W;Yv?.򊹳{ɗVp UFBOt)HQaUq;x LB~@)+L=q%ͪ: ÷(l̓4jp8%E_@_ΕTס+Ns/=dpҁV<^A ~̖U4~6MfNό10m_$[Y0Qa“ۡS2wc J"ҥJ+W[#IwKj`*- Q*1mVOퟨdb)>Lncګ{$j-%WҗwآJI Tra0_7J[uavח:E=eb{6ZaJe_..EwN!AB3Bs"+}ĐjsL@cFLU3 1Yo? %"2^&Vgz&LDS?A̵vRsҋfۿeBQZroJݐ>|(A1ϒGY?8Yn4+ L-RH7<px:HsZ&ψ @P ^7X+k ,K uil_*E %@Pstſp%oRF%@ڗ@O kCÖ.:9fS Ӂdf',sLJaE*X#*SlNA3(܀ Iarrg,7ĪQ5o˵7צUڈv{0/!,1Il{ItC%ȥdJm )鯭 DhʯA]O!r&N{ ĉ,6 p)y_q'N'Ў 3;&H/%P$ S˷D.2>x O/NnMAO] )|֕\xn03;Lf5RBE%k~= ) x?+]U(ceCj4M˷EgIw;)> ;&<2 A(huRV>wCq^Z̲r_o$&H\af2.]<@q8-ų=" 7<Mf21Ix݄'sONAk"XZpRX z)C#(le_2֧--JR`70VZh} ˡ9-}SCt=ٹ<^}~ e cxcT LNw# Yٱ$l]>$rd Їn=}!~ :>%tHIH0nYn(YQ֓kme/n@1a3'7G-:ta0 j\؆-~purk60ZI?jB_5\K:mbFg+g9L"JIń`3i>^zc-kP[ȔLt_ _\Ӊeg *}-pёDY=Wc_S) *raФO'2Rn/[lцRQovfww a9EUn7eBMМZl9MgZH|,4†QB6;XZvdubgڬPO%./ d~jaN0ׅ*"Vl6훣`QN[L ٬6)||g7h] by C& 6JT*S.?0D e\g2n?t^:E)1X%gwdBl!ɾp]YVj~#V;ˆ{6NZCw7Gx:$R;VXU_zq7ڷ|{zUw=3b; 5L$SISD) =HK^:X<ߏj"N(>ڠ>x.ߋEj*dbyXR>º邔ƚ,H(\Ys09_I qg^> u @ N0jkT@/~AWu xҨ_"?eJ {s^&c\$ReG_UIO}jۅbtꁳ!Zi)J)8h;!^*kE/ tٶ*_aK[G95P&\qen6AifJH)5l{Yxbpk$uj_ ݥ 6.+G暪5+A;xz-jdntbPWxD%ݻV@(S#&I |t}/j82eY٨tW Ѫ+"sf{#x3sA<#%;bLN~8~[֜p=5/=C; Za:fVI)4hK!vF0=&D6TM2]Cʐ cL&'q~wElfLrh{{>.@a4)M/@#n؊'ʅ.L8eT kׁ¼[5(wy_pgCF'{ɔ-|iD̎#jX!KyH4ak:AQXǓAɏcKq=7Wiro򝑩3ހ:/t>CHϩ**t'UVSmT|^ 3BReJ5bjByc雌k ~F@Gcc*2+;ǐկw! ]Dˊks\FThCcgZ{bXJ*k 1_B |8gT'mL05d;:$d,@)RC%M U`fZ#jWW YL^f7Pv<}S&? Duh[#* \NLLS1 ~db՗Kvү[Zʮ(cL #u(_9ZFAo(~省G]ߺAjŸ}NSXs>j|۾BS>+,VK1!S6naa'vREg\21v+M&Lu7bX`Eƨ=Bt*I1E9*x#/MZd7X)Sy\knGaQb-c Fm;pi~]r{c_3cN$|vQыjU#ose&Rn͎ 9&Qh? U)AE(,'7sů %WT¶m)Cp\- 1E-`Mr]Ú}O<YcP5;|)Bg r3#ccpk%g?N^r ;c(*/ K |r₅j +D tj)Z1,Fzd^ iY#̦)Yj]b1NUiǎ/C3WlDwel G#suOHlp5/_hsDܶdQ3@,OEY˘|F9>Q/Mv'>TXF%~̏>Onizpx[Ȥ=uVU](2t!DN 7mZY-=x0dmz1jJW]fzZ:>ч%a/H;)ďW45җf=.Ws;ỏp6I#WRĚ̮>izC=\~EtIg Am:;5*Ѩؓv\2U9i6YNFU*O[W1&+3E/1؅l=NAɎjrL.m)u}b^:#xݑª=1K08&2%x?^gl8&ࣜ.nbV#\e-0' _=|fv1ӻZ*BAԳ PQM"B|6(7$k1JmJ '0׉+Wsv:MD1< u @T~N.[ff)<'@oa=eNKBkOf3y8&SQitӗ5xK|1;ze!mxwq4Kxd[Mk~ Ú_gU:Y {?)ݮV 7AU DthŲ]eig.uCέ;bCMGdO!AڻK}^a 6ЎY|=ʵtԩ40oe%'pH) C&}? ><7ln7Y.!M[\@nA1)!RM)ք[0{A(]OɄgTJ&Za)6n,R;V'PGJ{kj5xUzXD t0uq1}~J*:#,"v f tGiz2۹HDV_c1{^:@eBsT䑟R ߿י|s:,5<S3d>p}6).IkS?`9m3t6r$+|S˶_Z_&u&$iF-ӿ̵!^a*Q- g7; aBr&fCEd< C c_w֑@'R󋃓3Hn5g3EqSMY&{u9@kT:-:?$> j) fɔ(ޅĠ!mN~._L D8ˮEa;G.x{ӒPB(0IXX`y6wry,Z9YBڒ'alL[  (>N~v$QrI/B]t:m(E]S.rU+Sq\)xEʅb8n:+c>j?G֛Nc|2~Yj`A`S^8/aˏ{u6.ǦLEQGpcy 9klPG{6W\J<բ2xNIu<*z{gU k!~HAN--Tm []}Ϙeh˾D nu:RRBT`V0np]UNOp5d@$g͖? t]grP"9?׬M(o701&0]#9ұ,m}ɸw[ȯi;S|J"+a&ƂPIMqf%a @Yo5MJќ/oa@:|ʹC BB6sa Bo>JT? k Wsf9ufakM[p]3۾| h\@{,Z2'H]nS]֊pНbɠfǩ*Γޞ䙶'l8k}l.z7*ڍe>\BNtFTdlPiMa aN/ooYt:p8=&:V®*= ְb5խLR1w2Y o -+l_ ScVK ᣶똎q ʥ,Hb`D cَn|P1k;|&"mZ ZL#븸 [X#(UdܵB`~l9lq<#!6 . I viNZwዙxD<Dav@N(3- p9Iui 9w0-(&Ű n!LlZtbndfB mE>a2Bͤ*ŢW#H8w|R̀&\IDž1Բ =˦I|ߒ]'م%DGhBk`W gZu8@[eGI0:6OU o3.Kzzi$M&XXYuI>x1_?tռHGUs#%ɩ*aBf қt=@xDwv;yuN&`v䥒sSbHg;>NrvnDyA)&cEgv-:JywP "-}ϔ{:)i+l 9ks*rKI15Jx烍ϖF.s )H'zV?FG sh-m-;#XMŠ74;`?ܩo-\:gYLfG4ZOêT`$Q}Xh\{ -x8+/#غwS7ऻ3̮fG/S|lA6꽖f cDt r= 0fQxt2T 9Ce³EP_0Qr#duu~F? "IBW0 iWu61z?(9f~˦\sH(#]mk>7$J.8R &ZX$wO_ 0͗&!=!Z_'!g;EIWL6#drv/#w@'&B<.=Tld"kvWN^wв>ƕWyo4]re\Ixx#׷ LR[du ;^T<~LZI,r2JǨ+9R;h+Bopϓ5m$ lS?Y+R9@!TuMB*2|hW85:BYy"tFw ^@ϐ!0܈ GfU$)̋&`65V2z;2ugp|?9SMU߀ykgrDS0@7JՃ߷xy8`Xg~YA#DG82 s[{>@ޏDYs-gT 8bӃsYyEw47sSm[8S\.Ai i_cP)W'kkrn[IGUHo|0^|iL: A7*qS(IP 4C8(^F%""I-ݾh䷎}T- d@K-YB꿹hKWu;CORe8gX KPQՍj/gH&ƙ>(ũ~;Oh{ '_y+{qT>G0V`K$5SS T%}-u4< VFlgHo03 H{ywr/i쐭9۷e %̀UA^ZiHt\GR_)_zq5;+FT"14̿gC7F}r\Q 27#:7Uܲ'\eȀ;_ܮ0)L09ǰB&YPkdr ,ԋ2>:@|]ԓ5ҽ6m?(Xش;iΎaKqy^eOOqNsՙԂOhF yo'Y"KX 'N3nb\`OrڇXPQԊÎZcȉÓzKѼX2=SmDM"D~ 7/-#BGꮔD< %beVqw|읂}Zc桠ڎ6lb˩sT NxV)[zFNJӛUfZx`G@9. :l11JoAY&MMo9]AKD<jBdaSr=$JwZ^,Σ_8I5,[%5pL~kYsӋtpfK||(WȺaYj:'gceBqS;Os>kcC@VڞOFsM(~AG rx@S08 ıf|ع^V[euB4%q9;Y?>sN ʒN*xa<X!2u+VLnbQ`+Zsӡ&N'+3w9lz VD !t7#Ǥo~;2Ҭ9K{ZOYekbwYoWIZ|9ls:=<}"q%=eXt[=I{(LRvY΅ <:0eb~#*4;c vR >MjelOG^n8 mw`AjeY% f'%{{-.ż*'RXaD9P[DCQ !W٣g-VgZk_\}1SB1wy%Ƶln]O}/z(Rcנ1$(0?4&s~|cz1* wO,&cw{U93OxnW|I,J|d^]}ij:V8 ysJt i~4ag*Sa~>HYq;T<kbQ52Li7YP=84BAZI (q){fe 0ڞG(i:%ř_rsB$ Q6ej fa:_sux4;I*wò ];$= YB<{SP8|ò"Jm|[t#-,SUQܷ>[JWD[Qoo^i =I;Pxe#CBD!޲Y;kBW _ A쟾C`r=m9k,J% !޿pƹ@9h p} zÞ57n#C6?¼'X~]*YNJc=:k~,TRg;歐: PZc&{PbZBP7)yoTK~Q?BwlYLi {Tq`~5 oRU?&TM5 ˺mNSMEdmf]N5Kfk8#Ui DQ3/,vAAV!CKA1X577j*t Aе3B-U!`a#-1;fxГ"TIM|j0#UD!.!͌D ~=8oBE@ ?hXUu6$g8rbs<<oֺZSĨ.&$HUC Ӵ$c9E.!w&2 4H7,wS[CböꕗެN-*\v\ߣXfqv+js:1f?6"[1Nb Z>C=4*=[Rh;hZ87Rʗ$G|0lJwm3]"d 5f\1&JEٸaM\1X\ 5A.iYA%iKS<\S0B=Oi4z` )e - o(m4R#RD/2&&6]&e Bd=.Y,_y69'b]Nqd1\%RΝut(xE<ӥz'J*Nz-;ptώC%A6v+:q!@C!BJ v✶|+nB /ͦ퓨B Y Ѝ`_#ʤ\p*Y~G?mC\JTs_@%vYǒW wguV+*%&_ =| AaW:]Nˈ }z}ݨлnZ% ]3S:u6n}3߳ǃͬhbPRcŝc<|,:wٔXe\+< CyGShE=|,^]`uUcyb'w9j頽i/zwr5{DZz"bx!6-s Ed}| +Sj(!8M[W_Ŝ]v5e*M֎TH賵E9 vaܤy}#Xro(:1ghuۦب~gni y~3*z\8=jaK.?ROz874Gb *=ڽ?[]fcfS&HfФ%oWRQ0Gcl9o(޺VBWZ @E04^@ ULD |6͇k\Q i;d'Lr8WZ{J:Fd,Dtw-ͫpRk dҙ]Z>dȑu} JAA?L=xRR΂~ٗ?$tahpQD907]-"냜Sev,Iu[ b}>ǫ'X62ᯏ9W`/g2opF )\>a^nb)QhPqԟo >J7Sb xM91Y{tS/X?~2V!K@#`Ç( ]p0'ؼtY/q*e ڊd'%@}pR7EeFzksc^ 9~APd3Ңܼӷ'qCn1ߥ1($>nkӣ`vg7}y?p*oCfP`S,+9Uk'e *a;LϘ@`^<_`yPb\ۆB>nXOM-̟oRDd8rbtX `,x]љk Fbe]t#;4H(]\XP+0U ϧM)lu&fBނWS"(#T3CT*6kPҞ jf!ۙt$̢<_Y,8ÂFPi{VEzw׌hh!\Mj\JW)V^o_g8xK802gzdfWƒX'CNjIlq[E=iG1b&|!Jef7pv`e83q'hr^ۗ3(̄oJXK- JZ7N}853q.υSQmVd2 o^ۙ87{"N]_~H=4diEkiYv~=kcѡlʬ`i7=mE*2c)IZ4:ƟW7+-FS%IָUPnd6p1PY>ҥ# WuvMb1@_9]t:NUO0468:sOe 1x>m2ƌ8<|9=Z09=O0\U)}ϙ ׮܎ ڗ2{ל:$eeu$D0?$s1 y]pst'Z&\Rj02O(I+)1˥4~ݟ.=9n_΀c `QQSO3{$oBD*ў0w_?nⓍT |NS&/43*{>:1e]\C|0V^?T{8 Ij0WH`<;ybalޤ}P8E;*z yfKH_$#˅P&v [h]'d7ziu)ĒUrhhFdb%rÿUNvMPvDZtHNS&w{Pal#Bl$G A' @v: GBσ׶p) ٳ fw$9 e|>;P[Hyb%mn]>>|K#߇.3P '_3G{q٦!/YmJYE=.>R5My~B\M#С%l41K⊼3Rh)Ƌy(!!>&&'SDr 㒯sq\{^ +$j pI7rjy=FZQF\%LƣЭ6Ma-6Cׇ kxF,<=C.ұzZ%#\NSYN@FP_}aX~89yS'fw# q}VG Rp愾?D6`tI'zV5P2QK=S e8-|Kz>~lWCNjCޟ=.o&"K ">&ٟy}~^F w'j3NYG%_?b`AyB*21P& ` Ҋ"iڱ:'8 D?ukBῌY"hj95-H#,sش$O7jdTH'.^!f<G! 8C]b̝\3 Z<4O/W#Izu5H­- Xh8kwɦB_F-`q$$ XoX %;xy1[^ x]zpDHHgɃQIn+ }]%Lu"@NIOeY!GZJtVaԈW^ť-3HOw [jU)xE_X^G T{++gܗդVG<(i碭(:;b/ V#Z.CNhDr nD@D((/pŐVAfji4u ,>bX`Ņ_md7psڶ"Ti/Sթ J20|4kM // ;+e6v|/"}+o39Eskk(ld-ꎉۛ'eHm-gpz;u'^g (CN>wh dW3-y)@[= mX\o2z Kk%.L Y$7K >|I;3}X+>Gx-@8\GU Zdc R"7Esaψ?MI)Znfz%P nGص,xVsbs ,],B#Ɍɥ^ . IYjx94Rc>jdNpx`ĩ1}lq>efkz,JW<ڈ@ j:zf+yȢwGc .Z&q6n$"0:>x̴YHW b; )5HVb?|O/ tO}j5KfZRuẑKs5',lpG5 {%up^q݋NτMs]Mj=Q_)^~pp-:FLD@PgrzJB?HY+MTE ~](R7C3gy~em@*jFJrbUh¶~ ҭq| pCrTN`1 Y *ӝ^jle..x6]<V'e#:6W؁$L#!T_OʨghqWkgڔΒ,#؄I[V$k^S+CR"7TRKkk뱷H/,VM"U{b6 4ɩIIRk ֱfsp>ٱSiA%l@K{0}K2ZC`wV8^kz7=j;5^7:XI01J)ggJDnYTVVu^߮|`.6vɔFuQ^=4IŽ DN ȹ8|f>LFXh~!}R}17o/U+S ZCsM`nAb/>+oyǁEw|AczH`Pk1=DŪ*G/b6Gɿ~9vD~ClS)ڴi"OZ0-4"g_5[TK.)>A7"Ɠ7lS Z $Lh~i\؉)fsFm3Uuw[j-)4sC-6$Cq[xWC/ nq[\ΞQR3^6* VQ=]csßt-rߙ]؝G%+:kqjB4{`m̒@甪6SZ$o?W'Hػ|c~bP,F즛Tj2s]OA )k?xjzuN^f$.FH95>VF㵸b^4 !ìim$3A]c&+gvl[T.cU70af8 2ӷ3^lD "ؔWb$R=wF|ן5zRV,Tlp ҅J9:XU_$bdiФI `Ĕi No bT{45ud/tȐx-y' `]&383|k|mo%d)$>wsmVZ"#5Zke~ɮ'b2eJєg x]œr}I'GdX]Aˌ3$ʹIP|اlAZT; -% d4фS| %B騏ej=93QhNhvO+/ނx뻓sÃ}1zsԟtBada~`"60/*ZNK71JEBp+``ep7rcDmڭZEW%dJhZ304>[]Niwc(n%TzѬTѭQ-UUltr;"t*1~QxJ{ P~0 XI>NNWGgR! i|aHJEMȈ%tJ ~23.$}k|L6^o|?q jE++?enkc CC%Z4bG7/I[c(pyQ, ;惦i[LЍ޲K~|K0eǣ35sVaEQ5a<ۨAr~݂rM C)s Xev}A)n[ pbeV_9kE݉س]ډN5ct(E|11x$#d;V3!]0h)M'ZQ1 SȄ]p[`D>:4yMŔlzVCyj>>'{tȄ} `)˔` ‡"FV-Em'@{dst;,`f? NDpC[ZU<{fZ=fOm'&]P.Mͨ.1Rc"? B{|4^R|BU\t_ӏI:Bs2N\Mg՞-)vX>Ƨ.5hM@}}:9PCEmĤyFٜDłhj}Q%gլa97Fb1k?sEy%T$X-G+6?3ԋY憆Γ@RŋNs˪3#S_͏r3ez|G-nl5_WrvڏxÎLX0Qթ! *i㧞!6 6B ͊.-a4!p1@ ڸ{um`nQvFߦ!8D -:ďE1-l6Jz S!hl2]T,B8 0T㎜ǭӒ>r³qF 5{&K˜$jys%?"dBӴU`HaNIX#CQT~-D D]_nm4h$RGf`fخ6a&OJwq9m$b[H*!c+HEeBQ[^ILb܁o~oF5{vdayYv䔑5&5}TiE|2r7Xb"u4@]q}> ,9>: )̤E;tsQ'3S\E q9!|O~y_vL bK''FHdp4qjBKB՟C(_^pF~|A2\+[+8?Ã@?X!aE٨o@1 2)P{#_ i`J F9l'pH?:g^羁,s9!FS: j$HDXW?jꜬ1\}'NE|xօ@"|eUx}ʔrY:6QsLR{'49 R3wH5Ta8!OwtIe9? pHjeN{?`-==W9RQywOa~u{ |LgtTmњAX$@RrBQ_hIz~ABLO1_|Xw(CC5߰ :n]G:Tk3>_niy ǺtXn"#]T,+%(vAh_NTe??h9P!>xF+sr"JSk\x ] Z}F*}})|pU~E{QqYk •Hy'דo|mX[O\@bMn=(`ސ0 ĠtZH\=|6ŭ.eN-\ɷkw4'cS`X{1tQIד2ڙXJ1:_reF)DV_GP<1>S0IsaR . :4FYBr䤓wL1w[j4]O]o%>lg#Cgkl/j  cЙ]yd`A>m8 ?yiY{Wush$@ʳ o]lBGfN"А q )Xi"4KW13C(.%qFf9IscKXB0\uo2@f?A^yp1Տ k_U~(9ZpM%v8>>cӳi\,}=bZy%,kdm~~%XA/ "hJ[8iރ7Xnl+/Ds8]ɴszWVRXocTc-d?F5j`ՠUl@A"/s*@3}0 tQ/ﺋ8ph? Zx)Yi<@22QX/pdiMzߢ`p%&(v*D9>o'+ViCqE9,&!{q=A6+"gӀ'J!<ıH@p/֑ lDVxeaLyn``GRG)J6&7#iq;nACL=+&} VPZ+q]  m \/a B݇_աЦQ?"U_amw1o͎QS?us`k4|\<%ϖ~Yj%.[Pӕ{]44Qbq}Xf;]SnO4VGfXbvI^N7Զ=]#2bOQ35(l7/@qF$,MyZ"]ӹ yhwN@,/ ?k%rF^*6hF2uHf8d׆7x !ujYi"7SY`jI;[6Z3#^ yּLZRܲNgtJ0L@`u(e-o{}.O\C=\4&[_d/CtEA P 5 n tDKTfyAAlרJWaMBsFEM}s2FڴJVd4d% |=1M$R.{aTnib =xH-w 4W;|5CT@a_ |~⹰In( 7΄o㈡yxN_{ۣ$t=x[K#g k8^։b,E))c0QYuf@Vq~kQdg[9vߊml9GdD6,]s)bIBBEN ?|AIVK7~*֑}aD!_;z$,fQ! en'WЄ4.xwjz:4^S;IxHka럫>@>w(-)۰E.WN #Qgɤ.؜ 7%/$\@OD Hs4$'B#ứtzqΕwgIlRQý\A,}vMawDEݳvkPhG-_~R$YoOqdB-66\1"|Eg|랱CMԨ0z|Km#E8`oH3*-+ۈ< \+8̷sw JPJ%,L(j\nS]}a*СxsMѬʃ&;w0'_w'6ƹKةvВrkͳ}!2 LSրh fɀ*Zȹgb>ca' H&};iKň7]i47^m"5-f(CWpfEG7/Seޅnv7hx)|)&- Ͼq"ݫ`"Gɴo{uٱu+y#u'>S~Wս|̍E Mk + D2k`h ޚhPtQswEQMyP 'X&Ƞ1sRjۉ|۪6A-O+ vB`C2,ej%nt<Pz޾[ mkJpu֖5 $>M6+u*4?O5J$?6 AnѬn\dBMrR_Jg1.3\e)a^+[w?!\@Sa4_z^N+XUVB' ݼ.~o9hmtSB+䷉'i o q^g,YxE9 W755yj!Q} \b 4;Jti!g # oyF#r}߳ ֿZι?bHSNg(7tFzklxJKwX65a a~*"02e~&Ŏ,93/7(LzBPkiaa5d߱a[Xoldzz?:Rӕ$mMi ŭ~o*^NU}Pa|!r~կ9RۗsrtV b9D Mlz7E)H<:\ $z_s51sۊس}ĝ~~e!YC{p?wel@O-J~k9)Ȍ,B[=a6# BG^X舒dmZ>PrA ڦ0C GoQul=n!1ZWda le^*} }#Y/*>`XLʧ%[d %|]k̭@Kj֠+KUo9'a g~s8Go7ڥ[ݙRIm0TK҂ٚW6j85SƭH&7ILR{!j~I ߞ(ұ+x'%艤ڸX4V}n=#)xF~te\ !g#X/a 5A3,^L_aZ!à1n˴g`ffx K&,UdmՓTlK*JB|? `&r5ٛ՗?UXt4U%["7NpyV68&gTW4;l5F=Oٯ!-.zЙgȰ,U'`ME&Ǜ'VEs< w"9˂G~clROϟ9&EkݱoV}'~@yY;¹`:Ҭ<{ZKRvs}d`/'2/?,^ \sOYU3|ѳǪcEmL@!ӯ-}kyAt: L3\Qܺ/{p)K04駜vG\ M8kKh2=wh;ZNɯ]cV+Ӣ2$צ-c|VL->{3*1LDveD`J'IC*y["$Buƃn^gIh R@_;ql#e4}&f)X',d 6$ypȼעNOGvߖ`UGoH%50,{8ްuxkx"웿PϩјǁI+PF(lU/nOB}\7S]YL6Ӡ䇇49*4#ok?׉0U}!Xj-=ďΝ7>j<+_@~W) ӳ;>뒶ɆUi+:QwA@lCx䆲Z b.Lͪr>;_Vsǝ5$E33~ࠟzI:eŦuIEښXeI*a`iʈ.uќ=B_ZJ4<=;{.@צD2ȝ6.VgEf?>_jsqS>pYܱΓ z.xN\rOCS?6F9P(\A("5&nfqZj0iu.!e2 |JRK`9 1q-6oj1]E2MkGKp6P=#:ߔ%}ŢQ}/owq$RF I]u$?"VqMgrl6tJSCguyZ%ܩi`qlƩCGhJPt~T=C60Ṏ ,|~s/Hk'q;">u}=>leUkxc`T\8¸-KˌFH^{!)Ioċ[ӌ?O-VQق>8dq\F.2/d!)4P=<}g\ƩB.``+!ٻ. (Y 7j t'HKVPh  *=rt{1Dg9m!9B?b('~|J,~2,}H#`Ǡ)֨+6_C$%:%&!"_d1߂@0ӄll\Fw+R1eQd~'bOd{ Zv%0ᓷo{m;YF-u9rjΎ[?] Z4-zjpI iO1 3 \f)~h`mcb;U#\XJfбpWd,y#dGwqB2㌴ܲ8bB&KRxbIQ Rs BMw?gae~s!_\w}hw9t[t-[樴QM) \] NƧXVR!ǹarSWcܪ8ם' a vX<;Sޅc)V<KS5/˽&`ܗk[˚"%6k<|nr%#=F)1TC5l,a^Rkjj WΏ nO) o7_noj8MCگ4" y㮍L~L8&MZG°JqMo"mUׅYnuҙkp(iï9!6\\2UйI݂'Xjp<ӎw/J/BW\JF!)YQ'>EThp t5@mFdŇ:.ٔkӇ.o#پ3q t޶@\4O,sD{NaR QZwKUWpz<4t9}d]`00QEzc&m|xg[g5%**nޛ΂RPG T* l! )p*ʵ@s9)sC{ShQO/,rﷀRwir"/w\.ďZZѾQeW4UQ oh'ܙC,332z2]eѧ[jW$Qow#,y˝@=kKlr*'^[^H:n?6FB[W:.h֎e蟣c/CpT TGC}Q~?l7ᆊ!{j8,:3g(]t6Im\)mf)Lr3V:uޏR;>0ץA2>=`q[Arm.Ё^X]*ŮȰebkk3Fp2ؚ)<bJڗdT{ߖ#~4 Ȯ ׏CrueYAY\tܭս/x Yy|2|4&+ &E6!%LQ{o_Nmn_-7ɖ7xB܃1j #20Ch=:u8uə*gG 8Ǫp2ϻtHJNQqyqYf Dӗ$)g~0],Uf`@izKrΆMfK667eY ,#dH"ϠU > 2*#bLhw\HMnuQv(KP,^^siw(#|%oX7^K]vĪE5w+72*o_(A)`, 84AfDdt͵2خT* j+L @;oCb? 0}QdA3c̀`727y WoD м"Ts{5j҃/F>0/ yg We+يGR+Wz"y=B ?x!?!=}:5[eE.{gDf@N0_{B ^K "#|lF)^s` 9&8gWW!]\( 1n[1`6A6_'Bp98? ݕpi㮤ACDaـ%xsF:#[g(Lcja.J?e1BQ!j-ڣʸo`>4䆾9s%I949D&9K4igryLuÍ|Ui[kHÒE<1 dکඕIxlx4N՚Wk%%MӚR'UM- .+7~29#HJ,hÛzp7 Rp<wǜ(&䐷|Òibem:#d&:(N@`WIq8-v.ϸʓ{ߥ{Op$ىAˆTwm!B'!ڦ\ҹoIْ51bWp K5bݽ]gdrâV}tE(sf=a7mc]6r{3w${92nՍ^n?)v{d-!m*Sݨ kMJ%]Y-YM 0MRo~v]ؖ0]޳hX# 8.p&^Z\Ga8jV:֭ꉙUpeb~Qx E=qeQd7-7atm}[(|a/ )OMj`q6?hD#(Ϫ:OvifQ{YxUdcOTU=X:/L(E"4bI_ J5Z ! kgF'M&ܕcճnׂb'*3=RflW?[igѲ2,2<5w4aܼdBBAi\>&w˴3va8HV|S^}gdÚJpѕaaҳ-Nߪ%>5neJ خMpQ7ޘH>u0WVCpp5I0#Pk_Sv-ǽ@A9 M˪O)uPϪQBJ*xJgRA9":~d%+x[uCE<3qnjzUP)򗓱~CzJh qY;pt5G`MHqhP eыRp8.k.molBҊps^9x4*g%lŽ~B5uP(A(?o$u "Qz"O*c)(atO҇{ 1]C0So?!6m }:rk2uލEdm5%I[ܰgm .;vg5\Q0 [|^kT60Z} h6&v?TkX1!R &f]- -fqo+5pE.2!q,HW!}mk= 7Q VNyC|o䨀@ WnлXG1GUIKwZy$>Q6~ XgE=ն'rBbS:RJ:nl/|'jъ#>sk>$ֽ0Qa 0+J{'@6MLBF:a\^HfN({%B"sA,ݟv?l9يņ䭤?<<CkJ >7~Ք`[ނȫ7 ^?:u4;xFǚp1 V;7G n4V.fgLۢ( 2TsEg cax\U&Dž \"x/qǢ8r7E5!v0hO3 Q&-R4xu!f* 웮п<,p6&CAK4O"hS7t MQ hZ|ac_6iZ[c_RuDPkBStvEnLk@ke =U2BE<0fo;.uw;?@fxc!xX'ИNvpv lm Z~@'D1a*nAA23xل ը5[rsRH/oaoT -m<m%\;hqA8PPU13[|ĊIGq"s" Z I,2xp6EvB է((37~ p2c `IA0.YNMDCW'з;U@lYhgaW"9 }htA)% %ƻ{NI4t ;F&91 %\#@(` ʇ!'/S ڨ.Ա+8KP:ꑹU\ڸ)E<: n`(sί6l}{3q Si=..I"r^vFx ~ĝV)H)7F:dakzi"񋦪j-  _s`x(ؓCQҿ Wŏ$RG u`%I3\²MLyOs14GYEe.M!.]՝]O3ǰ9'jr"EBluñI(JR%y9X:9@qdm\O$)n(l\|Y E{2o 3 yB/gn5nq:lYs M#{5П%.ALBLDgU Լ8b+9 bR݈-ݓ0yNGmoLЅ")F%@jKgxᴀ]V*<?mX=ȑQ@uvۇڦzhw]/SnNV>g|Qg& ':Ʌb \QݮQTxvmRK0Sպa7ۗڭ;g5G,א7ޭV$Y:%Z86]t~%1QM!Y8OK oS R)bc;@Ҙ,WMYJo3)IgI=ge3딾Pj0l +0ݔB+6„騆p+Y;݌pMԌXifMW\z6XHԒVq͛< b&XoX5Bg͂@BtzP#:uK@܍5$dzцC}?T@M\770H>]}aZpk~3siנs㠶C ߯)LO eS;TԖ3>1,g#1k,SQB/q<瀲GHńV2xו}6N_TEO~-ۯvcJzǧe;8OZ d^1{s_~*I0ˢ/zڜC=˹Q96@ w:fI'9M&^=9ahGף,aHq_m; _zq)Ҥ^eGp-E[aI'HA#dֲĢ5]&+|$w|‵I"0-oN%qW>@4JI[1h?fهXm, n9-+]Z呷8T۷,F RU#(F[)_P:zE<^￷ovsk <Gaܰوu}q&Q2 \_˨CA ] f5rVz\ǥI1wkϝZ* [%vat9 :4KR+idFi(WbƯ9PO%e\yy;r4++m3?k-0 K=嵘Odɮ`d -$TGE?ղ6c'5ӅkZ gw!Y(0߯tge] -E5 W1O| V`|2t ޾\Wj9%ʛ]Ul,r,Z(V/ ,pcZ|7 )ǥn~jfίr?# Ӊ VǓMlm;^V)ܾ_sǁc1~῿ ݿ3G8YPt5 :yXLpwhZ=KQꥮhh9 "X ސW-V_0 a_H_ro #m+:֘@F)LW2 t C@nI,JKшgn" ` XdꅒΌl4"\ucTEezmૡ=̈́؂Iܶ>dC\g7 >DUǏ?qBFz fgcBEs~kʸg<5[2;z 3nWdҝޅ >y̓^+Cd!+8q7Nk܌&#dy_@Knќ'2 ,!\&/!-5?] i!u~ =`/.~_;5%V; U:h |<zyݎ@ cVtM%6F 7R ~ WY}đIqv| zJVaqj<5ЭQma#Jކ{2H.]*iׂwx=]Fl%*tHdwD=Ub˒SPΪucϖ_TEQ`<{nX"lֆZLc>Mdp0[50-@ҢA!=|1]Dn罬y촓WkKQElL~RWI34+*?}= s;]f j70Z6"f[ս& w0pFtQm1I\񗞭"D>AHX>H"R4Aw?kƨJ!b+@Gb:4n|xSO)KFwU;jȡ+D\k% fenUInk}EHo1,%`?T=h@}d?b5Vh (|(i,#X0|A2WYôbݵ [Bn)Fxʕլ/nk#a$:! ef&"j8= 0 m^sus 5~mUzع΍j +;W^nv?@Aݓ ^ruk8;bHң ?+lO / J"4n T^b4'*-姱;+}tǂL/V)z:l[6X$ϟMf/C~%0e>эpl&*ogݒZ0N&s8+tl%9IbPt? Mx9D[D<vh㜡][/%O( 9 < {[xGaP1BxmYOALp!yRJ-øX&Sp$xPJF &&1F@Ò\gYPD"G2KXX>y+G!jY2'8]_IY3fZ@w K'Ϛmv{I@ DCvOUwpݝ ,W(RGPg닙ttC n&FF#[ aBd\﷑wf͍~{oBڷ|C7iPX, ~RM'^-[d֧fl/GJLE%cIQZ-_423K*iLp~oݟu Twf !$n('ӿ984#ߺie9{曫U%C&:-mm'0N>rzׇ'c4 }*I#H!v >r&%gvE@D2Ic)ZK,e"cШfw]ڠjl[tTm*-#Q3TbT^ձMdnOAn,/GEa~ayZT$ 6mxjQ9iIsި^1R$ yŚuʿ_q&WhVG̅FW>!Fx_; hNquكԫODk lt#K ̍3Q„|pZxI;˧Va.3j8PQOzkQ4H )^,MMPy>Ni`ofΛmd 82Z[&|sG#='AA0X>Q4&8#ߤA4O.UV^G68тdM>e܆O~Ju:qȖO߫HYNZc rp_X\2VGbmƋ/=K>6+\0x^4>ϧABC1)S)^!A آі,PYSx4N >CB!3yr&D!ui~dBBw+\M3M=D-sZZQM?`kiXyQ;+ GB:/8fb!,R(/BkߣCO%\oJ0V˗Gjȃ ;{GM QVZ`:m]imG(^>EDџcr$_b짥,^`C*yˊ2>ԙbfQ;ḺCFvd7Vb%ڞn @;UmK7(W9LAʉR"^b!+^ǃ*-u`$d[=(@r{^%_vh 1Gb^?*SZȟ؃xޙ90G&BGxwQ!!5Eحxrc6jQX@89a*_+-u+uT`.4n@j/la_7H!8 ς=&!(K WYjcp/7W&#P#6 C_Ҷ9Ŕ|ێ-|8l5 rr{B.4 m/ŵo8STpՐJV3|*$Ϊo7>!v/0A.Ⱦdg.ȦO)SF"xقE[\ [$䳻-J˲2|\ǢC` AuZ`#!+32&ImI؁<Bltg9d, kfG'nF=M+pe$ u^ ۻ䣦 \ )A 4)zS1#?N_?'qpO O΃Kg+ F0c^(77 QviDOD257n'Rs, X[4Jv_,VRA^TNRNN;l%^~BE#9m 2\e,º;}2phA0HKqa)O@`?<|r2ڜu[]l`n:gPԍh =]Gpj,ܽE!oHD;Qߋ5)3)>sG6B X*tY=и"0WcPk,94N-UvқH<Ku=!}#rlkQA`"":ZsĪlQ/t0wAZy}eP$_#M+Yv $mqb^҈@|&;|Ln|@s%לUKG?$*\b)uuA@y@|ny=/ƴJӾ2 LUQb;εOOvq"OX~+!3VoA}WV`qOq'kosT7_<CCقx='抭0!hʉ9@d8׌xjax4btϩup +4Ŕ\/eP$ºaPb&6vW<5K捰NbMK-8~}G9p(kp,K҄ʓ| )75R;L}ݹ )n!zɫx6n6g *dr ;_۰9FG,2(;k{ҌX^ !KaNr[srȬ"=t@DK^6SYa' k(} r#F{!k6 RKaXbv16lWrprpܤo`pVV%0?FS%hr]s5eǓ`GZfP [`%S| YCBCnX]dq{5~#2OU@SSze~ lD)U԰z7wQb(ُ+^[,k#8uK[14h&Y*5Ϳydf_q c bW kR5ܛv8Hbf=4_:2O ״u晾 AπK)awPԷ,:$UBN { 'ˉ;y<ЕY۰؇|)̘ݳя:RX UmnSCy A+T$c=g]eU~9m"" ؚ̜qQϙQSe0;Hs.^PW mZ^}j#nD6$x洖5(PZU3Kz03WV/ 1A"k TQP{R[BriBĹa؇7<Է XqcABc9BH\dB F o.K`E%:=NdMeQV*$~4 : 4 SwOk'Qdd`G<،43Is21-#T/J;Ciߩa]nZB Ht\<\IE@ZA\j(جa^u$^nO+<[h"T}r"Z5Ȍw΄pIF.] ,POuF8׏ 2,T'LT] * cv3+tϻދdAܮ\ǴgqF &*Q0hy2zz9b7ɡzKՒP Yn8{KD͡agG>?!=q~I5DU ~.œY7j2L(nTzfLfC!,⪖д#. K ?Qp5rِÖ`i-O‚CDd'z?xi@)RM9@I-j~hQn8Yb}/B!~MP%6QOfh~~ayUTqR4rP jk Wz3NE6}.5޲i$b~eg9UV<S]o|I! L)Tl5xSP jXzU̽ BͼA /9r0hU.x|+dB~baA=g7`e"\ݮ30ZK_,TS}iM|{:Ǥ(a$q"yv)&:GBTHk LM&?ēSi%іI>/Vٕ+Ejiu$vhπ$y+>,8nb)ULZ+)EVv,b̭vHڌL/$2c|@ !VH'5AP2ݢ,tfgS -q+-` a:[??7"Ià e*ԪIal#>&âsnq"2)nWismZ3~A>¤9]+^hZGٕye곪||H17jEzzP?bق3dz>_(uԎ?)@̮'&Lg%;$:Vּٛ7MOn9?@ [5e^ub1M(c]{+tx)^-I/!xj-j {ն@H#J-D\+.kDuAɥ\E]B܌Xy\5>YP"8Z9@)} GgErˉE˜u'GF3y'xx&*$9vnXhlz'3S~צ:oH6t[j4(uJA9|XZ6_´W 鷯J1uE|EĦteIQ(VUM})6)e"Z5nDUB76+))dZG E]\5s`> Yٲ Bͧ(5q;u9T_aؿYtg0 T)o_.opOJog.WZ3!eD~P)'_ L߷́ 'rY]n 0 k^M| Nfg8{6IgR&EYQ^"Sg}Qi7w%Fj%Kq~5[FQ&3=PGPcTAqN)69&L-|鎖h]^BéE> tJ/\fMctaE/b&^BI5SU9X.K}e*JpATaٓ\}bбX@/=yv\g3[Wl6 $VU=U>\+ 1LҘYCGΦ2R8_ܛH%/,Ggh}?wg2hgCŠq!~zݕnZg1#7C'mRb2ͫ886|B~! P}TwٙYXg{ag`.&'@OH#w^t\MyEgnl@w8.ka~>f\xM=YyO `+*FNq{w!l, T>SB&Nhw& h I"6u*iE}o;8𲔵*j&^C'r})X|@ nRoFW1 o+ah*FŢu9؄H/K\5ZuA{Lƫ6sMʕsPoaȶX>אMC]EӰ[|8a$" ˚#@vfO-cK ..8zVe)4YcyO 7qfM|XI%>ĤԲ y^@Po uh¹Ɣ\欽4>'5_Dҕ(l^g٘b|z([izqxM}:pg*fz DbsnS up@{+6"p r7j\4aPA Lz"EfPR&\ |M#r1g(<9+|`nR7"v tɄ>F Z6ifm_v(sMHmH! |LѲڜ7'x5oa׶tγA֑,T̼~T\q `)x4gҽAC{i-c_tqoiRan{ jωN3_N},F>a|K̉\BPC('_pj̟Z8$kxI3T-G@=M.v#r}m??3f_T WQյ2% foڽ+CQ$a6Co-cz]eڤjCHcAuOp_u}^Yȓӻ`ܰ z? ^t`Sd`<٥fEq\Ƙ*wGv}.k֓cnj(+H70\[`v=Lk}9pDJWߺܜ[8Jt)pr] s$,TL[rSx&+wzZv%7rM C8W3L&?cuU4Y{%G[4t\Sն;_J LUw_܇ bv%}d4mvUpQ>Twټ]P+$Y~!l{uH CVMCC&7DA*s .};xߓ?D/c_[i 7@SDQm-qBZiN/0F "hPD%։*4{7 Zf>)٨hN_ϙoDB:8fӘ qśP(Lοv6h޾ͅ%A}L#E*S]&W5-acOk,af<FZj;yE@ Bę=O5J($ ÍH|D:BҴ8jjh+E,|Sؕ^[A4|םv->l`ZTؾ p\ V) "BcuqDX:"km^]3J6T@ }Fyn;M.6\>*S^k9u,<63 ߒNlK%%y=I*w\G삒8ؼ ս߁3˙ ZïzC#k֬Rs07Sk?,z|dKT)%͜\NQ"KOT/K[UH܆4ױ+틻l+ lr^{hB დX1<5w B apmî=L&oV~ky,`Bxʹ^!KԕZf ʯI.}蹌|o,^5*@O/[Ra|*Ȕ==P(>3P]-أ;#PiDmcĐ{.h/ņ>X+/Jݙ% H-HA6"G`ƥU9,m#fcRe)a/?=6o< 4K?^?XЅ'D8KXW/%)2^~v-T#|#oXq~tK+W$,L),}UAȅNTd~;SYb } 659FUx`<vPhD*8X jdAlU34Ӭu$SrQg@ 4Yb0(U1aI"H*;|g[n\gDk. ?DfoӘ{6Qغ:>?-0FrG-=:.Z{CJv%Z0P9ʆZ&L5`Fri=Baj15kdQ9|Xy2L:liRs8딻vw(ֿHFC&mAn[B^G~ZEB_T߼PēNՒR,rq}6cqU/2){,0[s* wkR ?΄ADGi,<, *O'aѾGj:d ۗK͹b'dFxߘ,bm˴4$roC%C?6Gu`iSi_ f}sl%%/ @7C3}z{bq~D|_N֡!&NoCp86o*@`:]Y-J2-B\UQ{!pyZ(h0})!4=`kGK+ sj,JSbpG\t-4REaCU/ݬ*{oErgHjDPM _v \f%eU:5S9?soiD[RSӔS!.L߱5d37cc6V3Dӌl1;mhL;D8_yGvSQ/V+"q8$DR 96{)`店?-m G/- 5`7"Mh-<%&E =q\bGEX.\+FcG, -Oq|UD9|UJ#Qx&.[yD^=m.l",`X-3We4.x?~:ֽel1͐yC&q—ŻҐ %LY*49 ^t=\^=qm{M/x]?շIީx;IQ/v$rԌaUnɧ2>(1ڴCYļ+>OPܽ Hr0Q\a+*Y7K.6fadT80 ǚvv8hQ~٢9`>g ԓWzonc gu$pCtp⑘ O> t#,MFg'kŪ0B-2[H*`V8%4Y]#;+ro?9r~G0nc%eYvݸlzKwFЩ<㠽(٘:"Scz%*`!D QKCmB S E̒R73xM -BzO̡ՠ.AWuD I.#\FA.b^/<2 !d9ȅQċlmyg)!Pt c"CwQP `k6jv\J&Ar>tm܊kcRJj~IcCN,J_ЭDcg@jL?Yr,LZ52ƌ9:PnQT1J0rnyVT<9RT;6WqMx"@;}ϊ O+dk?ms2(0fKej9ޟ˩ .Ug@k6!lDN0z{hH4ו+tdoN1k]6iN*ZI_pzSD V(5Pb>H[vx%WR nN ZЧ_py%a&/$egi̤羟5B\E/|-I0d}=`K|9+̸e<,a x愚T̮ˆ>. {NOf8할-.ʛ>#glPkaIzSDtcwqiKr\#Fl\\>dz( qE@A+A``$ GwM?ibӫs.Oy;O(h;:o aX 8BlH $НfefbuA1K\>RϑPMO] Jj"~jMWU,LpQl._Oet9*H29!KJv*ԼWT嵓jz7Z `nq6}[^ԲTWo.9PLjx½|+e!7Sg<>F @nR2L֐CNҪ<.(-g߂Xqn0 ])Q݌8EnX3G0S8JZHZ0.+>'rC.CQ~o-T"~uPhcc$a/JYvTbƧG*DYsWVau|1&@zt7m[k7Q8FRTY~Y?<47]cHh=+ђa*њ)5 > @q4)NUi}S>>mi@?I2n_@m?E$<` wH`bQʳĻУd ފS‰>}Zy8z<9-CMisB-Q׭ [ l/p߹P3sCH IxMoϢ[#B$oԱ.'erߔQI&Ô^l$ԅyXzYgk01=DJ-AcW37+ {ێ'CzJpy-1roAξEzgESg즱-~ b{ d-;٨[&GtA>D0ѾM5_!Xƕ 46j(b9w SaAQ,D;9d}fJ8i^z|B ^XxV39@-ؘVP+^bZoLO'y6\*^3зb6tOQ~:2SEGW_̀mgMjg7"(ͳ4mF WH'Zw$|ICnRy^^~rȝ=,9Ai]sFiQwlkDvN $)U~wk&Dv%GHR%QBѵ,$]l&W2n; PYuדoY+Ti#zݚ=d<̆!1VIlmϬ*ELf >-AT1uf4[6[ohIqc*utUq 8-#T݋3bF>[I=O8b jSt0hdFi R Wr@!%T>&w;6m|+qb{I[4ϫlՀ<@GaZKT7E:@\5td2gl=Q7ݿ6H.D6Fmq6L(L㲕$zMd1T /gS%AgD͛\LmlQ'Ը&S *?X]m5IyeQs`:VavI@#6p2],}/ giR휌=2d2 ,Sa!Š?yxO#mYi8KvCw]{`>~e%!,~R#zkkxv;6K 觓bf* AhF2k1X?*AdHN4%Te˜.IvH H6Vw+NQ3R^TLv T9Y:qo?!,zǴKG*9]+>wgA^7fW7Ns x[˚PyħԶ#҈, yprlY YƋsan7V92N%Q@2\8n`@|a]Żپkwg)I;CYk^/'>^VdT\-4:a7x\ j? !ƋUgjJ;l6vkU wgn`vDo{IhYIFK.oĐͱ"^93{J;Ae-}ƞ8%%=dJ8lEQh0/,Qf/z|2^<ƾIUGǵh}v7%NῈf 4?sF`N!FT-Vgd1_b(u`&`DۡΠ}bCΘ!b!.E.Jizf˭cUovqh_kˈB.>O뜦2b6pI7}݉?ޠm75'G}c(\#̩57KQRC8莕`vjܤԒ7hUVn|0Ar.š6.2bc8ot %S9,MZ&ϋ}D<,C=wH﹦V'%P]&@Qޟa= lI<&I>ڔQ W5yndk!Ÿ*:Mcҵ9QUp ItXQ@+8aNK8;?_VTmRǜ&"qpÝ#Y4r`q;UfJKyмk;ơϙ?l;ZVWV;O>Uad#xr x`} [{W~yv7>)2{7C0pmtL@bQT<"wpv4TU/:;<\t'j$AeXXrC+{M*~R$SWdFFճt('~!ɴj_YG[&-pA2xK ']4ԈJJmE7^5Q 5{)=xqZ/X\CʢdV oNс0Y ?5P0EzN}(\u2Er*+(`N~ zt\\ K6 tL==%:lҸ^EGB>6LVǜNwt{aoYAڪ515<,V_}l$eF`0_RQ%ef::\+υYah7؋!fx틻ڞ$n?]үbh_'BNnTYiq6Xvk0ng(HAv;AVvwEkXo 6$=%L Vj-TirV)8V44A_u w[!COڀaG@j'[viR=v[|I>yQp( Hq >۰e ?F˺D6/.K,.$-K]|{.?ԏ^ tC|jx<'4D:>7)x+$D/' { C]񥅫O@{m'pA='o٫ۊW?GLO_p)]]EGЗN{Q&|3םRPs2s]|.!S(xrjQZs<̓yrD)^o; cF薆xwQ%{MXZkH3Ae9ѓّ V~d3X;/أ)2՟f"H]>ȅ+T1m ;[*P"Ug,6Ϧ.sC@~/&Ton pzD-N!Y%WHJjodA q 0gID\9nҏ$ ˤp Ֆv W$K!IZڒ*_> s HUk6jguo&cX"V+c&envX BdӶTRV [}l_2W/f@~ES$'+:$J(& Cǚ}YsGhzl !ދv3+Z}L9+$SAvGNՄf٩\Zc฼8^8CKfZ+ˁWlV@7wr/f <ނMk(_4-+SOc+61F8p/ F@a~jLt a,3T)3[#D14 jF3XTrzb#]i}z`&yo lvs7 aޞ,C_ %}'aB&_eNHݻ(4=^fY~W(qw`(CߟT o'mB)TqbPM? {nɒǭ V:JSMGdma9uoY݆ nb-BV52C0QﶿOeˏA6%?̃c)ng~[ޔV ]uCkB<u~2O@H^w!kDQXe!Lm?&[t#;:Xֆler ,ć^bb6Քv'7Z tp>vxNlwV*ͨ=.& s1Y9e*$:yD:n4j29Иz6S?/0ߞt"?ua_xdCU3C=i/{6Mgbjڑ10:jI~%P?M p١5y{A>9<8́/X*Ϲ0LIobՎch"Kw NM{ie//5+:ߗᯡ0TX rIdBRfH(YfzaC/6- d:[leΤeY._*q(xn(X-dL}Ֆߗ%`̰E'E}ƧOO H7ڒR9=iT.tyCK .8:EOT\|-Əь5q՜x],ќH5|>DuDI8 Q)H4%@;D c2KJian !12`bԱaNHkhs{g,xDZ_7)L!h7-/ni :ǎ$jK8_ބq]/MDP-ZaZF;JzE5?O%T3n"5g>+)U5{ӗCT=~&BI*aD4x0(6o~ekA`ۣ#YEq1IFh*F$^Gl'VT7 V[ݢ:2v~P'ᨋe|IO\Kd}*EsOm LC_^gx0[ɕ%aʥfxݾ9R?+!F95&|dc$CAM2V K\GV˼V2V f {{ې7/4Hg7pBQ@pDP㊶p%7. $%|E.-#H+S fV̦cQ>ܷ-LyLtWz CF[\n ʥwf(|g:߹hFB46O-%9gB;.P mks5Tp~VHcDl념']Թ@ݐ%IG)P#\LAKI,39|MR3+e]%YH#o)=`nC`TgA>)\yDC|m+ݎ|jkV-)iqƵ#h:t Y (w 3-jn6wQNVW I=`AzxOK 9$'R$р E-ݫ\M8m><7g:>cgWdtGôM(9W{<PsxOSx]df#za5;z,K1FfVdJk"Fb = a%0;lt]f.9B'\̿5lCG6G>7/3īxo)pz9:e)Aī`Iٴ ԧDvV{H-U׏_S\ڴZGR1x_Qa3t'  aPQJ_g ^<_/Ow K]1v03 >AZ.Fom\͉.?C \|8<0m%RV@]:.'?:[TBq#fϋӆA[NA i`}l%*Y4嵝Cbq' @X2!D_vVe–mVɫ{͔4y?P<=s{i*4^QkPoO6 .A댪L8`;b3'dbH &Zbf\L{[Nbf壼ށb % Mʏ0Fu!vYVmE~3[Q݋ M">)DJ r 3x#.)vj(󖟎m\֑7 " Kg2~T; 9NV$Z;PlKqaߣϣE X}HoCL`;Thhf=h_*qyg(1G'dtm'RkƂT #߶{e瑱*j$=ymK'ܭ?qEiJ;yR'Z8f"(O28̢efoKIM9涂ؼ34kĀ 쿝ttg_䘗1+c~&8/,?*:S,l ts(bAjlɢE4>wꪣI̭\I S2?ODᅃb$T4oz;T &;v7]~2if\|7tl# ˞}ؔ $P.|9N}?VUu$]r4'Qo5̖q|ulR0h k[xœ( F]!fw~N'p]!K?lj1\JdNt 9qQl+:tLW-a {e-G巩K LuY~)$@KMNYNIL:s6p2S$j$J ANW+rޓ{P>V8 VQSt(yvNw.'4ߵD+!?8w5W }F&4 5Df IEi`9FYKՀGxB+n;f,T^* 4/гrVBK;m`*?Rl"F8rHrsz4!٬X @!5U[=[P ,I IVJIy2-,V/ !anÍo盷n3b. kcGykeGw?i(J hPً-`Fa] qB~w.嬖ߎdɰ#i4),8 RCTfR%kݦ='{gb^~y~ !Ȩ6X6 ΎYq*KMԸ_+@k쌪Z V -}>d@p8\YX/&B)Mи y6"oL"& 't M&^Ka.# Hr SCf_ը:M4ʰ8vv_KX s"AˮD\L=.̓SfTX|3D^țYSk&/X{q=k]"6eTLWf ұF-B32;#pf !w{{+VdVpP^ Arm;ao~¤fRHoGV\Y5~!,F|^~g$틨mB^i\2xB~FѹlE(ª7V)dzNa^l@6d-jAA+ ˆJ7Ϊ ;~6Z*bRՃ,mexȑiHVM@4@iC~gQ TjNRcPJ/NbFoGVZ Ez 9 [Ðpw0vGؼwYV<;$FpNHG1Ч6Nϲt<[I390ވx?{%Co;kQL7_Dg,f"9դbfZG ]ts;*L=QZ=2{"w*Ɨm~J*qH~$sC@N9J+.RSҼ]ʙ{nE/O\~]S$OzjMix eVH?~LYΒ4:܄e4Royӛm(&hb /)lyM#.jCDz*yxtX#[CցI7[W1AqKMZ5`bI7R^SSɞ4yr&4>x(n-~Υ7jȋ9sA0 R0 }A @.d`X˧ʈj@[T(׻\m,5˫h Zrsj?;kA:kzDp$vSvYk&IY ?U'e;7 a#JU]`O}vԈEu)‹`(;U)e=Hmn=5߮ӭc?v:>`nc^=Oa/Hs/COQEnhC w܆4;#Q;եxn (: ALۦd>EE8W?40gЇ9t}(#Е&e;=ܥ=D<_*fI FXzhZc,Zbg;!4;?A҃tLACQS1mmvշYSD?jO2 X] 2oHaE$( V{g1^Pغ4棡`|I=V?UM;٨ U'Kv΢Xzޗ #t>jzZ+ON0gpE  s ;¢ .c[CAѱb0-/' i7VU.땱ǂvpo&?HIɢ$XGyVubb>zV8}%\G H{Crߏh#ǁnn<u `uf2(c1^ %WFqAwNQvZMA#9$H;MG(㘥 ۡXI7j2ق&Q8NSQE ֪LewN$!y"w,%vډ+))8_oVb噠˃xDBHYǗ,&ύU-_Ex]j@%}0ζ͟p<6sQbo{NVEO@{-ZR,e%7@ݶڢpI[7ե%=m*ܑ!C5w[L6exYB3xw觷3 (K ȋ6M3@_PMsU|:=JYpw*޳]_ͪRh{J`%"ɒ t;ar7YOlk`g^qwtN > mI#_VQRFtV/ t$Y~քDbИt%<;MxS+t a/dDzh)W-xj=l׎a 㐼C &yWx0&V/kPYx s8^ ; ,Joi>8>sAgS8r^%PtaqtܕSgak @+0p.q.TdOaqޑm5'WϜ2Y>t3sCp~7ݚʱ*_xZ,a9»sj6g; "䲒U{ʕ ݲt)shR\hT&f >5liIuѻ]7a :ITsx~D7 1[g0h4-0R!@, aV;Ѐc^Ah*:7@K꯾ht"$ᴡH sqwL ߦbkPD@I^D/' ǔ ,p[!rX0ߚăt' 0lp5!OנjeMq[!m`դ'bS?%Z-. u:h)Wy7Q/}֜/k ':H9vPV!556T' --g% @)`y8O4thirZug!)Jhxl4mSyMqG/H߉p `bRYWPܺ-'_k{@aId%ŧfi.m!7- .%4Xsc[@ ^&V *VfZ zmp54|OGSN %%Fć>yms5(mWaYՙ L}'b6PFpt0ٞ:gds6y5Y **gZVM[(47BQ9KRF6*qb-Bo}J3Wr=:W#,:?v[{k_[2?Ë"^ 5 S!3`z !4ֻ2`y1oO`s,r %Eg]$uFlCOم]_Yc'Jtk'5Cbs&+ϱp<(ӓ0v&'$s%6-d7J0QIGj@z^\4nbJC-]L{P7v|lR 5hm:ɱ3H~υO{ML||A_-/M֧N;q>[_ ԒX]U R>fZ;*ѭ-żvCzQJdɜ;17i>V(i?Fi1f&)n:?'kϬalazl%W"@oM-(cNA68VNu N4rN7{]<[53ĿD$뽮 SXFS/0`u i$ !sRq%ΛqS*İChJVN-=L˸fIm3G=Gσ]oiI3'suAy0l vD ?*\iŎz"#ze|sJ NƾUET½A azlA3);\\o} r惽A"yè#_j)gVWɛ9,E6 \>66rD;5}?NSgL9Gڔ^UcDd,юmձyG]Cjyf._^=ՃhRAf-3p sn߄"Aΐ>F<j ı!B#e#RnhTfT %!a\=C>*!еfo&Nkvq|bF$ Mgr:zP"0w/oA0R_'B2c: 88Gw~g~ah 0 dT(US_ʳg)TpJ4@b,;R8feetdQ=̒1&\{$?ZCi7QaܰVPTHcFh]lo婭sۏjҖA۴.^t0P< QaDqt mTFz (WD C ѵr6#YbMpw+t\6#oV1d a]+o[CB8-I^J0C4eYt('>A ۬G%&tX-^(ߋ/"bFq"< t: MZQlVBZOZ"8tϏdj~~>~ҡKAO+bn"Fu:|;Uu7w1Z,\ub *CQ`{ȀU}`r"cLv N;@p ҼL*sb8^7nEpY䯨& (nXmu|%HG Jݺ}a@fHch+qסt_xnq#}9ߝ2dkIMj"V&PTcѭ%B]8tol_T Ϲqhj_[صm4\~E< 29",3kTGljk}#pz,; |D-0ڳ2$ΐ,-ܐ%FC˸?3;RxҶ.NFzܻOy*bCݠv^Fl|6A.㩋;7ԾO% %3c|٧vRNpQ(QϿ(E($1Gkm9Nyv]X˭ } rЭ^Uqf$- |ڦhj~tB/_t  9FN*tϠv4|Gї[N{-$ g`䬟_/ĩ{=$Pd9W̳{~4Xl"NW-8{8l>bs)!pnB<& `\Y@EQO֤>DK56Ai1@DѧE= 9n t6ӹ)ὐD]EA:RVHSOמ]+e=^mD h(.%؈ϩkdaŧK _ϭ{?͵_:/~e.,vc-$}mh B,^:|<܇r ȗ66!ikk9Rmи/_Hgmg 2 V_6>Y%{bP7˜;#˹t t\!5paQgbM[ RlH|+{d~p_a<;V頍{8)E/K줈@`cP ,76]."Sl7M[9mK@ɒb{HZ%c;(ui E߂랶YVK%5³{9k!f(/b Oޅ"4Kshn/̥t Kpn}5չQAJ_qcQ;|:H=^5 "\Ѯ-ꓜ@^ySU8tOiq+ gB4wY_pϮ co&w~:%fH  @c¥m< [I&=*k{+ګT}E+b yqä]0 aYĪAwW578ѪwmH5e 2U`THFg-E Z'$ :GKUG"Lq'.nn%~7w > 6q8S,NUz;bGYFL!HվS8a} ;~qA;x 8iA5$‰qO'Q^NyP9{ u`ML89W؀]*U{Uĵ@ʌNIg?|lq1*0`7~LLJ-`\LG#*klBxLHwc%G7E\7VW/J 1Al!`͘$/SY?xQ`rDLn/ojj@rkPٻ.w1bb+k>2@$FxuS5fEt^T|'EAO'x&R4ƶ؎]qqjwلxs~7oo>\j5dE:'܅g޼f/e{us%`JnzTe7X2>3k1!ԥb+g2f9[;Fo$ìm@oc- ?_bݮI |TW?z㺹>J ]IM)ʢZuЯ#UM;Ckk#8o} EUwϭW˼k:I?,K{rMpwϿǹ\q?D~J Lj:kO.c Vhk!͸ss ;%[}nծG; SdGn&6ZD0!$+I n.b8OJQ ak4G'8=v=V{u. Z9kB&:'VhRDcpqW`b#X3Mjh+_]S rp{JЬXT3G^CtG׶ጠնX7+ɰ ,a%ZR7jkJ:cף0p7>SH;rgm׋}m~@_ƑUTq5.7z­kǫ Ob!ݞ{F=S*6^v UpIӑ~oXfH;lgw4zޜ8]ZKsS:cmPchw` raQi/QA6h&F԰3m/4''/ H- 2'EE5;1l7\ߒ>F Z>ː_Fg}=R"9qwV~%^TR #[D클YAGj?46s ;J+"IM,U0mv%-o`kS'Wj2c w(G 5(v}TJW]Jt3myH! ʬ lzJ̳Ng*X'9p.ruZ`+Ϝk~$ڼd.d`R:9jDBiK\m3,Y6r,c>uM JC @oE3/]OaF"Y5 e;쩎:FIxG|@= l5& Sݝoγ8\$ۨ"?-(/?h"$KR'忱yĘ!2Y(<9] !xq yDɐ[;Bx|խMx :|8oBff;B/sEs{dHd +Zz{TH꨺ {{LhTlgof}|6FMZ7"y#£7 zwR_8X)s }p<:YzG":GLWA_VڅV"^܉ 9(<BW>vo34ǃPG3Ҫn:QyBa2 2MaQa_vnAg`8[!*R^1UFي_6ryGdm# 2&MBrb/< 'xٜQ+@>cz|y2UJ g/*ȭJOF(R&|$\?oj#1|n| bC[l22G,%8nHތPyCecE CzHBl- om)ܘ >lNu$Nb%lq*_}t%\1j:O> ;AW* R6w Yh 4P\8 yi e<s4%Un,|zͫ4qS ZP*|>ykd~1q'u&An4rv ',u[M;AK%|Dy^)&UM<;/NG$5\׉ALt}_'/vOf) \I?0Âtl)&H+2ҍ 81O!Fx]6 KwgBA72n`Ȇ|P^'.SLEH}t0ʉ8e{[z1Q r'[02, #/Fs651WS:K oTmNdև5k^~~u赳7P_Έce07n\YoAP?,ˆrwYCFDmX_I_c˔r `,M[p;PeaIL8:\8pk;K 8)<߂`!,89GQe;9B7Gi=Рq%FP/b.E.V{^ 5| .Vs(>^eWybҰZ[} .|h)4rGs9d3U!;.ɊUD< M! Q- šYeS8Y,M;UMp8z|*ێ"ogTč1oӁ}!eyADRoP8;&>QEJcq=;gԍ mrAb];xyJWDIΚm6bA|.5 0ɤW{B 8p.ItNM]w;Nu7thǗ#-\ '~+c쇎X9jƂև\;o Sa'9ED{'ۊ(16Cxrf\=W}~|/wi,1 h%;zDۙfm1+6]T[.I͛q* XO "Bu7xP̙@-i16~ :3F3_Nk4w(mr&q?Q+^ڷujCcC+UU& 0Ya-Ca% O =[F7S$T"ҦYAktxԇDù0rr5t *X ?$kH@x.y[}ϖ)7IxYr7;C_Fl=6)f=f5hs=iO8cK͎,zEaEe`T< ʖ,&^1:vKCRzo܍2v(W$zҴY^m$ӯ hʁV] wVXTH4ux ڞ7p_L! ˭5Hqup*Tٶ2H ԟytHEh\gE lw _].?Eg4W44R Xɥ D5Ňv7Rƒ^-gqWQ& .W~.Gm@A[l{!`g]MP9;Bݷ^n!U@2+n{E㙉%׊r;{T[t]=>9фbd'[lOڲ$E[luzKnhK^YpAJL'1r³# ǂàGT9$',8wnCP`Ǧ)qxK!; CԠ"|j ׋RWr?uʆEbXgD0?T5C7QSe oyAM%w'>RzLw hFш'QnOqX+d@}+uʾ"a8g^`SSn}p.Xܬd"չSn;d`>EwǛb DUD ː+r86>TMt-ԿI.B {8ě}Wˏ .WU$g]h^H5꣣a'.ul2 {}񊌮2^foY44;:8nGYY$!tʃCwIE]3,1rZ>RkMՌO1gފpSȉ%ڲ9]h3kwuz~N9ㅬ嗄8V༪(i $p 9vP嶂]yA g$B/98}x]qYcUo[.զjΰ䅱e nB':ا>܅b*39nrQLzRML/j;>O Hc{,<vyTlԩBצ^Ai-= {^3i**pQO#] ;t|>Q8@"Crz#pRT"=#BjR5%ix= pɽ- .1'7^'/R.Ћ0-uQ&*T$f=n*Tz[=W3>ӗzW9VF#4CWjp>n_R%Hy:9NTa"n'^s'4SY"5POl[vFUD팪Gc-cƞ4'`N>wFLom-AbaBuV[lMNqA{P"'+V; !`;_Jɳ,-b.Jn˹t6.W~l\A_["j4 ~;6&oAe^#OR*N*l#Xۀη \#ˏM:0sJˎ*dbW_˟@yF{UK2!d\5EEWldDOSGj ;Ys@i>{9LMˍe'ڲo&f,=tؙqgs.$y 2y#BH?P`\V M4/$9mhn2̬WLjcN8b.+jq t?_#hhh=j(v a:_CL҄/08;a70_~ZϚ;^瀚-rmm/emD`}ojzZJa{iOoӌl!$⾽Q"L51P 4VWby` =t;B%%׉6|wBq-ydKwj{)hRe=V4}*tBs˲^DWDol?1wmh5I~g7RdVFf4֨]z7NIAAAP9:F _/VtG2]"ki;>e(߅sBYNx,!>AhCJkbBh ,D vzST RϱrPwuI=L=*r_ =x.j]~w.S bLKZL>g*Pۻ@z0)!mTfZ'ĸ AdQ^b&2cFB}g a@O7 ؼi[{jZ$'.Pywr n[cAn?̬& v_C*Zo4k?Ȅ1/1mLzX(voy5Ly]HB{uJl8,XD ӹ^ȔKɐ# JEح%4'} cܛ"q$k*pAPܣ0;3n2K4:MNơōOSjbx悪y`IJpEV62(oE4f|XKev}A: "l:O!/z?z:K3[[Is6PAa4=\w]3r9( .o zi([C?I ʸʎVe㥭`C@hV[sMOW]_trɳ$U0!|at`jUJ7'Tb~-$5x\ 49zݖbx\~0OfBP 1H3 ,񴓫Ygq   GXH5'2zA+35s$M W2?Gh0ʝC T&4z%SpԦ HUPO\y 6C5D, ee*) w/M8ͳ7dB`Ȧ"xx+~b׸163ᅍg'IQUm\wǞt̐|orQ.7wG#"wtR?>]OڀhEܝ܄/Mvu&Aʱ^ߧQadG MPX7Kܱh`\hh9mFB̄ sp\$RSYn$؅X2:6ɡ rw f  atX2T$չ @^$XM( A  lf83(XGl[-B v!D۴`doYQv=&YL蕻:43FjcXE=ܗslw/|݅,V0^#7>$dH&[Y5`ӤUjJ#il&2 ! oê6kyS(. *=*]\S+_ƒ%(6'_@4|BXx-bcCyκڹEI%#-I+`&5FE_@ DP"<rk:#|9ECnƜcx<ʹ"Fu6ˡ i&0iƏ10d}Uּn8hOl톞L[/#RGn fE cɫC,b|5}]~(~6D[OM{j Ɉh\U_31X8ϝ`Srb|.ދJ]׼4mjQ4ڤ&R:e\B iF7ϤiH2M3/ KuMasrWkig?W'gEH9l5Whтa[}I6%҅R/(A!DE"F\ Yb 1۳DI锸 2O \Qq+Z^-jQwFٔ2ڦwۂ"F,_{#;+vϢ'Jod1gH([7$_s@VSDG۽kx`1(LMB=<"@%kBXqA/mdz m=*T2НugeGn./:CR heru[}i*_ҏ+7Gw/=!K..+f%`lz:TO_%\'_M]\U%R 7If5X^m7;<~J>[!JB8w Zqb,ݵ; o?EoU-0_4/;9Eڙr5`]O–(H>gGυZ ԟ>8Adȟc}X0Rvށˀ̆lo{zWA&mxr]KX'J:^6}?_xo1b{XjbnunqH]}aGe CAPD ~_ i5şnލKT5*Z@ߡp^ aXS2m31fz\qGnA$q- H*z /n4[4"v!t"Yr~N '2񍬅{ tBnGpغטl ċSṞ@Mt_6oNh{X U'"x<p5n mS*#IuI<͟xjPMJb\p /q7(C  tT~'͑nU瑝#Ů?'G~"6#゚ӐUWdVTϿ#>~Ň DI>c9jK7Q*]{p#]I ENZt)\'hx_8a%T!|4O0'h P&04T`֒ F>t]K{L] ָbQK8)X%Wア Lc谘# d|$EV?a1 E[;-D$:y68?)]AKK3ެSFppk׺PTv~ȑcG^>HE춀dmWǨ79+N6ˆWVe~[@cք=!ټJ^[5Gnҵ`e!3QDtSNMfT%"kmVʽWa$ACYtb5orpԷAHe(l L&ܺe:B& . DGMn/JCTIW2THM'>'visirȕdV߄-òۖ-O@q S;0CkZ_pk{v˲#c֌ag6#ow6bi GpdŢ ,i/Ρ%LΫ7TIaY{>Lϊ=A9RQ'Gϒo寞goI* n.2)jC2ۮ*ǤkF3x$ivvȨصyCž~n1o"1 &bjK쒁yDPc'd#48znɠz3nS8ZaX]c W~Oa$轮Gk1UoBWEif-|?M%G3T}%ThŮĝ<9=WEzMuUUFm^2A\r!C`OCiOӓPJ}0EܺQ щ VHNּZV{`⸋Ul^bS5-AKN8?.p>ݐFXr1QL5;V("/$ԲWM 7;ťjwWϚہdiDAqZkUfsN )\|fɒ[7!.`ˉ+/4)/^j8?-] uTq4](΋n;gz8wƙݖ m{Vq dT5'QA?{wG sv&Yr?K /6$ @6F,Aۇغbq &֤!Wؓ2W5j=GL`mUZRއt@(jG ˩M=Wuy"RJdzgīI޾_ g >4O=p,m.8뵭͟<@t||k7 }k-ל?.{XBP|KVh/sɒ9R铳X4Qd\gqü4 HNkH 8-Nx{kCa~˹Xn7t&0aJjqx f ̭.KAh"L $a{G_fD)V@n[H4`T=Bb ]h_M؀ zƣ>. ;L * :%r.E޼Z,'|)L k"גy/"/^` ԯTem!L&\^uF+Q6kҎT5a:=nTݛ ,0mJ*+@=1wfR8YY?aUGGwȒ^TZ2)r.'RSyo%Lm7pުTņA/B;QR~"C69A3B.XU[Oe?N܆G6`~,\guO #oa^?x!55jDĔXܦ㾅=b24yLK5uq*v` I?8/;,oz67;g^FrrՂDAiӜ_ý5;"o_~w rE kp*D8v';c~,0E)қU:Fā6&9L"~msza@w  *;g3~*bsLm\'k5aC7-uݙN9G #l!زM68cI/T]5Qe8# }#r<4we7]&&^]N* 48 ir2*4վ )*w<)FFJ%ȳA/Sj$~$`qdo.s*}mRFhrE,Nz16v}9/2Y  û$/7{cqcKЯ4KAoIK lb*DVxXKf.Tqf,إdQJ vdws݆^8,~7F7/AGR͠I~`XFeqjp!بRЖ XF˲ǻu&؋;3$gȢz 쳃G&{ Ȏj"8ݩnpVt_lɽ09y˳ߟ!r8zbWúM8f-TmB"Uwe%pBVWzAaLĩF+S#ͯ̃[xRDQеg> H1xm']rr<=oaZ+su:ϓI_kɍLNBh"G/28/V4zB=8//Sw29ά "_7aQ/ㆷ ܬ'z[5"h*TB&_XG5~l4݂&}$%-Q uewD s|mJ 9Z[H0_#ǁ|Ϻ g'b薃WNy8P9 2ŗH&J_B9$S*觺*pY KsY:E?qҍ өMt3zi9̞(_jTȊx'XWq;Rr%;?TLIP1iM]7.RLCQ}/1#Z@;}?>i~Rv񑰍9(.Np1}#Beeb]4Vh_?hN|G`dӏUL9:#RȼsNoǘYv$b1:gBOO E:}]00PpWz_e"Dut'k<(:1NM-<#SIc}';¸o'ZK)Kabb7;0}a5&_HX][# ҂cK*ޣO.n?l; 9dp| s7EhΨwŃ1! јgIGtcS9OuضqʾeR*Uli4dTN囖?4\ʣ;2 (_Nag(+60n3>C2:Ȉ>=Z='Png-$)NQ@{RrPKQnvnd}O՘CB0Z/A hza_wXTP-hhg}n7VΓBe7V$W իY!2Lqg(`El?Ȋ7"Dׯ0F>FEgJ"%)O65-fGKE @5(\( -m. 6yٞ=_/.\zJx^PXĚ?Yf\d Ʈh-Q|B9MmZ}2>OʈA[Bt1ؾ7ɀS51Ǎc#J|mH"ETKғ(9j\nbZ8 ^`s'L8IZ{Z{,$i Wj ̾Fb7H%ݬnnP /NG=lދfeQz"@J_ ՆPsq|̲9U Xgn'!7WWy a5K+YHӭel Frqpy%hM+qE y\.?JW/rǵ7=A)6ܸh BX9| ;w@lWؑL,C/Mrч3KXw> [MFÐ7X2m( 0RcGw54'{ڑՉemKB +Pnf뾣5ͫ}.c=]G1"9ɮ8J,z֒D ~zO8B5cȚO7[v'KL#hADpDȟacϋWű^[ mySԾ?E)=PYGJ8vrI*iGk&h=א;T}㼙7[{CT{2Bs PCWq,;bx:q]qLUږ5VqWD܁lC>n!*-8-{N}8 *4lB:r v":`69z6tlqww6 F{ En懛ԜHOq̳2W*}#h~0iD9V!y-ӦFP4`(FiXu-iuf"'FqϜS*c*ӷҠC^(83wol{-yO6nHo)[&eҤǤI-"Nd0kGVbpm˔1EeS htbF~YRBc)h#GU]{h+B;B|qɂ1$`e8c-E˒p r еIgj21*Wu]HZs)0: Xv`R1!Nݬx=?(f'ߖUs 1ܪ)GڸG'Ctf/fةBcn=ݲ;m49;Jd;r}VcS;^*bpO&@RRS\>]QF@ 3I4m&W6Vh-KM.U~_ٟh*<StJ mr!pa$[1M{.'u&ZF>t~fn*JJВ 'sL8*3&Z/c8`מJ`)05|ޙxm@ i QtCƸo!&#.c"-쉋wݰ-=3@W&RL1fp~fK;tf:n!^G X&&`` SVҍŸql4R|zs(`cŻ.ݗ?txŽX)2S܈Iъe h2G13N)!+Wm[dj| niB#g 7@"b?p'g\EYb~tTP3*JNGO-3QR B M}qi3aUH_!xAwb) +jJ ,1/=%۞{&J<+b-"aj5yܗhS`G/su|oI29fOs6+>}0rq%w;KcJnXt5Q﩯U $qv7O#Vu!-pheIeC8.v ʅʅ X05jbA.6i\NWW?Qo!>Y-[nقR\YA ['ۥPW=V mj󫝍u2E-B/0QfgHmmqȃ j0D~湚g3#өH1؍MP ^#4^YP=X &{B M$]208{# h#p3?-̠05g=޶BGI]f[@gq&K~rpsK9[$ s(]4CMq1-fLZvX{X/Wˈ[ݴ{% *=#)z:DPcLKEC~(&'@tԯ帡{ߙ-ILFj2 ~Tjc9r^A}RR\e,9V ?to៙G7,ޟ@ByO3H#9}yL$DuދMq>YtfS64`9ދmc2bnC@Pn "״B:غd<qb@;1 f}ϳ0l:(*SD߁OG&PSΪN.ݟ-=֖U$ ipI]L뙧~ځ}eA[+.UB:h9|$ao&m:`'>b^|H)u1|/ZC f^ /@O,c{¢?'Y}Iy{%͟+t:ya-9'/,%oTM (Jl At PNa}(0SzxJDʭ {nra~~9 ,֐\&4],Ujʛ`<\5y5ZY_AԸXyY93B_H8 ,fK Uu[A+6$|CO+2}RfK ]fUOɤ ?-e^(5st~,D jXW]>y͝}!+.%?6ou6mm6f qUn R'f?4T$̻) ŷ2.-~g=do_NW:P)8A_us8Jspzk/}<11DY k"`#vp;ӆ4vUӍamxI]*5!a/Z0u0R XM@I&k⏈殮i>ƻdsu#B H; ӌHAI gazidW]VE#\x]uʶb˼Y{wfX!sdSdY2I_`0DUcM3[021D]ui)v;Iw&c%̛g;~x-~lajf[?]xP1v R4At>jUuk捳z3xUW7d 4xFi:(U$shĩ%-Sn]5jA aUGRbㇾoAIaHFu03iPn(m)~߯&s2|V_Fu$jo&o^F.bp!qau儚anu{o$>J`&Q7=bW8dC65?5VRbc~5j>ZJm&5alLSZT0^Z>)?OեTvנ f YuIzRwl^P/@6Đ"HO 7[(XQuՈ0塞j&iE*L,ꩢF NfiJP1ʸm|",K?n!UVz,'c*lQpq`yB s"So+L$7aC\ $ c wזit׏sLE7E^=.L&wf@rx&q"5fp@K"Zl ϼLmJiiL? [.@v7$RekzM7"iŬ'W_2 f|ibQyQ[%ή1^`ǿp)\0`}܋MMu ټRAKlۢJyLӐ}ay 9TN-.c 7oZl"Vp$BH\ϞE$E-d\Fнjs>7*^)9f tQ5Y]lql#>Y=*,ya(A5I /B[2xct ,*V%1kTᐤ wBukn@.Op|77,[v@FK{ٜE%%RI(SKgqGbLv4nݽ.S̈́CM!8W6`k$1 MP52!{,B7[1Z'ܓm—8]=Tmu(0W.9S aИ44 r}DL./ն;D Y8yoPvᣛH= `E1<ˋLۺlq1!9+~8f_,o5Af85wvhmSԃe>ug uG=~u" G5uj38M}Śf>83G]}dW[ΜhX6*-vӘ0n. j.x/'%h8fQ/ݮzOAt%*e_U\=-=^Cpb[~ILa(Lێ5ڶoҭbee֙S!H K#(T(6 fT#`L"C_f7TC_+aN6V8&Hbw# G tZ(8.%_ه177:ն;TSzr#{ȋ 94i/;V,XN8 cl=T E6 7t.۹5}Z!7:˧lH i0K]G ݪVm2}'l,VTɀ\Ķ{ ֡RUЙS31e73a ?TEk2(:kIK-dΎ;O\q[$ z-4~7}C'57dlȝdøy)V_Gv"Vj[nT!~A{lȖر HcWhV-|7StX꽽j,j bgKSvJ`hdw')Bj&9ԎZ+#/xQ?_2qxO;nfImQѰ 9*xwoVF##|Yʓr,[$zts? E;iwn^2{T&I]d؝(Rq~?Qe@0E{Vֵz`PmQ}GGܗcאAs[WEr~ir9zC{ܡ]*-X-PFcT]9PT x؃ .qIK:lv{A80ZӜeJ{!䇄x@"}Vvv ##1wx() sk%FZP= Y!\5m,ܙDK~i3g˟U}MeT -nvh?|@()]`T7ޭ 4Op3-*+y29&in1UT<@ѐvpeLN2NZyFspH/+oP|~s)bj亄M82H2ʶ($fPGOny$-:0#!2M3nlhkF صo~&+>Cm[G jVq!rSk9b %txS;5u%R&qo&.DQA wX oW1WK8> &"$蓀PjHL ӕùiNJvOtqԳ@Gk*]|w0p2f}k15ւCa5LPbmukL,73iV,ŴP,޾ f܉ʌ/q} v۱qÀ[Z(J0bՆ8:$0fӯ  4sb㭃,b):]ؘ~BnB+Y^RZ)r_>N:&'bU Bҁ ~^42N%hYY@/w4Wg{ma,U-cF,a[6k gwKtN"HW-$Wi2yG?N͖<. "Cn|޳&EU*C I[ >q<$q0~$3àL}8jhE1mj+Bi\,P15 W G*5#r8Cʞ>;ېMxc i@P\sjOVVنK+͎{{FvX? /"36F@Pð;[? +L5Jw- g`E: UY\XR9&~RQHU1`Av`A߻Jv5% B!^PHIW 7UeBC[GۤI eDMss>Eδȃ\FC3x{Oe%LW^%@]${[n^ #ŝ|ݗ2%f/\l8$ü^v^xBD|u02F|̪+ѻ3J`i9[g?Cn91IF jL%$wV.ʬA7zjS|W'Th*/ڲ$dIT &K_sYbnp m ;ytYJ}G.|Zx1 #Rŀ`^>ɽHX4Ӹ_dG/XD Jzm:0.RiC!$,*2]{Y J9uOK>ļZP`&yΆ $~ỹy;UA;br9SZ 2-g֧ |d1!_[=#CSċ$~UL)OƥOZcoB0|>댿i{?W-,Y3ozHGa[:s:߱=Xm 4JSʮvUB|fDNH*? N^P%yRO\iSׂiJ'x2A#auǬ-!Vqߓ Cߓ5sq"0XEMcV4% ^Rb` %vDyM6v2h*EljK$.>=Ѽ^\Cڻk?z5w4xq\A%ɧc~wyFV),V7P@5X!zCIVK,,mUTNKw2,܇_zr-X%=9e'24!^ 垑?|z+c+Kz`TM4ԓ#(Ud)WX{3]eL.+5:?ֈAp+Q~8r m/[!Dl*`,qe9{m4L5뭔(- C3W|JcpUǛgF ůt RB|ńl|p]":Bo:풅w4L.YRnʑ~G1u "$0~&ϵjm,[H-5|Tjn;[>8Vc vNod(p\q{€|DO1/Ap/dl8w[p.qe meAw'%/vx[jsE}Q60b2䢤[-SL(Az 1'Z%}z䇅3VUШM&$3T3^r)o/Y,}ZtKTa` lvġOU(~ 5=~~*{#p 1+( rKCd;.\n+32w>"jxVǹ`f܋C>>$ht BK'D?/3GMd`-f%#&A+F0k箳zgm kZ+o505eT}̔1-$l-WM1ݴK_6xs;-_ؿ ۇFކqDSOSgALiƎ,cyݍ-nO~#e Gtݺ(kN rɒr;l9=3XB 0u10lisVPqsEJt{lFܟD뗗睲;ă.oj֥2VUѤ5X|rl{=IlmJN]ba!@!KQrp(l -:4A$GiJςVmՏ.:N&^ѭ/wjC&Ϟ'e~SGu(U1h#ɵh=$u`և {0p둁&'ӿ3hypAkd\ӫ)#M PJʯBA1anb vc› J &PZ0YJ]6!skk2 eilr;m߉h?annD 1vP\# }QULUN>4H aPXfS7,g5E{DX}ǂ`9 qfLpڍԁHnxdϝ[U*AB[^{Ft! _X lC Z!ͻ dYly2 |!a-ÈٺU!GDY AwX$CX~LlP4}+-8Չf6W&PEk%f(:,Ɉp&nܚsBoT%WnѢD!iG4}޺򆁺!y)ߑneE (hXh@e/[14C~z_9g#Uwn{Sv9㈉A{Ր$%0aoMB {!o%d @d^iQHw8]IAeAgAQ.(D̒cGs@w!E,n;Ӫyw )0UmE_:aό+4hz=_P*Le6pԟKݒ'n$|Ǧ> 6H/z\<_3GGJtűϕNu@ܪRXTOxr}'J#*/hԚ  *L"zRS+$k056IՕ;9f/AK@L\Y>[X'G<Ĥ&s@q.nf_DijYSP(mz9<D0ˆUx{qt#rթ2S13HAyWۘl[t]{/$C(h\fm6YIM$smV_E?^ R%òhwA*ɫ9Vc~D{; "S&.rj |=-S5CbabxF!!JpgzHG\2 ;}F8J2"x91&_U,lر_ZjH{XMp| :뭜!ÖneIz8Vm\v 'JE{T DG ~ 1uXSÓi;,dӚb2a(K{esZi@MRՖHhpY'"'/; _â,wM= ӽ=J|&8N7ri=ClAB>oPsu)$ɅgqY-cm̮fİ7bc6%YT?~s'y5~_n)JV{ǫPHXDbdήh{,+ѿNTu ] m`ے 82{qw{z/ 7. ߴBJkߏ֯nMV7w4U~fsd6lb$ˇ[5b q)B΋P`TAm6r.҄4+ 8 ƯfĴ/Tu0 R&]PH1{e-{!?nzr ; 9zc)ԈOG9}z1gq¬ޑRz_1tE"NNv7DžkV}wPD4BqK"7u9:rÝ2eVez8$##c\";h-cQQ>U=mmEmo*:RҥSȞ%GQ!7:!i%97n^[攊>/J\yk> +$2^CiukCg^e2ZfV]Td Q/ NIYг7XSc<+lUYNgEU?'TE!*}/@& lQ/pY:[{x~`:,CNWR_P J՗'Ͼ~+"}9iG&fDŢY>:m_ j98|tv+~"9v*T4mA1-:L\ f:$\ٙ%DY%I:<[K YDx8ɑjYǴLi*ɛ\HG'`|.A<Ԥ'ԯG]dw!a5W_g߭ ܄X¸69n>6WJ yHX$4,+*FB =>a phԜ ~#/ w1^jZ3XU$Xj| ׉X.F< ".PO4F7gp}9HC$Ц6 Nu&Rt~1!e c 6L:;bk\7N|}GoQ.^*=7eI&Y'c:B 3kP `N t fcpQn,/TZg+k\%}CeQ"gC1S]X z&un Єu$`$K:j~)>!bPs& s],|0)R>,€.CKz?d?)]Ρ?ypL郺&깪17sr$UzUWJ*9L Sn~yf?VdUUr?XNü 0f=#n٪A if<[k\,͆IusOM"آ_8x 4mUh' ^I+\k0es(Rb'=׏C$2r_ ]XuʾpW|&(܀YYtױiU-DY%}q?ë2|ᅶcPC}EJe)+ }y +3umeBۡ^ݤyPcp.J =%: * .ɬ6SjxO'.Ui='qAþZw+S{ܴW?9['SOINY]S)b 9lDJ-~}f;.YM/Y͈H>)׈m֋R)|9ffD R_hmEbԙ 9 8]o h{rrP p{-^=N|֘J0ݗaճ*^JL|pz-*1;NC#wc74Ą󩏃;D,Ax|Hw:U&j7􇙓զq>B xӫx= z0ϏK Xyuw_>"gadm3UZ !i Œ7oauAͽ|E"UxuB!Jt7ԀͽG)8P:{/iYL6@-rkDr,'C/6#Љ_vDzůCQ > a]~D+Rqv]dd=j%idtqtߍ=}tݝ7v%}C8~ 2ӿK~Js Y%^_KЖK\g|arya8N,hW'K6<8tgPAɉJbe#a3:3 hk_&DUS\}!0[(;uqrZ䬴s*@gi(JoI 9gҘZ-kfe圞@ʥ 緾's6; m; }tP_:ɴW?økχ0g#W5!d_:eG,t* !o<^8ث$Uy\Xr\ {o lq_9YԠ=Aby@(h =NuP`Ndߣn0e)aDZip9l1DwO^L2 l >K׆<یdz."V?2V&͂Ynkɑ90EIZct)'˾NQ^1R8M:$( SO5^C~2֤pUh_j4 cO]'2I=ACސټ/N[<|(ŚýH]v:9U'P &}vX@/9ӺQ.m.D8d{5j5jgda%o r')(/(Tz) ֒f?wJiaVZ?[:Z`k$ 3aw~/%o .`ZXi,Z^_9̓t}x~[DZn|Z U(=V|MKxK8nDžYT/Q1=;nc⧪pz?f/(gbkO!Cp]t!qkj^%o+/D*=Ns}y6dOփLs~]&LJ @"\Yn<_Շf؞C)1Xcw%} bjZ/YQƍlp>lR`(EփXWAer]d$i y Ҁu6\ӊږk]!]h MEj8a@B[Nٻ bn0ݎ/)@4 ϳ_49"s70Mb!47ȜVh~]ZiK4*pF =].ӯ 6P:v£:!lӃC,[\Pҟ- P.>n!{f]ԙ{XtO|ҫ )Эϱ]{%DW~^_WIlwZd|tA e"5RLx *=xa3%WpnQKp+ 㳠AeEv@%>gtx4iPq +ܨm$υ+?|R5=Ƿ ~L3m &_L*uN-5*+D;qBOA@WNFN:D6HQv,xc ٣$CP$ }W߾]I@5f\g1;Zv (JmxGXvĊʅ\V|a" $kcK*ߺfq ~h c*( GHvq }*cNV%O2@;jƓġ#":@lu]׉d{z Ԥf> MϚ,ԡWfJj,MVKsU^TdTaKg D]0%4/ZŰٛ{ 5փN`:CBw#: u֕ӑ\jW9,c;1a\x][g)'~[tmw5a@p%u5qS#7Y}W_L?܎ Dyڛe;=3c=1j\*PN\xOZ-۰wY&Df܃y~@Ưrh#Hb;`AN !3!({1焱 QxLyUs URܽ mM+3&KǂoId"svZ u wi{xXn+M3/|U}u/eMp~FBC|R X1mu8mGD[ "^1sUSറ1 ]l$&pG8SzlWC#0 PZ+Zp)焕 ߗ2gYWOۘ,>6f%#񮺤B|O+nCzU U'/S>[UIJg!\4?` -ҵ7~ DX٩>K #d3 j㼹ZwGvY>fl! H+!tZb붤xxSd'*5Ǎ봯_+av4C7j{DŽx])6m[B!KŊt7~9uDB\6bH~%SD']Kf+4J¥v׹Wb8p1xݓI~h=n#fϟs%0P]2>Do6[\^Е^*6`~;˽̪l&SBg@ #}lUʖÄvL^r7:s#2 IWg<Ѻhzy: q +8_1WL :5pXtwH*nG ^AiOUEXXVZ4Q(M[j6Ds^(d uI7G ./6J0:-Mh&OG>$ s#Qjlj#DTe$Okl䴇c*'^]7۸.6O"es"KΈG2gB #h!$”*l?g](/Ӝtwjeٷ 5Y8&vg}Dj` D>ěl%/+{\̖oe:n觯)5Oւ VO cO_͂ 9!e8謆5^pL1b㈩0$t;w. CH\cLƹ%{ۙF܍DZWEQ->X\浂m"/Q%К SY=Q%1TMfu"Og4 +'(!O715eA`2\xjԋއчç_'{u IEkIΌs/m?^鮹W}3pG(JHױ,3w`J`"V3*[Q `̙$yĈG}uMPuOzfSUSAuX:@9M]h!VP#(YfW{wb"uÆ'}ANi}YgFL#?T㳏/X{wJ[0Vaw FT)a:L==(s);WX%TW뗚$dJGgvnS\?ɰ_>v sqR zb V:_~*jwi_T qV;4! 5")YmSlOB7tnzn;8i! %H+DaȊK[CE-,ܧRP+{01΀R*$Y:h?Bm}9HtaP(b:G(!QiRZXWnXD&BШsG<}KaxUC_#Myh ^-ʴs~GiF`E]e>x0 =n@iIay "jc8]:C>2 L1A^8!J. nHqެpg%\EM!|Ko~@ePdB4bݬS{<4،G;(- 쯂G_*/dbn?/4Le;h9wd)z-4 ?lJ |u ω?EI#)$dj}Ly%$kH^l@B뤑gDwOiQ}sF0GlJNcC fGdk=:jbCP:w:eluc؜4vG|hGld"[V_Ml L>8t}PjG/fݛ&wJpV0JV^`*J48H;nxP n ?w:R"z_CzGN< _P) {nkl 1o祎5SbIon?Ql'.05LBηZ=yjja -`>%eb}>=I+^/ǮIt~h7%oE [ĩ'S!'i_;e<<]ӵju[vpwa}&9KT`3rU6d )痋]N9Yޜ>_:t:R?70n\& ]xAzj׽_hҷ5e!dGكu+ yF8 5JP~;~o,i8WK~|ـw1ZڤY;QleB[];xY'(|;S-潔ǤIMrYk~;G-( Iо (tĉ>rO'#ѯ'8!;bu;OR6w,krK- YFhIIȶ5^$1``^yD!~[Yk8;+_稭crNnV/.rS ,A=n#:P]uTsFhϔpBL0]u{G]3s v a ݋$ hkla)\O o㲐W홚 8/cWhx(90%Ma}B CH^3tϘŔL)-c<5Z{B'Ř{P]@lwD\"fpxdJpZz}L, GN 2_/o!)CB]0EH|uA:r7CꜺ4zqKqVZ~ B)bƀfMi!xf\47!48|iiKQG6|kH[ە[bM6ҳ_>XƳ3pl SavcC'.bD"oH$<.M/ɱBܟ[W̎h0 }:U*OY} X1lU!W3/Flr:0|ٕ[n|g_7yyВ %ED1rGj iP19|MW7{sE S[:FW\Pɴ;M8m __+&8 u`GѼ^t7n¿wzXE?6col>i-6$n@`|1tY m޲6{h%ZF$[{> ۔tex|Ss9i\C)^I[,DZisL"[.]JW۴jcLvT5ʋtcT07 '/:H4iEqDRywg[^?˚D/gՖT~ٷ>.;@чꅁz Ȕ ׸}b3vBdx)0xv- x)°" "1v\<Km(=0!UQeoslnOF).KZ vA˹"tzNCTӢaZ T`_Uז6ɤ gd%ӥPi[0{ɾnP_n.N#ҬW׎ cz<45qY!WQP3y9\CraޯH\'i#=aj]^]T;p=#<W7 @j/ mN!!o1GH V5X?e^^s`Y3/Vj@:(~Ć-5 (4e&L6-}`~o@dnm"r:ЕFHPl-hgj~cK̳pNSwjB|(f#$1ޞSqB920z]r{k}?S B DöXkS fK}Z~~A~jiU/Ok]e2%ݫQ`a=Z7&S72ZKghmm=al#v޲Ґ2`H%$ CY~+$w4f2 P*4;Y$ '),C%*.ZY$V/F)M\3Y NϦS nZϗ:Ђ#p8<5͢C/J߅H{k-gۨmb}" *EUE#'J:v9ZĊZD5 r 'hƪ$KfG[jmz@-`PKq=.?հSM5C~?% L\,k !"1w@s 44sR81uV{.i"䱍[^ )lD<ȸ틵e6 fU. X "asMZKH\=KGk#ɩ7.% N5A=gjb(:?R`"p{l*:WTo B%j,7",rΣ~fkΩt#@{ʹ,pR̤-E +69 QCqQ5;$[+q]75GUzW7K6Wo?%0սM-2@b96JQħ8̸ *99~Db{g|v@G-aI֬~Hk$03k}n9#*(?aV[ lϑ:L}`8iU{I#!8nvfX{/Ba&D(aējޏjbֺwm&xDpE#reY8Yzٷ=؇RL3ɶ;3ɕ6 IMtpduoy"@!}2]ĩ\"՗x )bY׉HRu+*Vh -PUfD"fŵ qSik,i )cOMj +XutWJe%;D9^gTpT\D{4AZPjn]Ck)!z-݋.Vp0P+6FUT:$W;!֓iP7E=,YhyZEZb!6k!sB 3>Lq,ɨ !0A|d"t%Z!9 SrUjS"eE-'zmvfN\CKàH~hRsI}@jcӄs=Izwʷ{Y'S`>'I1'9B  2L›nz0FL}GOZ5(}!NUb}i7'%p4ޑ ץvtaYNKr饧K%)ї!$_}>RA.z欏wTSbF>Ilyι4O Ad^><5ϭ;a5ŷ?4]~8t%pjӚSެ[jv"l{%Y66C9v^׾g,` ƸɽmDzD[CYwHR;;=KER=lD9,l6鵭`.TrI~|QO iok(#@ _d.63+^`hٟ"hӍayN&8~rY A#pt̲ŷzD:;vnA+m,;v U8kQMR78}gj؈Z 9jJR4qT0^bGѽkMLL/T8o>vPzc*_.&ǐ5i߸+[ ;+~ CyݛƯmٹ3̦SKno T2c eBDq]ՕQ29DznеNbMroPzgZU>6Yo< »%d$ KCON ٍ/NA§1"VNӗW.6+A,g2Hi: u?&i,!eQoxJg#X#+1i8 cP@D08(z.>63c-8+nB=tu-hmWVXhHB&S+[U_(*fh I#L~S덗[}U``]QNwe0tc-tĐLi–PrT.lx'RŬkQN@FUJ2r}a. Z)q G9,ߺ=6CwÉdNф2 4n;cG1ES2,fhl|,ZzՕJ #HBEq7Ce蒗H1/s ^% Rw̏S,>154lf< }QPClg8"?h0c N/>)+9p+0(2ЈOݿBMez/lMp#ChTm&Gq70㛡Ly.uγks]%c+Ž\5ADH߻Ow 0>cZX3bMn_} ,eD:$cˮr9Pn w_o9ABsS[ٚ/ysҌSOƁ_C~lW4 3^g4NfR AUݩ`nA~cZ3/@A~.XT ]2 Hps @|a$y>Jaw̘g Ӊ5 e4q.1+ЌXƳP0bR^"*meQw">"F)V8o;QE"(#qx[)ha񕟀)\(R|Ggxi}y '=Gˇ)#IǍ^FY;xO *I]i>+!x~ht3+KX 5ɪ-` !|EmP8"k/Z@-: r们э66^5H}Q0. XҊkR@J UtQØKy9$rTxOP,={3pบb1 }ȴdc?h% Uga@?8X WPj/ʯ\@wP6i͜7$11~%khmGTaz\8sɘ|`N`w]2wC L AhK)9kԅOYRtwHm ss?쐅I;1!CD1M9(!m43}Xe3g;̨+jOQnaW]M6ua[߰m"=;hTK1=4g|u]V;/+qmދ+!!D'mgl[or_ ?j:;Jдjաk3:j?T:1QScM)}!y|rt4s|-eѰ#nn*Dwm+5DHXT1 t#}UFHq0x.k׼5|"¨ [d)1kVZީ^̡p+ӬR6sn-}f7–tXћPr͚K )n+5cP2_SÏT5f>hշ B>n"&)?0HWD"0MH>W QA.=0BD7yFpE`'v,,6J? 2롎oa`kpPUƸ$a({9}kRhv.c51 ܸ3q8o|+&"c*}3s%ݘ,1^w`t gϪp?UO? "Rml^LgӚ.xtAdr4xpz݈{3Uy v$kc>ʻcGa73b @ܓQ8j5B2_!'Tg 56p r8+ M7o-Ӹƨְ2r".wg+WK$H>hV+y/mnZjH :UkEm~@DWZvkPnC WU4[<X=tm?槩~YpR\MxDʚ1]kz@SVa|@?%DžsݞĞGw9-,b 8qǪj[5UAg&s0Ag+\_w ft*>5ik,NKSM5<.VC~J6H G4ȭ-`E71 {O7ӱ<){~JZ="fACyJ Ya-'R4ڰ 9U}&yoi!Q"-sLV2>7ZgCf{2X(e/OLEjAnQ:{> Zu?q{@1Y&1Ӵg0)4R`H.n[n<]x3X_zgx9 X k`.Hjzd&U =~$g"plp$\[Pq=[#^aƾ׈ع.OCa}-\4 \goRRŇ"_ ݦb~l袧l;c?oHi6!{Z5,]~6P:HF Nw=ug~9-~iž\ 7;XDAq Kadِy*Se $]7dG3\v]$jO>YG8Ha|ډ)b [|76ۣ@)g >;}߹˚"(KJ^Ca[|bPnj~bT~6{6q% zFVqB8#.QF+) PޯB<.->Z/5>b'8=-pɢ%&L9N{drּ=X~bOO2]rUB?lf)(r{L-mp"S-Q)ɀnbQ'[kug5K#Q$2llU]}~5CF ..5 ' 8{ _ YcPܴN?yV 8gc/E&LRckL'qk!kr;ސو7iE7Ύ<XaYgiR9=5.(r9lBīq(ԮsF즔בv wD##ro>(:nt-)t yuP2y ITdI~ͧ*[vI~{ij/$)K*q4%KȘL-;"+ vm]eRS;6J89a{=~^e2Ƀ AĨE%)ZGkP3 !or dIkMDضtppiqNnJ'敝b Jۻ[#&plwT!\x,"N 3g\7lhFC=[8ʘƐ2P'NF唷Qo4[ Q 0(S*Ȗ&CaJ`߶(̏(t{#f$?W1NKe4p|X7ci""R*NT$o90t՘Gk }uiC>/]\fU `[Gk3O2!WWI,뇇^@rN41āe݋G}ԢF sQFʙ,?d;<}݃A8̝yN^GiչEB.iVx/s,A2>h'-1\ҕp> 0-~ Ic߂G?(Eٓ&+dx'Аp}9r ?kQ'v&a(q43W8X/k!ĄMe\L o"FҶi:H-:./utk LiAK?CǝlWZ%ޚ0X^+L~k`AMi<9:~(&ǪMsdEev`ح%x*)04ǔ,2@_Fyh78;uԍ>T?}Mǀ?. r%AReX%)Č@QK{J^Y(bMT&K%Iu%eܷp"u0xCz""XbmeɼbRgsu*9s; 1:>TKF#~^%}fOu䓘d?mx>D@WC=?uϠoGH0x7XMx㎋* Im=danc9? %j/4 1'2F};";nJ|#s)pLM[2l5VB`p5A{o=ܛyrD߇(ޙ/yy=Z0p6&Ƞx lH\wP6P2R-<F;9Apc_ O}s"&>'~g[Y"R90V#RD{[85y;PujgGĬsbUe $v mUD4\:)v<# 8 8#@'z&+Nj:l9>P|34Û5x]ZG @տ2'@ Ak=F"uGqo1o=xgFUO8q !Ox$Zk(n< OH$鸒QOșhpzWwܬ@u@CԩebE߲zg]: pGy( p?/".FekiA4wu8&X xCgdbU(1;Yz18){\bx8]՘ )͞|%aYܚ)ut842*H9d%'b,qɷ8%Y(˽bzêc_-6h `?nt68;ן]`Bfq.lu] 8[b BkDy+M#;2 WiWy/ؿBWJI/s4r"@ #d4^{ch1ꁗd__εBzE+W,g~=) ҳ`}Inb tf2fL!7)Q 4-9*7.:.^U_gϟ*4+ZYҤg8> Uo-jH76r^+xڧ,QchG֖&u{QudcSXwt{RyŘdƀQC*a- `(/Ɋ1}[zݴMn)+BYap4;&~bd"A-w9 ܼ荐-R-9D N Y[К#NOJ v]z4$;k1yY=F&_yCMSح =_z.LHk!7\hu%0d,G!O1C,TГ^5H(6$dXEIݪ$:.'=^.[@v3|55߻93ax bܜpO'ſ|SoZ槔 m6 y3JOkaC8CN17t5 /U [R5d~aegFO3|ih)dgп%೗otR#,<3K]?c{AIQzmH{"RhKΰ\xA) /kG4Sӗ$ԱWM'x_עpm.]Ofq &&8aXV AɒMrn,Ff~02v]0'n8ҵz h|7pMF7&X{yYm Zxóc F(Sw=x'uzowT @ބ۰Ul]&̔f2@mzidDIwq6,6w~ŮYX7Bl"$5I5S6fDXBW]Jϯ+TFӮ7W~'&b.zf:(N? F-&5QNhgLZ;䋰E΁FR+`߄1!2cy1Me~&XTBP.x3NHֱ4aq ]_x/m9lGc 9I\)addcT}'T G$ o~q$#2l`,Gs1.CTw d<'t_pG{ v+?[,79>xk~N !L$}4PIΆǏZ'4ͦO΁D^X|)Bk?%{]j E|7$9mH0VU#!jl9)AHIJGm%1oЫu4$g]Qykad4^m| ?;`If>qohpBNrhAm qUBxU hSYq~m92887"M9/3'56 <'wyZ3N?ˢԆ뤤T)RwO&}Xwd[< 3OUʔZtNQ8Ih'r6?KrcXl3Tq_BjTF+4EIgE@=Ǎ%dj]~{F/%' bZV 9Ȼ f'٨1#򌚗ϡEʞQ{vIݞ)gTo :YYyz\i,*ݙ3)\DDʤSV'#/7C?gŃ.W{ȡ༤GXn?l8mDܤu5DpۃmDhNhy䵉rN&U *[nln & t )A|K, 9#@ڇlֶ+/g1#XFڨ, ])UHY?lڳu(6.4aѠ9`N'K'嘩"eJ?y8=BsKwg-a ^_K7JcR @-f;r%j$bA,Lvլb".8fX`B4/:#9,$`l0~7Kݳ*Bzyp6A"kTH|B}l1eHɩE~7?ďC:i'2ŊjkV6rpjmaЫ1Kcs'k.*}6ho 㺧9j7_]Q 'z׆ٔup-+eI @II,?VFw73id2I}(,HYZ/ᡊdwSsDmM FiBUA>]\#UaY vdeϑ>˜Hs7R%bXFcQS$i~A-`JcP9<tn*_gLӚ[l P'1PȠt.cctWf!t 85tlVRڮr ?E4kjvWZA,U(r mA) [d#~( :H,uGRH`գ(8 mxAuX*9H}s_> |ܙ }PGfH<,Qf.`d%{*EO mWe>OV6QZ@&QtPz}JHUPq<'zF;ɌnCCqb  tɒǂ 1?*mf"2{DLl"WX}p* ^XNѦ83c'Aɍ\Q(ǷzK"Q&Ԟ 7ᖺ5gu`IwgK1tA~޹GT8*LW_C_nfBT\3pL4N*Dh$% ZwhKg]|Ovv oc[M¶vgg@C#=]gypaXM6O0U1%yÔ1LP A49RZci,H8w>| ʣRUv(ZT:& x$TŐCZ&D>H/DӛL-FwPħJr \6\bE0.R(hA@y\~̻^@] EЩqϧ^WVH_ܰb2lo [X2HHH !+4(1>>gre}Dr~5~!$`<<\s^˱jQԼz~H7b ^I;[dCFW_ެ"hP^!ԎpaL{E{͙_>?d=0Oݣ;̸(@ezlDI@CHf3M\J"F-hq[+eύi =i /;VlF,.p ص˷PwԗawB7ŒSDvWrj:Lv(g9')bjDOMG;ܸb`N#1h3UM$by͢Ft!yk RzҎO,pxǟbT Xzͮxz?ߥeͨ9.X(mVsSu`ݩՈL_{0Q/ ];r0:x%SI+=_J;]@v5# Ƀ| :1ʾlJFchnk6%2&-9VHpY2sȝ,tzvf/EMl(}/SB w|u+ciwA 4nUbMI(Bˣ|,yת$+kMXi;ôN >`.R'f$ ̡ֆ)[ >< G΂'<hg| )U-R my k6F BwtL)6L_5l{>Eg!Пޝ(өqo%(L@ _i^Tb5Oq | hRD W.̍audHM4{ܵDDe?3͖3&ލ9Y[n g'Dy: Bbk]n#J5=9:>h?M#>X1d8s$%c`- h_&Eē°6h0+Q=c@kS1Z67bu #j+5mT}% *syJDEOK.l"l -@rO`R,VH2oe!1%Ym#ͳ<ЪB:1$𳁩G8[@3d!Y!,|XpbŘkXhi,6A t`&murQ UFnqtdv1|/~܊J#>+[9nc'K$ A9\":lf2N~m6`I |TO ._]ր* S~Xio߽``-bB2؏M{7vsd"Uz׮=\.DIkO:RD"N m)>9pHh!θj20oR}rپ`L+h'JdHxX(9 ݰ_zy<0AXI%zw5@ $rvϝ&(5q)ҵ>~tP'>p^-07a D$bg܅a@ObU.?ϵ Y铒R*u-2m=ȋ_leEԣtp! ,y 㜶'';^N 'ADZ.ozY㛆(g |18t{`@υ@͚v#u=͉j10ѳ}Հ(1Wf'4N}cZ '`\ʪ-N f aA;NXȐ.h,E[on^MXM8}X>u?) VW("TFh]WNdR%AƠpS ]. 8ot9GRdȨj:9"!9%L,''Ҧ'Uy)BEjޚ?W{bF=X7%MQ10 rI| ,{n緼& 3[[72HNʠ{u@r*8 /(~yEMiٺ2r :OwAb7/i%Ώw] ߒE-Prŕ(baX%~qѭ)TO(ZvG'PϮC{4';+5UОo6#}E}|'&03H'*xQ;D%5$ c:P}xd(OI$_$gc^I ,̡ĥO^ ?|^Y4()<ɿ=|UMTVYpY{x[*>D˜{t{%}E)uoYjL:69oo4_7헐wQͶm毕#V.bzz$&:qx)K溕Woa኶;m^f$T36c*O\~cq #\ޱRL`B^&tIԬY!ҀBOa,eֆGl t[7&ThR} B_#B%`ȱ[ uȇ>|J;f.ٚ BL@4+@&NsHR<Zܬ$%0y {dVt<62F+Uj>$>˞@x;h6dkqW": 鎓r Rܛ0TǽnV&"ø%F-ma*nG( CLTک1s\u['2va,kNױWI8injY}<&I5 d-fe۪nl.vN8X/l#~ղU1pe2>FF"tAXA&K)b?{8x`{b >2eTF  #n,^y+O6wмpDT;Ke4Eof3<2*:@JD&|5-JLsȥc$z^b7x̭HVOdM/ h%xX%3i*R/CU $$Q]Rtt[Dp'MUlt E 2Ş0Mxe -K zݳw~CwȡvʀN%< cGOjJYc}-t)7Dcu;#^nEuqaA@hulZES^-іT~,^ t/=Nl"mΏ?_xn|P,MHTp㞭xx87iTnTF^^i1asKrhX]h^Pd>6bn#}y(ܚ<\z>d=|7h|alt뀓|Ui4!~J\ }o|Md\_gppڠz\V핻N/BPV S}"1m{TO>SRȰs4 AkH=*9CyO84M#(X lmq{~ wQǙl*$CYRLNgns! b6 i?k( i25rl8iDL=KER섹jpXi_XСb~>i,cN P< r}[DǞɮln.ۍ?aKK+KicW" @΄C|TxYLRaٶ43#ī4mN]}{_X1XyZɷD":xØN}RKQ&(AM%QERe'u?ru( eoQH1o/ndGLP< ͇|E*wp=c7]Nd ڬ0!ּi?')jn)-\b+i`O+A}} 'Cˆ7\/ nsfr+(K^? ,{\wABhT–ˍ̴]_QHyc+;,j.~)hD,y׍jk`M)m|;e.I*s/oS8L ̂B8L! L3p,vI.HbjM!(]+P@)Z œu(Å h2v3lN'x6PkKNaCGEhQ~mPWǶ&G :m*'~vnRFpdWe'޳ q9ki >c:$8 eu _J4>wN6[&C${ :!ݮtjQ*؍l;<9q_ohU jz#ʈOУ I*YPp^"íbkWW'\rrVRIjt~T3MA¶jtto9/vvH~Om>\Xcߦ>HIuÍμ}_m?^\7)X %0\k05joU L!0vɃd6&^l<W\9׋wOH_a2RnUafgw|IJ 0ÂA<xz 8TK gK\N()q*w9q?SokJ`TcF% N])EVq6Gf.Qb>~Kdi)l7P ҍܳ- VTݳ^xW*.1A5`Lڢg;BԞsW$!bSkwT& j<,CKr N>;g{ PYsbmE¯f=>rw- Hcspi%X)qV-md4<|2,7-r Qq?=9s(̗0A6^]< V]6\Q-?T=z<װ%LFG(9eST#eӰ+hA&`_ˢR~Gl7EUmn̴V^`uLNV~EyŇPe-w,`clҡq;8"b~U~^Z<!ԛ;Wo>z}#癳5ٝ՘E«-̔lsmf̝g^DA-.6Q0] {̌_l7IYQU^SMg4Y*(!ڀWE=$3Υ̃Ե hfNNoSDоQKa[i<[J_j$Hձs[BJxf] y/nnf٨wzZQilq/S[ 3^Tj_>4m‘Ani͕/>2sxs)?&2,}ڿJͬx[YZ$RJ+2{-*E79`7۾'Tו*rbIWΌp܊lc~ ?R2#g+r[: Na,C+ T2SO[4+r' 1?2>FSb k3<-ۄˊ\N fM ^L$zbh u?LU(fZu2g8Se?"[;Dȡx0B# `|f:M4,LceU\·! ak*R~wJMҮ&-o[U,x󔯬 \G$Zaf9Vbi[Wog?i$sDF)CV"hlbZ<3%:MO$b tvvg85;CJʩnX)C)Fv}΅|m$z>7'. %՞-G)+ҽ^UUivL;(!6`$q V`F%u:MYoYT+[aq5mC[ūPSQGNPI#=?w/Ӛ#ON*f0@.ͅ7,s+.v#nKhF=KvҪ OPcF*)Ѳ?d9O*Ti4N5lBGYq\d=e+3W_B\m}WVtg␠mbi,W~}> [)%RBJE*щ`•0?J0ʑ]O\؝I7(8kkC'[6 vN?ɦ+bN3f#xq8ؕbz,T xzBH}y7hLYc[B  IX-d9CN",6<;m Y ݥC-9j^۟:!j{2-tA\Y~Jc"MDl@d'!T."Y 1Vb)O,F?sYijؗ+ XgíXfo-(uLi oR3ΥS-Qoҽ0qVqC"6hynWR-80mK:2Q[lz~j%}1t+x]>d9+iŮ $rV2+8W(]`壿VRv\[Rѷ~ GVS= bKZPC?7$l$21uE=u#ꪶt-:z<OiDjXY{P*oT&7JM*w4,.SR1 h:N0Мm)gqdyuƤ۟O>}7uj۪Pc i6Us{txX&qrW&!T9ڸ'Z] tY`q΋B:b 麕 UQ.hf5*@ 9p mv~H 7޸,` J`b-HC˅#[k*d^i9< !V.s%U҅Czt.qTm5!IH[k@ BW>dz))ҥ:Dž}st5>1aluˣ`F+x";@yF6y窌N%;"u"6=5gD'\/˸1J3R|6 )(Cx_hyE/D/l69]*M3,P߁˿]9 '+|XS^,#%g=w[#1 &1rYΐ蛥&/m[;7C@J]*eAh~ pMn}2̨~-;z(}.H^ȇ%$»1QA_1-nH)/>u)a*2IՍc3uWN4! Sw@y%d]'`@Ӭ/ryLz^;q1#GYfCj[+ZZvk4X+gJ%?K|D#GHt Rpt%%+7 #gB-3+9$ɉ.H[> چYaw .NitwT,=ZCA6yMq5v a;r>vMfaqv;ڂ̱!R{\~ 罚2rB\CbQ%,jKY lP;9/.bh(4 >7H##*UNav`bMJ|,j*-[-=>pa>qPƨk2L(f/y&_@wD\B%q. EjUhS4BqW ~@A s3t ?mP9$ 7CAEh !ىX5 c!K@Skf3+X~OBe+ >Ao.jHIta7zw<"p3 dI>AVYߑmi!YϥB erB۰Ã#(󘾦myt=M!unss97dA&:Uc8x#&ԪM]&-00e1?1no כio j;\9։.WN`%b#9o₧@$, \D9KR1t+XbT\b,~i>~ 6(v\ąoO ^뛛@ޡWM>ub [ΦR-4Y5x]-$@g!WJj4>[!TrUf3.$vuz iO$IkuHIj̡Kj_aYފm(m=¤łq6p{̟JUS|en0 i{ #@uvR#[3fn_p ɢ;RMa1˦D+.C^Feu ]>jU%HgKH S07I%٬ƠS*g}їk@L!WqG6L1$M@tMH\TawG= vIڛB[P]b#;=gKOC"> eOAQVHf6e fE6j%2S낶@H\885HI09 VLxY/NlS5t[sɐ9oN @6 ԇ[*{ӊ ![|=(ċ[yV\l˅yw:kriRD3~J4óc{ՓW c(JHLS= V`*f00|t̉XMf|cS0^ZM77Og4@q!a$f,S";㍻e4=&(i ZG'{,oW%,ƽNؘ1?gѿ&z] :Qx_Xk9SMqR\3H^ce"=<ˑ(I ]^ ^Y}) -?9qaP\u* 0wnzJ93d @+ۆS@'QooQHWfQ6[i^&=,djsQ.}A/F.Ԕ~sG۷-G/U +Ey[L4uZ̮k^2;T3O@K8i93O4K3-nf 杩Mhk3%POvf2>H rCCmT cXj>HK-2͡0v7FǦ6c̭˦>I !(DMT#YJ(l7Fq>v- {#. $~\O!!3&" Sv$\?$ \s`h3/QV@j\a.C)+`uՀ _Q1=р!r\(?wsM+kQ[NB$eXG#ڑucE%<={ڂz[6V._d[k;ҥewې^t̻?9Bc-J19Y*вuGiaMp`m'"Pi;V&嬜0HsK\YPU ̀‰ iis]Ŏ`yd)&2ٍ7AW\P)>R9ڑFWi? |xӴ5bk#Syb,YbEA7IK9vPƾM4V)N쬧 / $#rtYQUqd`xw gal FJ.*1̪ @SxV`Õty,(p™7i.sɀN|b*p`v+Dt&3.Oy7?*Xa_AX#8ǻO9ϳ_HcVkIF~Vڇ @ڵZ X@8&GV1s pVtatJoGm0x!:^fhL9$*RZudqmhs%Gj qc3qZXHfܫ},V}PHMJnH@3&P}َn{3ivA_*-=L>*PQ5c%TފM>#}k٘K])yjPKj;>JD7_1퓀9.Q; |`)%aCTca ZHT>1F9F2 b%" tvn& "w S V\r.Qs O?rWeU\1n<2NEY=I`cjS85;3i܍)a]a!' 4a~:Srzśǭ붂4BX0ca!zפ yGFuPIvOd˳!}:{Jlpj| Hx.9/V-P]ɷ1隘ĎqJqx"w`C r 73PN ָ!N-h⸹܍yʎ8US_a<"/ڈ[Uf*5Zjj& FYpu!˟ c;Y:KT+~HKrrfp_c,U1}wo[_Bc'Յ фX#Y^RhCL6vY4V(>5B/EH0=6(ۀwD$Eiþ:R,c@s~F}wnF  @%ί(G?3(w?0u^v '4Cl' 5PٷEX S9Q S6Lr~Ci=qi'!J*XKp^:ذ@ GW?D+"d7 bLfFl5E\d.Xc5\^$WFO/B_O* Mz}B0((t+B QA啸IeIKcrE(\I& F~jGOZm+B6O/J "Xhûtf"v˗m3DL7MmПgݻk3 Z+S\K*WZ)LS= s+9y3 Do9I)};G1XFLG UARk'J|T6 Ƚ7mFR:e\m^3r|xQ=R;(z:Ef v@Cɓqe /gH %+ASyARDa48'L$`1UAY[}[krDݺa8'S&xcOLHT4AGF $c 1N }MO\wI_J;Z>`D˲@6|s 3x:; Pi9c*tuz_cn !IvJblY$j%U-K}FL G$#@tpYe9hҩiCKmUq&L@m98׉ Cp)1 ;yG?9Ɓ4gIX9Cpb843rPc k5R6\d)ӱaSX"pϞ6G1~Q`k~PT:ZWf½s++yv䳱tfO(7CEt5үHʓQ "WOP[F]'S/%2'y;*@.[iK)+H kyQK  KRw$gR 䁻ws !P]U0Ґ(QtdoHCr(|Iֵ1+#UR@Avڊr~3?+JcDpL™Y ,^=éIt!~xvRkƮ#FNebxqj[Hnⷵ;O"A: _:y^ LB2_q ^GƋt(ՔbZ?\.康MH.WeQOk]tM˯ c,2dj4^UlTkS1|50KL񋰟PQ:Z/Zy ;{P?4nE#C%HN9'A V/zuY__i>aH*v4 K}z_felH4:bUF~cJ`yzE\KZ D c&26o/U'њʆ\rf\O߷:a1(f3&BͲ~ 0p P:0rI4eCO$MvW`1֬ /!<|Y@R('{r3իGd5Oi ܕX6,xN53wVe>CS2EVQ uZ|<Z N7'km<-3)Xn3*zAQyigUxw'èP.AHWh`%I7P>GV(rҳ ͼo&z$8m_Oz%Ӈy M$5^񧟠q* g|p_TAL&}CT9=Ml7ΘfIڈ=g!4Mfۊ]3O-HDmIcR/k H-|N8o^S~ProO4\XGR7pWk[/V,P-Mڅ:F yaq8)CځSnH*GqU|Ԟ`(U11< U&NԋcHI ,bu&Z [^p9],1xR§*joocr?5G;SUHva3̪ʰL0A`Q@\-)sO$sTܕz)x:Lh0qP*zO?n&S/zoTtmTCQw~2LIpky;#W\Od,HjDhcy`0ayA=C0:uX( `^*4ZXV.%tz6W r~4iGB@-t.au_r=!]\3}-J qqr?E9Ess6<48stBҠS9UkƟVR̷t^x>iDŭ͚X2WUALxmC$g7;Uf>S\ߓH{;䆈M\8/g=HPns '!_ 9:ϮWlpX^uSua%<6l{'B^a59~$8= i44tKC%f1% f~*,%3JYjq |ޜ5hF U"Ʀ/ I-Fin+qDDKVc ,{v sʠivX7o%i/ [ʘw"K#Ac\<wǩ9 Oˠ `K%WơF ]}4/Q]Sa s=߽' <`%džFO"n^+q @8Z]>\U#zH^1nIfk׻>c*OW6=I;xJ /^fs*SC}Agiz]#Zϭ򜨊<! &(&$? 3d:x?i+`Lg$^]vơGB v!08sjVuOe1 D Ԙ" )<ՔmIӗ"LZ X8iΥ0!sB>Kp.>a)SN64)O| jw]2du!bK~z5%{ =t.w{诺2VSr`uZO>NX>/Qv2LJӡ;ߖ?x fk4s $@>R32Ͼr@/Պ6*RMIa-J[/f?)A:{fSLw͘ %RӲS7(ܖM O<$_FKAiTr_* ^)ԊpMvjMrn{-_B@ksL]INN_ ˴ ׂa W^gyK]p^ʤ{cp|ӷ@eu +jU F0ԁR4[a4%s d@/%!6So} E)8VopI r`~d΍OEִ{-^m|tz4`xn(H5d?jY޳dv7E@w)98`9\\ڳC;ö#w2kXU@hE[i#"ُeCXlʫVαN~7FqU25a9\J̝Se C?]|iY1+)$ѷ 'Y=5HX:6& %y:[HǻYÐf8@҄<~b`*^f'YnǤ7́"! TCa烪V4 @4 L{w\[;%mF!܀9 'ijψ;]Z/b[~LX(+)e`tF"7^Um` 68&2b< ~owUqѹ&bO\W#ʟwd;H^:01Ѹ6@~iNA_nT#HFHs{&2n\V ,ayrktӋKߤ'DUȡ#f^_}]7S30 ~ ^hIȖj~r2oѕ&̥w]zԡA Q^4&])?-< (T|]kLm6Ə0wHoj3P(t Y5濖5`ۨzFs+^?%-z` @{C\MS}KWuxl/juI[O5ϠSFS<_9J(ѷz's9Ij[t+0BN%{lW L(ڑI`L}8^N52YnȔR3vM>3RgA%;OK 3B oV=y*wˇLBd h6FܤGWtA]^Ld7e3,[e^]C]1Pu] M֡?] 3C[O[ܩG<:֋Нd4GN%-뎓ʋK/ߢbrNɤ Q CO2Fy hYT_,?l2`DWMBht<pp'A:2qdU;5#<1G%a:8j#^m+;*, !B81Wp|N*=PK c 4YzYXW>&Q@ tz%Φ Eg`%dc86*(5Ȑ!yհU.N-8 ʔj. ~:v :]3щ%KNWb: |3)tcZHĹPvʧ"": R >!/H 1B p""fq^rqfs}*(2c.qV y'"=EIa?qJw qeN/BG]+\R2-y]"\MLK+с; ({_+f5Y6eڥkĵč뢪[(?UW-I1⃘Ek׸Æ~MQ'Wp~Xe_dI#%ȟjѣrX>`>Чp&ӱ;f OS<}4~r8O5?Uʑ|0뎪"C/LYrЦ t3\WnA_&7j`B=O}; S?=L8}b78[˝F dOc0Qژ6.S.u #Baz01:²}!3=;W_<RHhmyrK bRS&"l@ql1(Z'?U|Pu[%q-+doXE3rwwo_Xz=Z"$^QOPQD~&bڌ]ӛB^DsňY{-ȼ~w$BRWp w?[1!8mӈ\%2TSr SNߵgYNk݆TqWNg# xEg֌ tU%+3]\p_d5-՞~ᶯRN-/'tw:#|8AFd \tEVjqi12A2*v6=]HԢۀI.H&L<_@3Ęp5 $gTvD7Q$. pҺ`"WN3@`kFM#5śB hgb!,z 0$#xI en+RHn\w;+Zn\o[5zo\Pg&?`:o "d;-RD~j*=bj(`|L45ө{>o }RtL  dh6eA>JQM KjWiŎ?Б{\s 8I>'7gԗ36c5 J|(ka3 W;B *E0eKFJ5ѱ,Q'CW 8[F[#[VpQЯ }26)"§/)2>'e> 8Fedjs,2kE8גd8 ae\7hRMߡkܑKG8v}uHdSGklP bH(߮Q-I,pSD)*K~(vTr0־Ȕ%Cu)9a5{0]\P>WȠo/8_7AO}J }Ӄar`t*Bj=ݛΣrR  Dwg95!oR3J?1HWr7)Q| 1خ3y-&Cd}Iks7ڀ| 'X /7UxEkr70Tg#;N/t7 R"nʯT#a-ekGZ2eSel'Ƈ4*GAu)\F}{ 7}bl֔h’?ڽ^DUg$t6BÑɢOpXʁ#">3X-1?HliJ;UB/thr귑{[oh+ek4R㒿1ó[&c=hB)5n:k=n3`zRC=cjxpo_k qn(P#T%9gfXܑ+}- ݴl,fC7tN'28Wea{*(S9 =}c'g龯"U" 2 $D&D-V2?2,' D%rQ{ (Avh`ُǴĕPωQ:T*}0(zq;{zȈEZVھpvayU&VUkf)qlwE_9@LSش.h4k$Pfe=U7)򧯘nyY%ݝQ,kE% +Ž${ %ʍi6)@<#L}5YOjwQ/q~ϗ TXg>A[ez_{ Qר7c Z]F[|txSKvD׳`Qv8-[1T<"V$%{!mZهש[4L<>jdDD{n~]CˆK-NdyS2!6yn`EMsdu4 9ťW_O/hUnOeSTwp*\S%KԹS>qq 1AƎ%O+KVWei\9 )Cg0 @0ƨXRv3o*&pڠ#|sQNa<::-s?v!PM;7u:I#4s/-NuE#ߑ" o H6ne2 kI,̷5'~CT(c$Ubq.*K{0X<_4" L6^̱Gov[_wfi(Su&<Ôg Rq 0P  6bY"O4Szf-L 3ZJg=IT10 Q8P=]&_rTU2@ACtDE1s1.Bn1v"sop/jkH^r3dY„p#yLΡ*oF31 XF"Z9Tg*g 'A+n>qj9o,'~^쳿"%k+kq*(eW22&N,wxgFbcEUQzZܨ|7La]'Ew+~1q#r!{0EG-J5?)D$]ShC߸ %Ku3(l6ssQuh E{G ?Ҳ8XeZ=\uO_TA!5%:&&iժ%dXkxCRMHm,0Z)'4l7<' 2>vѲT}^`̊H\%qD=Z쐘Oޭy[5B=UmYVham߹A_&^$ri=E-9)G W%K `XGڻҧhF&PÖ{9 2M3Ӧ+˚3?OЭ"|BYX0>VU1DR4~:V%(j??K`83<CַzeI7Vx`pyjn7SQ&3-dþYufc,`bgK_i{138HS- hS2e7X]7~ .JRi\2#67~n?|fIPjO2Ku|mbJYQ ^2|H眱9m|PQȩR\{OĘ(\ҳrkt6gstU\PXD@՘P_+l\|븃غUN~Y`j /p=8skPunQRdiɘ!k| ,\rLn JNM^48LVq a3`@=6r+Oqu`Ln|s*,Ψjj_[{3xè [s>(EK%qvb f7Se0q`icXe8f'P.-ЩB? $_UЭy`EP^K;U'Mx䕇H;sGJ>P#ڠ6YHX8؏312{Pܭ"8%b8y;u^CV`AWAi;#aeqQ^;MCfFoBI@eNUzP(Q"$ɄYAOQMT,)*BW$\ݝ-NZ ,|>>3%^p$Q:QDx 42FHgo:6!P$|wM`2iͤ7E~v7F?*B%Y#@l{[LZn*{&Lv.8pH"zh@O/9 j,')UXYO'#+Zt#ρ>O3daQ^̆6G')4#>!xr$-hJ/ xzRs|a;+_])/zRՋァrzo%V =R9%IG V.^*.SxܦhL9ʑ!t+(6՚\(0SPL2]ӣW=ѥC$i|j1mv" @؝F MJdM96xNWzn Un6mXz ìlMn8Ă?{76yTnmtO 4sC6AYUB혝qzg9r︄.hj+xJaPwHeN^j!b'R*faq!zEdF&;3I!:02t9}i l9kv .؞4 _u)yh5vĨ, ,3 ZRkCA]`^jyﳢu) XC8; Rt)p 7iAw}r')>ܡ. Hh@# >ytga8G1< Ѐj[Ue~h~.C5H_wŽ|*"HN*Xc8bJ, 75]p'89]ᘈH 7fA,‘*|'^yI; a0/nv-kԶƮv~vq|M=mXj:.1`WT-t{22u8g-?ILIMu$OpG-ƀ2ٸ8|7aP%,j+df~kۺ`Y^yu[PAXD<@x 俹ؙѧfSSȼNpN8v%H!gKV'$X(#1r> =Vs ux͢.UP#7qUẊ{/" )m#tU^ Xr'|޺%{u)rLH-_/Sl |T%uŒE<|PONf3 PD.jjsVE5uP"ZV,XexH0YWufJ֘_@W/2W#dB*T >u@5,؊ KɂsX܋sUD{-z(qcxP90xs.HP/n?ՊhTRi\-qzybf!C`T(=i_Y*wWQ߀dLRSd DL%NU֨|q/K0F|ܨo7C8*rRL-[pb|MuDlQc:S Ys,^Եa zG3{~iqR'Lst_[5=!I d[72d`&¨' 0~.TsaYL'ИK͞As_9AW(/C~fPtd/ϣee@/!{ ##rܨH(8z  <}ѝ3;yo'p]zpac{ 6=ax a.,jԷ ILfkb$)i0/"9#~/03OΗ$Зq"NVst粬ԑa14x;tOB}നMrq-3-3Zy%)X 0kBYC9zmg|T8B%^z4lǠj@AUDC'mALO]zq:^ywpBO\5ٗߤ8Cmhq8eNPgkn@dc Kp[d(ߌuIcqw)LkyP]pb}`=eFf&z Q3BN|'M#m,dZ< ky;}xCNlV[Z Yh!U|dRg)W1%;7Hĝ{U'ۺ3q-be^$G 4أŝhJ1F'lf%=d̮2MB$ ?,9`FhM9k-? AڀE>ܻѾ=I򃢊aQz)eAvoP_]iLhuO=jcGT=ao>m&r<09ck:TQk~^!X&'+#Ȉ%;@k KVw޽{\?' u/;j/kL{[xuvE:0on"N?7"{ЦEW7pW ͈6~;x SA*(!jĽ-NYdo`3OQIO~H\U@p2i GFye4{$sTm1Ngy;nd0}6r/mIjʹB $@#*xpcףbz'Gx%ځbpL u;YMwچPY}(Y-_"$[3>ΖuV/?8|_$Hu@AR%X@Z)Ny9/݁ Gn t2c4LADiEH0v (нWXG 9rnƅr+W͔ gyU`w(t*t)<>_fY7= *x ˻pg'*:VQTiéfoCoiKɞ䋢ko[҅H7XSCRZzxKq҇aK 1R)E܈V3f`8+Qr7]>fvd1KBP7$ݖ/$S {" ݒ9 )%޷]T &׻9GS[1yQ[Z'iF&{lc>L BpG_:NaFARrl$A%24_yhR/(lRˡF͊oVǜ|/:ɥ V3ǕW_2ՁNɸ@k=dDJPЄa؂Zh'  K b/U㶫C:e ₕ XYF>tySI&˵(x%S}!LځN#R2@ DY/ts-K :kZMTxm{SD{)>ZeDV"@VQm855oxv TߊtblbgCLdqJ@f- p ):^W>t :vg M5ntC?zng̈kcm|"˞a35qjw/d_NOt}$Cnrny Ȯ olgSg!=',RX}47չ$k0k[WSLJ)~m!WrυODK~$,=]7ZK|S9﹛=ls?rJ =Prn9`TMREabYZI_B}ۤNCJ¦qB'6ftv BuΊVbg8|6_nt TR!5;]sr6gptV 0fN~ƋXZ9R>YnIh-ƌ!;)DY\10*⢢c6~^wf#f7m)gN 3}/QnDriv5E\+g&f-@wnkk Cvؑjex=Zj:݄>|`7 pYK6(rut$7|{ϾS}*y*#T878cِnY|_A1YE݀[ ؜i"A7e'!&dfWxFB{7GMNp AǶJ+PuD<#csf3\踹K~Q &Ns޺ʋIRQ o@9qv:ܲZH+DÛb\P7G\멒'ה$(8#9Sg,d轵ao榐JAJA`T&N?G̫YNЃU3!/sʱhV!nZ>tnj.<ÏsG W9y,2e,ZLߤJ9R-~`a|h 'ϼңPx}Gy6= jJRG-|")H_`>F,y\E.H` p.;ZeWQhYԩgrlЫs_QZaC%ǻƊm}AI7z3bY!kN_XI15ίs< 3EQfGȧPOSi$ya֣f f(\o8сT6Tΰ'G 3O)%/Q֙[ɛEuה 5Ջ- qdMaYC+ܑՔEW8%C ~鋊PeJB Xm#ޤ", lp.`+\ݠ3kR߭OaNg)x[|m=^rv..N/sO Z$K'0(oqhRt GB0D _i@YYPj +iD&ܞS8%)Jn\ŏPL'0Km`87: yj`POl?Q/a4}#Wz /͈8Ol%af҈HjID~m$1#U8ct4]A<=sSu'_(l' q`36;I==}^-͌(X4#)Hvˤ@ֆT冷*z!"}D0\͇fkppa40 lDƝ`?KuHo.5vۜ#'jbGma쀥V]F 3إkۦ%v$hJ! Ϗ^I:܌^(=X/xMdy^PzŷD{j1MZ>$9LGp>:[T 6IUz#Nb䁘s]ErJ@!Q8,:O'{ E5tIhR]u{Pi_ޏb vAea!l&BYYB];(S>);d:d6FS12scHM@OGZWy [<i젎y"yc3-'I6X3 'jJz.7eގm粬Z'U|3}Ї-_e*E[RNjjgGS-}YED'<#D2Vg9L9uR34T*"8;elwA,lU'nx>:ۋ irZG,^6<&IU ?@(]|ȨHHv pmN^h }uZ8!{|Ю+/< k^Z\֣9ۄu䆱嬒( cA1nG?Qw6uB 6WDĞ_wBGh3\DƑ4e\EЋ9X@aHL2wؽiw87U`:=QLd+76)D`:A{*A%nd(öd$lѢ>ZXE,;UR挫僫5E4Z4yW33a5:G=aVc=jуmp A)m"!*7$4;+O?N(:73{#zx.| KHbPlHM'ݸg)I(Hikc25P2; z*&=cuZoJQ@qekf7a/O]t#4D׍pz3}"#*&֔UW1}ޑ+WWX:s5A>4+Yg_JtrZEej7p^D/ 3c'X6?WaLS5*:NpN" `j;HΚ4%1PN>D8wt1 99e"j \%Q/24xpXɞJ7I$Ze"L kiW]-/  uUF?!5$xV496akepRJCQNa 1IY~t+yI)Éq"0˼U H \ʧM)͢P{B4vF3$% vJ91[bTVAr,R {r$NxD_FL o׷AkTC35:#zxXm@,# M1&c4u6"2K\8yIW7f^{srҙ-0{ EHv=k8-Qv^D`G׸⼿0B ;Ќdƕ_1DfD̳%xu7Z[/`%oN\Z>O:/T#Dl3$̮dfh:z`Cvi ͘jA*+d@WT]NV~p>sznH阣2M[nF l&t~5ǂX> vwD/Й%'2:k~)mq|1{$7o˯{X ~bD &#!lT1kwoC Ԇ >;v/Q42%̛bnR3p3wq{"3qض3ǫ&Nڌ.glH>\e~286!ZSV">LfMׅk)_)F4})Y}ui|OA2lT5)ye؀a;Y$uwbN}ɉWݘ]q|AC){q)U> T?kLkZ㟷JZ2eGہWF%v*O7VP^ isI ?oNPkVMQP+]ѺT,h0x˗O@-.b8|VJw? r4JZMкS+GgdxHnx#fl^+ -u'SڰXVG X%_\Y5!7K{rD|:w`tn3CDLs{$k)= ء<^xS nd` Zvmd"=V4\7 ]A}m5F:]:vL0oVBzL)Ax CzCo‰^%sg^NQЁ0wT.\hf/b(HP m3 0 MmA-;v $nRBU,qh\5}`Hd*XAauMΩcPP^*E>1.œHT9l8¤ ٠'k8CB.^+*W'6vXa:JЋ Rz Jv0K`FTI]:rxfSmR:h{[a`Ikm:l&VIܫy{!46e!uiS242,F@+a8 pAc@$ ywS]nn(|BNؠ(녶]JX]8tD9qz-I J3S c 8vԬ'?\e86n wbY_]sׇ모6l ^!HCDT@3lAW&`nbwM>u ':x2 AZp©о4sr|/P\BԆX@gKycos 'D\# wme!Q[QZAѱg/}`Cݑ3MU05#:R."?9P;wXW:[̯'_=) j.q9PiLHEq\ ]MeC鼠HJu`?t K d^*=5P^\ܚyuWn _QK+5wv,Tы=cV>f.jif-&ubƝ_ eUkf`Ο9ӛR)Tk (, ݥ]*)}hP .5Mu ViƏ](l}g7C\^d:)Q-[p'sU*NM{sʈAQ)kr.E):a(MW8 _rM`Dް(A'̩ꑆlc`fTch`KĜVfӳ+>#pog|IR4G (K 53Uƥ GנtWC{2BmEAz6xiP7ԑ`e+G28ڣϬxJ/ŋ qdW?Fyk`gw$:,&'+p]E_6f-=o *8sKJ^!+3J&}6PAZm(:Rr]( +W aS6,ߙMֆ9oHo>Ϭg1p[Z𪤵&3Bף_^FʲXm Kgk C7):ZE 6d Tװ;A1qÍ)~D+JJ3X~W+uc{h\89 RQ^d[vo8;x Aٵ S Y%TI/X"n7]BWy %AZ#rsptdMj˺=|h,OgSijI95(8#sc`aBi{} g8)3OdF@o#8}!P|T( ՞y@MBJ 'AgUH=Pdct:!weDs=Un𦘤Y5a zDZp'rC˺9gNb%+yqv%# #:BX戛'3h}*:饑^{A>a2@?z]P<.UDZk,OT11e[sYz f"djKu>{Zή;T 7gUV"CȃyNX k[\ 9^ΒX~s"S[҅ 8yi7y$[F'ޕU0gc2}GƼl:ZpcIX@A7Ah(4{P1aN.K$G ';穜t1q>ݸ$w MbzEiշg1&-d|P^T IiFl=z<8Uiǘ夜H\mIY6`u%ji4a& ^rbVBKxN;;'X>[CcSo6IY J߾κZ\j)zF½\!P׾_(` 혏dXn EWJ;x ]ǺG ~tt:OCB>:Yi}IST|_گ}:*tTfH|0~z~O 敘vKo~F 9tW8س?\}65=kHD k:7c$3K0Dp>֥?k soZW#6Ц'Il ڀ) tfAMtqu=S0W)@Mb0uVן V#cJEE˟anKTwUGmB[SU}"u?u0! oRTrm,[p Q\nWzqvcaώ(/<%wú- *N2lH@cO ,D辚 @9UUjrMĤEslI :!Q4C@|G XҽPN=Yޕ\A_-"`2Tk@ wam0>6`OҙD׈Ɲ,Nʳ&5 +l&M'y_S Ò։YX8B{|M4})Y8-CWJwG^p¬m+ Rh̻@G;4>sQO)GƬYyzaf:Mj' jWptVᕠPlXd JFG8?%;BBi$+M" ;d)&P?Ui;iڗK 0X:!ER2rzAYH8J8b*Y %#-Xi 5CSGi aĕj A]>>q+x/=M 0)!!rœg<55URFwKS<"i}t FΈ8(IaK;s[JE}YH=Uo1h:8X86XCJ9#oR>-͓`'JO\8X}]mӰ8rx唪"z'n0E넄STΒ?_ &lЈYAWCnR_rP۲C,C(z*^d:yc 8AE}RFwұTt4 M#3U1 B-E!/u'R(r,\l^q|n* pH>k*P9AA7}K:X`Z]FsvDPi.jz9DWʼnyB$ъsWj_(Fp.b;OӰ2Zqf=N~\^DBQ'y@d\;0p -;myP*dfy^ !,Uj99šA!hT>mR3j[u4s.Z>ՓQ"` lbmh9keC9`[-`?-nc%N:g.p@m!t!/K;|7\O>]y 7Z7_ !1/-9PJfOwJt}\X8d +J*eaHG}[Rw ͡3?}[*u $#6QVN;ˁE@ObXI*>YXFҏ]ݵld3s{pwUbBD }4<15FfoNsl,^DZRƉ,b>6X!V5w@a+5յ:t {RLM\%tb/8‚/mtPm UD `z #z^~<թI (a%NԄȤ |̴Y_+;Y^WTl:8 o+y`'aEާj>ƨ6|ɭ&H;uL8[L] ֧9/_1TN}gڭDD05o+CWb±DV?%42P4 ?tu `]L1.c%DI@TtkNqy*1 ~q" FzJނL;t ڄi:Sz&tZ3SXg%=`\d[dR %kCM#ccc) _E= 2_m{B 6Ws?v %{}BD +s~f> #qE"SWWi/O`*"epЫԣ[0/7"<]WhzGKfN?"zy?iEUfļR!b_d,^9{&8ԒΟI>q6'n=0|C׻Sa3pdV׽Y}#>NLna/1Wp>Ɖs#ĸwR+nrNw*}/SAn~wKyP3UU2+(B@ߗ~EnE𣿨5)!'|<)=ygݴxL kjlOQ I k%^ÐA2(vW(Xn2D"d(!k.ڜ{EFJm|TrKmP 28@!Y Y*V4ƽЄĸhP4gi*v#0:u)~)]Xty٪@U\ Z.Bb>Jf(_dJd]ӗwsϑ#Bz9%\_f!/ “6fUIAȧKJ+^ fDtٌzM/gz_o9:"++Z1 o9hr\nd}H5UJ?ZPеoiERۣ֚i[5##@<:+a1;n[Ϣ7,e6Q{+pFT:Qf|捶*s&T;ɋ[xEæf3'B;+!`xzX5\Nm%guID97Q|*"܏FhD% sIFC!pNJZKwM$.E0Wfvquu͠cZ _oکD10]k֦|{!'ӍM@1-U97(KzTi򫁵JxBꉻ ~3Neh4;z N1Sn G?i\Iȝ.[.ؾb!l%2PqR-P+m]hѡ8i\]%FP)T<@0$Dk' ]4 Bĝ%Mӳ{X$u ˝a/{`m#Սk$Xm[v2V90"M~2iVN$GěP/߰삎[W'c$tgY~CEfmEew7٧2Z]G=GU9g$ԍFNkׅ bfΜ;K#DU+K{@̥ e&Cjd~~Yn]LʑBx Vs譩;dG 淺 `l5abT4ac{e+ڠH_L~p8d%Ҳ,3pMd3[dyENd?1E 'l88&h뿴+~ wrditV3?,K{̒!zKrha}5nDD?#7k}], ->Y Kٯ(U{ܶz(BT֍o#Fm _טG7 &݂ttu_ZGR0I2 zlPVd8#dPցˆDn:שlf6πqKMcZWN| M槸ߕXn`ud'A@+ruE$ ڽEUiMP#}gObB#Fec=Q$}1oQye`A{!k1'VOU!Fqrx;@I?ڜuAF"C-D|)Fc*9aa^N+s#iJOf`[dmS:cL@^U}#S=4jWE" ۞X9 m6Nf!>+-5oNU=S &]kC?>AE)zЏK8$Y 0mWP7/1d oeA:ӚM)xAdh? `Ѣ*VL;@p:FNOjK m s8 0#,Ť m4̅"tI>\@@Ԕ#;|>>(qQ-jD+K _4A7__m&K(] ;jďV"z}_Y6+ eg('P޴qQsE==ָ8_eZd-[AXx)鸵x$Joy2"aځOpfA@|)C.eڹI6^ ޒ&-u5d~ˢsfeR,G<̉+k!ܒA5Ew!b7Gd/_O twjRFeNn0]-FߔInG؊٨cu"(Tb,vX(ps(5ñ!uѼQ^4d2Hqm"TiJ7/ǹa>2&-01Ě]{_ |1,*C(!SrA J ao`wD\͸RE#XQ>ܿs#\>_sTLBHm12Z4kЂSJֹ`V@%.%@`+ r'FIUH2sTU+v+wu~#I8d^KeJ~πQ}g_-V߼NMA~=k133tԼ֩9iZ(T{*PumF=]II }o7-K7#vl(<ЮUm4|M 9+_ _5x^o}BUZM-!n qO1`Ys!9 6=RV9s!x\V*_R߾&cuV7A Qw]hZ /̐ݗ7ďCk.1^?h8Ӽ Au↚ @BZ&"Cr+l{QWtO~~:뒭AY^ܰyV~3G0ǫYqMBYo8r%7v1O-0pvp|.kʰbJhA÷? ~Oya_h^THN=rCx}-yF''](M}8}=YPakMz/lBIc6_~хVEeQH*S: >`u5 `K1; aFA~+m*R+1G0&R݅zR2)b;T/fq P3Vt^qĢ2rh86X\])]ʨ)HͅvN bXKZ#EԳ}u`hG-ym16If^ٸVp1'1|=K̀m1:qWk is"夾3":VGH--C-#_|Dnx}g*D@~ћcQa 5|[:u6:v "7(%fݷ'W.슓\ʦZDpEiq![Ti,1X,=hՇq@G;TSfUP}E:לfĢ#oun37T+hȅxM_ːڵ;K*vErHb#~U0/STP $Z@(|3XsI>s6#! HOKRw*KZ[Bw.Ҫ籬%([@x؊jױk~HKTGMugsywГ*PM;B}1Qf]8"I/(!ӆhcB0D%S*41Ew]1-1ꚵ E(%oC`|{ܸuW&o<3(ɧ'XZKfEH+Ō$\i1G)r0= }695r7+/^FI߶fgɯ{ArL@g3:/{^~XEA0+U582($ycb2mD¹j V8?.e9ÕH a&aBVF,ECaki~OoL O,~0^6D;[G3>yĆ["-"HgH378r_JΦۧ΅@Լ8ӳ6M8AZ )n5nk!`7i!7{׫*޸;5kb}ۃ kE7M,%E@balEgS?xfX#aN7`}hjqyx<\ 'v |%׎?&W.+Qu[z+j_}*QP 䩔LՀ8Ѷr%BpxA7گVusmʧ'ƍytp?a(dzotIT: 3t{H}/<:i/"{}l"ebnlː0ź@qX'E/0H/Gb9+͟mM^|QS}襶o !{#=s΢<,MfӇel^= hɺ"cWiPp<xvgq{;L UY|Cy>ys) b؎a^]pp>:&, y&N^ۑc E=&ӵH,Z'i!)1ioK2;{Lvș;p꽔:V I #b Ng%{EWLy|t 5 Y}T x(vXi!r\BvECKVy"E63 *=~TY#M|&>G՜?EH//GZtS3hҞLK|S+f{X8We{nP-ODV6JE}3ep^UhܪqYz(쑮eG3M_ŝ9X$kިheHR(=4EЩhf*&uA:eZMRe(M7&Xg5b[JOC9 .V.s^-)ב27 wDpH?גSV bW4D-$^LE!ݑx-4/ƉfVC`$OɧۖqH)%~(^ۭ}۠О@.=PAmCdK6OQ؁b;0 )j ڋ,EN^Iw,VhV+S  ^5/ϲs#lۢ$*ExAZ9 S>~pvs@;'gKic0=q%oN}VHJ\iw+S+b Js' 'h;:&l-5d E@'{"AYLyHUPN1I~b[-o ͘]AW1?pp& (,V |C6*Eù됳]r] Gcjv5!y6JY&1`9=hiH}@Z= ųO˻W,a:xLF%jHᤸڟ/z/Q5:w;5";.U5Gw{ ۅVE(LCٰ_D-w)<+@TȒWњ7I߫'8Pz򁗯(IwLKJF bd?ݠ2$xK::U[F!paÁp׸_r!j B=2^[:9*֟]X%rx1:k8Uɝbo{^`-wZ.V |c4U(Uר\mc;sQ2< GKT@ _, }$z-ӛLgOJ&|Àw YrF~YPfkiA,5`yi%scN햯pH9;ӹ%bh}zg–ppl%9/x6tE+rϢEh&2i .j!Y떂=0L`ݱ!P|R8 Y'NM?\r]ՍIۓg*a!Ò6c{k2яH\x jh4@7>ߘ2No[udWCJ_b ޴ibeق(p']FT _g8&T (~koCu*7S/H*]G|YI+".t+놭dD=FWb۾d4 Yhל/S2"d)H;c \1=bP|f%ժ sUD;5؅kQw''%IDvh nmIA:RtqW~oy Q#QGB}ϲa}G:緭}UBO 9a'[61^*fdwkvGe†yx V#}d@X$HeVG$w:E9Ġm"#g 4mօ?A1fN {t\&7F #ܱcAQ38  QH::hXyk`c[Q29@;C{<5T'Ҟ c_><r)R[-zvL&1%1d!9C;Jl }9HO56כrȈ.GWA/rS+:LLBƞ%3za ~tt\/o@<4YwY W`:`:trO9yxcTN$n_έV<-3Sn#,±S2h]qtݵh`nQr/t)N)չϢF0c\q8X^,  : y]r}'ms"Ŕ:F;- HE25`]IvBˌ*'UkP uЈdQRgD!ESŘq"̌ϢEgqK^ s|g=pn˹n26RՉ .=.U_FG/d0ʦ+⨟7enO}(KB0hUBAPqJ>R &\G,U(Jy7&۠r8! B5Pb{ )ޜx2o&dƷh-,PzeG亯3J{hannQ 1h1@I0wo%hZi{({=K:j:*)do4"EJ=iep?VGV'pè 5pK&!g_h8(ύ .;qBy0iA5oAea 'as-\|nu3>Jwn/¤n1 ukD `cC ZdG IiKa=wrk  ݑ.U]8}UL0^\az`|j3x/r`g."1=Ne|>?鄸Ͻ\veӐ\[EwYʝj$]B]?f`S˴Acs=*~+h QEJ3 q+qU)gemq6izO<%y7keqݿ>39vCy!:AH@j7`6RL\n¹ _m5Lakrmil|L֗!,vFVͶO|\$1HۀFfbpҫ)^X+W?N;QN3;g xc;B+sgUБOta֖Ʈ"főC4Hpt$XW5l>iQ- W쾒B}z (܄3U8<,tVD 3*dor-.{kVNXB^6wɼA~Šl,ޑށ2ܖ8ԧ#;~B4jBА@HC%U#ԲNM89WO99\lˈù4=_@R"+x4c0"izfG^JavU.+_3}at/й),y)x/\MI)r樝,"?2 !^< 6\i xMcI\nXµR>Z@9ѳ}%DٿN Hq&[.6"/UE{dm3)6X]a+.xdG3qFBҡF uCߞ$7S /mkCZ(kY/D;_|/&M?d' nRJ1(XMqPW:T!?$a#ڱ 2q7̣ u UR@d$iBLlc c_M_TtQݰ>A0qGƘlшvČulq Te٘!ꎍMTéA5Cc @L]!>=N?'0[8cMݨv(om'Ч~fߥomb9tJ)lx>VvAC`"sjZF7= *95P)֢=8ܱۚAg%cdr\T٣ U7PǤD44`r{]/f%5g|@ك8+g af.356TXAQ7b\br^x.N,?#Mo:hdGgLx_3JJ[ߢ߭>0i<aM!_9+rvP`]ɰاomoypn%gƑ鿵Fɹb<&J`>FR8)#x]VtR$ntZM sknv%O2IߘO 8$# q>xe0q< 9]ݝwSHɄx=%A*CFrT5L  YTU޸2~g]L9J£tޱ#:cP8!sz%+ P.t0Ci[cjUPo=\7R[l]8o ʃ!@CwV R#|@hl%26!ZwMg k uFQ4JTʝ򤬐cWB6hb}[93!Fץ6K믰~-|~\R"_s4DʎvUi'@h$x3Yku)̞˜mD2 xaf?=띗VYWf^Iu& 8[+t z/לU'VvVJהYa/<)3&w_IҞ )WӶ^x!L~7@lLʺOBl7|M~J||QɈFڛڝhc};A:Ae~Fr`D:ϯ鉥: \Od(ou%gK$$TИ2[XQM-R -YacSeȳ2 |A1ʹ'e9AdkZVZ[tNgۯ쇲E`G!%(l?8:{eSݛY.Q.%zi nYPć$`0R\{Da !S9q{EFl]Q@ HM{nzFpٌG[ K:}\K\˳(L$ ͑=2lx}K<K"muUsB&-X_O7ȡB/Ϩ4i?jH5cPvOҥTEEb8 uHrb 5K\oC2oOs֮w:7#S7o#$iY4*d|z IJ3_e" ;ṛ UJg.x|`Pj{c?/v hEQ?5P™zjd (X"p~@&{U_ũ V󡉹z4 m&6$<˼\9O*0>e[kƙƎݧ6;A߯fb?Z?m1Vł,5@N;x˩iTDWĈO6EOLb.'EA%3II# ",RMYܙ]/CaM^ /ׂ_M KTlr=OWOjfgZ:lz<1FE*=w7C)rd?u\cfx(:έy@<2u6lO0 u:@lS?n:u6pB&m{ݎrM0 C$}0d+URgݘj9^Д*yߥ)uiQ<E Ӱ˧Zuٰ$2ԉ4|^N< ae\4P=Lra <$ byLAs[}CGM5v/#w^k1x6M/6?o7ʣTS|ioFT*>c1 "Wk\ D|3wsh΃"a#Ԯ>|۱>.w~"YR 0d;PYuRļ!&d`jpDW浤Aђk52,ciKfw(]2]'Jt6:':mAAlXQl< єsX%>~e<.N#8@XiIn2% Qؚ={S^m|Ū@{DR;o9lm2Rg.J6 w?5 \fH[ e=Me!U鳅93B)'yx 8wx !P!jrhf}r(ͯi?yZNInKUMZC匠{\cyPW"jbCLzW?&"mDAAN?>{m(g*Q 1~W);8H 'i;<SeD01`j`Q$[ㆠPC݋+pㅼ;"3yeRޜ%)[*#W_<0}40fg[rL> ++)쯊>y"R>tN=ԓodr]Hp"ěWᵇDzVku>*'\3\EHG%,U?jaͭ+{^qc28Ê$TDpYHT۔ ăZnOz{?Κ Z|^#j Rmh֑fjsۥHs:^ᢴ:gXruGbҼYkBʻ~#n|eQc$R ˋ(6+3/C: ~CO( E^ϷossnٸJέ nQNwkƠդGOFzCʠ/,nNL}ª)?lA;  YCiuؘɭʶ*8g4ǠPu cMiDz1V !VyM_CR0맖(Z] WŌ &S}ʇFw8L'ӅQE.NX̗)튨%rU,&1ҧVӚIĈ )=gq͹5(GT!?RMa{ߊ9!i5uYog%8/y]8NZ/ D>>o'2l^d~Q)|- r^TsJm W-АPj, /\{ݷY" ly]O j\̬k?3{r@ &OS)_ÏdJ3XU-}-J}uw' PUqZT`OB }ಲRuy@6!L3°CK nk1Z 턷2LbOX|MIo<:,ʫ""KA0p. ;i dd.y{ۚ2-H" LG}|/cR7z-Z@zMUtOP+JYgo7Vd Y<{4=8:`$Kk'0rE#Xӝ<7G#Z4\ӧ:*r;`h4 HcEe?6])hEsv)8KKg +0˒d qo|iok1s=bGML\zC햍Rtg&0bqb;6 Co}._^XsOv1'(#0gҺ XG20}£_ポf!Im90Cܹ_gq%v6udJK͋GL-.^VjaxAV׭/)>}KYrp',yPoyE?C ze/qd2 e o ^kW^_?p\xr%G%WP3%mLSKm,dhsQd@:^JCמRd7}O3xdXf5( -3!5 [ˋ^ҐGYSZо")vV{ϊ3:1*t}uyZsERE5+,SnAH PVWf9A[{nS5mKAy7Wdmuh&lHFix e"nr Ϡpb: V0߻mpi 3;U zHzWX?͟K>{>=5(ACb 6y:Swb֧\<O#J`Uu&>PqڃĐ \ELm }MF9Xtcqd&TJbs!¸F]ŁbZ? q_<d#9h[]Kܠ4WShcqfN-*F@eZ"8) PtxTogBL>h{uX3Z(­HxUeV v1uy>$YJ9*Iq0e!Y`lԒh+X   CG!k&\huW]0K|=:6O-#OTS!#]sѿx_S%w;M%kɸpi?ZUwPZW٧@Gs.#15Ƿqۮ$l Vn}lW/d~Wdt7-! zu{#xHYT`7pH^C@X C i;| lPUqr5{~yW~tm&2w_BFճԻ ChwU:Iǀ%;ں5Xp;{08F*W7eR($rk*.iY`ƤG/L ('#uevKFj92ߪ~`Eҥ]LSZy?dM=bq<#S$9MC$}R| dσt: V},2E^Yß/sy=[k֮'G|6DҊ(t@6I0떘);@F,zux%m±5"m&S.jFP?[{C>$+ɒMiCs.Srˣ9ϟy_e.;/GzY0D~LE *7FgV݆Jqp{:14;Ɩx8>, |dɔ)WFZu=䗕M0uBL(ԋ=Ѳl3;S u 6،L%9E5=rׂB\CE_b_+FlrᘋDh*0nԖ_IJ_h`沂ى3A.,!j`JqMڝvN AY +@9ВF]K~-lqI2በĬE*ʺl+K`8DO)L_83Sp!vZM3Z|C&'W#WAc#GշJ=F\{Z ,QxhuJ9s{+k@bk䔪¸u6< 562t߄$JԤȓƷX="AmaLX7Ƨ5QL~GB% @{+ kjۑ^Eկ:9O} cHd#9"Yqj%\.X ? T+&I IV7b 3XWR,n £(X H ,`a8n7|b Z-V$o{GJvp`Q@JׁmrQ`5}Wj +{20Ow>ݛcn%w}[oSI ܉,F 21m!^Qԣ!PDLq+qcVF8 սx~BnSx"D aݢZDGE-.myH[ 44t/D)GZSbb)i&90`Az٥g( HRϼqCxLhpc yo=zH6x9 <0KJv,n-K6< fGLivvo4Op~EAgI9OB^{M64{z<UN5bZɘXG8k!0p0ƕoھU˝[QPDCYzW0 '>&d;6 $K5d! We?.Gm?)8\4 =xd!Vݤhh/cq Oxi159 Fj_ٷf⮂Btfe)/J .C6T=z!Q-+ƚNLob~{el) cS`0'7&LD XC OŲVj cqtK)f("]hxX&pQS 1[)'MPɽSyw=Qqj!7sih{Ʃ<9&y@(/DD{Zggk$ʢ\FaMNP9x/P@ut  .wM9_s2"%QX:_u3RA(u]1I2x]`eW]|ɰLh3@^F:,wW4,0Y)dT njlU7Y,`^$<9*3Kj1-q*mw2G(xoV,J$nmݦVn-2[Hn  9~/%zyT¹s?[$l#K3o}x1ky*X 6 gD=̤dZэ}祩+ \llfUA*5u+5VjBsEo)a+\}gwJm f|D"g}Z@hzg>@-Ku [CB;p| 3ĝ>|QC3U>"`Y~;ϑmU\ da($fS 5ibzL% ! <E퓌Ubyd:\)?ܥ.m*6FV1}ӹîhm]$G|/x%m23jiRd9c{G?ĵZڲ9i 7{rWr$usLI9I(×3=+z0>Rn0x,dFR$Tv?/%- [%TŤ'h"J7)@(ĆFU3fe6a|.S=$D{V SPOMӧT28k{џ%MBYיPU+m$)` '.~_/ gyACptd&z X8Vђ2| ъ7z`?c ;"u*+YA\F5;EwINnKp˰z y?kBn,~c*T'V[@E3]^%<@s9^#񈊜%3!xlX9,}*b$c&㓒qAmvI%3}vA+T {WJ-F~p7$)ª@~gc܊ MhfMQ(;;ғ︵2p3V_pxk#B^:.E*#0KiRm/wOEOѧl|'~뫌kmWF11>Q.qg'7X1hpBCJUW?G6VoO8rR\a&F J2{Hs /#LD²Oć!ԑeij{{1| 4W$ҽx zE>vXǶ$ɟwQ"AY*k3S2&Uߞ6yzW]<9T>gëǯ_B~ЙF0E!}م?ԄveYMN;cڏ|e0šÒ_{)p&u^W97ڹ;Lx L緵5:G0k&҂/&ªRMSm+YA:Dz%@ 'IӀPi4*&xZ~CYJB7"G)ԝ hp."8J׽Ԗ1hU:ffTׄH,<˙uhIL_YRϔ}cij5Ed;)Rptajd(zzGLe.jRV3|k*3~Z{b!,p毊ŔQHEVT7aHq hѫuY-ǝSPp4hrf`F1ݍn -lOG +Q~~:io-cӑVϭe:n iY)w?}=, =en0ߕds ^4cО<;Dlo^[K6ZO%h>BaQ rn gX@"raz=(T0G ޿˟W55-2i}3D >98z6wT˰'|e% hfqd-}]RnpRѮyl^[o,M eWg h*cxruN]E+NN(ę?1:]:C[%Iߟ'j>'%#i0'l<au"vwq@!ӽZ^ZO CW 3 qԲFk .ʍ-m;w7U bԺ4;BpVwYDy<ԱJ)W^Ș`(YdfPLC׼f1}`-a9/u#} 1xqN2L8=7@Vǡ)'|v&i1 N]ԐKxe D8}] ""KȭV4bۊ+5<MBhv8U%[.CuW1ZO(.+8]x ~{d GUV˔iyD'.@QWArK6z\=8 ;m'Z W8Hɝ'7Bdo"G};z>:^gCmRr6*elrN7F т@iN[/_)^ X^ ۻ>gٱBb]!.c?=fC U8@C&]F]r' \ DSK@ToᩂGGG>Nh p5kC1*b/%VRVGBJ"]Ϳ8݂u[2{hSsneёKdYӇ|dY%'^׊ ӎ,g nCM%߹OGћ:ŇGv&ր> HvƗx^<+fg1B@+ PSH eb޵DgŪff(\q"n. +Xl[0]^t1hv`Ȕ #&uaF.a~,WjͶqOX3 u4'@@Ժ=>sαZ.Ju`ˌ qPc_B{ҷ%w%1npFGwE51_( zWX6X+ğ nuȝ*vRef2ͦ6iSm(#B5$rD9`-<v?>U6*P: F-: -3HhR-BAgoLϿd1Jxi 5'W'%cJb NNq[orØ뗭 O eK=`7b ;fDZԈXHkH>m=~[ y9Wܧ&k'uĈY;mӓ;dSZhB(|̲K2u5cN4w(^1iF@\g䃔_6˱A^u Y34_;SN].Ȏ5"(6ZB0NC8sp9IX ;c@5muI% 9wQn{z^CJqvLq^,R奮: [F#9JwK# CKma;҂,UAv%ϐY@5]Z뭱;5 . ٲƹ=b0XG0c3CV@6>_X؅Ƅ8V4IP6k"}-R%,v4a}7^]=S;>V]彃v||5-mm=6"Ϝ8ZjfA 5(ĵ|/گ8\zrMLZ6L,`JZ",x:)6N;Lҹ8Xk&*a:6scFϛۅr^AZٴ0 d9'J=]VQ7 "!; $@Z9ӓ|@e<&[_pW^.*HWeτr~jS)O>w+/9 GÅa=MP$&&݌ %F*!:1Y+䷶}Do3|z|nlp*nH 7aOgwtµg=LKHUrFK#99BBF/dŊTXoARwGZeh ,e1⢄5Edt'l9C7>e1U1MlZOpJ}:o>,./{>/12eHU,1y'1S~:-{5/䟈$-(}&ᜈӔ"YK|׌2g g<S1dăEڤz 2 q;|xp\ )֕8{77a6Nuzl3#ɺ^ժG0,PMKY]4e{"Se,*:oGy bRZ?Fw7# Qo_=*“ 4 .r3}fR!fA*ΘV&ebuRT qޗ`h$slVK(k8#SH!7H 殉B dA]3kvg̤b~ĸtsA)L&O z:Eyk*)A3»QXEYiu:`J];i=o9dPP5VIqUe!RpR|/siVFpOEZcs6~3p1 m eƄNBx4!c,nΓVNտˁD o-d`Q _.މTY(WFAt(ݳM^$x׳㷟(v߮᢭KhY l&+i/ڐ>PQS|11ѣ|^_O %'3)w7mn.׻J?X`0?t/\(yFZNnUG1cAYS1;UZsE =OZv*+qEY=&&5ODPV$ \N4PE" 8XَzPsRS)r{ŕ!0YS ypπ1o HlgX)V#7R]~qx2豋.TZj͛Q77i j$&`PHU_GC _lx nbQe]}+ncI"OE^%]}\zhEͱ`+ILjHh2Q|_+x_è;Etѹ-:726ۊ]W":ϑ8b)67ٿVQ/V6h[g6I-O>.rH|3ӭCTMk3򥅡6^3_vP7c2Ks\YSt IGcAы:6yIUAuI~,WHdH@k\~Q?tm"C.2E?C8R Hv~RnH wQ/6YխɲBuFː 84TUBB+LSph"AMŠU+(D82i1ֵbp^,a2ڴaXϏE lSP2P~䠘䴿Nk!qRH@഑ i5YpSXzG$8ޕ܅sk˩Ho3XiؔЇ~9I:1VGkB \C]V4 cxiG,ܒ}T(hb2 Ar(Ƨn򼶡ʮʼC(Hwo"SRA 4rX*h_3N?цmbmfwW wҍ4q܃&zPj8׎ !<$mTNN0±"5[/"zVT%y`isط1= Wo1=!k`)Ó|ݸzY @07g5* :1QuƉN/`ũE{j qJ86(H캦Mla+"MUa&-ML̵Φ!9s/8?|U TAwa@qa{M&Aai^6ku`FO*߄!;C5 ye/d4kq9ɧQ.{Go`Fr198Ỏg M[?p3yh`S#vwdNo ILBr 7 +cׂr )'ƑP>1F,lO0ѭ(24𵆯ut@=5bdzTXE /-F*\%\֓]X/*.\irk|ẉ99X)XP օ]gpkʧϳ$O ߓ3K?$7IxWK͢dk =*o=6^ֱ{wKߡ(þrd^"_P8CV,}hxըpR㸤CFP9p/AskV^[h}iZ4`vBKz&|;W$ Z3kRS/ .R؞*x%!\U$zU<6jBwha$|~Jk#lW'\Ud2IQ ݚipU&Q_ l}p' CY{[̂GW+T4 ˭qeܬhHH6;d\<;Лaq{Ս ۿUh&7x`sA}Y2䢧܇m&Q∴ YZ