rook-k8s-yaml-1.6.2+git0.ge8fd65f08-bp155.3.59 >  A dk\)I%z qBW+hP,OVxn~黷D[WLNb&~`D2G^$V%&C ֋ qKH5x5h 甪^U7{$k%aH_M>)\[R4(&rj\O(sʟ`;P b<`Aőǰp;?d& 1 m%.9 Sev|WW W <W W oW PWW_W@W ( ;8 DP9!P:-PFGWH WI|WXY\W]XW^ b4cdCeHfKlMu`WvмzѦѸѼCrook-k8s-yaml1.6.2+git0.ge8fd65f08bp155.3.59Kubernetes YAML file manifests for deploying a Ceph clusterThis package contains examples of yaml files required to deploy and run the Rook-Ceph operator and Ceph clusters in a Kubernetes cluster.dk[lamb26f6SUSE Linux Enterprise 15 SP5openSUSEApache-2.0https://bugs.opensuse.orgSystem/Managementhttps://rook.io/linuxnoarch 7H % uλ A 6*; 4!: v h o;''F{(KK.IUPC zL R AAA큤AA큤A큤A큤A큤A큤dk[dk[dk[`'dk[dk[dk[dk[dk[dk[`'`'`'`'`'`'dk[`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'dk[`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'`'dk[dk[dk[`'`'`'`'`'`'`'`'`'`'`'`'dk[dk[75d1e1035f2d73dc379057c5a4cf476b90f319fcc65cae33a1b63d3eceb6523da7c4fc9a4a912139cf02579d867ecb9600792fd7df138d45c61d2aac7baad718ba9d93fd4be8488d98affd3fb822b00770fdecd5cb667d0dbcbaf2d834528b5b6efc3b828b9029d114edf0d6a7b06e2659caf7d0b8e6e19152037ce0a6e778e6cf9b8bac10ca75e95215130882652d94f1966a28cf2586ee59fa3585dec0b53bb5de216aad77f81dc0ed8e500efcc35effb65b5302c1c01bf875f8d58a734882172dbef2f1f97fd9d551faf75f6135d25df2763699e48b2f2d27595df42c426a5c11b9ed5c07c60ea4660fce8c1fd3ccb47fbf023f2d54d75b37ef32b1c9db23569c459a2726eeafe1d415148033d4fcf48e785d06388898855bb5097cf712a487a791216c3dea1bc35e9752f5e64d65c6acbf6dcddf5f137210c752c956a86b84059b8f3b67d6452513ff481cbf4e83a3be1b11e04f4debe22fa129d30dbe87946809499a6e264ff39cc1181e01038c7bfe8a7b22c39de9ce1fedc556cff4219b2a358c8743515de87b68f54084aa40415d3c7f4fdf09449a8efbb11fa6bef39914219fdfeaa3b891b7fb46b1a39fc9e97cc9171b384a265421c60d07dacd0ac84549aac5940fde7a4c104c1126681e1781ab5a7753a8d3738a5757a6b37d0d21407d25272df873dbc470e70f47e5f32cdde33921fb0542ac5610497c7b9b2e4340366bdc2bd925cf3e000ea4ce559acbe2fe32dc3ddb26959bcd1163aed1c163fc8f26631fd20152e5a39602665ae05e03bbb152fb7f0ce73a57ca7f764a8e15164cb75873d435572c3753ee37e29f5022cef3b83910dcb8c43a63fd515d874d7634e739a90320eef65acdb212bc236edf10a6648df32e9689c1e25fc26fe15580c7814e2fb33eb6f634c191056123154dbea5ca2815c06e98939dd91bcee833ec14c785979fe92f1e6c48b76a7c4c4092331c0db02a06098c206c7aafdbb61331cb3605c9914111c825eb81b82995ddac6e34ad510c98ce90e3b50cad8f55aebe29693b630f3fa10f2d14d855afe8d2ad0cc1f5f74d4a86d5bfeb0f199a47c1e02fd4897e1f04f09234acf88420ee3da751fb0b5b998f097d6fd0cc7a2d5c1f254174cc08ff1abb82c7af2b852d2d42638cf43951f6e814629c2359d9910c70618e60de6ba03394c77a7f41498554abff0ba21a08a9d81574ee083e43618b1e6333628a013991857be4b0486bc016ecb13a1c76846897b1458c58e763eaee598e5a58d1b91fa65d6377ebd9594ee04cfa21eef6b30bc396aa2d6d115360af23084aa2ead82330065d4d23474d7644716af202ed6cd91ad60f0ab1402be053dee705f1bfd9d31565bb685ff8f67422251cd0b94436d03c187387cd304bf31b7027c6a75ea539af3d89946e70122611f1fdb5316ec6471afdd1fa73741f03ceaa1173ab7f20381a602e2b31485c3dc3a3476254b592a22535d4b6f2e8440cba749ce423317e0f530987b02b22e9a368c1f515f7ffcb5e2734f55e7cc19b929af49045a65d2fb9e0f8531a4dd0ba6eaac144a831a74c4ee7354dc7c233310e494cde9814da2211356c8f93437dc41f4bb556c170207353b5b6882447a1ec860ef5b19aa12faec611ca1bcae1923e0653eb759e7d43f6751b9998821542b5e94165a6184a6dbc090ad2a67e702dde830558e5885987fda571aa3333ed9b1240247916773f9d1cc1b82823f0763f3dd10742731e3402f1ba298ada08a1fb7c4cff3dab97c3adc49f7e1c049d3eed79986fd849d9005aec28eee6b5005fdf85f7bc14e190e7ff8645d7a666fd4aec29aba2f209a2561e2314dbdf9b9e1e59c56b235b2c23d328ad91bf36fbbda9b81d219b5c9f6b0d6c4f1a9a5a1d2159b0253e7c29dc89cd447b076cad8547083e11f5ea7e7912bfb2258b2fb665eed5d169ecc548fd5cb2f7754c410b5536f2a0a5dcb08f0897330bc36de6789714df4ba0aa0aa632ebe572099a96d27ae827aa6774dfff81a2fb5dda6fefa6e3ebcde466668d5c0c94ac146930cf7b2d9a6f810f3c3c4029f5aeb1e5ab9aac57a9a440653536dd438da5317395ed7acfe4641608c89c877f2bfd946623269925910784bf3cebff10dda34f702ec5ad03505a1f32883020f996298e4c55bc9646cd7a12ece646e7e9df9bde7f2866b0512ee149cdee59f666280b06805cd4707b944202e730153cb3fd75f10cfa18985361046b1bb86d0c76f0f880dc92590062192871a8698ed9901dee35d1ddf225e5555bd38c98f330d6e71447dc92b3f305622c4dc0586439d14b384fde2cb9461288febd66d184552f868549c8819ed690cc17a89836c91de217c41829183557ea862b9698c28cc80f99f432ed2d1d77f0db988e058623afc14396bbd6ebf1fd173f2c4c06ce28e3b7fbb9168b615bf050b3de060b6a6af1a36bcfdd8889d7d2dc77295ef1176a69997e8e0956dc63f220b3b46489f0561314cb6be27c082efa1867de36de28c59df3f53532d90e8b80fa066500a658ec471e169852cf92411bde0e183e113e3262f853fdccae59786b5d3a6b7e9c1ed308bfdde605c02767c9b59b695184e9168dc7a9fac381e56e8a48a99a79101dacd188037d59fad449a5b84753c277212f5fb58885a7e096a4b7c51e4e9bb7f1f68278573cd4106cc342258e7212414ec5f5e5efbc10cd0fbe45f3dab7b44c900e3c7b0cefd9a22aaed7328ae0c6cdcaadf8e6203836faf98f434449497679b45c58c807e5371cd2c156e5f879f151c8d7e28a11f0e78e5a982b6dfe55ca0e0e5543acd539b4e3a4b47c4931630769475eb55ef88dbade3028bf38093fd935c01e26385e75a112871f2be88e95ec1ddfb19b8915264bd7611b579ec81b919c1d668d08ed5b5ce1efc627983d383bbef670be2ded20fe30526c75c0fdd5af5d817127a7c950b0226e35b00a701d84dd29d4bbfa57ca13c331c7f6e35d9c31afc4dd1a3191b1537023b99eb7d2c9a7ed8bc28aa18bc858998e7b2a7f198b18fc780fcb6ff6c1b239a688f722fc9cfcfc2a2771a5539a3d70d89bccabd6671ecae70b9ff00df74f67293ca948efe5928873664b267d3264d4582dd6d89158da537f61316a75c32ac8fa24c0db99a1633446d1fa0533302a7ca7fb1a06431dbf4cd6ab56ded1e967cdd628e361f3d02178fd7637c03f2f5d9e744139e0730bb0f95eeed860cbf1c621cb5bba354ab92344d9496071f03b504b40963af2af825d006db8fe562b5e058aa40619f154e632ea7f049d128de583da91e2854abad77bdc42f606c8e35b4094a67ef443072a3ebfbae8f65cc93b67b110f756ac9dd3c7b17971prometheus-ceph-v14-rules-external.yamlprometheus-ceph-v14-rules.yamlprometheus-ceph-v14-rules-external.yamlprometheus-ceph-v14-rules.yamlrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrook-1.6.2+git0.ge8fd65f08-bp155.3.59.src.rpmrook-k8s-yaml    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3b@`+``?z@_ _:_]@_@_@_P_|\@_|\@_w@_s!_s!_h_cO_cO_`_\@_Z@_16^V@^1^^0^r @^g@^Nt^K^4^.^@]]N@]µ]d@]@]?]@]@]V]V]V]y@]{]v>]v>]_@]V]R@]QT]D%]B@]B@]:@]6]5@]/ ](v@](v@]'$]$]#0@]]@]@]@]@]]\@\@\7\P@@\@n@\Stefan Haas Stefan Haas Stefan Haas Mike Latimer Mike Latimer Mike Latimer Mike Latimer Mike Latimer Mike Latimer Mike Latimer Joshua Hesketh Mike Latimer Mike Latimer Mike Latimer Stefan Haas Mike Latimer Mike Latimer Mike Latimer Mike Latimer Mike Latimer Stefan Haas Stefan Haas Stefan Haas Stefan Haas Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Kristoffer Gronlund Blaine Gardner Blaine Gardner Blaine Gardner Blaine Gardner Kristoffer Gronlund Blaine Gardner Kristoffer Gronlund Blaine Gardner Blaine Gardner Blaine Gardner Kristoffer Gronlund Jan Engelhardt Denis Kondratenko Denis Kondratenko Blaine Gardner Blaine Gardner Blaine Gardner Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Blaine Gardner Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Denis Kondratenko Jan Fajerski Jan Fajerski Jan Fajerski Jan Fajerski Jan Fajerski Jan Fajerski blaine.gardner@suse.comblaine.gardner@suse.com- avoid bashism in post scripts (bsc#1195391)- Update to v1.6.2 * Set base Ceph operator image and example deployments to v16.2.2 * Update snapshot APIs from v1beta1 to v1 * Documentation for creating static PVs * Allow setting primary-affinity for the OSD * Remove unneeded debug log statements * Preserve volume claim template annotations during upgrade * Allow re-creating erasure coded pool with different settings * Double mon failover timeout during a node drain * Remove unused volumesource schema from CephCluster CRD * Set the device class on raw mode osds * External cluster schema fix to allow not setting mons * Add phase to the CephFilesystem CRD * Generate full schema for volumeClaimTemplates in the CephCluster CRD * Automate upgrades for the MDS daemon to properly scale down and scale up * Add Vault KMS support for object stores * Ensure object store endpoint is initialized when creating an object user * Support for OBC operations when RGW is configured with TLS * Preserve the OSD topology affinity during upgrade for clusters on PVCs * Unify timeouts for various Ceph commands * Allow setting annotations on RGW service * Expand PVC size of mon daemons if requested - Update to v1.6.1 * Disable host networking by default in the CSI plugin with option to enable * Fix the schema for erasure-coded pools so replication size is not required * Improve node watcher for adding new OSDs * Operator base image updated to v16.2.1 * Deployment examples updated to Ceph v15.2.11 * Update Ceph-CSI to v3.3.1 * Allow any device class for the OSDs in a pool instead of restricting the schema * Fix metadata OSDs for Ceph Pacific * Allow setting the initial CRUSH weight for an OSD * Fix object store health check in case SSL is enabled * Upgrades now ensure latest config flags are set for MDS and RGW * Suppress noisy RGW log entry for radosgw-admin commands - Update to v1.6.0 * Removed Storage Providers * CockroachDB * EdgeFS * YugabyteDB * Ceph * Support for creating OSDs via Drive Groups was removed. * Ceph Pacific (v16) support * CephFilesystemMirror CRD to support mirroring of CephFS volumes with Pacific * Ceph CSI Driver * CSI v3.3.0 driver enabled by default * Volume Replication Controller for improved RBD replication support * Multus support * GRPC metrics disabled by default * Ceph RGW * Extended the support of vault KMS configuration * Scale with multiple daemons with a single deployment instead of a separate deployment for each rgw daemon * OSDs * LVM is no longer used to provision OSDs * More efficient updates for multiple OSDs at the same time * Multiple Ceph mgr daemons are supported for stretch clusters and other clusters where HA of the mgr is critical (set count: 2 under mgr in the CephCluster CR) * Pod Disruption Budgets (PDBs) are enabled by default for Mon, RGW, MDS, and OSD daemons. See the disruption management settings. * Monitor failover can be disabled, for scenarios where maintenance is planned and automatic mon failover is not desired * CephClient CRD has been converted to use the controller-runtime library- Update to v1.5.10 * Ceph * Update Ceph-CSI to v3.2.1 (#7506) * Use latest Ceph API for setting dashboard and rgw credentials (#7641) * Redact secret info from reconcile diffs in debug logs (#7630) * Continue to get available devices if failed to get a device info (#7608) * Include RGW pods in list for rescheduling from failed node (#7537) * Enforce pg_auto_scaler on rgw pools (#7513) * Prevent voluntary mon drain while another mon is failing over (#7442) * Avoid restarting all encrypted OSDs on cluster growth (#7489) * Set secret type on external cluster script (#7473) * Fix init container "expand-encrypted-bluefs" for encrypted OSDs (#7466) * Fail pool creation if the sub failure domain is the same as the failure domain (#7284) * Set default backend for vault and remove temp key for encrypted OSDs (#7454)- Update to v1.5.7 * Ceph * CSI Troubleshooting Guide (#7157) * Print device information in OSD prepare logs (#7194) * Expose vault curl error in the OSD init container for KCS configurations (#7193) * Prevent re-using a device to configure an OSD on PVC from a previous cluster (#7170) * Remove crash collector if all Ceph pods moved off a node (#7160) * Add helm annotation to keep CRDs in the helm chart during uninstall (#7162) * Bind mgr modules to all interfaces instead of pod ip (#7151) * Check for orchestration cancellation while waiting for all OSDs to start (#7112) * Skip pdb reconcile on create and delete events (#7155) * Silence harmless errors in log when the operator is still initializing (#7056) * Add --extra-create-metadata flag to the CSI driver (#7147) * Add deviceClass to the object store schema (#7132) * Simplify the log-collector container name (#7133) * Skip csi detection if CSI is disabled (#6866) * Remove Rook pods stuck in terminating state on a failed node (#6999) * Timeout for rgw configuration to prevent stuck object store when no healthy OSDs (#7075) * Update lib bucket provisioner for OBCs (#7086) - Drop csi-images-SUSE.patch- Derive CSI and sidecar image versions from code defaults rather than images found in the build service- Update to v1.4.7 * Ceph * Log warning about v14.2.13 being an unsupported Ceph version due to errors creating new OSDs (#6545) * Disaster recovery guide for PVCs (#6452) * Set the deviceClass for OSDs in non-PVC clusters (#6545) * External cluster script to fail if prometheus port is not default (#6504) * Remove the osd pvc from the osd purge job (#6533) * External cluster script added additional checks for monitoring endpoint (#6473) * Ignore Ceph health error MDS_ALL_DOWN during reconciliation (#6494) * Add optional labels to mon pods (#6515) * Assert type for logging errors before using it (#6503) * Check for orphaned mon resources with every reconcile (#6493) * Update the mon PDBs if the maxUnavailable changed (#6469) * NFS * Update documentation and examples (#6455)- Drop OFFSET from cephcsi image tag- Update helm chart to use appropriate version prefix for the final registry destination (e.g. registry.suse.com or registry.opensuse.org) - Improve consistency with image tags- Update to v1.4.6 * Support IPv6 single-stack (#6283) * Only start a single CSI provisioner in single-node test clusters (#6437) * Raw mode OSD on LV-backed PVC (#6184) * Capture ceph-volume detailed log in non-pvc scenario on failure (#6426) * Add --upgrade option to external cluster script (#6392) * Capture stderr when executing ceph commands and write to log (#6395) * Reduce the retry count for the bucket health check for more accurate status (#6408) * Prevent closing of monitoring channel more than once (#6369) * Check underlying block status for encrypted OSDs (#6367) - Add 'latest' and appVersion tags to helm chart - Include sample manifests in helm chart- Set the helm chart version to the rook version- Minor fix to helm chart to ensure SemVer formatting - Fix typo in sample cluster.yaml- Update the operator.yaml ConfigMap to reflect the default SUSE images that are used rather than upstreams. - Fix indentation of patch tabs to match original- Update to v1.4.5 * Update the CSI driver to v3.1.1 (#6340) * Fix drive group deployment failure (#6267) * Fix OBC upgrade from 1.3 to 1.4 external cluster (#6353) * Remove user unlink while deleting OBC (#6338) * Enable RBAC in the helm chart for enabling monitoring (#6352) * Disable encryption keyring parameter not necessary after opening block (#6350) * Improve reconcile performance in clusters with many OSDs on PVCs (#6330) * Only one external cluster secret supported in import script (#6343) * Allow OSD PVC template name to be set to any value (#6307) * OSD prepare job was failing due to low aio-max-nr setting (#6284) * During upgrade assume a pod spec changed if diff checking fails (#6272) * Merge config from rook-config-override configmap to the default global config file (#6252) - Package all sample yaml files in rook-k8s-yaml- Update helm chart version to match rook product version plus the current release number- Update to v1.4.4 * Upgrade to v1.4.3 for cluster-on-pvc hung due to changing label selectors on the mons (#6256) * Remove osd status configmap for nodes with long names (#6235) * Allow running rgw daemons from an external cluster (#6226) - Create symlinks in /usr/local/bin for toolbox.sh and rook to ensure compatibility with upstream sample yamls- fixed spec-file: * operator.yaml does not get changed to use the SUSE-images- helm chart, manifests: * fixed tolerations * Update SUSE documentation URL in NOTES.txt- ceph: fix drive group deployment failure (bsc#1176170) - helm chart, manifests: * Add tolerations to cluster & CRDs * Require kubeVersion >= 1.11 * Use rbac.authorization.k8s.io/v1 * Add affinities for label schema * Set Rook log level to DEBUG * Remove FlexVolume agent * Require currentNamespaceOnly=true * Replace NOTES.txt with SUSE specific version- Include operator and common yamls in manifest package- Update to v1.4.3 * The Ceph-CSI driver was being unexpectedly removed by the garbage collector in some clusters. For more details to apply a fix during the upgrade to this patch release, see these steps. (#616) * Add storageClassDeviceSet label to osd pods (#6225) * DNS suffix issue for OBCs in custom DNS suffix clusters (#6234) * Cleanup mon canary pvc if the failover failed (#6224) * Only enable mgr init container if the dashboard is enabled (#6198) * cephobjectstore monitoring goroutine must be stopped during uninstall (#6208) * Remove NParts and Cache_Size from MDCACHE block in the NFS configuration (#6207) * Purge a down osd with a job created by the admin (#6127) * Do not use label selector on external mgr service (#6142) * Allow uninstall even if volumes still exist with a new CephCluster setting (#6145)- Update to v1.4.2 - Patch release focusing on small feature additions and bug fixes. * Improve check for LVM on the host to allow installing of OSDs (#6175) * Set the OSD prepare resource limits (#6118) * Allow memory limits below recommended settings (#6116) * Use full DNS suffix for object endpoint with OBCs (#6170) * Remove the CSI driver lifecycle preStop hook (#6141) * External cluster optional settings for provisioners (#6048) * Operator watches nodes that match OSD placement rules (#6156) * Allow user to add labels to the cluster daemon pods (#6084 #6082) * Fix vulnerability in package golang.org/x/text (#6136) * Add expansion support for encrypted osd on pvc (#6126) * Do not use realPath for OSDs on PVCs (#6120, @leseb) * Example object store manifests updated for consistency (#6123) * Separate topology spread constrinats for osd prepare jobs and osd daemons (#6103) * Pass CSI resources as strings in the helm chart (#6104) * Improve callCephVolume() for list and prepare (#6059) * Improved multus support for the CSI driver configuration (#5740) * Object store healthcheck yaml examples (#6090) * Add support for wal encrypted device on pvc (#6062) * Updated helm usage in documentation (#6086) * More details for RBD Mirroring documentation (#6083) - Build process changes: - Set CSI sidecar versions through _service, and set all versions in code through a single patch file + csi-images-SUSE.patch - csi-dummy-images.patch - Use github.com/SUSE/rook and suse-release-1.4 tag in update.sh - Create module dependencies through _service, and store these dependencies in vendor.tar.gz (replacing rook-[version]-vendor.tar.xz) - Modify build commands to include "-mod=vendor" to use new vendor tarball - Add CSI sidecars as BuildRequires, in order to determine versions through _service process - Replace %setup of vendor tarball with a simple tar extraction - Move registry detection to %prep, and set correct registry through a search and replace on the SUSE_REGISTRY string - Use variables to track rook, ceph and cephcsi versions - Add '#!BuildTag', and 'appVersion' to chart.yaml - Add required versioning to helm chart - Leave ceph-csi templates in /etc, and include them in main rook package. - csi-template-paths.patch - Include only designated yaml examples in rook-k8s-yaml package- Update to v1.4.0: * Ceph-CSI 3.0 is deployed by default * Multi Architecture docker images are published (amd64 and arm64) * Create/Delete beta snapshot for RBD, while support for Alpha snapshots is removed. * Create PVCs from RBD snapshots and PVCs * Support ROX volumes for RBD and CephFS * The dashboard for the ceph object store will be enabled if the dashboard module is enabled. * An admission controller enhances CRD validations (Experimental) * The admission controller is not enabled by default. * Support for Ceph CRDs is provided. Some validations for CephClusters are included and a framework for additional validations is in place for other CRDs. * RGW Multisite is available through new CRDs for zones, zone groups, and realms. (Experimental) * CephObjectStore CRD changes: * Health displayed in the Status field * Run health checks on the object store endpoint by creating a bucket and writing to it periodically. * The endpoint is stored for reference in the Status field * OSD changes: * OSDs on PVC now support multipath and crypt device types. * OSDs on PVC can now be encrypted by setting encrypted: true on the storageClassDeviceSet. * OSDs can now be provisioned using Ceph's Drive Groups definitions for Ceph Octopus v15.2.5+. * OSDs can be provisioned on the device path such as /dev/disk/by-path/pci-HHHH:HH:HH.H with colons (:) * A new CephRBDMirror CR will configure the RBD mirroring daemons. The RBD mirror settings were previously included in the CephCluster CR. * Multus support is improved, though still in experimental mode * Added support for the Whereabouts IPAM * CephCluster CRD changes: * Converted to use the controller-runtime framework * Added settings to configure health checks as well as pod liveness probes. * CephBlockPool CRD has a new field called parameters which allows to set any Ceph pool property on a given pool * OBC changes: * Updated the lib bucket provisioner version to support multithreading * Added support for quota, have options for object count and total size. * Prometheus monitoring for external clusters is now possible, refer to the external cluster section * The operator will check for the presence of the lvm2 package on the host where OSDs will run. If not available, the prepare job will fail. This will prevent issues of OSDs not restarting on node reboot. * Added a new label ceph_daemon_type to Ceph daemon pods. * Added a toolbox job example for running a script with Ceph commands, similar to running commands in the Rook toolbox.- Update to v1.3.4: * Finalizer for OBC cleanup (#5436) * Remove invalid MDS deactivate command during upgrade (#5278) * Enable verbose logging for LVM commands (#5515) * Set external creds if admin key is available (#5507) * Fail more gracefully for an unsupported Ceph version (#5503) * Set pg_num_min on new rgw metadata pools (#5489) * Object store deployment failed to start on openshift (#5468) * Relax OBC error handling and user deletion (#5465) * Create missing secret on external cluster (#5450) * Python script to generate needed external cluster resources (#5388) * Docs: clarify required version of helm for upgrades (#5445) * CSI priority class example update (#5443) * Set test default pool size to one (#5428) * Remove invalid verbose params from lv activate (#5438)- Update to v1.3.1: * Stop the pool controller from staying in a reconcile loop (#5173) * Update the rgw service port during upgrade (#5228) - Removed orchestrator-cli-rename.patch as it got merged- Update to v1.3.0: * Ceph: revert mgr to minimal privilege (#5183) * Enable the Ceph CSI v2.0.1 driver by default in Rook (#5162) * ceph: add liveness probe to mon, mds and osd daemons (#5128) * Ceph: prevent pre-existing lvms from wipe (#4966)- Update to v1.2.7 (bsc#1168160): * Apply the expected lower PG count for rgw metadata pools (#5091) * Reject devices smaller than 5GiB for OSDs (#5089) * Add extra check for filesystem to skip boot volumes for OSD configuration (#5022) * Avoid duplication of mon pod anti-affinity (#4998) * Update service monitor definition during upgrade (#5078) * Resizer container fix due to misinterpretation of the cephcsi version (#5073-1) * Set ResourceVersion for Prometheus rules (#4528) * Upgrade doc clarification for RBAC related to the helm chart (#5054)- Update to v1.2.6: * Update default Ceph version to v14.2.8 (#4960) * Fix for OSDs on PVCs that were crashing on Ceph v14.2.8 (#4960) * Mount /udev so the osds can discover device info (#5001) * Query for the topology.kubernetes.io labels in K8s 1.17 or newer for the CRUSH hierarchy (#4989) * Log a warning when useAllNodes is true, but nodes are defined in the cluster CR ([commit](https://github.com/rook/rook/pull/4974/commits/69c9ed4206f47644687733396d87022e93d312a3))- ceph: orchestrator cli name change * Add orchestrator-cli-rename.patch- ceph: populate CSI configmap for external cluster- Update to v1.2.4: * Stop garbage collector from deleting the CSI driver unexpectedly (#4820) * Upgrade legacy OSDs created with partitions created by Rook (#4799) * Ability to set the pool target_size_ratio (#4803) * Improve detection of drain-canaries and log significant nodedrain scheduling events (#4679) * Sort flexvolume docs and update for kubespray (#4747) * Add OpenShift common issues documentation (#4764) * Improved integration test when cleaning devices (#4796)- Package helm charts for the rook operator for ceph (SES-799)- Update to v1.2.2: * Allow multiple clusters to set useAllDevices (#4692) * Operator start all mons before checking quorum if they are all down (#4531) * Ability to disable the crash controller (#4533) * Document monitoring options for the cluster CR (#4698) * Apply node topology labels to PV-backed OSDs in upgrade from v1.1 (#4616) * Update examples to Ceph version v14.2.6 (#4653) * Allow integration tests in minimal config to run on multiple K8s versions (#4674) * Wrong pod name and hostname shown in alert CephMonHighNumberOfLeaderChanges (#4665) * Set hostname properly in the CRUSH map for non-portable OSDs on PVCs (#4658) * Update OpenShift example manifest to watch all namespaces for clusters (#4668) * Use min_size defaults set by Ceph instead of overriding with Rook's defaults (#4638) * CSI driver handling of upgrade from OCP 4.2 to OCP 4.3 (#4650-1) * Add support for the k8s 1.17 failure domain labels (#4626) * Add option to the cluster CR to continue upgrade even with unclean PGs (#4617) * Add K8s 1.11 back to the integration tests as the minimum version (#4673) * Fixed replication factor flag and the master addresses (#4625)- Update to v1.2.1: * Add missing env var `ROOK_CEPH_MON_HOST` for OSDs (#4589) * Avoid logging sensitive info when debug logging is enabled (#4568) * Add missing vol mount for encrypted osds (#4583) * Bumping ceph-operator memory limit to 256Mi (#4561) * Fix object bucket provisioner when rgw not on port 80 (#4508)- Update to v1.2.0: * Security audit completed by Trail of Bits found no major concerns * Ceph: Added a new "crash collector" daemon to send crash telemetry to the Ceph dashboard, support for priority classes, and a new CephClient resource to create user credentials * The minimum version of Kubernetes supported by Rook changed from 1.11 to 1.12. * Device filtering is now configurable for the user by adding an environment variable + A new environment variable DISCOVER_DAEMON_UDEV_BLACKLIST is added through which the user can blacklist the devices + If no device is specified, the default values will be used to blacklist the devices * The topology setting has been removed from the CephCluster CR. To configure the OSD topology, node labels must be applied. * See the OSD topology topic. This setting only affects OSDs when they are first created, thus OSDs will not be impacted during upgrade. * The topology settings only apply to bluestore OSDs on raw devices. The topology labels are not applied to directory-based OSDs. * Creation of new Filestore OSDs on disks is now deprecated. Filestore is in sustaining mode in Ceph. + The storeType storage config setting is now ignored + New OSDs created in directories are always Filestore type + New OSDs created on disks are always Bluestore type + Preexisting disks provisioned as Filestore OSDs will remain as Filestore OSDs * Rook will no longer automatically remove OSDs if nodes are removed from the cluster CR to avoid the risk of destroying OSDs unintentionally. To remove OSDs manually, see the new doc on OSD Management - Update csi-dummy-images.patch - Update flexvolume-dir.patch - Drop outdated patch 0001-bsc-1152690-ceph-csi-Driver-will-fail-with-error.patch- Update rook to v1.1.7: * Skip osd prepare job creation if osd daemon exists for the pvc (#4277) * Stop osd process more quickly during pod shutdown to reduce IO unresponsiveness (#4328) * Add osd anti-affinity to the example of OSDs on PVCs (#4326) * Properly set app name on the cmdreporter (#4323) * Ensure disruption draining state is set and checked correctly (#4319) * Update LVM filter for OSDs on PVCs (#4312) * Fix topology logic for disruption drains (#4221) * Skip restorecon during ceph-volume configuration (#4260) * Added a note around snapshot CRD cleanup (#4302) * Storage utilization alert threshold and timing updated (#4286) * Silence disruption errors if necessary and add missing errors (#4288) * Create csi keys and secrets for external cluster (#4276) * Add retry to ObjectUser creation (#4149)- Update rook to v1.1.6: * Flex driver should not allow attach before detach on a different node (#3582) * Properly set the ceph-mgr annotations (#4195) * Only trigger an orchestration if the cluster CR changed (#4252) * Fix setting rbdGrpcMetricsPort in the helm chart (#4202) * Document all helm chart settings (#4202) * Support all layers of CRUSH map with node labels (#4236) * Skip orchestration restart on device config map update for osd on pvc (#4124) * Deduplicate tolerations collected for the drain canary pods (#4220) * Role bindings are missing for pod security policies (#3851) * Continue with orchestration if a single mon pod fails to start (#4146) * OSDs cannot call 'restorecon' when selinux is enabled (#4214) * Use the rook image for drain canary pods (#4213) * Allow setting of osd prepare resource limits (#4182) * Documentation for object bucket provisioning (#3882)- Update rook to v1.1.4: * OSD config overrides were ignored for some upgraded OSDs (#4161) * Enable restoring a cluster after disaster recovery (#4021) * Enable upgrade of OSDs configured on PVCs (#3996) * Automatically removing OSDs requires setting: removeOSDsIfOutAndSafeToRemove(#4116) * Rework csi keys and secrets to use minimal privileges (#4086) * Expose OSD prepare pod resource limits (#4083) * Minimum K8s version for running OSDs on PVCs is 1.13 (#4009) * Add 'rgw.buckets.non-ec' to list of RGW metadataPools (#4087) * Hide wrong error for clusterdisruption controller (#4094) * Multiple integration test fixes to improve CI stability (#4098) * Detect mount fstype more accurately in the flex driver (#4109) * Do not override mgr annotations (#4110) * Add OSDs to proper buckets in crush hierarchy with topology awareness (#4099) * More robust removal of cluster finalizer (#4090) * Take activeStandby into account for the CephFileSystem disruption budget (#4075) * Update the CSI CephFS registration directory name (#4070) * Fix incorrect Ceph CSI doc links (#4081) * Remove decimal places for osdMemoryTargetValue monitoring setting (#4046) * Relax pre-requisites for external cluster to allow connections to Luminous (#4025) * Avoid nodes getting stuck in OrchestrationStatusStarting during OSD config (#3817) * Make metrics and liveness port configurable (#4005) * Correct system namespace for CSI driver settings during upgrade (#4040) - Update csi-dummy-images.patch - Update csi-template-paths.patch - Update 0001-bsc-1152690-ceph-csi-Driver-will-fail-with-error.patch- Force use of ceph kernel client driver (bsc#1152690) - Add 0001-bsc-1152690-ceph-csi-Driver-will-fail-with-error.patch- Define build shell as /bin/bash for usage of `=~` conditional (bsc#1152559)- Fix csi-dummy-images.patch to work with Go linker's -X flag (bsc#1152559) + update linker flags themselves to remove comments from flags + add test to spec file to verify linker flags are working in future- Fix 2 improper RPM spec variable references in specfile (bsc#1151909)- Use lightweight git tags when determining Rook version from source in tarball script (bsc#1151909) + Build should now be tagged appropriately as version 1.1.1.0 instead of 1.1.0.x - Override some Rook defaults with linker flags at build time: + CSI image -> SUSE image + FlexVolume dir (for Kubic) - Add patches for: + updating CSI image to a dummy value later changed at linker time + updating CSI template paths to the ones installed by rook-k8s-manifests + update the FlexVolume dir path to be compatible with Kubic - Remove previously applied SUSE-specific changes that are now taken care of by the above patches - Add patch: csi-dummy-images.patch - Add patch: csi-template-paths.patch - Add patch: flexvolume-dir.patch- rook-k8s-yaml: Fix YAML indentation of cephcsi image value (bsc#1152008)- Update Rook to match upstream version v1.1.1 (bsc#1151909) + Disable the flex driver by default in new clusters + MDB controller to use namespace for checking ceph status + CSI liveness container socket file + Add list of unusable directories paths + Remove helm incompatible chars from values.yaml + Fail NFS-ganesha if CephFS is not configured + Make lifecycle hook chown less verbose for OSDs + Configure LVM settings for rhel8 base image + Make kubelet path configurable in operator for csi (#392 + OSD pods should always use hostname for node selector + Deactivate device from lvm when OSD pods are shutting down + Add CephNFS to OLM's CSV + Tolerations for drain detection canaries + Enable ceph-volume debug logs + Add documentation for CSI upgrades from v1.0 (#386 + Add a new skipUpgradeChecks property to allow forcing upgrades + Include CSI image in helm chart values (#385 + Use HTTP port if SSL is disabled + Enable SSL for dashboard by default + Enable msgr2 properly during upgrades + Nautilus v14.2.4 is the default Ceph image + Ensure the ceph-csi secret exists on upgrade + Disable the min PG warning if the pg_autoscaler is enabled + Disable the warning for bluestore warn on legacy statfs - add SUSE-specific changes to manifests: + uncomment ROOK_CSI_CEPH_IMAGE var + set FlexVolume dir path for Kubic + add ROOK_CSI_*_TEMPLATE_PATH configs- rook-k8s-yaml: Revert to buildrequire for ceph (bsc#1151479)- Update tar creation script + build rook tag 'v1.1.0' from 'suse-release-1.1' branch - Update Rook to tag 'v1.1.0' (bsc#1151479) + fix HighMonLeaderChanges alert + add leases rules to CSI rules + only schedule node drain canaries on nodes with OSDs + increase sidecar timeout from 60s to 150s + use combined (stdout+stderr) output from ceph-volume + set command property for the OSD prepare init container blkdevmapper + change OSD DOWN message to debug level + discovery daemon: ignore updates on nbd devices- Support upstream beta tags by replacing hyphens in release tag with tildes + RPMs sorts tildes before anything else to support vX.Y.0~beta.B coming before vX.Y.0- Update tar creation script + fail on more types of script errors + exit properly on error + allow checking out tags + allow parsing tag versions with hyphens (e.g., v1.1.0-beta.1) + use revision (tag) 'v1.1.0-beta.1' from ('suse-release-1.1' branch) - Update Rook to tag 'v1.1.0-beta.1' + support external Ceph clusters + fix osdsPerDevice config + add portable failure-domain label to OSD deployments + add bucket provisioner + use deployment with leader election instead of stateful set for CSI drivers + fix alerting & recording rules + fix race in create ObjectUser + support mon migrations without rebuilds when using PVCs + allow CRUSH map to be based on PVCs for PVC-based OSDs + fix md and dev ordering for ceph-volume batch operations + improve upgrades when a mon is down + fix service account name for CSI RBD provisioner + add -pidlimit flag for CephFS and RBD plugins for CSI driver + add image pull secrets option to manifests + remove OSD pods marked out if pod is more than an hour old + add --db-devices flag to ceph-volume provisioning & fix MB size bug + implement GRPC metrics for cephcsi + clean up verbose Ceph logging + update upgrade documentation for v1.1 release + remove unused attacher service account + add dynamic expansion to FlexVolume driver + fix random OSD pod failures when using PVCs + fix osd prepare panic + lower minimum OSD memory to 2GB + add ability to enable mgr modules via CRD (notably the pg_autoscaler module) + fix topologyAware on PVC-based OSDs + add support for OpenShift machine disruption budgets- Make rook-k8s-yaml require the matching ceph version - Update rook to commit 692553221d8b18fec8aa3ccdc5872e51f05ca372: + uncomment ROOK_CSI_CEPH_IMAGE var- Trim redundant wording from description.- Tech preview release for containers (bsc#1145433)- Update Rook to commit e9abbf4831673a9a5545971532ae326e95f3ea60 + enable the ceph-csi driver by default + remove csi default settings from yaml + add option to disable flex driver + allow the discovery daemon to be optional + automatically create the csi secret with the cluster + Allow to launch pods when memory request is set (but no memory limit) + ceph: chown with init container + ceph: when mons use pvc mount volume at subpath - csi was merged to operator.yaml, sed to correct file- Fix build broken with creation of new rook-integration helper files - Put helper files into /usr/share/rook-integration dir - Change name of 'integration' binary to 'rook-integration'- Generate files which contain the names of all images used in the manifests produced by this build which are installed with the rook-integration package to assist the integration tooling.- Update spec file to build rook-integration binary - Building test binaries is different from building main binaries, so manual steps needed - Apply linker flags to rookflex binary also (just in case) - Slightly rework rook-k8s-yaml summary description- Correct toolbox location in manifest files- Update Rook to commit 7a48482f5cd92397eef068d097ad233739ceae06 + ceph: run ceph processes with the 'ceph' user + Correct typo about skipVolumeForDirectory's code comment + Fix: topologyAware does not pick up failure domains. + Correct typo about skipVolumeForDirectory's code comment- Update Rook to commit 0141cfea50a7f80ff1ee67aa8cc7ad28edc79a64 + OSD startup on SDN for error "Cannot assign requested address" + Change default frontend on nautilus to beast + RGW daemon updates: ~ Remove support for AllNodes where we would deploy one rgw per node on all the nodes ~ Each rgw deployed has its own cephx key ~ Upgrades will automatically transition these changes to the rgw daemons + Correct --ms-learn-addr-from-peer=false argument for ceph-osd + When updating the CephCluster CR to run unsupported octopus, fix operator panic + Add metrics for the flexvolume driver + Set the fully qualified apiVersion on the OwnerReferences for cleanup on OpenShift + Stop enforcing crush tunables for octopus warning + Apply the osd nautilus flag for upgrade + RGW: Set proper port syntax for beast in nautilus deployments + Stop creating initial crushmap to avoid incorrect crush map warning + Use correct rounding of PV size for binding of PVCs (for example G or Gi) - Add psp to common.yaml- Use ceph-base pattern instead of packages- Fix sed expression to replace correct link- Add ceph-csi as a dependency and update manifest link with it- correct version for Rook build that doesn's support "+"- noarch for the rook-k8s-yaml package - update rook to a265cdf commit + added ROOK_CSI_* template pathes - modify update script for none Go enviroment- Fix subtly broken dependency (vendor dir) generation - Generate two tarballs for builds to follow latest upstream best practices for Golang RPM builds + primary source tarball is unmodified from source code, and vendor dir is a separate tarball - Add Rook toolbox script to main rook package - Update manifests to use SUSE image for toolbox - Update spec file dependencies + remove old Rook dependencies + add missing dependencies from the upstream Ceph image (notably nfs-ganesha and CSI requirements) - Update build to include go build linker flag to set rook binary's internal version representation - Remove FlexVolume config from manifests, as we intend to use CSI henceforth - Update Rook to commit c4a3763b6415a118aedaee52eaf76cbdf6b0dabb + delay starting Rook system daemons until a CephCluster is created + stop setting CRUSH tunable automatically + use --ms-learn-addr-from-peer flag for OSDs for Ceph v14.2.2 and up - https://github.com/rook/rook/issues/3140 + when appropriate, look for rook and tini binaries in PATH if not found in default location + set fully qualified apiVersion on OwnerReferences + OSDs marked out by Ceph will have their Kubernetes resources automatically cleaned up (will not be removed from CRUSH map) + add NodeAffinity to system daemons- restore package name and correct unique containers tags- changing package name as it couldn't comply to the container tag name + https://github.com/containers/image/issues/649- Ceph added as a requirement to get it version for the container image - Added service to strip Ceph version from ceph package - Fixed sed for the container images names- Update Rook to commit ad89e4f47e744c484b8e264e351f6276a42eedfc + change csi template path to match rook-k8s-yaml package files - Fix update-tarball.sh to delete right files - Add all manifests to the rook-k8s-yaml packages - Fix rook binary location from /usr/local/bin/ to /usr/bin/- Fix update-tarball.sh to ignore errors where is needed - Update spec to include additional ceph-csi config files- Adding additional files as Source to spec- Update tarball generation script to get correct version - Correct tarball name, spec version and package name - Add new k8s-yaml package to distribute manifests files- Update rook to commit 700cdd36fe9107733a717fac934c2bedd91fd290 - build from https://github.com/SUSE/rook/tree/suse-master - based on Rook v1.0.0 - Ceph: + Ceph Nautilus (v14) is now supported by Rook + The Ceph-CSI driver is available for experimental mode + A CephNFS CRD will start NFS daemon(s) for exporting CephFS volumes or RGW buckets + The number of mons can be increased automatically when new nodes come online + OSDs provisioned by ceph-volume now supports metadataDevice and databaseSizeMB options- Update rook to commit c43b57844e37a7909beb362d08ef85fffdd5fed4 - build from https://github.com/SUSE/rook/tree/suse-master - Ceph: + Improve rbd hotplug selection + set default version to nautilus + improved OSD removal + clean shutdown of CephFS + improve logging + improved upgrade ochestration- Update rook to commit 69936c170cb3913a539eacf963993e9bb3545e8a - Cassandra: Fix the mount point for th - Ceph: + Improve mon failover cleanup and operator restart during failover + Enable host ipc for osd encryption + Add missing "host path requires privileged" setting to the helm chart- Update rook to commit 8e263cd9c31b0a310b0d1180e58ac843b432b14b - Correctly capture and log the stderr output from child processes - Allow disabling setting fsgroup when mounting a volume - Allow configuration of SELinux relabeling - Correctly set the secretKey used for cephfs mounts - Set ceph-mgr privileges to prevent the dashboard from failing on rbd mirroring settings - Correctly configure the ssl certificate for the RGW service - Allow configuration of the dashboard port - Allow disabling of ssl on the dashboard- Update rook to commit d0cd8cec72176bf28a3ac0ba1457297151004f79 - Ceph CRDs have been declared stable V1. - Ceph versioning is decoupled from the Rook version. Luminous and Mimic can be run in production, or Nautilus in experimental mode. - Ceph upgrades are greatly simplified - The minimum version of Kubernetes supported by Rook changed from 1.7 to 1.8- install to /usr/local/bin as rook hardcodes this path for rookflex- Update rook to commit bf2759e317c44c0ad0aaf635e04cbd72a002a5a0 - Refactor ceph containers to disconnect rook and ceph versions- Update Rook build to use '-buildmode=pie' flag - Version at commit e11b3d863728667ea018aa329f3ad907360473cf- Initial submission - Version at commit 71514921ad8e41ede6f2814e7004f0465e3dd0f7 - Modifications to upstream Rook to support SLE: - Nonelamb26 1684757413  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWX1.6.2+git0.ge8fd65f08-bp155.3.59 k8s-yamlrookcephceph-client.yamlcluster-external-management.yamlcluster-external.yamlcluster-on-pvc.yamlcluster-stretched.yamlcluster-test.yamlcluster.yamlcommon-external.yamlcommon-second-cluster.yamlcommon.yamlcrds.yamlcreate-external-cluster-resources.pycreate-external-cluster-resources.shcsicephfskube-registry.yamlpod.yamlpvc-clone.yamlpvc-restore.yamlpvc.yamlsnapshot.yamlsnapshotclass.yamlstorageclass.yamlrbdpod.yamlpvc-clone.yamlpvc-restore.yamlpvc.yamlsnapshot.yamlsnapshotclass.yamlstorageclass-ec.yamlstorageclass-test.yamlstorageclass.yamldashboard-external-http.yamldashboard-external-https.yamldashboard-ingress-https.yamldashboard-loadbalancer.yamldirect-mount.yamlfilesystem-ec.yamlfilesystem-mirror.yamlfilesystem-test.yamlfilesystem.yamlimport-external-cluster.shmonitoringcsi-metrics-service-monitor.yamlprometheus-ceph-v14-rules-external.yamlprometheus-ceph-v14-rules.yamlprometheus-ceph-v15-rules-external.yamlprometheus-ceph-v15-rules.yamlprometheus-ceph-v16-rules-external.yamlprometheus-ceph-v16-rules.yamlprometheus-service.yamlprometheus.yamlrbac.yamlservice-monitor.yamlnfs-test.yamlnfs.yamlobject-bucket-claim-delete.yamlobject-bucket-claim-retain.yamlobject-ec.yamlobject-external.yamlobject-multisite-pull-realm.yamlobject-multisite.yamlobject-openshift.yamlobject-test.yamlobject-user.yamlobject.yamloperator-openshift.yamloperator.yamlosd-purge.yamlpool-ec.yamlpool-test.yamlpool.yamlpre-k8s-1.16crds.yamlrbdmirror.yamlrgw-external.yamlscc.yamlstorageclass-bucket-delete.yamlstorageclass-bucket-retain.yamltest-dataceph-status-outtoolbox-job.yamltoolbox.yaml/usr/share//usr/share/k8s-yaml//usr/share/k8s-yaml/rook//usr/share/k8s-yaml/rook/ceph//usr/share/k8s-yaml/rook/ceph/csi//usr/share/k8s-yaml/rook/ceph/csi/cephfs//usr/share/k8s-yaml/rook/ceph/csi/rbd//usr/share/k8s-yaml/rook/ceph/monitoring//usr/share/k8s-yaml/rook/ceph/pre-k8s-1.16//usr/share/k8s-yaml/rook/ceph/test-data/-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.opensuse.org/openSUSE:Backports:SLE-15-SP5/standard/2ddb084675271bf3516c21241402b8a3-rookcpioxz5x86_64-suse-linuxdirectoryASCII textASCII text, with very long linesPython script, ASCII text executable, with very long linesBourne-Again shell script, ASCII text executable, with very long linesBourne-Again shell script, ASCII text executableͥ}X:VZJFutf-80d3e7d33d0cdfc6ae1cc502e92ece4ef91de29037b07eb693db019acba746009?P7zXZ !t/L] crt:bLL ؝.#{T"T&[ǁ?>h{93d5nzV\ӂHA]c c{jr|EK(b-DZ9)MǾ`J$|^ԖM%%)1~0~̕WB @e?Γ^>7C¼|ǁ^kLyt5z`ؗNT#TyV%Ŷ< ,x >9꬝T{8# K`˂t9jp"daxYS2ʐ*9>D̞ ?&n&dNr 8{0jv5_Q 8]7{n7u"P'2|~͑"[z-x9sHgJAjwdIRNN*R)Lz;D]g J|g Ʒ_Eh&Yy"hI]:zTmw4d3SL֕5 =fUPKIG?np9ڇeEX=հJOJ=*׽v=W riH3ܫs\rAͿˠjN$Z;](J5[wV6:mI#0Sw"5)r`"ϫyPf,C 7%v B N}6T}P5YLŁfMxStwl2-1z~6 ANsW嚖KG[ K4 R:GƵ:D/Ҫbj;$tHcf ,p\T@Ga 7"" G PKeV*1TOZ?{0:TNtz>MX+3 4$&x_P56Ə|c r~[p4S'&QpAR$hQTUV#\l2F@~Hn^7@ÆltD(JXrqi5#8Z@ϺIVg$GIIe pt:Έ-5qʊqcvT1Y2}˽=0cE) g]Oy? m?& ^pJmlZar]oi[à34^֗y]+jZb<^$G( e>[t4TYߜPޣu亂j SDl-bSEx&ɦbTUŋP+WY唔"ۃi,o=.!ҍIr7hWO0yqtIpī+o Jw Dك 4PHa<6:|aQn?lL4A4ۑ5;ogmPMx @*HޭC Zp0I?~-=j. M&Pkdb76ܳ7O>+fs3"`ٽnWh{JDP;85Nw(nm:Z\H֪#&YBz;oϡIΙ@ t"wnncw& ט?Ǩ6N}YбgФdvJpr 6f<ƄM\lxF:"nM6]B`htF-u#lX7}.l63..ʾۅ٤KăPcL^_ΌsTmCDOT'㠁<NZ18!.7]Qg?PnK蝾R@wUjT rcV[)WnvBz%Zl}tA}F|j>{9E6 C70NG +c3Gb;W@۳%leBKvd7eKkYo=Ũژai/ Zr/0p24 ˘LqT3'^^>7JX3lX)\(M.TNP =x5-׽W'@\(Sj[)ƙ!OПɟ Meds 9| z,&@O dڂȴ+s%ȼ|\7s| 4ϡ΋`V?F{4bDLi\BDab/OEMݪM%<3]YZeGlCzᶛ5oB45L ^ԣS"la CkA"|`xrL:58];zW|Uw`@`rܾa3!EbX9pvj5`r=',_hLǥ GP*Pl22vf :hkh{zgt¿?Kƞ汅b/xtA XPi/)xP]}䰱',tĚ5|o\[Y:޿GI|2»z맚rq nJY`@+ySVBdH 0Xu2tY^:Y\VcDQ?Ul KOkX_MHV)xn,4)|$DvZg"kM&ՐpڥSl/!/X<I,]!င5[Ov;+Ju/u&!8:zWI{5N +<=Oi=3sdpaW)6n>© V}wi4w!"z ւWm kњM(S'w m{ߣuՠ,f_QC%H%sl*('XT0U= #\&.?6^+& x/0i4MNY#xw,21x)3*}YQXeղ+.OJB?4%AQLɡk973d9FAh2kr LS~^%$a fKUT̬ab]V/F[/Akqg^J.3\[Wo  FMK[,˭1c﬏t%ҹ+[W[[˴>ί{,-&öTi^*}dߤ27ns?Hְm5ؐu[LҦxTI™;4n:nf3fN_#t۱u:A<J1/K>~3R5E{MΚ dƼ"9ŵupJ1!,7OAm S~)_aCט>z.Q-ujZ>pغX'#gYnWQT*`,kn ϭ~h-@JF y )4ѴpЌIU9VvևS*/T'^eix6/}/iߎ`aӀ-8ZwI(~۫wGÎ!1F*9{EV|]KėM P+ [.Q3e+ n@/z8YË&r?jl$P*)liG絝{ig3 tc\y2[T`59!4fO`Y~LW+€d. S[ŎTtx|7vyz-'vSKy]>D5v"i 4dlzMC 8Fliy+ifS?&ũ,}/hDw .">Uz?n&h{`wV&WO54,[`ƈ}gI/Mdc D}kC>hՇ_}>Ӿ6`cHQN vB^EY,ɕ6KQѽk+a(RBF"uJ :'0!u#ԑ&pksRަXsU`\\A~zZ`u#ɤah_u/FFEăGUpw8b;n  4eXҧ,8PPֺFCG:7^-ѽ7n-1nHRa@a& ma@(y_ƚK̚^12'9`gn}ºeo.44Fbvފs{Πp'rncWI1^`\O~|U5<Ak9dV~}gJN~1^VB߁Ԋ4TdXcZ͕*GTk+[dPOօ!} iÐRf> \d*F}`b$W=.Dvjb.2 -LkaoNvF==ix%ꝇ8\2un( -:Jag&(-bm%- ;Aw7m;8}(1YUnE52u?n4U`zU@!mb?`}Ui}A^6vRkS!?S5ߓ˄GZ)7=zHq%QzԔ3]-؊Aj;)_-̃BtfMwA55ENEW*}dּo(4*&nnM<yZ[Q׬ B-ҁZgħ 'ާT' sPXHP^`;XHQEtv«٬J k}֢ҠNskI#;MUao6nF4{2NSeT$ lhh:(LćK*܅ʡ˂8UDa7Ϸ7qx}9﫥ΨJOFV%^>/llJ)"nkH;/ܣ UjiuE;fJYNF\D=ۯ?e;҂> EC-ȱXpڿz8*#8Н[o+A liz앹r 4ּN/͕4Q53I /pS?IugcSP%o =nFW#k?K|Gόwy÷5fjF_m:+4MK[AhFACv e#a 6ɄRyF]pJoSAxg:Y=TL4ff62}Ju!ãF|;ވ2"x(1 zMX?5]⥶Ew 1Et8wm,Op*?VvcKHӶRiiKhʑ[+ki>9Cc+ !9ښ?j rB5pB25v `=Z ܔK;Y%ĸ#~\NQUQ6^$6$TQtE1605W:_Õ2wӰ$yj֖ }3dElDȽWˋͬW іؗoڴ-E9;uriCrboVFHj$dzaG#Բƫ"E"I| {5 "qٗ?tu/ aI"e^^Sq?<͎E%a8Gmv yOi[ h JI2Y~wJ"] 8QTEsuM@7j5 '#U!췓ۭ l{W|cgTAk{i0F2-~`sКYsrNhpV{"017A&L2]CG,kEk[d3 OB|SPI pP'wE[OOiDa Eq>(&c i+4hqG`H x aȕ-gnME Ze~I٘ KZmPe=JyIhjkp&.u<-Oy)zG)!w@ƘP I.{MW཯ LRksyC=i0xK)Q S8\܆䠆z<4b}9ɋFUTx.Q)+Bm1,|)0v;tS*+?[i[ }QWkԨ_@yab7zNVVo׎7bC~X;%w%-[-|goly_m_~9J+K'sEP>y . A]Yҽ`^'"JL+O BR݄rW_#Po̎p̄Smʚhԧ[iFZ10Gp'r~ݿ$3 9j֪`ZYpKI)+}fPX]$oT@i&I11bMf,F53_J: *RamjzGu/MdZԕY`ߴ]Bzz&, ՝ '/nL0~$ cMvH`dìxv`ПCc}YMzVGD ~U F g2\*z6P(iDk 1ZwbPPGM15<Y&zkcǧgأ6M,!k*НǮ!%i[^#9 C!euHf"A`-o|pI uW3 ݲ|?I9O1m*w!' ' :vz&]Sn|piE.z-`7-U| _7^Ix~'džN^U$/˂eNBZp(95y3ߴkn(#Uj byVhϡ?8OE-#`+_Ұ]Sִ Hk&۱(ױV-:y*V}.* l NN~ >f hghzra sy첏ISi7Sښ"OMymPp. J-_a(pJJ+kWR7AIu0ڜ )τIZ+DE 2}nв7ɽ/:ĈIy%2m 3b$6k |dɻugQ>\ucND\hV!\9v(:`p JVf0pp=>`%a7a46u5:t{zմd` Ji5z+'Hw{ǒsw#Ⓩs|" dqЪTنKbu干 ;Qii|8Ƹ*oo̝ej, ќjT\{T~,\}SDx"܈#>7:yiZW}*,C|ŀx.e4KWsXڟqbRE_I9|C SvB,wv\fUqi{'B&"Pl ·n3|&Dh|KPifcuy$)J(R*lͫ,2p)yhLt ou.T?{TrV6[+(4CW |*G!P#6u ).QR׉s0^ކjVzϲ&XS0叄 KJdY-Ÿ78G9]'i'!W운Dug`f"\N@V}Bx(FZCʼn&,n(cnh.8@~+dķtϔ;ܵ XU8W{.Kͥg{}_Bdu+.|~ >T ⩉#U)Zĺu%J Ы{xv!Tct!J BH̐X8"vZ_ܠX^V*g3YG] )nrLӓ~j+shȽFPXFN`JGg~8cTP@(VƪQw"kbDnCE@Q5$^`}~4-d`aAu>b7O| d 㣝îm|"}6-2$ʤQ25դmE_k#2N?"g/_(Ѓ|>lOTM|Ltw`ϪFb1"Lo?W[+9“ 3T&E!K:VqOڈ{Ulu%,:,L#dldW"2OOg?Fxssg\8m?1o ؕ:_*ݫ޷PI ` ,~ycZ)UX)?=/hnؤq+K+1~+< ffgԅr!Y Ղ w[yrvFYd$=w3r0oU/{X{@o:ϏIԆRG1x1'ly:l%Si5*]Wh9P,j%K୎K>Nb0v&4()cHIO?1D^ܧ52RĤj"w5Ὰh$H9HmB IK*ĢUhçX!g䉈rvΒ MRZ.\dD*Z8uC;TǍtgvlXO͆@ҴoؖlXcѩtYÚ}S8!{]zv'HSJ']Q ^=QƸ%/J ge; S AH9$l:r.6j; T$((,o`l> Vu)d;Kv9_Q/XyY)=Y!K+Be!oUpyx#$$q2- xS8/Itx{UmEJOQER(ZPPna 2~W:L*fM>Rαh >Sax!pTTkW4 G9ܪբx{6Οp/YpZP?O^ި>/zuӂ .98A=LdL`7@ZJD :C(a QdMN)kQ ,aQu3ԴM)VQ\3G9djRWRH`G(*]?7?۸Ȇd;G$:ǴPvR"%go?RD(kcyLnMѡˣO` te_S~IӪ}֩.کB9gPEItlXU:jkI)ezDsbkU֘ZdT{=0vo){jJi<XV8RT&5콝5EJŜ8X%769 /L˨|1C/iy^h/@TF {ܶҙgŞt\&M7 垎W>ݮ"&X޲~\2;q6F<(׽[ZE (L* LX~M2VUKٵm?0fH.O=vx79E#mk '|ŲGVS!m-m?'IUh$`ʎ"eXiLTPe`ܷ lm|4$ʜQͮTP\2cO-Cl&9Fr=> iQtki[42BOϯnF0a=_[lbb<3+^b(G櫻;?ٮߔ8b ( 43Qd@%4s47. ,hΖyѮ~eWwDx]-jlBB6Z|*phCHt ȱa;f=o B fs?X=)pWp%nK $i햚͒[B`,͙H_ \mIbiT=}`/IV9dr&qP jݙM>]ƑD>VC,t/6FByf11iG ,C\B/PqR!5%8is갋ni-{tUD_.< hva|#͵>Q_ubl3CkzfaA@((t}ǦcqVQXeArd.9{E#9NaӬqP7&,Rbv`s$!(}@}v.8b5_YXUk"g0)j#8!O}ukh֢oj^ \M !9;_ׄ]C`S^mROK^s8%xV(|xjQ`4rЪL(Tc$ɦhn 6ͽmw!`1>?x|@^~T*Կ 4XYbR{E4ENz>gǤF)1[5VQ%d+:35.8HMuo~@ν?B"ְEsz%RA"?*Aݬ3ﰂ >*˼YxK{f6H`/#*x׽ 7_-uCC}Oà2yvAEmMwGVuAH{Z;r{GL (*^z?.7b\[d?qZopn]~3O{W 5DJւI/rf,8<]GKT bvXfMǑX[ι=Q~ %įSBn t=3{\CYf iGXǖ.a{:I/I\/kSdU(yW"YxtoU+Γ˹tws-+#Ndۻ2?kp9P1Ofo\xt5Zvĥr$|hx6%k}.%qʙ?ˢS<hRK90hU}.}`QRo +w:h:`;2lL݇%er. ۬}'X$8wt vJ*6'~blrn rFsFƃd9j޸iGڼGS9.{3~'i&D fun.~: j7В,wVBuw=0( }. >l::hGfmo@e7K ^$!?4: nrBE g׽ ~4h^i)>qC58ۅ+ǃokk,I ~X:(pYZ"T&%BKw9k\NFiD$뛼 06##&4zDy6}F^ T@lWXBPk( dbk gH{K[qa%ޭJ]BTtAEth$lJZ-jR f"okgpǢΎy$::Tfhbf?+LO]!\Xɥ{uv4ORA $ X0i s^5d ]ZS{ʝB)0\]/>钋r+0g4g0'g|M$ ~h{/0Df'u%lDEV42)fD=*{0":5&644en|x9Q3L$f1\ive]w)T.C&Hc0>l4F? &?n7{a}Z@P%&WC83Wm) JBuw x8JCg;7h⻑4qkP] ؃_ ڟmzS>#@R` DDOI'ѵ p{ouw i=$RǠm5s ߟ*Q@oHzs89] k%% If ̦|}}CetHU](4#1|9O<'iljO9gpɃTέl8|~}%n[.m+Ț4 X|KgGFIp{_-yd{'k9BݏtTi(g==qQ>/t(~51z1acM"O=[-67)}|H'_뜮 SRMS:~0]*Ck^FЯ)dt:𞭥 *SLh_gqXFfnyPz+f*"y;wѰO/,i*~/w"JѓcfƄYdn} e^Q< ə@ ;;mw=^`e.k;iA"-JD Yb]3Nу}f?IȞ} ˴S2c/=׼RDEg"dp[J۹ao$3G"%Q[z@J@'\gg:ǎ-xv W'q3avZׯ1H|]̱Pؠ]󔶛t|~!u\0}W|Hx6B0^1d_nǠG+S#k# m6J@ьhskڛ:_6c/jX:3\"Wͽ;7FLH|811/=g( <<a`YLX-ݺC3eLΦ4Ahu{Q;\ C;l0+ (q0;̠7Z 7\=?}?%S$lPd1i0ܨQMv; Qjj}k.icgsw+ȏ׸1r9h[0}l^zDxP;!K \Ulv̉]U& V$QKzƽpu3(g]|gLD>M5Ȅ)}mL^ 2&) i$z=f2+03DKV>7s *f}}L^ xSO& ypQ29KEe&ZbzC9׼óSRgHFͽ&E0 y4x+#J[4F* SG e4G^IU3o%)iVWr[8A؈ⲙ|rKH]l= fflOnKGVW~ u/LFTHTIr>d1rNK ٭R JRVQiP'Cr8}tܙH2 h OD';OpC9DԳK<kV∽6q V$ߖċVE_aJzv~.滦|L-)T@Y̋[%d*?եWQa? #+>IĜ>I0]?~g@Ƅ8X %-f~K-_L8&a?W%^0J#[GܱLj &8tNbF?lhjչZ8[bҪRRYIpVF м%X_`;ĴH Ʋ˪=mhy;szR%&P&Va[ךʨ>% OEi3" na-")vo,5;]~[2< ӧi8gg etN^V/ח'UINh=`}ez~@D&^mʌvGsp=-l3CE$,|ܯ}HYY@dAԂSH\ս`$؛LnzN@ȡs"|vիT~/6 ta!FEKnR>C|@7akPzAm8Ŝu9]TvMxW/DzTQ&㝡iJ"S|fkZ&kϽ.z'0}M1'#cúI0f$Dk{q@ B49gXd& ;ޭ&#`}M7S-am@49n${"Ӭ DP5I ҅ VUSƦ FyᅫcTVPNY-yRM^#h'W', є0+Ʒ|A3ׇ}J弋KXL~X>suY%ZivD@d G =RJ ;J]m5;Vz&uc'LK[& VFhWpWbRdR^HdLdY`/eutTuFd`Vnf&7fyc$ rc*LJz1⺊\Y} Wbdc^i8PwJYSSfd6 /d:iN>L-?!b"tF23k >n:1ٷş0I^MZ58V짇 kd9ϋF1܃8#-GX|^Dt _:ey؞Uɶ߇6ي딵qӨ틊MH%{Ř ''T"4 qB-j?c6'vONSWW(P 6v1?^Tzz;QXe dM۟٥\ $Lcon-}Q!jO.Qo?k7͉]!S@ᥘCJRoyT#B"E+jpag=јMOpN RxQN%굽U1q 9]aTi; VY"EbMs +ؙ,]STP푃 | buvO{z6Iٕ6{"v#!v,J9 QN-C) ~F0np! ]yfgȡAh *J1*i rɢ]1*<黖EBy=H:^"2tb}P ';Liqu;GByGkXF?sX]L$ JK 2b#Mha kޓJc쵏t'{J${lq=s+ʁ)ŤPؕN Ȕ5@KX-zc K7& H'695bOK1x6`nG~HKke++s6hyGy^DͿym8!_#?RC, l_7{ l"5rBx{<29CA&fApƒz.2I#Hkŋ&)?)tիΏg+Ř/ĥ#.H1mN'8d a:Iqi824ԧdڲ^Q犢]9lM5(Eƥ${"Jq½TV@j6;gQ{k (]&\i)9`|2 <Ϗ]GM !*g9hk_ nTG6>vS%w@θ}%10^u9LF[A0̇8=jzͿkU_J쿩ַ'` 0HRR^lv󦚚fH)_F:ě<cY7&f)t)\8)eP,񑳶G1!j" DbWx ,&~IO!MZ(/5>^ؗ`;/R| ]5LuhDB*b"yֺ54ϳ8r;|l*p,!Xo r%PDŽhzKGv1E=T6$g#')qAu߫ U&%6Hz- 'P᥹DQJp˪3?Fkno~˰"9iqŵŕN򚶿{{~\IVHm{X*iDJizmy(]7Uu~RN^TW5D1~,vG[nጥE^i#0oy(%$!t JK<,FJ,k[\ plDS7V oRV~xZqy07%-ByuoOA(v捒eۏouTOF~NI0%{Ip*0do]9>1L{.kCbr̆Pv)E f_*!+R٩Fj:wngX1LO2м+%{ ͰULNDn1L4ԇ!]T(hŎ5e]>,(&[^"& L_ ο*X/1^]'tQox-cJVn4;=Q> {{sL}OL)6L3UXV=6 K*S6<6UۭX#]Cf }O5 3VvKgiqOO{%ϣM[׫RC,2v W]Jy#QH>y*ѝ OJԊ‘? dJMtd kȺ[}yNs%-^e=t+CTYLWp}WK: xK1F zyu\=Nǹ w^oDw"&Q_#*4%Ov$$j’\ '-mw 'n>@X9GWBr'xa|6BlLߚ w< 0'Rx}fG3dKäum.w,;k޼H+2!zL7e XKvʆ X\NgSR6 TmP,4E@:ͦ= ?[(<~nN49og빼s%FyT>} r1%)ˠ&6[Ifbԣ8=Mu1N/a(65:aq[yRh bNѻbu ҠpJ2(|X!>`$zOXI-%RnPcXI54ϕlQp*Ha|_l`ùt I un;awe~ة8 sN@d-.x8j2g c_~>( 梓qސ)XwW5"؃?w^ Sc=fEݘH;ǛyտDMuS̘Z>y528z .1 Hػ!+%FA\uvjj} Շ6g̯Fl/ܧqB 8rlڗd%#+MtX}$/mx[wQ"Zd}{5Q[9\eG٥$Fzg|WgyVR5XɧFm^.1G-|C>`BcSA~\*ׁqDF6;*IyZ;* jUx6? @6W~%^4 ]kഽ|v;ps/PE.dsI S/wBk=g粈^G `~z}rg6zxR{}Y=獕[TJQ :r!f9`1U0o{x*^ˠtS(A3.]~9vv#QK *Y/Y kVLi6G2Wqz5 ϻmZA,5$ź2T^cS}+K%5b>rCJ:>֫X1sl>C; Ȝk8YW"vH@Q܀IpJwrMؕ blN9}WbaIy@ \]./ǿI]O,"lu Eo=3ۃ q=lTl,fmO!^kP`tKTݴ߂`fW>`dy:D`v|fzR')BmD%Qg ۢp 9Βx}hkC.I,qܫ/aX+3yV.Gڊ:̴"\rBf+5-܎2d_`͠Lˇ)~>&^iyUiɤ;[—ېk^;n1S[Akj/yN22eMrK(v'h#@|B_ kp0 dru{E[P~ wJT! 9N.㡢}0r]Ohχȿ&n 0+_|vٲ/~&7+Z2`6c=Мʙ:"k[$s~W{T*<3]Y?]=id(R %؜DKy͔5e;OMGܴYThE~<`CE/إ#Ga]uSד` k,@LEqQV'9/З>CAလ3Z~l6#-G-C+Gr:H&GʒUἲ|Fg,0ԇɕ͉F[hb+lX,mIfԋrT!!BGꅽeϐ=pS:O&Vڅ#OUGBfO;0' JoHUo COcv`.dBL9aM"Go :|H̓H%%a44NK꼝(*0Ǯ̜)S%/ -7}1wJ~SSIu+ gl}:;B}ICoFPV᪞ k쇽 E fWo̴ØCY8twbu173z:zDo  3!n2s{$5w?{Ҽؖln<4cݷKDRK/PwzХvۓ}lev_#"S ؖ/=1iz끧~Ն M^K˰$lh[wѴr1TAsP%e-1W; ?cqEK;kޮ`ϐ8^̽xL껪>?ZF-嵩f=$e_܆ G$ff 3؎8Y I>~aU\>b`{E {}\Cl}9^cGZ|"aڰ7xɄ#9|D:{)HKN[ i K;p">\ni"%a|6:U7KjZea`t{$-h 7Xo~IH/m=g=q4`u] bT)>2hreGu;A\ikd[LپR;2ìVk0u9;>ٺt,*fOF[?Lcԝ谳ZK imUMNU/z ?º?%U$k܋ma ɜ :h򆩫vͲIC]a1baL )V- ~K>Isj)"zn HH6x)鰆+S:_g8KMmD=_U~?,z+ P J1 WQ/tB58oY!iQ|c JN  *4/OY9-cC%q_ sƌ9|A O.z^Ya{j)2X1֡@' JmHyU@ttvauۄ LS"!fW\]Ć_M mJPNX')n]R'o33, \lJn/@z;Js?`"K.2ʞڦ+YIw \nYOAN,q 7^q:b؆B5`ɫ?)AҨ -vYisK Sk$~K?n`s*1aw&sNoMW0nv]ژ4v,)Eia6("{@_T~rzV:4=0-x/_ͧ5KtKɫcW,"m r R{ :s6>v;֑㵈W&xS!q}}Ʒ=ز5z4+>RwTxv:.ꩱ1}A$$'g]YY3x׭eGcеs}\͖="UBUl%L'  .py /#V2/k5Ϛy*4K -u>XɺXuC-I]>i$ Vyy G$OY~])ʚņ߭fNFμh#R{-[Mp6* "I63qO]ݭSn":N I8v7T  fb`wgͲyC}{n iF0{Jv;!_-9¡E/*PBpmpz[7k% n5A1T[Ūźv$tHӚi\p{زoue3Ѱm?bpIh)Ɇ5v|)4Rp"btCSY^*<!, WX[dS!M[rK:{+2N"Oe.aBb*} 1PMPqorkT"K̭uO!JX׿/1uy|KPָqi6+CU 4 Ƹ.eXAEÔ΍ix`~pa0HA|[G+__RŘ"ں#@G3uπH){̥9}Uvanҡb͞w =4^hMRJdV;uϱ\xUzi'~]%u>J#ۃg*mhx"o4Bd4kOE99sGx_fo +n)4!8ĞQ4.Aѐ/G!Z{KTRq<t^efGC .IHtUaP&1d'ZmJ;*w ImZ 8ސ^oVԵo@圢0߷xHc*F32^= Rl2՝΅>fOyG%L`[jIK8-{xɨO7yl $)XgՎAA; }b$ FC h(U3R˜VW)<;uĕR5i'޿m,EWnzke+ Szgmt<*A 6j&,|jbm"3~B8JjDۿ&}/{FSj ϠS}*Y@nIjI?Kt:ě&c#F#I >gTR7ŷZeՓēd|))nϐ@*rSܘQ"ڲCځN p=y%ۭ86Db2Eg TŊ^TYч HoNJhVgl ~ Zfp֍ G{(p%5ZNCYKlR&ĩ]7Bi\qmZ⬾瓄_ n?CL,cv9bq[FOJ3q75RbNmXh>Kcnw@ʑ[,(5H>h]ًpHWF4s-zz!奈ĨdWT\Y*QdF9Sr-*؎YKcloȠWbM^rKpLC`A7}D%RL4.pu{']T,T)tjk%0s Ӳ|t3\KKK`ҞBo$t:(1eboAγl%d"]l r*MIZ$xՃ4bH6JYOV,3Xaݮ|ǀ,nRXwѸMPFz`|rfÝyS,j ^3 OchrMt2w-\z/}w?8iNJEA$3Hy y㶊GӶ\]H=ȸtמc2HW prr,!̲[:eX0V\oEC;P bBgsd'nȸ2bBj2DC6#3 ksH=]pԐZH\"w[Bَ[gjnTՄr_'>Y |>Zە)Wϡ2̉0/WkX-ί#N~ĺ$T?8Mʎ'Q*tX y2 |)< _+f)Jy* < mE+G˷7Z]ط:řƺ&jKiNB{_9ߖt)VM /Ⱥ,j#DY`gD[e*j慵}hLw*\+;sO3fdtgѰkVrqL1>Jf%\'`(]:q珹ڦ̊Z?qs9 !>GFڦe!$>{9_Za$j(PᲓqTqBl,--;8QAcv7 agw@ݑ`238!O&./W 3bU]'Y_rR{蛧w'&lN 98P~&֋ޙ5(}&Vq5F\l<|,9[ *I%CKHd^P.Ap79)Bq8Z-9+=iR&%4U?ϠQk{E|ѡrl e;tPL8k7u1q*vclgĕYG/6.:fw_aN,:V"g1s wY}&QG(x"x2 &ptaBU~óvx@ݫuT9nk&Ib 3X ;͑ԫ<q^ZgG+Ȥ6DX֟<Əky%5·#s^CWuaQAq` ا03db #/gU#G197|8W шDQG2[\ as⦦.yR+>>)PZWf5,/>#V6y͝ cL#y^Z#_0m#]NWd>)^ i/R]֮ $i MJEUcq:zOM"HH`ufDҌŇ# R T)FF阮58bj/b;giaWubOof/,b땆v(*&V()D_f<-UR <¶MX^l]+)=p.i ^R/ lQt̯]<z MRuGh)YgHeppPZO)pJA DŽ-`g-c$/'9h% .1M,<[ ,g4 <=S t[cQ1]3̐q9]KdGZ6Z)Sט)u.6ﶧI彖>@稆RX5Ⱕz]CPo>NsdJxMzX#.u4Vb Y}a,W)/ Rpu9i!ZAGU ]Z$湿U`POH*kڶ8e} )զDWW'g~T&WDx`nGwJv֖~N[\ib[ja&>Bme=;RBZHmj4*ksk\e5;3oV7LP"O =ϋ1Nk0e? u v7y.dMx-di![lШo8֊"q9(ϕ2t/ 'XiiS`@}ſ:$R!+or ôt":Hm@5pǴ ]9{:G(P g,;G%mWp7d U҃6cq6Q[γ6-я\2s_͖0Ak47YSzC~ zoptf}n?xGanOЁ<";;zP;֋HMs^U1xD{e}4i0j;NmaDo pwuSl[bUe Vر+me&jh@~ZipS%nQ\Tٰ) Ncg'3>R#bJ >3p3/~ Yt2J^z UxVW#=L<0kUC0AZ}|FTon62p3KzQB-aB @^ǜ6 y NY%0/ӕ;7CzJUT6r޺"-|Fo4 >@<4=5-IUEQm|[Ql.Bw9ZgpпAt}xgxXF~SV&ӭɠ #E00ia];mRèD>?.QP]uQLC!wA/4bGIz߽.D,D?ykWXloY_J [ĬV+sJ0Olj *0lEA"%{js39g̥[3޵=<|F;dh t04Dv9}6KwhMn^QG$Xq礇h*(_ dLFqF9p1쎦 ^]qWFIb7>as"=L'lhYw1'! x-(eÃ۞>FՓP[c<уK3.,/rF˭FH( %|9FII=V7bM3ڂafǧ5Z=,ܘN|wT{LYrR&z/9PjHE@*Ǚo&j|k{|!tM <`K/({TNKiVNj>62 ݖQSFIE`A^s klviz G4Թ'w.A+1Ȳl5D7ErfD>]Ͼ-62g0~FiGX"(i}#|K^5I"ȑ1~^:lbs`"F y%H1BQk$ycJz'}$lUPE WdYS. DQ&E76\;0}J?B)MS~ "&5#ge~&U<>L#Urt_ _YFs f9PDAc#ZnM {\YRmAq1 93hQ0RĴ~ +tsruKVyQgEZU\Yt8`yS wD"qeEX! cor od֍|E81|l8gKE=ZR&s(z2E,Z쏗>.,cDY_0yo-` ĽSR0;;rOXV9wtͽ. )3DG, R8 CI1l!?:#I}[MBr$>#&exaS Ѧ%d)q@XK*6  ;])K7$`39˃n%KnCXKp6 +ZC\1IXY:(v9?`ߍ~O-U(=2+6p$E~Lb`mhh>l/tcL$;o0\2j tW=O`ZON:?=xx|!@x߫-ܧy<-igT!udVU&(ڎ(v0 #&U`mjN&rr37t B2W긪e?2!%AҁX]sV?syNRY_$i?5W:"r^0(oԝ} gIw̤]A0F}ϐB_\y)A<1Di)븠S҄0(˭M2M& c*2o0pV?|+wvFS}w]8B{X<cЀ/Ӟ|Y$eLGU6zPQk/ʹpeRl T: ^Ѭ\.?1wp:#-͡}t-]K6y_1A}#6idᑪmy/ Y%?ٲd-B]^uKQr/ #99ּ[8ϼ-|P#if+oY^+}ԕi[u;UytySdC르=fxanxڐ7 zRg?siq,N덫5dNc@NS;Mtґ8gaI*E]4ሀ^C敠;w[9 wjyb&iExWF4yG],7ܵ\ÓN@[rd3AAnBmM~  jڭ<5߬YP?|2uB1hu"T// &qu]EVO0KB mp'N{'~2|Z4BUC~FgsA[oԔ1<38ェ(pu6V/hx-C!;"oFG?@b@S!@pW,ݜWy6GG Y(TIk~)\4pEnƞ?{{:z>\R-31l fIuOr;I S$^Hͦ<Ԑb #YndL9"i5,5&%w?#1[iがT^Z4ep dgq[Lߨ0mO^mgOwx@`8Vm_NR*aE+GgyFx$|;gknߕ7Ƿ*m#L_BVd OjC$t ;nK2ͭnt Y.11k4NXE洞ϫxg"27^ yGC-;|K-_qҾ7 bKТ{@-ʮ:D*,|P?Lu}+?jMUX he ?%]H @34W["W5dua.@Sy _ `n8 |u7[p[ZA䖶e8_Zq%<4_ yg .M>8<[+ cga?7C1O%Տ}eGQ2\/- Thos6<]nW*WPWb5v c㸓`l -^eh!NEkF?@#q}c _G%0hgE_jFVxy/pARe AGąE&BЗ"rԠᦉ>_dgAHİ@i`?5V#Q-FCwl nKdhҁPu":?wks棗廧W6Te\m4~fYGAZ(Se0C0)cZJ?1=LkX R aBͫ 1zԄTC-CW}sb5GۢrŹ4ǧƪ*SK`o /\I[1q3mF I_)w"lo:*0T0H%W! ] c[xSB#uT< o[9qBl{z_ tpRf^("z2OUóE[&CG!1+ wTJ-}\P@S*>Y]Ek'} jI9J|\ {܏[./Ź.Q^})^AXaQ?2%؉m //pUk~y$+:h3PsVe[q<'5B!g۳olÊ )Åx] uZRu^^ͫW?J㯥!ä4ݡ$0d}TpIg}YoJdN {mb%shr+X .V3N[ {5mQoVEJ#Ō@z3I5!)t=X \8 3dׯ=.QCxp/H2FaYmB@:k;B-]ytQ]\EGW :S1`|z!ZϞrnt^5q_=fSd^*y%P9藾:3o g5W %FSei"8ْ坒*tL A41e4#m0\[qpu3fX oNs~A \ܔ|MzYN/VFg%0tϠOqi>}=n߄6=Umɾ ˁ|bUsg ^BؙVr;Ge42v6 U%2ꪵni/D2 wu8 ]RZ>.뚑 žvhBpJlnԾhRd"Wb[b6o6nIV1C3|-{}_匐 CG*Ȋwa붵 Zڷk @!ʢj4=G8}γCz,`9RQ*[ t 7|rzd d(~f%6A&h˳x HA g5MÃ/$5 f[,f)V*F^ 4VG1d}>jN؏́ L7LG#.(Jxx+0cCd]=: Ail+׼v2 &@jK8{Mܓ|c7QvG;GYi<,X~WvDD(d3Lsm~~Fښ)by?MoSx8 IHtgV'H"ݗDK5#UUG"qԶ^hكZ#T>K{>jK56ag }ON*9~)XSQ4\RHږ)"F$ Z;GZLxy}^ipUǖBƒX¬"|v(f38!$`#/l4|X3~=U>NcRZ`cNSbp]&O >/dV˚pLBvB){[a/svL(+{J=f+Cz=0%ac&+݋ *x-ɐW=XW S䁧I6\vL:f"ńL5A؀3hR/K&FkH7+ Ut/6u6; P ֮閧W8TȟMPq_8Y|y\@׃,ROeOjkG$S#:36'ppj.l6z-+?ԒȁʃHN#H]Sa+; 8<iI C;D& i?\K+O'13Kj)Y 5az 9o/*gԲ$;I'7C1/ڨ7W}8ONb3 c$W9Rg:0 i~qf&M2 .߀ N:V>P*lW 'nMdž\/0Eyx7?s-lhn :t , ~ Sh5 p.Lez`[b*P|[qT8nr9Aږ՟,[FTnjOm葑.[ӒH MR4rd(ÜWgLt7E]o= %]S6з:>P?e-ep$[~ܙH.[LX)ݜ!YqDM${U a@ɨjoS-L$~:tms@ ͫŷF:wQX*iIH`v1:.}m=࣍|UF' g\_g'%߰ xO|0[˜UM.qf5lvTa,nN]LRGaՃ{=Q+}?2d}DL8r&"="˃ 8cu#aN`%"i΍rHehjc4h$wG'>BTsUG;#װc0`ZM\|^ 'Pl_ nXyoX|Ah>Rhz]))յe]D=>>6G`O;78؜Nɲ]8cFyͤF&&_rj} ^l9zόp]qp`Ӊth-D)zl/EQFfvB2k1;-ZIK+jO mrK(NJH>`ӷ߇c6"8B G*n)!K04;j&[# =!Ύ|ը,4'oOUOvVeBb883P?A/ӆ-E2fSGDSZY^L,d^-O~UIs|5˕zhIW|R9'k{,Ԍc%JX{%$0 wG:JM<^^ %G9}&r౼^ 3YlڝuK_&i{d<l9Ah4a *\xs|Q^"N#IT[?d⾤&džܠEhˏ|-Ɵ5 Ir8}JcYsuo>,!(`P&%b&?H7k8 9- /^!@ '3mf-& a+s ;,#b@e^^#/I1 % 8mߒC4l}nL/no9Ltx⎢+H8.ͧ7T(s/plAtr3~O_Ff.* /He{DǴh; uz/\Qfu=CήZ ņD :cˮH`hЎA9cN KwP/ݡND0蔈?d\$("(< kNcmlV[ F8(b&If{\yvOھ([v|Mne|21߱ďo@@@bJ넆,bD!e+#TVf{BERz_:231`:QrW']6E @ d~sRW]%%:,[1*\sWG]Mϙtcra16|wڼdy: ~LY[M_Fy`/2Ň6%QQԩ/4?O9kW| v)B{E jZ8|YEUδk R:}plQ#4}Csd^ CZ9yJr ?'@؋3WkSU]p;_Y&.]ک=iY%6S@n8*dXX #gCfheq]]xp] _,P71FhIoӴpYq?su V: J⸴t*Ie?%\jt&o;}6jnD+FLV2AR'v2b cdښw"QPs;zH_L^ŏ;ͨ80 o;}5 (HHWڷzd]XL0#; ^䇻eરڰF6WY!?ۂV(OLEF9>"xFNE`8C}T7K털nٛUa~5ӑ~(~F=PxK\ H|kX `yGHoH'7J@uȎ.x?XZR!1VFq'  JFZrk &Q/'L&*= <&VK0b^RbH]ߜ\Ȱχ ΞBA.r5f n5 0w=wkuU~cnɛBxBDK-h_e砾v=$h%g7 Jv3 ^^<:zz5vgsrnգ_U5<+o06p%"<¢wEY C13]r;jS"H&Zlz"u*<''C */$Db~|l$uKנb ӚP˷t;#llDSd5w,M=^~@; fVM%bN85enc@J|BKeH:3cgOOE4 %ngpQ`?d΀pR Oە!c*HeRzoۇ@Pa=e$ewRG[':BhѨ~@PjEf`$:;IOY{{][oR;֓?BPir#B0eչ`vʛ]EovŠSRKԶSG95 /Q ,aǣ $30PWu-8=gӉ2%|]2^e3S?*ɒâ0X*Cc{2o35!{7+(3{ &\o6sm*+tv. ?jjRN^ќ+lzO5mU8ylXAW\ݠɟaS%$!$T}X-Atrzw-c[kkn)V1ѡƻhS>e[4XpVXYһ~~ŅpnАUYo.შ0^!0<C4&K3?nԋ?0H X ،z}:漣̻b Ye.Fwlkz..TFk0~-(WnI;E3Gc^%GL7H ?4P2JgSy[=x|o@ax(,B1l]TvI֮XvɿRR0t͡tY#3:xִ_8@V{^C} Rq^+YV*;>3Jwg% +K%twĆI Uɣ%9ÕM˜lGtVBGhd.~J81ީ77V?vaթGc[iO#*-9NW'0oas.(o}}#&[8^Ϋ~ ;uZ)8OSIܯxosf!<BoL_$Uyn$xDa4EH14J_ca$cފ>㠀P86 3=1^"\Խ.]7@s Y_z'^eAzy,Zr5)S9gT=9<݁ tii:!W/ZLh-IEؼtAXdݭ`kAgkܹiֺ7J-EzgG6d*+^llI( ϡCx܏eݲg$?jCl I>ra_#F3>h?V]m(KpRv1< >ˡW@R G*V`-_ G'{G-6>- I;-jZe\؜c&}z\"-UG0Fj 6q '2照jwRY4SL6@[?vRT2 hwz*x~ɭ2 rE(o6NEE 1 }3UL*~ڛ7%HtѮXnDIy.2pUiƖ 'Z@w ?$9 /J%_H"?R=£!)Yź1d*(yP_kg9rqmDb1Ô+ΕiK4PQ>#{b*x03w`e*MDm&&\ɚ¿+$58p᭭TK͘ at\nw48tg66QMYAtG-?_kpu]Mn(ԙ P zWuwnkRF.hPY6ڲV!3~0 \݇1zVyB FI z~&mXXkvuPeR"ҥZ8V {{ҫdžQ_({ۚߍECՃ$C}X;G3=7`a+`WZ<9HE,HT+yV'}7'ZlYk*0 IսwE ~.n苨1\i_ !JHCyu2ZJSGfcv/J#t{0؊yNr7_,-DW҇w9 seNt>E`Y٬ЕWc?tfLwNe{0(3\pVzws?t}^"/z٫3]ܴ >dVSE,Hd8N8wp*1^=‹Ȃy׭@#Ð t8cyV1Gzz"vgCL;@pv%E:"=yWh4 rz^o x$jL ^[_8!Ж}a;` y5dWD~;ZD\mhks{/"BVH4!+j e'qxExl*4KOx2,"YΣW@~?uXw3$rw]e =_$^G֥bDiLwհ 15}z~n4oYhFݻ/JKS_Fq=O]; K2.6J!l(Iڶa^vᓳ8N:|2>{ _fgIiWҏ]+:lN6Mc`3[gɠ7v AbP;ƖIvhWaـ/#2DMWʛ0GX鍵l.7p<Їw7c,&%\ar3۫cm> Dn?n(~,fӯo]N݁e?\kϚһYRVF;C#H/Ycɑ(VdZ++qS 6|nM[Ip$ܽyͥyMu^|w,+QWz/2?((d ယ^\2СL\D@0X낇2^hhCX^JX%caPot>~9HLÎ2rrNEM,TįxXH&:.nAF^R?60lHAb+,&ayV\[xpmR$_^S_;yI4 / ?u{ih9l`XKa CLz\7QYFOD\8ԀYeD@U/ڍL4J`T3 n>BySliS&)F(7ꂕ:`J_:XI1ZkjA׀~|UPM?ƍN_7{FwFgB:$[{R栭pp֥`~Dh9$-]%]7C3 *fG}Gx,EKRh919Jr|m~gt` ?(,!f7.S0bd77ؑlK? OR.Y:f~zQ7k `ik[1AH>( Z72RE/mwl[iAؠLIY7RE;J](CHWsE 叜[uu_b^JCRtWIg@ > kdfe!} w7_ҞLʈU}uki*ndQә1m1VÈ*pƮhٱ~$ y/JuXN1ѣ=J5*ܰ*R Үוc1"q%2:~R=//c Ve=%bw`m@aL Ӭ&p  ݢpH޼y_ibuLgi&8`~/xbhxWr9 |XCǘHϺ RLṭF'N 4 ydt+5"'#YP -7,DB7ؽ3:{*1.J&J"iY?沭t,a%TQ37|cD r mCvŶٷFx<T}HTAOCEC}.6>z^o+@ o3DӧĤ4vP@uuxv+~,J$-Njst\o"ԗ0e6Li4a$~c3LR/' grhPס]q Z=a> e9* $}H ?(,t4Ϩ4J yw][EwpUR^g,`b436).J0yN4Uo1ae &y۞3{LlF 9Ds&d8cX`-ҳ]@Z/GQ 7Tk?_Nq3Ǵjg`e޺"\vs?B3 {{ij0]r&,'SWCShװ;1gEs m!#MVr-IK|P礧ӞWAf =E L7%4V+ ^RFuM)x+fBLyYC RBo^GZ=h㰌<3J%fedٱVnj: ˌ /tK%PsԜ[◹J71s(Vc3) 9}?.48T$$Q]%,I7%0oN~s' )p*cMnms!T ,yn=6ͿtѫJvb}N.xkG;?ɟ"|߀1|{أR/VI#* 垰hܾ>o#C=06yJp1Q73? C5! [o1huS6w9yp~]0KG&{LX3Qi[:>^-q4 |!&}] IJ X̨&4F}b.벮//k/椾gsfd<v7%xD-#IJ8@R+Z~z~lEFAFHbum7BEk UOG/[ \%F :+s2* hPߤն3/߰E siB?lin&wʷqXQ6@O*{.ʭç /] Mv;}R\a%y!^ȏT!ˈO jz3g@2 nZ4SVh)<O'$;i(=BQ#q/Rw\d|XњKƁ >?MVfSQ2ީ 8e ;KW⯞#46.2*10o,~p1PbpK˼Ε_I-LDUfkU8z_' #}wI#VB@<}2J2k8/( AQe Jh;eU2?ADkJBFm>3C?*0FVO,6br}>֪ .єv]b1+A[ɡBK F&\v#S2ej}p:xՇv,o}ιq1Vp䞄( CP'ѰnITYV&i֢BaePތ(p:5DYvQ#+m1"k!?NgaJ} DqlpWv3ꆤFuK%I}Ge+y4G0>Av$P1۞Ƈ)+A9%B'@_R}؝ė-Gm+ k?:U=wBw1ZV.8=6 _@K&W/y5Klm sx&;DXւBbS 7aU9JMm:NF@HfQZ}nc"# F2g4Q< AT h®sQ  (i<p Fږ "VoCw%qcƜh7aZ ߠ?Otϓxtu3%SmD9H,PHx\u h Бp'ir\hl4 Ҭ"g/pr*_X5 C|SP2 FMiUСބl Q͎8t`rJh(\,V~u{_mQQYԊx ƍI[q0l:¼f T猁S HIyGZ7|]`/ < `(\bm].F-tݨ8&?$D9)CZ+h2qNM0'ϴr(IWʥnPV%FuS lJF hD7A{)pec4=4w5FdQ?U710&bvl63JKs uIMZf]ٳOۻ(cy]ݒ~e4BX TTD'i2"UEUI皿rh4ѯ5sWL Ik-U-Pj\å*nTq}:Q'վI<46!ZHéc)%_XMI4O6|A’sT$̈Iө?u1^KшS^fv]StƬbD 椎.wo:.rTKXsy>"2qN1Ff2]MoO4lתPڰ 0ŧhM$B~*.$);: utv[gfGQ1|)IVpz[TVN֕_ ^ 8LLs)}ބw!zN14jP1ϸII=SBHSha^?"H?v>GT~ȑȺZ\io!.2"p';:GC-#2ݺCf#] **8[YWEOcQ>SQaٯSNG>:ы7yOP{S9eX9׀"D<.NwcJ4Nq2"Ia S|PPvٛ]RܓncUӇ/QHPy#D]jf RL2tMݸk Z=1N oBouš)E#Y]]:M{3#h!)20v7Ļmjiv0H?SQGsKDpC?L>ʜb4=}w$r_Mޞ/'qs6vi!k=-D UF3]}B.AGźC>93)3k9vR_q$k.xKK|9ťf}ЖB ~ b6)3Yga1 R>)cwxOknE"͔OYD.D8!zUDX,lf& Օ'X`@U5~mF%`Wdih,c[(A Po;Tœe6g,[:xKqxxQES n$KHC=aР&*LhACUtTdaTLX#/x_CфUNs1DvC-k³;pm/ 1$.0+ pW xO,.;DlrE21': .y@!!:p^GkA|[ փ\|1:zwCV=_H~e 4 Q -P Det f?؃|s8;Fh5(,RvQjOL/dhtig(+@o&G\ Doԉ&4LY/L!> cӈgI߀Aoo{64nدlFp'I| 0Q_=F ~1G*OUՁks$ M@\ebp&DZ){{~YG[cɋnFtLA[ҝTX%ra'mETg {=sV}}=^7[;8 8s L; m)9L?i,N,5!fW$WQh@wv|9ؼC,^@Z[@-A:}&D%kR–Ns7-r/g@M ׏Jf>x,KUgEI AӳJ8Sz.Nu=?5q\uZ3JّbLVoa(ָnM)l gTm(NSWق_`o;KI5mc+`q5$ߐ/ 4u+lҷ_/CzN/z3]/]UP9˛LL^mMiUx2hL>͋%dicw6otp=:nIj<=KH_zԝcboL j,9~*4/nz`j5AȤ SP'iv헕=3dTJ?ӹ'Pg֥DUƺ&n*W'惾.2<ඡ֯X6JT uɛǫ)O՗1IF%8*i}sq+I8KV6Po|mu!^gb IZ"aɼ8B:`:H-3!mX!8W LIsAپg-ޖx? -qfkFd*ObH|(lv3Yh[!0 #^5smh0FJSr7֙hZS]R >>^0 I Rt q'!Dz/8;'/.e5ܮJ9~YCQ?þ=ax)?)YY3>#ex/&[Kqݮ:H(F ;~\wQ`$"?tjs}b'!c|l`sR%PUxH_6㋌LZ;y%U&ssշѓI2čZ(!Id VϣӣLY 7aE.0*@qЄ}Lppi&9 >^N/9_02~`S O80sgO樾1B޾օٖHIzRNіAH1@V}E5C)d="T!4ƣl Ws@g4 $/u6F!Tw t ^P&%vYf3]po~aۃmc"4hfF˘<綞r0K@毁/B.SNʩr#ƄO.qTC} %['G%/ *BhF~˞妲_9bf<[S=L2p/&FCuX&r:I7vlG:c ZH1Qum^8-1ԱDDUՈ@T5wYe"pn&3RIR3QHsNG4:|XBJ.-riԯ)WZ傱 'D3bKNa9u jfD4m1U^زs(r {'^ FUDDw@׷~@%+Q$o6df dSҒI['{k#5M06)3g+:s ,V]M,42 )т-"j0 b223TN{aH^APT|`xm"构a)Ѐ`][M <+hN'"lca9̛cx ґ@/Ok?(6bt+a*KY8G=Ʊk4cϖ3{mZzWGŪə&;Ŭk}&]:qcV#FKyw0ކ,WHbI'jȉnȱK%Zx\F$4x5S#Jz&08)UjE jF0ԪNp;] ; < [Ԣ7 NHXpHvC&X$*¶{%N(9CDO4=-E[%$2riQ7={w+\v=`5CwSP&%]|7g+za_J>̊RPnr+0"2ʙp~ em"ղܿEI8 !؎wk9{>F9?lw}|8 ̂_A G&.XatafфWI1WBHIUŬġ ,ڕuO3-0WsjH2C߶Ql<+-ƪs0̳V5^{tAHf2C]!,0 |zSg}䐔i*{X/7kRC2f+'cPi߃xsF>Ď+Jt7z~4m@m#w%.ؠ}nFXP+l$澨dMbjud jUpH/,XOJ j` J-{rt C[[j `g}J\ǢsŻW9 -cLL'ITS9pW:_ocTnkUo&S\8`gEloGS:SwMME 4HnT\F_ow7fCZH87Q}[$@8A.eK7߯fr]-MCW*uwe4処]꾌sQ|Kj Y$by9qdkH4UF iDG:pR0X$eh^v+BwuW~kBԆ8)00N׌up:$oqJ ~VJۦ*NzQH2<󚯂}K#|6uoRnMX_!߱ǙLOVۯ\6 ivjztΐd%ղg^rp4BIEtRO2 oi~q&LRɮm "myzD)d2{o[|_ap9\5Htyz]ihLk43nֻZ[?}>xNŠxTyt`ZqQ8j &kZJ@0ڣP MnsLU O>7в~1zll$!6i'59ֿaYZ2Nw)g(o68V~e?|OZsA',B[G M[׈8"XA/E*@,pH*T-n?@H]]_T:5Hͣ[6&Ϙ^&fH!UVܢT+NDwHUӡ/}hP;q"|u0J$+t$ZET}M˸C¨j=C-`X!F̖%AjߚqllʺIZ}Dü[t7]Z4!%VE5<듶&PD5bp^ua SJy=Me;UO mM9eoYidk] Ec>p9HT)Uf(]i+|c9<=!%]{BY -?@:tpY?7[ &M͸Pi$b5ᇕ҅V&诿`yEԠͻDdv b4'uP_%ƧR*W%1ߥѨ $Ah΢ A8p0*"*s@EIBߴwV=‹7tt T6):KK{jhrGmvncN V&SܵÛJHxSWav[rcLSjZ .Dm5$oQ#ɏ$eD ^袤z6Cs_> 9િy.J궔b:µsAy9GJd 6>?PˣŒNS%$3Z)NKdyޚiccrAj;RHD 5jINiȴ"C+Ye@Ό4n:)X~n]i+v$5.=h|IWo,uv |d5F|o;V?xᒔ q zE{bJ&z|iJC 1o)ʼ ] >3- 1q4׌4H{!KepRL p$.a8p:Tu2C-ӺG a?6xYi*=r1=#HkNn-KT}j lv"- ʟ*OM<*UV!qsr\1#y; <-y[ B}f?'ޱЩsV74F R2~i1mдk@WmLMf(Ky"ORsC"?P3>RBOP9kd ֎vedPN>is·A穻E+ R}LIcV*|20Q^)/I%Q^nc5 ȄMqXk4ZKZpaMmP`b&80]yq(;-2םq!ϖDz},M/?HշȜs* vZegp)oQY@RuP ]8_?VTEgqpn1vP B3B]gnl;Ҩc9dl_&A_ޏW se~e6I)q"lԇ6Ļٱ ^YM[}:[U g52/@i\S$؝뚆lX >@=U $.jl *+{sL~0d,#>|xoϪo $A]aBYASD:!@Cr|&^E4]kK0;y s"Wݰu9ɬ ?[IF!z&Q6ہEn(4R-K\"KC8#fD+S-Bdzm/@.Lõ{֘4R4fyX[KUcs.]$cdylZN3w3n*"-U~<̘fB‚g n&\lZEe~8wlͦϡ׆Qʫ : YZ