From 08d5841cc36749efe5d5eb61c6ba36f5c2ab9706 Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 29 Jan 2020 16:06:07 +0100 Subject: [PATCH] Cleanup and redirect add-on documentation --- source/_addons/cec_scan.markdown | 6 - source/_addons/check_config.markdown | 29 ----- source/_addons/configurator.markdown | 53 --------- source/_addons/dhcp_server.markdown | 92 ---------------- source/_addons/dnsmasq.markdown | 33 ------ source/_addons/duckdns.markdown | 78 ------------- source/_addons/git_pull.markdown | 76 ------------- source/_addons/google_assistant.markdown | 73 ------------- source/_addons/homematic.markdown | 133 ----------------------- source/_addons/lets_encrypt.markdown | 99 ----------------- source/_addons/mariadb.markdown | 81 -------------- source/_addons/mosquitto.markdown | 127 ---------------------- source/_addons/nginx_proxy.markdown | 58 ---------- source/_addons/rpc_shutdown.markdown | 45 -------- source/_addons/samba.markdown | 70 ------------ source/_addons/snips.markdown | 125 --------------------- source/_addons/ssh.markdown | 56 ---------- source/_addons/tellstick.markdown | 119 -------------------- source/_redirects | 20 ++++ source/addons/index.html | 55 +++++----- source/images/addons/addon-store.png | Bin 0 -> 106415 bytes 21 files changed, 47 insertions(+), 1381 deletions(-) delete mode 100644 source/_addons/cec_scan.markdown delete mode 100644 source/_addons/check_config.markdown delete mode 100644 source/_addons/configurator.markdown delete mode 100644 source/_addons/dhcp_server.markdown delete mode 100644 source/_addons/dnsmasq.markdown delete mode 100644 source/_addons/duckdns.markdown delete mode 100644 source/_addons/git_pull.markdown delete mode 100644 source/_addons/google_assistant.markdown delete mode 100644 source/_addons/homematic.markdown delete mode 100644 source/_addons/lets_encrypt.markdown delete mode 100644 source/_addons/mariadb.markdown delete mode 100644 source/_addons/mosquitto.markdown delete mode 100644 source/_addons/nginx_proxy.markdown delete mode 100644 source/_addons/rpc_shutdown.markdown delete mode 100644 source/_addons/samba.markdown delete mode 100644 source/_addons/snips.markdown delete mode 100644 source/_addons/ssh.markdown delete mode 100644 source/_addons/tellstick.markdown create mode 100644 source/images/addons/addon-store.png diff --git a/source/_addons/cec_scan.markdown b/source/_addons/cec_scan.markdown deleted file mode 100644 index 479236d6a74..00000000000 --- a/source/_addons/cec_scan.markdown +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: "CEC Scanner" -description: "Scan HDMI-CEC devices." ---- - -Help you to discover the HDMI-CEC address. Start the add-on and look into the log to see all connected device on HDMI. diff --git a/source/_addons/check_config.markdown b/source/_addons/check_config.markdown deleted file mode 100644 index 160cde79184..00000000000 --- a/source/_addons/check_config.markdown +++ /dev/null @@ -1,29 +0,0 @@ ---- -title: "Check Home Assistant configuration" -description: "Check your current Home Assistant configuration against a new version." ---- - -You can use this add-on to check whether your configuration files are valid against the new version of Home Assistant before you actually update your Home Assistant installation. This add-on will help you avoid errors due to breaking changes, resulting in a smooth update. - -### How to use this add-on - -1. Just start the add-on. -2. Wait (On a Raspberry Pi it can take several minutes). -3. If you see the following output then you are good to go to update Home Assistant: `[Info] Configuration check finished - no error found! :)`. - -If you get errors, then you should look for **Breaking Changes** against the version you specified for this add-on and change your configuration accordingly. - -### Add-on configuration - -```json -{ - "version": "latest" -} -``` - -{% configuration %} -version: - description: Version of Home Assistant that you plan to install. - required: true - type: string -{% endconfiguration %} diff --git a/source/_addons/configurator.markdown b/source/_addons/configurator.markdown deleted file mode 100644 index 2560a866ded..00000000000 --- a/source/_addons/configurator.markdown +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: "Configurator" -description: "Browser-based configuration file editor for Home Assistant." -featured: true -og_image: /images/hassio/screenshots/addon-hass-configurator.png ---- - -You can use this add-on to add a browser-based file editor to your Hass.io installation. By default it will be available over Ingress only. - -More information and a standalone version for regular Home Assistant installations can be found in the [GitHub repository](https://github.com/danielperna84/hass-configurator). - -

- -Screenshot of the Configurator. -

