From ef39e04e2eabf0d0b7acb609bcf62fe73bd27e66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=90=8C=E6=A3=AE?= Date: Tue, 23 Jul 2024 17:52:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E5=B8=83=E5=BA=94=E7=94=A8=20Elastic?= =?UTF-8?q?=20ElasticSearch=20Elastic=20Kibana?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 萌森 --- .github/README.md | 88 ++++++------- README.md | 88 ++++++------- .../8.14.3/data.yml | 60 --------- .../8.14.3/docker-compose.yml | 37 ------ .../8.14.3/scripts/init.sh | 21 ---- .../8.14.3/scripts/uninstall.sh | 10 -- .../8.14.3/scripts/upgrade.sh | 15 --- apps/elastic-elasticsearch-node/README.md | 117 ------------------ apps/elastic-elasticsearch-node/data.yml | 18 --- apps/elastic-elasticsearch-node/logo.png | Bin 52594 -> 0 bytes 10 files changed, 88 insertions(+), 366 deletions(-) delete mode 100644 apps/elastic-elasticsearch-node/8.14.3/data.yml delete mode 100644 apps/elastic-elasticsearch-node/8.14.3/docker-compose.yml delete mode 100644 apps/elastic-elasticsearch-node/8.14.3/scripts/init.sh delete mode 100644 apps/elastic-elasticsearch-node/8.14.3/scripts/uninstall.sh delete mode 100644 apps/elastic-elasticsearch-node/8.14.3/scripts/upgrade.sh delete mode 100644 apps/elastic-elasticsearch-node/README.md delete mode 100644 apps/elastic-elasticsearch-node/data.yml delete mode 100644 apps/elastic-elasticsearch-node/logo.png diff --git a/.github/README.md b/.github/README.md index 79a49e5e..b1be93b7 100644 --- a/.github/README.md +++ b/.github/README.md @@ -65,50 +65,50 @@ ## 维护状态 -| 状态 | 图标 | 应用名称 | 应用官网 | 短的描述 | 集合 | -|:--:|:---------------------------------------------------------------------------------------:|:-----------------------:|:-----------------------------------------:|:---------------------------------------------------------------------|:---------:| -| 🟢 | | AList | https://alist.nn.ci/ | 一款支持多重存储的文件列表程序 | | -| 🟢 | | Bark | https://bark.day.app/ | 一款注重隐私、安全可控的自定义通知推送工具 | | -| 🟢 | | Casdoor | https://casdoor.org/ | 身份和访问管理(IAM)/单点登录(SSO)平台 | | -| 🔴 | | Cookie Cloud | https://github.com/easychen/CookieCloud/ | CookieCloud是一个和自架服务器同步浏览器Cookie和LocalStorage的小工具 | | -| 🔴 | | DeepLX | https://deeplx.owo.network/ | DeepL免费API(无需TOKEN) | | -| 🟢 | | Dockge | https://dockge.kuma.pet/ | 面向堆栈的管理器 | | -| 🔴 | | Elasticsearch | https://www.elastic.co/elasticsearch/ | Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎 | Elastic | -| 🔴 | | Kibana | https://www.elastic.co/kibana/ | Kibana 针对大规模数据快速运行数据分析 | Elastic | -| 🟢 | | Emby | https://emby.media/ | Emby Server 是一款个人媒体服务器,可在几乎所有设备上运行应用程序 | | -| 🟢 | | Emby-lovechen | https://emby.media/ | 【开心版】Emby Server 是一款个人媒体服务器,可在几乎所有设备上运行应用程序 | | -| 🟢 | | Gitea | https://gitea.io/ | 私有、快速、可靠的 DevOps 平台 | Gitea | -| 🟢 | | Gitea Runner | https://gitea.io/ | 【Runner】私有、快速、可靠的 DevOps 平台 | Gitea | -| 🟢 | | Halo | https://halo.run/ | 强大易用的开源建站工具 | | -| 🟢 | | Immich | https://immich.app/ | 【完整版本】高性能自托管照片和视频管理解决方案 | Immich | -| 🟢 | | Immich-Server | https://immich.app/ | 【主服务模块】高性能自托管照片和视频管理解决方案 | Immich | -| 🟢 | | Immich-Machine-Learning | https://immich.app/ | 【机器学习模块】高性能自托管照片和视频管理解决方案 | Immich | -| 🟢 | | IYUU Plus | https://doc.iyuu.cn/ | 基于特征码的索引工具 | | -| 🟢 | | Jellyfin | https://jellyfin.org/ | 自由软件媒体系统 | | -| 🔴 | | LinkDing | https://github.com/sissbruecker/linkding/ | 自托管书签管理器 | | -| 🔴 | | MinIO | https://min.io/ | MinIO 是一种高性能、兼容 S3 的对象存储 | | -| 🟢 | | MoviePilot | https://github.com/jxxghp/MoviePilot/ | NAS媒体库自动化管理工具 | | -| 🟢 | | MySQL | https://www.mysql.com/ | 关系数据库管理系统 | MySQL | -| 🟢 | | MariaDB | https://mariadb.org/ | 【MySQL分支】创新的开源数据库 | MySQL | -| 🟢 | | Percona | https://www.percona.com/ | 【MySQL分支】关系数据库管理系统 | MySQL | -| 🟢 | | Nacos | https://nacos.io/ | 动态服务发现、配置管理和服务管理平台 | | -| 🟢 | | NeZha | https://nezha.wiki/ | 【哪吒监控】开源、轻量、易用的服务器监控、运维工具 | | -| 🟢 | | OneDev | https://onedev.io/ | DevOps 平台、带有 CI/CD、看板和软件包的 Git 服务器 | | -| 🟢 | | OutLine | https://www.getoutline.com/ | 快速、协作的团队知识库 | | -| 🟢 | | PostgreSQL | https://www.postgresql.org/ | 世界上最先进的开源关系数据库 | | -| 🟢 | | qBittorrent | https://www.qbittorrent.org/ | qBittorrent 比特流客户端 | | -| 🟢 | | QingLong | https://github.com/whyour/qinglong/ | 【青龙】支持 Python3、JavaScript、Shell、Typescript 的定时任务管理平台 | | -| 🟢 | | Redis | https://redis.io/ | 从世界上最快的内存数据库创建者那里获取该数据库 | | -| 🔴 | | Sentinel | https://sentinelguard.io/ | 面向分布式、多语言异构化服务架构的流量治理组件 | | -| 🟢 | | SiYuan | https://b3log.org/siyuan/ | 【思源笔记】一款隐私优先、自托管、完全开源的个人知识管理软件 | | -| 🔴 | | SpeedTest | https://www.speedtest.net/ | 互联网速度测试 | SpeedTest | -| 🔴 | | SpeedTest-Tracker | https://docs.speedtest-tracker.dev/ | Speedtest Tracker 是一款自托管互联网性能跟踪应用程序,可针对 Ookla 的 Speedtest 服务运行速度测试检查 | | -| 🔴 | | Stream-Rec | https://github.com/hua0512/stream-rec | Stream-rec是一个用于各种流媒体服务的自动流媒体录制工具 | | -| 🟢 | | Transmission | https://transmissionbt.com/ | 快速、简单、免费的 Bittorrent 客户端 | | -| 🟢 | | Uptime Kuma | https://uptime.kuma.pet/ | 自托管监控工具 | | -| 🟢 | | Umami | https://umami.is/ | 为速度和效率而构建的网站分析 | | -| 🔴 | | Yarr | https://github.com/nkanaev/yarr | Rss 阅读器 | | -| 🔴 | | Ztncui | https://www.zerotier.com/ | 【自建服务端】ZeroTier 可让您构建几乎任何类型的现代化安全多点虚拟化网络 | ZeroTier | +| 状态 | 图标 | 应用名称 | 应用官网 | 短的描述 | 集合 | +|:--:|:------------------------------------------------------------------------------------------------:|:-----------------------:|:-----------------------------------------:|:---------------------------------------------------------------------|:---------:| +| 🟢 | | AList | https://alist.nn.ci/ | 一款支持多重存储的文件列表程序 | | +| 🟢 | | Bark | https://bark.day.app/ | 一款注重隐私、安全可控的自定义通知推送工具 | | +| 🟢 | | Casdoor | https://casdoor.org/ | 身份和访问管理(IAM)/单点登录(SSO)平台 | | +| 🔴 | | Cookie Cloud | https://github.com/easychen/CookieCloud/ | CookieCloud是一个和自架服务器同步浏览器Cookie和LocalStorage的小工具 | | +| 🔴 | | DeepLX | https://deeplx.owo.network/ | DeepL免费API(无需TOKEN) | | +| 🟢 | | Dockge | https://dockge.kuma.pet/ | 面向堆栈的管理器 | | +| 🟢 | | Elasticsearch | https://www.elastic.co/elasticsearch/ | Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎 | Elastic | +| 🟢 | | Kibana | https://www.elastic.co/kibana/ | Kibana 针对大规模数据快速运行数据分析 | Elastic | +| 🟢 | | Emby | https://emby.media/ | Emby Server 是一款个人媒体服务器,可在几乎所有设备上运行应用程序 | | +| 🟢 | | Emby-lovechen | https://emby.media/ | 【开心版】Emby Server 是一款个人媒体服务器,可在几乎所有设备上运行应用程序 | | +| 🟢 | | Gitea | https://gitea.io/ | 私有、快速、可靠的 DevOps 平台 | Gitea | +| 🟢 | | Gitea Runner | https://gitea.io/ | 【Runner】私有、快速、可靠的 DevOps 平台 | Gitea | +| 🟢 | | Halo | https://halo.run/ | 强大易用的开源建站工具 | | +| 🟢 | | Immich | https://immich.app/ | 【完整版本】高性能自托管照片和视频管理解决方案 | Immich | +| 🟢 | | Immich-Server | https://immich.app/ | 【主服务模块】高性能自托管照片和视频管理解决方案 | Immich | +| 🟢 | | Immich-Machine-Learning | https://immich.app/ | 【机器学习模块】高性能自托管照片和视频管理解决方案 | Immich | +| 🟢 | | IYUU Plus | https://doc.iyuu.cn/ | 基于特征码的索引工具 | | +| 🟢 | | Jellyfin | https://jellyfin.org/ | 自由软件媒体系统 | | +| 🔴 | | LinkDing | https://github.com/sissbruecker/linkding/ | 自托管书签管理器 | | +| 🔴 | | MinIO | https://min.io/ | MinIO 是一种高性能、兼容 S3 的对象存储 | | +| 🟢 | | MoviePilot | https://github.com/jxxghp/MoviePilot/ | NAS媒体库自动化管理工具 | | +| 🟢 | | MySQL | https://www.mysql.com/ | 关系数据库管理系统 | MySQL | +| 🟢 | | MariaDB | https://mariadb.org/ | 【MySQL分支】创新的开源数据库 | MySQL | +| 🟢 | | Percona | https://www.percona.com/ | 【MySQL分支】关系数据库管理系统 | MySQL | +| 🟢 | | Nacos | https://nacos.io/ | 动态服务发现、配置管理和服务管理平台 | | +| 🟢 | | NeZha | https://nezha.wiki/ | 【哪吒监控】开源、轻量、易用的服务器监控、运维工具 | | +| 🟢 | | OneDev | https://onedev.io/ | DevOps 平台、带有 CI/CD、看板和软件包的 Git 服务器 | | +| 🟢 | | OutLine | https://www.getoutline.com/ | 快速、协作的团队知识库 | | +| 🟢 | | PostgreSQL | https://www.postgresql.org/ | 世界上最先进的开源关系数据库 | | +| 🟢 | | qBittorrent | https://www.qbittorrent.org/ | qBittorrent 比特流客户端 | | +| 🟢 | | QingLong | https://github.com/whyour/qinglong/ | 【青龙】支持 Python3、JavaScript、Shell、Typescript 的定时任务管理平台 | | +| 🟢 | | Redis | https://redis.io/ | 从世界上最快的内存数据库创建者那里获取该数据库 | | +| 🔴 | | Sentinel | https://sentinelguard.io/ | 面向分布式、多语言异构化服务架构的流量治理组件 | | +| 🟢 | | SiYuan | https://b3log.org/siyuan/ | 【思源笔记】一款隐私优先、自托管、完全开源的个人知识管理软件 | | +| 🔴 | | SpeedTest | https://www.speedtest.net/ | 互联网速度测试 | SpeedTest | +| 🔴 | | SpeedTest-Tracker | https://docs.speedtest-tracker.dev/ | Speedtest Tracker 是一款自托管互联网性能跟踪应用程序,可针对 Ookla 的 Speedtest 服务运行速度测试检查 | | +| 🔴 | | Stream-Rec | https://github.com/hua0512/stream-rec | Stream-rec是一个用于各种流媒体服务的自动流媒体录制工具 | | +| 🟢 | | Transmission | https://transmissionbt.com/ | 快速、简单、免费的 Bittorrent 客户端 | | +| 🟢 | | Uptime Kuma | https://uptime.kuma.pet/ | 自托管监控工具 | | +| 🟢 | | Umami | https://umami.is/ | 为速度和效率而构建的网站分析 | | +| 🔴 | | Yarr | https://github.com/nkanaev/yarr | Rss 阅读器 | | +| 🔴 | | Ztncui | https://www.zerotier.com/ | 【自建服务端】ZeroTier 可让您构建几乎任何类型的现代化安全多点虚拟化网络 | ZeroTier | > 说明: > diff --git a/README.md b/README.md index 7b053bd5..3e239c15 100644 --- a/README.md +++ b/README.md @@ -51,50 +51,50 @@ ## 维护状态 -| 状态 | 图标 | 应用名称 | 应用官网 | 短的描述 | 集合 | -|:--:|:---------------------------------------------------------------------------------------:|:-----------------------:|:-----------------------------------------:|:---------------------------------------------------------------------|:---------:| -| 🟢 | | AList | https://alist.nn.ci/ | 一款支持多重存储的文件列表程序 | | -| 🟢 | | Bark | https://bark.day.app/ | 一款注重隐私、安全可控的自定义通知推送工具 | | -| 🟢 | | Casdoor | https://casdoor.org/ | 身份和访问管理(IAM)/单点登录(SSO)平台 | | -| 🔴 | | Cookie Cloud | https://github.com/easychen/CookieCloud/ | CookieCloud是一个和自架服务器同步浏览器Cookie和LocalStorage的小工具 | | -| 🔴 | | DeepLX | https://deeplx.owo.network/ | DeepL免费API(无需TOKEN) | | -| 🟢 | | Dockge | https://dockge.kuma.pet/ | 面向堆栈的管理器 | | -| 🔴 | | Elasticsearch | https://www.elastic.co/elasticsearch/ | Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎 | Elastic | -| 🔴 | | Kibana | https://www.elastic.co/kibana/ | Kibana 针对大规模数据快速运行数据分析 | Elastic | -| 🟢 | | Emby | https://emby.media/ | Emby Server 是一款个人媒体服务器,可在几乎所有设备上运行应用程序 | | -| 🟢 | | Emby-lovechen | https://emby.media/ | 【开心版】Emby Server 是一款个人媒体服务器,可在几乎所有设备上运行应用程序 | | -| 🟢 | | Gitea | https://gitea.io/ | 私有、快速、可靠的 DevOps 平台 | Gitea | -| 🟢 | | Gitea Runner | https://gitea.io/ | 【Runner】私有、快速、可靠的 DevOps 平台 | Gitea | -| 🟢 | | Halo | https://halo.run/ | 强大易用的开源建站工具 | | -| 🟢 | | Immich | https://immich.app/ | 【完整版本】高性能自托管照片和视频管理解决方案 | Immich | -| 🟢 | | Immich-Server | https://immich.app/ | 【主服务模块】高性能自托管照片和视频管理解决方案 | Immich | -| 🟢 | | Immich-Machine-Learning | https://immich.app/ | 【机器学习模块】高性能自托管照片和视频管理解决方案 | Immich | -| 🟢 | | IYUU Plus | https://doc.iyuu.cn/ | 基于特征码的索引工具 | | -| 🟢 | | Jellyfin | https://jellyfin.org/ | 自由软件媒体系统 | | -| 🔴 | | LinkDing | https://github.com/sissbruecker/linkding/ | 自托管书签管理器 | | -| 🔴 | | MinIO | https://min.io/ | MinIO 是一种高性能、兼容 S3 的对象存储 | | -| 🟢 | | MoviePilot | https://github.com/jxxghp/MoviePilot/ | NAS媒体库自动化管理工具 | | -| 🟢 | | MySQL | https://www.mysql.com/ | 关系数据库管理系统 | MySQL | -| 🟢 | | MariaDB | https://mariadb.org/ | 【MySQL分支】创新的开源数据库 | MySQL | -| 🟢 | | Percona | https://www.percona.com/ | 【MySQL分支】关系数据库管理系统 | MySQL | -| 🟢 | | Nacos | https://nacos.io/ | 动态服务发现、配置管理和服务管理平台 | | -| 🟢 | | NeZha | https://nezha.wiki/ | 【哪吒监控】开源、轻量、易用的服务器监控、运维工具 | | -| 🟢 | | OneDev | https://onedev.io/ | DevOps 平台、带有 CI/CD、看板和软件包的 Git 服务器 | | -| 🟢 | | OutLine | https://www.getoutline.com/ | 快速、协作的团队知识库 | | -| 🟢 | | PostgreSQL | https://www.postgresql.org/ | 世界上最先进的开源关系数据库 | | -| 🟢 | | qBittorrent | https://www.qbittorrent.org/ | qBittorrent 比特流客户端 | | -| 🟢 | | QingLong | https://github.com/whyour/qinglong/ | 【青龙】支持 Python3、JavaScript、Shell、Typescript 的定时任务管理平台 | | -| 🟢 | | Redis | https://redis.io/ | 从世界上最快的内存数据库创建者那里获取该数据库 | | -| 🔴 | | Sentinel | https://sentinelguard.io/ | 面向分布式、多语言异构化服务架构的流量治理组件 | | -| 🟢 | | SiYuan | https://b3log.org/siyuan/ | 【思源笔记】一款隐私优先、自托管、完全开源的个人知识管理软件 | | -| 🔴 | | SpeedTest | https://www.speedtest.net/ | 互联网速度测试 | SpeedTest | -| 🔴 | | SpeedTest-Tracker | https://docs.speedtest-tracker.dev/ | Speedtest Tracker 是一款自托管互联网性能跟踪应用程序,可针对 Ookla 的 Speedtest 服务运行速度测试检查 | | -| 🔴 | | Stream-Rec | https://github.com/hua0512/stream-rec | Stream-rec是一个用于各种流媒体服务的自动流媒体录制工具 | | -| 🟢 | | Transmission | https://transmissionbt.com/ | 快速、简单、免费的 Bittorrent 客户端 | | -| 🟢 | | Uptime Kuma | https://uptime.kuma.pet/ | 自托管监控工具 | | -| 🟢 | | Umami | https://umami.is/ | 为速度和效率而构建的网站分析 | | -| 🔴 | | Yarr | https://github.com/nkanaev/yarr | Rss 阅读器 | | -| 🔴 | | Ztncui | https://www.zerotier.com/ | 【自建服务端】ZeroTier 可让您构建几乎任何类型的现代化安全多点虚拟化网络 | ZeroTier | +| 状态 | 图标 | 应用名称 | 应用官网 | 短的描述 | 集合 | +|:--:|:------------------------------------------------------------------------------------------------:|:-----------------------:|:-----------------------------------------:|:---------------------------------------------------------------------|:---------:| +| 🟢 | | AList | https://alist.nn.ci/ | 一款支持多重存储的文件列表程序 | | +| 🟢 | | Bark | https://bark.day.app/ | 一款注重隐私、安全可控的自定义通知推送工具 | | +| 🟢 | | Casdoor | https://casdoor.org/ | 身份和访问管理(IAM)/单点登录(SSO)平台 | | +| 🔴 | | Cookie Cloud | https://github.com/easychen/CookieCloud/ | CookieCloud是一个和自架服务器同步浏览器Cookie和LocalStorage的小工具 | | +| 🔴 | | DeepLX | https://deeplx.owo.network/ | DeepL免费API(无需TOKEN) | | +| 🟢 | | Dockge | https://dockge.kuma.pet/ | 面向堆栈的管理器 | | +| 🟢 | | Elasticsearch | https://www.elastic.co/elasticsearch/ | Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎 | Elastic | +| 🟢 | | Kibana | https://www.elastic.co/kibana/ | Kibana 针对大规模数据快速运行数据分析 | Elastic | +| 🟢 | | Emby | https://emby.media/ | Emby Server 是一款个人媒体服务器,可在几乎所有设备上运行应用程序 | | +| 🟢 | | Emby-lovechen | https://emby.media/ | 【开心版】Emby Server 是一款个人媒体服务器,可在几乎所有设备上运行应用程序 | | +| 🟢 | | Gitea | https://gitea.io/ | 私有、快速、可靠的 DevOps 平台 | Gitea | +| 🟢 | | Gitea Runner | https://gitea.io/ | 【Runner】私有、快速、可靠的 DevOps 平台 | Gitea | +| 🟢 | | Halo | https://halo.run/ | 强大易用的开源建站工具 | | +| 🟢 | | Immich | https://immich.app/ | 【完整版本】高性能自托管照片和视频管理解决方案 | Immich | +| 🟢 | | Immich-Server | https://immich.app/ | 【主服务模块】高性能自托管照片和视频管理解决方案 | Immich | +| 🟢 | | Immich-Machine-Learning | https://immich.app/ | 【机器学习模块】高性能自托管照片和视频管理解决方案 | Immich | +| 🟢 | | IYUU Plus | https://doc.iyuu.cn/ | 基于特征码的索引工具 | | +| 🟢 | | Jellyfin | https://jellyfin.org/ | 自由软件媒体系统 | | +| 🔴 | | LinkDing | https://github.com/sissbruecker/linkding/ | 自托管书签管理器 | | +| 🔴 | | MinIO | https://min.io/ | MinIO 是一种高性能、兼容 S3 的对象存储 | | +| 🟢 | | MoviePilot | https://github.com/jxxghp/MoviePilot/ | NAS媒体库自动化管理工具 | | +| 🟢 | | MySQL | https://www.mysql.com/ | 关系数据库管理系统 | MySQL | +| 🟢 | | MariaDB | https://mariadb.org/ | 【MySQL分支】创新的开源数据库 | MySQL | +| 🟢 | | Percona | https://www.percona.com/ | 【MySQL分支】关系数据库管理系统 | MySQL | +| 🟢 | | Nacos | https://nacos.io/ | 动态服务发现、配置管理和服务管理平台 | | +| 🟢 | | NeZha | https://nezha.wiki/ | 【哪吒监控】开源、轻量、易用的服务器监控、运维工具 | | +| 🟢 | | OneDev | https://onedev.io/ | DevOps 平台、带有 CI/CD、看板和软件包的 Git 服务器 | | +| 🟢 | | OutLine | https://www.getoutline.com/ | 快速、协作的团队知识库 | | +| 🟢 | | PostgreSQL | https://www.postgresql.org/ | 世界上最先进的开源关系数据库 | | +| 🟢 | | qBittorrent | https://www.qbittorrent.org/ | qBittorrent 比特流客户端 | | +| 🟢 | | QingLong | https://github.com/whyour/qinglong/ | 【青龙】支持 Python3、JavaScript、Shell、Typescript 的定时任务管理平台 | | +| 🟢 | | Redis | https://redis.io/ | 从世界上最快的内存数据库创建者那里获取该数据库 | | +| 🔴 | | Sentinel | https://sentinelguard.io/ | 面向分布式、多语言异构化服务架构的流量治理组件 | | +| 🟢 | | SiYuan | https://b3log.org/siyuan/ | 【思源笔记】一款隐私优先、自托管、完全开源的个人知识管理软件 | | +| 🔴 | | SpeedTest | https://www.speedtest.net/ | 互联网速度测试 | SpeedTest | +| 🔴 | | SpeedTest-Tracker | https://docs.speedtest-tracker.dev/ | Speedtest Tracker 是一款自托管互联网性能跟踪应用程序,可针对 Ookla 的 Speedtest 服务运行速度测试检查 | | +| 🔴 | | Stream-Rec | https://github.com/hua0512/stream-rec | Stream-rec是一个用于各种流媒体服务的自动流媒体录制工具 | | +| 🟢 | | Transmission | https://transmissionbt.com/ | 快速、简单、免费的 Bittorrent 客户端 | | +| 🟢 | | Uptime Kuma | https://uptime.kuma.pet/ | 自托管监控工具 | | +| 🟢 | | Umami | https://umami.is/ | 为速度和效率而构建的网站分析 | | +| 🔴 | | Yarr | https://github.com/nkanaev/yarr | Rss 阅读器 | | +| 🔴 | | Ztncui | https://www.zerotier.com/ | 【自建服务端】ZeroTier 可让您构建几乎任何类型的现代化安全多点虚拟化网络 | ZeroTier | > 说明: > diff --git a/apps/elastic-elasticsearch-node/8.14.3/data.yml b/apps/elastic-elasticsearch-node/8.14.3/data.yml deleted file mode 100644 index 8202fb28..00000000 --- a/apps/elastic-elasticsearch-node/8.14.3/data.yml +++ /dev/null @@ -1,60 +0,0 @@ -additionalProperties: - formFields: - - default: "/home/elasticsearch" - edit: true - envKey: ELASTICSEARCH_ROOT_PATH - labelZh: 数据持久化路径 - labelEn: Data persistence path - required: true - type: text - - default: 9200 - edit: true - envKey: PANEL_APP_PORT_HTTPS - labelZh: WebUI 端口 - labelEn: WebUI port - required: true - rule: paramPort - type: number - - default: 9300 - edit: true - envKey: PANEL_APP_PORT_CLUSTER - labelZh: 集群端口 - labelEn: Cluster port - required: true - rule: paramPort - type: number - - default: "" - edit: true - envKey: ENROLLMENT_TOKEN - labelZh: 节点注册令牌 - labelEn: Node enrollment token - required: true - type: text - - default: "127.0.0.1:9300" - edit: true - envKey: ES_SETTING_DISCOVERY_SEED__HOSTS - labelZh: 集群发现地址 - labelEn: Cluster discovery address - required: true - type: text - - default: "elasticsearch" - edit: true - envKey: ES_SETTING_CLUSTER_NAME - labelZh: 集群名称 - labelEn: Cluster name - required: true - type: text - - default: "es-node" - edit: true - envKey: ES_SETTING_NODE_NAME - labelZh: 节点名称 - labelEn: Node name - required: true - type: text - - default: "-Xms1g -Xmx1g" - edit: true - envKey: ES_JAVA_OPTS - labelZh: Elasticsearch Java 配置 (可选) - labelEn: Elasticsearch Java configuration (optional) - required: false - type: text diff --git a/apps/elastic-elasticsearch-node/8.14.3/docker-compose.yml b/apps/elastic-elasticsearch-node/8.14.3/docker-compose.yml deleted file mode 100644 index 4d2ff6e4..00000000 --- a/apps/elastic-elasticsearch-node/8.14.3/docker-compose.yml +++ /dev/null @@ -1,37 +0,0 @@ -version: "3.8" - -networks: - 1panel-network: - external: true - -services: - elasticsearch: - image: elasticsearch:8.14.3 - container_name: ${CONTAINER_NAME} - labels: - createdBy: "Apps" - restart: always - networks: - - 1panel-network - tty: true - ulimits: - memlock: - soft: -1 - hard: -1 - nofile: - soft: 65536 - hard: 65536 - ports: - - ${PANEL_APP_PORT_HTTPS}:9200 - - ${PANEL_APP_PORT_CLUSTER}:9300 - env_file: - - /etc/1panel/envs/global.env - - ${ENV_FILE:-/etc/1panel/envs/default.env} - volumes: - - ${ELASTICSEARCH_ROOT_PATH}/data:/usr/share/elasticsearch/data - - ${ELASTICSEARCH_ROOT_PATH}/backup:/usr/share/elasticsearch/backup - - ${ELASTICSEARCH_ROOT_PATH}/plugins:/usr/share/elasticsearch/plugins - environment: - - LICENSE=basic - - ES_SETTING_BOOTSTRAP_MEMORY__LOCK=true - - ES_SETTING_PATH_REPO=/usr/share/elasticsearch/backup diff --git a/apps/elastic-elasticsearch-node/8.14.3/scripts/init.sh b/apps/elastic-elasticsearch-node/8.14.3/scripts/init.sh deleted file mode 100644 index c5dbe273..00000000 --- a/apps/elastic-elasticsearch-node/8.14.3/scripts/init.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -if [ -f .env ]; then - source .env - - # setup-1 add default values - CURRENT_DIR=$(pwd) - sed -i '/^ENV_FILE=/d' .env - echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env - - mkdir -p $ELASTICSEARCH_ROOT_PATH - mkdir -p "$ELASTICSEARCH_ROOT_PATH/data" - mkdir -p "$ELASTICSEARCH_ROOT_PATH/backup" - mkdir -p "$ELASTICSEARCH_ROOT_PATH/plugins" - - chown -R 1000:1000 $ELASTICSEARCH_ROOT_PATH - - echo "Check Finish." -else - echo "Error: .env file not found." -fi diff --git a/apps/elastic-elasticsearch-node/8.14.3/scripts/uninstall.sh b/apps/elastic-elasticsearch-node/8.14.3/scripts/uninstall.sh deleted file mode 100644 index c86c4fbc..00000000 --- a/apps/elastic-elasticsearch-node/8.14.3/scripts/uninstall.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -if [ -f .env ]; then - source .env - - echo "Check Finish." - -else - echo "Error: .env file not found." -fi diff --git a/apps/elastic-elasticsearch-node/8.14.3/scripts/upgrade.sh b/apps/elastic-elasticsearch-node/8.14.3/scripts/upgrade.sh deleted file mode 100644 index 77b84912..00000000 --- a/apps/elastic-elasticsearch-node/8.14.3/scripts/upgrade.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash - -if [ -f .env ]; then - source .env - - # setup-1 add default values - CURRENT_DIR=$(pwd) - sed -i '/^ENV_FILE=/d' .env - echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env - - echo "Check Finish." - -else - echo "Error: .env file not found." -fi diff --git a/apps/elastic-elasticsearch-node/README.md b/apps/elastic-elasticsearch-node/README.md deleted file mode 100644 index 70c73f7e..00000000 --- a/apps/elastic-elasticsearch-node/README.md +++ /dev/null @@ -1,117 +0,0 @@ -# Elasticsearch - -搜索并分析您的数据 - - - -Elasticsearch 是 Elastic Stack 核心的分布式搜索和分析引擎。 Logstash 和 Beats 有助于收集、聚合和丰富您的数据并将其存储在 -Elasticsearch 中。 -Kibana 使您能够以交互方式探索、可视化和分享对数据的见解,并管理和监控堆栈。 Elasticsearch 是索引、搜索和分析魔法发生的地方。 - -## 安装说明 - -### 宿主机配置 - -+ `vm.max_map_count` 配置 - -Elasticsearch 需要设置 `vm.max_map_count` 为至少 `262144`。可以通过以下命令设置: - -```sh -grep vm.max_map_count /etc/sysctl.conf - -# 如果输出为空,表示没有设置,需要手动添加 -vm.max_map_count=262144 -``` - -添加配置 - -```sh -# 临时生效 -sysctl -w vm.max_map_count=262144 - -# 永久生效 -echo "vm.max_map_count=262144" >>/etc/sysctl.conf -sysctl -p -``` - -### 新增节点安装 - -> `集群名称` 配置 - -用于标识集群的名称。默认为 `elasticsearch-cluster`。 - -> `节点名称` 配置 - -用于标识节点的名称。默认为 `elasticsearch-node`。 - -> `注册令牌 (节点)` 配置 - -用于加入集群的注册令牌。在集群中的节点中生成,用于加入集群验证。每个注册令牌有效时长30分钟。 - -> `集群发现地址` 配置 - -用于发现集群中其他节点的地址。 - -> `Java 启动参数 (可选)` 配置 - -Java 启动参数。默认为空。 - -推荐参数:`-Xms1g -Xmx1g` - -小内存推荐参数:`-Xms512m -Xmx512m` - -> 角色配置 - -可以通过环境变量配置节点角色。 - -```sh -ES_SETTING_NODE_ROLES=[master, data, ingest] -``` - -可选角色 - -+ `master` -+ `data` -+ `data_content` -+ `data_hot` -+ `data_warm` -+ `data_cold` -+ `data_frozen` -+ `ingest` -+ `ml` -+ `remote_cluster_client` -+ `transform` - -## 快捷操作 (注册成功) - -> 重置密码 - -```sh -/usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic -``` - -> 创建 `节点` 注册令牌 - -注册令牌的有效期为30分钟。 - -```sh -/usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s node -``` - -> 创建 `kibana` 注册令牌 - -注册令牌的有效期为30分钟。 - -```sh -/usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana -``` - -> 导出证书 - -<容器名称> 为容器名称或容器 ID,可以通过 `docker ps` 命令查看。 - -导出 `http_ca.crt` 证书到当前目录 - -```sh -docker cp <容器名称>:/usr/share/elasticsearch/config/certs/http_ca.crt . -``` diff --git a/apps/elastic-elasticsearch-node/data.yml b/apps/elastic-elasticsearch-node/data.yml deleted file mode 100644 index 25c9578b..00000000 --- a/apps/elastic-elasticsearch-node/data.yml +++ /dev/null @@ -1,18 +0,0 @@ -name: Elasticsearch 节点 -title: 分布式、RESTful 风格的搜索和数据分析引擎 -description: 分布式、RESTful 风格的搜索和数据分析引擎 -additionalProperties: - key: elastic-elasticsearch-node - name: Elasticsearch 节点 - tags: - - Database - - Middleware - - Local - shortDescZh: 分布式、RESTful 风格的搜索和数据分析引擎 - shortDescEn: Distributed, RESTful-style search and data analysis engine - type: runtime - crossVersionUpdate: true - limit: 0 - website: https://www.elastic.co/ - github: https://github.com/elastic/elasticsearch/ - document: https://www.elastic.co/docs/ diff --git a/apps/elastic-elasticsearch-node/logo.png b/apps/elastic-elasticsearch-node/logo.png deleted file mode 100644 index 06b4a258912f0e08619757289b55daa498873e4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 KcmV+b0RR6000031 literal 52594 zcmV-&&5bgNP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 zVoOIv00000008+zyMF)x010qNS#tmY4lDow4lDuro9++*000McNliru>~WoKRQ@z1l?Zl|9!Gnpha>2(qU(m^036GIUd1VKeWMN#1* zaDhw5auHDh3o2K|25At`gbq@YhzO!mh4h)pOr~Wr<;-cjuJznM_9O(-rkpwJ?7ctl z*K5D#BtY^_NY38tdw$RJ14)u3Ns=Tp#D%1gsp0kpSfbU#CFnz}KaF zeBC+ly6fxgz}IcQU;MQ=Q2qf;pmC7DHi1Tj`4E^RG7ro_m>9{7Fxf$0##3`uN5$cbc067wV>j-Kz-p(IJt1L^e-my#q&M`ZfiH2~y! z5|T6~K!q5m=oWZW5LQ4u7C4S>vA6QTYXvY24AGs$yX)7xCh~M-T68A~>jz#9x`p7L zd%Si7I}dz44eTMZF9h}yl6pqWlTs-Mn0(UaqW^j%Ns2 z&^>ai{+H1`c0A4ZCkS@}TMoQ7)14@s2By;_-Jj=qXJY-fqH{}^}uqv1>p?c67WvC(}SDomV+B2 zYz;6Cak@flwnHh7ufL<{+>#_o2gL$Vk|ZrV-Fx|B8bcTj-6OawiJV5a=sOiS@xW^> z-DA3CoaEEdkvc3JdwW~P(;@w5(mLy5Kn+2dG zNh-|le_ca_P|6t!FiH$-W8kbnJe_XAch|AqACB~@; zrv*3-I0INmce-ya-HE>%eoj$uigY&?&(SRgHv%^THvyX>Y#^{FMjDMW?KHx%=Wj1M zvm{CCbAGUvBuR^E&$Y*rCr#39IE642LOk(6(RT`PHgFc*-(JD@kMBzT?yh6R`{*7a zz8Sb4xFtq5MZ#7>tVieotXyv?C`pnQj|HG4Njf64*RG)jA&prjhV;15E&A30=K&9; z``at%PWJiPL;Ai*w-nq1Y^PfYemlYqz~&@|ZCNQcDox_(Q!E4}Nz&o-L%1YKI%w0^ zt|4o+2}wvpDP0u^Cq+0Tbc?=6(7m(oIA9V#XGn)50<*v!bSDMB1AH5}Il`6@xPuNI zCSdY0mV%Nb>EQUmT#_U`puN`}Pl${J!WtrH5qK2vFuuQ_V-=7Tom1*#k?zsq+v#o{ z{x8o782DZwY)eb|-aHF&;sPfGB}r131)wBJ1M1E%pUmjo z0?lfrOpH@8gf)TqFyK*i@9#UC?sQ)TKQlMe3B&T5Lf_8lGFpHKffCCJj6}iEu2D|@=?z6^lq5+%#0LjSl9q`b zUs%QKzOkD>f6SWUgm`i!JR!hEz+-?D>2B-wy<5_9(gd~u{~h7W0lpLin_GFDO+#Rn zTZJV_S{8hWkR+)<)7P$nK!}l1;EVuI;`@_+#{re1GfL7yY6EuyU#EL-;Fn_LmQEUG z12L|;z%o#hq@q{=N|Ln1_Fc0U2npn41kMTF!tcqzqkvU-pP!`O*8%nb-v<6Q!oLyY zcL~e@+0=UP4U{BlDOmtYlC%W&U3WZLRtibTrjo!TfF}YM(!I}b6_6C2QId|59M}ik z09*%L7ee?}CuaK+(tK+DwxaV%lGOJs03}H}N_Kz#B7Jg3y&c!7j zk_J-*rh%J)F9O%ZJpV=urb|h}O79GmBIB%rx*nz~>`e8%Vx0H#IY}dh@YVo^?yn*(6Eo8y0|)BrSq{*R6pVM*`t& zy7&1#jqaU(#}u7Sl6u5m;G4kbAzT|HHvqF!7kNZjlB6SL0Vqk*Vc2`^YASh^EOdrq z2&eP?((kdrYP{1=k`7m-yFlc>fX@@SCJ=5;OKH8e&|<|?cNU#blBAwv0Vqk*A=r1_ zS|XGJtO+qb33w*(B;Yt8Ejphh^_dLV349s&48$+xA#4rMp1RQc0wqa0SQdbiBt3|| zUpxUIgpf~#?grnV1TF^70BS|&lcWLB0yffJ9`Z@xzjN}vK)zzVQ-P8sJrD~(Ns{iv z-fP#;94aw1-yR}_bp)OYJRNvAFoEx(l2oJ_;Jd(QfX@-)ciW}%LYj40ae7)dc>n#H%NrTM- zP?9vTX0KfhkYtI}N~e^Qo(en_coy(jx(hudN&RmQ_;277z-RKntx2Tq@nA{PAg}GKLx83BuU>l1AGOzIubt{Lb@#yGmAh;Qor#bNRrey z_I>d%wSb%GP6U25=HdDP&B-6L2$UrC2Ma(+Qcs)y z{Aw!K?4ot?@na<6@xb$drvWDbNzwTvNj)V8b^xD`@R20&?;-E(&qE3C3X~-EG7CUS zQcv1<%^E@;0%=?WT+H{6`A!v`O_J0X_5)u7J`xF^%M)%7k+{O+!IGpNWC18i>M47# zJ)TG`r!kyM2tP&lnD2Q&rRZ#uq`uSvt_MB_T$N|>yGar{lNUJ=C`sxa7J!nZp0Mw_ zH4wv4AU+EC1>h&?9`p6ROp>$|BCr+smk5_9@Sj;87FKvqpd_gW_|POtTDJCFw}wgw z+9f8F$d3Xq1fBvMQ*<^-(m>k_d=a>e7`{9-ys&p+VVJ3lECVG;%aaA5Bx%{%ckS`C zLx*attd7K|051TZ1dJ7(O_HR0m;=5FToD7GCF2ef;*<+RBuUGR1)wBp+1Pi@TJo4A zX_B1?`~>jxz@veoqO(bo^Z**bH-Qfm!pF(N=9uJ}MW7^Uxv&6~Bo%J@y0wt!r5M5) z0iFvy4_JqbJtRrJr48Hy{8NN~3L(ECBuQuD$rgct9Y`B$=a4Ii(cN z1zrR^2RH>ti_RxW(hkq`Cth7|D=_q(^=>+`IKEnXOkoiAPYcA(vsW%g%b&R zDCOnsVGv&kJR3L}-mP;Xd zMC?xdJqtJi-;X3o{ck()u^6~4cJi->G--NApd@Lj_`oGeI_mcS>ss%SPFI@+75pRwIPR0>4am zv+wGnvq_S)4D10u1H3;ce5G9J)c4*w%E>>yq3B$aq&{Q;C`np$)7P#6;t(PHD3M#SbS_DfmZ81CX9D~~jC>WSPhRBFU`f*AvH+AMEt-AT9#4d7LU=UrD|CKx6WvZAE92B=rdkKuOXOo4M{pVxScB>=AT}zh?o*;romvNr&nV z;A6o16Zm?PB(2d4wica9lGNjTFq0%5w*6l^9w3c*IFHCL0zXT4tFI(UIx^dVe}?#h zG>_jR%d%|63ML&gsAlffoR$xzHUS?5E=`io z%`ql%;=-Lp=aMA#2p`xaNe^oFb0=`;x&|vYR8FK@{JjuZ2P8#jlO$A9RN$q+`9Q7cY?37DZcX4T zz+VBMO+!B0&P%Mg$gRPWq#tAfC`tMO`>tI>gjxcR2Yv&11~6W9E=iJfzh;4d0saQ~ zGSHY@@1hV%()U>aN|FGWx$Z>rgp@3MDBYvJ&jnT&olBA=9ke@vtAM`?dGf6!#Ln17 z+ltO4Nm>Rh03~U_O?M~$LIS5n_$A;)z{&U?AxTm%ioor_6%hYEX5|eb&Ew>Hj|EH8 zAoJl)k_Oc7&#$3cgHD@OA@K8bkNcj33qB-C>IXS+J%RVd5U&iK(ymx(F?IeOMdy+v z6~F>ek_OQ9HEW146ap6muK+FpDn;j#BuR^|P4`~F_XNV{frW|n9t)PFL1O_ZNdw}B zOU@w>heHyNU%h5-WeD-t>E817^k|Zsyt-wD5|1dGpxNTvs!pM_%7M)3wbd*^D zN>ZP?@zQhHmp7P7YRAUN3xJmarvo8`$na>3(Xkdunim~ak|Zsy4EPT4modhxv&gCN>U%X@se`@h9X=Hyb3s<`?%w;I@DooqCvTw6&+cUBrUxK;0r|l zJQBVPG^Z}|en3g;M;3sR)JML1`9o-xN@1wgI*-W9fu9AY9_W8lD(8$%G^h==i;gcz zl8SLBa0SG_s-^kOtvtl>3q2MrN&UnEP?Gw<#=m_y_1XeSo~$B-7XmK@&f*}y&nHP_ zWW349XbbNJlq6{&<-qm8dx0xsQrZ_<4JMzmtLR*kq(xu>C`mo;rpwNTKq=3X^MTg` z>w)T_{&7Np+Hi}p@g`}>djTa$8c=oM3&6WG@~?zQXT?QM14>e_vjCK&9(Dbt=Mc&z zVkbKxyMw7a>m9R3=Ow^r;sFRaOJ?)Bm5cgabRw0{q~|W zNsti{M^lO*w8KuMAY*gWu2B7YWR z@(n`F-4-lKy~P4hl6u4qm!3lmOop821FrVSd0FJgU;!ve%g7CvJd8jSLb58x_+khz2Tm?J*FA** zLnAH5#v3H5C7>ipVjplh@Sg2Cx2{cK!fnBlw5(VFO42fM!zJs0m_qVI;0?f2fO65f z?oVx~&DcbPQrYDok|c=;d<*#F9Ig(qFl7lSNy~->pd>8=H(YiWA*L&1mA+3=Ow@SCJ%1cexSx69ONMc|MnxD~zANrRYqOG_ZVBlcWNC z_XFopP6Byk65=lcuLVvjI@jS!lE}zdlaVo(gGiF3yDb1$5&5Gp#GT*0pmZ$9xFkf9 z3Sj{#NlWa8%g-gLgpfD#M-X`<@KZpo=v+rC1Q;G|F*@ELNh|>+NfOY#8}NI;yCD8E zFh9B85>S$sngyUFEukAOT?c`&5c&BS!~X%!q|d$=*M<))2PwH6M3N-kZI-|Xfp^p4 z7E+jWNr)sZnWX3dk~9ducgZ=xhX}Ba7~UIW_*394`mFo|Xe^Z3zjugsD=j*TBuQF6 z#)$kHkq?pbyg*Xhf6dyWGfC3G=(`6`Nm@>B*zgkKSH27(R6-t~3E?fk!;8+f6iVfs z@ref2p?1+xBuUcpG7Y>x2L3d}WDDd@14`0SW&tQkN68IWtfSP*$x6wZn1@#ZzX41X zoogwjX=HSw!LS>GB}vi`%7L#zczaCvJjC|Y1(tx4bhP+5CP_!Z%~zaBQtl+3M)iCM zzY`-DFre2igd{TRhG0pObl-LZ?~Cvkl$tw3bA-u@w-lX8lKPGXpd>A_8!lM~k*SdI zk{HAP2G$gvsc0d<@JN%q#HmD7?i;f~ml9s34!2gRO{$*^3 zJJX@a#FH!nCFyWj07}wfxcRbk0BSk$=VA4h;5ZvjpzI#a(10ft9fj7~I25=%fyl60SP;LE^U$dj)SVm|3Kpd>vg3qVPF0JmOw z7WLVLN-Z8AV|YW1;U&OG(YgBB&`6uHi8^U&2`EXD?$>P){vbpyB~R*cY!8!&0IRPk1_u=L%&L#w^c@~}>BmXzXa8}Wo22HirVSKVdshkxZ zMUo^fUm0)>gtxZm!hfYhF|N4SBf*mN!z=(L=^pO5ah$zhJ&~l^SxFvVo9E%Bz*Nz> z234inEdk3FOF&7I^nh*wem~^#${0dp@*ilBDHrKkzpp^2Z^tYcFuhdW%3w0t-M%0${_3<-- z(rzbD%k%IDF@_&0I+MPyRL&WntW&L70!osk2h;&RN94CkliR=1+H)!^p0cUvOp;VM z3qVN&Z^MVqCIm)0o$#x9&YNQl#}=JQ_m-A&#wQ!phT26(kt9jW-}S&-iTNiWbS5v_ zQFIBSA_b*Lz#wHsK4O;?AlB5T9C-5#} z_$y*Q$3Bxj6GB)01c(iE=C`pnI#+|^sLX3YMLztah?0FLK zd*3;oPV$F&7Jd@%`|BGaL`KJ(jEuDiAr>7+k|ZsEb>LFq_d*C;Coc3(KuP`20#H(4 zYy8s~)itwh+;Zkq+nw|eV;&w+bS5pn5MX4i$>?~~5>S#P9gMr~1$+~fz7B0BJrXRb zk68dp>RTJGJPSgsCL|$S;c^g3eaZq* zQeWEm;j>7RIMr&VugvrCniv@`I+Kn*OF&7IbQpF3ZwoPgfDq~v-U}$H4_N?8>N~ey zc@`nWHCZQpd)5iR091?4q@@!A439P$8*dU4OF&7IbWmo2zaa3(ME1HIL{h)80F=}> zc766VK7Q%(tpBMy&*@~zALm(kI)0xUNS1(-B}ymqBCiEumqGONr&m%z#D4iq0e>lP8@ym=A!dR(h;!$ zl+@FOmHOl6uOHe>s&qH`N$f(LN{Zq<@}e$;H^^=pb1FN|L0*lmS;kcw?HgaiJ19_I!&# zNxdT}I)Ee{tULbY432w3BaE)-JfYJry+7+%{^`)f2=lX5=4PtI=+D3;Nzy?}f#*W} z+boF>A5ClQ{o?APGfC1x^XW%YPq_W#r&1efB{O?Qp3!L~@5=MAuINnaT_Hq9$6Jhy zISD99k`CE_1OF$B;Y&$~(Idf#JZP;Ir+mt~#sJ9!=^ zi_WC}5kh2aqQS^$%XdUcl60uH0lyuRcqx(ggd2h-En`0JNLsdT|L7@%z<7P3^17^( zyf(%#RCFfwpCsv)fWxD$qN7NXq~0?P`~mQnz`~@*fh8?d7J!nLrOj8JPLjmc&3fr~ zI-TStF@{Rfnbg0MBr-PHV0gq5P?97avIXETA^Z`rcXIuCePST68A$za)u_Pt_S3ZWkRzk|gz>HgGBMTflZF0VORr7J!nLl}#TxgCvP( zwOZ+WvQGN682vt_rIVzQiK#lZAxl6>l61&&;3^2OgLs=Iprqx*2Wv^o#)c1_O`2v8 zZMW0+b~?%VMd#6AN=rEtQ+2AfPSH^$NmB2Lz-NiPnhW)7PybzI#p4nIy>qP*Snx zzcvnMZe`v1)9c%<^zXAQd34d4q)sPcX1YeZ<@J-2B=5xTEMik_MCoprk_V`0PoHudXM%Hcb3Xt66$yo`+M4&LrKJO0C1>RGqYx7ac{C zB=x3SfY;<%`l*oQaq1%P1(dY(EC3}fx$Pf6h1yUno!LM9qGqG?jyw;?7oACZAhn@3 z<5LaN)DlpVBpsG5z#DV8GC)4%hG0oc%mPr-lG^&wQz=)n^1^)OrLAV^ck(=}EIN~P zFouTPj8D}`l2~*UNs`o?b^^bZrpfzbjGgfdoCK7#bSwZREt%Utb}FTER;kZdUfph% z-je5GtmsVAp%@-*F+SNK1WQ0kl5|-10Kc0j{7r!N)CEogN?IBgfRdKPmXDoEn#O8# zq5Rr*D}7U*htZ-lNrx%~7#V9YI^HDs4k}5K4$n03wix1jf!36ZK_o2!A73OLb=$5! zjWmh1`9|sWop$=hJP$)fXOa$A2$8XgCL^Ow-$f-!(&3r`-X0=<4m2k&auQI|(dDCy zq@!x*$4?|l;?Ugu&>PzA^!1j1>IX>@8J}!0G}0{eBVoB1RiKzy)p?1+xBuP^5ngjkIC;Vw3 z*4+*)>1eS4lyp?we$}a@X+BzSRNmZfr>}{5s1}_`T5M@4XL3cIO0`pT6iJfQyXJv+ zL3lSXKe^uRz>*eUQgi@G{b%ddr%|coWA#Smx7+RXwU&SCS6L@vX1YeZofaKMk|g!6 z5#aR@-xxzaI(_Y$qVq`VLrwrnT2x!EKAmzkpIDeJ{Z6}`zC7lkQgkNiXsgybOia~D zOL@^zBuP^5Y5?y6-Vp;cQx|$1SkmIL0F<<7Zu{rcsaCVeh55?c+O6cJF@|!{nWUvM zG~8xilieFBW(ZJsU&F}U05jpZo8en!ehT0R3X6V zc!QC#Cc$@DNs@H<8o-|=F}^**{CEfiHv~&M0!{!*IwCtiaWbV+Hd0?Gzt!?jgDysx zpRH0~@LvN-l5|9B!2ixecw>a&{n0B%Bpn$GKuL#f`zKF^QXH9EsJ^+~PXD*%p9Fax znA=~aS@#sYBuP3VHQ=>`@H$|4`kLd5&LgRZSpZ5pEIU4V3YAJWRG+K9q1{Sfo9Cfg zbS7!J$g+f){WaRHwCE_3B&oLz0k0>7R|goHzSa^@(&4cHlyu0pe*84jN?x1UKlJ)` zD}7zG{FCmb(@vO~u90 z>FVp+&GZd<9%@Brl9sDhv&78)8hP$U5J{4BL`H!($0WWorm-@8oh6{8Lt_Cb>7Z@< z_$gFt%}RZy{OWcqeM6pyp`tTM%Uxrk%-l?s7%c%MNzxG+2i_9$@N#0TcpO;Lp|Ajy zbWnDE@?=J9?aIPj?Uk)&=`DF4MvBfP^@@eL3JY`Y$dM#TM{EN4Z3w?n3Q2kPy0t~; zk<=qB03|)BJzqGHu~p5|^la_dTFvyg@;r1JR_ zl61sY0B@(1JU7ovVec1DC_0a%WzGUn(*4@~rQ;cW@*QEzO{<^PsF!{}%aT<^XOenZ zr;{+dzedN+z>*~C$Q=v3GnBHQ_~vn2*?WzXfRgT?HKLEZ9C2~wSH&Oc_b}E7J!oOW#2U? z@~y8N%W3ECdt$R*`nxPk))k#e>Nlg~O-9EX1mB4zNz#$~4)E)(PWakTC1>n{9YyDn zw9I%0NzxC9w~ny&mMKm@Z||d8jnaE9|D>a1ezrn=-p#<0BxzAR4ET#mDgH={l!ecE zbC0ASWC1AY2i*3}`d*?+Rf50#OU`1X{n8jH5r>|5`vq7B}vi|%YpYp zcpZVgSu3*gsoRUrB&k4707?UH$A*=Z%5ijVruLS0GyOTsKdBfCa~10I<)ULqlBE8S z055|0CL$xHk{|J{+TXOeW^=I1Lk7Ai%@kR(a{<1FBhX{QfQh}`^*)kWu#w1g}Gr2(?}pU$LO>73PW zmfn+fl7|(YN7DU^d3PyDyOkClMUo`-k4F)BcOJs&tM`|S&LU|ESpZ4{V#`&hQyXrr zX*Nsm?sU>86`e=YgX?q>W~XapnQzyUBx%w77{ot-cFL@px0b0-&_N77Mb0VwsU zJ3ezV$6dUMEnk^>X1kUCZk~tHqBBW4d|8$-v%f~x@vU2uBrTdr;P=`?(@$*;b=ZH6 z$AP7Ow(Xi^<;22i%|`iMmVZ)zsn1tf@IF9ElC-!U9^j8+ zNKQ_(tmrI~jsgonsn2Y=>U7GrY<06$`lBpMFDN>Xq{S5@%zGc8BuQF)7X$w{1g6{! zEcG7?K&g*xyZRKWwbpQBzWk<6JAHQagrL-yvMgbCf7SZ{B}vj^N`U9b$ZLtAW(g?u z7oQxYK5@sVPh`chv+4X?^(F0A`fD+g7M)4b(bH;{n47HQH=w? zU5fD;p_VfDzDm(~BrO8R2BaRh>t9Y_-|lgSM;cG4FO)x!b&@lR&LnB+q@|q6l?zlV zUf3;3k`~qXfM1T}{~cn=ZNyB{z-!;>mOtE-aVl#cvn|Z*sr_81mA)#*;8VXe;PN~$ zH&dn4@vU8wBrU2M@VW$^$(a{1eccH~=aF<6yf8@WF?0XEnoTzx!`Niw$*pGT{aKcr zT688!%g4}2i;1ZQAvhK+Ns<=T^}sJd{BI~Rx&HQ|^GG@bjtNLT=FaWoOs;I4)^3&F zZuuwahcy-|)aM-vmLy4w?p)yaBjH5Iiq0bG5Lp09J!H#Or%|i6Cz_4)|7KZoe$ja( zEk7~B+-#LrD=j*TBuVN&7YBF?kmH+bN72I^~YUXwiJ-5?NU*XaZ zNe`ykC^0`*DLRHEN$NjC!0RFZsWfSF=cj+9=sc1Rf};V_GPm8CNg|Ug7pT@cMMse&N&V-01YSr?z7<1Nnsu)Zl_W`vE&?HGWrR*%bQVbupj31KN%yw*^Q+mmWrR*E zT+nHyZ-{vqDms&--j(Npx!EeEN=B*VhjU4iv}isOiGR{ArP<`4?kGBoqzB*xptKC_ z-#^a8iuu#po%9`f9!@GckEGt$Zl%o6R*BJJVo8#;D6S2Ww+6zVBu@w*D>{y(2jT>v zw9IVz=QAi*^O5=4@|&_w^7x|jNa`Q;`7)JihoRwi(NQExQg8cCfY-&q#>w^Di_RkH zAUFXiEhF1LaSD^i&ZP_U>B~Bu@FMWuKS_%x#=!hcl}^XEe@T*b*fv3YORNsZ%$bLNj=F={ZfIp zeezWH@2yfB$}VU%)5~KX))t*f(%=XoGBH(WXvD3+k|gOqb%4K##J2$Zr`GQ%I*+8o zI-F>jdIa3BuUcp@d@BHF~sdt7i?$j zDcg$9Bk2fP07?aD)>Afq_{>LTo#ah1hS8$)NE&Q;-aQJOWqvG>BuRXl82&e~W$Hrj z{FC}cT66$u&}{tBnUu@+z6iVuxV7jYk`|u@ zptM9{TupsCWno|P^ehX%86!SrOIlX)ta}tV&%KsZlB5Ci1>hBta3g@ze^URk0F;)< zrjJZAJl;Ab>mSunk zmyV(vKe>*|d?W_W?X<#2@;sbdbS6nU7$HO^R@509ZWkRzk|Zsz9QY`a*M`7t6CU}M z27(iS(os}d=n#@@yweVEvHX+NOJeLU1j#ynRFEX8k92^`fmeX#pEOAPR4*MRw_Lf7 zp<~LS-AZ2+^YEOa^GMR6YPV7r=3EFONm8F^0e=s?7T7*{k>#H>NGt%QqhRJgjwf%y z{2ke2@;tmYMruW8lBC12FkhkBC>0$;k|Z6OI`Cd%coT4^n|`IiV*w}~1$W*yO10LW z$~ws#V+^Mjokx-mSDtr|0_VBc21}CEqh^73h8TV~z&^`AX)sv;N{ejchtFVite&*n zrC*IP{AAI2BOv>~q(PPz9YE?Q8$NV4r8KVW zw39!JF+8g1Jd(6n@;o7gK&9Ftcp6xeq~-1g;FU2ZAB`bo9{ZK#kMgBOvgyO8FgCV3 zX?McQVhm3yI*%kRw)%XTR?~$bk|Zr-5%>!5tEGJA(=jRKQ|mqUD+&A*FD;T*t45Yp zo|I?dWidKkE2;nFd0>97O1YAeB(dl?k|gN|<-o^)Hvu!df9N~OH$IFcj@_5y!Q41W<|)+4`??u*xWOGn_= zkF6u0j)Y2heAeN^F@_V1&Ll}oVPvey_(a1`5|ShpYZLH0A?L#}(44%;sXs~g%_G3l z5ybS@`jy^GMQC%Cdy{xeDbwe2=XrP~P%S!-BrUaOy+ot#&k`j`T0;AQcgMj03L)I=)Ssk-<)?P(Fx-5_ zStOw|mSv^a#~98iI*%k3A;!SMT$O4yBS~EdB1zIwwh{Qf7~=;+49$s)T=pU9;5h*( z9irQ=Je$vaXP7*uKObZG>7w&UQjuECl=?!s=opeD^|KtfHoyzZY3T!L;(dRT4xI&{ zbckA=z%w3JKR3^kSI0=L=sc2Cw1v3}owgq-BuP377J$En_{*JA<*Qk%9>*_q@=wyC z^V7O?2yVV&9Z5nh%fl;U~EdWTNOilC+%USzuwVLb;L=f}?LAB{2mI^LZrN%tw{-6_CIwL_9P1t>|6BdwyNNRreGwgc}8 zgulzO_TH%#$CEtr+eK%R)Q2npr3Y~Hhoo4Lv2cBrvN2MI-m{w8}NrAgli#oCNFZ!ucW2nG6U&8Z2ZvaWLY5Va3S!5qVq^n zujzDB7UnBO$B-mxx!3{x0r0{wGV=MDWu1u&E&n7f9VY;#`_S%`Nt3uD&%>)@WL435 zB&ioQ7Rn3_w<%Y$qN7NXRFoEQ4e-vG@MR+H$;aMObS6my$O2IMAva#OjwDaWllj>L#&=iR`M0tp?>t6^Iz;l5V+=0`szqm#q<$0QT~mM^lEf)MNm9?sfm?vTCvwHF>_2JS zUr%l!JZWRmxg_ZUSpaI_jjpUyo0<;`+a_NOJfi44lGLwS&6HN7L~Yn9KuJa8=Q%B$8mC0~HK1B_ z9!VNB?N*6Kz09yvfRd!*EYL0fE+O*ixmIoWaJj{b^S2hAOOh6y1)v7bO_!caHAzA} z&t5>};YH_>q(KxT)aT38oC1_2ExlRb-yvKUh@b7WYkNwSIww4RW6`-J>8P;))WC@` z(#W!h0KWvJMdy*ELFHY5lB6ZJ7x*G@NhE$bLRN}- z`Vt~%7M(|u2AOvON|KhyHsCYB6_NN~0p_OG?v{7Jrfkl?9*%#?6U*|^y6+SI-4XdD;9w2dpBIV zj*tgp!cP*pu;@IJqMQksntwIQbfB}osc1MHwX?f0<|$emk{El z+k7SIkXQh!zXgaPt|jLsK&9w7lBD~W=Yje{nM$=o2t}unBo(9u+zR}AgwF=}YL=#V z0QpKc`AX7Zvj9}zy5W*@S@(kLx$&}do(DX#=sc372iI(rX}4QcDp}D{BuPuB1#ASq z27DIc*CJsHkWH@NUUW7|>I)Wt>R%z}#>>{7M&!l#&$=Y_gggs0<||Yx^`fIll8&x< zx~1P&fGS5p;g{KnuUCCIcL>VwiKOFlKPefp!!o1h?R6*h`b0$ijE^m zI(S)@(3me%p0ogzq#oA*b^za|Tl)Q14&M!dX&|4x(Br+5v{Wnr)pu^Z^js2>G>h4b zfU}CuBS|`Rje41((H5mrUUU>m(!py3`{+*jeGT|8i2n^?Ym!wOK%BhzwxTmi(m=8R zRNsj)l98PQ{4C%eNlEHKolZhyq0H!bv*;+2r2E$f_5-)jo$~u;gs%tK1k3=P$@Sjn zCrQhJ1)%!M^_QJPo{}VOUI?64bRJ34;cL{(42`r&Q>OqWX&H!gxApF!Tln2T;9Erg zE5hwD#(e=gQ!en3q-DthP<I}-AJF@}7?2|r2d2^N6r8#i3Kj*#R@%o3;nB&iR?2=#?BwV^g4iABee zq<+=`b_3giZ4qt^@Ey97e%s0OJ4zEHt%cimu==?RMQ4>H9R>?P^^Fh%F$;H1|4EYi zK&zS3YNb?bouZ>iQa@$C%zZl*i6YDRS(3xAaOAR+n|~!qeWcka(QcKfRGk8pG>|g7 z+jd)YC-|B`gYNd-yC(T|9C+=Dusd{LyJBE3k#-K9t9f1iO#X~x)^9HQuSb$p01H6% zyewpV`cH1;8LvL)VxUa-C!3O_K9T2vX59i%QqSrfc-{4N2IO>0yt`g^m3no$(|fb` zc+DMn?FaS|waRqy6C?TlB5E8m_|MChD*=s z{*xS8Nn{A{rg%x}Gu2v~6~}n-yriC$0}w)_`&l&-$s;ijkP*mtx^& zz|Q~~A?^ishKvoZ5WWR`r+WFu4IzZvPJhLzGq?WvcA78nAd4iaKiSmih@Eu7Pf|bY z@ulJa`qYO@`*uFt^Hh?gWi3YXkqLJH@*mMU@f=)SB@L_&uoJii_$KgG;D#93Jb6cH zZr8~zc+MF`XOtvqQ8)ppBbFU=5|ukPoSZJ~e~9IuBx%_Tfuu1{dE3pjPCD1OE@^O; zfD;b9*3&HncZA6I_OI@IwOUWU#N``rCU6IkHGje5!jh!kWdW!oa_md~kkYq5MNBI{ zLd;L?K1DfLDoI-AIxQ;OZel)bLr98FBWZak0Vf`KJq?%xZXxm?z!$5RZ~A(G9YCw` zf>VpmDoN5Iu>jN&N%n4L^Iv}{Ir-Pm|IyHDmM#AzNj)J1%6Duco!?J3w!(V=CH=5K zchSfr>E0vwVu-gz_zLj(%Hd4ppHl! znjmD^*-3N$l%lgpl63G6+yl6C1FaL*6&*%WZy5&8Iq-T>Bz_N)Pe=Gn_0n6vJ6g*c z3#}B(KuOYa;-xn_Y$v_yJ(PBCptNuM!-)CuMdy(u>5yb?%G+-C_^+fRF$O#y_+8** zB*`Unt@6)jAsipR@NbkqazoMiBuN4+0Cfb~TW@0K=YF>wTFu9WcFW`BlBC`eBjsJ2 zN$Rr@d>fN=L=s>P@I2rjLku6U+_Cmep;bMva>=cw$|biJollZ9;4A=j*wXDA8UF11 z#%MPmUvw5pk`7r&DDBxsI&-H5prplA10D_het=JgGJ-#Aped}GnsBuN9x z0#Ju7R;!S5PSTiLTXYslk`7r2q_g`d?cQ2+5=s3j04D?gi^x?G{yrx>qkQ?M@yg|! ziq0lU8ZZ`sIxHu?@*gSf-AZZy?ngm9rszD9BpsH#O~rcvB^`aMfaeF|2NU9Df%u%t z6`Ll@S6Bo}l9q-ApbkrW``4Ly#>=ZobN*4G(=IxWBuR%S&nfS?mC$Y$okY@L7zcg| z_&|v9iX_J8RIk`L!H0KJyL>~@*(6DQtWCA3AD^Gx!7oAAbU>F5{9C#9uYpd;r_vJBM%O#r@hSEs=1*a9APmhEhMD-?1f) zYf0*Jgt>i>BgToM<4BTpBtok}dDmvA|0ES@5_lo-kw|=3B%ZtC{X4?QrJIY+B}wWN z7Jxcr$9>{zW`69Khm-o;kA$pKbR0>Nj!eucZ@&d{3qVPQJ05r?aMgUd{+dq6S65sV zB1u{V7Jxcr5fe#3p1yL`rNAS=MzbidRPdg`*)M>+X=ysMv|6|GH@Zp4+P?S z0`a`cWg9~E@{L93k|gyYKjrF>g**bB4{@yMERrN0v5=6=?WMGLyNf_1El1i{H$SKmFG^{Z&|0GF$DL~SgqqKXg6M&NX zK??jtAYRg1=sdkLHJsKi-%xZWNm4;90CiBRGkYk{>^%)Q!~6dvN&P7hT1`rOw&D-F zB=wPp1AiL{FU~@!dL&qq29pJ#4oZ2)1}Zx@t_^v%)>BcEr2Z8t?cPRcHSrj*q&{*2 z@UA5C#w5mZCjljC@K^xqK^^=2*Rc9OzCh?S*M(NS>I0D^sc(fqY4=t_yYAbaq<%9A zyeSg?FcOZn1eBz~VgaZJmG0TW&2Rr$8k6*iMQ4#D>F5fiGrLLV_hSPnsSj0wUkCm? z5>BgLVF@TngTew(4=P`^hOw_*J(SMuIm!F~BuV`)X)RFNv(5fbQol-p=K+5c;k?S_ zw-ud7lC%UY0QI24!YssiR*3n@U;!ve>SG}gT8-`|U>iV5{VM<$hZx=$V*cpr2RBo_ z%xOSL>Sq>!dO)=+KTCPX21<9{eljsXw&*;PBpr2Ghw`57kadbqB1uQvj}mxah}jc5 zS(Tbcf+eYMSpez*jeqR3{L$lB7ju0jLL*bUM^-``&Oex9`NFvq+M(BmyLJ)1-5Ii%ud* zOX*zTy>pGqg^kt>Lsx7rI*%l25m^B00cArYWYyZaABjNE`D}~Q|vFJRKq(xu>sQY!?^WVVQfBzim{=I8MyP5b9BuN?=c}BW-hns*U z4XTF*_=}jdA5qe=?B$l1y>mFP4nNifAd;j(lkUHhq%rR%U`d1O z(Zui`64sS3-$?C)9tW1BUS@2D-8>^?j`~ZI22hq!+PecAKuH2%7nxPK_sb{ zSODrir87I3`0QUyP^vt_2Omk&V2Y$Oy9up2UIZvf02~ASekpX$&tk%g4}P!cJd&h? zWC5uARNlFf>Xz$=Lw)vmA9^H711SX3xqT!Hv%VEd()XPP{9!3%XU=<5kRE>4%hoR|LXO=bgyJmD`HWBT0GymOHwaN}OiT&%JFZ#CR%s zUUVEul8O^^(tU0MmZbZ!0{GpuoIJeMZc+Ns#-j5`lJ18EpzbA|+e2;BH>P5#a*h)Z zlB9u_=alyDz#oW7()~J@$ZyAxuPkLgJ4n)UWdW#rDec-sY3q$cp;ce)rRS2Q!4^qp zb`#nSya!N{?$=L7!priQlq#1y1t>|&kp-acrL=DsA#!}uTo^7oizG?K3MBOzl7$)j zKS{cO-TMGTd|J#))ULR-=sc37A7TNhdx>d@d}!nmF$4=hNzz~ofn;Hpq&|yN@sjj_ zRs(MdN$1oUeaw`k<;L&Kx|a|$()s--hZsvmXOSeSP$7`iXS)-CjsQy1gLzzlSCdey zUg1$-Nm@=U0QCdbyx=YD_{jB1IN|FST()2FKEdV9yAWRZ@U4+wp*p#H@!|%!Z0m;6d zly+^Nig0q#StLnX7Gflw-i1FHlca<8NZ^$*glgrAO+{ysBw+!lA5z(IE2UkxjV8_c zaW6ZUB#CYTxPKQR&x%eWNxdQfFAOn0HF$l3BrOXTfcgRD9UI7p$Jd2Ur&@FtNs^X} zWNsg!RmVjjl625k0Iwwv$5k(L3Q&@YW&x-lkj~6ONFGKA<)X7llC&&@K+>2encr{! zCrO9qNrd<-rBXEvfAIFAvq;iFvjEf&h-FCTrdJak)t4lxE08o7Na{0qJ%%J5k`(y$ zPS$u-Cu>u4E3hOL#sW}xn|jfk*!sWzs+=rLPkPb0BuNJZ2#tA?g;^W{l%zv;GVqF! zB*QWI_$f(6@jI~YR%y&Jy#3~5DOFE)0#K5qy97eJNisiObP!4ERX-hK{`8!{(B-!l zokfxck_DjdR+`;SdH=4Jgm8S(StLnXULxu29&i(|Bpr_N2)~)+`LQ`^(OD#EAXxzF zZt3oAq`S9{&}of(!by^(AC%7Qf!r%HB}} zY1LOItwz~9jwDIChuAFuLv#XAk`7Z9__YnEoOyb5p^_vmISWADZPlH7$wsCg2C-Ch z7Dyf81vr1C*G0!z|TvH;ZGz8WJTYoG4)pCn25meglSn)Be~ ziX`7J$0j_}e}blDT~=zzx8XB>jK@q1_-^n86>ENzxHHBgF8F zd77q`D>fCKMUn=F1)u;p<`>^c?Z&T;CC!B?q6MHNNk1qMTFq_&X#XckMNk%KF+M58oXX|57oA0t`jQ2p2<;}Z zR9PF-@+$D>ZjvP3w?N3+B=tEQ0hFXgH4Z!nLM6~HI*TOrB?~~2EX{TE^(zZNk zlk=_VRl&zpNm_J%XB}|q?io(G>AR4Y)`qN8bR0>Nmbbh^sL%T2GD$i*9!B8tev_4? z#b*IH=vsBY`ghltvfAhwMMse&sTU-TIq-*Ol5{kT0Y8x>lxkOOEINxM^%V=i0hcsp z8Tr;{QsB6vvq+NE3zGUQA-4dOq@(1bJaUqEElAShvH%=#$^10sowp_-YfTlMMUtfD zFObw{AO5|UHh1}sU7 z$M2{EEA7JvgTY0Qx{=EsS#T67jkl6pd(ku>LvP9aJC?qouI zBo=^@v?we92V63@k7RzjMxK?NWRN83!G$~{G!}f@l%%7p46LV;gzASk6rDwqdY%Q~ z09*NsZ>O|-3(4%>O2|4z$B`sy`3u}*0?-Cfl8&-R)6R~=M-@prVite{tQ62Q^b4xr+c=JpZm^C4+9%0*|9B&nAq z?FJ#sh)IcVB`8TciXPKwo?8px{R@(Gn4AC{U@_(pJLS-Bq(x_uB&nB#b`$argrbv3 z(m*(y7*`Yhfr}&^E(^c`maSMrXXS}2Vn}L5XOSeScLYMKLGTE$BrTQIF>q$|hc1$I z*en1CSgZ~ct3xZX0F)%@;Dx&;04)F|X^Bh$XOl##AGodPERxidEC2^sBoJeqA|x&W zktFF5gtilalC;Fm3t3Vo&5O<|Pr%)tm37r&@xYFfIl5}`100&rT z)d{VI8br4MOOkX5LZ?ND7J!npgeHib?$EU)9Ucq70hY8D2+f6x6AY3h9h#7JAoC7D zNm@b^aG(JE*sVopk))pE(a!-Ensovpae_gTq(cyZn0N01lq4;c1UR)hUZ*-cM6>8L zlGJ0I031-~Kj%*g%>_bpAz%S0Nz$Q-(E?DCmfoqgnW5pLLr79DvH%=Vx2)Vlb;B(X zV}U(iV!2A#&9YvC)-V-6~ z6dgj622BlETXYCX>O~fS11f2^N#|x#@Dg1~k`7sfkXrys(h>{6v02(?=+Z4kXOX0y zVgWd)I&G51LIMndTYx1=Iy4cotmqJuG>BFwdAX9O{t!lz4uu8afC^cQ&{{|#){4#| zNm8!~F%moiEJ;N;CPapuVUVOlV*xmzLc2+5E+iqwYIl-ek|Z6x2p$2Jq#~@Mdl#T2 z=@68P4xnNr?G_}BggmblokfzQo)aN>1Xz-aFa=bL4k1as#sY9a#ZC*7G>~WhGayOQ zA&V{nk)&cw5Ih1bNr%cKzym7e8Dt$Gdj40Eq(c?sf%j2K(h{o>nJ7AhB=s5#zyTHV z4oTh#AzA=Rl61&oggnE0bR}uYrNCs-Atb5SSO5;HJnv2}#OOZ*k|Z65kb4K9Bo!b9 z#)}RiNxjDMXHex?_vHkjBuR%McBcR(NlPsS#)=LhNxjAe5CbaY9mo@idC^fMN$O1& zfRa>%1Pee(I%F1r11e-0&