- -### Feature list - -- Web-based editor to modify your files with syntax highlighting and YAML linting. -- Upload and download files. -- Stage, stash and commit changes in Git repositories, create and switch between branches, push to remotes, view diffs. -- Lists with available entities, triggers, events, conditions and services. -- Restart Home Assistant directly with the click of a button. Reloading groups, automations, etc. can be done as well. An API password is required. -- Direct links to Home Assistant documentation and icons. -- Execute shell commands within the add-on container. -- Editor settings are saved in your browser. -- And much more... - -### Add-on Configuration - -```json -{ - "dirsfirst": false, - "enforce_basepath": false -} -``` - -{% configuration %} -dirsfirst: - description: List directories before files in the file browser. - required: true - type: boolean - default: false -enforce_basepath: - description: If set to `true`, access is limited to files within the `/config` directory. - required: true - type: boolean - default: false -{% endconfiguration %} - -### Old port based Access - -You can set a network Port and the Add-on listens on that Port with Home Assistant user credential. That is as a backup if you are not able to connect to Home Assistant anymore. Today, you can restart Home Assistant with broken config, but maybe some times usefully. diff --git a/source/_addons/dhcp_server.markdown b/source/_addons/dhcp_server.markdown deleted file mode 100644 index 8a19901d0b9..00000000000 --- a/source/_addons/dhcp_server.markdown +++ /dev/null @@ -1,92 +0,0 @@ ---- -title: "DHCP server" -description: "A simple DHCP server." ---- - -Create a simple DHCP server for your network and allow setting fixed IPs for devices. - -```json -{ - "domain": "mynetwork.local", - "dns": ["8.8.8.8", "8.8.4.4"], - "networks": [ - { - "subnet": "192.168.1.0", - "netmask": "255.255.255.0", - "range_start": "192.168.1.100", - "range_end": "192.168.1.200", - "broadcast": "192.168.1.255", - "gateway": "192.168.1.1", - "interface": "eth0" - } - ], - "hosts": [ - { - "name": "webcam_xy", - "mac": "aa:bb:ee:cc", - "ip": "192.168.1.40" - } - ] -} -``` - -{% configuration %} -domain: - description: Your network domain name. - required: true - type: string -dns: - description: A list of DNS server for your network. - required: true - type: list -networks: - description: A list of network to provide DHCP. - required: false - type: list - keys: - subnet: - description: Your network schema. - required: true - type: string - netmask: - description: Your network netmask. - required: true - type: string - range_start: - description: Start address for DHCP leases. - required: true - type: string - range_end: - description: End address for DHCP leases. - required: true - type: string - broadcast: - description: Network broadcast address. - required: true - type: string - gateway: - description: A List of gateways. - required: true - type: list - interface: - description: Interface on that will be listen. Normally is `eth0` for ethernet wired connection and `wlan0` for wireless connection. - required: true - type: string -hosts: - description: A list of fixed IPs for devices. - required: false - type: list - keys: - name: - description: Name/hostname of your device. - required: true - type: string - mac: - description: Mac address of your device. - required: true - type: string - ip: - description: Fix IP address for device. - required: true - type: string -{% endconfiguration %} diff --git a/source/_addons/dnsmasq.markdown b/source/_addons/dnsmasq.markdown deleted file mode 100644 index 0efc9b8af88..00000000000 --- a/source/_addons/dnsmasq.markdown +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: "Dnsmasq" -description: "A simple DNS server." ---- - -Setup and manage a [Dnsmasq](http://thekelleys.org.uk/dnsmasq/doc.html) DNS server. This allows you to manipulate DNS requests. For example, you can have your Home Assistant domain resolve with an internal address inside your network. - -```json -{ - "defaults": ["8.8.8.8", "8.8.4.4"], - "forwards": [ - {"domain": "mystuff.local", "server": "192.168.1.40"} - ], - "hosts": [ - {"host": "home.mydomain.io", "ip": "192.168.1.10"} - ] -} -``` - -{% configuration %} -defaults: - description: A list of DNS servers to forward default requests to. - required: true - type: list -forwards: - description: A list of domains that will forward to a specific server. - required: false - type: list -hosts: - description: A list of hosts to resolve statically. - required: false - type: list -{% endconfiguration %} diff --git a/source/_addons/duckdns.markdown b/source/_addons/duckdns.markdown deleted file mode 100644 index 2f38bf80bd2..00000000000 --- a/source/_addons/duckdns.markdown +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: "DuckDNS" -description: "Automatically update your Duck DNS IP address with integrated HTTPS support via Let's Encrypt." -featured: true ---- - -[Duck DNS](https://www.duckdns.org/) is a free service which will point a DNS (sub domains of duckdns.org) to an IP of your choice. This add-on includes support for Let's Encrypt and will automatically create and renew your certificates. You will need to sign up for a Duck DNS account before using this add-on. - -```json -{ - "lets_encrypt": { - "accept_terms": true, - "certfile": "fullchain.pem", - "keyfile": "privkey.pem" - }, - "token": "sdfj-2131023-dslfjsd-12321", - "domains": ["my-domain.duckdns.org"], - "seconds": 300 -} -``` - -{% configuration %} -lets_encrypt: - description: Let's Encrypt is a free, automated, and open certificate authority. - required: true - type: map - keys: - accept_terms: - description: If you accept the [Let's Encrypt Subscriber Agreement](https://letsencrypt.org/repository/), it will generate and update Let's Encrypt certificates for your DuckDNS domain. - required: true - type: boolean - default: false -token: - description: Your Duck DNS API key, from your DuckDNS account page. - required: true - type: string -domains: - description: A list of domains to update DNS. - required: true - type: list -seconds: - description: Seconds between updates to Duck DNS. - required: true - type: integer -{% endconfiguration %} - -## Home Assistant configuration - -Use the following configuration in Home Assistant to use the generated certificate: - -```yaml -http: - base_url: https://my-domain.duckdns.org:8123 - ssl_certificate: /ssl/fullchain.pem - ssl_key: /ssl/privkey.pem -``` - -If you use a port other than `8123` or an SSL proxy, change the port number accordingly. - -## Router configuration - -You'll need to forward the port you listed in your configuration (8123 in the example above) on your router to your Home Assistant system. You can find guides on how to do this on [Port Forward](https://portforward.com/). Noting that you'll only need to forward the TCP port. - -Ensure that you allocate the Home Assistant system a fixed IP on your network before you configure port forwarding. You can do this either on the computer itself (see the [install guide](/hassio/installation/) or via a static lease on your router. - -Restart Home Assistant for the configured changes to take effect. When you access the Home Assistant frontend you will now need to use `https`, even when accessing local instances, for example at `https://192.168.0.1:8123`. - -## Generate Let's Encrypt certificate for Duck DNS sub sub domains - -To generate certificates for nr.my-domain.duckdns.org update the domain JSON settings to: - -```json -{ - ... - "domains": ["my-domain.duckdns.org","*.my-domain.duckdns.org"], - ... -} -``` diff --git a/source/_addons/git_pull.markdown b/source/_addons/git_pull.markdown deleted file mode 100644 index 1314f06caf2..00000000000 --- a/source/_addons/git_pull.markdown +++ /dev/null @@ -1,76 +0,0 @@ ---- -title: "Git pull" -description: "Load and update configuration files for Home Assistant from a GIT repository." ---- - -Load and update configuration files for Home Assistant from a [Git](https://git-scm.com/) repository. - -```json -{ - "git_branch": "master", - "git_command": "pull", - "git_remote": "origin", - "git_prune": "false", - "repository": "https://example.com/my_configs.git", - "auto_restart": false, - "restart_ignore": [ - "ui-lovelace.yaml", - ".gitignore", - "exampledirectory/" - ], - "repeat": { - "active": false, - "interval": 300 - }, - "deployment_user": "", - "deployment_password": "", - "deployment_key": [ -"-----BEGIN RSA PRIVATE KEY-----", -"MIIEowIBAAKCAQEAv3hUrCvqGZKpXQ5ofxTOuH6pYSOZDsCqPqmaGBdUzBFgauQM", -"xDEcoODGHIsWd7t9meAFqUtKXndeiKjfP0MMKsttnDohL1kb9mRvHre4VUqMsT5F", -"...", -"i3RUtnIHxGi1NqknIY56Hwa3id2yk7cEzvQGAAko/t6PCbe20AfmSQczs7wDNtBD", -"HgXRyIqIXHYk2+5w+N2eunURIBqCI9uWYK/r81TMR6V84R+XhtvM", -"-----END RSA PRIVATE KEY-----" - ], - "deployment_key_protocol": "rsa" -} -``` - -- **git_branch** (*Required*): Branch name of the Git repo. If left empty, the currently checked out branch will be updated. Leave this as 'master' if you are unsure. -- **git_command** (*Required*): `pull`/`reset`: Command to run. Leave this as `pull` if you are unsure. -* **pull**: Incorporates changes from a remote repository into the current branch. Will preserve any local changes to tracked files. -* **reset**: Will execute `git reset --hard` and overwrite any local changes to tracked files and update from the remote repository. Use with caution. - -
- -Using the `reset` option will overwrite changes to tracked files. Tracked files are those visible in the git repository or those given by the output on this command: `git ls-tree -r master --name-only`. - -
- -- **git_remote** (*Required*): Name of the tracked repository. Leave this as `origin` if you are unsure. -- **git_prune** (*Required*): `true`/`false`: If set to true, the add-on will clean-up branches that are deleted on the remote repository, but still have cached entries on the local machine. Leave this as `false` if you are unsure. - -- **repository** (*Required*): Git URL to your repository (make sure to use double quotes). You have to add `.git` to your repository URL (see example configuration). -- **auto_restart** (*Required*): `true`/`false`: Restart Home Assistant when the configuration has changed (and is valid). -- **restart_ignore** (*Optional*): When `auto_restart` is enabled, changes to these files will not make HA restart. Full directories to ignore can be specified. -- **repeat**: Poll the repository for updates periodically automatically. -* **active** (*Required*): `true`/`false`: Enable/disable automatic polling. -* **interval** (*Required*): The interval in seconds to poll the repo for if automatic polling is enabled. -- **deployment_user** (*Optional*): Username to use when authenticating to a repository with a username and password. -- **deployment_password** (*Optional*): Password to use when authenticating to a repository. Ignored if `deployment_user` is not set. -- **deployment_key** (*Optional*): A private SSH key that will be used for communication during Git operations. This key is mandatory for ssh-accessed repositories, which are the ones with the following pattern: `@:`. This key has to be created without a passphrase. -- **deployment_key_protocol** (*Optional*): The key protocol. Default is `rsa`. Valid protocols are: - - * **dsa** - * **ecdsa** - * **ed25519** - * **rsa** - -The protocol is typically known by the suffix of the private key --e.g., a key file named `id_rsa` will be a private key using `rsa` protocol. - -
- -You should only use this add-on if you do not have an existing configuration or if your existing configuration is already in a Git repository. If the script does not find the necessary Git files in your configuration folder, it will delete anything that might be there. Please ensure that there is a `.git` folder before using this. You can verify this by listing the items in the configuration folder including hidden files. The command is `ls -a /config`. - -
diff --git a/source/_addons/google_assistant.markdown b/source/_addons/google_assistant.markdown deleted file mode 100644 index e159fcda86f..00000000000 --- a/source/_addons/google_assistant.markdown +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: "Google Assistant" -description: "Enhance your Hass.io installation with Google Assistant." -featured: true ---- - -
- -If you want to integrate your Google Home or mobile phone running Google Assistant, with Home Assistant, then you want the [Google Assistant component][AssistantIntergration]. - -
- -[Google Assistant][GoogleAssistant] is an AI-powered voice assistant that runs on the Raspberry Pi and x86 platforms and interacts via the [DialogFlow][comp] integration or the [Google Assistant component][AssistantIntergration] with Home-Assistant. You can also use [Google Actions][GoogleActions] to extend its functionality. - -To enable access to the Google Assistant API, do the following: -1. Go to the [Google Actions Console][GActionsConsole] and create a new project. -1. After you created the project on the bottom of the page click "Device registration". Keep this tab open for later use. -1. Enable the Google Assistant API on the new project through [this][enableAPI] link. Make sure you have the right project selected (shown in the middle of the screen in the top bar). If you can't select the right project, it may help to open the link in an incognito window. -1. Configure the [OAuth consent screen][OAuthConcent]. Also again check that you have the right project and don't forget to hit "Save" at the bottom of the page. You only have to fill in a project name and your e-mail. -1. You back to you device registration tab and click "Device registration". Or open you project in the [Google Actions Console][GActionsConsole] start the Quick setup, and in the left bar click "Device registration". -1. Give you project a name, think of a nice manufacturer and for device type select "speaker". -1. Edit you "model id", if you want to and copy it for later use. -1. Download the credentials. -1. Click "Next" and click "Skip". -1. Upload your credentials as "google_assistant.json" to the "hassio/share" folder, for example by using the [Samba] add-on. -1. In the Add-on configuration field fill-in you "project id" and your "model-id" and hit "Save". Your project id can be found in the Google Actions console by clicking on the top right menu button and selecting "Project settings". This id may differ from the project name that you choose! -1. Below the "Config" window select the microphone and speaker that you want to use. On a Raspberry Pi 3, ALSA device 0 is the built-in headset port and ALSA device 1 is the HDMI port. Also don't forget to click "Save". -1. Start the add-on. Check the log and click refresh till it says: "ENGINE Bus STARTED". -1. Now click "Open Web UI" and follow the authentication process. You will get an empty response after you have send your token. - -That's it. You should now be able to use the Google Voice assistant. - -### Add-on configuration - -```json -{ - "client_secrets": "google_assistant.json", - "project_id": "you-project-id", - "model_id": "your-model-id" -} -``` - -{% configuration %} -client_secrets: - description: The file downloaded from the [Google Actions Console](https://console.actions.google.com/), you can redownload them under the "Develop - Device registration" tab. By default the add-on look in the "hassio/share" folder. - required: true - type: string -project_id: - description: The project id can be found in your "google_assistant.json" file or under project settings in the [Google Actions Console](https://console.actions.google.com/). - required: true - type: string -model_id: - description: The model id can also be found under the "Develop - Device registration tab" in the [Google Actions Console](https://console.actions.google.com/). - required: true - type: string -{% endconfiguration %} - -### Home Assistant configuration - -Use the Home Assistant [DialogFlow component][comp] to integrate the add-on into Home Assistant or combine it with the [Google Assistant component][AssistantIntergration]. - -[AssistantIntergration]: /integrations/google_assistant/ -[GoogleAssistant]: https://assistant.google.com/ -[GoogleActions]: https://actions.google.com/ -[GActionsConsole]: https://console.actions.google.com/ -[enableAPI]: https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview -[OAuthConcent]: https://console.developers.google.com/apis/credentials/consent -[Samba]: /addons/samba/ -[comp]: /integrations/dialogflow/ -[project]: https://console.cloud.google.com/project -[API]: https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview -[oauthclient]: https://console.developers.google.com/apis/credentials/oauthclient -[cloudConsole]: https://console.cloud.google.com/cloud-resource-manager diff --git a/source/_addons/homematic.markdown b/source/_addons/homematic.markdown deleted file mode 100644 index 4ff78f9e420..00000000000 --- a/source/_addons/homematic.markdown +++ /dev/null @@ -1,133 +0,0 @@ ---- -title: "HomeMatic" -description: "HomeMatic hardware support to turn Home Assistant into a CCU." ---- - -You can't import an existing configuration, you'll need re-learn it into Home Assistant. There is an experimental WebUI alias Regahss support since 9.0. Before it was required to use a third-party tool. - -Follow devices will be supported and tested: - -- [HM-MOD-RPI-PCB](https://www.elv.ch/homematic-funkmodul-fuer-raspberry-pi-bausatz.html) -- [HmIP-RFUSB](https://www.elv.ch/elv-homematic-ip-rf-usb-stick-hmip-rfusb-fuer-alternative-steuerungsplattformen-arr-bausatz.html) - -```json -{ - "rf_enable": true, - "rf": [ - { - "type": "CCU2", - "device": "/dev/ttyAMA0" - } - ], - "wired_enable": false, - "wired": [ - { - "serial": "xy", - "key": "abc", - "ip": "192.168.0.0" - } - ], - "hmip_enable": false, - "hmip": [ - { - "type": "HMIP_CCU2", - "device": "/dev/ttyUSB0" - } - ] -} -``` - -{% configuration %} -rf_enable: - description: Enable or disable BidCoS-RF. - required: true - type: boolean - default: false -rf: - description: RF devices. - required: true - type: list - keys: - type: - description: Device type for RFD service. Look into the manual of your device. - required: true - type: string - device: - description: Device on the host. - required: true - type: string -wired_enable: - description: Enable or disable BidCoS-Wired. - required: true - type: boolean - default: false -wired: - description: Wired devices. - required: true - type: list - keys: - serial: - description: Serial number of the device. - required: true - type: string - key: - description: The encrypted key. - required: true - type: string - ip: - description: The IP address of LAN gateway. - required: true - type: string -hmip_enable: - description: Enable or disable hmip. - required: true - type: boolean - default: false -hmip: - description: HMIP devices. - required: true - type: list - keys: - type: - description: Device type for RFD service. Look into the manual of your device. - required: true - type: string - device: - description: Device on the host. - required: true - type: string -{% endconfiguration %} - -## Home Assistant configuration - -Use the following configuration in Home Assistant to use it: - -```yaml -homematic: - interfaces: - rf: - host: core-homematic - port: 2001 - wired: - host: core-homematic - port: 2000 - hmip: - host: core-homematic - port: 2010 -``` - -## Raspberry Pi3 - -With HM-MOD-RPI-PCB you need to add follow into your `config.txt` on boot partition: - -```text -dtoverlay=pi3-miniuart-bt -``` - -## HmIP-RFUSB - -HassOS > 1.11 support HmIP-RFUSB by default and don't need any configuration. If you run a Linux installation, you need to follow the installation guide from the documentation to set up the UART USB interface on your computer. - -## Web UI - -To enable the experimental WebUI for built-in CCU specify a port number for "Regahss Webinterface" on the addon configuration page under the network section. After saving the changes, click on the "Open Web UI" button and proceed with the [Homematic WebUI](https://www.eq-3.de/downloads/download/handbuecher/WebUI_Handbuch_eQ-3.pdf) configuration. diff --git a/source/_addons/lets_encrypt.markdown b/source/_addons/lets_encrypt.markdown deleted file mode 100644 index 172cfd37d79..00000000000 --- a/source/_addons/lets_encrypt.markdown +++ /dev/null @@ -1,99 +0,0 @@ ---- -title: "Let's Encrypt" -description: "Automatically manage your SSL certificate using Let's Encrypt." ---- - -
- -You should not use this if you are also using the [DuckDNS add-on]. The DuckDNS add-on has integrated Let's Encrypt support. - -
- -Setup and manage a [Let's Encrypt](https://letsencrypt.org/) certificate. This add-on will create a certificate on the first run and will auto-renew if the certificate is within 30 days of expiration. This add-on uses port 80 to verify the certificate request. You will need to stop all other add-ons that also use this port. - -```json -{ - "email": "example@example.com", - "domains": ["example.com", "mqtt.example.com", "hass.example.com"], - "certfile": "fullchain.pem", - "keyfile": "privkey.pem" -} -``` - -{% configuration %} -email: - description: Your email address for registration on Let's Encrypt. - required: true - type: string -domains: - description: A list of domains to create/renew the certificate. - required: true - type: list -certfile: - description: Name of the certfile that is created. Leave as default value. - required: true - type: string - default: fullchain.pem -keyfile: - description: Name of the keyfile that is created. Leave as default value. - required: true - type: string - default: privkey.pem -{% endconfiguration %} - -## Home Assistant configuration - -Use the following configuration in Home Assistant to use the generated certificate: - -```yaml -http: - base_url: https://my-domain.tld:8123 - ssl_certificate: /ssl/fullchain.pem - ssl_key: /ssl/privkey.pem -``` - -If you use another port such as `8123` or an SSL proxy, change the port number. - -## Enabling auto-renewals - -Out of the box, the add-on will not automatically renew your certificate. In fact, it only starts, tries to get/renew your certificate, and then stops. It's up to you to manually start it again whenever your certificate comes close to expiry. - -However, you can automate this process using Home Assistant. - -Use this in your `automations.yaml` to attempt certificate renewal each day at midnight: - -```yaml -- id: letsencrypt-renewal - alias: "Let's Encrypt Renewal" - trigger: - - platform: time - at: '00:00:00' - action: - - service: hassio.addon_restart - data: - addon: core_letsencrypt -``` - -If you are using the [Nginx Proxy add-on] you will need need to stop this during the renewal process. This can be achieved by stopping the add-on whilst restarting the Let's Encrypt add-on. This can be achieved the following configuration: - -```yaml -- id: letsencrypt-renewal - alias: 'LetsEncrypt renewal' - trigger: - - platform: time - at: '00:00:00' - action: - - service: hassio.addon_stop - data: - addon: core_nginx_proxy - - service: hassio.addon_restart - data: - addon: core_letsencrypt - - delay: '00:01:30' - - service: hassio.addon_start - data: - addon: core_nginx_proxy -``` - -[DuckDNS add-on]: /addons/duckdns/ -[Nginx Proxy add-on]: /addons/nginx_proxy/ diff --git a/source/_addons/mariadb.markdown b/source/_addons/mariadb.markdown deleted file mode 100644 index 844f77a88ae..00000000000 --- a/source/_addons/mariadb.markdown +++ /dev/null @@ -1,81 +0,0 @@ ---- -title: "MariaDB" -description: "MariaDB Server is one of the most popular database servers in the world." ---- - -Set up a [MariaDB](https://mariadb.org/) SQL server. It supports multiple databases, users and permission settings. If you want to only connect from inside Home Assistant use `core-mariadb` as the host address. - -```json -{ - "databases": ["homeassistant"], - "logins": [ - { - "username": "hass", - "host": "%.local.hass.io", - "password": "securePassword" - } - ], - "rights": [ - { - "username": "hass", - "host": "%.local.hass.io", - "database": "homeassistant", - "grant": "ALL PRIVILEGES ON" - } - ] -} -``` - -{% configuration %} -databases: - description: List of databases. - required: true - type: list -logins: - description: List of SQL accounts to create or update. - required: true - type: list - keys: - username: - description: Username for account. - required: true - type: string - host: - description: Host for account. Use '%', to accept connections for this account from any host. - required: true - type: string - password: - description: Password for account. - required: true - type: string -rights: - description: List of rights to be granted. - required: true - type: list - keys: - username: - description: Username for granted rights. - required: true - type: string - host: - description: Host is a part of username like above. - required: true - type: string - database: - description: Database name on which to grant user rights. - required: true - type: string - grant: - description: SQL grant part for access too. - required: true - type: string -{% endconfiguration %} - -## Home Assistant configuration - -Use the following configuration in Home Assistant to use the database above: - -```yaml -recorder: - db_url: mysql://hass:securePassword@core-mariadb/homeassistant?charset=utf8 -``` diff --git a/source/_addons/mosquitto.markdown b/source/_addons/mosquitto.markdown deleted file mode 100644 index 67e74ff8f00..00000000000 --- a/source/_addons/mosquitto.markdown +++ /dev/null @@ -1,127 +0,0 @@ ---- -title: "Mosquitto MQTT broker" -description: "Fast and reliable MQTT broker." -featured: true ---- - -Set up [Mosquitto](https://mosquitto.org/) as MQTT broker. - -```json -{ - "logins": [ - {"username": "local-user", "password": "mypw"} - ], - "anonymous": false, - "customize": { - "active": false, - "folder": "mosquitto" - }, - "certfile": "fullchain.pem", - "keyfile": "privkey.pem" -} -``` - -
- -Since version 4.1 of the addon, an explicit ACL definition is now required if you plan to use legacy logins and `"anonymous": true` [see these instructions](https://www.home-assistant.io/addons/mosquitto/#access-control-lists-acls). - -
- -{% configuration %} -anonymous: - description: Allow anonymous connections. If *logins* is set, the anonymous user can only read data. - required: false - default: false - type: boolean -logins: - description: A list of local users that will be created with *username* and *password*. You don't need do this because you can use Home Assistant users too without any configuration. - required: false - type: list -customize: - description: If you enable it, it reads additional configuration files (`*.conf`) from `/share/mosquitto`. - required: false - type: [boolean, string] - default: false -cafile: - description: Path to the CA certificate. If not set, will default to the *certfile* value. - required: false - default: certfile - type: string -require_certificate: - description: Restrict to users with a valid certificate only. - required: false - default: false - type: boolean -{% endconfiguration %} - -### Home Assistant user management - -This add-on is attached to the Home Assistant user system, so mqtt clients can make use of these credentials. Local users may also still be set independently within the configuration options for the add-on. For the internal Hass.io ecosystem we register `homeassistant` and `addons`, so these may not be used as user names. - -### Home Assistant configuration - -To use the Mosquitto as [broker](/docs/mqtt/broker/#run-your-own), go to the integration page and install the configuration with one click. If you have old MQTT settings available, remove this old integration and restart Home Assistant to see the new one. - -#### Using Mosquitto with Hass.io - -1. Install the [Mosquitto add-on](/addons/mosquitto/) with the default configuration via 'Hass.io > ADD-ON STORE'. (Don't forget to start the add-on & verify that 'Start on boot' is enabled.) - -2. Create a new user for MQTT via the `Configuration > Users (manage users)`. (Note: This name cannot be "homeassistant" or "addon") - -3. Once back on-line, return to `Configuration > Integrations` and select configure next to `MQTT`. - -```text - Broker: YOUR_HASSIO_IP_ADDRESS - Port: 1883 - Username: MQTT_USERNAME - Password: MQTT_PASSWORD -``` - -If you are using the ACL, remember to enter the newly created user and homeassistant in `/share/mosquitto/accesscontrollist` as follows: - -```text -user [YOUR_MQTT_USER] -topic readwrite # -user homeassistant -topic readwrite # -``` - - -Note: .yaml modifications are not required. -See [testing your setup](/docs/mqtt/testing/) to verify the steps above. - -### Disable listening on insecure (1883) ports - -Remove the ports from the add-on page network card (set them as blank) to disable them. - -### Access Control Lists (ACLs) - -It is possible to restrict access to topics based upon the user logged in to Mosquitto. In this scenario it is recommended to create individual users for each of your clients and create an appropriate ACL. - -See the following links for more information: - -* [Mosquitto topic restrictions](http://www.steves-internet-guide.com/topic-restriction-mosquitto-configuration/) -* [Mosquitto.conf man page](https://mosquitto.org/man/mosquitto-conf-5.html) - -Add the following configuration to enable **unrestricted** access to all topics. - - 1. Enable the customize flag -```json - "customize": { - "active": true, - "folder": "mosquitto" - }, -``` - -2. Create `/share/mosquitto/acl.conf` with the contents: -```text -acl_file /share/mosquitto/accesscontrollist -``` - -3. Create `/share/mosquitto/accesscontrollist` with the contents: -```text -user [YOUR_MQTT_USER] -topic readwrite # -``` - -The `/share` folder can be accessed via SMB, or on the host filesystem under `/usr/share/hassio/share`. diff --git a/source/_addons/nginx_proxy.markdown b/source/_addons/nginx_proxy.markdown deleted file mode 100644 index 53d45c6d607..00000000000 --- a/source/_addons/nginx_proxy.markdown +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: "NGINX SSL proxy" -description: "NGINX Home Assistant SSL proxy." ---- - -Sets up an SSL proxy with NGINX and redirect port 80 to 443. Make sure you have generated a certificate before you start this add-on. - -In the `http` section of the `configuration.yaml` file remove `ssl_certificate`, `ssl_key` and `server_port` and don't enter the port in the `base_url` to avoid an HTTP 502 error. - -```json -{ - "domain": "home.example.com", - "certfile": "fullchain.pem", - "keyfile": "privkey.pem", - "hsts": "max-age=31536000; includeSubDomains", - "customize": { - "active": false, - "default": "nginx_proxy_default*.conf", - "servers": "nginx_proxy/*.conf" - }, - "cloudflare": false -} -``` - -{% configuration %} -domain: - description: The Domain to use for the proxy. - required: true - type: string -certfile: - description: The certificate file to use in the `/ssl` directory. - required: true - type: string -keyfile: - description: Private key file to use in the `/ssl` directory. - required: true - type: string -hsts: - description: Value for the [`Strict-Transport-Security`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security) HTTP header to send. If empty, the header is not sent. - required: true - type: string -customize: - description: If true, additional NGINX configuration files for the default server and additional servers are read from files in the `/share` directory specified by the `default` and `servers` variables. - required: false - type: boolean - default: false -cloudflare: - description: If enabled, configure Nginx with a list of IP addresses directly from Cloudflare that will be used for `set_real_ip_from` directive Nginx config. - required: false - type: boolean - default: false -{% endconfiguration %} - -
- -It is possible to deactivate port 80 if you need this for things like `emulated_hue`. Remove the host port from Network option of this add-on. - -
diff --git a/source/_addons/rpc_shutdown.markdown b/source/_addons/rpc_shutdown.markdown deleted file mode 100644 index ba5bfb790d4..00000000000 --- a/source/_addons/rpc_shutdown.markdown +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: "RPC Shutdown" -description: "Simple way for remote windows shutdowns." ---- - -Allows you to shut down a Windows computer with a service call from Home Assistant. - -```json -{ - "computers": [ - { - "alias": "test-pc-1", - "address": "192.168.0.1", - "credentials": "user%password" - }, - { - "alias": "test-pc-2", - "address": "192.168.0.2", - "credentials": "user%password" - } - ] -} -``` - -- **computers** (*Required*): A list of computer objects to shutdown from Home-Assistant. -- **computers/alias** (*Required*): Set an alias for this record which becomes the name for the input. -- **computers/address** (*Required*): IP address or NetBIOS name of the computer for the shutdown. -- **computers/credentials** (*Required*): Credentials for logging into computer. Use a `%` as the delimiter of username and password. - -### Home Assistant configuration - -Use the following inside Home Assistant service call to use it: - -```yaml -service: hassio.addon_stdin -data: - addon: core_rpc_shutdown - input: test-pc -``` - -
- -The `user` specified in the credentials should be an applicable user listed in `C:/Users`. This may differ from the username used to login to Windows. Depending on your settings and privileges within Windows, changes to the firewall, UAC (User Account Control) and registry settings may be required to allow this add-on to remotely shut down your computer. There are many guides available online on how to adjust these settings. - -
diff --git a/source/_addons/samba.markdown b/source/_addons/samba.markdown deleted file mode 100644 index 324d8a5bdfd..00000000000 --- a/source/_addons/samba.markdown +++ /dev/null @@ -1,70 +0,0 @@ ---- -title: "Samba" -description: "Manage your Home Assistant and custom add-ons over Samba." -featured: true ---- - -This add-on allows you to set up a [Samba](https://www.samba.org) server to access Hass.io folders using Windows network shares. - -
- -Be careful when setting up port forwarding for remote access. If you don't restrict access by setting a username and strong password, your configuration could be exposed to the entire Internet! - -
- -
- -Sometimes shares will not show up under network in Windows. Then you could open the file browser, click the address field where it says "> Network" and type `\\HASSIO` to access Hass.io shares. - -
- -```json -{ - "workgroup": "WORKGROUP", - "username": "", - "password": "", - "interface": "eth0", - "allow_hosts": [ - "10.0.0.0/8", - "172.16.0.0/12", - "192.168.0.0/16" - ], - "veto_files": [ - "._*", - ".DS_Store", - "Thumbs.db", - "icon?", - ".Trashes" - ] -} -``` - -{% configuration %} -workgroup: - description: Set network workgroup name. - required: false - default: "`WORKGROUP`" - type: string -username: - description: Username for logging in. - required: true - type: string -password: - description: Password for `username`. An empty password is not supported. - required: true - type: string -interface: - description: Interface that will start the share. Normally this is `eth0` for ethernet wired connection and `wlan0` for wireless connection. If you are running on an Intel NUC this could also be `enp3s0` for ethernet or `wlp5s0` for wireless connection. - required: false - type: string -allow_hosts: - description: The hosts that are allowed to connect to your Samba server. By default it is limited to people within the same local network. - required: false - default: '`["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]`' - type: list -veto_files: - description: List of files that are neither visible nor accessible. Useful to stop clients from littering the share with temporary hidden files (e.g. macOS .DS_Store, Windows Thumbs.db) - required: false - default: '`["._*", ".DS_Store", "Thumbs.db", "icon?", ".Trashes"]`' - type: list -{% endconfiguration %} diff --git a/source/_addons/snips.markdown b/source/_addons/snips.markdown deleted file mode 100644 index b418fa00ef5..00000000000 --- a/source/_addons/snips.markdown +++ /dev/null @@ -1,125 +0,0 @@ ---- -title: "Snips.ai" -description: "Enhance your Hass.io installation with a local voice assistant." ---- - -[Snips.ai](https://snips.ai/) is an AI-powered voice assistant that runs on the Raspberry Pi 3 and x86 platforms. It runs on-device and is Private by Design. - -
- -The Snips add-on depends on the Mosquitto add on to bridge to Home Assistant, so make sure that is installed. - -
- -Home Assistant comes with certain Intents builtin to handle common tasks. A complete list of Intents can be found in this wiki [Hass Snips Bundle](https://github.com/tschmidty69/hass-snips-bundle-intents/wiki). - -The Snips add-on by default comes with an assistant that allows you to turn on lights or switches, open covers, or add and list items to a [Shopping List](/integrations/shopping_list/) if that integration is enabled. - -If using a USB microphone and speakers plugged into the Raspberry Pi output, Snips will work without any change to the configuration. Trying saying things like: - -```txt -Turn on kitchen light -Open garage door -What is on my shopping list -``` - -To get started creating your own configuration, follow [their tutorial](https://docs.snips.ai/getting-started/quick-start-console) to create an assistant and download the training data. You can also add the Home Assistant Skill to your assistant to enable the built-in intents, and add or create your own intents to do more complex tasks. - -Now install and activate the [Samba](/addons/samba/) add-on so you can upload your training data. Connect to the "share" Samba share and copy your assistant over. Name the file `assistant.zip` or whatever you have configured in the configuration options. - -Now it's time to start Snips for the first time. You can configure the microphone and sound card using the Add-on interface. Now start the add-on. - -### Add-On configuration - -```json -{ - "mqtt_bridge": { - "active": true, - "host": "172.17.0.1", - "port": 1883, - "user": "", - "password": "" - }, - "assistant": "assistant.zip", - "language": "en", - "custom_tts": false, - "tts_platform": "amazon_polly" -} -``` - -{% configuration %} -assistant: - description: The name of your custom assistant in `/share`. If no assistant is found then a default assistant will be used. - type: string -language: - description: Language. This is used to select the default custom assistant, Currently `en`, `de` and `fr` are supported. - type: string -custom_tts: - description: Whether to use a TTS provider from Home Assistant for a variety of voices. - type: boolean - default: false -tts_platform: - description: Which TTS platform to use. - type: string -{% endconfiguration %} - -### Home Assistant configuration - -A simple configuration just requires this. Consult [Snips.ai integration](/integrations/snips/) for more options. - -```yaml -snips: -``` - -### Home Assistant configuration - -There is an active [discord](https://discordapp.com/invite/3939Kqx) channel and [Snips forum](https://forum.snips.ai/) for further support. - -### Examples - -So now you can turn lights on and off, let's check the weather. Log on to the [console](https://console.snips.ai/). If this is your first time, create a new assistant and add the Home Assistant skill, along with the Weather skill by snips. Download your assistant manually and copy it to the `/share` folder on your Hass.io installation using the Samba add-on. - -Next create a weather sensor, e.g., one for [Dark Sky](/integrations/darksky/), and put the `api_key` in your `secrets.yaml` file. For this example to work you will need to have a valid API key from [Dark Sky](https://darksky.net/dev). - -```yaml -- platform: darksky - name: "Dark Sky Weather" - api_key: !secret dark_sky_key - update_interval: - minutes: 10 - monitored_conditions: - - summary - - hourly_summary - - temperature - - temperature_max - - temperature_min -``` - -Next add this to your `configuration.yaml` file to reference a new `intent_script` integration. This is a good practice to [split your configuration files](/docs/configuration/splitting_configuration/) up. - -```yaml -intent_script: !include intent_script.yaml -``` - -Finally, create this `intent_script.yaml` file in your configuration directory. - -{% raw %} - -```yaml -searchWeatherForecast: - speech: - type: plain - text: > - The weather is currently - {{ states('sensor.dark_sky_weather_temperature') | round(0) }} - degrees outside and {{ states('sensor.dark_sky_weather_summary') }}. - The high today will be - {{ states('sensor.dark_sky_weather_daily_high_temperature') | round(0)}} - and {{ states('sensor.dark_sky_weather_hourly_summary') }} -``` - -{% endraw %} - -Now just restart Hass.io and ask it what the weather is like. - -[their tutorial]: https://github.com/snipsco/snips-platform-documentation/wiki/2.-Create-an-assistant-using-an-existing-bundle diff --git a/source/_addons/ssh.markdown b/source/_addons/ssh.markdown deleted file mode 100644 index 0458117bb9d..00000000000 --- a/source/_addons/ssh.markdown +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: "SSH Server" -description: "Allow logging in remotely to Hass.io using SSH." -featured: true ---- - -Setting up an [SSH](https://openssh.com/) server allows access to your Hass.io folders with any SSH client. It also includes a command-line tool to access the [Hass.io API](https://github.com/home-assistant/hassio/blob/dev/API.md). Try it out: - -```bash -hassio help -``` - -
- -This add-on will not enable you to install packages or do anything as root. This is not allowed with Hass.io. - -
- -To use this add-on, you must have a private/public key to log in. To generate them, follow the [instructions for Windows][win] and [these for other platforms][other]. It is possible to set a password for login since version 2.0 but for high security use private/public keys. You can not run both variants at the same time. - -To start this add-on for the first time, you either need to include a key (enclosed in quotation marks, on a single line without line breaks) or set a password in the options section. - -```json -{ - "authorized_keys": [ - "ssh-rsa AKDJD3839...== my-key" - ], - "password": "" -} -``` - -The username for login over SSH is `root`. The complete login command is `ssh root@hassio.local`. - -After logging in, you will find yourself in this add-on's container. The Home Assistant configuration directory is mounted on the path `/config`. - -{% configuration %} -authorized_keys: - description: Your public keys for the authorized key file. Every element will be a line inside that file. - required: false - type: string -password: - description: Set a password for login. We do **NOT** recommend this variant. - required: false - type: string -{% endconfiguration %} - -
- -
- -[win]: https://www.digitalocean.com/community/tutorials/how-to-create-ssh-keys-with-putty-to-connect-to-a-vps -[other]: https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/ - -
-This add-on is not compatible if Hass.io was installed via the generic Linux installer. -
diff --git a/source/_addons/tellstick.markdown b/source/_addons/tellstick.markdown deleted file mode 100644 index c618bd9f03b..00000000000 --- a/source/_addons/tellstick.markdown +++ /dev/null @@ -1,119 +0,0 @@ ---- -title: "TellStick" -description: "Telldus TellStick service enabler and tools." ---- - -Setting up the [Tellstick](http://telldus.com) service and tools contained in the [telldus-core](http://developer.telldus.com/) package and adding configuration to enable Tellstick and Tellstick Duo to work on your Hass.io. - -To use this add-on, you first install it from the list of Built-in add-ons in Hass.io. -After installation you are presented with a default and example configuration, to alter this you must follow both the JSON format and also be aligned with the [valid parameters for Tellstick configuration file (tellstick.conf)](http://developer.telldus.com/wiki/TellStick_conf). - -After any changes have been made to the configuration, you need to restart the add-on for the changes to take effect. - -You will need to add internal communication details to `configuration.yaml` to enable the integration from Hass.io and the add-on. - -```yaml -# Example configuration.yaml entry -tellstick: - host: core-tellstick - port: [50800, 50801] -``` - -To add [lights](/integrations/tellstick#light), [sensors](/integrations/tellstick#sensor) and [switches](/integrations/tellstick#switch) you follow the guidelines for each type individually that is [described for Home Assistant](/integrations/tellstick/) - -The add-on will also enable you to interact with the `tdtool` via a Home Assistant services call, see example below for self-learning device. - -## Examples - -Example for adding more devices in the add-on configuration (note the comma separator between devices): - -```json -{ - "devices": [ - { - "id": 1, - "name": "Outdoor light", - "protocol": "everflourish", - "model": "selflearning-switch", - "house": "A", - "unit": "1" - }, - { - "id": 2, - "name": "Hallway dimmer", - "protocol": "risingsun", - "model": "selflearning-dimmer", - "house": "A", - "unit": "2" - } - ] -} -``` - -{% configuration %} -id: - description: A number and must be unique for each device. - required: true - type: integer -name: - description: A name for easy identification of the device. - required: true - type: string -protocol: - description: This is the protocol the device uses. More on the different protocols later down. - required: true - type: string -model: - description: The model parameter is only used by some protocols where there exists different types of devices using the same protocol. This can be dimmers versus non-dimmers, codeswitch versus self-learning, etc. - required: false - type: string -house: - description: Depending on protocol the values here can vary a lot to identify or group per house or type. - required: false - type: string -unit: - description: Unit identifier, in most cases a value between 1 to 16 and often used in combination with the house. - required: false - type: integer -fade: - description: Fade is either `true` or `false` and tells a dimmer if it should fade smooth or instant between values (only for IKEA protocol as it seems). - required: false - type: boolean - default: false -code: - description: A number series based on ones and zeroes often used for dip-switch based devices. - required: false - type: string -{% endconfiguration %} - -For more information about the configuration including protocols, see the [telldus documentation](http://developer.telldus.com/wiki/TellStick_conf). - -## Service calls - -If you wish to teach a self-learning device in your TellStick configuration: - -Go to Home Assistant service call in Developer tools and select. - -- Service: `hassio.addon_stdin` -- Enter service Data: - `{"addon":"core_tellstick","input":{"function":"learn","device":"1"}}` - -Replace `1` with the corresponding ID of the device in your TellStick configuration. - -You can also use this to list devices or sensors and read the output in the add-on log: -`{"addon":"core_tellstick","input":{"function":"list-sensors"}}` - -### Supported service commands - -- `"function":"list"`: List currently configured devices with name and device id and all discovered sensors. - -- `"function":"list-sensors"` -- `"function":"list-devices"`: Alternative devices/sensors listing: Shows devices and/or sensors using key=value format (with tabs as separators, one device/sensor per line, no header lines.) - -- `"function":"on","device":"x"`: Turns on device. ’x’ could either be an integer of the device-id, or the name of the device. - -- `"function":"off","device":"x"`: Turns off device. ’x’ could either be an integer of the device-id, or the name of the device. - -- `"function":"bell","device":"x"`: Sends bell command to devices supporting this. ’x’ could either be an integer of the device-id, or the name of the device. - -- `"function":"learn","device":"x"`: Sends a special learn command to devices supporting this. This is normally devices of ’selflearning’ type. ’x’ could either be an integer of the device-id, or the name of the device. diff --git a/source/_redirects b/source/_redirects index 1f2ec3c25fb..cd1e7758398 100644 --- a/source/_redirects +++ b/source/_redirects @@ -2065,3 +2065,23 @@ /docs/ecosystem/ios/notifications/requesting_location_updates https://companion.home-assistant.io/notifications/location /docs/ecosystem/ios/notifications/sounds https://companion.home-assistant.io/notifications/sounds /ecosystem/ios/notifications https://companion.home-assistant.io/en/getting_started/migration#5---known-issues + +# Add-ons +/addons/cec_scan https://github.com/home-assistant/hassio-addons/blob/master/cec_scan/README.md +/addons/check_config https://github.com/home-assistant/hassio-addons/blob/master/check_config/README.md +/addons/configurator https://github.com/home-assistant/hassio-addons/blob/master/configurator/README.md +/addons/dhcp_server https://github.com/home-assistant/hassio-addons/blob/master/dhcp_server/README.md +/addons/dnsmasq https://github.com/home-assistant/hassio-addons/blob/master/dnsmasq/README.md +/addons/duckdns https://github.com/home-assistant/hassio-addons/blob/master/duckdns/README.md +/addons/git_pull https://github.com/home-assistant/hassio-addons/blob/master/git_pull/README.md +/addons/google_assistant https://github.com/home-assistant/hassio-addons/blob/master/google_assistant/README.md +/addons/homematic https://github.com/home-assistant/hassio-addons/blob/master/homematic/README.md +/addons/lets_encrypt https://github.com/home-assistant/hassio-addons/blob/master/letsencrypt/README.md +/addons/mariadb https://github.com/home-assistant/hassio-addons/blob/master/mariadb/README.md +/addons/mosquitto https://github.com/home-assistant/hassio-addons/blob/master/mosquitto/README.md +/addons/nginx_proxy https://github.com/home-assistant/hassio-addons/blob/master/nginx_proxy/README.md +/addons/rpc_shutdown https://github.com/home-assistant/hassio-addons/blob/master/rpc_shutdown/README.md +/addons/samba https://github.com/home-assistant/hassio-addons/blob/master/samba/README.md +/addons/snips https://github.com/home-assistant/hassio-addons/blob/master/snips/README.md +/addons/ssh https://github.com/home-assistant/hassio-addons/blob/master/ssh/README.md +/addons/tellstick https://github.com/home-assistant/hassio-addons/blob/master/tellstick/README.md diff --git a/source/addons/index.html b/source/addons/index.html index c0114b2bf91..b8a3ca0390a 100644 --- a/source/addons/index.html +++ b/source/addons/index.html @@ -1,39 +1,38 @@ --- title: "Hass.io Add-ons" -description: "List of the built-in add-ons of Hass.io." +description: "Find add-ons to install with Home Assistant." regenerate: false --- -

Add-ons for Hass.io allow the user to extend the functionality around Home Assistant. This can be running an application that Home Assistant can integrate with (like an MQTT broker) or to share the configuration via Samba for easy editing from other computers. Add-ons can be configured via the Hass.io panel in Home Assistant.

+

+ Add-ons for Hass.io allow the user to extend the functionality around Home + Assistant by installing additional applications. +

+

+ This can be running an application that Home Assistant can integrate with + (like an MQTT broker) or to share the configuration via Samba for easy editing + from other computers. Add-ons can be configured via the Hass.io panel in Home + Assistant. +

+ +

+ + Add-ons for Hass.io are freely available in the add-on store. +

- Check the Hass.io forums for add-on repositories managed by the community. + To install add-ons, navigate to the Hass.io panel in your Home Assistant + frontend, and click on the "ADD-ON STORE" tab. All add-ons, including their documentation, are available right from the store. + Click on a add-on you are interested in, to read the documentation or to install the add-on.

-

-Add-ons are only available if you've used the Hass.io installer. If you installed Home Assistant using any other method then you cannot use add-ons (but you can achieve the same result manually). +

+ Add-ons are only available if you've used the Hass.io installer. If you + installed Home Assistant using any other method then you cannot use add-ons + (but you can achieve the same result manually).

-{% assign addons = site.addons | sort: 'title' %} - -

Featured add-ons

- -
    -{% for addon in addons %}{% if addon.featured %} -
  • - {{ addon.title }}
    - {{ addon.description }} -
  • -{% endif %}{% endfor %} -
- -

Other add-ons

- -
    -{% for addon in addons %}{% if addon.featured != true %} -
  • - {{ addon.title }}
    - {{ addon.description }} -
  • -{% endif %}{% endfor %} -
+

+ Check the Hass.io forums for + add-on repositories managed by the community. +

diff --git a/source/images/addons/addon-store.png b/source/images/addons/addon-store.png new file mode 100644 index 0000000000000000000000000000000000000000..f949208c97f52c61b32e70cec36ecd95bbc1bddc GIT binary patch literal 106415 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%0AJ16( z!*EUt@>)X2Q8pF0`F&14WH<0UX?y!#x1Bz3(W{;nopncF{4tb$nKq2eii7gJ_z?ob zCj=9LJOPq*ek5pmm@5@)?q8@LpE@y0FVH@fNqJD0P&B7%fQQX$zpO?gdk$TWiM>D- z@s)Ycwm~e)hIO8w&U_*37!!%37$zBF*22BVCx(4N*Pn*F2AEPKUjBLwBem@6pNa;b zjQ6OX7M4&xT1($(V?AiVy;8C_s2C0>El%ZFpO`S?MrkhH6w}xK1nSkA#8_wiejQho z`h13XvhD`C6&7oH1-k-heQv;>{OXng@J{`zP*32bL=;H8yKW_e&3HT}AxKevzKv$g z6z>_on5l8cp%vJ%PB9NgEnN4pl~39&@G%G0*f9rn+rf((m|9me*n()^ex6MHl5==S zaZmJu&+I%SMMeual`?;BuL3MX5LYv)o9O%DZvRlSS>Q0ANVrIJvww+eIOH5^KcLd7 z;zJrtEp9Gdv}!5LC>Cf~I*t@7k^F{HTKNO!E_!@?q+A`1O$kO&V^2no@Tx)#`n3o* ze0W4jD+H_s0rKm-hne}n9y>#ZQOcMnos03`%Q9fC4|rJ#z^y0!*3fGnWfn_bW#dB} z&gU4Oc?GM(wu2gYE2%chp*ZII!T3%1abEs?oqrq5XlMT1y~BQmOmn=)^!aUV5V`Ph z1FZoo9sZ2-Ut}%n<8vywrxrt21|({W5Y65oN(pdK>tq^9@1Ls;4d4d{2INyf2*WLL zlQ+PFC04wwXQ<0e(Y22rae%|U(I`yiB~Ft1xXPh)g)$?I6v&V|HZhsT#h>V$qLweE zydrRLjPpoKRpv#--206}^0RDB|2ayiMexO1|F*^C((4uHqjt@&t^|ndr%x|}RXhk( zX<~M17Mzw^_UM0rft3bewO}*RHITDe?!)XLDqXC|uRyey93-7bRcW6$<*kAtp6Ma) zD#2HV7E60TwcCTM{xj&h!x1SgR8K0-kafw*RMYBMV?kRG&hdiVN|VBCE<*AcSg?xwHXyP5TWDx z627pdPSk@fONExGB|W3>N+s$A(bm=PFz15bPVR~AQ%j7BJ8;fQ^AA%$` zUe;s(f?a48y3ID@*t__KE4TDi@7BD?xUE@!;+uq!B(4*S{LDyN{K)e$JS;7*o(|tm zB@C<0kcRQewk^bevN=b`pP1gfu`hV72Q?#N(5hpv&PD$rMS@$jO%y#u!F=pLRQycs zK~T$o^not4zm(0#%2obAmuJ$6Lpnult&WZ(o4;E|7E{eApyq?EN)j}jlqZc#HvzLg znMzK`^&+vGH1vbUP(lgq*zmW9i|CrjT@M_pVDd4#Mk3_lv3+Q%6eblOOMaAuBXw58 zQCYkIIKkFw7$HV;C%(kH`+iPQHcTVIaM#;dL^Ee*!~vqMEdyY zRY^u&YMVN2abkn<>qoVIX{pq5DBc_DH5q@YGyHr?!JU=Y!*C(hMrHlfYC+QEpqs(- zqv#lP?b|A|vb~gk4s(^LGeJ>-jI>w?s*E{=gK%i{x%CumFvX=3v|uC>aYWbX?GbjP zSra+--Xnq;cqPxJbS3e38$>ziri)jTacQKlS&BA{7M3zP2#3S@bx!u+LMYY1sk|eS z(B9pE(1+;`dLEu(L^ZhNoeW76t6zRAivu{}lby)m+ZFZ47xb*vg`Lo=m7bg!oE{bN z`Q?lf7w{uD+C8X_cvM0Y0d3EB0vp#~!SAQvO6A+#bxO)Fj`n<}e^qz~ofXvnPkcQ4 zzbyyoaQe$f!G$=52@dVpBLRkea^3NXQasxh?i{Ng#S6aM6S4v>QOCw$O*Pm*L?+eg`3Dkk;IaL1; zFIzfC67!@s{-^@EjGUKxDjeQ!vPm1uc0{-)F+5te$o=D+=k)H=lVF9i5_;)vx5wa| z!spx<`DT`9YoPP2v3kvG&57o;gG}sQz-~xszeB7 zH3?5oCmP!hPxoivYv0s7d1Nq+2d%!((r47HIJ6opo^MsS?$MHWd{1@mp$o-@%cCPc z&Vo0?xYso-3MK_XF3WL<^EMH#4`X&FsLSU0b?eP)Vx~1ZS(R;4@f==eU@orPw+l7@ zid#yzP&s(WHj&_4D_^S~WmOby?a9R%svAGl&rvhL{;wcF9qqh89x43e?6+yzp-opr zb7ThTHu%?panmB)6x9N7QRbrZF9F{BXts3SwN456<=n#-V#H3^sFsaSy9dp^L{O^j6 z(Hp0I)le|$uy=Je1W0V~zb*v4py34b^~?XyMj+?^S)&G81BmtfPrv{YG*A-XYW_c3 z^ZzOfKwxH1`69x9DuVwN6Z|J>*e`e``2T&aBothf)Jmoz5%`~S;r}6>t}owDcT`Rv z_d4uL%KG>90K;@@1E?%H44}ozL=mbG{)b@I$uYf-KCck{5QInQxgA2Bcm~0JaVzv7 z+VpG9)Svi=7WaRMDXcbV^ZY;2Ikjp2^GE~}^c8Pc$Exdceg3Aac(2(@n- z__z{kl4@>NuRj}8Dr(pIP{8kD1L7fXI#2TjZ+h;Zwp{xU;{~r7BK>bVeFlQTUrR;n ztU!bc)OFeEPnhB0c0wK}ySF(2nxr_DJURQ9O-8h_ROSlDZ@Qv^i^4=T6%cxwarsLO z*BURe4Zfu(Xqd5~XEAques_e0PRR*4Y_bgK3@%ueI=ltEJ)DO>SkVKPqe?C+R!$Rv zp8RiHQ)!Hs7Z+nLGJkD^a?!DBk)y4eMr^wDoGEBSdXVLEi+SFK<<|Vg}<_UORT&&cT0A)gzb@rk{b9kH$l&&^cli7-8BgT^=`Tqi* z7avqeDX8eOcOZ`XcSp!Kx{#tfthNj^a*kbW|C+Woc6l>>6$HJVkN(7^O#YQltpjU8 znFE52*4EegT(&!+)?Zy+4|Gbm3S_pN?Vo01eaK9yTk)&o*3(vkZ8=NzS(y7j=N7a} zhBbxJgAi1OUPnTq5i?iQsd+GsbGdzmNWVWMiCsw@(+?(+9B@)_KLu{L)${1O&J@Yt z83%P~^Tz_5B_fZ+PGn7UBDd`6AxQkMnn2KQ#DFE;j?THL+aECux%-;>E(e7jti>3{ z#jiv>kpN$jbJdo!aCeR-{Klr1AvT5R>H>*_LjYl_96+o*$lKC_P`dE(D@s`oHGXd5 z*i_AeP=>zgTfBr*c#u`o_bt?{nDp|@XlJaS>&kPy`>D}Ub-W)(Nx+YA-8W!WMgAtp z_eQIdtJn4cB5*G*Jrn@avTWdB4cM>|iEL+_q)+AmTqE@bq`Ak9&K7HmniJX|*MLdr#aDWn3Wp$|UXyAP7TQLw-t zc)liADS#eZV1Mc1rMepCW>u4mu)Qls@fZpT%I%mW)+OVe|Asv#m4Z2eO6^yyLZFn& zVmw_H(j&+=!n7i^+c&L4tv9GG3QOyvk4%m-fjzOU1Swdx0mtVajo0;y2 z2=?s%4J1mDfxob!^?pO4QW6*7474Zn%F?fsGSWU^6?AUiJLRLbZcdfs6=d(A+QQMz zB;s34VA`oF@yuT2Kf@x;FIcxv$yueU`o})=mo86-a-#qgUX%E|QYSp`#Wh6A&a;D3 z<;$sStx*IqU2U{w|9yRoiL#{Ut-tmHiLiGg{6Ul98oN(Ys|!0FJkAl{mdxs0yxbgd zx(st(X`I@fdHtiqz}%YVL6CH+%(;CV$I1E1!;T>LhOwaS0bX%5#Yre6g|CV3%>|^< zblm68%&&FBF>A0yRuWsL@kP?y#5X< z8}Ot}U3er&aind5Cq~%`t^a>kws01(b(yNEB7WU6$rv8=Q9?@UHUQ4e&5cP5(%o5r zdIscUf`{W0iXpZ$W4Df1!k`JJv$X(Z$af+k`2~Y?6AJbDOOB77rSvG}pl_m@&Uo3) zLq|O0Z*wpG8U7cJxMh2^2X!loENW&kilr_t5 z5FtwLa4-9^1FwB2ig^OnQEW&L!bC1WZc~olTx+bik_zko6U3&!kGwH8iSwMyfit+> z#zyC^>-w008C`JE&AeU;5joF;XxgXioo-N#*evTIY%>JYOffs@K^OZ=0>XW;|tF~WVZ)A}) zoWD-8IF5p%rv~k`66DzlTqNaYu>c7eq{+|wCl~iB5zhPB(}5IipwB>t36WTeCQ!8A zt28;EBSd8Wj61+E%zvA>R26ea?)F&DMCUIRm5c%{JG1y@toS7{1Sv1^Cg}vyCM@oq zl{SK=oU1!S7R8SIFG#xLK?ncuvvkUTKLGH?`!D(ifCLgCCz8y5nJBpEe^D6}VnGC? z`X@*lM05)|>8J+UbC7-kZT>&{q?WD4e#(OII5}((APS)b0=O)z{}Tj()Cmad zehE-%!H_{r7Ixo(L+O71n*k*71r5&$-fUhLKzLA!gvG`p<{-IqF;VIbLtrP%7Xhv%+GH)(;bpO|a33JXwB6vPfm&3x$fFJVlybDN>s@_Bew!fYb zx>nD+b@`4m)rTmHVOt}}o*tv8>dX=k&{T6qh?s0{w(ou4I@D2z2=etTO91XXKj>Lf zq@~O27DGPj=Zbl`iy7@UKDeq{WLzLzY1<*auJ<-mP*H``MG8<}RG&;p$>OSjU(4Tb zQn+2>nHCQ>VRWSw`QM55iJ841i>CEjgPZ}vAGgD*BCki3@qD2FSw2~0Tb|ddK36Qx zY$kijs64abjQ4`M_g>&Lx8o|C+chXcH}t(#+YYA#vB{qzkO@I|?;&_vBqF}szV~a! zG`^%Bm80M^MqLov4HzAft%$N(N>LTwXt7m2uBg#|?Y{21%mNh^s0%3k1MGBp{Z40b zG?6^Fq3a3y^m}u)57DmCK_(Qr8o^Y(+Ub4h|ud%3WN9G z*0o)?VdU!5P(+rFlWa$>W`aDSKat~+Mftq0`8>F+`aL&&?~6mR#rh#Z(OVi zz;{q3(I}aM0K`!ir>#n14M-l+)c*J7Fk#%dl1RV+WMC+=7y(s6Te`LV^2fPHP!H!RK7Aj+cX@(M+G>Gq8G|ieEO*i1vM;97p8yVX2h-lNIo) z7>*KaYbU-UemxiT)Z!VYF&qLTVM2#_CLx!&_Yi<76E1H3ce7O}y7ze(l!$_hra7#G z#28U|X(GEeInE%RL%nh4IVe8Eum)}9Vl(Q1L=@TV7$Pa__7!<kn#0*97ifwbUJe${IBnp-^K+OYeQ&Lsxn$%;Ooy&6Of*a&xu%;Q<1!<4IrWhNj zzU_FeA>*+H-**+@Q2dEJ@w!}fe!AM&H2P(?01`XU#+$eA6W&SN=r>1?ab_WHrx%e3 z`QB#qe^}#TaG3h;L(9RnvTX{uEqUZr#tCRgeCW5>=(qkNWdgD18dP!sBAj^*{|shB z7~?STae@|jVP0*pXBQPyrLlJ zFpk&Tj`of)Xo|%0JfU{59M)^7QjDN;U>Z9RWN$3|kLX@A1q6~^zWh7RTyR_qeW-osx@DkY9r{a-*imRGfqU++n> zB;Uu0eb^QotGHov^_a?u-6zNiie36%Z3GZ=Kn;qTlVRd_-tq15D7b=368h8_WP);8 zt83rQ)?q(F!soDhI9q^wetYv%X!ia#FAf`r&l$lorWC=W<~vU8U8);Fq5xUnb-{o^ zaKa8q5P73J)t<#n5FNCh`U+nw0Oe3?yaab~DlDJ>>cU6$xMo2Am0;qr#b&?Z;UDDp zr*nWmA+RpJk2>;nl|Sa;k;E_A{vDp1y6rIn!32m7ZFZQJoS%q2EzwwrUO>xCg7`3TW$ z%wUJ`R}rZzE-`mH$6X!>MEnqaJ1eOYm3o;sJ>#wn_@#EH$!R+qaJ@J8`FR6CT`VXA zlL7ZBMtOY85FT3uOr_G}`6z!kXAU^F*-zMZ|IN%@f7QBXk{KbUV>JTu;>deP$0QAG-hd()3F}!UzMuYDDa1r6EXLQ7;2@ z62^a;3u)=I<;hFhdD zp;a8L#z9Z%pR>8tdf3SPNQz9y3kIF8{ECUdi!`IhJfGc34AKf41oWZESP7^PP>Ux- z`YzjuK~Bg64--V=y({u+FABqNqdBO9r=Rx#fT|l9vNJ+L!m7wS3pkd1LzhnJ7KkIP zEVf*g!Tkvuo6;+Rmp@@m_d3jfVHE*A44~M+c!H=N!g>O7uu%M!3K*7`!R(?U!Dr$u z&*29<)_)%g71zC@y~Yq=LhLyrt7m%wfD8d0bWA+O&_83UL%MuvLA|~U^v8fLPIKew z#J4esQJI6Jq&ssG3496RbF8~Gvg5ESDQJ456jPU1))+C4RJ~5q-)HBph^?$M)LVv=fHYN(Djyjqb zL3SZkxCdDlPCT&f3#ltH*R!brY{EKh!=CdAN0^+%uylhack0Cg#l#Hb#R8&f-s6AK z2Sv1FZZ|(i>%sjnCefzYcuah8+;e^$K(?jKgl$<8>vs89IJCZA-vtKSQFDPE~52zk}Ij%P>{+Dm9Y6EVSlVCXvL?JBEqOnC$nxY_I z(Jy{Ez{x3BrhllI)k)(xiND#;ZFxkj+u@SaL2_%b8jVVi>8p*?+?h}e)a)-jlZoME zbeLRtw#%kPI*NhW?yJ~&*WBHSQlGn{Nh^t)u?U$_0ZH|!8EXzNsj5FMQv6Mb`RkW^ z^^FhX9~h`5awO9<&4gVT*{nYi8pmG58=az%Kj)#l7;M1vO9T?H_FiXw=BcJh+tw`* zi5N5WAB3%JP>@2JCM!L>zfEpKaWoa+t+S6O6k+5(BVjfdcv3ToB0?;(iO<(mDXEhHS2b^#J39GPdbP7M3=QNSVLo*K%M854ItRj0&)hHq?#fD%$5Rfl)Ea?Tj*A|59n zG$mRe|v16VVGa%cG4l`e%3;l1SKl32hzQROg~XBXcJR0c#M!pke*1}kw>Z-w!hFW!GD}RWV=y731Ar6TVcA8j8O%d3%M`LeL6*m z45>+dDq-Le>T&&H>gdRnYrMK0CIu$mA;B}Dt3ir-Y9=xc6GEc)CJ@+xb>rP*nJG|v zvKUjwrEZa!UEw8W`tvTY9gQY(odO73@v(yg9FNCzo57767QdMvR$*=Ww~1t6Kg2zu zBnlOOpamBBw_o#FoN)ty_XX$T2C>v{D3o(fuePF}_;>Qa>^z^%EF}S~pJRDtn6JnA zL7lXNBNKseF=*!YOg$61-82a_E^-9$TwwG6&@i!9oicZ&MUUJh_TVB)Y$^27ScD)k zgkUgt{YMj2zt9St}@p_RZ5!-qw(z(%y71ml_>!5Xo8 z*j%Zc&mrN3)2Sk3l{2zWPsolY6C5JngU4ak%DU>fwoKUG6$+dS#?sjdIt;_g5TSp< zHOeC|Gu<%pUj!1#K`I;*cb_GAYJ6INJIiLXr;!j8tKc7@{WR~A0Qaoxb|8lcGW!8y z3__Z#DHBAXBIKsYACpO?#mPM7pe!PXrowHi5h8v^Sl)JOETd}5GKtp6d>pB#7s!|3 zTb%Ea%p>BNQ^tt)e1lS%avw6kV%x%%gl;!V%10398aO)dWvZeS>K0FT%X z!ZT3RE2jA#=j*n^1jznWWcLE!rlHOnSr^ZZJVoVl>9%F?p59ZkaQisRE#uSRCY$z06=0%QW}o_tYD*Ry{~Zz(O>KWS{gdvjs5j`*ohryI#> zS?Il;(t0Obp3h7)Q*&7Q=MesjjNKGD0A1~_^7Mxo>M6eRk;&pc9F4t`54$bvYWykn zE_|hT`RhJfpd2G@IuHl;qcpm%J9PrSKakcbg3P`+Sc{BLp(I(tEJ!}X+(*lKJCja* zvj`)y(Hng#T&naW$Hz9XyZzUOxhvf~xN(&RvD%}S?11XIqV!a7TXTp?Hnur_my>;+m#Iw z6eUW-v2LoWC>w~E^)7u}){lVsLoQLtt7j1sBYS_;07eP+Lo4i|!U}A`>4PR>ZAqmn z2je3?*t0Jhs>C3Z%i}%NLtRavNggc+;%CVR#z;4tu=uX@55=ibBt+5X{q_mcCLdgZ zWGZ=r@jaLPKbcu1X7Y`o(Vm{r|3n&iHa25>52m&VqgGnBDtp#7GAYRl`bi`wFa;r! zz8yPIb&aji!7YOXnm)Ubb!-{;&$Ay3 zHm2IJ{1uDGJBg&-uLo2JZR3or2i4CXUi3U}K3p0C-b1^Z6JFo?eiZoX@$R;XoF2o~ zG_B^pWWlku-$dSX>(Vx?A=2}O$1&?}F6JY*lEkgUei=G%HacE1r;&UgPS}NAcc6qN z_eH;v75PX~`|Jq$`(&I_;<&X^J2&aO?w!~>KnXWL_r>fR^U=#>Z!5Rm5%_r{(svRD z=>7$Nx6WfI?AG3Jte;kf>>cuy(Pt;07%dfO{cuInP?}WUwG2f8QZ>K)TRo9K-Jl8$q zS+giSa<~?z!22E#a)?+Ha#s6XX8irp=wbRJ*N~|4;I*ho)YS7YR*8MjJtF4#^yyrH zH%-L~wrYl7mt6(Hr*Kwi#ZM+EubcCoTaf8E-koU}(e!r60~NNKH3 zp}bknha=NA;OyJ3uw#{1m@refLyrg5RjQ1`p4e~sUaV%o(^A2Yd+g)xn@)eiQ^8PI z$?cU#r2P>M*v`4U!6{AH{1DI4>~Hp`gymLzz>Kfh%5-NqBB`B5%({%XEVE9X8Vi_$m(4_JXi zNp>g+68Al0_eNlW3=r>S-)#EKe?zC&0qVGc6GR#^xA?Z^WD;EKo#wh znBc&()W3A%{Fjd`%w(R_xk~KdHcA65o;4wteJ>d&gBm15`9JCP7588bJSI>9QJqc|R{^hi7w!5j@e7gP1q3oMez#P}9zov&+de2MkSr1c?k zd!5>@kaS-&pt*tbz+8y3uL%Mcsf?vdG2>E;tS`%$UXF+{z8i-J zpjY6PVTao2*cXp@@=p3^9&v1%IVpUVIKPBY4B*sT3tDb|y@I&87&TTx2>bP?6iZ2z zopqW}{?^39XIAsxC{L*pUI!zBC^B7B53d&Nk}P^?GTUSBQO4IYPO)wbU$u4opL#_% zgB;;-$#lNI!_y_rZ($~VwqGj~JWIwrDKa`aq?z$|u32<1euzXCnB*lfpQ$~4dtgQ} zt{NA|$_15xa*qw4kq1Cv=WDZNBQM&R;z*ghVkiFePqBMBd2wa#&GqND@AU{MHpR`D zwquKze8R_#ll`-5DX0B)>bP3K0om5$+Pr5!N<%T~T!Dw!8RSm9A^BaC^)4z}!p527 zm?4{69KK8BQ}K(jPQ?jJm}n`h---a`tQTig!*i;Le2OUyV?s5Xc|UMvMHjh%v$#ZH z%;HBLI>{*<1%x8_mr#7^PcP0M}>h4UG) z1f=_ECKbNJs>oM#!DfWyz=OH3Aste${te3L5&b_V9hY7GyMeu5>8Q>e`94MoW!8c` z9ucT!>^z3exk`sp5~jZ8LtQ0%nID#A<= zz9RHWmC(`pX}5ubxV)EaK~+h;1!a6ty#xUNf_q;N=!%;owytC6qghyr*iYKrQ9C1H80EBZCZNvA!j(yLcH{92)I8;V<1KvSpP>FQUOG3g+NS_Th zd-Q5Rnd-Z!Wibk9HEv0tQ1ZGV7%6Vrv?j5krU;iW(1jQ|f3+he&#ZiiP7Rh}^eNoh zXd3-YJO&4$Qz{HuVxFpyp3EETdKyP7e34?G@&>3QW$cjy&dLgn_6}TK2lRu1Sls|K z*ZE@vfglJ5=dtEH3FHAW%a7mU&{jdR(zk_<=DCXu=UkBeiM7bz=!8P?Gf2!x<~F;9 zohn!?>nOS&P|62oG-W zA-KQ|V#igfQcz%y8XhmruL&wSM9<0nn;Mei>})}Zf&FI%7EA^=Nx;R1bL1CHHPo>y zJ?xMBohy`cKuk90aQaOYT>)SXo)8MDI3`k-Sp8M;D)ea2fNcp$CqzeN1;51H2vKN# zDYLcrIqTDcmeHuSfr5sh#)mwj<^zb@kBdc6f;dkk)@PIkjGn%%UDBTNL=>2MKJG}Tl_lDShG@qG zw@MntqfW$ygeGR8#k1clx)ECXTj%jDGc}A_ijC7>G11{U9_#F9e_BKU_TaAtKJid| zU01H+ks?@+UF33UVb7~>-`)Fy46K0WNZ8xk`7l)b#0>YLCGEHI3Z*Ix0<+%b*Io%g6U9+um>@QG3 z;Vd$HG;EWv0>Ic2EU|02$OeqkkXQSJ))cIkx`P4O5cJpaq4EAcnEg5lQp1-ww1gBjt1|Qn<>tS59RafD}CRA$*&4Hu% zl_Jy40Yy%61pbt(1RNbMKZOJQA2xvQOge_!;Xwa!l!8xaGoqlY&|%I3{x_r9JKP$$ zVU-nGo{#EB(LzPi?y^jr`ZTRMs8Y389LFOD_i%@&gw zGsm5ighU-eP})Z_CQ73ng3}4qz-B=ia@Jsxyv%Syu<;IQV=v1Zw)^+mA54)lPLjkl zmLdZ*+^~aGlAHq22oSa9ZW`2xVc=V#kje-BkJN+nm;UEjv8=v8!~k~wAq2R#5e7f7 zy4$Vn&f7~02XH;8cxSsK<;~z4o*x{zvJ{>%%!#pmFXh(gCVz%7QvMYZKshDx%ngbC zv4uui*+no>5-aDOCj4>q`{=HLz?e0Z@PqeV-zwfVPU##4*!?JLAiEWcGC(oII2Uu0s`a?`Ye50f zXg@r6&hi;oTBn^Rp;OSKLSYXCs+kX`+#-y0TyXoIh}7)7qFQw^xe#J#%39+;>I@b3bC=^-*T0Pburvh6(-w+GFLVwYA=r)__-6aMQ*o5J;rbs~- z6IGa3^X~H=FM0i=vQ=^*`AeI3fLTh;rghnCdoAvV4@h(XkxXRFq$Mzu%Mx_EP-8&l z5KobqJNuSMmfNu?3Nfqi6x3>P-(m;@(${J%RuE>Y7s+k7>^_umK1rO1=Td=VztjRD z8oAYAi99{aZ4&9-iU2#UYtf>~Tu(OFV-+`Ax?aiX_p)H+_?f?2;<4?L>upF?kg04C zZm1KKGr$P_!Bv}ahd1N|<|x$AE6;LGp-47;S+6u8?5W-5w^cZFW!CIsBG*oLNSQv&FP8e;!^=)6Oa;7H6;-&X% z6slvorimM!Yj1SrcXQF0k)@(!zm7S(NW?h{KW`>(lB()ey>7aecFEV3$BGZ)752`@822tC;RKV=%nD# zH+GJ$0?3wLI4ik;w&IlR5o}`-?3FOHMiGDh(uOZKv$;YyCAXgF zGV$Y7hmg%Ic0Xo;UJL@83OC93pU|^XN~e-Xd1BQ+A;B0MC`FAU=7ezD2`DP{46iPY z=o`s(ux;tpf9g!!KDmU~+Ha!Yhvt;16=HD24EaEZ%h$}_2eK_+6lQei1hx!+4u^!5 zdO)fgA`YkKY!z5&Oa>Y_Q<5;6S+ZdpJYG^(L~ezcfr874p)^YO3i9toQy(3#9E*KX zJVr)4o%00eSxU3P4fj>kR993O)FWDBT@N{lz(|;piU-_)$X;UH_8MP}oDQLco! zlW+fYcpSjH@Cou|_`|91+<)kXJ1A&l$)!vyC;BE1+_Ij&B7JQqJYm^lc!aF?TZq>b zpu3u+xGJ*oYgEMxMjKVQ45MnH>GZhJKFlIa)_xVeQ@Gtt>Gme4OUZ|{hFZRkqz#g5 zp0Hxc#l@~$O;3AhQ6n0%nJPDopo>X=KW~wR%#sX6H_0dixXlQfsY)A)-wgMk$%b*j zURuJmOSHw$r#6|nKe^9WjEyR1g8QGfCa%Ei28GH?xtS0fMY+BXrSbLvk!PYT@v2PN zwy#oE%(tjO!u?k~JH{WEN8H9c5n8E|c|!!~2F3UQ>hmd`cDq9p^n#$V=9NO_fU%7!d%Kr>CPQ5wB*`LLc9|V@}CW4zkFU*tLn=Pdwa0w0WPA6QtwFzT?9MAw*&%5lBg zk3PCa34p@as=?z{%U#V(WsPmN)@pu<5e6sB)r+Ik!R~yaF(c3f4 zS~a$Xh+>V5c)5(oH%0#Sh|?}Pt2IUNp~85sfs0qaXk41}@7?_=-7Po3 zp6GObCp9cvwlQzcNV?O-B7lAo9Df;qsn;}_bu#;W+ptM%@Tp96p_~SS6D9#!+DKU# zjHQKQ)DH?FJPHbKRT<t$-c3*iUo>W?>V!kn8lEZ~ z^wn`mCR?I^*N?|QgMn}^)0mXf`;0$t8my1=h$rkY%u~!hE5y`F=Lx6ftTh=>#hhhd zTkox1EM~MQUd*b>6Gh=kEC=B&>-`LVFViGfJ;}dI<1Q!$FZf!36Rxo8!zgx8A$;DX6t)s?2xyL2_FSsRMDkr zvfOQ;{6x`Acr27xoI6DNxv?bAS|7HQ){M{uCPknzxU(!@9Vxx7f}#$*zm(^2mT*X2nsC% zB%2XBLS)wfIoa!P-dU@c( z{JZ1#yN)$z^5^GoL4r(m5&X`uHzZ52Sl%`Bk{?(z&4R5Yt-B=rEgWcG+?QCq@ z+1Sp;wr$(SB$Isep6{HwuK8o8r@N=Rs-L^Ms-E91o+6IA_zM83@f`%aJW5X&ilBE< zcL7j9HFFHOL7Afr1*9^d%>sAUW^j$uKeJ#8eYWs7t$MF94?~v8rZj9s0|~J9Dl>a~ z&rB57VU+9Tu-Y%KI}i>+zU%%WJ^MV;{|s?_V-0692SVTGmZesQFZiJKVMC$}puM<2 zk@$?0iRLd$v99w}fwFP+It;;Am)0FGvtZv6 z_qlH|S?N8VlfO$$+h4oVQJF|4qeVd37nYoJ<{&X1n87^I`I0Joesr$LDHaw^MpyWn zna=Yy3e-UapQ4*h6OrJRwn}o+K4>tAE^WwYx%f*@6`CfjTk&f-*Jf2h{ zK<^$bO}d$-3Rl@F74C7PQD4WGgJ|%A@sw=ou2n1#$Fil;Ztfn&NRQJuBJEX%B|#&AzGyU*=C0KY6&55r;J5 z(`|H~09J3X%j5@ux5sX_jJopdTQ=*6cecwk);HD@0PPvhUvq$dwHWq0*mrHPVY=+M zTb{`MPfI?elN<03Z(vq#c``wzUT@X#XS<_L$sD5G92Lb}0kWHk`(HG9DVm~>%iLYn znN#Q_=Q=)>KWH@5h;&2}l%{L}u*{sMchzbTA2qF^I6w{8TKzLNN45y|k5gXY>n^_s z67AvFSI}G3L4_E zYRh(5=y`YP)mDsrSi6@YSgpsH|1RlrH1g79jdERZhp+?8@t|9r3qxpXqp3J8(VM{2 ze&%8(UWSagNV3~@ps#E2;=ol`AS9Ha72)t7#Oxn^>T{_z5r$LcNsEMnj5Um#kc}2$ z3CWByZ2I~k`RRV1@c0e%l{?R#-V4%dAmDDuJRus#-=|;*^5yO>aALM5&3ml_QSG5s zv6kC^9>G3xf~04s5wR}qYx%=(%A24>1h-1!uuM-Z>H%Op8^EIKPwol9BiHs3X&;vn zOxE-{_e7qo)d(pt(_!CbE5UoAeZBKUnM5+h0etBE^bou)LL7s)!C3<5aZdRRyOipyl$#vdAZ3GJW-!xUo`uU}yzd8Mb@kBNqi|E8`AB1*c9=THhJwUeE{6#1g z&8V0%i}qQs_3l$WMO4j(rZ&fbDkh7iaE>hHN(uf@o02J*UHrs_{&0ZT4Uh|Pbx!RU zhUKW!Y%@27F=%{H!(3H$k5&@mzb@&NIJUp63WhyoiH}3zjaJUtO6wq0l$Q1-Ix>S) zK}P^9b)&j1IX>IGs#4C`SUbEbs~GFV%FOja68vrS(L~csQyldS^^s2irX7m}_Q7k= z_zku0j%j=Ak;_o$#nP6f(JbvOAPhFwM?HNvBQrR%*d;v#7?+Ez30}|v=NK|njh*`M z=h$(GXXD!0d+BF*3C5B7ugm&GE(Z=p$?zwNAoRF~;WZR$0>pzg2)EmXx-2Iq>E6Gl z)>b=Qq@#vicz+NE6-^PUmeVga?y*1#ex4jBBS-A)XCN<5L*~##3WCy4SKU)Q{_5Fp z#B*HL1emb3N9!wdPFzG@a-pO&K%YyvI_{g14yBK>SO^~WHj_9rZfD466k@HEy)c5& zi0Fvr&OFMj+6xN<<9Y1xk8Bj;_0&CBb790f4af%}LO%koO#ZBEQ=ZKh*n$iD zSiXT4kNMZT!~Sz56vYy878B*2m73ra3Z{I+QjGSvxZH>2i}E18v9TwXi)@VW2^83c zgf0wp2#-K-A9=!sD3#{V{V1JJXS!PTcKeO}Fq${XdW>19 zaGDf})bJJVP2((-gGN1;;5Zb+g4Aap-0$DI`4K_pN3}79uK%LGP}x7G(5blQw(;5B zzHz!JZ9?S1V!hR2O%7EPY+3$v-QL^X-nLn`CZ>4NgwFXRPeM+BO1Y+lP54xhK{`^E!jJ#b0LYu^#!|gG+0# z)CxS(cfR44qJDWpu1q#OD$c8K))P(qTj5{ztIiPeU-&fESN^_l98W*2TZ?A!a4D>E zN#qZNrWTdb0N%FQd3l^R^5HClBRxXDnSD#HnfLXX{JmvZkCh{vSZ?yCR!119lU6n@ zD>#a*^jc7xp=SL3V#i|2i(}w#-{idZRCIp#5ulnUX%$CSlRC-cVGOjiyC=YJS;&h3 zkFI6+aTCyM>y_`}6GA*+x5U+g4Il;McrJfHL(>$8#pX&?MXR5ePPam&9#hP(2R zgcVz6%P+s(6aPR%5&aEhVsu6PIn)uKWt#C12Y=E~QYdn?1S}q>tofXTkskVluolJk zwM_8kB5Z8B;MGpQimMr8EBRR#>y9l5VgJ0ZR-3u82-8pY6#}+U2AWCWH!daCFAm2l zVo#&O4dm}z7>NyNQ@s&m?9(0)Eb`tqtVWq0J-+Frz;1>&JM$5il(WnHqtBc7BW*U| z$U1xtwdMCsb_CRzTF$)@x_sM{`pZ402Xjr&_}?`1H-;=;1odfD_dEpp98dZ<9vp_Q zj*jH(r%$@v?}E}Z)6;k#M@Q6Y23@UE2VXy5GjumOiPn{OnfL9Y@(m=1ufnoW^R9)7 z9jT=|(W7XK9}OP=SQbWI(E5h!)CbT(>s%=Uudlv)4W#N8p3!qAWOmc{DO@gR2fSAl zx=`7urX-nMCXwcPTz9@6Nq)nkc-jd67a4=@cW>5=!bdgZLJlhq_`%>@Y{Lz&%}lSn zHj}(o^a=gA{%ONEq%h7AbC|V3NJl?#TPLx)zC;6AS&a9L% z#W^a9c^Ar^JN@2NZgYU@-{QGd-g9B_r=6pB3~Qwvtw%XQbboeouCDRu4gnh>>T-p> zka02*`qD5Y@*@%=i>?hBb|%ZUwq!9!e#A5R1ZAhXf*)nrFvro)1$N|i=ORr)3_~b! zP~U@&7X74`=;TFbVU`Mczgz{^Y1zg~KHsTrc5PSGSGJw2!Y3G7#>+ek%CGt%qO!|p zuvdZ@C+5X~YYgOvhm`eK@^H6`m6F_;+m;_H70uBCraI9Cz`sy}!kU{aJI`uL!h5B2 ze7@&97V=WSQd|)K7iW2+bwFjy6m6>mdEj|kjtPhRWF+adKU;+y`yJl1f9L=*JYXMC z_;fZK8n=pCOSVN*an8iWRXH9f-4g+UM9;l9bf0vV&{#?)nUa3&q0yjuw06}g2rR0% z?w>&k)wSmfO|xdpp{^Wh!3SGdQ1bWD(zIep=dV{9_}RO?iK|40ow?><7yo_S9eb!% zTkDeYFi$pqOdfMLuDWD?yy%A15z>c?+2Arez1r=+BW_t-iU3czE~RKcs#L#X0f@JV z&*}}`@wA1;MUlrIbYuX{P{ug^XdM{IvaiOx+=5T5mSO;xfpl5ViF9)?Ad5wM&Hqe9 ztl$ITM!AZyCpD&yYwwHBZRJ;n;4FDCfHr(1VKEj!%EUXMm?%W$D~u7z%B+pOUYo8LTX)VFzbiAM#iH0pZxU3j}RG|ev>@xfrazrQc)x4kWG zQbEyYOv&d%(Hw%X0`P}gu|TICL&l}Q-5;SVv!S^BayEaADnX-Qv7JueBHncgO)9ECVuo%#Nq#<@dhI+! z(}p5LAHg(495K5W?d|RJGQxi|0kwEMm@4GI$n?#6j0`hqjBJ*XM;e>8huo*Qy8u@y zXx%@31>|cWvIZ~zHPmYZk(g;PN%VzzR3=>U3v%lmK(5A6UVy}bc*4nx{6ykpgp%%t1M|qX_ zblLHv-jnj-tqNPjC3k#Q0KGyPpoq32q z56&arMZX2StRNvND2*f6QQteuy-lm&_aD5~e5_KqT?+p`Ckab!=NA9NSEM@X6NOJm zNgk_m=8_(rUyBJEld#}=vgdl1eLXAtT5jOG$n5@V*<+O2+(NXY+Qt_)?8>`hKENj= zeiBB&aHTrTe>IirN3TIo@LR}qz;PxR^}%(pS;t~4P(3lp@qRT`~#wzKA(hFNCQBh zm|nqq0g!_@9|k~w@F#&KM2*`A#=&wVSb2~>`+?Pcf(fkngMoGe!}$O+0D=y%(E9n` zUIu-rV9TT$x0D*UkZeHB|J$zVUnSgYZwLejeI4)wTlMAi&!i8vm#Rt_?0*lp2MczA z+8aa)Rwc}K5%&ZOIz5u^ZIPdM_A)7Gi-!N%zm8pVmu3BJxC>#Kx=$x*fj!s~t_yn< z%g+D(#fyUy|0Vh~z*@T*bc!CX>=^(f#s%sV3RTolkmeVB&=YQ$|9YZD<7b|bZ$Ci1 zt6%8bH7`E&f*7EAk47M`i0B6741?3y7YRscc45~YPZtYrv%6`-NAo<{CM{4@mHF|615H)tFsJV z@gT)4$(01g=U^koF}HmpU5gR!n*XHDkc*{KvsJjXvbf{v%M`#0&oWks8Q)DRTO z(*@^19jBGG=aeZ^4V%Scp*4N7mnA1X-r*DiHT4+9)y(iY-AWqM`M4&Y{iFSHY zI=8I;8-}R24@L^WNG!=ty3xeR_2>%#go}PP3bXwE_dB%Z@4?rdGb@+IPli+}+!*Q~ z=05D7fI`!f_4c?Z7ky@$d*$)Hgmsv>LXl2s&(A=I{8R{Ryy+ey6g6qOz?K1Pm5nFw zkdQ5M07HcwM)hJAk;)1Hv6^~`Wos?74)a=~DMqe8h0V|OfZ;l)<=wPURrMRlFV1dOBvb3Scd=6M}8S5{MnQ(23E;2{ASb=O` z{`t`>ixS&;H~RAlrlwg~_B1m!gc*4xc6*9fR6ofkC^mHd`genSt)%rAnHx@>nz>#a@xVjDG1uU zP0zBm^)rA8HcRcBD&c_4RIbY^e~cEl>T@WOml`MOX+Y^qEn{5;W-s{|$r=2q*W%2W zu&}0om%lEMXPNZ8tMpf?ZrIa`EyA)tgaNSlu;yt+y~@9fEk6BeMP$DDQ~&Fe0rX$2 zVK40aan5poFYAN$^OrRMj=bu8#gPhE6kA3;)e=uG*%l8*rx zoqo{i0{9U@aT-DU=2@kb*-*W1ne=~Ryv*v3cGZ_eFJMEEdD)-90NA_> zdm$`X_c`zUx|a)afeMlmK3#JlwatH`0fIMZ`iIni{wHOIe{h`>tywou|x)RtXa6lrzvDdmVl#R(El~Pj2XeD{;FazF} ztNWFcrU5;?)4N*jpD!N$^=tc^gBZx1Bc;yQ01nd0I+Ny8JkM&r0=@22(IXJWr)*#> z?*3w$POm?T=v602$*m7{xkp2vVZeq*bwZyrwanULruF@vjfn*L3!W5dK!Crc7ELq4-ao|>qVlENriV# zD0IxX+-$bCw0xT02#HjW*RX-fDMtoS1Ytp=i(*M!c0~n2d;30bTVI0m$?INfl#(fe zDAB%qx)DnbLEMA{Q{Wqlg=fU0;t;Vo?+MB5V+r8K`@U>lT|U(M1Ff&Bhb?l`Zq(oc z)3YXDuGiiV$C6$%#Z3kSPNs7@eBPX5=jLa4sezC&?$?{1K!7WTjF>AOCgMOlNWOa< z4?+R2wc6Y$S~LcU+``_^NZ#Jl)!+mhO--FiXm$TrAZu)|9WK}GmPe)CN7JP$K$E; zqQ_aQ-ImG#_V9(@>uv$@gjf8I!esn=f7}UkLUo<$8R;&aa$)cn82^a&X1(!9m-h=+ ziDC``bK{68(J((qy`L^t_R^s%zJyDR@jr%R2)nj6r{q03n;cyjeKcX=%Wg&>_*#K(LRgSTHAWT8N=%3sBM>@4eQK)XCp-2!SNcGkkbm@ityY+Xvy*K{KU~W0ongs>pnJ-oR za$-jSHNWqU`@umPVt+t()wIqrq{4cvA<~LZH#<9{`Ye)>pvjud1Pv9qq%pz!kvP&d zb)HHzAjuD@@>S^I5)k!3CYX!8$ir+jp8Q8F(ca(lm0HqR`-Kt(P+oMW_e+f}5w}&c z3@(!f+IO?|F8~y!JKy02Yv$9}55S5~k3r9Fk!q>pDH&!_JiGn2Km@)ix$9bkX-3#> zW}s!!1c+&}hCOOVGuG~YlbdlWNo@pHruEOs)W`$WWzg;NdIA-2E+#gOMHgc{Pry?J zZ(O1XmlM<&=Lia_6v@ zGR4i-D^kyoplW)VdMeV?XDL=!SLnQ zD>a}>Lkyj>hXaP8k}}L9qcj&DgGw+=ui0=2c)Dl?&6SD_MPeWQ7|`IcS@Y;eI4+rQkc9J5m3`d_f5a6O z!1Fhq1*d9OlScw6b?luaiGy*Z-I-s~r4sp6al{IE;-^>;VKZa6X=tQQSxr zE)E-|wNNsNg9e4AEcc(`)>yj=xFMo*%2i7jaA9KCpmwjlR-e9w$7vS*?}On*ViWhH z91PM!)$d6MD$$%Pe^kfVcvvplG@AH3&-h@<+MId{!>@gd>ye%>i&llJgktMPR6!!F zS^Lf`_JJ@jH^TkOC%o~4EMiwEe`w!26RId<^~)Q92q=**kkYTQFK6{d^v%&T5^UFnE*| z6!qFG)iC&up1K`if+1|NrOuWLapwv;r9=dkDTwgJgiQmwu*g@EA(E6oVv(d$gZlM_ zvct>+ZQH3z=$IIo)N6>OoC%JhzDA4mQAPVbm>}Q)QlP~)0W`C}B`@WZ} zmIeuzDrEh3=rQOIh7VUm{wHGoFq@B(mtO<+MwP6}gxX=d(NdT2{&FMtD-V<@stoWhgF>bXA26QP|ThT&GaI7?9G38J>PVMo9ITK>nNK{-8!F z&#R8gn9z55shdo6gv187RRR!$p+XKYGwt(zp0ut2;yhQ_-!7rqYN>(kQkLYSN>Cn! zR7l`3QX21dPvHJLIq*O_6#|@!CaHWHJf&;&@ek=JzetiMEzutS*usKB7SG#+zUFui zpHlCYW5A@?g_=n+-A;2G}BIYm`oq=_!E96OAfhh6`;7He(l3 z$gS&Q{tEN4^cj-p@2A-KIVAU0M(!JclxT4m2nnl2GD{0+Rf?s|E81ddNtZ_XFheJ~t@>2SdT zdQjZ^aSk(I^_8Zx3Wg0ejx3^9$E-#vRBzF%XGLoNyFyI{XOKPZ!ema@`w)8$LY7+$ z6uXZC*@SF<5aQF!F~vK>@WmE~Q+uGKE8S)2y}qq~*zGRPe#jsiJLq7){*#@aSG_xCrQ0|a*k@w(a2s>WNJPI=$FbSpvHh)mem4@BN(lr{Y@j0AQtRt7fh2H86uBg5OAOF&vB57!nWTV9vG4>j_Rv;a?e%3B zl~qJ|Ic6W(cSDw_=A$UlMpSCzkAIsAzuIZJ3wj|4k`KP$Ku0LAp#1Y39!7G_G6L{ciog1NT_WMjqdzGV> zV=DhVWwfLpwljC(Eph1AM(o4Ey$Yrt3&~qm`lC?|r@xL!ZjuY5Ark)W-^xvmZ`wae zz;M#Nwc*x2at*R8n>P0}K9$M9IeP#)mc*Ic`|aLll#r3FrGW)0 zCj!&fsUCohoB{olt-DqXQIA$?d05}N5s4iPQo0zVUpyio8bJ?MEkP* zs2}OEn#pVAYkSQ8DM@`fmG+=Z??i9B)FEYiu7Mx zziu9TL=Je$vQQ;WK`=KiR%nX^s6gyt=AiXv>m&jOXqW~UF3bTJC+McWk3@R9tzS?8 zvcHJ~!F4DY0@q@}`|N2ST|w7jsKmd+iK->cD1h+vvUFAAKaQnFf*+Nx*b>|DN_UoC$=X=7x9Hy&)}oVU#BMbwi&i4Hm75kOh*H+8YL&fpna!PM{(}Xbwg! zfVSZ?;S-lmr3?{=1ukaqpMl@NFtW-DXfTc?{ctpe8SEIA^jQMt$G%m!ZyM2<_X* z<&`kV$V!FzyC2_N7KImgd_NQj&uG{St0xuH9K4%Js@3zM<^J7hGT4ke?m^?0OcFnH z?<}Dx5|sBm&9+xX3$TWBnogRriXib(g->p@KFoaIkzPT(XE&Rnr~L*NGF$7~^sRcwiZ4;NSOvlOSmG1$>LWJgyO0_|zOPj*(2`7JAMdur4AMw(_Pr>ew)JHArU1YR^>>pXM#u>Rnr)hX+?QzWgS$bTO1Y}JAbDkR6TupSMs!uROlq8n zjkkz$)Ck@*hlH+_f=_a(Yf23-k&JEkxtwn(ujO#w&;?d>P{t6f9va!F`G{8{}&bm!E9307UEeKeE6T6`Vzkt)*oD8;D;cX$^OxYBE<{AzP~8Nk|{+sSMF&bs#m_*yipD9 zi~ooJx%`4^ty==^gYDW+|GrPUl?gonhu2lVH5d4DOBAul8g`aDr58O8WDFn9zI=KualrtOiDTw9M^i%NXH2Of*mO}d5d5=M*YOB@)<7r*NJT)! z0{yMvb9o@cbAlf7Sqa;4uD5L&H6aWlJ-Cco)x3D^NwVu;{$4C&A=7zfC4IQ8N5=T~ z?y5>+8yseKI@(Xq2&gfTGvU`BkfY~5#@>%|D$v$l$N!a*w8dsUuRqC%Wb&ejs zK8cO7t8fS{d6$}U2yQzX0cK>|omRik$5+p3iw4*Xez-JIfN*u|z`|dG?}CvAlTz%2 zm1E*akc}us+eXomyvBTMi6oXiG6W^wa_zz^d59V5k;`#mp{wL;BBx?=4D_r@52wU$ zHU&C)MrMyTMJRYEhR46SnyuR;P?v8z`FtGY#Rr02pGJ17s7iNcrOkWM^NJt+D!n@1 zyJp-}cz`vDrr#Z!M1Bk~V2ld1p40hFLCgaDz!m0|!$oh5rMvKf!?C7xEIOQXQ)b(N zrKDXzk1A+CM8Caa2_kOZ{XtOvRnZlCeabqH>LXg6MFaNaaP}J?K)b}yUow&46o6`w zLbjZ*Z*xCw$i<4k6PXh9liURsD^=B4a9!4CZ?k5EH%AN+Bo zS}r^LZMNFfy_EOQ273&mpBr4As9MEDZ4MLk91flx%r0(JA6vs;jRiKbq2uz3fPO(d z8*A_C`l#8#5~1RAKkAZ`^J68Y<_nWlFBU_V*JPNV8%^xYf=_t?vryCTs_MORrnu}| znAFm_Pv)E}7Q8dRztsF*dRh+QQ7O2GmHx`E{s0VZo@&vnF44XyGl`{sZyvjTp^uP~ z03V~FZv3Ln)?zWSQ_ey8^^#;k4Mx|<(c!kMl%6HrvAlDRDqJj1Gua<33b$jeUfRW@ zX7WdL=Jz@|qF<^()=iL5Ionr6%LQVo!e0_vt4K@PbCV=Q}d1p>UjY{9TQ8gV!du zQUk(Uo&sZ)e>*9$6!Dm9shd$wpZEn~==XZ)#n`1Jqo2 zA^~5A!TLfraizlkdFnluUoSS^mwEBeSL_^(ur)1k(YE1D{7x-mqIn(5n|3ItgjUu@VMtoGhGB z4&i}~d$V4p+~55q%qm3jY9wbmM*mI>_C8%!AXm=ibt@fR>F4=zk~Dc(0okkH2GpXE zPh%1NuG=nRH*Pw&hEQXHW0=oApNu?RXTP$xohGhYdrR{^dalJYa<=w}ayK&+p0amN zbaF&+wbzFeT&=>G1Mo0XlsO)nQC26XiGGPXPksx;K5?o45Rm3CL~$(H%ck&by)45NTthNm)URUbBPM%X z(xBxtq}V;&; z&m= z*oH2j7CO1qKrT?FpHGBUFInZMiX}9_GLauN0O3}a)9x=cRC6MyOOaTTb1p$&MKo+8)lltNHC+*Tl4k1# zDm^rV`DlJv>nCA@pvY_Y+49}~eQm7A^QeTk2V}3gQ+K4xqSvr}5kHs`NKH3Bhiu>?z1(A2%_?_`owjv?xjPbt`qnjtrG1pJ~aHBI+d zZdyqW)eA5ls@n(}*Ffro=wwBhKaaM~01LGq%#lre2=Rlp%{#1QtE#ICt<2JK^y-xG zEjbT37=pMWGC(O=@YuE6khs^gg@~ePp#&PnA5^is391vJ@G03+qBmnpT{)J0JAuM& zN1D1oP=q_w`7#0H2hIohKlg5lfz9z%m;Y+;VqwmgXj>HxU$J?EiCHBHL;P2X0NbC zQgn4(+@a)CWL%W-C3v9J{YlTQC-0Hrs1}N{g7+h*cuCqO|8tu$a=RV5k44#g2`peU zkMX_sl&IGr&c`hVd5Zo?0|Ii~17GwjYyOnw7#owDWwPlUr*pT|TGyw|gkV+W`W60u z#bwmpd}4i+?jm?q^J75UQc~2CZF$lGI*f_qjgvJ54KfF5y*SMN-xJP^-;MXqj#b^b zg%RgZa0~#Z#gd&!pm3j`_`$15Zh*9v`eH#Ck*wyvUz7S35&R@3l3(<32(B(%Q(c-R zQeoaGPSc?^(>gX%tFy=VpNo~=m;Yc*LXrNFVR-Il7<(Tv>dUB>Rcp%fCAE*n*Upp$ zDVE1No%yRKmtE;t>fA2CuOg=jI>ePy09ZF)nn7>wJ>c6(tUnFp*T0J*^=W>xhmSW? z%76l{SqJQMc(rcTK*m1^#@ssfw@l}KLpVyJ$>SmUAXgoOLD+@#4$`anfOGMF8o zNb1p@nZFt~Q&h)EpK5qqgsG~~ppI&ai_yT(X}W`vIZVwGZo;3VmQ?}kvg0!>aKI2F zpVS#BL48!+@iQNBvvKIi`X&!_Q*Z{sD!oL9DLzO~gY-OV^4o>qY*E{DnoQP*zzzGp z8AT_wRidrwdOZB?loMH5F+&SZTdyzX&oS7& zCs&kUGjMjf8MA60CA8~_TDm|EI#H6@orZ?uiwS&%V;bWUG>+M;$p}f5O;O;xSb$0h znDY8+@*uY^+ZvYqTc=hJ%CIZDIoGVO8&OI`SFEUV=FFU`8FiW5^xoe*frwPPY_vQRi)eKxf^azcdIga(G+kwBCXVx3=YB79$SkEJ zX|RS|zfUlg-*b2k0hp{`SN48c1|}V4)i46bd`0=X^>YcT{Ui+-i*<@C#b0;no9N=> zRA_7%QT?x`oXbG2Z(XB=c=m(_kkbVeafAwgJWhz+Rlw1>PyO!sz}gJ9kTNi$DdVUi zLkBycI1{xRcFDtPt?9eiXq9QcBzT@6#7lPY(#JyG*dbsPGiX*H(@Fvu_qO!4C9FWr zKje&8$1Y@su%+|i=)DVlEAR6qbIRVk_gZP&X&PJ;x2c4aL=1P5WFP<>+a|GZcmARR zPb0Ot7m}@)C#F};do!lK}0cpdlQ^JUhvd1S5m+`N=<60n6%b2!vo->`>3 z%h3yjFF8Idp3B-LkgofnDX_B&rL@$}Yrk!qu3D+wnUi-=jWyaxjAo=($T~~f?OJRrSbHfxzB5B<@1`vVi5K^n{&hoy0M|* z@zWWQT=AY(iU*b=HJ{MkFj`{<&D)nKaaTcxt-_dpIz3vuw zdIb;3QSSsD@bqE;?|;j7$F-DjeuP5VAPKrt^rz({?BRTy68YoxqRs09Rgct^=Q0sN zo2}8tz;J`SnYVp%B1F6RRv>kzAwlZPz5(S*oRZ#N(=si4Qgr_jTt`9G%a7-NoL?V0 zd@xL)6(48gEg~U62b%AZjZ7P;bBYx>mv#?*@H~fsd=wLxM*`E}Va*rC?czL<_v5$B zKs66tphLUVT@Z~dg1<(R&1D5uQ{nWAJ|M0`5aQkcuDjNIZMp2rnz!f5-`#t&;Doe$ zIYxzTvJ8-ijqxwvZkVe+Yp@hvlilDZ_(17&9yfJUlBX8-tsZhVh*=a4a>xxlluYq> z7;WEFdB!37AEJl6&Kor5<#jW?R?EvgOT)*Vq>`l=sgDdukk=lY(hS%3%DY1}(QGt7Xx1WShfqn-)yE^Yn@vq? zJUB=~a05tbqj^l%^VS;nR(ZrVy$y1;l`T`3pMmRb#6NsNLm-W{Po*_ggf?B*PqkUg ztyM8R?7R2OZ%l3{^uMJOk5w5+b5I(?)M)VXnRRE~xnzIhkV_F2%{0Y^hAVMq+J$D) zV#Sp1kHgO_>`8RsFL*8do>HeS#U)UK-Vy~GJD?j?kg!uQTa$$Cebs3!r2rOMD{DH( z&2qSiI=UVc<Y-!#2dNh2S*pX6%4h#*^@AX{yAwGtPP3F6-sUl`=G7Kl38H@rt%j`5;hiq$Sy{G zS>@o=k(q|%dcwF9!v3K*IzIxLn4FM<7UKrRSGnVS5+6cKtAz8+FCM;73KNOolo+NS z3!6j<=7}I*etN-*nlQ6%;Q9*u#)9tZbIaa8&2R}dR7!Eb8krC@)Y^I40X#Nl5w!by zK=GRz->CnxJO|0K>a*9}OYGa7Auf^UG55oDH+RrlwH(Gc;tULK69h~{J?9onVm!ia zSodZ7Mos;^rZMJ$6#7Rb>QMIaE)+d^K^r7qO}99rg1llnu1kIo7j++E68MbSouLTa zY6Rd%k2K1jNJ?|&w+xSL=^S_Jun!je=6nI1XlSzzq+qc{49J=>23r>zHxFrGp9jTx zt<*DrJ@$o<^k_&qyI^!ci9_rkOBG$CrX~)OSt31BDKiBFoX7cj)i0{J^oV-lXpOZm zF6=qUc>D$-C5kvhjGRCUGq(DEdEzB$1~+-j5ZFzEOaV9~vPi1Ot+QJH2W!!9%t!gA zc+)I=eYuxdO2p#CPs*3^Lgf^s%~Oqc?=ov?css-a==q4H)>5!ylTelv3ZZ{<)|-JJi~%n&YU4jO)P*?CqJ)!%)Hk%5T0|maNz8L^byxV8+tn0 zZAh#)23Lhv_L_EGk+35&^UNKyuRpQzUN1vS!c#|;pXPgHpWXt?@Z7DM>r+6#|NTK8 zTVIuDW(k)BtaeJ6dK54ws^1t5i%EE0jAxh^w{X4wn4vg(ECBLOFL*`dUV{9M+)G++ zs~|W68L3C%%8W~&c5#-CLU!3?oYatuUn=a@tB4ggRBrXkGf`nQReD_hL&!h0p9AWt z_5;@N5rcFLubBu(Q(8QaPF6QG;3G5JQkyS3@HR<+!qB34Zn6F;q#%Xdq0qEF;eF)2 z(Rl1&STXJ_NfMMh5*Sl73D$xs48Gy!_A>)^HQcE#^Y30s__t>z|4-G);5njmxL!h| zGCK5#>Xmw_U~kA3ru;%g7-bF(F#b*EeDws#gOIyZD9FfonYIw&m?-dllE*}wcqz(w zByrZB(oMDglBukI>D}f0i4v%|e4*KWbSu+AeC|~qH$UXhcdtyFUXe?AZkbr7%nOD{ z$I13075`2JcyPjakJNaKbY)oF4Qb$rk{7Z2T7=T(1$6i))Ke>9Cs0^vp z+mpGjZ|tP|6qMT{lw#-!p&6r`JP|o^2D<&_rfMKNm+NlTxP|mh?$_*6tF&1_tY4{2jC8yXfX^%i<`er|es( zUMadpo&~N9+}N{}ndfK{@%#(=`OctK*K>2NE;HI$K2KJg-cyBo2JNJA{gdH=BYYH| zzAkVf?}KZRbUNfY%=~82_`VaLMvw4tlgnXNF618)AC!7YVnQiR1Ms+8o z4qa}njHfu!JU;m?AOhO`)~|``LgDgC>|g1666r!LA)&w5Pg@pC6#UyO`3bSpKd03Z zvZwXg+w%eiWc*~02j9ck1$f`Xg|Db{gkBqtOqfc3^nK;;BsvQVvrBbqU1y!JDV4k9 z4au-F=K^q74Z#$zwUJke1g3$jBSJWkx#qlb-uYw1Wx3bwG!qvOcBSq?bmGIX4sxC* zd{x996ysCm9Gu-liRMRVvlm?-$%ktnTGe;vses4WQWXzG`rL&YS&q(HsN2zStS$x2 zomse{vp*M{jt8_|kLIyYo!6-sxeYH-;=t0iuS(vor<`~H+a5RHM?Z7>gg3=dcQc0U z(BAC|Nvnz!5)!mvw^B)Qyhp?cdh_9v?W4z6s8{dOW%-pO$6 zIymn&zy2RjUmX=k^F@ifySo!Ya0oKE2MG`)!QB(w2X~hQ2=49{+$FdLcXzjenc4Y% zdv?#MKf3F^u72H9Ra4!4@4JEiOBKC1!xahhPFDA_yS&7%W1ToZN$sS+AOMmp?PMohFfpnkWh17pA_sUpIC+H@uSOQYurU&SF&EP$TQUl)&@N znUTDywiH4wXe0Wk3qAY9R3hCJRuHx@E<&5?HR?|Y|kf#^OFv1B!K{$y_dbtp6Q&O z3(tG@o-!H z*vUKLJ4rb;(fZON3%dL)S%YO^DTKW#} z_^O(>m9pUdy81F^ROlQ`Oe1!|DBbX1e6KGh`@UIzd)Zrz$%4F>@&g--0fPzx*L2=T zPVxqqv9y#^>N~jN_Bz7xeiN+5lR7XjMMe+6*gk_oV6&3$mnku!+PfMEp1)s!f#cPz zpRcYPbQtn_MXuv)|N5{b*aLYx+-QALQUkrEhWEhJeWVe85aRs6#8YJB6}f1MXHoF& z$op*SbhZ%nL7|1_>N3V(+VM+W3W)*MnCZhwV`=m(NWWjkDrs$ z=FrhIe0MjLf`;4cH16h=`c2`u@#cgl2K|PUUQwpAR!Nzj*|8bB^wjRFG&Uk=GG1cK z1@(R331%w)Sa30hZby;55r4MTngE%RAd#K8zy5Q?bTCV&wCv+s+VyZ+Ntybl2{Cyw_E#DA_r%HU*ZU?y5($#IVJ(7h zRW5q-__<$^`^}NhzaEwoKT*K^thXFFJ!^YpLVSl@Qwx|XhE2gAc)%FYE5rfTwu|3p zfdokxd%BT?W+idx0Nd}6m5=_Wi<)^5IjdQ2;803n4d`!%YRP{5DnyT9Q?wML&Ta4H z7&2Nq)Z*0K+Uo!ElGbqrs_?>RckACn?Rzz^lPQVY2{f&cPgfZyu?mYNxp zi?|-Nb{k6-MpfJiT64ramWP_ zC!Y{n+SwRJ%8#_Aki)<+PH(~~o0C;tBzlAh+D;!Faj}mNFx?hw(uwZ6?a8H9kD9=P z+MarEP=?5xv8(@H1T8Hi!4BFSXw8f8?ss@%p1x7^+VwbgL%2fk?}P*oArxQjcl*v+M1Pr=W%jUCI^r$>)8alxGUaN0a7?#=6v z2Ak(u3tYyxP$#215qQQou@#PQ542<`T$c*^G_?xo+Td3c^;Mc%?Yc8F<=TBgawl4q zB}@;wGT`R?SA`x{)Y$97Q{2;pG|2(nyi%vtaV|B?x4QG}&tV!T7jU z355X+VP+&440&zER=onUwzlT#@N662)M2h7qtjs9%=C1c+Zc?jkx~Ldzmo-PQB_w$ zB(OjgqT!8ts2!`)+5zY%$XKIA>qay2nu@rU?oPvT)7nkIq+3s2Bsm%_fByTxI`B*TURZqVonc zEzmrgPVUR+VKRanFo9pjWwxdc$Z=r;Oz5ojU+xO3XlVy*uz+tyXt#W?#QWs)O@P;Z zs6B7D<1cqdT2)cntkZkpxgr(7fWfz_^4~cU{yzRDj{c4{aA%BDSt2P6$1}%Jrr2TW zF%|CtP^5s#W8dcbx~d_7Wg&rZDLC8b6BE02OK_Y)U%dPNdNZy^hxTuyJQ!deUC<6$ zH0skB07mT@NEopAKE3?7z5rw5i2hvPIKt70U=o}IG=ap>H|m+3@f;SE-A5(jE0$vN{qgj*z;i3-x zhYTYAz&snK_p5xvh(%L%?e1P7PO@pTO1H4>WbVZ%JAot4{I~DOg)G*JgE@e}xj*``bw6PL&gqPfrd^UB6DVv&cxI>YKVnD3h;DU|AgV=oe%EXOVa_=<7wP!MQAwKUp^}L+oNw za+<3E8-dILxmd7{oaVkr8;Ndd&~60g+wa+BJEi#C*+V{OA-FYR`U?|5Zjm-Pd;H6a z?b9isW6h5bRjP&mG=UiQcE!62!nM5k${-154PThDb;W!|D6>^u8fY#D9c8t2fD2(3Y_5Z?LP}JwDkpnA^_%y4OoE2HFQkJ zfGtTh9&$(IL7#U346wN+4>EI2$p1z)Iu+T%LWqSM3w64%bru{@c^SN^9FR^h#CiZC z`i7E>3pGS3HHYUiqIu95@4OsYnA>*TBbPyEk$pQ$a9ciN;y6F&Lu&PGaG<`2Pk(z% z-&#Thm)>C|yy#Zf);c>oa|72J!o*e~0&kt)l_bXF#wyWwhKJ=-I%VSdReIE{LjKln zeUaFD3JcFAZCB+ffg1j-1s?i$TYQH8(I3G(Hzm}AM5)M{jSagzH@q!5KBH3v{DgM7 zc!_%7?n57661w=%iut2=+nQIds?Nvbt8dvj<)ZW=P2iEF3A_V?pWv>7dS&6^(C{Kt z5d_#W;`Hl2#7(|sYO%&GEiI&eetO@1Df+belo0>{_zie-txVyXC+MYllkgts1K0Xu_6lP@w1-twENJ$=}j0B2nQ90!lVqex%QWz8z)Y#Y@I{ zo*qexN5w0v@I9>G1UH$Lpl(D#N?TTT@Zmw=4%r}DiRtR)qwy3$lB%jIUb_*n%S`#B z)D;7P$;5^}Lt#$?OJQbIx*Viat{_nwN1XnAsM?^7$`Ubna5#Am6{k3X|< zOo@NaN=_!AYP0BUnw{0O;~B2~@6N>?U%3h2ESsB~ZyI;f0>%12HZ(TQI+~j!THLaD z`1oWp6ym|cA3r}o zO-)Tx)18+Wk=vXcnv?VM^A8yZ-QC@SzvEhwmi1g+UG?$bfEcZu0Ud z&0lF)y%E-iE~s!u4i1V#iw6c|II0{S9oLKV^59CX3Q|R`3-PC>r`0iXx2?Us$v4>S zk_&_Do0|nn`YuK>dU4;PPFcJW@{lJ+H6_Hvs92CD3l5o38k(90SF^IHBwt(lk?3GQ zx0aR`vroHvh#>NS8am?rFb)Wc9 z1KzEUPyfox%WG`p({#7A3`{Yf`i%*xCx zmEOB)%uP6$f~c0HuBI0Jc~2Yr0h&%iN?OY7_l@7EwW>-r1AKY;K6B5|@cpm%FQC%$ z)i*p2?u?9#BGmM{4^+P1FU}s9a14#-*oefkcH~Qw1UuR1Y){*{Bkt4|1lY2!Z zFje5Nu0zPw4tpW$>gtn(gVUZxD5yR-nJ`5eA~$z;OM)Bd@$oU>2_YF2o{Is7z7>|1 z9_{WT%n!_j1#D$&=i_c8rarZ)y9+MF%WzG!_r?5WT9*gcb#+xsoiE+Pd;J2UT+(X0 zSiuID?$gs#eijkdJ=u*>4m)d~5zYjb^e1)oJ68xmK;R$-p$E=CMjK?$u2=NpA2Frn z7Kz`{(UJVkJ>)OQTK4XPhzNUTW6HaeX+%qOQq^SwAF62hmQ}$(S6~ zwX{+;m%w1~>S|`Fg|zqa;US77Ee%cl48s(r?wHV}4iLq;Jf(ao{bq156xZ+h0#Poj zX>drd);a0{i;RIc* zY-~n9ucZ4(dJPVh84M)vYKa9$>x#cU{4;t8L0D!ob2j)|Ww2f|12vT=exstHF+-%k zN-am(rWdOK@PvzmoSWyCyMwc`v)xNV&9pJcNt@8qRyu9d2zTogXsD^XIyRzVG$+27bqu?)~7GHAzcF6)2e;{B;)-9W%jRyH7m~61U)fP8rDZuw#Bg%{W_} zs0--iEqFjmmzS5Ph_usqfJ-@VsITAAWmn*cKFgeh_aXMcO_9}4WlA-IKc{)1foi)) z${s_rc<{=st*y5ge&=rXD(zQWNdN%GhK3KdVZ#et>;R(UFM8tn(onO4U%J1%G_aX7 z=zc4WE)pSfadE{e-zzMRSpEF@vw)fSOh`z`upfj7n))CJ<_xHa=*3BEhE3D;?L@uL zOs!hk%DM2WRpL{Y0Yb_&Vm8js>cltT@n8LfXOj_WNN@3s$CT+`-YOI;F#@`6m*33? zaI`5b#61{g8Hehb#-ablQmsw19a7i%J;kKf{dz!6F*FvOAx0E0&(o`*_|C0hZlijp zM;aQze@@25D`)xpn1iU%PF5n)Y$XsrTDC6i8H^+{xMnu&}+ZiL<;ZwIVi{TOY2(2HfqVyn>=hW0Gc05 zOG{%)=AD7=6Uu!+RYYc$BgR%6Qo#-_8_v2x@=oSf-PHi;82Xu)z-=B{fzNf$%xa(M~}-6kuiBjGQB50wSAr>RbK4h z3JOwcodZXP2cME7rt976t|F>+hY&axIcycSw_{PFO(PnZ_NDtvmtTts36_{dLM4% zhst28zf+R`*cvOfF;B^;$U;A|ttW;b7~P01I?I1f(EH1nhiSCFu~ChSLW4)` z0iZoZ3q;bl(w4st`9cN&J-;fXT;qf5zr!cEY4_nWLX8na4O?GaUaxQJ@M}{9zvt2m zjK8`y@8pprD(>dvb8rK0$caS`X^!CoVb5223}GFgMJ>cMh()L+xjid3cJd>G%Pyre zIRI5s)LVB@8p7Mf(gAhT!l#~YV?Di5Q6P-`T~y2s^xsMON2O=gH|E`G2(6I@7CPNw z-&->wnS(U1@k&zsS95T7;nd&rQ2q*Z7d#<}ZoW^2_kSek!aLr3{|QkisEJ2dc+@z( zNhNnm;=uWa^c6Lg90A)usXh3C_cpRL7m#}(r7F&?*2lpvNCgw68w_zUX50whnaKSo zORaM~-^OC=>^$PuV8rAPTXgX~Mi+fYwolAVg43@Mekc6(aV>XCTI8g;gtl^i{2g`V z(Kns>sL{T{dOt#Gs1xhMJ|-~;&|5YGz@Q?*9FRJ#uC8V%LaEZTo7_j7oSamoniW{{ zs|H*V43_$Fk>3XA)uk+xB$Ny;@{cl4qeb*S^_k>QkDE`M>Tv`kv zUu{?k?F#6h!6G6ozZrkLv5v6Ddox0EC{EK^V4R@bKDVH%C z&mQOe$_g<8WWQ%IN8W)(mb_t^xaa|m1G2;%ZC^{la3tqhD2|0j49aACY9uxBcoHBJ_Sw3&RRTleaow zNz6=hjztpVuGWVTqc;z(Fs4rzv;=POW2HuMBofd=nN{r%kc|x z_uJpn21dIaI*X(E@eYN}z%o8wl|XGI&^Q&oXr!5le!17^JlMB@ey4p2s;y8GY$H=A1~sQh<6yqaPAK!PR5-eJ&Wm9EvOT9E*lxZ=~^fnpX zNwzbY7F1+LbZA=-{lw6@!=h`b1tqN8K=i!mm6=f#gN7#x*Bbkn%9bL4<+5nHIs$c2 z>?R%Ya`Gj4xx&?a(YILK^C~ZM%@iGA)<0euHg9rA0hw^nJKE6;a``}eA@ERbJuG-S zZz2V6N5yotP{(A6>9_VwE-J%JuG0m+w@~1934fN22WXDAPkf2&qNInlTb0|m)8Q9( ziow0{*G<1flDXJN0yPezMdl3FuW)}{j7`O7KS$X_;{d#L%}kWS@$2xnui7hb+}lsC zj>fLKyMS*yw)&hLwhL=93!;sMV@n*o%;bD`XV-|1@JV-0prveCMF#dVG_{c>K92Qw zp|g5TChS945AXCsF}7`41-WCFu{t4rmeTN8p|tx!)*rS9^*j;HKcj;%Eu$^ZJt@H* z@1h10e(Evw;gCC{VY9Bc;4cR#+ioBEitu^Cy{_?vD3}<^up{F-8;GhWllO0R2UJcI zSQSg!OoT8nuH(K;7~2Qpvlx_ATlMd-!vD@;I77Q>+lkrgj^5GSC--8!4m9aDz;!U* zwY(NHx-si4*o+H$aH5+Zjpi)YQfA+MLsop7vWaLvQ6IN)zUzBc5PeU*>0`B4-%&bl zK>k-~vi`#Qg}l+yCu`a#_3K&x0B_+?nwN~68GrjnUnSnseV*;uv$#`B9^SWis}+FR z=%Nn#*MR*Q2m0XQNMj}eS*jn(m;`ts4#U}jw`36lvXN(T?+7<7_d0L!_!ffj>Uew3|@+78ryw-S|xtRhYO=cHkx>Qre}C(!j{$< zvrfFeCrhA88QrHB@2lTGx#o3Rb!s{2d2a`!Myn>?JvO8o^6zPnc$~7rIW9L$oYh(r z^@NQyI5t&#b>9AS{Aws%@YIj_e!VamIWu;Z#2U&Q8oyn~>K+;;nbl8UxKX@%@Qr0- zWS`Vh_~_i#F3fQCOTB2-@V|>w7b1UANPWg+IcUS>SND)rC9NUsu~GkMkLlIBFQG;B z^OyT8hY;(NBdP*An#?cfV6*R{3x;QPDe~23XyCIC2Yu5Ra7Ick0gO!IcM`r)a}@@6 z)UR!%sR#tx7HBCy!m(o%v}}mPstDYxt%Vgx-l%-<(0g3hw>s}8aKVd8+#41L=|7^SEr*1$tv#}wKe`zGJ6_dMA`A>U@fxa-rhV0+vScA!+U_(`n3 zZM3vC<>D`=mfY-O@fPn!@VT1n{MKJ>?Ra|g-{kA>7Y@#+^qoRQ8}uGU!dz2QEUmr_ zUwJgPSkp5m`&_8GA{5&HzL5*k8Fb~OB`xbRTROZ@$M;w;Zm3&x7f@S-RA<=7aOm@r zt~`G#Wa(CqZ77O16JYmm>+R9%c8P6xt6csZkLAj8Ge`Pr?Y)~%4Ki0cF>Onc&+@*K z;Zk$Qt!|^KAP&jTX zLwo)=!xEmJVStMG*BbhRW@p8wOlBM$g`yYRRPI@gjdlGdVbf0v=3$=^BpI#Fr&=!7 zO5_X`Q=DCS8sf@5vPEKF(C9#_w=hK@6?~6UM9+P{bnYL((=Wp+23UK3;+}QbpbBfm zo+zyRP8ef(H!;WS7JbA^G@Frw&7^o42bE9OEf=n>K>1U!8-0wf{9p=PLQo=NwkmlW zV@C?)aV?lOu7AT(L7jgOGx?)pdY{C*PxTB0h0RFcX_M3*>)X1IR?{0rWlGbipp-H- z)tcOO!D|0@tEGe62};^IKEQ|bTmwmic1Ek9EgNf>zPkZX$IZv(gqoKZBI z(%jqd-?V=o@=Iwvp!r<5P|xtDo50W@VG}!P=rrWWTFE9;lC1qFuFUw{YKv5AtnYok z<|RR~y0ZFshnw}hDoYzuXuGgJ|lMg3~(&d(sY^p zh(8$P5&AkMDxF{CvTHVIQ^5ue)BVl&cj&r5Bs#>cZ(6EzQfMq&d&p7v$Cjz%CPmEa zB&dT?@%Dl~VoNmt8(t3x^JxyR_nsq?ABM+jDCGNNJXhjxHn!x~BfFqX%(01S_7y)1a$gaeKcpf-jGYEZy9O@} ziHXM6(RROds{)T3Rp}0=2Wbo78zCe36eq) z@ClUVDJh1mEldVAI>v_neRD^(zG3tKsPHT&C}TINnRh8T#>DN27MK}6@#I@%S095! zULB>5=mwB0&X9otpV|u418!3!BrpaN&pA0Xu-B#-J;{20OX%Cx5Lr7a;_BTt=Dwcq znvfl6c3?&#oBx2D$?@t(|1RK4W5&xjd6?mqc?nnjK3qm4>T~`vr7<+z=Bp&@4wx1}=B5?Pd^?=}ISw2hQqU#S=Ri%CuB0qQ{|-3e zu^C~i$EH^H&yzu>d!coo>LhISw{cu3*n(V|f{7&$W!Jvj`*eHL9a1eYo9pwNTMWr( z^>Vh9e7yOYY)X^N>4&n9z3*be-wVZ0Lp>EYWhtk!OByPidV4URojhQb{8vHJ^})Qz z2yxC-zPgxiG)e?pOq%g*p3!2t6f=NB%4|#88*-P6JK(iOB;WfOGqAz`%tNi=(AAzR z6Lmn*ix$R%TR{1~fX$PRDxiSZK}L@Kn=x9jfZd1k(C^6T5X&?;6cINgUg4c@zjt|J zZ>+!Hawms&oh0eIM|EqT@(-sbJVhc=#(kAkl(z|T^j|n0osDMN8M>w)&@6!u%uxIk zGGT{=im(lIFm z_Z*5XUelkunU>U3`Oq5Z=EDnT_hZKh_#!v^x_=7*5#j!L@K7sykzFfs;aDqvK@I$| z8v{KKJp$j{Ouycx7`Y9Fkm1&)wZPxtaR;8*`+Zgo&Q*#8OBQSOi-%3Llevv7krt1Z z#bAnowsqw`b$~d^q%GJhq<;AHs0R|W=6yn+(Ol523-ajgUZ$Q)#cKbcwKE83(kAEM z9T}bVDgUoptQDA8jfR+A?5kFlywrklo{^QZV8B+b`~fn?*t?nQ91$M0+}t@fgtGV2 z&tvMq0`#%1cNK@RDA(zoIGU5~0?P7(qhgGwc?_wyY)UvS$N*H}u`vRg@04rKfIddZ zn+tuwC&oV^{Qj&qg-Hcdhcs<$EDAaNHUju)bA?j*Kq;iVL*Zg9ew>I$G)v)+)T}Nk z8VI`>vgNZvuluphL^&VRx5hCP36A;H&|H;2uIk{Rg=@xfeKeI$d>WvA)9`{{hkZ`3 z`1Pj^hU?YS;DeVHDH_6O+Ih)b)vQIBgqmW^MRRB?M5z7>HAqs7l~Pnd>9@~*4x#z1 z0;7bzeyODYsbIIm*F;+M%tiGV`|Ygftr9?7uydF`miL`KiXIbPUzApcUb)bMJfr?~ zb+;WKr=1>-WP7nitU0XUI}hQaXvAq1v?>V2;TU^4Oaa`Ecn7`4g~Fjwe)LP>#bnl` z3Foqz!LN(xOX_wSnzBRX^O_k7g(d)@3Ei~lxIV^bffyH{{Mp3vE28)Y;+*Pcipk!u zSqpz=d&>)0>Ly=#;nCE&Ff86(_rkM{`0F4ZB>>-2u+pSFP-$h5OISuOZxia)im{p`IJ0r7 zF{yV!AugfB0B6v@yh`%wv?7gehem161_9vU6z6d@{qVF}) z<)_5Sz+!TfXn(G%)nm)8upI{LXA`r8*%Q?)X)tiuU!P>6vyoF0%4fJdFranrMEHmc zv?6!8;b7$zP-%L-mpoECru7El2eK^cAS@YtlIGG8;7klm`(yJ3p;quqDYI<;PHZZ= zYu+VU>5gl7Nd1YF?@r3H^4@A>{`J6zdzcRR>dk_yT0ojDL?{PxDU=PN`2n?8^Yw-P zxf`C}x_jgUm}p-&o&_}L^EeW6YRF!s#(wpopV$#ROAz12u!57P9g29Xeb?o}??|-R ziNXHq1qu0DI}s^b>C~-Me`UD`u&FL=h@V4x3>!l6Qajdar1+$X%6U~(&uYR-8 zosm~$87Xhmazn6FMf;~&frhpAC?(NSy8L2+@|PqvcE5n6?yPcy0e#P;)7hwzwAlf@ zZH0y>6Vt(ze}yBieEdweXs!%A!8aufrlM>}>`kZ%rSMbVf~N=EjcXrjebPcmnYn(K zQBFj~L_gg(tf<$!z;C^UdgI)PhOv}rahRCtOs7Q4eNRnz`@Qn5_=6lQ|6L(%ruAIe z$6Y)eaPw?u_pDX@>}u|lN+PZbVQkGUXGMv3&^ra`vDw@?GuN3(YyPN$*Xt6T)A*bV zEpE1S;^W$2HSj@qIsr=bX`U2lmHN!z@~;wq0$d%drXta}-zt8uN4V<5{N@&hBGj9Nz?0DH zs%Zuh1Qx4(i+z{ID2Sk0VJ^_`Lp>RHgBNq=w_lububQI5Wp+iOvM`sZ5&HMf=dgZ# zp=cY)_xib~^X##T!=thngtY6vTU{zRw$i{U^?J8>POG`IM^UFG45Cub@wO|Hw+Uaw zm{-D-xm6PMIqSszY5q`LzjoYOza2+_ws!u!D zE9fO!Hj-|evH?HKR56l@@v}{TziVU)IYmja#ZCG*7asrdmkx_y7XKf#`k8c6T?0A` zOA!I|RQCE)64JLkEsZLwKl_W1Y!o{Rv&iz9QNw8|t*2TVGs2De_j}#(jQIeST=#FV z)E?J-ePz-(Ycs&{DK2jDgE(hl@J6j@S03;MfEWl6*+K4U-?54E{0eDra7aIbsZ1i= ze8*uAncVpR4q z5QCL01k))wtXLa)DzvyC*9`8|S^`W?3ODc?QJ*d-9Z&qaE1I|l&)iWTeab;niO3;i z#rP?c%# z0y{Z)vIkyxgMLH|d{E_?iQ%=@aSu1g+H^jUJCZ9@Z#pS55#jh0a4BeZaaLMJcz;9v zOaiRKD8jov#_aa#Pq_gj&yP2MP%#N+;`P*R6x?e(+zl-M+mUh1#5grAU- zMhd*PNH_!XWg^#40}L?XTy7QyX2dEe?1m3zp_g;wbb38Dv46TZ#Ie!NZ?>$RyrCAj zclHwER)b{qGnAsnmbkcmmrI|m)Dag+)QSGynKHx7zI!Va;?N=DU`FN}cy29mNB)zW zpaAKb8Mo33x=W8RQ86gv&^H|l`3Hb&dE!7;vX_DOKwo=Esh!-afqj>AR`Ut|_vYy} zO8V6NoJz78y@G`!Cq7*$O)tbtXr!BNSvh9HXI#%oOUcB%d1`VzXe_ydQZH=nm>7N1rWmrq?g+ka6D9)5SgEI5*`SJ<_QQ_uP2I4-l+Z?*BXPo4p z?4sciB#)$UlAgnqWceV80=S&jO!$d?b;vl~e|wNfV1=p%Sm zL5w)Cq(BlxAw%WBvu@c#7K?KL-i#X)?bwKpDHT|JD&ZF_m>Y6Lr@^)notInO(^+vg z=fa2;3js;BZ(HY1fViFRwsP0}`t0vYCiAQUwC{WV{c772V5X8$;*`)`f!17kn|(*` zhKuNizL5VT$$T1Jz#$!f_~@mHU{mL{gv{2__6+0PWV9A9XVqY5`z}gULdnrtb<5xj z%X%tU=gg+_{*)Od``t6r>L?z9j)0J(3eK5aWB|t`$~seWQe_|wLZmE#@CO7dMY5o` z7u=L=H@Q0#@UT!fkE^495+-mM({XVTClN5~hD3oK_;yI#BwxEg^ny0iC%5)21rq-9g!H(?M0gq(h4o0tF zW`7<9<|;Gp45oNXOmT4hzJRx#)a_1T5GORcS0JLIQ>ywyHAmfS^gLKQ z#!bOImQ&KFIh`yk0$+t?<#f>)dT2XugVaCKXYx(4w#7Y~ZBnd8A=FteML|_bMaGwf zWgV4iV=0);&Q$AiV%05-?Oy^id*c#XJ@zLI3KuW$X0N~iFIl$JZi=T9bifS4@@Pa^ zy0^H=89M_xZ}sI-Sq$$9-aB-8KredYv#ii8v0ZVim3kim-1Z;Cp)ceoo}`UKl`AB2 z-cqw~t&a#%eL7O!r*ck2!32~t1Z^7Wt2fql`AtK7B}n{k$l6Ruy3!SLr5$u{B1bv% zHY>bLp7&~)E=`JZQNqOGES763_G&fA-JGkXHPZ z_@3EU{82ud=c5B1)m*}Tmx-o1%B3xTz;ew4YPv$JV>`4Q72x}#>u_NRdyjnAptW_M zGqFk3tHZR38U0pSgW^8Pc6Zi_1WcJ%bK_5SgBD@H$h0VqU*R%%m>NEBuoA71Gz$Uav7ge$?Utp|=BiZ{m;8)95nKSBnTlY9$}tjZOF zL?M>Gjd5*KfK&D4@FfG?)SrFYw!?q?x?B`#%*#DE6w?EGs1@$Sc(T^2EFtlxnsYlOhl zN>}*H!&$Z7llH2GCGF59J4I>V@1sDsQN{*)Vx;-`-`7_08VTF}0mTSkUFZUHG^!+! z-EpiQL&tX2wlnD621Z3}2p<1V_4N`b_F9J*N_tH-Or(crpc!&ivCPZ-UHMh^)Uow) zsT!J~ne{j^@qQv5<8wU9DSl^B5CM@0d~y<3sH>pVxZr`v?kCq>jL3@%DmLlEwz$|N z1pDrmK{zMDjZ1Z`-odx>#SQ(B#PKyBRBN}Vt2h!Obu^rzq&6Ko3Yu2e zW$aQq9wCbo@>tB8pKnTMTWk7N`h5Fz( zY4qNP7gAv;;Bl%#$%8Vo|Aq8PcVA#4>s{!7pBzNIF#W{rS_ihLRaLg;ny!E zib)wsliFt*H3ha1sJ7zPP65l^b3hUz5mmf%vQ|k&H73p<+cptEA2<=5zVqv)XVO z%4abfR!)_YyR85rjF@m$py3!6Jau#iSC?Mi;x%f% zvpy;EjrBLc1G?+ox8YHF-@Qi1vF~wsJm3rWguZd!_4uy9=j!ldIvfRe-hw0Km207F z5~P>Vs*G1CE@*3e_Tmz{Yr1u>?tOMAuYJ@IE42w#=kiI@G>~_h+fhBy0sPAi=>H-> zBKTWC6_KKf@&njgT%uLb{yR~2C{rvO+8RieNtpUix3bR>|9q${wXnG5TzN15wC-3H zL^0yXC(X@n_sux@AN}5sY^NK8-dgq7E=W9xotM~zpCp-xl0stM?pQ*S@%v2Vw?D;L z92B!#C!VH|0q6+3=q{V8x6YUbLCXE`Jpwf9z}Kmwm^tUb9SIG|n`@dovyG48w>HS;uC`5UKyF-PGVf!O`C z8P}C;#^zDaJB)3%KP6Z6LSWnJ;_+XbPX{s`V%~6l-RaM762~j%lgANfT5kZ|9^l>i zkgK2l;&ka*Ld2KcWY_j3{kJ5?V&k~1Br$)pmyf?`K{oHhnJ~#g0|!!@V%kPk{5e@5|#f8Ia-q z3g`6Xdcm3wgWI!`=O)#b1JzSXOFs)86BFf^dIfmiOw5BgSSH}AC^E6o2>WS?e$&pn znm@y*n)S(%6PTUlCR(XNUsOo4pu-2O-ERMC)T!BIfcrNaEna?0**VL(mc0QfSOC!t z@Ci77nZ674ZK3T2$BB}b>5DLTEb8L3~MZC74 ztIVLgF{H(!yC0cXtCCiJ1hf!*-q1kW@!x_H5>s|0Lsrz|pq~<9Erc$mWyTp0^eI+j zX=w_@6XYh+aT;X#`kTwWRa6_CZz+26KOm9KB$3~jYw4?ZA97p4gs+!(_dBQ(uKbeF zt{joKo7!B^bwWa|-|MMi&PTjVU>R7*-=XwX!dDUEwLwfU_dC_7IaSRsxidkzT(U?I z6Ao{HgjmSG1n_-0+jEtC0F96~zYr$)^Z~shXe%|NMEO>?W4!fNi$6v{96Q@-HTZyT z6PY67JUR@^Lzx?kj_9}CJ9`66ex^DlVOlj)&?|eFwDhSfXvqph*wJ67%1Z(VV0cKr zC>Aqj6V&_~pj?}nD4}}Ne3ybs^|G#{003gx2Of0;m8_4rGJyX$N%6OR&oN6KAC{dw z{atc#Z*b9V5w5kmY|eejQm%0_#28{GEkN>Q1G`P19n>C-4VkA{7CGArsCU4bbEycC)@XGqaS>m~3-ESsk_EleMyKiAE#^G&wa8&YOHZJLJJ+B{T zH-#<=S_lV;F4E{Psq9#rY}blrqq|&Ygmh#9MTjN=Ge&M$S-8x4W5-cMlsLTXeu|1Q zWC6<|a=zr0_?OMMEB$70`$SWWVbu{$iorWazy9=e-49gOg0F|i0iA-bJE|RL^F0#4 zmsefmmz`$M0Ds^PZ&nmN{e{JIhTRjQ?C@o-vf(${Ki0T|el>&Wbyg-;!FOrsN+JdN zR&}P>6lp#LAN^*eQ0sXqKb^)K{OONS4hy! z+LA*)9C8Tdu(=Q9Q2NyZM|+jv0#Gu!xtUaOcwZ}V!&vcnd@Jq- z^xN&@=Ea)nzmzrUNWTUX>72+1bu2_D--D@{@DPH0&ee2(xMKOEHs04d%3dIw!XLhx zKOhPO`s<|zu3q-y2g^!XB|CDTWxPCQb6A4;o`4}7^zwHCx1iq$eE-7CaKl4SxVyE% zITgzubx*Th^g9ov+pM)3cTZbC6lO1lY@3&8=W}%ldDFJ}>ST)Qm}}rvz!6uhy2wo| zH2#^=e;jr+QCbIXCBH8I{Z>73@lB@QLdnUymz%?p3gdU!p27PlC?lIl;m6vp8o2oXDCt_^hT!tppJ2 z_KqO6I`e*(pN(q((mRpC2Y-jw6_Q|VitB*6{czNUHo5=)kx&ooS|`;k+X9IY#vt=p zQzi=A>4x5=W{{?4^x>hT5V6N^Umnb>rPY_7Q^vglIrB!N&4gQ8h82|Wu!>9;XgPz! zb5l_9z)}O#wX}z4kd;z|$|=F)gs0js_e*7OX`H&}AN+>=sh27VAIjK`h4fJmjoSUj zrkY(2C&)LdJqqYW@tbS@G;}|bG$H1_E^SKA7=?O}#g`};7p}|6F z5h@NrBEw|?jo`v~Te85xgmBtc25>h*s|t6r@n?3jb{CP5`7-O_i-4(<{2JV zA|buJ1wG;U1BH+sclLi?{t}g>;L41{CL!wp>9??fN*4vF-sMssVrTb0Q^TjyGO+a=n(tgqyE2mU=FYw_rE4(ga@Wi6@Y=q|M$dw zWj(j(U69_t@<1594OUwKD1`JX!5sd#H*?+CUEiHNODhXxE?N|wAmx8!qqiLm|Icq` zP7~U>arDsITZD~1ORK2>T&yDnSJy>BBA2G7)c8O#7xM&Qe9!w|8(lBQJ_X?e1 z;uLWnEuK|%Ynx}zl*x7_NM?n~@1y%URwy5qRK?G#7J}N^j%&>x<-r2N6;X3Z0GL^lL?Xy`e&f~I*ti!5LRG&k*N?EwCS5euT+w~~?n=Q2wtRcptX-DX zPt*ATT3Z`wp@%oKFddD7I9Xv2io_N%6`2;j9M`_2+!UegHZ_7RbH8NH8rLgv5ene3 zHrKC6RBv7L(Sl1YyV7*Bi{ALz0o+G2oLdtWwts{{X9g7_Cor`&m;jv*^5EfJY>rE` z>?C$nz`}%DX`zZS{EgSk?Ey?vL8pC^QE&YV(>O17riYbLPXHL>Ca-R*%eS=s;^{SI z%%Zz4?X_d0hQ#acaFUab#(Asz!lS**NF5PsG?0*0adf_)CJp3%xt(o}x>gYCR2Ay% zgbaEZam7M>Kyl%W;#-$nJ-~~~$_tb>1OMmid_ks1zdJ#u%<`C~-Us_7_VY-MMVNS; z4oG*<`EsT`2sp%YK`aKN)PUSEL|KSn#K2bKWPY}kk`q5uR;7YgyIcS;U~d>3LzH3R z5vFd^jF@M7Z)J*F*wgRD-R#zVj|e#~1gt!mSZCV~Z`cCTylF@08+hO(FV z``0-D%$~ijW&7G%2(*5zPf8^HLFhG+pM-00##L z={N1pR(hfJ^@QJVOOl7zi$EUH`#zy+`oD)FE2~3`^o*ZB=-T)v&P}~FxDvS5c-LJ) z$_Ll0LPlT9pVIyoJ1Lb|c;>c4oJ70w-;8QMGo+d&&0ok7X5%bDiNQSIqW_HD#^JBv zL)3?%160qf3=9lwq;Gy=Pe-=O-5MB39*K~8185UB|7AP?RH$vBqjMe+bv}lbKHGD6 z_Mf-1;JouN-zk6~`_;91UYGk{!mGUkSfSR9U2ZqZF^BU@N6V*-6cn`>R*-oC6OAJ^ zI0_kX3*FyW0K$$gc-DQccL7dExJ%e#j{A1m8g5#DjpMj4vInq}{5`{5V*ytP?MI4( z#%ZHR3abkNJfJ-oM*x~CEh{Ul%tkd|2GqXfCfa(BNA}Q@@9_iN_Q!M`XunaATnO%D zo6FcRr2~zKpZ0{#=0?IwWF%S!)1f9X^_KL(TXO|^B>iJoc}a@6{r2a-Lw-?f)r0CV zM9zCH-42Kb(|3fwLElpnG5+77Y~jZV^lv}Z@d&-sVn;hSkG{sTlDLaX=Wt+j6^?Rz{&tBqPp|g}M%WI|I5@JKGM`d3n zk^;&`YmdP#!`hg{gcQgEg<9YQ&%+8Z+^dRh&xVA^4)IM3aBN7K+9K~Q-@wK&t%U#-o?W0`b|HdpmW~{i|1vil2g)uk3)GON$IQ!rC@9!zPkaCg) zac{LfOJs8CQ$8l`aky+miihp$)lW-TL455e1^7`meEJ2be3Ev)nNMAUauY@GrWv2T zRrBM;J+3Ylt}ZR3u4nACu37qwL8(u{BT{@Z9>7039z?p3t^m}^=$Ru1vAcV+LPo_6 z9)0)yGk=Vg7*i{CscklEmQ@q#WH0wYMr836|KBm5C%Y_!pLR%)*-0rn1B2bq+Lj=@ zNPW|l;&rl2tEs7xVC{A+`hQlRk(&K?WYxCqH>V>F!g?P1 z51OA(tu1Hp5oHg)%aSnh{dve=R4zKCS)Y-anF-QCS_@%-G7n{>zk0Phey=*{Vs3Kl z$hE6*zx($qs;bswk9i`n0KsLdwveha6G{Mwgss(dA0j^R1;ig!B}K)Qv@|KN;{|h? zP8+Rz%G?shPw61ex}{dDFcq08#d*ez@+zNGCal3$sZcqnxDvRASJ)DIB$91ROoqzJ z%V)wV9%C(=9b7;^hHF`^Y94Ia8MRy3)G9d6TWM2s5)P-OVW@5)AF zqmAN*B@&5WRb~K19fgJOr2@SQe)1vqC62K>;bl!aku|B<4~{j{l7tH^%qzXiV_VN`8L6fT?Qxf)9NES4wpo`EL5ZWpdbRQ^0_j z>{9!Xh+%|}MGc~Wi2Lin0MLBXf0bypQ*?9qjDk-V(gS8>xya|UG2O>QCIjaa!I%3> zfbhj7*Uo#AzVjWKoP*B=fHTEw1E=3qS9e!Lq?oENgHIEK7G7Gbs-^$E_@(n3%4g$n z(0I`(+R@=|37w0vgd9`6-**S8LI%Lp-7E4JKX@3tWTSa~S?w}mE{hn9-#)%}keTV} zdZ7UP1n{t*^0U@6m#_aAZ0=0_bNeH|(_`RLlj-GFmBCB-ajtxvK8}HNEJ2qoEkgsW z9fOKwNI^uL0sn?v8|i0K5^vDbE*7PCoY}@*WVAp?1oVPPrd>jTrxTLzrW;ztyuf z$C;ZH?GfnH61~nBbL|58O3%9VT1}?T99jP0nNwJHmUZL#{1(3} zcBx0&M=Mj64Sm^E=yOWXf8pGnN6|;qY@twLn2_Y(%dtRAkk;-ITax%}h+Xn_mU3jm zt)s6llH)qW?VIWj-~$_e@Bf~Lt<62w{I_%!xWYSn)1DO4N4?e~CmYoZv#d&X=l~_I z4$XnC)@0&nS9S&pyL?AVjz6LBtdSUZ|6OkA_f2^GsWr2o4F`2m!W1(nq`iF$UkJ)>7-_8 z@oLz;xIIEPK4hR8Gu|GW2y6Be@MdzmG!v21c6w`eF z@L)D?Y{FvdRxw*h7Bao$ePs2MdnM+`6RNHs{n*D$%&fzC&uoIEFC#;ELHui}Hq*RF z>-DmG|HVp?7UD~s^Wu8U(3&4N+gKB+F`8*`a%0`U=G&1hQFp)aPJd3VJ629lKuJqY zt@ruc=ZxXuRE5}M7CTG0LO{k1qEmxRm){vOmWN6%><*105JSa?T@rS$U74Bet3ONm zQR6b`9Y1q&LNOIrFamH~l8lRY&V8$)xlp0=i&njplau+E;*R9PLvF?BKEiviPre7{ z5-TRP!Dl9sVjT zI)2Ki#a>EhzOP_d9e4c9N<+slVXn{#ZYBR&y~k}6LXV9uq**fpi+IxJ!H)Q;6_#~X zOt!+TpC5>#cMqFbtK~%uomA{AXkS{o{gWoB63DLvWG$~;`l+tdP!xHK7PsegFP9rD zjz9ckPKirI=FnFTp8jP86XkqVDmD|M(e&9RgSJ}15l+5g`K|KA^gLC#!Qz%7{RKR= z!rW%?=INJDxu|_dgqbqammy;&Z>v<*_~bOha{~ZfH7Ick&u14lsA@USwnU6xQZh^sjpR zrr|WpdA|!ktnpy4@}E6k>tH00SocSIKDk03gM+VfqGYvgs@cgiEkT4%3Lh~bFoR-DfA#QRiU6s3Hr7c#%vv!RzDK6+6A<=jLC!wsL8M8M8czNS)YlY%87zCdZ?YvS zKFGYXW-gE9?FCyOMY-bdu^v~mRmEBQ6%sUse|ycKHf|o=u`SqQ--r}@GY89maDAtV z^~;ij&4>3s3r0AG(Ip1Za{g^IbCqt1bQ}N9SRUZ8LYX&cr=23AMZ`ULd~S>uv_UW9 zW9Wlp9g)(c{xq20r28_7R}GB2naf8rp5gjk}^P)LUjlpcZ zuX)@Nu`g13Hfw@Pnf7e^5Yz%n@#o(-O{BJT)Aqx<^9$cX*=e-aRF>Hc{y{cc>D{Jx zQ2}sJ1Lhq$a3EZT;*bYbd8qSC#yleKrfMI-uq8&icbIcL5K~Rxe^NH8@?{{eM$79_ z85`emA}0V2(P=>!Du$OZ1+R<#HkK3_${Wm&{W8n)Po#jgALqB##sDA_@F};D{41z9 z`jW7Uixosf_jA2Aqpnm}tW<-ISM+0MlkEp{Z#BdhL-t_(Y&=V-7|rexK?f!NJDQp= z?=1MkDy8e76lb&ZmTUi@b_A7c36`(L%legNTlQI;6hisRJG0Vbs-uMBMdr@DhRtgc+23>C z?2F>iT3Nlq!6mW3ISUwV%gD=`<_u#gj*Ag(ZN-DCy*l$K5&U6q>n3>VR(B8Ca1gVd z_ip=y${EKe;y;l=+4L$wrNC?E2rXL1MjuEA|F(tJ_wHwst-5?Y)>5+3;&X?4NXSM{ zF?+fZ`Rai|TWBS-RkZB1*Mw-$uVI1lIGou98*Fn#`nE+K{|gna6Xl7)Om_w%luxcp zBW0j%b{6s`vssnl(Ts$MnEk}AG5J#9`c|4Y;WGL5ov#GX#dBeLN@92Cz2Xrubf=%c zM7mTEojy;bZ|P6|$M+fD6C7g~c!M>mYUz~$kgUoeH!CEQjCDIZn~K31`?ZC>7U3J{;7y(b64zc{x%9gtBt6r#Np$*(0nH91zM#EA zE0G1rm&$efFt!YybRL}_ahrswzaHW;qZOjL3>_FLLPR!koCF5#iN!!T#GsLzilfi5t@R(PFe^Qe`yLj4yQ zn!WML+Vg2bT(UwB4H$`4Iy75BG$5^kmV_RQtAxtFqSd^XBPN37vDkLT(6m^E{_}b# z$nLuqwzNpDDX#VyOgYkcOx`^GehV{y!K|Z#=j1u|B$X4Dd0(6(&;N`*b+^yeaRp)S zo9t#}vebchVjrW`U&dK(ld$*KJ?ZLRa2iL+8-tZH>nq;WfNk zC0EgHfm_bKWMI&8#t><1+gmo{BY7GDAj#+QQHXUm929bh*4+5I_@Wx6k5Q%jWVv>d z5SP4@mq+Xm_kd@=l!`pJ_Q8$MV=?!D4@$vAy}Cpr#3I~c2k@#DYr_klcaVEsU!=VE{XJf< z^Z*N!Ryl4!+|abiE%WrfI+|#&euVU=A1qpz3Q;#|tu54EYEtX>&>3@Kyi1ThmL+n8mWz#EFePX!t^|uBrmTE=b%c z&;rNFD-@u%Kyo=eYHj&4mmFk^DwSZvqP4K0D7m6!`U5!v3kd$rh)+9CU*Y|;lR*F~ ztV@-t3Zs%91W-y^jMuS6_4W0qa(xVm21K@-#=yxin)FRgsyV!1c&US`w=Yo%JFkS6gAGC6pKGPEfr_3#Xva6?Uv zIJx$aE((HZ$Icz{u)I3H>+a704CFiWDX9#`XIF*Z{_HQQDAw16LC!-{?KOO*2$*&`j?}0 z6_L`-vB^mpMVheuD6bZHEdb#RUraz9_5=^2`r*s944HioSUg>Z{ZB|3gz$_VM)-TU zM=0GBSOV2=NRpHJK}hpDvEa=CnDCFx>VDpV-Xs@ZbzKzrvj~<{W9Ly&;)l$poghbn zzEThODIot8{UNii@pKO3zf2EMaA>XN_ zbqbd6Hf)Egh@YvX_|W$TkU7vvm0JTS`U1xP!Uy;5vXFVI11%ZONLxk?uaD3%SSn*- zw|4@iHv_%9&NHDB1oALoI;GhQhB;_JoSB%ovW_+_xte=1=m*J#d)8?lY)q;hTl?g` z@1N?YK@iX|8o>s*;$^6W(a1afw~d`1wXXfC#V;-v>wr;D43qJ_FEaf70~(Gop0fQC z$QrC3W`n362ER-Eb!}ea=}^gMd<+xhnfJRq9Ok0v(_wtq0f_gCyr4Xpj~N01VFsU( oeJ`2?iw^=33kRWu9L1oRumU3y?=kWuQ22!y>Y3_R>D-L`A3g;KTmS$7 literal 0 HcmV?d00001