tP5?@hbf_W(e~2bYMM!|5qC-ehudx6eRCz`S!6U$u zBpog%041pi2~aCKge3JE3&25@ce=kiy&y@_Vek$>Nh**9pd=k43%~&tvJNpu@CdLZ zNr%TDqDfLwsznEoq+VkIIH?Bo!nrI)Ehg8VkSy6|xR^2cRTL zhtDIxl2nwW=m3(`Yb*c=N*$A7ZEvcBz=l5%c*NJpwFA(!mQ5ouZedETq6h)*&RR)A-J{OT{FA*94&7 z0+J*h5+?v9DGP0gV_Aogq)ub|)2))+%$G-iB}qC2-T^2{8A&0GWF111I*kQjw@Q+` zmVksb>nM^Wb)uN$vW_50-KcE=C`kv;0;V{`&glB9zd!ptN+{uq^{S=NHM zFY6GJ)M+dLyHreaP5?@hbf`j@`8g^{nr+j-{;WetQm3&1>{20Lgkm`*j0q~)Fz@Y6F%k`7t`j{r+j7IwrW*J^o_xg;GF z3&1Xw77Dbh^)|$btg}dx)NukX0gf?%*sYR0Y41=gr0wyn zqezm}c>;I@SdwPj6mWaiAtb32Spasan9DJ}^5JdTt+A}LNRrfXLLlY~S*MVsZZiqo zmURe8>O>ZR-Kvmh@{bMRjLLd+Ml4kAh2W)#?#bqGo7L>7QuD#_<~ zNC+`Brbe>PB1uxm34vHBLd-gdBz2YBB4NxWhLUvfEC9RINxO%bKH($?p+WEms3b`T zBZffCm$Hr_N!{k>kvI|k^hJ^mngw8&+H(Hi5KBG8QcooKZ6Ha~K?%Vlz>+lkZVEA- z4h}F#(m}KN>0+_eLt5@>M+-nnk`7$NI{+nV_BDW;2no|KSebPeN$NN@KV2*>_7F?G zO%lHiBuP3LF_(v2F6$VQ)J^sSKg&9VBz3BM)&Z2ASgb&jOhRY_KE+6qbbw;Mh!gaZ zG^=(4H)kC}k~)>|T)SAz7l?(@IDux?StLp7DER_T&`Z*+`dNr!BnxHab&LqHP`YaZP?9tYb^+JN z7-;{=vaGX6Qb)1?>|*)dTOpU<12_RFNzws}#G(^`k~E9%B!-_8vW_81oy#M@T`cAb z#C)+83#E3}StLp7Br_9$d9MJJq}lOC`pIP0@vO5*lGI6Jp=<#tNwec-Lbx8M|0L>|)zL@Xxe|meH;aHe${$Sdyd%6oFq%0D2rvl8&-1Au`^0{_$Do zkfe@h0odiz+8}A~z$8ho<%5hQNe?V0Inr{kKQ<-l=o%ri#n)O%Ix-yl>T>N$FQn;c zK7{Gu_k$!!4=k4>dIz8+9c|YV_;J=DBx$~I0O+IW7{5Wn$h3Qb{_BMgv^d zC>G$^%d*ZQN%Mk7KD%6g`%Tbp?;_#^pd?8LAT9M0lU&v@BxyeTVGR7xL2F4ma-0C{ za!J~T-g-M$s*S9(NRreEVz~!$7J!m;6kX9fHnF3f_qA4%juZ>PF4wLN(_FYBO-mIg z03}I!AQ94Xm6+tc0#K5Ujy(jvGTz%m>$%Ib<B2TB$)|0VqjF!R-XT8gekCHNnal~J@~f>Y3oj>86-)10J%J|T=np;Bpn?aVj6!IeU+7@BhCV_ z%WZx4D`_n_mRA3gDe}dZ_Zdl&bYCJdS0Jra@n$MXI^srwi;|E`H*(WiXOX0N#{y8a z>%*kA!I2n}ar-|>lI}xnxHq?^pnew5LW|s_YCg z-RDSyBuV$;(%jK#>u2#mS;SCWoC-@yui_P|m?j1zHuWFo}LI!@qAl5|f=j*A*QpYSq%`K5wD3ezFj7*Y_fUyW4NkZ7~ z^q(Zn4vzo}fOb!fv{=49v>LY)e6*1y=^i3?6@WFoDnpVE+r}8fWzoeSk~C{900qE~ z|NajqA9C7QTI$_v0Vqk*uZzTDiL|F?|0hX@XFu@4B*guV7p}}YizIao3qbwC$g7?a z)9S!(JlrHn(mh2;3uV%tK5PIb>9Bk`MlScIRFYnxHa%{A@%5ae=M$B?8> z_PI!URdnD$l4hL+pnhR`#luKTJ-gFlx#1L`BuT#_K)W_X3>JWrbck*Q-XBP&8|R#m zbrwnLIu?NXh4#=g+QY|=Qz(wu|4EW`Pwn~;B))Z$q(jgK&TWP810ORaDI30v)i1Q_ zLp1vq?k0^}v(6$((wq_k?b;9|P5?^MA^0}%v3!ha;~ek)lcX$I0O}W7g({PaAF@3( zr*9#+30RV(8If2hllJy!9Ym5k(HQWqkhX928AFn?lg~PU=8oN;cpVQe)0}+p@9xj< zYd}o1jwDG^_9Dbm4{1*g@5q&;gZ70;yg23(8ZTIxbrwnLT227!9zqk+-hu6YIwwie z-6CnJhqO|MXaOim2jNyCZw-V|QXf4fDNDWz>mJ&DRYIEnkQkd;XOSdnPKc4T+)LWq z=K!E29k@2|z9bgE70A(eq0@holqCy5-9vNni6oPwKaTmrbkHx7=!3I#0 z4%o&>{I4|Eh*Re*&pL}Fbv^F@)IBtooJhQP`xQr8QCcHcsx8-OM0 zKy3%!5D43+U*OhXNtz3s0MtFS`xnz*uzYVI-ja0|Ns{J-5NP)=gy7pINjd;+;6q7> z8$)nvT9W1p-^uD88ohP4zxnk$X*F)}K}V7#fIzE%AtX-4OVR<@47?|ep*i(}6SB@C zNxF*-kM3d5$6m+rs~?)C_2FG4etSrg6bmKVwIRR)P?8?NoxtnT5bn&Ut*o<1l758^ zkA6c83GJTxEinXtYD<#3Ta2WY8fi}*7l268{b~U3j3Hi;#K`!I9+Y(+Nz$*d0Mu^? zX^UiP;+hcSMAlg(Ny=1=q&+p#N)4g~pd{UoFA(@(Ahf5?aq)*F%{3N)`VFoAMZ^%c zrllSWKuJ=Ui=>tM%mkqQpCsLv9|d@IY{%XCypNcYG#B~mtl!XDxRTZ}Cr`#=WxLZ3 zlBDhyXxE2{g)%mPl60^31OGln;d@Dd@jqCRbskC5y|4h(Z)n#CnLP24dqb=76M`3> zOOm=+lF%Alf{U>v>0Y&g_XXnlB^pe<(5=6cG*|gEcb3trpD8dHf#YUNnI)C zaS*&>RvS$uVi}pLnqsn>Q<*7BuQN?>3MFYq z8~6~!4?xmxoa53DN$M09fVx-hzJ=^P`~U0@t;Tn~_*|0IodWIpFtJ#{22hfSz~>^o zJ`yGxFYw+!N$MmPfVx+E&pwl-Z+Lzy7D_k9Tp{Z?k|fQ(T#nYD8-OM0E?Xk}6NK%J z7rZ0uERv*yWC5sq)p*_-T0=`{4=%Z#B$>=Qk0eR6EhafyL&wLpL zZCU4$BpoCRK;5U%oQAaZePX&R>nxHa&9+!5(H>Zmbqq<$+D*XU6-uq|G-E>RoRwMU zkt7`g3qakc&~8CYcBGZso~*M-k~FJgB&`jS_V#)GpQLWK9e71P7B6p37iql6@=uaF zl?9;gQ*+TuCLj8QsaUMsm~|FOl4ey*Y4t56EmyGtl+>m60?P-KW?y$Vu;h`D8LZ`E7z1AW4$COS^9YX}K4o1)!v^GYb5BO87`f(stv8PX0+! zr^{y@Ky%l&|9Jz&Cq5ZsydyLw($JVpya`>B)D@B(?ZG9G%R}1EI*laFrZM34F@$%A z7@LiAj?X%eB)xVfl-@=~*E&`Dxb&Z%W&TIho_^+hyG9KX#?RI=?Y{zNK zKS`QDEC6-C!o)aXYT`#R$!&G|PmEc}V(I!=tW5hrBuSdLVx%>+j99Gr<4)3i(grSu_`eFp{MT~>lQduCoqv+l zO)LO)K$?qBpt<+Mv|Ob%d@Mw#|0H$1p8&5S z<$?gM=@)t5pColNj{xg{J)}1WX}XCJ9Ep%5%|ns2x1ZL)B0T;pse`qF%YYZR3a!tk z`Ls3deSebF^_&3I0ULkxQz3*K(o)YzGBGkh2w6vxB!Y`l0y)|n(pbC7oc>Yz-o{4GMW@r{@-jfci$J?lJ@Bpng)t_2|di*W&n zqz;e*R|Bu5o%>>v(45+zgTFX7>s*qgIm!Z12W9%WhZ75>?aBE5TXNGA5BDxWNz#1L z8d^rI^g013X|CG`d>nXNqq*S5VqrH^=d8#&lO$=5^9ZmGPXAIyUi`K@LQKC);c`xik>vrZ#Pce@^VFM&_AY3@oWG4+C#S!a?Ybtnr! z9kk}66*QKdw6ky9jaNhP?13byvxPu&;d0VaPu58!31BDiDd4@OB>uP^L!5rW$+WUg zB}wXN7Jxcv+n@GaR=(-4Celjv`*C9AIic;_5lK=93kl67Cqa^U1Xxm*#(+y9zAGg8 zD@oJF$n*WIU6OQUxW-in@1;*9tyF1O2fjfF`?HQCNz$Q<#A1c!!sQTrTO=tH)4&zL zpM)4++HRLNgtXb1I>+O_lB6TY2|yi^v{Zp4`B5xaw}!F3eOc#`Byj-TpZn0Pb4ilsF$+K)lG5-)DShSL)3Mxp zb(|=?IJBBsN0KDz;3Wx-B_|RKB_{wS9c>NZd%!0kT$m7UkHmE9g)6eoB}wW67Jxb= zx4i$)S$6u_#C+j9xjkEV0t>RvBuUc2in#*KV@`$;EC3}PEmOcZf&U?dFSMKC&LkJ( zq{W{kX%<-k>d-Z&iMhg$(@OP@+~^()KuJ<(iIKEAKx=qe)=4DIPkVvQz$XIXimBb# z@2U(xnCX|S$U2uKsS8;E>X5aUp1}AMo;f!7v48$L@Y`AEktFG$#FW<1F|_-Jo&J+_ zq@=(tz?UI@CW*J=@ed1Nkv{?F9QYijeXf~3p zGf9$kz(Sz8a0O|(W&tSaaE$;z04|E~#Tdd35L(mctjs!>BuRh;pbkUpU4KgBX)htP zTR+I}-L@4tChJU+Bpt9^f#xv}^8PxA$`CnzLI9U;cM?*Cih^q-^$(gJn@ z*8rCRmlNWR`7|9*Ltyfp_ZJtY}$xXeS6 z)Zr`ub=Y#dZe{8rPq?*k$B%!MOi!NdMM{#SIW69G|KBkWa{5o|Zu^;8;&CnT4dA=L z&q>2}l9*0=v{#Zek5~Zeu(g++%%b=IQ)}#ZR(*ved4`h|lBBt9=KjA{|04X*O6nSu zz;@tv;5uf?z8^!lDG;{;?Fd-zW(vQb0XGxEts%zo)6Jk=! zIwG2jRs!+5;?|%2kPuGKI*%kt_bFeZvGgR!7rp;a>MW6&f^UkMiM~l-4>MDJx8C)2 zJ8)Zo+X?K7X`C)LOD%xWKV0^Uf6$k+{+&pYG|Maibwup=pEvRb7=8EeuDvRm9DNWm zb)-U)H21_vTJE8__yni_r0k_YlbK?##Z0j`1xy3u%q-;?1xA>e=)3!CH^iO54raFU zHeyH`X{*=@xfZQ+mfz$5iQ9T5NwNUc5p)3%iACYx-Nm8N;K+^yKO6*BQK~#sb0940IKJZr3({Cr)wCwL9{7u$* zBuUwcz))`w4_>%{T#{rRN0NSB3N)E{x%$<=ZU9ri@-=d&i8?Lkc2kC!y{Y-tjs!+BqkTO#W-aR>ZC-5`i2H?g3cR;+8q%ua##TdugY%wTF9m|i$ zHE+arB(|GBNeZR&VvPTS1-B%1m0~`}U~dlrw?RqL0Z4$pyS|S9wg20Agsl+nB%Qh$ zxDNQ?stp(33UOlLX)1NYW8@_uYfrft#3_61*1pK7pG<%FZype>_&IYc6R^1U=+dyDo&g!qj$P6$d;7AycY@8mx8b{6+8Wb63$e~2-@7RY6tNs@GQ z9X~w8F@5!{V@Q&IDFPF~4&eL1x0sm_{9%k?*Pi2P9{a7xm!G>n>ztC*6)XTXFC`y( z8v$0t$oY}@$gJ~7l8%lD^cD-8vUm|ag@VU_C28)8zzA?F@D1Q90^fn~^U!KdMTncd zKTwj68Vf+pOUZ}cM$(R?x$ytR7~cXEvd$z)Iy#p1_px$lFzXnSq=VB0wlZ^Ecq4FC zj9fR_Xzb4?N&LoBo}G0*Nt#zI05xyTYy@U;416}m_{6O9NRp1cVlKxiOBPWtm7M;Q zq|OzA-M~+P&A{cv@Wa}4ZP#>uI$rkVr)Hf`k~*FRpysXIhu=?Sv5e z(=Pm-+TNRp1e2XSUwP$6WO_Jt33qZ|##s7LIfzaDZTOUnh^kYIvng@~)IB~%ci)%Hf|0JpVw1J(# z*MN%yY>a_BfY#$A=#Npq3~pys{uf4zfNOi2h&ZpHMIF*1;KCP~tvi$JYZrCH~ZBptj6^b`s_bjc!m3I&h-iy^Ra?fR^mLc6wnN(*zTOOj@V6M*V2Ettx+uFr+!!(nE7m?Wt~L}0L|LT}OOKS|O-D+7-Q z-V9t46JD3XqgGvhL2=dP7i67Hl8!nj0M&KMA9*K9NR~F*tT|Qnmn;Bpt2@Yz4jmd_0YOC!fzxOiqmR&8I#$>ui#A#5n<|uG5<@GSQsAGoK{y z2_Z~ookx=Nz#`CJDN`$#EdL})M?wIW0)GsAE(v@fZMU9MDwS$a`1*OQ{oGn zloNpJO1&R_H~A#=O*ERHXr<}zXPrlqbpLWm!h;tsV5qmp0#K54wCn>m03V64F~m5w zdEGOz&Ll}kgax3w(!x)Cn0?b@NjhW}fa+S+|9&^ce6BP$*?3>G-F|7-c_c~qE(w7L zEnL9DYOm9OlBC%*0$dJ!IFf9n9mYek&F0nXv(6<+2h9RdU9I}D_W=CPRI_=0J57(x zI*%mjo+2<%Df5s;i^%7k{*xqSVn6U@2p>pdxGIJ?y=m>)S!a@@gW@}Bb+tm0@USI| zt}f_^C9cABZuYdg`SY7gt?=Vb-}M>3}%_ zsIE8siT4xXxY6n93!3frqq5E;NtzLXzH*sU7B8fb%Vix$lBB!s06q)6za84w0qv{S zJS*!=l61fPI9**YNMi04 zNz5&O;)Y8&ZNr6G=aQuROhJTsJ=5_+&dxhqKNjN!=^} zD~1MH*58+P6iJc}#3Zm0cvplgfXOYEfRg4Aj{r+|S=islF@uAfi@Dr+Hsg|%oe1<4 ziwyVn`bniEsZ&&drvm>S;B5hZYu%SF2y4E2LDsn>32*{Xx`*1w-c2c=KV@WU`ut|Q zeR9@$B&i!Y{U=G92Yw2?55mXWv9%+g6xp=q%&ap>>S9g+O21-Re=oZ}`1v1|^11gX zA+)m2BT3!nSEv6ZN$OxH0sjH^>3Fm)|ToQ)v+&}V(@kZk*S?7_Y`N-)%Nm7@)8F)v4b4lagSO{!hy*}$q zlI9sF0HyoUU&-^c9eZ|Hi^cyeR&Lc_lQ35P<`cIP7y;cCPkMO~mghy4HX;^dl z1zBg3G|yN7O84XHr@ny49kYZ-AG7p|o?_v@li<*-Bppc+=q(jl;O1XRQg&jLO< znIwPQ4xx9|21`ImM~(%c^Z-^raV6i~wzbvQQ+`*ekpF(xc_e8*Nq|MQ8l}9`f085t zCjoB--U;DBt2SIjj4|s>lI8)&nWO{t-Z!&wpzkGnCnnz8YNwT~<497ci$J|x;*`aU zDCTlm$B`syuK6zT8j|ouB8|;!&dxfIqz>i;pmcyvS-ON{>h<$`3#ChfM}Z~juq7d| zxK^WN`6o%zy?GSyA=3Cth{KQH@CDXx{A|{lBy}hYK)TweIu&7@1=&vM653B&3MF{`h%omabM(H4( zc>c%eEti(ux@XUM`zNPXJGmlB2PXo9l?o>>T1X-1XOWU59fWzKfLqKt^JkC8%u@!?yU1jQm4r$35)w`6fOTGNjg~lz~2+%2T6GN zw%9K(|9IHKDYMr3$o56X^yi1ln%jlXTE@&cJFNtS9{;xTP%Dt>pYUwDGIrS z#q}Eb#J3=lBps&Tih&Qc5?PcMCyveSQ(Bpn$Gf!7jw18G>g>MIwp>dMb&ok`LhWC180qRs2p^Vo+! zf`=?z{Ka~?{IQ(VERuA;O8Fd%>os!09b}Ru9YGb~e-q+|D1=9b*a}VqO8Rv+7SdsO z+3Mfp#$DT|7geiouNI5fWSvKn=CTFVUTWo{(|?jA9eD}xRN$j&lc%*pnw)xt_X0}# zB@005FubtRL#?-mAKY-`jf1^CZ!Q<|V_9dCq`4*nJUEh;I%dE@_1pYcKsm)|n(_$O2G0LY{c+625oo#_NW9d)`th zNX|d4}tgRWB%k^(%^|3JQ6H*D~|w6N6=%w@)@e7 zV)gnRJKwWobo@mg1(wv!A}~-X^Wa4bDdcil$B`tdn_UI`-B>yI&EDxYTh^@4I*+7T z<^-U01bzD{&*ApHBV&uI^*7ebJ%;iBuUEJ6M+v^r`k^mk!00| z3$xB6X_i?4N=Mkrp&_n$`QKbS+}rcUo?>A%>pYT_g$NAxR2ZoA5VH;=Ns<5_2D~5m zgEVR9PP^j#tn)~kMIHf`j)KR2`7ebiPN~N7yXOg6&C7&cL?WO2MDj|t)R zz(PwvY5uVQlxD$KS3jL=w%y)3roZ;?;oja2xx_zulIE9EKF89&I(e@;kR+*7<$;$1 zZwRo+?ZDFfVhbV7l5algIovrizHL#h_HP3{m79G;mNcI%tX8R&%TE7ElGNGqz>6aM zM}&o|uDCGkJd%zO3qWZW9X~X{Yo7AtuPv%o-`ra&O=g`(k`7k{dW%Jt)a&@ch9pVz zLJoK#@OokxK5fHAobEKB)bV_;F3qyXU-~)vE9Ke^J9fSO_I>+b+Gw}^b111}B_VM9 z@DNMtwXCB^lB6T61$>wo{wapIr_jo?;mJ?WI+LVBhS3vAt<$ZusN3sBvGP3dX zGx^b-cea+)YwuZDtA4SV%Vix&k`Bl(7k||78Usm^xj*DPbCgbVJFwJoEC8hp z^_9!)92?uYxUc@|;ohDbf)CP?IzTQ2miE=D6berNNs`n(dVqgO+Wc8;r-jolzaZ;8 zk`96epp>C6ocdHAzPO*SzvDAkFRs`AqrXxf%{r4L-Jb{y^i&vj@rNWy-KY?$VydN5<@%kw-gL{Jy?-&$X!>VU(wtPxL zBuT&F*nxhQ4-DXq1(GCny`KVqk`gxMVr0|0^;zeUbU!=-EX@($c+xZ3H8y_h;(F~> z!@bp;ybn;)ToQp=sl?)X&GJu@BmtZR{AWUZL0&@ZzlVNV*SxhA+)A ztFO3-;cBJ)Ychn>+T7Of9Nc-@K?^yR?|gWgSUU7mGlpkY{OMA34iENs{!N z0`SZbl0TTr<;b^O6DG|?7J$+mbX>W@w(-e37guZlvankHi4!-HvXX?rl6swLsp!^U zNs@G5eoo+9#gJM6N^_J2pfm@4de!f0WrYP@1D|I`=#_tom(+dMekaG4@V2n~!g_ z+Lrc`W=%1dFA0;yp zKAlJY?t{4Dj-A&ms@Gq+uv*>W^SGp=sgNWr>+i>@V@Z;9A9e!&+z5s5_fPF()4FG5 zok!9GumF@g!21Rt!NZm>;US9_eSUGh_Qw96%4F7=B+Xw7YgGn%Jo+n1lJ3<6#Q$g~ z?Mw1ZbMaGOnspvY2fzYQ>JXQ$dOA1l-rZhOtG#b&U;W%_shDP+Nz(ihfoiG9(!M%L zaMoCoB>jdI_*hKS_vh23edQWA{z{#~0#NE88`qr0o~fzv1-1I?miF~sTFU3MjwERw z$tMZN^z~6G6ta#YNs{KKOM%ygBsackt;c?)PGSKlb(sE2m3`x5w=bynzS5;2l8&U| z-d={Qy;;YQBuR7AwZK0?ybW?$XOVP}Y!0Lj^Q9*~iJ@whE7v{a>czF%KQF9Rw+D~v zNjeM>=qVOi*560Y*Aq#S^qY17uiCuqwC^S{vU%;9S?7^-kgV;c4)pVn{10n3eV(O* z13zuGT4|%zUNzBddLCHPA<2cnilIRUdMa5*kt9iT&m{2LHsNC{Ms7(ryYW}*NKODs z9qNkJPiOm{z3stDgU$WrPPg`k`Bdi)uX?XBDO%q{o@{aMe9gFU_1 z0_8@l^|;Aq(?8>qenUP9tQZ_%pr)6J_kGpPz>@A3foiG9vi?5r{gWg~zwWXa`PWF;w|TAQ zpETcC07~;vJzr+DF?H+0YV{Sz^!I(Ql=CF8Bq$^a#}4#U@q+UXo!mYWa zoplyTM}Y;PG!K1g^;4;p%6#M2o4&uWUj2uqef3*%iGSRsZnvmjW5|2|BuUae-2%KK zX@u`3A#%m(&&oQFq@%z_K$@pEtUi;+AAc5w{Z0kKj|z6dn!Llk|eg;=@Ta! zjeOR*B+ag3F2@POL)1#8tfNShq`6}Xcs)t-{&pJE&1=reI*+8I$O%Acp1b_?vl*Rg zHU}#`?^@R1_u+xw9xwHfx<~+))a&&3RJ`|3k|f=&1$;0>-VxeqbMxtzf6{zs0Vs8W z4QtM1vN=84-&20|vHg9Yt(VL808$r-z(8*gOZ#eg@K=%~-6aB_h47jf!q}#D>$A=y zX%<)jN?l^(+GjA;Xzdv6?fJ)J2l_7SDHgMiBnxIHkp-aCMM8Ke^;!1Esb@GXn#wU-~$SHC@%_);Lv7ZIqI zN*p`TM?Uf9KS`1V!0kj{KG_)Ck`GO;So5r`^GKRyj{Znp=%#beWAf=w;`sXD4O6kb zhsdh2>FJ8c1f|Yb%;h+KXpnljoOKjQk~BB$0bUXExliYFMYeeKSL#X@fKr#b>7(b- z|Gf3o%cbk`xm>dy}-{li`36HW(99V7xhg#yP7_EXH|-1;j?l2YJf zF~m277$;iMPY0!L=c|Au09J3fm_jaDyk}zKZ8z=S^9TDTCw+a8Iz%o>IB|H0g*CVS zN|GcZ@Yx7|4Q%z!KS|&bU`cn`wDv3-t=6`|O64Dp8|eQ+tz61FlB5H)xK?Ah+M9I@ zNs=@-d6zsD=Yvd{leyT>zQn~ZW-+D`Mc!<0~>pbMUN6nb65oWD;1XY_mOz< zpCn0wO$7dy5O3aW`6uaDSO7}8hlRa;j80D8Fx=bw*T)U?f1{^RumqImsB%8f^1*&e zd9Ur1BuRWLM*ccUlIt6j?X0s%nqw>gCEddXk6X)dt;X&9_Wxi(t@^U#2Kv8ODda5y zr8y=S0>=*YQ7@PM^C?M^egNTRMZ))+?Z`Kt_Ux?lNSb3T044o~FQ57}miO1WdjFnp zFRWGn&v66&*O&8_fYMyDuwG+Pt(J8RNs^Sk>w&*+mm1$}0#~g)JL^1><{%3|N%!iq zHD~jf!2vdZ{<=+zYPG*TZlM2`QqE(BQr05SSE+EU_x?$eB)A3m+x+*wd5NB#NFpkC|!aUrrNgyht*>FJ&{T0Ka! zEuSQ;7#w7%wWGzKzh{~&&oQFq&dz4P|^ds z>pYS=gcE?04%p2f{Upm?^t^PSRQ+x)&lK>uvFS$HIY8;?i9k=GzzGY6=q(hojw4Bu zvNHnwd(4M-1wwPnn)O-dk<>vf03{uin?HIU$GrGiX@9x&-Fz-L9pUj~(~XiPpmcN; zl7!=jhZyLoWF1A4BxPp|`1hEm?+7W4&1=_ZokvoKu>h2G&~7^SlN|Hn=d^pv`R^8! zLNmhS$EO=bOF-$!3L$XpKtD_BHShhCB&mCi1FsJud3#90l;xkKL*X5Ok`Bogr?02c zV5+ZNe*3cizBeqX*C)K2OggfLdwW^h=h6>JlDgO=@Wv#Dw}v!MZd!A8)_Ej#C<{PI zhit=|vuL!_$$F{spUe9D-n_V8o3yBq4qpW7_=})K8Zcfz8r8h3??|bXwdTq)QP&z#2e4gcl{qz(Hc(h)Uq^>jt zyp0(C1DIG;JwEF^k~&;I>j08E+udc~=^HK@AE@-c9w-vyUu_#5E5&GaAswt-5;$(4 zpZ-e4@=uba?lcX&8{+F?V0_EkXJnm6(mdbg{3W&>(s5{gWiA8%+Uk4}pItgb}y>N;;A(03{t!H=lbR$Gzlv zjhS>QpQIzr0#MQs zck{XDvHT^^ZT1uk-zpUfZQ!wE)0TkJy@|{${Wx*K5cP7&d;cU!>OSMZo5IZ3xaFUu zqro#ql8%ZEr=Lx;%|w5>@}JB4`d+)VuWvN*PC)55uQA|tNepicgz-(5 zf0B+8CjccKH8-7m9>=}(Ijx>j;X9>#ehT>A@##j%l0%viLg1MGK9=^?acPbuNnK|Y z_;-@{wiwc>O>X;@bQDpYUW zgax3aS#$a7vzTnOnggZE2bT8L|L<`F{acHvX#n1rta@p^FNs_wDHX{F! z#PGf(rD^#mX*PM|xTIOPcH<>f^W|i3WBi%hM@Qdu+n#+ZCR;6EkTmZlA+U02kR^R} zzuzTE>Mpke|3EJNG-*gTukqNgq}k;Jprl#1;q)^ZZ%?Ji_SHYPq*nWj<%0v)dlXXh zT>zH$)mdDxS^i0q)Lm`>{xWT*pNcKZKS|lJ0F;!8%U7St*3t2J=3^iGrG>THpDiC8 z_(5;c5>WHkaJ9;^{(h2R{U=FM7x_NKKN~Mkf1VQ2g&&f#;tl+gGIR5}=aGN%Q@LsM zwp*4|2ftg)=N~@RY%XiG+gV4Gj+hAa|6=2>KXxTa>LT9+{$i?CylP>7oXb}|H|so- zx|m}KlIDcp{qkq2lnM{qJwEY{Tlel;Gcq-mbtLJq-M#VmCbsk9qyaQ0u9CGElXVOaJPltMY{&MBe;Aa<9d)t0W zp-z=c5|$4RSpG?p)ICz*a}fR_M9V)(bBhI_q&a2t+V!;4c*{Vg@_&{O4xGEFUTX%I zCaA+CA+W5!k43d=)=?x$((Gsg9|2wl@#f9z)@PkZlJ3E$YDsg_+D#XePjUnMCnx{! z9s5UKwsrqVZyLQpO`TzBU!4_$1LP7vXOkqU3rqm-3XwMedp24ANt%N!042>?>$Y4% zA(vG4k5B#io%=^#dFTF-!B(1P9ZR}j3#z@GFg!#d=f+=2lDfcN;I+i?UI-JL*PWGh z9!a`a7J!oGv~^p)Kslc;>>D3{!Pb${*W9sx|FMl$JL_1|Z-~G^rOZhShbiX^S;vti zNk`uuz`ul$e4H4Yo7SG4bskB&PZofZ=Dahue2KnFPqJfV@6&dSj=t%(z55?L(QNtx zra2=5)nbtcEgYs+D&b*uNs{Kh8-SNjH>NMiB}w|VCqF0aJd$+3yqrkVoOju2Pi16k zEPc#_PW-~+di_sU3=Mp%Rw`v3O9E!fze+yO@xy~uE&n7*>IUBd{-h9^7gve}%RfmS z!2udc9pkLcpXZwWBb-p{efXa7$^X1<@4hqkO-}kcrc4!cIZjwG#BgtK)=?x$($N)x z%OU(-$hUqF8wEC>;hleyI)e|+k~+%EZuk*j`}q&(tMshcJ2Cb8+xG2y_U^Iqyi-@o zLOw}YIW)-PdM)cHk|gQqY6G8(F}$K3+BfyJd-&3melP1xl61f<03~&#)f+D+pCk)L zCMREY$G(w2**-d2N~1NPW=|3V#|`$gtgnv{{BbHt(mXZ|d>F#N0XsIk>_buq@`*)K z$6CATV)D79HZnQ=mv`~USZaS(K*K4dC8YG{% zOG}cZdF&R5uS#R`Ndk>4o&1y3!F)!R)bXBj<(F7ct%h6o>{`2Hbo`CC@7w>V@kS%- zSemDXtG%2sJVY^<%Q}iANjiGI54^lp8oxAY7vhzx{vhi-l5|)cU69oAzH;hQ**&^9 zes|lR%a_z^f4FjJ@GJe5a+-B6%|8P@6;=)oTK-9rG=HVQS0eGH*RJ{CSM$wY%Rfo; zf)jv}=8ae0d?{b~$tZp0!m)cMC;sh@efyukYkZ;{T@Ionpk6L<(t-u_77O?tB}vk} zG!1+*MqZWVxOHqBT>ZTDS!a@@Bf2$m8i=GZj1bPYuPFgrjf4OY=CrQ%$v=#U_A|C~&Hm_TsbskAN;(QjC zG;ck1%a`e^l#|={@BO`NR9Ua#Zc}1Gz zO9`|$pT0ipJd$)&SO7|z*Vb*mm~Fc!SvXLB)UL6K*WJEv|C9DjPPza|_bURWT#geK z3^Cl>n{^yXl62&yz~vEMkr2O|64>IgUrFCX&T?3Bw^HLACkI- z&o+{}${Cw3p;{^AcZ^K@{?4(n*W9shqX?;E)wwp*5elDbYV>j088+kXCEpP>5tzsIi8z1tSn>Klvs zT%{f3L#LXpg0}*8rz8ZH_4l!Cpr6F@Pm-khWD@uYk-u*x{G?tivE@n6$U2iG%{rfQ zBz3j5TRu-dNqYBKr#PKrZorc}bGyk)6!k_xE04 z?8-AN{v>rTpL8U3y{BCHC9368e%t>2Punp%_PRUwk34ju(a1WMWgyl6_?W)>3yvQeyl|kW z(()6M`7Hp8Yc-Zz{z;NFpR|C_6L?{1w0&Wk%US+O5>5b0(mkx+a3Q69e!=eXiT`uw z$jJZRIW|7nN>g7f=a~R3uGd&GG)Ug^Pm-khVju8cVtgyGbMrcjKS{cq&$N>CYu0Z5 zJe5+hv}a`W8QVt2{&m~P$jMW!R@Sj}galyGUB`Y4Id@@6k~B};0Q`Hq-TrhElIbnp z_a{mB;MjvC{hAG{o(`?n^!ndE*p*V9Qb0rTxw^XOGn0{n&qD)N%Ke>_zLjC zLaF`ne8KWhlJ1R9KazAWe)?aZpm5ex**4zTy0likqFBf$Y2;y3&1NZP9ZrXAQLW0# zp+U<(Ns{J=QQ&<6{vlULu5V2THm|k(lcam&5nxHWA2CMOZvH&ALb1GUbo9B~M@L_^ zeRS;jX^#YVoQ2gY#}8ZnNs=^A+zh;yr2X*}rt0}NUp(~>vd$z)bCw05BpraKUG-&- z=^qF`*|zm@JIBUevvp)-&B)ZW*C=#|h1Du6hX*O;ayY>$Nm55kfh`dKIZcwUg&5N< zYu0C-Ns{I~3qVOa2&Z0l0mXc7*`A4sf7m)Q`jXvag(_pYq?w4fa28 z`QX6$edSUk>s4bF#0eCYzH#YgUpRJP-~}s&2L5ZXr)MGw ze#SDJLI^DBtFyxLPm-igHUWGzMqcp9TONLKyU?`!lcXcSr&CEff>vE|Aw9)nZRhCN zIon4@|9AueRYl-=qI08{z;P5p>77=NaPcQFtT~A#h)Y{DHec| zbc8)=^XECHUJp0y+V!~Ir9d~ulS@SNk`bFtDa6H#Q5`_`@X(xVDQB&h6Y}xe>=+w= z;zXliQ*{L7l7wUX`#7e*5AR!)B&p-1z}JbqHVx@zK=aDA&&)cLB+XksF-g)ac+^)u zO<%FHY{%H>%eIe>{?WdP$-!2Pz6c+J2o#cp;|BX#TCWo<|0GH3G<$(_iM%C++mmV7 z{IvC1XOg6O&8H?wnkA=gxQK7sb!2uT6 zs+NC}Bz2YuTm!r=#PE4wdeb@=eMr)5@EDpT&5|u^&xQ~h-~PR4U$|m$;04PE``Fj?{-g2Jk)8x zU+OIuIbnE+zDhakD3T=Uz(nB3z*~v&ldZs5HI01r47dDBQdWGxl%zS}e_itpKK$Fi z%V`@fdeHWf(ZAg}KK8uPsp-Bn#;l`ds$MQ}{O}OI;#!sEg98+Dxvb+zlBE0B2EGow8RD0L>CJ1O zk##0X(!H<%l%zTAb9daxv%d62p1AUur8~#Q|6JAjXb$h#)e#_hi~d@>(?2>9+_l@cKW^vP_}}cCoP6q3 zv)MD(%C!ItS9@78G)N_%xBQbNY3`W>z5=|3B>ftJ_U6?t`H-YeX8|Zl^T=bq@)>#x zg}!a0W6#+;G4Zl}lT#0!E60M95Li;LaqK`pgJgC;N3CCPZ7et0C?A* zB+U;NfRZ%NJayCOIqReoIroRxp1gf*>`(WMPnH_~c`cwXHXf=QHD}%OzDqyD*Pi?bS!a?Y9c31PlGH`kZoHU9wQBPHJGMS@ z@8snFH!?Z(%*j@(9*g`VC)> zQ~cgL-^k-1{Lt#{`$wKUGBx#=6V2wSt#-Q@fkKjSOn)Cs`|2+HkR&NP)4)|k-WB1p zq>zrbCJS8klryu=B}tlNEC3}*_i5dxFLL?jjXdH}zcajZZ1kBUQ&WE);kTCc_azIf zy#$wiNRpI=Ht>DmeE}|P(z~<37@M5>lO){-pWGx#59sCFe#{#eKZKJm_}KDFq450v zp2~}W2LlJaF<6o$9kK}A0DOeNC%2#e_qQy#>NQ+>>hrVCB}tm&EC3}*2ki7K&L;_J zXvh2sF>(&@0^md}0wqa0nj&x`@W}`tPf2eGgm|SBf0CpFWC18iI%un}xPU-R(wIC5 zcoFb?U?WC18iI&7zI`YcJB2~@tgLfMk~*9ZW|E{MX7%M45s0NU@Mz!r(bmy`zN=Ngj_iiA4>=?0iMRp(O^lEy4_CT zi$u;PiQf#Z++?eNoU0!5{H$|HlI9@`KuOY3w|c`xq&bSA&7&c{7&r@9nsqKok}|Lj z_yUoSLi`pmy?LEmeI-dpmj$3CY1XXXZ~;jSg?8Y#fpdUo0LS9bBT3TycL#70gpa2w zS0}mH*t}+a)|n(pUBU-0Nz$x4ZR6*NA?A~I{^3N4|Zs1bjB|5TKNGHc65WLIbz~ z_#E)LG?)CCkhZQ|wLa@ylB6zY0VqkDGgfW5h_sy~NiIDG;_m~`2Oa}dvd$(+(*2kM zt^v-2a7ix5t?e|X-ti|%nky^-B}sG6sw*xcDdcERw-$uJlYr*|tAM_&vq_TlD@K7U zflopB3hm~0l3aAFuOw-%u>h1L%~@-%xRB;_j(jn#r|<-bF9eWB&nLE$$06sKHk~+$1mtRO4Lq3I@q#qZ zbs?p-d5y<>B}tvb0#K6FkxswtVv-O-E3_8_X8_Lyo&XGFolTN7FYE`t34AINzS@F2 z5{Or=Jv-}Mk|Z583qVOyM_aq$v!p-TMEk*OYe|wkE)t&w{2s6j$Yq^RlGIUB;7;JH zz~@5bsy}zcd1T4ft#% zT$+pA5uv?loyUA7N%M;jL6W3->$D9QvS-&m28R0jk`NvPtOuS9tOW8|=aVF5qRq@U z-^+jti1F(S3O)OFG$+`y&WS%s()?rrC`sxHr(JO&`55vo(v^YmWZ-Pzu|Qwe*(6D` zVidR|5-ZHb8^Dw)$6m)CP`AJEC3}*`W34$zW@li7&s=v zssLvKPXLzS5n)N1Yf@l4@D1Segs_pwtpQq_*1E}8lBBy?07{Z{FIHW4K9zjJcq^?W zN%A0OjtKug@JMDBhxjv8lCm=b`~dhOa4CczL2CkXY+k!Q>ui!F%{e~2NRspbPQUD8 zh#{o8c0Ykf5qT=`WZ)z`A}mR>Wg7SyumSjDfNuxVy+FEg?K88^CP~tqW&tQk(m^KCGcg48$$?pMrdwcvp(x=k|cEu3qVPd4#BFc zE+iR;SfCsuCjzU0Cjq|;ECQ0OGfGm2ip<>WcQtVNU0*k}VsWaHAK~)V&&xWWBuO2| z0#K5qBVhIA7t$tF64D0~!fIxY2tSIMGEkEAz;*)PW2W%CEQEM{8k4atF7uEi>9AP< zN|JO0{r)ANW7lw=%4FJ`5*`Yi&P*BjTfl;>^GVVivj?~qxD2=y;&tWmfzkcLxAM)$ zzc}k`k|fO=7J!l@9VJiLa3Rx$l-_2jLU;tQmYFi}p+G@fxAn;!1wd5 z!v09g6;C=d>wJo z0cc${v4My`y#L(_z5$m-xdN_=VH8lI!POgCrX_E zw5MmCQIaJ68Xp`aN$LQnUiMkqF%89}Fc1kR5qK=H26#9#(}5lpmUOhVfZKp;fi1w- z2>i4i(_Mj(Ub)u${3J=5>ns2zN$N1GHe5)Xgg`6?;)*b{N%%D2ali>U9VqGW?FVjT zX3B39@V$26=cTF1>77fK^TXeMLe}{tNzy^^;Xsn44)>^wKTe@g4#iS#C=gBoewUg1 z15W{t0eZ8}C~3}{1nvZW0DKL&Cct$hxgE4}>83NDmUTW!l5`j>03}J9M^3%sB1n=D z+U;T>E`jiH;L*V2fs=s+Ku^{=C1q|3*vZUYe%}GU6XAytZ!5G~)9qXmH?4bC))^&9 z(h*_-C`r;hwrb;r07*>g39tnCZQyr+#{dsu=D4u;2TJo_6W9y<4EPrCodDmBgxeC@ z6H|?t4)o^u(rN3n&M8TfjsgonNs_wA=^HL21afJl24Q(5KAM@$!jE9){=hm=$~vc{ z!`5Wx9>1RgKLoA`#BWEEn?ejDKx@;wv$D=8Ns?xX1)wBJU24_WKTWc~Oe{C^X_^}d zu#}l1@R7hnfd>N%nVAsuJ%coNMP>@W-M|gNb-?$4tAX2cen&N{0k zNy>n4<|RqeFRZ!ZLP8QkyPek47?y^>Lzp=-{9C|-fa9GIVr%Sn3)t@0W4!?N-)Vf zr!u&_V-n)+O$uXQTl4g+GfI-AIm`l3k|Z6lRTo|eiy}10k%nO+ z%Yc)Bhci0F3ZATEP=JcO0NiNMLsY#biI zt;6abO=c$h_5n9Dv#jIC5Pt^Y=YensX`D=BqZP=p`AN^pIAD@Gt+{(taD4uEasR7rkE-EZe?b&@8`gcL~ekvEfB|AF+W*lI=wns&aSn;lXY%M zlGKGP03}J%oU>-*=Lp24o#uK|LOsABu$;(=cTEi*%S>5#EYJ@Wuo%?Q(PrlO?ie%o z^xb~f*G$njv#4VSFiM(^^;Z|P?%4S=u0Hb*v(7C^lJpA}fRZGsV?1%g`J^F+LYk`( z=mQ1`982T`W+nxf0>jKq3@&8mp1}f;WSw1eTFOk(Hv(*9rqJ6C+y>mjOwo4-urCR5 zUo1|Kg?1rsT;)A|k|e1!SO7|rq#_ohs^>| zk|fQ05C85KS}Tud;Wgha5!(YXFvLs&*as|PW@2zDu;i}4ul?GWn~LYQ7Bfe5M}OsO zH?WnNW4qgc+av4_un*$yBVx1i}!+yGz0$W{wyS-Su_%Vv@?Qe3kIX@sZGAW}EKRul#y)1!9%SY}zk7q z5UNCafig1%Vd<{FzOTRk)&D%lFU!Nbm!1^(<$JxrOu_i;_Z{9{(%miI_4nyrzqWtn z*Xg^yrhetuseAd)e)-=EjK|1W2yu+aIE1kf;~0dA7-&OiLu?aihZx$$&}?7&al;G_5YNTBuVpz1)wBJ(j4`e4WA)K=pmmZA(xA!2_Ysih6F+`KoW^bgb?of ziiEq4AID!mhJ0VglGA(sZAbwEF^v%8Oeq)>LK-0r#5RGHG^8Prk~Z68Ax%RFe0%M4 zvi?^lNs=Tls0000@bVXQnb8lvJcVTj607-3OXJt)cXK7<=AT};I zE;%hZAW<7<5HgbW~_{ZDKk)L~mntZDnqBIyz8cXJvB$F{l5#F8}}l8FWQhbW~_{ zZDKk)No`?gWjZ=YWoc(eSaeiqb!}ogI!$S9WpsIPWdLbyVP|D8aBgQmvQ|z2000+s zMObuHXmxF3Iyy~MX>DZyF*PX+W@&6?IxjC}Y+-YBX=5#AY+-YBX=8I` gVRB<=Eo^URZ!U0dXLvQM?f?J)07*qoM6N<$g4M`k7XSbN