From 5fd2dbdf608e241e44ce085e7cb15e152979ed0e Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 27 Oct 2021 22:24:25 +0200 Subject: [PATCH] 2021.11: Initial beta release notes --- _config.yml | 6 +- .../_posts/2021-11-03-release-202111.markdown | 2872 +++++++++++++++++ source/images/blog/2021-11/social.png | Bin 0 -> 82891 bytes 3 files changed, 2875 insertions(+), 3 deletions(-) create mode 100644 source/_posts/2021-11-03-release-202111.markdown create mode 100644 source/images/blog/2021-11/social.png diff --git a/_config.yml b/_config.yml index 96ce0da089b..8cb816d0039 100644 --- a/_config.yml +++ b/_config.yml @@ -107,9 +107,9 @@ social: # Home Assistant release details current_major_version: 2021 -current_minor_version: 10 -current_patch_version: 6 -date_released: 2021-10-18 +current_minor_version: 11 +current_patch_version: 0 +date_released: 2021-11-03 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. diff --git a/source/_posts/2021-11-03-release-202111.markdown b/source/_posts/2021-11-03-release-202111.markdown new file mode 100644 index 00000000000..2c7d5a7d6d5 --- /dev/null +++ b/source/_posts/2021-11-03-release-202111.markdown @@ -0,0 +1,2872 @@ +--- +layout: post +title: "2021.11.0: Beta release notes" +description: "Beta release notes for Home Assistant Core 2021.11.0" +date: 2021-10-27 00:00:00 +date_formatted: "November 3, 2021" +author: Franck Nijhof +author_twitter: frenck +comments: true +categories: +- Release-Notes +- Core +og_image: /images/blog/2021-11/social.png +--- + + + +These are the beta release notes for Home Assistant Core 2021.11 (and is thus a +work in progress). + +If you encounter any issues with the beta release, please report them on GitHub: + +- Issues with integrations, automations and such (Core related):
+ +- Issues with the frontend/Lovelace:
+ +- Issues with the Supervisor:
+ +- Issues with the documentation:
+ + +Please be sure to include the beta version you are running in the issue +description (not title), so we can classify your issue correctly. + +Issues introduced in the beta are processed with priority. + +- [Visit devices and services](#visit-devices-and-services) +- [Entity categorization](#entity-categorization) +- [Icon picker in the UI!](#icon-picker-in-the-ui) +- [Tuya update](#tuya-update) +- [Other noteworthy changes](#other-noteworthy-changes) +- [New Integrations](#new-integrations) +- [Integrations now available to set up from the UI](#integrations-now-available-to-set-up-from-the-ui) +- [If you need help...](#if-you-need-help) +- [Breaking Changes](#breaking-changes) +- [Farewell to the following](#farewell-to-the-following) +- [All changes](#all-changes) + +## Visit devices and services + +Maybe you recognize this: Your device has a web interface, but you don't +remember the IP or address it has on your network... + +So you start checking your router, or look it up in an app, scan the network +guess a couple of times... annoying, right? + +Well, as of today, integrations can provide web URLs to devices or services +where the device can be managed or configured. + +

+Screenshot of (TODO) +Screenshot of (TODO). +

+ +For custom integration developers, there is a blog post about this on our dev blog: + + + + +Some integrations that added support for this already (TODO: make nice...): + +- Add service configuration URL to Stookalert ([@frenck] - [#57697]) ([stookalert docs]) +- Add device configuration URL to Plugwise ([@frenck] - [#57696]) ([plugwise docs]) +- Add service configuration URL to Spotify ([@frenck] - [#57701]) ([spotify docs]) +- Add configuration url to Synology DSM ([@mib1185] - [#57704]) ([synology_dsm docs]) +- Add configuration_url to Uptime Robot ([@ludeeus] - [#57709]) ([uptimerobot docs]) +- Add service configuration URL to Verisure ([@frenck] - [#57713]) ([verisure docs]) +- Add service configuration URL to Speedtest.net ([@frenck] - [#57715]) ([speedtestdotnet docs]) +- Add device configuration URL to WLED ([@frenck] - [#57692]) ([wled docs]) +- Add service configuration URL to MQTT ([@frenck] - [#57731]) ([mqtt docs]) +- Add configuration url to Pi hole ([@mib1185] - [#57718]) ([pi_hole docs]) +- Add configuration_url to gogogate2 ([@bdraco] - [#57739]) ([gogogate2 docs]) +- Add configuration url to nexia ([@bdraco] - [#57740]) ([nexia docs]) +- Add configuration url to rachio ([@bdraco] - [#57738]) ([rachio docs]) +- Add configuration URL to RainMachine ([@bachya] - [#57732]) ([rainmachine docs]) +- Add configuration_url to Sense ([@bdraco] - [#57814]) ([sense docs]) +- Add configuration URL to Efergy ([@tkdrob] - [#57839]) ([efergy docs]) +- Add configuration url to Tasmota ([@emontnemery] - [#57957]) ([tasmota docs]) +- Add configuration url to Juicenet ([@jesserockz] - [#57999]) ([juicenet docs]) +- Add configuration_url and entity_category to Fritz ([@chemelli74] - [#58004]) ([fritz docs]) +- Add configuration url to Airthings ([@Danielhiversen] - [#58041]) ([airthings docs]) +- Add configuration url to Tractive ([@Danielhiversen] - [#58038]) ([tractive docs]) +- Add configuration url to Surepetcare ([@Danielhiversen] - [#58039]) ([surepetcare docs]) +- Add configuration url to Sonarr ([@jesserockz] - [#58085]) ([sonarr docs]) +- Add `configuration_url` to Denon AVR integration ([@bieniu] - [#58116]) ([denonavr docs]) +- Add `configuration_url` to Sonos devices ([@jjlawren] - [#58148]) ([sonos docs]) +- Add `configuration_url` to Plex integration ([@jjlawren] - [#58149]) ([plex docs]) +- Add support for device configuration URL to Axis devices ([@Kane610] - [#58176]) ([axis docs]) +- Add `configuration_url` to AsusWrt integration ([@bieniu] - [#58172]) ([asuswrt docs]) +- Add `configuration_url` to Netatmo devices ([@cgtobi] - [#58160]) ([netatmo docs]) +- Add support for device configuration URL to UniFi Controller ([@Kane610] - [#58237]) ([unifi docs]) +- Pull configuration_url from library in gogogate2 ([@bdraco] - [#58318]) ([gogogate2 docs]) +- Fix configuration url in gogogate2 ([@bdraco] - [#58365]) ([gogogate2 docs]) +- Add configuration_url to isy994 ([@bdraco] - [#58372]) ([isy994 docs]) +- Add state_class/entity_category to Verisure ([@frenck] - [#58403]) ([verisure docs]) + + +## Entity categorization + +TODO: Make this nice and understandable. + +Entities can now have a category: Primary entity (that either controls or is a sensor), +configuration entity that changes a setting/configuration option of the device; and diagnostic +entities that provide information about the device itself. + +Take a light bulb for example. The light entity itself is a primary entity. However, the +select entity that provides the power on behavior configuration of the bulb, is a configuration +option of the device and thus a configuration entity. While the sensor providing the signal +strength of the light bulb is a diagnostic entity. + +This is now shown in de device page: + +

+Screenshot of (TODO) +Screenshot of (TODO). +

+ +Entities that are marked as non-primary (so, either configuration or diagnostic) +are not exposed to Amazon Alexa or Google Assistant (by default, can be changed). +They also are not shown on generated Lovelace dashboards. + +Additionaly, these non-primary entities are not called by service calls +that target the device or area the device is in. They are only called if +expliclity called by entity ID. For example, if you turn on all your switches +in an area, it won't affect switches that provided a configuration entity. + +For custom integration developers, there is a blog post about this on our dev blog: + + + +Related PRs: + +- Initial support for entity category (#10266) @balloob (frontend) +- Don't add indirectly referenced config entities to service calls ([@emontnemery] - [#57671]) ([homekit docs]) ([homeassistant docs]) (breaking-change) +- Don't expose config or diagnostic entities to Amazon Alexa by default ([@emontnemery] - [#57770]) ([alexa docs]) +- Don't expose config or diagnostic entities to Google Assistant ([@emontnemery] - [#57669]) ([google_assistant docs]) (breaking-change) +- Don't expose config or diagnostic entities to cloud ([@emontnemery] - [#57771]) ([cloud docs]) (breaking-change) + +Integrations that added support already: + +- Add entity category to WLED ([@balloob] - [#57693]) ([wled docs]) +- Add support for entity categories to NUT entities ([@mib1185] - [#57689]) ([nut docs]) +- Add support for entity categories to Synology DSM entities ([@mib1185] - [#57690]) ([synology_dsm docs]) +- Add url to CO2signal ([@balloob] - [#57703]) ([co2signal docs]) +- Add entity category to Shelly ([@bieniu] - [#57705]) ([shelly docs]) +- Add entity category to Xiaomi Miio ([@bieniu] - [#57719]) ([xiaomi_miio docs]) +- Add entity category to Tractive ([@bieniu] - [#57720]) ([tractive docs]) +- Add entity category to Brother ([@bieniu] - [#57728]) ([brother docs]) +- Add entity category to cloud ([@balloob] - [#57747]) ([cloud docs]) +- Add entity category to Nettigo Air Monitor entities ([@bieniu] - [#57698]) ([nam docs]) +- Add support for entity categories to MQTT entities ([@emontnemery] - [#57656]) ([mqtt docs]) +- Add support for device configuration URL to Nettigo Air Monitor integration ([@bieniu] - [#57695]) ([nam docs]) +- Add category diagnostic to Tibber signal sensor ([@Danielhiversen] - [#57840]) ([tibber docs]) +- Add category diagnostic to Surepetcare battery sensor ([@Danielhiversen] - [#57852]) ([surepetcare docs]) +- Add category diagnostic to Switchbot battery and signal sensor ([@Danielhiversen] - [#57854]) ([switchbot docs]) +- Airthings entity category diagnostic ([@Danielhiversen] - [#57850]) ([airthings docs]) +- Add category diagnostic to Surepetcare binary sensor ([@Danielhiversen] - [#57908]) ([surepetcare docs]) +- Mark Tasmota status sensors as diagnostic sensors ([@emontnemery] - [#57958]) ([tasmota docs]) +- Add entity category to Hue ([@balloob] - [#58011]) ([hue docs]) +- Add entity category and state class to mobile app ([@balloob] - [#58012]) ([mobile_app docs]) +- Assign entity category diagnostics to deCONZ battery sensors ([@Kane610] - [#58077]) ([deconz docs]) +- Assign entity category diagnostics to deCONZ tampering sensors ([@Kane610] - [#58112]) ([deconz docs]) +- Add entity categories for appropriate SimpliSafe entities ([@bachya] - [#58108]) ([simplisafe docs]) +- Add entity categories for appropriate RainMachine entities ([@bachya] - [#58107]) ([rainmachine docs]) +- Add entity categories for appropriate Notion entities ([@bachya] - [#58105]) ([notion docs]) +- Add entity categories for appropriate Guardian entities ([@bachya] - [#58104]) ([guardian docs]) +- Add entity categories for appropriate Ambient PWS entities ([@bachya] - [#58100]) ([ambient_station docs]) +- Add entity categories for appropriate AirVisual entities ([@bachya] - [#58102]) ([airvisual docs]) +- Add entity categories to goalzero ([@tkdrob] - [#57906]) ([goalzero docs]) +- Fjaraskupan entity categories ([@elupus] - [#57846]) ([fjaraskupan docs]) +- Set Sonos alarm and battery entity categories ([@jjlawren] - [#58340]) ([sonos docs]) +- Add support for entity category for necessary KNX platforms ([@marvin-w] - [#58357]) ([knx docs]) +- Add entity category to MyQ ([@balloob] - [#58377]) ([myq docs]) +- Add entity category to august ([@bdraco] - [#58359]) ([august docs]) +- Add entity category to roomba ([@bdraco] - [#58362]) ([roomba docs]) +- Add entity category to gogogate2 ([@bdraco] - [#58366]) ([gogogate2 docs]) +- Add entity category to elkm1 ([@bdraco] - [#58364]) ([elkm1 docs]) +- Add entity category to Neato ([@chemelli74] - [#58367]) ([neato docs]) +- Add entity categories to Netatmo ([@cgtobi] - [#58383]) ([netatmo docs]) +- Add entity category to nut battery ([@bdraco] - [#58363]) ([nut docs]) +- Add entity category to hunterdouglas_powerview ([@bdraco] - [#58368]) ([hunterdouglas_powerview docs]) +- Add entity category to MotionEye ([@chemelli74] - [#58370]) ([motioneye docs]) +- Add entity category to Advantage Air ([@Bre77] - [#58371]) ([advantage_air docs]) +- Add state_class/entity_category to Verisure ([@frenck] - [#58403]) ([verisure docs]) +- Add zwave_js sensor entity categories ([@MartinHjelmare] - [#58416]) ([zwave_js docs]) (breaking-change) +- Set entity_category for node status sensor ([@raman325] - [#58434]) ([zwave_js docs]) +- Add entity category to UniFi sensors and switches ([@Kane610] - [#58484]) ([unifi docs]) +- Move WLED palette to config entity category ([@frenck] - [#58517]) ([wled docs]) +- Add entity categories to esphome ([@jesserockz] - [#58495]) ([esphome docs]) + +## Icon picker in the UI! + +Yes... This is what we all have been waiting for!!! + +So, no image or gif yet... but all I can say, try changing an icon of an entity... +and you'll see what this is about :) + +* Icon Picker (#10161) @piitaya + +## Tuya update + +Tuya got a lot of updates this release. Many things has been fixed, many +additions made. All platforms have been added and supported (except for lock & remote). + +This section needs some more information :) + +Raw list of changes below: + +- Tweaks to Tuya base entity ([@frenck] - [#57526]) ([tuya docs]) +- Use Tuya endpoints values from upstream library ([@frenck] - [#57537]) ([tuya docs]) +- Refactor Tuya device handling ([@frenck] - [#57545]) ([tuya docs]) +- Replace all Tuya device property constants with an Enum ([@frenck] - [#57559]) ([tuya docs]) +- Refactor Tuya climate platform ([@frenck] - [#57609]) ([climate docs]) ([tuya docs]) +- Use EntityDescription in Tuya Switch platform ([@frenck] - [#57581]) ([tuya docs]) +- Add binary sensor platform to Tuya ([@frenck] - [#57623]) ([tuya docs]) (new-platform) +- Use classmethod in Tuya TypeData classes ([@frenck] - [#57627]) ([tuya docs]) +- Prettify Tuya entity class names ([@frenck] - [#57629]) ([tuya docs]) +- Add select platform to Tuya ([@frenck] - [#57674]) ([tuya docs]) +- Add sensor platform to Tuya ([@frenck] - [#57668]) ([tuya docs]) (new-platform) +- Port unmerged fixes from tuya_v2 ([@pabigot] - [#57624]) ([tuya docs]) +- Add number platform to Tuya ([@frenck] - [#57672]) ([tuya docs]) +- Fix platform typo in Tuya const ([@ludeeus] - [#57716]) ([tuya docs]) +- Centralize entity naming for Tuya entities ([@frenck] - [#57755]) ([tuya docs]) +- Move Tuya value scaling into IntegerTypeData ([@frenck] - [#57757]) ([tuya docs]) +- Renamed variables in Tuya ([@frenck] - [#57759]) ([tuya docs]) +- Add PIR Detector (pir) device support to Tuya ([@frenck] - [#57784]) ([tuya docs]) +- Add Emergency Button (sos) device support to Tuya ([@frenck] - [#57794]) ([tuya docs]) +- Add siren platform to Tuya ([@frenck] - [#57780]) ([tuya docs]) +- Add Luminance Sensor (ldcg) device support to Tuya ([@frenck] - [#57797]) ([tuya docs]) +- Add myself as codeowner for Tuya ([@frenck] - [#57837]) ([tuya docs]) +- Add support for 'freeze' mode in Tuya thermostats (wk) ([@frenck] - [#57851]) ([tuya docs]) +- Add camera platform to Tuya ([@frenck] - [#57865]) ([tuya docs]) (new-platform) +- Tuya tweaks to entity category, registry enabled, icons & device classes ([@frenck] - [#57949]) ([tuya docs]) +- Add unit/device_class validation and normalization to Tuya ([@frenck] - [#57913]) ([tuya docs]) +- Add Vibration Sensor (zd) device support to Tuya ([@frenck] - [#57795]) ([tuya docs]) +- Remove device category filtering from Tuya init ([@frenck] - [#58019]) ([tuya docs]) +- Add humidifier platform to Tuya ([@frenck] - [#58025]) ([tuya docs]) +- Add cover platform to Tuya ([@frenck] - [#58045]) ([tuya docs]) (new-platform) +- Refactor Tuya light platform ([@frenck] - [#57980]) ([tuya docs]) +- Add vacuum platform to Tuya ([@frenck] - [#57996]) ([tuya docs]) (new-platform) +- Add Water Detector (sj) device support to Tuya ([@frenck] - [#58049]) ([tuya docs]) +- Add Human Presence Sensor (hps) device support to Tuya ([@frenck] - [#58054]) ([tuya docs]) +- Add CO2 Detector (co2bj) device support to Tuya ([@frenck] - [#58093]) ([tuya docs]) +- Complete Ceiling Light (xdd) device support for Tuya ([@frenck] - [#58095]) ([tuya docs]) +- Complete Switch/Socket/Power Strip device support for Tuya ([@frenck] - [#58106]) ([tuya docs]) +- Add Formaldehyde Detector (jqbj) device support to Tuya ([@frenck] - [#58118]) ([tuya docs]) +- Add Dimmer Switch (tgkg) device support to Tuya ([@frenck] - [#58134]) ([tuya docs]) +- Clean up self references from Tuya climate platform constructor ([@frenck] - [#58051]) ([tuya docs]) +- Fix registration UI to work for Israel devices ([@tomer-w] - [#58192]) ([tuya docs]) +- Add Smoke Detector (ywbj) device support to Tuya ([@regevbr] - [#58170]) ([tuya docs]) +- Ensure all devices show up in Tuya ([@frenck] - [#58280]) ([tuya docs]) +- Add CO Detector (cobj) device support to Tuya ([@frenck] - [#58292]) ([tuya docs]) +- Add Gas Detector (rqbj) device support to Tuya ([@frenck] - [#58293]) ([tuya docs]) +- Add Pressure Sensor (ylcg) device support to Tuya ([@frenck] - [#58294]) ([tuya docs]) +- Complete Heater (qn) device support to Tuya ([@frenck] - [#58296]) ([tuya docs]) +- Add product ID to model for Tuya ([@frenck] - [#58235]) ([tuya docs]) +- Add support for min/max dimmer brightness in Tuya ([@frenck] - [#58165]) ([tuya docs]) +- Complete Smart Camera (sp) device support to Tuya ([@frenck] - [#58301]) ([tuya docs]) +- Add switch platform to Tuya Light (dj) devices ([@fOmey] - [#58196]) ([tuya docs]) +- Complete Solar Light (tyndj) device support to Tuya ([@frenck] - [#58302]) ([tuya docs]) +- Add VOC Sensor (voc) device support to Tuya ([@frenck] - [#58332]) ([tuya docs]) +- Add Methane Detector (jwbj) device support to Tuya ([@frenck] - [#58328]) ([tuya docs]) +- Add PM2.5 Sensor (pm25) device support to Tuya ([@frenck] - [#58329]) ([tuya docs]) +- Add Temperature and Humidity Sensor (wsdcg) device support to Tuya ([@frenck] - [#58335]) ([tuya docs]) +- Add Smart Kettle (bh) device support to Tuya ([@frenck] - [#58347]) ([tuya docs]) +- Complete Air Conditioner (kt) device support for Tuya ([@frenck] - [#58417]) ([tuya docs]) +- Fix endpoints issues for Tuya Integration ([@zlinoliver] - [#58411]) ([tuya docs]) +- Extend Tuya Humidifier ([@alexanv1] - [#58260]) ([tuya docs]) + +## Some nice new template things + +- Add datetime_today template method ([@Petro31] - [#57435]) +- Add area_entities and area_devices template functions/filters ([@raman325] - [#55228]) +- Add average template function and filter ([@Petro31] - [#57727]) + +## Offsetting an input_datetime based trigger + +- Add offset support to time trigger ([@RobertMe] - [#56838]) ([homeassistant docs]) + +## Other noteworthy changes + +There is much more juice in this release; here are some of the other +noteworthy changes this release: + +Raw list of changes (candidates) that need to be processed for this section: + +- ZHA support for additional entities on ElectricalMeasurement ZCL cluster ([@Adminiuga] - [#56909]) ([zha docs]) +- Allow resetting an MQTT number ([@emontnemery] - [#57161]) ([mqtt docs]) +- Enable template icons for template selects ([@JeffLIrion] - [#57092]) ([template docs]) +- Add Sure Petcare Felaqua device ([@benleb] - [#56823]) ([surepetcare docs]) +- Add energy management for efergy ([@tkdrob] - [#57472]) ([efergy docs]) +- Search for areas, devices and entities in script choose actions ([@emontnemery] - [#57554]) +- Add Nest WebRTC and support Nest Battery Camera and Nest Battery Doorbell ([@allenporter] - [#57299]) ([camera docs]) ([nest docs]) +- Add tamper device class for binary sensor ([@frenck] - [#57632]) ([binary_sensor docs]) +- Use separate weather condition for clear night in MetOffice forecasts ([@avee87] - [#55135]) ([metoffice docs]) +- Add to the Broadlink integration support for voltage, current, overload and total consumption sensors ([@felipediel] - [#53628]) ([broadlink docs]) +- Open garage sensor ([@Danielhiversen] - [#57976]) ([opengarage docs]) (breaking-change) (new-platform) +- Add more sensors to Opengarage ([@Danielhiversen] - [#58042]) ([opengarage docs]) +- OpenGarage binary sensor ([@Danielhiversen] - [#58030]) ([opengarage docs]) (new-platform) +- Store automation and script traces ([@emontnemery] - [#56894]) ([automation docs]) ([script docs]) ([trace docs]) +- Add auto slider/box mode to number entity ([@frenck] - [#57737]) ([demo docs]) ([number docs]) +- Support for Fritz!DECT 500 lightbulbs ([@flabbamann] - [#52830]) ([fritzbox docs]) (new-platform) +- Expose Sonos features as switch entities ([@jjlawren] - [#54502]) ([sonos docs]) (breaking-change) +- Configurable mode for KNX number entity ([@farmio] - [#58268]) ([knx docs]) +- feat: Add unit of measurement to KNX number platform ([@marvin-w] - [#58353]) ([knx docs]) +- Add support for unit of measurement in MQTT number platform ([@frenck] - [#58343]) ([mqtt docs]) +- Add binary sensor to add-ons to show if they are running ([@ludeeus] - [#58120]) ([hassio docs]) +- Add speed & intensity controls to wled ([@rytilahti] - [#56862]) ([wled docs]) +- Add support for fan groups ([@bdraco] - [#57941]) ([group docs]) (new-platform) + +* Add WebRTC stream player (#10193) @allenporter +* Stack gas and solar sources (#10244) @bramkragten +* Update MDI to v6.3.95 (#10313) @goyney +* Update MDI to v6.4.95 (#10389) @goyney +* Hide script/sun from generated Lovelace (#10418) @balloob +* Add "Keep me logged in" checkbox within login flow (#10226) @MartinTuroci + +- Add statistics support to nest sensors ([@allenporter] - [#57393]) ([nest docs]) +- Add state_class to EnOcean sensors ([@davidlb] - [#57666]) ([enocean docs]) +- Support device and state classes for WAQI sensor ([@davidlb] - [#57762]) ([waqi docs]) +- Add long-term statistics for AEMET sensors ([@Noltari] - [#57844]) ([aemet docs]) +- Add long-term statistics for Tado sensors ([@Noltari] - [#58111]) ([tado docs]) +- Enable long-term statistics for OpenWeatherMap sensors ([@dkt01] - [#57781]) ([openweathermap docs]) +- Gogogate2 add statistics ([@thomas-svrts] - [#58178]) ([gogogate2 docs]) +- Fix plugwise longterm statistics ([@bouwew] - [#58127]) ([plugwise docs]) +- Add statistics support to Huisbaasje ([@dennisschroer] - [#54651]) ([huisbaasje docs]) +- Add state_class support to Rest ([@koying] - [#58026]) ([rest docs]) +- Add long-term statistics for Ondilo ICO ([@TheNogl] - [#58290]) ([ondilo_ico docs]) +- Add device_class and state_class as optional attributes to the scrape sensor, to support statistics ([@lukas-hetzenecker] - [#58164]) ([scrape docs]) + +## New Integrations + +We welcome the following new integration this release: + +- [LOOKin][lookin docs], done by [@ANMalko] + +## Integrations now available to set up from the UI + +The following integrationsare now available via the Home Assistant UI: + +- [Aurora ABB Solar PV][aurora_abb_powerone docs], done by [@davet2001] +- [Efergy][efergy docs], done by [@tkdrob] +- [Flux LED][flux_led docs], done by [@icemanch] +- [OctoPrint][octoprint docs], done by [@rfleming71] +- [Stookalert][stookalert docs], done by [@frenck] +- [Venstar][venstar docs], done by [@garbled1] +- [VLC Media Player Telnet][vlc_telnet docs], done by [@MartinHjelmare] + +## If you need help... + +...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). + +Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/core/issues). Make sure to fill in all fields of the issue template. + + + +## Breaking Changes + +Below is a listing of the breaking change for this release, per subject or +integration. Click on one of those to read more about the breaking change +for that specific item. + +{% details "All Service Calls" %} + +Entities that are now shown on the device page on the `configuration` or `diagnostic` +section, will **no longer be targeted and called** by service calls that target +the specific device or area the device or entity is in. + +If you need to make a service call to these entities, you will need to call +them by their entity ID explicitly. + +([@emontnemery] - [#57671]) + +{% enddetails %} + +{% details "Amazon Alexa / Google Assistant" %} + +Entities that are now shown on the device page on the `configuration` or `diagnostic` +section, will **no longer be exposed** by default to Amazon Alexa or Google Assistant. + +If you want to expose these entities, you'll need to expose them explicitly. + +([@emontnemery]) + +{% enddetails %} + +{% details "Recorder / Databases" %} + +The Home Assistant project has now explicitly defined a set of databases +that are supported by the recorder. + +We now support the following databases: + +- MariaDB ≥ 10.3 +- MySQL ≥ 8.0 +- PostgreSQL ≥ 12 +- SQLite ≥ 3.32.1 + +All other databases and database versions are now deprecated. + +If your used or configured database doesn't match any of the above requirements, +a warning will be logged. As of Home Assistant 20221.1, the recorder will +no longer connect to an unsupported database. + +([@emontnemery] - [#58161]) ([recorder docs]) + +--- + +It is no longer possible to filter out `state_changed` events from the +recorder's `event_types` exclude filter. + +A warning will be logged in Home Assistant Core 2022.11 and the configuration +will be rejected in Home Assistant Core 2022.2. + +{% enddetails %} + +{% details "Python 3.8: Deprecation warning" %} + +Python 3.8 has been deprecated because Python 3.10 has been released. +Support will be dropped in Home Assistant 2022.1. + +Support for Python 3.10 hasn't completed yet. It is advised to upgrade +to Python 3.9 at this point. + +If you run Home Assistant OS, Supervised or the Container installation type: +No action is required from your end, we will take of this for you. + +([@balloob] - [#57079]) + +{% enddetails %} + +{% details "Tuya" %} + +During the implementation of the improvement we made to the Tuya integration +this release, it is possible for some entities to show up as a duplicate. +This is especially noticable for lights that are provided by the Tuya integration. + +The cause is that we've stabalized and corrected the unique ID of these +devices and entities. + +The old entities can be removed and you'll have to adjust automations +and script using the previous entities. + +We appologize for the inconcienvence this might cause. This change will +allow us to provide proper and automatic migrations of these type of changes +for the future. + +{% enddetails %} + +{% details "Flux LED/MagicLight" %} + +The Flux LED integration has been migrated to configuration via the UI. +Configuring Flux LED via YAML configuration has now been deprecated and will be +removed in a future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this release; +and thus can be safely removed from your YAML configuration after upgrading. + +([@icemanch] - [#56354]) ([flux_led docs]) + +{% enddetails %} + +{% details "Xiaomi Miio" %} + +Attributes from the vacuum entities have been replaced with sensors. + +This means that all your references to these attributes must be replaced with +its sensor in your automations, scripts and dashboards. + +Some sensors have been disabled by default and need manual enablement, +once the integration has been set up. For example, the attribute +`mop_attached: true` has now been replaced with +`binary_sensor._mop_attached`. + +([@OGKevin] - [#54990]) ([xiaomi_miio docs]) + +{% enddetails %} + +{% details "DLNA Digital Media Renderer" %} + +The DLNA Digital Media Renderer integration migrated to configuration via the UI. Configuring +DLNA Digital Media Renderer via YAML configuration has been deprecated and will be removed in a +future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this release; +Please check the integrations configuration page for imported DLNA-DMR configuration. +Once it has been migrated, it can be safely removed from your YAML configuration. + +([@chishm] - [#56886]) ([dlna_dmr docs]) + +{% enddetails %} + +{% details "Stookalert" %} + +The Stookalert integration has been migrated to configuration via the UI. +Configuring Stookalert via YAML configuration has now been deprecated and will be +removed in a future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this release; +and thus can be safely removed from your YAML configuration after upgrading. + +([@frenck] - [#57119]) ([stookalert docs]) + +{% enddetails %} + +{% details "RainMachine" %} + +RainMachine services have been reorganized and now utilize a Home Assistant +target (entity ID) or selector (device ID) instead of using an internal +RainMachine identifier. + +Additionally, services are restricted to only the targets that apply: + +**Device Services (i.e., must be provided a device ID)** + +- `pause_watering` +- `stop_all` +- `unpause_watering` + +**Entity Services (i.e., must be provided an associated switch entity ID +[either a program or a zone])** + +- `disable_program` +- `disable_zone` +- `enable_program` +- `enable_zone` +- `start_program` +- `start_zone` +- `stop_program` +- `stop_zone` + +([@bachya] - [#57145]) ([rainmachine docs]) + +{% enddetails %} + +{% details "Efergy" %} + +The Efergy integration has been migrated to configuration via the UI. +Configuring Efergy via YAML configuration has now been deprecated and will be +removed in a future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this release; +and thus can be safely removed from your YAML configuration after upgrading. + +Additionally, the following sensor names have changed: + +- Energy Usage is now Power Usage. +- Any configured energy period for example monthly was Energy Consumed is now Monthly Consumption. +- Any configured cost period for example monthly was Energy Cost is now Monthly Energy Cost. +- Per-Device Usage is now Power Usage with the sensor id trailing. + +([@tkdrob] - [#56890]) ([efergy docs]) + +{% enddetails %} + +{% details "Environment Canada" %} + +The Environment Canada integration has been migrated to configuration via the UI. +Configuring Environment Canada via YAML configuration has now been deprecated and will be +removed in a future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this release; +and thus can be safely removed from your YAML configuration after upgrading. + +Additionally, non-loop radar images are no longer supported; Sensor entities +now have the location of the station as a part of the sensor's entity name. + +([@gwww] - [#57127]) ([environment_canada docs]) + +{% enddetails %} + +{% details "Rainforest Eagle" %} + +The previously deprecated YAML configuration of the Rainforest Eagle integration has been removed. + +Rainforest Eagle is now configured via the UI, any existing YAML configuration has been imported +in previous releases and can now be safely removed from your YAML configuration files. + +([@frenck] - [#57636]) ([rainforest_eagle docs]) + +{% enddetails %} + +{% details "Supervisor" %} + +The 2021.09 release deprecated the usage of "snapshot" in the Supervisor (`hassio`) +integration and was scheduled to be removed in 2021.11, that is now. + +Old services and service data that contained "snapshot" has now been removed, +you need to update your configuration if you use any of these to continue to use it. + +Old service name | New service name +-- | -- +`hassio.snapshot_partial` | `hassio.backup_partial` +`hassio.snapshot_full` | `hassio.backup_full` + +If you used the `snapshot` argument for the restore services you now have to replace that with `slug` + +Example: + +```yaml +# Old name +service: hassio.restore_full +data: + snapshot: sn2321 + +# New name +service: hassio.restore_full +data: + slug: sn2321 +``` + +([@ludeeus] - [#57652]) ([hassio docs]) + +{% enddetails %} + +{% details "IQVIA" %} + +Previously, IQVIA supported long-term statistics for the `Asthma Index: Tomorrow` +sensor. This is incorrect: long-term statistics are meant for actual, +current measurements (not future forecasts). Therefore, long-term statistics +support has been removed for this sensor. + +([@bachya] - [#57687]) ([iqvia docs]) + +{% enddetails %} + +{% details "UptimeRobot" %} + +The previously deprecated YAML configuration of the UptimeRobot integration has been removed. + +UptimeRobot is now configured via the UI, any existing YAML configuration has been imported +in previous releases and can now be safely removed from your YAML configuration files. + +([@ludeeus] - [#57761]) ([uptimerobot docs]) + +{% enddetails %} + +{% details "Renault" %} + +The `last_update` state attribute has been moved to a stand-alone entity +(and dropped from battery and location entities). If you used this attribute +in your scripts or automations; you'll need to adjust those to this change. + +([@epenet] - [#57750]) ([renault docs]) + +{% enddetails %} + +{% details "VLC media player Telnet" %} + +The VLC media player Telnet integration migrated to configuration via the UI. +Configuring VLC media player Telnet via YAML configuration has been deprecated +and will be removed in a future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this +release; and thus can be safely removed from your YAML configuration after upgrading. + +([@MartinHjelmare] - [#57513]) ([vlc_telnet docs]) + +{% enddetails %} + +{% details "Phone Modem" %} + +The sensor state attributes of `modem_callerid` integration are now only +populated when the values are known. + +If you use these attributes in your automations or scripts, you'll need to +adjust those to be able to handle missing attributes. + +([@tkdrob] - [#57774]) ([modem_callerid docs]) + +{% enddetails %} + +{% details "Itho Daalderop Spider" %} + +The Itho Daalderop Spider integration previously migrated to configuration via the UI. +Configuring Itho Daalderop Spider via YAML configuration has now been deprecated +and will be removed in a future Home Assistant release. + +Your existing YAML configuration has been automatically imported; +and thus can be safely removed from your YAML configuration after upgrading. + +([@peternijssen] - [#57974]) ([spider docs]) + +{% enddetails %} + +{% details "OpenGarage" %} + +The attributes (`wifi_signal ` and `distance_sensor`) for OpenGarage covers +are removed and replaced by individual sensors sensors. + +Also, `door_state ` is removed as an attribute, but you can use the state +directly instead. + +Please update any automations or scripts that depend on the removed attributes. + +([@Danielhiversen] - [#57976]) ([opengarage docs]) + +{% enddetails %} + +{% details "OpenZWave" %} + +The OpenZWave (`ozw`) integration is being marked as deprecated. The upstream +project is not currently being maintained, and has not reached stable status. + +We recommend transitioning to the [Z-Wave JS integration](/integrations/zwave_js). + +While the integration is not currently slated for removal, it will no longer +be receiving updates and may be removed at a later date. + +See the [Z-Wave JS migration documentation](/integrations/zwave_js/#migrating-from-previous-z-wave-implementations) +for more information. + +{% enddetails %} + +{% details "SimpliSafe" %} + +SimpliSafe requires a new web-based authentication method. When starting up, +Home Assistant will automatically prompt you to re-authorize your instance. + +([@bachya] - [#57212]) ([simplisafe docs]) + +{% enddetails %} + +{% details "Pentair ScreenLogic" %} + +Screenlogic lights have moved to the light platform. The switches that +previously represented these lights will need to manually be deleted in +`Configuration >> Entities`. If you are using these switch entities in +your automation or scripts, you will need to update those to use the new +light entities instead. + +The state is now refreshed with a short delay to ensure the toggles +do not flip/flop between states as the controller takes ~600ms to make the change. + +([@bdraco] - [#55467]) ([screenlogic docs]) + +{% enddetails %} + +{% details "AVM FRITZ!Box Tools" %} + +AVM FRITZ!Box Tools services now ask for a `device_id` and no more for a `entity_id`. +Please review your automation and scripts accordly. + +([@chemelli74] - [#58005]) ([fritz docs]) + +{% enddetails %} + +{% details "OctoPrint" %} + +The OctoPrint integration migrated to configuration via the UI. Configuring +OctoPrint via YAML configuration has been deprecated and will be removed in +a future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this +release; and thus can be safely removed from your YAML configuration after upgrading. + +The following sensors have been removed: + +- `sensor._time_remaining` +- `sensor._time_elapsed` + +The following sensors have been added: + +- `sensor.octoprint_start_time` +- `sensor.octoprint_estimated_finish_time` + +([@rfleming71] - [#58040]) ([octoprint docs]) + +{% enddetails %} + +{% details "Sonos" %} + +The `sonos.set_option` service has been removed and replaced with +individual `switch` entities which both control the features and display +if currently enabled. + +The `night_sound` and `speech_enhance` attributes on the +Sonos `media_player` entities are also removed. + +If you are using those in your automation or scripts, you'll need to replacet +hese with the new `switch` entities. + +([@jjlawren] - [#54502]) ([sonos docs]) + +{% enddetails %} + +{% details "HomeKit" %} + +The previously deprecated HomeKit configuration options `safe_mode`, +`zeroconf_default_interface`, and `auto_start` have now been removed. + +If stil have these options in your YAML configuraion, you must be remove them +from your YAML configuration. + +([@bdraco] - [#58320]) + +{% enddetails %} + +{% details "Venstar" %} + +The Venstar integration migrated to configuration via the UI. +Configuring Venstar via YAML configuration has been deprecated +and will be removed in a future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this +release; and thus can be safely removed from your YAML configuration after upgrading. + +The humidifer and timeout options have been removed, and thus ignored when +importing your YAML configuration into the UI. + +([@garbled1] - [#58152]) ([venstar docs]) + +{% enddetails %} + +{% details "Aurora ABB Solar PV" %} + +The Aurora ABB Solar PV integration migrated to configuration via the UI. +Configuring Aurora ABB Solar PV via YAML configuration has been deprecated +and will be removed in a future Home Assistant release. + +Your existing YAML configuration is automatically imported on upgrade to this +release; and thus can be safely removed from your YAML configuration after upgrading. + +([@davet2001] - [#36300]) ([aurora_abb_powerone docs]) + +{% enddetails %} + +{% details "Input Select / Dropdown Helper" %} + +When the option list of a Dropdown helper / `input_select` is updated, +it will try to maintain the currently selected option, if the selected +option also is present in the new options provided; otherwise it will +reset to the first option from the newly provided list. + +Previously, when a new list of options was provided, it would always +reset to the first item of the list. + +([@frenck] - [#53334]) ([input_select docs]) + +{% enddetails %} + +{% details "Yeelight" %} + +The option to override the Yeelight model will only appear if the detected +model is not in the database. Otherwise, it will be hidden. + +([@bdraco] - [#56967]) ([yeelight docs]) + +{% enddetails %} + +{% details "Microsoft Text-to-Speech (TTS)" %} + + +The default voice is changed to `JennyNeural`; The previous default `ZiraRUS` +(Standard Voice) is no longer supported in eastus or any other region that +has rolled out GA neural voices as Standard voices become deprecated. + +([@tylergibson] - [#58499]) ([microsoft docs]) + +{% enddetails %} + +{% details "Utility Meter" %} + +The `offset` parameter for `utility_meter` sensors is now limited to at most +27 days. If you used more then 27 days you must now migrate to `cron`. + +([@dgomes] - [#55625]) ([utility_meter docs]) + +{% enddetails %} + +{% details "SolarEdge" %} + +The SolarEdge integration now provides unique IDs for its entities, so the +entities are now visible and customizable in the Home Assistant frontend. + +Some names have been corrected as they had incorrect descriptions. This may +cause some of your entity IDs provided by SolarEdge to have changed this release. + +In case you have been using these entities in your automations, scripts, or +dashboards, you can either rename those entity IDs to the old entity ID +or adjust the places you've used them accordingly. + +([@terminet85] - [#55902]) + +{% enddetails %} + +## Farewell to the following + +The following integrations are no longer available as of this release: + +- **Essent** has been removed. The API is no longer usable for this integration + and has therefore been removed. ([@TheLastProject] - [#56991]) +- **Lyft** has been previously deprecated and now removed. API key are no longer + being provided. ([@frenck] - [#57638]) +- **Nello** has been removed. The services are no longer available, + and have been offline for over 6 months. ([@pattyland] - [#57926]) +- **Huawei Router** has been removed. It relies on web scraping, which is no + longer allowed. ([@yuvalabou] - [#57136]) +- **Wink** has been previously deprecated and now removed. ([@frenck] - [#57634]) + +## All changes + +{% details "Click to see all changes!" %} + +- Bump version to 2021.11.0dev0 ([@frenck] - [#56835]) +- Strictly type Nanoleaf ([@milanmeu] - [#56852]) ([nanoleaf docs]) +- Add Device Info to Nanoleaf ([@milanmeu] - [#56856]) ([nanoleaf docs]) +- Add long-term statistics support for rain sensors ([@cgtobi] - [#56847]) ([netatmo docs]) +- removing excess variable ([@lanrat] - [#56849]) ([keyboard_remote docs]) +- Rename state to value_fn - picnic sensor ([@cdce8p] - [#56889]) ([picnic docs]) +- Deduplicate controls of UniFi services ([@Kane610] - [#56834]) ([unifi docs]) +- Add kPa as a pressure unit ([@gwww] - [#56885]) +- Remove some redundant code from trace ([@emontnemery] - [#56883]) ([trace docs]) +- Use HTTPStatus instead of HTTP_* consts in aiohttp web response statuses ([@scop] - [#56541]) +- Enable template icons for template numbers ([@JeffLIrion] - [#56154]) ([template docs]) +- Improve deCONZ services code quality ([@Kane610] - [#56904]) ([deconz docs]) +- Use HTTPStatus instead of HTTP_* constants in various test mocks ([@scop] - [#56543]) +- Bump fritzconnection to 1.7.0 ([@chemelli74] - [#56924]) ([fritz docs]) ([fritzbox_callmonitor docs]) +- Add SSDP discovery to Nanoleaf ([@milanmeu] - [#56907]) ([nanoleaf docs]) +- Get min and max color temperature for Nanoleaf light from library ([@milanmeu] - [#56863]) ([nanoleaf docs]) +- Upgrade watchdog to 2.1.6 ([@frenck] - [#56933]) ([folder_watcher docs]) +- Update denonavr codeowner ([@ol-iver] - [#56940]) ([denonavr docs]) +- Use NamedTuple - iqvia Rating ([@cdce8p] - [#56943]) ([iqvia docs]) +- Log when Nanoleaf is unavailable ([@milanmeu] - [#56921]) ([nanoleaf docs]) +- Remove injected logger in Ambient PWS and OpenUV ([@bachya] - [#56920]) ([openuv docs]) ([ambient_station docs]) +- Flux led config flow ([@icemanch] - [#56354]) ([flux_led docs]) (breaking-change) +- Remove icon if device_class is defined - homekit_controller ([@cdce8p] - [#56946]) ([homekit_controller docs]) +- Sia package update to 3.0.2 ([@eavanvalkenburg] - [#56896]) ([sia docs]) +- ZHA support for additional entities on ElectricalMeasurement ZCL cluster ([@Adminiuga] - [#56909]) ([zha docs]) +- Add strict typing to Tractive integration ([@bieniu] - [#56948]) ([tractive docs]) +- Bump gios library to 2.1.0 ([@bieniu] - [#56984]) ([gios docs]) +- Update surepetcare test ([@Danielhiversen] - [#56871]) ([surepetcare docs]) +- Update pyhomematic to 0.1.75 ([@danielperna84] - [#56995]) ([homematic docs]) +- Support connecting to ElkM1 over TLS 1.2 ([@gwww] - [#56887]) ([elkm1 docs]) +- Bump nettigo_air_monitor library to version 1.1.0 ([@bieniu] - [#56952]) ([nam docs]) +- Use Final type only when needed in Tractive ([@bieniu] - [#57000]) ([tractive docs]) +- Minor improvements to deCONZ light platform ([@Kane610] - [#56953]) ([deconz docs]) +- Use EntityDescription - homekit_controller ([@cdce8p] - [#56945]) ([homekit_controller docs]) +- Fix tractive flaky test ([@balloob] - [#57026]) ([tractive docs]) +- Remove Essent integration ([@TheLastProject] - [#56991]) ([essent docs]) (breaking-change) +- Prevent opening of sockets in kira tests ([@emontnemery] - [#57038]) ([kira docs]) +- Use NamedTuple for homekit valve type + service info ([@cdce8p] - [#56944]) ([homekit docs]) +- Use hass_client_no_auth test fixture in additional tests ([@emontnemery] - [#57037]) +- Use NamedTuple for darksky condition picture ([@cdce8p] - [#56942]) ([darksky docs]) +- Upgrade coverage to 6.0 ([@frenck] - [#57041]) +- Mock out network.util.async_get_source_ip in tests ([@emontnemery] - [#57039]) ([local_ip docs]) +- Fix multiline lambda formatting - homekit_controller ([@cdce8p] - [#57046]) ([homekit_controller docs]) +- Use NamedTuple for repetier API methods ([@cdce8p] - [#56941]) ([repetier docs]) +- Add ZHA HVAC Action sensor ([@Adminiuga] - [#57021]) ([zha docs]) +- Prevent tplink from opening sockets in tests ([@bdraco] - [#57058]) ([tplink docs]) +- Prevent dlna_dmr from opening sockets in tests ([@bdraco] - [#57059]) ([dlna_dmr docs]) +- Activate mypy for rpi_power ([@Misiu] - [#57047]) ([rpi_power docs]) +- Bump nest 0.3.7 to prepare for WebRTC support ([@allenporter] - [#57089]) ([nest docs]) +- Deprecate Python 3.8 ([@balloob] - [#57079]) (breaking-change) +- Additional place to use isinstance rather than do a string compare ([@Kane610] - [#57094]) ([deconz docs]) +- Upgrade jinja2 to 3.0.2 ([@frenck] - [#57095]) +- Upgrade sentry-sdk to 1.4.3 ([@frenck] - [#57096]) ([sentry docs]) +- Upgrade debugpy to 1.5.0 ([@frenck] - [#57098]) ([debugpy docs]) +- Prevent opening of sockets in mqtt tests ([@emontnemery] - [#57101]) ([mqtt docs]) +- Fix color util links to Philips Hue documentation ([@bokub] - [#57099]) +- Add additional properties to node_status WS cmd ([@raman325] - [#56927]) ([zwave_js docs]) +- Use current config entry standards for OpenUV ([@bachya] - [#57137]) ([openuv docs]) +- Add support for POLY and RLY in Coinbase ([@TomBrien] - [#57144]) ([coinbase docs]) +- Add additional devices to flux_led discovery ([@bdraco] - [#57086]) ([flux_led docs]) +- Block tests from opening sockets ([@emontnemery] - [#55516]) +- Write flux_led state after turning on/off ([@bdraco] - [#57152]) ([flux_led docs]) +- Add sw_version and model to flux_led device info ([@bdraco] - [#56958]) ([flux_led docs]) +- Add missing return type to async_unload_entry and async_setup_entry ([@Misiu] - [#57115]) +- Add home-assistant/core as codeowner for recorder ([@emontnemery] - [#57224]) ([recorder docs]) +- Upgrade coverage to 6.0.1 ([@frenck] - [#57235]) +- Toon, support Energy dashboard by default ([@frenck] - [#57233]) ([toon docs]) +- Ensure that WattTime is strictly typed ([@bachya] - [#57130]) +- Improve deCONZ signal strings ([@Kane610] - [#57140]) ([deconz docs]) +- Refactor persistent notification to no longer route all data via a service ([@balloob] - [#57157]) ([persistent_notification docs]) (breaking-change) +- Allow resetting an MQTT number ([@emontnemery] - [#57161]) ([mqtt docs]) +- Use EntityDescription - darksky ([@cdce8p] - [#57083]) ([darksky docs]) +- Enable template icons for template selects ([@JeffLIrion] - [#57092]) ([template docs]) +- Refactor Xiaomi vacuum to sensors ([@OGKevin] - [#54990]) ([xiaomi_miio docs]) (breaking-change) +- Upgrade ambee to 0.4.0 ([@frenck] - [#57264]) ([ambee docs]) +- Use current config entry standards for Ambient PWS ([@bachya] - [#57133]) ([ambient_station docs]) +- Improve dlna_dmr code quality ([@chishm] - [#56886]) ([dlna_dmr docs]) (breaking-change) +- Motion_blinds fix up button not available for unidirection blinds ([@starkillerOG] - [#57266]) ([motion_blinds docs]) +- Add WebSocket API for intiting a WebRTC stream ([@allenporter] - [#57034]) ([camera docs]) +- Use _attr in 17track ([@yuvalabou] - [#57187]) ([seventeentrack docs]) +- Add config flow to Stookalert ([@frenck] - [#57119]) ([stookalert docs]) (breaking-change) +- Drop more persistent notification patches ([@balloob] - [#57295]) ([dlna_dmr docs]) ([waze_travel_time docs]) ([google_travel_time docs]) ([vizio docs]) ([climacell docs]) +- Disconnect websockets after token is revoked ([@dboslee] - [#57091]) ([websocket_api docs]) +- Reorganize RainMachine services ([@bachya] - [#57145]) ([rainmachine docs]) (breaking-change) +- Add device info to nws ([@MatthewFlamm] - [#57153]) ([nws docs]) +- Use built-in logic for options handler in AirVisual ([@bachya] - [#57131]) ([airvisual docs]) +- Use current config entry standards for SimpliSafe ([@bachya] - [#57141]) ([simplisafe docs]) +- Bump greeclimate to 0.11.9 ([@cmroche] - [#57358]) ([gree docs]) +- Handle prepare timeout in websocket API ([@balloob] - [#55989]) ([websocket_api docs]) +- Add Sure Petcare Felaqua device ([@benleb] - [#56823]) ([surepetcare docs]) +- Add Shelly config entry reload on device config change ([@thecode] - [#57356]) ([shelly docs]) +- Create devices for Growatt ([@indykoning] - [#57068]) ([growatt_server docs]) +- Add -9999 error fix back in Xiaomi Miio ([@bieniu] - [#57399]) ([xiaomi_miio docs]) +- Add System Bridge display sensors ([@timmo001] - [#57019]) ([system_bridge docs]) +- Improve Whirlpool component code quality ([@abmantis] - [#57357]) ([whirlpool docs]) +- Flux led color support ([@icemanch] - [#57353]) ([flux_led docs]) +- Convert flux_led to use asyncio ([@bdraco] - [#57440]) ([flux_led docs]) +- Update pyfronius to 0.7.0 ([@farmio] - [#57279]) ([fronius docs]) +- Bump aiodiscover to 2.4.5 ([@bdraco] - [#57439]) ([dhcp docs]) +- Upgrade rvx to 0.7.0 ([@spahlimi] - [#57430]) ([yamaha docs]) +- Bump pytautulli to 21.10.0 ([@tkdrob] - [#57449]) ([tautulli docs]) +- Add config flow for efergy ([@tkdrob] - [#56890]) ([efergy docs]) (breaking-change) +- Use _attr for Suez water ([@yuvalabou] - [#57278]) ([suez_water docs]) +- Add test of lazy_error in modbus ([@janiversen] - [#57170]) ([modbus docs]) +- Update somecomfort library to 0.7.0 ([@rdfurman] - [#57214]) ([honeywell docs]) +- Add Netgear ssid and conn_ap_mac sensors ([@starkillerOG] - [#57226]) ([netgear docs]) +- Bump Daikin version, catch new exception during config_flow ([@fredrike] - [#57080]) ([daikin docs]) +- Add xiaomi vacuum -9999 fix back ([@OGKevin] - [#57473]) ([xiaomi_miio docs]) +- Add energy management for efergy ([@tkdrob] - [#57472]) ([efergy docs]) +- Don't override methods marked as final ([@cdce8p] - [#57477]) +- Use EntityDescription - openweathermap ([@cdce8p] - [#56888]) ([openweathermap docs]) +- Add dhcp support for tplink KP401 ([@bdraco] - [#57456]) ([tplink docs]) +- Use current config entry standards for AirVisual ([@bachya] - [#57132]) ([airvisual docs]) +- Bump `nettigo_air_monitor` library to version 1.1.1 ([@bieniu] - [#57483]) ([nam docs]) +- Switch to config_flow for Environment Canada ([@gwww] - [#57127]) ([environment_canada docs]) (breaking-change) +- Add the switch platform to flux_led ([@bdraco] - [#57444]) ([flux_led docs]) (new-platform) +- Add DHCP discovery for additional Zengge devices, generic magichome strips ([@bdraco] - [#57408]) ([flux_led docs]) +- Use entity description for Ezviz sensors ([@RenierM26] - [#56634]) ([ezviz docs]) +- Streamline modbus before 100% coverage. ([@janiversen] - [#57478]) ([modbus docs]) +- Add ability to re-auth WattTime ([@bachya] - [#56582]) ([watttime docs]) +- Fix watttime config flow and tests ([@MartinHjelmare] - [#57498]) ([watttime docs]) +- Move attribution attribute to Entity base class ([@frenck] - [#57492]) ([weather docs]) ([air_quality docs]) +- Allow MQTT discovery availability shortcut ([@jbouwh] - [#57479]) ([mqtt docs]) +- Override the jinja2 int filter ([@emontnemery] - [#57470]) +- Fix Tuya error when removing device ([@frenck] - [#57512]) ([tuya docs]) +- Pass device manager directly in Tuya registry cleanup ([@frenck] - [#57511]) ([tuya docs]) +- Entity attributes cleanup in Tuya base entity ([@frenck] - [#57510]) ([tuya docs]) +- Migrate attribution attribute for Picnic ([@frenck] - [#57507]) ([picnic docs]) +- Migrate attribution attribute for AmberElectric ([@frenck] - [#57505]) ([amberelectric docs]) +- Migrate attribution attribute for UptimeRobot ([@frenck] - [#57508]) ([uptimerobot docs]) +- Migrate attribution attribute for Arlo ([@frenck] - [#57504]) ([arlo docs]) +- Migrate attribution attribute for Stookalert ([@frenck] - [#57503]) ([stookalert docs]) +- Upgrade flake8-comprehensions to 3.7.0 ([@frenck] - [#57520]) +- Upgrade coverage to 6.0.2 ([@frenck] - [#57518]) +- Add statistics support to nest sensors ([@allenporter] - [#57393]) ([nest docs]) +- Bump `accuweather` library to version 0.3.0 ([@bieniu] - [#57497]) ([accuweather docs]) +- MQTT rework constants ([@jbouwh] - [#57529]) ([mqtt docs]) +- Move all Tuya device handling into device listener class ([@frenck] - [#57523]) ([tuya docs]) +- Move Tuya remap method from base to light entity class ([@frenck] - [#57527]) ([tuya docs]) +- Use EntityDescription - bmw_connected_drive ([@cdce8p] - [#56861]) ([bmw_connected_drive docs]) +- Alphabetize parts of device registry code ([@emontnemery] - [#57532]) ([config docs]) +- Tweaks to Tuya base entity ([@frenck] - [#57526]) ([tuya docs]) +- Use Tuya endpoints values from upstream library ([@frenck] - [#57537]) ([tuya docs]) +- Bump pytradfri to 7.0.7 ([@janiversen] - [#57543]) ([tradfri docs]) +- Update flake8 related packages ([@cdce8p] - [#57538]) +- Add service to Rainmachine to push weather data from Home Assistant ([@shbatm] - [#57354]) ([rainmachine docs]) +- Refactor Tuya device handling ([@frenck] - [#57545]) ([tuya docs]) +- Search for areas, devices and entities in script choose actions ([@emontnemery] - [#57554]) +- Add statistics tests for sensor with changing device class ([@emontnemery] - [#57317]) ([sensor docs]) +- Replace all Tuya device property constants with an Enum ([@frenck] - [#57559]) ([tuya docs]) +- Always include start point for statistics ([@emontnemery] - [#57182]) ([recorder docs]) ([sensor docs]) +- Refresh the bond token if it has changed and available ([@bdraco] - [#57583]) ([bond docs]) +- Fix single channel controllers with flux_led ([@bdraco] - [#57458]) ([flux_led docs]) +- Use a human readable model name in flux_led ([@bdraco] - [#57519]) ([flux_led docs]) +- Warn user if Gateway is already paired ([@janiversen] - [#57530]) ([tradfri docs]) +- Add Nest WebRTC and support Nest Battery Camera and Nest Battery Doorbell ([@allenporter] - [#57299]) ([camera docs]) ([nest docs]) +- Add a use_time sensor for Xiaomi_miio humidifiers ([@jbouwh] - [#57560]) ([xiaomi_miio docs]) +- Add unique_id support for eq3btsmart ([@lkempf] - [#57603]) ([eq3btsmart docs]) +- Add support for multiple Whirlpool airconditioners ([@abmantis] - [#57588]) ([whirlpool docs]) +- Improve warning prints for sensor statistics ([@emontnemery] - [#57605]) ([sensor docs]) +- Bump version ([@Cereal2nd] - [#57607]) ([velbus docs]) +- Use gather ipv wait to remove credentials to catch exceptions ([@balloob] - [#57596]) +- Guard linking credential that is already linked ([@balloob] - [#57595]) ([auth docs]) +- Prevent event loop delay / instability from discovery ([@bdraco] - [#57463]) ([zeroconf docs]) ([ssdp docs]) +- Clarify that only HTTPS can be used in fitbit ([@ammgws] - [#57116]) ([fitbit docs]) +- ESPHome move ReconnectLogic to aioesphomeapi ([@OttoWinter] - [#57601]) ([esphome docs]) +- Provide device_id in hue_event ([@krys1976] - [#56982]) ([hue docs]) +- Refactor Tuya climate platform ([@frenck] - [#57609]) ([climate docs]) ([tuya docs]) +- Modbus baseplatform.py and Validators.py 100% coverage (activate coverage) ([@janiversen] - [#57546]) ([modbus docs]) +- Use EntityDescription in Tuya Switch platform ([@frenck] - [#57581]) ([tuya docs]) +- Remove debug log ([@balloob] - [#57619]) +- Add binary sensor platform to Tuya ([@frenck] - [#57623]) ([tuya docs]) (new-platform) +- Update tests searching for areas referenced in automations ([@emontnemery] - [#57558]) +- Remove myself as code owner from Toon ([@frenck] - [#57625]) ([toon docs]) +- Use classmethod in Tuya TypeData classes ([@frenck] - [#57627]) ([tuya docs]) +- Prettify Tuya entity class names ([@frenck] - [#57629]) ([tuya docs]) +- Use entity_registry_enabled_default for Nut sensors ([@ollo69] - [#56854]) ([nut docs]) +- Remove deprecated Wink integration ([@frenck] - [#57634]) ([discovery docs]) ([wink docs]) (breaking-change) +- Nut: Use coordinator data, code cleanup and add test coverage ([@ollo69] - [#57643]) ([nut docs]) +- Correct state classes for systemmonitor sensors ([@mib1185] - [#57615]) ([systemmonitor docs]) +- Remove YAML configuration from Rainforest Eagle ([@frenck] - [#57636]) ([rainforest_eagle docs]) (breaking-change) +- Use HTTPStatus instead of HTTP_* int constants in mobile_app responses ([@scop] - [#56418]) ([mobile_app docs]) +- Use reference strings in soma ([@jasonmadigan] - [#57564]) ([soma docs]) +- Upgrade pyyaml to 6.0 ([@frenck] - [#57648]) +- Remove snapshot from hassio integration ([@ludeeus] - [#57652]) ([hassio docs]) (breaking-change) +- Add config and diagnostic entities ([@emontnemery] - [#57528]) ([config docs]) +- Bump flux_led to 0.24.5 ([@bdraco] - [#57653]) ([flux_led docs]) +- Late review comments. ([@janiversen] - [#57654]) ([modbus docs]) +- Migrate attribution attribute for bbox ([@frenck] - [#57650]) ([bbox docs]) +- Migrate attribution attribute for bitcoin ([@frenck] - [#57651]) ([bitcoin docs]) +- Migrate attribution attribute for Aftership ([@frenck] - [#57649]) ([aftership docs]) +- Remove deprecated Lyft integration ([@frenck] - [#57638]) ([lyft docs]) (breaking-change) +- Only pass libav logger messages when stream logger is set to debug ([@uvjustin] - [#57616]) ([stream docs]) +- Add select platform to Tuya ([@frenck] - [#57674]) ([tuya docs]) +- Clean up unused loggers ([@tkdrob] - [#57662]) +- Update xknx to version 0.18.10 ([@marvin-w] - [#57635]) ([knx docs]) +- Add support for device configuration URL ([@emontnemery] - [#57539]) ([config docs]) +- Fix lint issue ([@balloob] - [#57694]) +- Add sensor platform to Tuya ([@frenck] - [#57668]) ([tuya docs]) (new-platform) +- Port unmerged fixes from tuya_v2 ([@pabigot] - [#57624]) ([tuya docs]) +- Add number platform to Tuya ([@frenck] - [#57672]) ([tuya docs]) +- Add entity category to WLED ([@balloob] - [#57693]) ([wled docs]) +- Add service configuration URL to Stookalert ([@frenck] - [#57697]) ([stookalert docs]) +- Add device configuration URL to Plugwise ([@frenck] - [#57696]) ([plugwise docs]) +- Add service configuration URL to Spotify ([@frenck] - [#57701]) ([spotify docs]) +- Bump frontend to 20211014.0 ([@balloob] - [#57706]) ([frontend docs]) +- Add support for entity categories to NUT entities ([@mib1185] - [#57689]) ([nut docs]) +- Add support for entity categories to Synology DSM entities ([@mib1185] - [#57690]) ([synology_dsm docs]) +- Optimize update calls for AVM Fritz!Smarthome devices ([@mib1185] - [#57579]) ([fritzbox docs]) +- Skip auto-update when fqdn and ssl-verfiy is used for Synology DSM ([@mib1185] - [#57568]) ([synology_dsm docs]) +- Add url to CO2signal ([@balloob] - [#57703]) ([co2signal docs]) +- Add configuration url to Synology DSM ([@mib1185] - [#57704]) ([synology_dsm docs]) +- Add state_class to EnOcean sensors ([@davidlb] - [#57666]) ([enocean docs]) +- Remove long-term statistics from IQVIA forecast sensor ([@bachya] - [#57687]) ([iqvia docs]) (breaking-change) +- Add entity category to Shelly ([@bieniu] - [#57705]) ([shelly docs]) +- Add strict typing to goalzero ([@tkdrob] - [#57680]) ([goalzero docs]) +- Add configuration_url to Uptime Robot ([@ludeeus] - [#57709]) ([uptimerobot docs]) +- push motionblinds to 0.5.6 ([@starkillerOG] - [#57707]) ([motion_blinds docs]) +- Add service configuration URL to Verisure ([@frenck] - [#57713]) ([verisure docs]) +- Add service configuration URL to Speedtest.net ([@frenck] - [#57715]) ([speedtestdotnet docs]) +- Fix platform typo in Tuya const ([@ludeeus] - [#57716]) ([tuya docs]) +- Add device configuration URL to WLED ([@frenck] - [#57692]) ([wled docs]) +- Change name from Uptime Robot to UptimeRobot ([@ludeeus] - [#57714]) ([uptimerobot docs]) +- Xiaomi Miio appropriatly raise ConfigEntryAuthFailed/ConfigEntryNotReady ([@starkillerOG] - [#54696]) ([xiaomi_miio docs]) +- Add entity category to Xiaomi Miio ([@bieniu] - [#57719]) ([xiaomi_miio docs]) +- Add entity category to Tractive ([@bieniu] - [#57720]) ([tractive docs]) +- Add entity category to Brother ([@bieniu] - [#57728]) ([brother docs]) +- Add service configuration URL to MQTT ([@frenck] - [#57731]) ([mqtt docs]) +- Add Shelly "installed version" extra state attribute to Gen2 firmware update sensor ([@thecode] - [#57722]) ([shelly docs]) +- Add configuration url to Pi hole ([@mib1185] - [#57718]) ([pi_hole docs]) +- Add configuration_url to gogogate2 ([@bdraco] - [#57739]) ([gogogate2 docs]) +- Add configuration url to nexia ([@bdraco] - [#57740]) ([nexia docs]) +- Add discovery support for single channel magichome controllers ([@bdraco] - [#57736]) ([flux_led docs]) +- COnvert DATA_TYPE to enum. ([@janiversen] - [#57699]) ([modbus docs]) +- Add entity category to cloud ([@balloob] - [#57747]) ([cloud docs]) +- Add onewire support for DS2413 ([@ronalterde] - [#55921]) ([onewire docs]) +- Fix WLED exception on close ([@balloob] - [#57752]) ([wled docs]) +- Fix signature for hassio.restore_partial service ([@avee87] - [#57735]) ([hassio docs]) +- Add documentation link for Supervisor integration ([@avee87] - [#57733]) ([hassio docs]) +- Centralize entity naming for Tuya entities ([@frenck] - [#57755]) ([tuya docs]) +- Add configuration URL to Brother ([@bieniu] - [#57726]) ([brother docs]) +- Minor tweak of entityfilter typing ([@emontnemery] - [#57756]) +- Activate strict typing for nfandroidtv ([@tkdrob] - [#57743]) ([nfandroidtv docs]) +- Move Tuya value scaling into IntegerTypeData ([@frenck] - [#57757]) ([tuya docs]) +- Add configuration url to rachio ([@bdraco] - [#57738]) ([rachio docs]) +- Renamed variables in Tuya ([@frenck] - [#57759]) ([tuya docs]) +- Add entity category to Nettigo Air Monitor entities ([@bieniu] - [#57698]) ([nam docs]) +- Remove YAML import from UptimeRobot ([@ludeeus] - [#57761]) ([uptimerobot docs]) (breaking-change) +- Swap order of int template helper kwargs ([@Petro31] - [#57729]) +- Add support for entity categories to MQTT entities ([@emontnemery] - [#57656]) ([mqtt docs]) +- Add renault last activity sensors ([@epenet] - [#57750]) ([renault docs]) (breaking-change) +- Don't add indirectly referenced config entities to service calls ([@emontnemery] - [#57671]) ([homekit docs]) ([homeassistant docs]) (breaking-change) +- Don't expose config or diagnostic entities to Amazon Alexa by default ([@emontnemery] - [#57770]) ([alexa docs]) +- Don't expose config or diagnostic entities to Google Assistant ([@emontnemery] - [#57669]) ([google_assistant docs]) (breaking-change) +- Don't expose config or diagnostic entities to cloud ([@emontnemery] - [#57771]) ([cloud docs]) (breaking-change) +- Fix modem_callerid test warning ([@MartinHjelmare] - [#57760]) ([modem_callerid docs]) +- Clean startup of modbus by moving service schemas ([@janiversen] - [#57763]) ([modbus docs]) +- Add device class to temperature sensors for octoprint ([@firstof9] - [#56997]) ([octoprint docs]) +- Merge bmw_connected_drive metric and imperial sensor types ([@cdce8p] - [#56910]) ([bmw_connected_drive docs]) +- Add PIR Detector (pir) device support to Tuya ([@frenck] - [#57784]) ([tuya docs]) +- Identify onetime listeners ([@balloob] - [#57751]) +- Add vlc telnet config flow ([@MartinHjelmare] - [#57513]) ([vlc_telnet docs]) (breaking-change) +- Add Emergency Button (sos) device support to Tuya ([@frenck] - [#57794]) ([tuya docs]) +- Use assignment expressions 10 ([@cdce8p] - [#57791]) ([emulated_hue docs]) ([fan docs]) ([group docs]) ([google_assistant docs]) ([device_automation docs]) +- Add siren platform to Tuya ([@frenck] - [#57780]) ([tuya docs]) +- Add Luminance Sensor (ldcg) device support to Tuya ([@frenck] - [#57797]) ([tuya docs]) +- Don't use cast when possible for goalzero ([@tkdrob] - [#57742]) ([goalzero docs]) +- Add float32 test to modbus ([@janiversen] - [#57805]) ([modbus docs]) +- Add configuration URL to RainMachine ([@bachya] - [#57732]) ([rainmachine docs]) +- Discover plex via zeroconf ([@bdraco] - [#57825]) ([plex docs]) +- Add configuration_url to Sense ([@bdraco] - [#57814]) ([sense docs]) +- Avoid exposing effects to flux_led lights that do not support them ([@bdraco] - [#57810]) ([flux_led docs]) +- Add myself as codeowner for Tuya ([@frenck] - [#57837]) ([tuya docs]) +- Fix vlc_telnet disconnect on unload ([@MartinHjelmare] - [#57836]) ([vlc_telnet docs]) +- Make sure Tile data storage conforms to standards ([@bachya] - [#57818]) ([tile docs]) +- Make sure ReCollect Waste data storage conforms to standards ([@bachya] - [#57817]) ([recollect_waste docs]) +- Add configuration URL to Efergy ([@tkdrob] - [#57839]) ([efergy docs]) +- Add support for device configuration URL to Nettigo Air Monitor integration ([@bieniu] - [#57695]) ([nam docs]) +- Bump pytradfri to v.7.1.0 ([@janiversen] - [#57861]) ([tradfri docs]) +- Add support for 'freeze' mode in Tuya thermostats (wk) ([@frenck] - [#57851]) ([tuya docs]) +- Add new mac vendor to sense DHCP ([@tkdrob] - [#57858]) ([sense docs]) +- Add tamper device class for binary sensor ([@frenck] - [#57632]) ([binary_sensor docs]) +- Use DeviceInfo class ([@Danielhiversen] - [#57868]) ([tibber docs]) ([surepetcare docs]) ([mill docs]) ([opengarage docs]) ([tractive docs]) +- Restore dhcp discovery support to tuya ([@bdraco] - [#57826]) ([tuya docs]) +- Avoid probing brother devices that have an existing config entry ([@bdraco] - [#57829]) ([brother docs]) +- Set state class in JuiceNet component ([@b-pass] - [#57870]) ([juicenet docs]) +- Add hassio discovery to VLC telnet ([@mib1185] - [#57815]) ([vlc_telnet docs]) +- Add camera platform to Tuya ([@frenck] - [#57865]) ([tuya docs]) (new-platform) +- Use separate weather condition for clear night in MetOffice forecasts ([@avee87] - [#55135]) ([metoffice docs]) +- Decrease `timeout` and `update_interval` in Xiaomi Miio integration ([@bieniu] - [#57339]) ([xiaomi_miio docs]) +- Add additional models to flux_led DHCP discovery ([@bdraco] - [#57881]) ([flux_led docs]) +- Add use time sensor for air purifiers ([@bieniu] - [#57775]) ([xiaomi_miio docs]) +- Make sure AirVisual data storage conforms to standards ([@bachya] - [#57806]) ([airvisual docs]) +- Make sure OpenUV data storage conforms to standards ([@bachya] - [#57813]) ([openuv docs]) +- Make sure Notion data storage conforms to standards ([@bachya] - [#57812]) ([notion docs]) +- Update xknx to 0.18.11 and fix flaky test ([@marvin-w] - [#57877]) ([knx docs]) +- Add sensor category for rssi and battery ([@elupus] - [#57848]) ([rfxtrx docs]) +- Bump pymodbus to 2.5.3. ([@janiversen] - [#57887]) ([modbus docs]) +- Bump pypoint ([@fredrike] - [#57888]) ([point docs]) +- Improve lutron caseta error reporting when bridge is offline ([@bdraco] - [#57832]) ([lutron_caseta docs]) +- Do not probe `nam` device if the host is already configured ([@bieniu] - [#57843]) ([nam docs]) +- Bump `brother` library to version 1.1.0 ([@bieniu] - [#57892]) ([brother docs]) +- Fix mode_callerid attributes ([@tkdrob] - [#57774]) ([modem_callerid docs]) (breaking-change) +- push motionblinds to 0.5.7 ([@starkillerOG] - [#57902]) ([motion_blinds docs]) +- Fix order of arguments in rainmachine sensors ([@bdraco] - [#57895]) ([rainmachine docs]) +- Add the correct device class to deCONZ Tamper entity ([@Kane610] - [#57834]) ([deconz docs]) +- Add unit/device_class validation and normalization to Tuya ([@frenck] - [#57913]) ([tuya docs]) +- Add category diagnostic to Tibber signal sensor ([@Danielhiversen] - [#57840]) ([tibber docs]) +- Add category diagnostic to Surepetcare battery sensor ([@Danielhiversen] - [#57852]) ([surepetcare docs]) +- Add category diagnostic to Switchbot battery and signal sensor ([@Danielhiversen] - [#57854]) ([switchbot docs]) +- Airthings entity category diagnostic ([@Danielhiversen] - [#57850]) ([airthings docs]) +- Add device info to Adax ([@Danielhiversen] - [#57907]) ([adax docs]) +- Use attr_device_info and add init tests for nut ([@ollo69] - [#57725]) ([nut docs]) +- Set `nest` camera always on STATE_STREAMING ([@allenporter] - [#57882]) ([nest docs]) +- Improve nest error handling for websocket streams ([@allenporter] - [#57885]) ([nest docs]) +- Add category diagnostic to Surepetcare binary sensor ([@Danielhiversen] - [#57908]) ([surepetcare docs]) +- Opengarage dataupdater ([@Danielhiversen] - [#56931]) ([opengarage docs]) +- Fix bond reloading on zeroconf discovery when host has not changed ([@bdraco] - [#57799]) ([bond docs]) +- Use assignment expressions 05 ([@cdce8p] - [#57785]) +- Use assignment expressions 08 ([@cdce8p] - [#57788]) +- Use assignment expressions 06 ([@cdce8p] - [#57786]) +- Use assignment expressions 03 ([@cdce8p] - [#57710]) +- Use assignment expressions 11 ([@cdce8p] - [#57792]) +- Use assignment expressions 09 ([@cdce8p] - [#57790]) +- Use assignment expressions 07 ([@cdce8p] - [#57787]) +- Add support for push updates to flux_led ([@bdraco] - [#57890]) ([flux_led docs]) +- Adax attr ([@Danielhiversen] - [#57867]) ([adax docs]) +- Add Vibration Sensor (zd) device support to Tuya ([@frenck] - [#57795]) ([tuya docs]) +- Use EntityDescription - bmw_connected_drive sensor ([@cdce8p] - [#57796]) ([bmw_connected_drive docs]) +- Fix additional nest camera_sdm_tests to use STATE_STREAMING ([@allenporter] - [#57920]) ([nest docs]) +- Bump broadlink to 0.18.0 ([@felipediel] - [#57929]) ([broadlink docs]) +- Rename `stream_type` to `frontend_stream_type` ([@allenporter] - [#57923]) ([camera docs]) ([nest docs]) +- New service reconnect_client for UniFi integration ([@Kane610] - [#57570]) ([unifi docs]) +- Bump actions/checkout from 2.3.4 to 2.3.5 (dependabot - [#57947]) +- Tuya tweaks to entity category, registry enabled, icons & device classes ([@frenck] - [#57949]) ([tuya docs]) +- Use pytest fixtures on Renault tests ([@epenet] - [#57955]) ([renault docs]) +- Use assignment expressions 15 ([@cdce8p] - [#57961]) +- Add configuration url to Tasmota ([@emontnemery] - [#57957]) ([tasmota docs]) +- Use assignment expressions 19 ([@cdce8p] - [#57968]) +- Use assignment expressions 18 ([@cdce8p] - [#57967]) +- Bump hatasmota to 0.2.21 ([@emontnemery] - [#57966]) ([tasmota docs]) +- Support device and state classes for WAQI sensor ([@davidlb] - [#57762]) ([waqi docs]) +- Bump flux_led to 0.24.8 ([@bdraco] - [#57934]) ([flux_led docs]) +- Mark spider YAML configuration as deprecated ([@peternijssen] - [#57974]) ([spider docs]) (breaking-change) +- Use pytest fixtures on Onewire tests ([@epenet] - [#57973]) ([onewire docs]) +- Add Nut missing tests for config flow ([@ollo69] - [#57964]) ([nut docs]) +- Refactor Tuya light platform ([@frenck] - [#57980]) ([tuya docs]) +- Bump pysma to 0.6.7 ([@rklomp] - [#57978]) ([sma docs]) +- Bump pychromecast to 9.3.0 ([@emontnemery] - [#57991]) ([cast docs]) +- Bump fjaraskupan to 1.0.2 ([@elupus] - [#57992]) ([fjaraskupan docs]) +- Pickup codeowner for bond ([@bdraco] - [#57995]) ([bond docs]) +- Add vacuum platform to Tuya ([@frenck] - [#57996]) ([tuya docs]) (new-platform) +- Motion blinds add interface and wait_for_push options ([@starkillerOG] - [#50067]) ([motion_blinds docs]) +- Add to the Broadlink integration support for voltage, current, overload and total consumption sensors ([@felipediel] - [#53628]) ([broadlink docs]) +- Add configuration url to Juicenet ([@jesserockz] - [#57999]) ([juicenet docs]) +- Bump flux_led to 0.24.9 ([@bdraco] - [#58006]) ([flux_led docs]) +- BMW: Fix check_control_message short description ([@rikroe] - [#57998]) ([bmw_connected_drive docs]) +- Include webhook_id in mobile_app's notify registration_info ([@zacwest] - [#58007]) ([mobile_app docs]) +- Add configuration_url and entity_category to Fritz ([@chemelli74] - [#58004]) ([fritz docs]) +- Mark Tasmota status sensors as diagnostic sensors ([@emontnemery] - [#57958]) ([tasmota docs]) +- Use assignment expressions 16 ([@cdce8p] - [#57962]) +- Change warning to info when modbus is ready ([@janiversen] - [#57953]) ([modbus docs]) +- Log unhandled loop exception traces when asyncio debug is on ([@bdraco] - [#57602]) +- Add support for daily and monthly statistics ([@emontnemery] - [#57576]) ([recorder docs]) ([sensor docs]) +- Fix issue parsing color effect None in flux_led ([@brianegge] - [#57979]) ([flux_led docs]) +- Add service to stop air conditioning to bmw_connected_drive ([@rikroe] - [#57772]) ([bmw_connected_drive docs]) +- Add init tests for agent dvr ([@tkdrob] - [#57022]) ([agent_dvr docs]) +- Preventing working with incomplete discoveries from user config flow in upnp ([@StevenLooman] - [#57994]) ([upnp docs]) +- Open garage sensor ([@Danielhiversen] - [#57976]) ([opengarage docs]) (breaking-change) (new-platform) +- Rework Onewire tests to enable disabled entities ([@epenet] - [#58014]) ([onewire docs]) +- Store automation and script traces ([@emontnemery] - [#56894]) ([automation docs]) ([script docs]) ([trace docs]) +- Remove device category filtering from Tuya init ([@frenck] - [#58019]) ([tuya docs]) +- MQTT Alarm control panel - Enable remote code validation ([@jbouwh] - [#57764]) ([mqtt docs]) +- Deprecate OpenZWave in manifest ([@MartinHjelmare] - [#57987]) ([ozw docs]) (breaking-change) +- Add humidifier platform to Tuya ([@frenck] - [#58025]) ([tuya docs]) +- Add entity category to Hue ([@balloob] - [#58011]) ([hue docs]) +- Rewrite test for feedreader ([@briglx] - [#57292]) ([feedreader docs]) +- Add configuration url to Airthings ([@Danielhiversen] - [#58041]) ([airthings docs]) +- Add cover platform to Tuya ([@frenck] - [#58045]) ([tuya docs]) (new-platform) +- Add configuration url to Tractive ([@Danielhiversen] - [#58038]) ([tractive docs]) +- Add configuration url to Surepetcare ([@Danielhiversen] - [#58039]) ([surepetcare docs]) +- Add more info to OpenGarage device info ([@Danielhiversen] - [#58037]) ([opengarage docs]) +- Add MWh as an energy unit ([@emontnemery] - [#58034]) ([sensor docs]) +- Add Water Detector (sj) device support to Tuya ([@frenck] - [#58049]) ([tuya docs]) +- Add more sensors to Opengarage ([@Danielhiversen] - [#58042]) ([opengarage docs]) +- Clean up self references from Tuya climate platform constructor ([@frenck] - [#58051]) ([tuya docs]) +- Add entity category and state class to mobile app ([@balloob] - [#58012]) ([mobile_app docs]) +- Use constants in Onewire tests ([@epenet] - [#58017]) ([onewire docs]) +- Add support for kPa to sensor statistics ([@emontnemery] - [#58032]) ([sensor docs]) +- Fix clickatell send_error error check ([@scop] - [#57985]) ([clickatell docs]) +- Migrate SimpliSafe to new web-based authentication ([@bachya] - [#57212]) ([simplisafe docs]) (breaking-change) +- Rework RainMachine entity ID generation ([@bachya] - [#58055]) ([rainmachine docs]) +- Add Human Presence Sensor (hps) device support to Tuya ([@frenck] - [#58054]) ([tuya docs]) +- Bump flux_led to 0.24.11 ([@bdraco] - [#58020]) ([flux_led docs]) +- Add volume_up and volume_down to musiccast ([@vigonotion] - [#57919]) ([yamaha_musiccast docs]) +- Bump flux_led to 0.24.12 ([@bdraco] - [#58071]) ([flux_led docs]) +- Remove legacy tests in onewire ([@epenet] - [#58075]) ([onewire docs]) +- Assign entity category diagnostics to deCONZ battery sensors ([@Kane610] - [#58077]) ([deconz docs]) +- Bump pychromecast to 9.3.1 ([@emontnemery] - [#58035]) ([cast docs]) +- Address late review of unifi ([@Kane610] - [#58080]) ([unifi docs]) +- Don't use deprecated methods of retrieving registries in deCONZ ([@Kane610] - [#58081]) ([deconz docs]) +- Add deCONZ number config entity for Hue motion sensor delay ([@Kane610] - [#58076]) ([deconz docs]) +- Cleanup duplicate code in Onewire tests ([@epenet] - [#58082]) ([onewire docs]) +- Don't use deprecated ways of retrieving registries in Axis ([@Kane610] - [#58083]) ([axis docs]) +- Patch for Alexa percentage_step to precision ([@jbouwh] - [#58062]) ([alexa docs]) +- Fix supported_features behaviour for fan platform ([@jbouwh] - [#58065]) ([template docs]) +- Activate tradfri in coverage and clean conftest for tradfri ([@janiversen] - [#58058]) ([tradfri docs]) +- Please pylint for modbus test ([@janiversen] - [#58089]) ([modbus docs]) +- Add CO2 Detector (co2bj) device support to Tuya ([@frenck] - [#58093]) ([tuya docs]) +- Add state_class to current bandwith sensors for bbox integration ([@davidlb] - [#58086]) ([bbox docs]) +- Simplify signalling for updating available property of deCONZ entities ([@Kane610] - [#58078]) ([deconz docs]) +- Bump ismartgate to 4.0.3 ([@bdraco] - [#58073]) ([gogogate2 docs]) +- bitwise and for test supported_features ([@jbouwh] - [#58097]) ([template docs]) +- Report orphaned statistics in statistic validation ([@emontnemery] - [#57324]) ([recorder docs]) ([sensor docs]) +- Report all unrecorded sensors in statistics tool ([@emontnemery] - [#58092]) ([sensor docs]) +- Purge short term statistics ([@emontnemery] - [#58028]) ([recorder docs]) +- Fix issue where Number still would send force_update to super method ([@Kane610] - [#58110]) ([deconz docs]) +- Use assignment expressions 17 ([@cdce8p] - [#57963]) +- Fix referenced before assignment error in sonos speaker ([@tkdrob] - [#57924]) ([sonos docs]) +- Use assignment expressions 21 ([@cdce8p] - [#57970]) +- Complete Ceiling Light (xdd) device support for Tuya ([@frenck] - [#58095]) ([tuya docs]) +- Complete Switch/Socket/Power Strip device support for Tuya ([@frenck] - [#58106]) ([tuya docs]) +- Ensure lutron_caseta triggers can still be attached in setup retry state ([@bdraco] - [#57873]) ([lutron_caseta docs]) +- Bump hdate to 0.10.4 ([@yuvalabou] - [#58121]) ([jewish_calendar docs]) +- Assign entity category diagnostics to deCONZ tampering sensors ([@Kane610] - [#58112]) ([deconz docs]) +- Add entity categories for appropriate SimpliSafe entities ([@bachya] - [#58108]) ([simplisafe docs]) +- Add configuration url to Sonarr ([@jesserockz] - [#58085]) ([sonarr docs]) +- Correct unit_of_measurement for statistics sensor ([@emontnemery] - [#58023]) ([statistics docs]) +- Use assignment expressions 20 ([@cdce8p] - [#57969]) ([mqtt docs]) ([zha docs]) ([buienradar docs]) ([upb docs]) ([debugpy docs]) +- Add Formaldehyde Detector (jqbj) device support to Tuya ([@frenck] - [#58118]) ([tuya docs]) +- Add Dimmer Switch (tgkg) device support to Tuya ([@frenck] - [#58134]) ([tuya docs]) +- Use assignment expressions 12 ([@cdce8p] - [#57937]) +- Add entity categories for appropriate RainMachine entities ([@bachya] - [#58107]) ([rainmachine docs]) +- Add entity categories for appropriate Notion entities ([@bachya] - [#58105]) ([notion docs]) +- Add entity categories for appropriate Guardian entities ([@bachya] - [#58104]) ([guardian docs]) +- Add entity categories for appropriate Ambient PWS entities ([@bachya] - [#58100]) ([ambient_station docs]) +- Report modbus buffer too small or too big to unpack ([@janiversen] - [#57838]) ([modbus docs]) +- Fix connect_fail test and modbus.py 100% coverage ([@janiversen] - [#57894]) ([modbus docs]) +- Add entity categories for appropriate AirVisual entities ([@bachya] - [#58102]) ([airvisual docs]) +- Add `configuration_url` to Denon AVR integration ([@bieniu] - [#58116]) ([denonavr docs]) +- Move Screenlogic lights to the light platform ([@bdraco] - [#55467]) ([screenlogic docs]) (breaking-change) (new-platform) +- Run tests with -X dev and -bb ([@scop] - [#58079]) +- Bump frontend to 20211020.0 ([@balloob] - [#58139]) ([frontend docs]) +- Add auto slider/box mode to number entity ([@frenck] - [#57737]) ([demo docs]) ([number docs]) +- Add `configuration_url` to Sonos devices ([@jjlawren] - [#58148]) ([sonos docs]) +- Add `configuration_url` to Plex integration ([@jjlawren] - [#58149]) ([plex docs]) +- Add missing names for notify service fields ([@spacegaier] - [#58154]) ([notify docs]) +- Remove accidental blanks from Shelly trigger type translations ([@spacegaier] - [#58151]) ([shelly docs]) +- Update pyhomematic to 0.1.76 ([@danielperna84] - [#58136]) ([homematic docs]) +- input_datetime: Move has_date, has_time to capability_attributes ([@balloob] - [#58138]) ([input_datetime docs]) +- Use assignment expressions 14 ([@cdce8p] - [#57939]) +- Use assignment expressions 13 ([@cdce8p] - [#57938]) +- Add entity categories to goalzero ([@tkdrob] - [#57906]) ([goalzero docs]) +- Use assignment expressions 22 ([@cdce8p] - [#57971]) +- Add Device Type Energy to Srp Energy Sensor ([@briglx] - [#58147]) ([srp_energy docs]) +- Address late review for Fritz entity_category ([@chemelli74] - [#58141]) ([fritz docs]) +- Clean up SimpliSafe entity inheritance structure ([@bachya] - [#58063]) ([simplisafe docs]) +- Revert "Swap order of int template helper kwargs (#57729)" ([@emontnemery] - [#58015]) +- Add long-term statistics for AEMET sensors ([@Noltari] - [#57844]) ([aemet docs]) +- Add LOOKin integration ([@ANMalko] - [#58125]) ([lookin docs]) (new-integration) +- Improve SSDP discovery compatibility when device was discovery through an SSDP advertisement ([@StevenLooman] - [#58133]) ([ssdp docs]) +- Bump async-upnp-client to 0.22.9 ([@bdraco] - [#58185]) ([upnp docs]) ([yeelight docs]) ([dlna_dmr docs]) ([ssdp docs]) +- Add climate platform to lookin ([@ANMalko] - [#58175]) ([lookin docs]) (new-platform) +- Move notify setup to legacy ([@MartinHjelmare] - [#58033]) ([notify docs]) +- Remove unreachable code in data_entry_flow.py ([@bdraco] - [#58193]) +- Allow setting the nexia run mode with the hvac mode ([@bdraco] - [#57940]) ([nexia docs]) +- Cleanup lookin entity MRO and inheritance ([@bdraco] - [#58194]) ([lookin docs]) +- Tweak energy validator ([@emontnemery] - [#58018]) ([energy docs]) +- Fjaraskupan entity categories ([@elupus] - [#57846]) ([fjaraskupan docs]) +- Add long-term statistics for Tado sensors ([@Noltari] - [#58111]) ([tado docs]) +- Add `configuration_url` to AsusWrt integration ([@bieniu] - [#58172]) ([asuswrt docs]) +- Add support for device configuration URL to Axis devices ([@Kane610] - [#58176]) ([axis docs]) +- Use assignment expressions 23 ([@cdce8p] - [#58180]) +- Add `configuration_url` to Netatmo devices ([@cgtobi] - [#58160]) ([netatmo docs]) +- Use assignment expressions 27 ([@cdce8p] - [#58188]) +- Use assignment expressions 26 ([@cdce8p] - [#58187]) +- Use DeviceInfo on zha ([@epenet] - [#58202]) ([zha docs]) +- Use assignment expressions 25 ([@cdce8p] - [#58182]) +- Use DeviceInfo on zwave ([@epenet] - [#58183]) ([zwave docs]) +- Bump google-nest-sdm to 0.3.8 ([@allenporter] - [#58186]) ([nest docs]) +- Fix registration UI to work for Israel devices ([@tomer-w] - [#58192]) ([tuya docs]) +- Cleanup device registration in Onewire ([@epenet] - [#58101]) ([onewire docs]) +- Use DeviceInfo on components with via_device (H) ([@epenet] - [#58211]) ([hive docs]) ([hue docs]) ([homematicip_cloud docs]) ([hunterdouglas_powerview docs]) +- Remove black color name for light dropdowns ([@TomBrien] - [#58207]) ([light docs]) +- Make sure IQVIA data storage conforms to standards ([@bachya] - [#57811]) ([iqvia docs]) +- Use DeviceInfo on components with via_device (A-G) ([@epenet] - [#58210]) ([deconz docs]) ([elkm1 docs]) ([freebox docs]) ([directv docs]) ([fritz docs]) ([acmeda docs]) ([guardian docs]) ([bosch_shc docs]) +- Make sure RainMachine data storage conforms to standards ([@bachya] - [#57816]) ([rainmachine docs]) +- Make sure Ambient PWS data storage conforms to standards ([@bachya] - [#57807]) ([ambient_station docs]) +- Add memory/cpu percentage to Supervisor addons entities ([@avee87] - [#57468]) ([hassio docs]) +- Make sure Guardian data storage conforms to standards ([@bachya] - [#57809]) ([guardian docs]) +- Use DeviceInfo on components with via_device (I-T) ([@epenet] - [#58212]) +- Use DeviceInfo on components with via_device (R-X) ([@epenet] - [#58213]) ([tado docs]) ([toon docs]) ([xiaomi_aqara docs]) ([simplisafe docs]) ([somfy docs]) ([xiaomi_miio docs]) ([synology_dsm docs]) ([wilight docs]) ([sia docs]) ([roon docs]) ([ruckus_unleashed docs]) +- Use assignment expressions 28 ([@cdce8p] - [#58189]) +- Use assignment expressions 24 ([@cdce8p] - [#58181]) +- Add Smoke Detector (ywbj) device support to Tuya ([@regevbr] - [#58170]) ([tuya docs]) +- Enable long-term statistics for OpenWeatherMap sensors ([@dkt01] - [#57781]) ([openweathermap docs]) +- Use HTTPStatus instead of HTTP_ consts and magic values in components/a* ([@scop] - [#57988]) +- Gogogate2 add statistics ([@thomas-svrts] - [#58178]) ([gogogate2 docs]) +- Warn if state_changed events are excluded from recorder ([@emontnemery] - [#58021]) ([recorder docs]) (breaking-change) +- Support for Fritz!DECT 500 lightbulbs ([@flabbamann] - [#52830]) ([fritzbox docs]) (new-platform) +- Switch Fritz to device selector for services ([@chemelli74] - [#58005]) ([fritz docs]) (breaking-change) +- Rework octoprint ([@rfleming71] - [#58040]) ([octoprint docs]) (breaking-change) +- Use HTTPStatus instead of HTTP_ consts and magic values in comp.../[de]* ([@scop] - [#57990]) +- Use DeviceInfo class - A ([@tkdrob] - [#57859]) +- Use DeviceInfo Class D ([@tkdrob] - [#58218]) +- Use DeviceInfo on components with via_device ([@epenet] - [#58222]) ([tellduslive docs]) ([homekit_controller docs]) ([myq docs]) ([onewire docs]) ([ozw docs]) ([bond docs]) +- Fix fritzbox tests ([@flabbamann] - [#58227]) ([fritzbox docs]) +- Use DeviceInfo on components with configuration_url ([@epenet] - [#58223]) +- Add strict typing to efergy ([@tkdrob] - [#57682]) +- Consolidate ESPHome icon-handling code into EsphomeEntity ([@paulmonigatti] - [#57744]) ([esphome docs]) +- Fix unit of measurement for P1 Montior ([@klaasnicolaas] - [#57495]) ([p1_monitor docs]) +- Bump pylgnetcast to 0.3.4 ([@Drafteed] - [#58233]) ([lg_netcast docs]) +- Fix plugwise longterm statistics ([@bouwew] - [#58127]) ([plugwise docs]) +- Use value_fn for bmw_connected_drive binary_sensor ([@cdce8p] - [#57540]) ([bmw_connected_drive docs]) +- Index in-progress flows to avoid linear search ([@bdraco] - [#58146]) ([zha docs]) ([auth docs]) ([point docs]) ([smartthings docs]) ([withings docs]) +- Add product ID to model for Tuya ([@frenck] - [#58235]) ([tuya docs]) +- Add support for device configuration URL to deCONZ gateway ([@Kane610] - [#58184]) ([deconz docs]) +- Use HTTPStatus instead of HTTP_ consts and magic values in comp.../[bc]* ([@scop] - [#57989]) +- Update naming scheme for Renault entities ([@epenet] - [#57922]) ([renault docs]) +- Add datetime_today template method ([@Petro31] - [#57435]) +- Add area_entities and area_devices template functions/filters ([@raman325] - [#55228]) +- Add support for device configuration URL to UniFi Controller ([@Kane610] - [#58237]) ([unifi docs]) +- Add warning when entity used in template doesn't exist ([@avee87] - [#57316]) +- Enable strict typing in lookin ([@bdraco] - [#58238]) ([lookin docs]) +- Add support for min/max dimmer brightness in Tuya ([@frenck] - [#58165]) ([tuya docs]) +- Restore the previous state of a KNX binary sensor ([@marvin-w] - [#57891]) ([knx docs]) +- Nello removal ([@pattyland] - [#57926]) ([nello docs]) (breaking-change) +- Use attributes octoprint ([@cdce8p] - [#58241]) ([octoprint docs]) +- Add statistics support to Huisbaasje ([@dennisschroer] - [#54651]) ([huisbaasje docs]) +- Add strict typing to modem_callerid ([@tkdrob] - [#57683]) ([modem_callerid docs]) +- Fix Fibaro light features ([@rik-v] - [#56385]) ([fibaro docs]) +- Use http.HTTPStatus in components/f* ([@scop] - [#58244]) +- Bump arcam library to 0.12 with new series support ([@elupus] - [#53843]) ([arcam_fmj docs]) +- ISS cleanup ([@yuvalabou] - [#55801]) ([iss docs]) +- Discovery ignores DLNA DMR devices when they are better supported by another integration ([@chishm] - [#57363]) ([dlna_dmr docs]) ([ssdp docs]) +- Add state_class support to Rest ([@koying] - [#58026]) ([rest docs]) +- Use http.HTTPStatus in components/[ikl]* ([@scop] - [#58248]) +- Improve Discord notifier ([@nihaals] - [#52523]) ([discord docs]) +- Fully type Jewish Calendar ([@yuvalabou] - [#56232]) ([jewish_calendar docs]) +- Apple TV power management ([@itairaz1] - [#51520]) ([apple_tv docs]) +- Spelling & grammar improvements to bug_report.yml ([@JJJ] - [#56800]) +- Add additional nest stream test coverage ([@allenporter] - [#58013]) ([nest docs]) +- Allow different voices in Watson TTS calls ([@drinfernoo] - [#56811]) ([watson_tts docs]) +- Use http.HTTPStatus in components/m* ([@scop] - [#58251]) +- Add grid services active sensor to telsa powerwall integration ([@some-guy-in-oz] - [#56317]) ([powerwall docs]) +- Bump velbusaio to 2021.10.6 ([@Cereal2nd] - [#58168]) ([velbus docs]) +- Update ismartgate dependency ([@NickM-27] - [#58259]) ([gogogate2 docs]) +- Change precision of Nest sensors ([@michaeldavie] - [#56993]) ([nest docs]) +- Fix format bug in nest log statement ([@allenporter] - [#58263]) ([nest docs]) +- Fix a bug in a nest test that causes side effects for other tests ([@allenporter] - [#58264]) ([nest docs]) +- Rename tests filenames to conform to Home Assistant standards ([@allenporter] - [#58266]) ([nest docs]) +- Bump greeclimate to 0.12.2 ([@cmroche] - [#58256]) ([gree docs]) +- Fix yandex captcha detecting ([@devbis] - [#56132]) ([yandex_transport docs]) +- Use DeviceInfo Class B-C ([@tkdrob] - [#58217]) +- Use DeviceInfo Class E ([@tkdrob] - [#58230]) +- Use DeviceInfo Class F-G ([@tkdrob] - [#58255]) +- Use DeviceInfo on components with suggested_area ([@epenet] - [#58225]) ([tado docs]) ([nuheat docs]) ([august docs]) ([roku docs]) ([sonos docs]) ([hunterdouglas_powerview docs]) ([devolo_home_control docs]) +- Address Watson TTS review comment ([@frenck] - [#58277]) ([watson_tts docs]) +- Use regex instead of partition to section package definition ([@ludeeus] - [#58278]) +- Bump awesomeversion from 21.8.1 to 21.10.1 ([@ludeeus] - [#58258]) +- Ensure all devices show up in Tuya ([@frenck] - [#58280]) ([tuya docs]) +- Fix modem callerid callback ([@tkdrob] - [#58275]) ([modem_callerid docs]) +- Update tesla_powerwall to 0.3.12 ([@jrester] - [#58284]) ([powerwall docs]) +- Use DeviceInfo Class H ([@tkdrob] - [#58276]) +- Update aiolookin to 0.0.3 version ([@ANMalko] - [#58249]) ([lookin docs]) +- Add CO Detector (cobj) device support to Tuya ([@frenck] - [#58292]) ([tuya docs]) +- Add Gas Detector (rqbj) device support to Tuya ([@frenck] - [#58293]) ([tuya docs]) +- Add Pressure Sensor (ylcg) device support to Tuya ([@frenck] - [#58294]) ([tuya docs]) +- Complete Heater (qn) device support to Tuya ([@frenck] - [#58296]) ([tuya docs]) +- Make sure Flu Near You data storage conforms to standards ([@bachya] - [#57808]) ([flunearyou docs]) +- Use http.HTTPStatus in components/[gh]* ([@scop] - [#58246]) +- Use DeviceInfo Class I-K ([@tkdrob] - [#58300]) +- Use http.HTTPStatus in components/s* ([@scop] - [#58291]) +- Ensure zeroconf uses the newest non-link local address in discovery ([@bdraco] - [#58257]) ([zeroconf docs]) +- Use http.HTTPStatus in components/r* ([@scop] - [#58288]) +- Use HTTPStatus in components/[nop]* ([@scop] - [#58279]) +- Add new attribute constants for DeviceInfo registration ([@epenet] - [#58289]) ([netatmo docs]) ([isy994 docs]) ([apple_tv docs]) ([plugwise docs]) ([bond docs]) ([zwave_js docs]) +- Allow service data template to return a dict ([@koying] - [#57105]) +- Complete Smart Camera (sp) device support to Tuya ([@frenck] - [#58301]) ([tuya docs]) +- Add switch platform to Tuya Light (dj) devices ([@fOmey] - [#58196]) ([tuya docs]) +- OpenGarage binary sensor ([@Danielhiversen] - [#58030]) ([opengarage docs]) (new-platform) +- Bump pylitterbot to 2021.10.1 ([@natekspencer] - [#58307]) ([litterrobot docs]) +- Expose Sonos features as switch entities ([@jjlawren] - [#54502]) ([sonos docs]) (breaking-change) +- Filter by connections instead of identifiers for Shelly ([@chemelli74] - [#58305]) ([shelly docs]) +- Configurable mode for KNX number entity ([@farmio] - [#58268]) ([knx docs]) +- Use http.HTTPStatus in components/[tuv]* ([@scop] - [#58325]) +- Pull configuration_url from library in gogogate2 ([@bdraco] - [#58318]) ([gogogate2 docs]) +- Use DeviceInfo Class N-O ([@tkdrob] - [#58314]) +- Move `configuration_url` abbreviation to MQTT `DEVICE_ABBREVIATIONS` const ([@bieniu] - [#58313]) ([mqtt docs]) +- Fix bug in MediaSource definintion and enable strict type checking ([@allenporter] - [#58321]) ([netatmo docs]) ([media_source docs]) ([xbox docs]) +- Complete removal of auto_start, zeroconf_default_interface, and safe_mode from HomeKit ([@bdraco] - [#58320]) (breaking-change) +- Complete Solar Light (tyndj) device support to Tuya ([@frenck] - [#58302]) ([tuya docs]) +- Add long-term statistics for Ondilo ICO ([@TheNogl] - [#58290]) ([ondilo_ico docs]) +- Add VOC Sensor (voc) device support to Tuya ([@frenck] - [#58332]) ([tuya docs]) +- Add Methane Detector (jwbj) device support to Tuya ([@frenck] - [#58328]) ([tuya docs]) +- Add PM2.5 Sensor (pm25) device support to Tuya ([@frenck] - [#58329]) ([tuya docs]) +- Add more Huawei LTE sensor state classes ([@scop] - [#57983]) ([huawei_lte docs]) +- Use http.HTTPStatus in components/[wxyz]* ([@scop] - [#58330]) +- Support suburban railways stations in yandex transport ([@devbis] - [#58281]) ([yandex_transport docs]) +- Extend Tuya Humidifier ([@alexanv1] - [#58260]) ([tuya docs]) +- Pin pytest-github-actions-annotate-failures to fix broken CI ([@frenck] - [#58351]) +- add BitronVideo AV2021 ZHA stick ([@javicalle] - [#58337]) ([zha docs]) +- feat: Add unit of measurement to KNX number platform ([@marvin-w] - [#58353]) ([knx docs]) +- Fix lookin device validation in config flow ([@bdraco] - [#58349]) ([lookin docs]) +- Use DataUpdateCoordinator in Vallox ([@andre-richter] - [#56966]) ([vallox docs]) +- Allow advanced Plex `play_media` search options ([@jjlawren] - [#56226]) ([plex docs]) +- Fix lookin push updates when sensor entities disabled ([@bdraco] - [#58346]) ([lookin docs]) +- Add warning if Sonos not linked to Plex ([@jjlawren] - [#58150]) ([plex docs]) +- Set Sonos alarm and battery entity categories ([@jjlawren] - [#58340]) ([sonos docs]) +- Add Cell State sensor to Vallox ([@andre-richter] - [#58358]) ([vallox docs]) +- Add support for entity category for necessary KNX platforms ([@marvin-w] - [#58357]) ([knx docs]) +- Fix EXT-X-PROGRAM-DATE-TIME in stream ([@uvjustin] - [#58036]) ([stream docs]) +- Add entity category to MyQ ([@balloob] - [#58377]) ([myq docs]) +- Initial support for Tradfri STARKVIND Air purifier ([@ggravlingen] - [#58295]) ([tradfri docs]) (new-platform) +- Fix configuration url in gogogate2 ([@bdraco] - [#58365]) ([gogogate2 docs]) +- Bump pytradfri to 7.1.1 ([@janiversen] - [#58379]) ([tradfri docs]) +- Add entity category to august ([@bdraco] - [#58359]) ([august docs]) +- Add entity category to roomba ([@bdraco] - [#58362]) ([roomba docs]) +- Add entity category to gogogate2 ([@bdraco] - [#58366]) ([gogogate2 docs]) +- Add entity category to elkm1 ([@bdraco] - [#58364]) ([elkm1 docs]) +- Add Temperature and Humidity Sensor (wsdcg) device support to Tuya ([@frenck] - [#58335]) ([tuya docs]) +- Add configuration_url to isy994 ([@bdraco] - [#58372]) ([isy994 docs]) +- Add entity category to Neato ([@chemelli74] - [#58367]) ([neato docs]) +- Add support for unit of measurement in MQTT number platform ([@frenck] - [#58343]) ([mqtt docs]) +- Upgrade youless library to fix LS110 power total is not a number ([@gjong] - [#58333]) ([youless docs]) +- Minor cleanups for Vallox ([@andre-richter] - [#58384]) ([vallox docs]) +- Adjust DeviceInfo registration on zwave_js ([@epenet] - [#58391]) ([zwave_js docs]) +- Upgrade Tuya IoT Python SDK to 0.6.3 ([@frenck] - [#58240]) ([tuya docs]) +- Bump async-upnp-client to 0.22.10 ([@StevenLooman] - [#58387]) ([upnp docs]) ([yeelight docs]) ([dlna_dmr docs]) ([ssdp docs]) +- Use DeviceInfo in control4 ([@epenet] - [#58388]) ([control4 docs]) +- Use DeviceInfo on accuweather ([@epenet] - [#58394]) ([accuweather docs]) +- Add entity categories to Netatmo ([@cgtobi] - [#58383]) ([netatmo docs]) +- Run nuki bidge.info() on executor ([@sagioto] - [#58345]) ([nuki docs]) +- Add entity category to nut battery ([@bdraco] - [#58363]) ([nut docs]) +- Add entity category to hunterdouglas_powerview ([@bdraco] - [#58368]) ([hunterdouglas_powerview docs]) +- Add entity category to MotionEye ([@chemelli74] - [#58370]) ([motioneye docs]) +- Add entity category to Advantage Air ([@Bre77] - [#58371]) ([advantage_air docs]) +- Use DeviceInfo on awair ([@epenet] - [#58395]) ([awair docs]) +- Use DeviceInfo on hassio ([@epenet] - [#58397]) ([hassio docs]) +- Use DeviceInfo on esphome ([@epenet] - [#58396]) ([esphome docs]) +- Use DeviceInfo in huawei-lte ([@epenet] - [#58398]) ([huawei_lte docs]) +- Add configuration_url to upnp device ([@StevenLooman] - [#58385]) ([upnp docs]) +- Update PyVicare to 2.13.0 ([@oischinger] - [#57700]) ([vicare docs]) +- Use DeviceInfo in mqtt ([@epenet] - [#58389]) ([mqtt docs]) +- Allow extra keys in MQTT discovery messages ([@emontnemery] - [#58390]) ([mqtt docs]) +- Add Smart Kettle (bh) device support to Tuya ([@frenck] - [#58347]) ([tuya docs]) +- Drop unused ATTR_ENTRY_TYPE constant ([@epenet] - [#58400]) ([forecast_solar docs]) +- Use DeviceInfo in asuswrt ([@epenet] - [#58399]) ([asuswrt docs]) +- Advantage Air fix logic for motion sensors ([@Bre77] - [#58376]) ([advantage_air docs]) +- Use constants in renault tests ([@epenet] - [#58406]) ([renault docs]) +- Use ATTR_VIA_DEVICE constant in onewire tests ([@epenet] - [#58405]) ([onewire docs]) +- Meteofrance - Add state_class to appropriate sensors ([@davidlb] - [#58401]) ([meteo_france docs]) +- Bump up ZHA dependencies ([@Adminiuga] - [#58409]) ([zha docs]) +- Log correct ZHA channel initialization step ([@Adminiuga] - [#58410]) ([zha docs]) +- Add state_class/entity_category to Verisure ([@frenck] - [#58403]) ([verisure docs]) +- Add zwave_js sensor entity categories ([@MartinHjelmare] - [#58416]) ([zwave_js docs]) (breaking-change) +- Use DeviceInfo Class P-R ([@tkdrob] - [#58324]) +- Update PyVicare to 2.13.1 ([@oischinger] - [#58422]) ([vicare docs]) +- bump pylgnetcast to 0.3.5 ([@Drafteed] - [#58419]) ([lg_netcast docs]) +- Switch to UpdateCoordinator for eight sleep ([@raman325] - [#52614]) ([eight_sleep docs]) +- Complete Air Conditioner (kt) device support for Tuya ([@frenck] - [#58417]) ([tuya docs]) +- Add running device class to binary sensor ([@ludeeus] - [#58423]) ([binary_sensor docs]) +- Use DeviceInfo Class L-M ([@tkdrob] - [#58312]) +- Fix updating sensor on unlinked Plex server ([@jjlawren] - [#58418]) ([plex docs]) +- Add config flow to venstar ([@garbled1] - [#58152]) ([venstar docs]) (breaking-change) +- Add WattTime config option for showing the monitored location on the map ([@bachya] - [#57129]) ([watttime docs]) +- Set entity_category for node status sensor ([@raman325] - [#58434]) ([zwave_js docs]) +- Add binary sensor to add-ons to show if they are running ([@ludeeus] - [#58120]) ([hassio docs]) +- Re-add support for realtime SimpliSafe websocket ([@bachya] - [#58061]) ([simplisafe docs]) +- Ensure domain is correct format ([@balloob] - [#58429]) +- dlna_dmr won't support devices that don't provide all DMR services ([@chishm] - [#58374]) ([dlna_dmr docs]) ([ssdp docs]) +- Aurora abb (solar) configflow ([@davet2001] - [#36300]) ([aurora_abb_powerone docs]) (breaking-change) +- Use class attribute instead of property decorator ([@raman325] - [#58448]) ([zwave_js docs]) +- Fix flux_led with RGB/W bulbs (model 0x44) ([@bdraco] - [#58438]) ([flux_led docs]) +- Refactor input_select ([@frenck] - [#53334]) ([input_select docs]) (breaking-change) +- Fix Aurora abb incorrect attr ([@tkdrob] - [#58450]) ([aurora_abb_powerone docs]) +- Add typehints to eight_sleep ([@raman325] - [#58442]) ([eight_sleep docs]) +- Add all kraken entities on startup ([@eifinger] - [#58027]) ([kraken docs]) +- Add speed & intensity controls to wled ([@rytilahti] - [#56862]) ([wled docs]) +- Add support for external statistics ([@emontnemery] - [#56607]) ([recorder docs]) ([sensor docs]) +- Add support for fan groups ([@bdraco] - [#57941]) ([group docs]) (new-platform) +- Allow homeassistant prefix for device info configuration url ([@ludeeus] - [#58414]) ([hassio docs]) +- Remove redundant value test in KNX Number entity ([@farmio] - [#58455]) ([knx docs]) +- Fix velbus climate ([@Cereal2nd] - [#58408]) ([velbus docs]) +- Use NamedTuple in Vallox service_to_method mapping ([@andre-richter] - [#58361]) ([vallox docs]) +- Automatic spider supported fan speed and hvac ([@peternijssen] - [#58308]) ([spider docs]) +- Address late review of velbus ([@Cereal2nd] - [#58463]) ([velbus docs]) +- Use http.HTTPStatus in util.aiohttp ([@scop] - [#58456]) +- Clean up rounding in Ecobee integration ([@bjpetit] - [#56319]) ([ecobee docs]) +- Add device_class and state_class as optional attributes to the scrape sensor, to support statistics ([@lukas-hetzenecker] - [#58164]) ([scrape docs]) +- Warn when recorder connects to an unsupported database ([@emontnemery] - [#58161]) ([recorder docs]) (breaking-change) +- Use async_on_unload in Netatmo ([@cgtobi] - [#58461]) ([netatmo docs]) +- Corrections for external statistics ([@emontnemery] - [#58469]) ([recorder docs]) +- Validate device automation capablities WS calls ([@balloob] - [#58444]) +- Add entity_category to SmartThings sensors ([@allenporter] - [#58375]) ([smartthings docs]) +- Add offset support to time trigger ([@RobertMe] - [#56838]) ([homeassistant docs]) +- Add reauth for Netatmo when token or token scope is invalid ([@cgtobi] - [#57487]) ([netatmo docs]) +- Register Coinbase service in Device Registry and provide configuration URL ([@TomBrien] - [#58472]) ([coinbase docs]) +- Publish nest event ids in camera related events ([@allenporter] - [#58299]) ([nest docs]) +- Add some more required/optional tags to condition schemas ([@balloob] - [#58424]) +- Fjaraskupan number entity for periodic venting ([@elupus] - [#58179]) ([fjaraskupan docs]) +- Add vlc telnet error handler decorator ([@MartinHjelmare] - [#58468]) ([vlc_telnet docs]) +- Fix mysensors metric/non-metric gateway ([@MartinHjelmare] - [#58476]) ([mysensors docs]) +- Limit add-on stats to add-ons that are running ([@ludeeus] - [#58479]) ([hassio docs]) +- Support Energy Sensor and Statistics in Homematic IP Cloud Integration ([@FlavorFx] - [#57734]) ([homematicip_cloud docs]) +- dlna_dmr will gracefully handle device's rejection of subscription attempt ([@chishm] - [#58451]) ([dlna_dmr docs]) +- Bump ZHA quirks version to 0.0.63 ([@dmulcahey] - [#58478]) ([zha docs]) +- Add entity category to UniFi sensors and switches ([@Kane610] - [#58484]) ([unifi docs]) +- Enable type checking - bmw_connected_drive ([@cdce8p] - [#58310]) ([bmw_connected_drive docs]) +- Remove Huawei Router (ADR-0004) ([@yuvalabou] - [#57136]) ([huawei_router docs]) (breaking-change) +- Bump pyotp to 2.6.0 ([@chrillebile] - [#58413]) ([otp docs]) +- Add translations for binary_sensor device classes ([@spacegaier] - [#58471]) ([binary_sensor docs]) +- Fix overriding the yeelight model if it is not known ([@bdraco] - [#56967]) ([yeelight docs]) (breaking-change) +- Add Mill Sense Air sensors ([@Danielhiversen] - [#57776]) ([mill docs]) +- Allow data sources to affect client tracker state after reconnecting to UniFi controller ([@Kane610] - [#58269]) ([unifi docs]) +- Fix device_info for xiaomi_aqara ([@epenet] - [#58465]) ([xiaomi_aqara docs]) +- Minor cleanup on stream ([@uvjustin] - [#58486]) ([stream docs]) +- Fix flaky UPNP test ([@emontnemery] - [#58493]) ([upnp docs]) +- Add average template function and filter ([@Petro31] - [#57727]) +- Bump frontend to 20211026.0 ([@balloob] - [#58500]) ([frontend docs]) +- Add async lib and DataUpdateCoordinator for environment_canada ([@gwww] - [#57746]) ([environment_canada docs]) (breaking-change) +- Bump aioambient to 2021.10.0 ([@bachya] - [#58494]) ([ambient_station docs]) +- Add entity categories to esphome ([@jesserockz] - [#58495]) ([esphome docs]) +- Add Select platform to Advantage Air ([@Bre77] - [#54747]) ([advantage_air docs]) +- Broadlink Integration add support for LB1 ([@L-I-Am] - [#50953]) ([broadlink docs]) (new-platform) +- Fix endpoints issues for Tuya Integration ([@zlinoliver] - [#58411]) ([tuya docs]) +- Fix Microsoft tts defaults to resolve broken settings ([@tylergibson] - [#58499]) ([microsoft docs]) (breaking-change) +- Fix min_humidity and max_humidity in homekit_controller ([@yeahme49] - [#58507]) ([homekit_controller docs]) +- Bump quantum_gateway to v0.0.6 ([@cisasteelersfan] - [#58452]) ([quantum_gateway docs]) +- Retry yeelight setup later if first update fails ([@bdraco] - [#58446]) ([yeelight docs]) +- Add myStrom LED Strip support extending rgblamp bulb_type ([@asansano] - [#57322]) ([mystrom docs]) +- Use PyAV fork and set hvc1 codec tag for H.265 ([@uvjustin] - [#58309]) ([stream docs]) +- Refactor Growatt sensor types ([@muppet3000] - [#56544]) ([growatt_server docs]) +- Fix available for Mill ([@Danielhiversen] - [#58510]) ([mill docs]) +- Use constants for device registry checks ([@epenet] - [#58514]) ([nest docs]) ([arcam_fmj docs]) +- Fritz clean device_tracker service ([@chemelli74] - [#56535]) ([fritz docs]) +- Adjust onewire device manufacturer ([@epenet] - [#58515]) ([onewire docs]) +- Fix media_player grouping while media_player is off ([@vigonotion] - [#58070]) ([media_player docs]) +- Use DeviceInfo in screenlogic ([@epenet] - [#58518]) ([screenlogic docs]) +- Use DeviceInfo in sharkiq ([@epenet] - [#58519]) ([sharkiq docs]) +- Use DeviceInfo in shelly ([@epenet] - [#58520]) ([shelly docs]) +- Move WLED palette to config entity category ([@frenck] - [#58517]) ([wled docs]) +- Use DeviceInfo in sms ([@epenet] - [#58525]) ([sms docs]) +- Use DeviceInfo in smarttub ([@epenet] - [#58524]) ([smarttub docs]) +- Use DeviceInfo in smartthings ([@epenet] - [#58523]) ([smappee docs]) +- Use DeviceInfo in sma ([@epenet] - [#58521]) ([sma docs]) +- Handle accessories without a serial number in homekit_controller ([@bdraco] - [#58498]) ([homekit_controller docs]) +- Simplify utility_meter code base with croniter ([@dgomes] - [#55625]) ([utility_meter docs]) (breaking-change) +- Revert "Add warning when entity used in template doesn't exist" ([@frenck] - [#58527]) +- Use DeviceInfo in solarlog ([@epenet] - [#58526]) ([solarlog docs]) +- Fix Vicare unique_ids ([@oischinger] - [#58531]) ([vicare docs]) +- Increase setMode flexibility ([@oischinger] - [#58491]) ([vicare docs]) +- Use DeviceInfo in smappee ([@epenet] - [#58522]) ([smappee docs]) +- Add new orange pi boards to orangepi integration ([@drizzle1] - [#58392]) ([orangepi_gpio docs]) +- Simplify recorder PgSQL version checks ([@emontnemery] - [#58533]) ([recorder docs]) +- Allow specifying a super template for async_track_template_result ([@emontnemery] - [#58477]) ([websocket_api docs]) ([template docs]) ([universal docs]) ([bayesian docs]) +- Correct changes in Allow extra keys in MQTT discovery messages ([@emontnemery] - [#58534]) ([mqtt docs]) +- Add Solar Edge entity device and state class ([@terminet85] - [#55902]) (breaking-change) +- Add kWh as cost option for gas ([@ColinRobbins] - [#58426]) ([energy docs]) +- When tradfri device goes offline set attr_available false ([@janiversen] - [#58487]) ([tradfri docs]) +- Fix energy cost sensor for MWh + improve tests ([@emontnemery] - [#58540]) ([energy docs]) +- Allow storing picture in area registry ([@balloob] - [#58539]) ([config docs]) +- Add multi-partition support for TotalConnect ([@austinmroczek] - [#55429]) ([totalconnect docs]) +- Adjust onewire device model ([@epenet] - [#58516]) ([onewire docs]) +- Enable strict typing - bmw_connected_drive ([@cdce8p] - [#58506]) ([bmw_connected_drive docs]) +- Serialize dates and times to isoformat ([@emontnemery] - [#58157]) +- Add Number platform to Wallbox ([@hesselonline] - [#52786]) ([wallbox docs]) +- Blink arm camera ([@yeahme49] - [#56474]) ([blink docs]) +- Support ViCare energy units ([@oischinger] - [#58433]) ([vicare docs]) +- Update frontend to 20211027.0 ([@bramkragten] - [#58545]) ([frontend docs]) + +{% enddetails %} + +[#36300]: https://github.com/home-assistant/core/pull/36300 +[#50067]: https://github.com/home-assistant/core/pull/50067 +[#50953]: https://github.com/home-assistant/core/pull/50953 +[#51520]: https://github.com/home-assistant/core/pull/51520 +[#52523]: https://github.com/home-assistant/core/pull/52523 +[#52614]: https://github.com/home-assistant/core/pull/52614 +[#52786]: https://github.com/home-assistant/core/pull/52786 +[#52830]: https://github.com/home-assistant/core/pull/52830 +[#53334]: https://github.com/home-assistant/core/pull/53334 +[#53628]: https://github.com/home-assistant/core/pull/53628 +[#53843]: https://github.com/home-assistant/core/pull/53843 +[#54502]: https://github.com/home-assistant/core/pull/54502 +[#54651]: https://github.com/home-assistant/core/pull/54651 +[#54696]: https://github.com/home-assistant/core/pull/54696 +[#54747]: https://github.com/home-assistant/core/pull/54747 +[#54990]: https://github.com/home-assistant/core/pull/54990 +[#55135]: https://github.com/home-assistant/core/pull/55135 +[#55228]: https://github.com/home-assistant/core/pull/55228 +[#55429]: https://github.com/home-assistant/core/pull/55429 +[#55467]: https://github.com/home-assistant/core/pull/55467 +[#55516]: https://github.com/home-assistant/core/pull/55516 +[#55625]: https://github.com/home-assistant/core/pull/55625 +[#55801]: https://github.com/home-assistant/core/pull/55801 +[#55902]: https://github.com/home-assistant/core/pull/55902 +[#55921]: https://github.com/home-assistant/core/pull/55921 +[#55989]: https://github.com/home-assistant/core/pull/55989 +[#56132]: https://github.com/home-assistant/core/pull/56132 +[#56154]: https://github.com/home-assistant/core/pull/56154 +[#56226]: https://github.com/home-assistant/core/pull/56226 +[#56232]: https://github.com/home-assistant/core/pull/56232 +[#56317]: https://github.com/home-assistant/core/pull/56317 +[#56319]: https://github.com/home-assistant/core/pull/56319 +[#56354]: https://github.com/home-assistant/core/pull/56354 +[#56385]: https://github.com/home-assistant/core/pull/56385 +[#56418]: https://github.com/home-assistant/core/pull/56418 +[#56474]: https://github.com/home-assistant/core/pull/56474 +[#56535]: https://github.com/home-assistant/core/pull/56535 +[#56541]: https://github.com/home-assistant/core/pull/56541 +[#56543]: https://github.com/home-assistant/core/pull/56543 +[#56544]: https://github.com/home-assistant/core/pull/56544 +[#56582]: https://github.com/home-assistant/core/pull/56582 +[#56607]: https://github.com/home-assistant/core/pull/56607 +[#56634]: https://github.com/home-assistant/core/pull/56634 +[#56800]: https://github.com/home-assistant/core/pull/56800 +[#56811]: https://github.com/home-assistant/core/pull/56811 +[#56823]: https://github.com/home-assistant/core/pull/56823 +[#56834]: https://github.com/home-assistant/core/pull/56834 +[#56835]: https://github.com/home-assistant/core/pull/56835 +[#56838]: https://github.com/home-assistant/core/pull/56838 +[#56847]: https://github.com/home-assistant/core/pull/56847 +[#56849]: https://github.com/home-assistant/core/pull/56849 +[#56852]: https://github.com/home-assistant/core/pull/56852 +[#56854]: https://github.com/home-assistant/core/pull/56854 +[#56856]: https://github.com/home-assistant/core/pull/56856 +[#56861]: https://github.com/home-assistant/core/pull/56861 +[#56862]: https://github.com/home-assistant/core/pull/56862 +[#56863]: https://github.com/home-assistant/core/pull/56863 +[#56871]: https://github.com/home-assistant/core/pull/56871 +[#56883]: https://github.com/home-assistant/core/pull/56883 +[#56885]: https://github.com/home-assistant/core/pull/56885 +[#56886]: https://github.com/home-assistant/core/pull/56886 +[#56887]: https://github.com/home-assistant/core/pull/56887 +[#56888]: https://github.com/home-assistant/core/pull/56888 +[#56889]: https://github.com/home-assistant/core/pull/56889 +[#56890]: https://github.com/home-assistant/core/pull/56890 +[#56894]: https://github.com/home-assistant/core/pull/56894 +[#56896]: https://github.com/home-assistant/core/pull/56896 +[#56904]: https://github.com/home-assistant/core/pull/56904 +[#56907]: https://github.com/home-assistant/core/pull/56907 +[#56909]: https://github.com/home-assistant/core/pull/56909 +[#56910]: https://github.com/home-assistant/core/pull/56910 +[#56920]: https://github.com/home-assistant/core/pull/56920 +[#56921]: https://github.com/home-assistant/core/pull/56921 +[#56924]: https://github.com/home-assistant/core/pull/56924 +[#56927]: https://github.com/home-assistant/core/pull/56927 +[#56931]: https://github.com/home-assistant/core/pull/56931 +[#56933]: https://github.com/home-assistant/core/pull/56933 +[#56940]: https://github.com/home-assistant/core/pull/56940 +[#56941]: https://github.com/home-assistant/core/pull/56941 +[#56942]: https://github.com/home-assistant/core/pull/56942 +[#56943]: https://github.com/home-assistant/core/pull/56943 +[#56944]: https://github.com/home-assistant/core/pull/56944 +[#56945]: https://github.com/home-assistant/core/pull/56945 +[#56946]: https://github.com/home-assistant/core/pull/56946 +[#56948]: https://github.com/home-assistant/core/pull/56948 +[#56952]: https://github.com/home-assistant/core/pull/56952 +[#56953]: https://github.com/home-assistant/core/pull/56953 +[#56958]: https://github.com/home-assistant/core/pull/56958 +[#56966]: https://github.com/home-assistant/core/pull/56966 +[#56967]: https://github.com/home-assistant/core/pull/56967 +[#56982]: https://github.com/home-assistant/core/pull/56982 +[#56984]: https://github.com/home-assistant/core/pull/56984 +[#56991]: https://github.com/home-assistant/core/pull/56991 +[#56993]: https://github.com/home-assistant/core/pull/56993 +[#56995]: https://github.com/home-assistant/core/pull/56995 +[#56997]: https://github.com/home-assistant/core/pull/56997 +[#57000]: https://github.com/home-assistant/core/pull/57000 +[#57019]: https://github.com/home-assistant/core/pull/57019 +[#57021]: https://github.com/home-assistant/core/pull/57021 +[#57022]: https://github.com/home-assistant/core/pull/57022 +[#57026]: https://github.com/home-assistant/core/pull/57026 +[#57034]: https://github.com/home-assistant/core/pull/57034 +[#57037]: https://github.com/home-assistant/core/pull/57037 +[#57038]: https://github.com/home-assistant/core/pull/57038 +[#57039]: https://github.com/home-assistant/core/pull/57039 +[#57041]: https://github.com/home-assistant/core/pull/57041 +[#57046]: https://github.com/home-assistant/core/pull/57046 +[#57047]: https://github.com/home-assistant/core/pull/57047 +[#57058]: https://github.com/home-assistant/core/pull/57058 +[#57059]: https://github.com/home-assistant/core/pull/57059 +[#57068]: https://github.com/home-assistant/core/pull/57068 +[#57079]: https://github.com/home-assistant/core/pull/57079 +[#57080]: https://github.com/home-assistant/core/pull/57080 +[#57083]: https://github.com/home-assistant/core/pull/57083 +[#57086]: https://github.com/home-assistant/core/pull/57086 +[#57089]: https://github.com/home-assistant/core/pull/57089 +[#57091]: https://github.com/home-assistant/core/pull/57091 +[#57092]: https://github.com/home-assistant/core/pull/57092 +[#57094]: https://github.com/home-assistant/core/pull/57094 +[#57095]: https://github.com/home-assistant/core/pull/57095 +[#57096]: https://github.com/home-assistant/core/pull/57096 +[#57098]: https://github.com/home-assistant/core/pull/57098 +[#57099]: https://github.com/home-assistant/core/pull/57099 +[#57101]: https://github.com/home-assistant/core/pull/57101 +[#57105]: https://github.com/home-assistant/core/pull/57105 +[#57115]: https://github.com/home-assistant/core/pull/57115 +[#57116]: https://github.com/home-assistant/core/pull/57116 +[#57119]: https://github.com/home-assistant/core/pull/57119 +[#57127]: https://github.com/home-assistant/core/pull/57127 +[#57129]: https://github.com/home-assistant/core/pull/57129 +[#57130]: https://github.com/home-assistant/core/pull/57130 +[#57131]: https://github.com/home-assistant/core/pull/57131 +[#57132]: https://github.com/home-assistant/core/pull/57132 +[#57133]: https://github.com/home-assistant/core/pull/57133 +[#57136]: https://github.com/home-assistant/core/pull/57136 +[#57137]: https://github.com/home-assistant/core/pull/57137 +[#57140]: https://github.com/home-assistant/core/pull/57140 +[#57141]: https://github.com/home-assistant/core/pull/57141 +[#57144]: https://github.com/home-assistant/core/pull/57144 +[#57145]: https://github.com/home-assistant/core/pull/57145 +[#57152]: https://github.com/home-assistant/core/pull/57152 +[#57153]: https://github.com/home-assistant/core/pull/57153 +[#57157]: https://github.com/home-assistant/core/pull/57157 +[#57161]: https://github.com/home-assistant/core/pull/57161 +[#57170]: https://github.com/home-assistant/core/pull/57170 +[#57182]: https://github.com/home-assistant/core/pull/57182 +[#57187]: https://github.com/home-assistant/core/pull/57187 +[#57212]: https://github.com/home-assistant/core/pull/57212 +[#57214]: https://github.com/home-assistant/core/pull/57214 +[#57224]: https://github.com/home-assistant/core/pull/57224 +[#57226]: https://github.com/home-assistant/core/pull/57226 +[#57233]: https://github.com/home-assistant/core/pull/57233 +[#57235]: https://github.com/home-assistant/core/pull/57235 +[#57264]: https://github.com/home-assistant/core/pull/57264 +[#57266]: https://github.com/home-assistant/core/pull/57266 +[#57278]: https://github.com/home-assistant/core/pull/57278 +[#57279]: https://github.com/home-assistant/core/pull/57279 +[#57292]: https://github.com/home-assistant/core/pull/57292 +[#57295]: https://github.com/home-assistant/core/pull/57295 +[#57299]: https://github.com/home-assistant/core/pull/57299 +[#57316]: https://github.com/home-assistant/core/pull/57316 +[#57317]: https://github.com/home-assistant/core/pull/57317 +[#57322]: https://github.com/home-assistant/core/pull/57322 +[#57324]: https://github.com/home-assistant/core/pull/57324 +[#57339]: https://github.com/home-assistant/core/pull/57339 +[#57353]: https://github.com/home-assistant/core/pull/57353 +[#57354]: https://github.com/home-assistant/core/pull/57354 +[#57356]: https://github.com/home-assistant/core/pull/57356 +[#57357]: https://github.com/home-assistant/core/pull/57357 +[#57358]: https://github.com/home-assistant/core/pull/57358 +[#57363]: https://github.com/home-assistant/core/pull/57363 +[#57393]: https://github.com/home-assistant/core/pull/57393 +[#57399]: https://github.com/home-assistant/core/pull/57399 +[#57408]: https://github.com/home-assistant/core/pull/57408 +[#57430]: https://github.com/home-assistant/core/pull/57430 +[#57435]: https://github.com/home-assistant/core/pull/57435 +[#57439]: https://github.com/home-assistant/core/pull/57439 +[#57440]: https://github.com/home-assistant/core/pull/57440 +[#57444]: https://github.com/home-assistant/core/pull/57444 +[#57449]: https://github.com/home-assistant/core/pull/57449 +[#57456]: https://github.com/home-assistant/core/pull/57456 +[#57458]: https://github.com/home-assistant/core/pull/57458 +[#57463]: https://github.com/home-assistant/core/pull/57463 +[#57468]: https://github.com/home-assistant/core/pull/57468 +[#57470]: https://github.com/home-assistant/core/pull/57470 +[#57472]: https://github.com/home-assistant/core/pull/57472 +[#57473]: https://github.com/home-assistant/core/pull/57473 +[#57477]: https://github.com/home-assistant/core/pull/57477 +[#57478]: https://github.com/home-assistant/core/pull/57478 +[#57479]: https://github.com/home-assistant/core/pull/57479 +[#57483]: https://github.com/home-assistant/core/pull/57483 +[#57487]: https://github.com/home-assistant/core/pull/57487 +[#57492]: https://github.com/home-assistant/core/pull/57492 +[#57495]: https://github.com/home-assistant/core/pull/57495 +[#57497]: https://github.com/home-assistant/core/pull/57497 +[#57498]: https://github.com/home-assistant/core/pull/57498 +[#57503]: https://github.com/home-assistant/core/pull/57503 +[#57504]: https://github.com/home-assistant/core/pull/57504 +[#57505]: https://github.com/home-assistant/core/pull/57505 +[#57507]: https://github.com/home-assistant/core/pull/57507 +[#57508]: https://github.com/home-assistant/core/pull/57508 +[#57510]: https://github.com/home-assistant/core/pull/57510 +[#57511]: https://github.com/home-assistant/core/pull/57511 +[#57512]: https://github.com/home-assistant/core/pull/57512 +[#57513]: https://github.com/home-assistant/core/pull/57513 +[#57518]: https://github.com/home-assistant/core/pull/57518 +[#57519]: https://github.com/home-assistant/core/pull/57519 +[#57520]: https://github.com/home-assistant/core/pull/57520 +[#57523]: https://github.com/home-assistant/core/pull/57523 +[#57526]: https://github.com/home-assistant/core/pull/57526 +[#57527]: https://github.com/home-assistant/core/pull/57527 +[#57528]: https://github.com/home-assistant/core/pull/57528 +[#57529]: https://github.com/home-assistant/core/pull/57529 +[#57530]: https://github.com/home-assistant/core/pull/57530 +[#57532]: https://github.com/home-assistant/core/pull/57532 +[#57537]: https://github.com/home-assistant/core/pull/57537 +[#57538]: https://github.com/home-assistant/core/pull/57538 +[#57539]: https://github.com/home-assistant/core/pull/57539 +[#57540]: https://github.com/home-assistant/core/pull/57540 +[#57543]: https://github.com/home-assistant/core/pull/57543 +[#57545]: https://github.com/home-assistant/core/pull/57545 +[#57546]: https://github.com/home-assistant/core/pull/57546 +[#57554]: https://github.com/home-assistant/core/pull/57554 +[#57558]: https://github.com/home-assistant/core/pull/57558 +[#57559]: https://github.com/home-assistant/core/pull/57559 +[#57560]: https://github.com/home-assistant/core/pull/57560 +[#57564]: https://github.com/home-assistant/core/pull/57564 +[#57568]: https://github.com/home-assistant/core/pull/57568 +[#57570]: https://github.com/home-assistant/core/pull/57570 +[#57576]: https://github.com/home-assistant/core/pull/57576 +[#57579]: https://github.com/home-assistant/core/pull/57579 +[#57581]: https://github.com/home-assistant/core/pull/57581 +[#57583]: https://github.com/home-assistant/core/pull/57583 +[#57588]: https://github.com/home-assistant/core/pull/57588 +[#57595]: https://github.com/home-assistant/core/pull/57595 +[#57596]: https://github.com/home-assistant/core/pull/57596 +[#57601]: https://github.com/home-assistant/core/pull/57601 +[#57602]: https://github.com/home-assistant/core/pull/57602 +[#57603]: https://github.com/home-assistant/core/pull/57603 +[#57605]: https://github.com/home-assistant/core/pull/57605 +[#57607]: https://github.com/home-assistant/core/pull/57607 +[#57609]: https://github.com/home-assistant/core/pull/57609 +[#57615]: https://github.com/home-assistant/core/pull/57615 +[#57616]: https://github.com/home-assistant/core/pull/57616 +[#57619]: https://github.com/home-assistant/core/pull/57619 +[#57623]: https://github.com/home-assistant/core/pull/57623 +[#57624]: https://github.com/home-assistant/core/pull/57624 +[#57625]: https://github.com/home-assistant/core/pull/57625 +[#57627]: https://github.com/home-assistant/core/pull/57627 +[#57629]: https://github.com/home-assistant/core/pull/57629 +[#57632]: https://github.com/home-assistant/core/pull/57632 +[#57634]: https://github.com/home-assistant/core/pull/57634 +[#57635]: https://github.com/home-assistant/core/pull/57635 +[#57636]: https://github.com/home-assistant/core/pull/57636 +[#57638]: https://github.com/home-assistant/core/pull/57638 +[#57643]: https://github.com/home-assistant/core/pull/57643 +[#57648]: https://github.com/home-assistant/core/pull/57648 +[#57649]: https://github.com/home-assistant/core/pull/57649 +[#57650]: https://github.com/home-assistant/core/pull/57650 +[#57651]: https://github.com/home-assistant/core/pull/57651 +[#57652]: https://github.com/home-assistant/core/pull/57652 +[#57653]: https://github.com/home-assistant/core/pull/57653 +[#57654]: https://github.com/home-assistant/core/pull/57654 +[#57656]: https://github.com/home-assistant/core/pull/57656 +[#57662]: https://github.com/home-assistant/core/pull/57662 +[#57666]: https://github.com/home-assistant/core/pull/57666 +[#57668]: https://github.com/home-assistant/core/pull/57668 +[#57669]: https://github.com/home-assistant/core/pull/57669 +[#57671]: https://github.com/home-assistant/core/pull/57671 +[#57672]: https://github.com/home-assistant/core/pull/57672 +[#57674]: https://github.com/home-assistant/core/pull/57674 +[#57680]: https://github.com/home-assistant/core/pull/57680 +[#57682]: https://github.com/home-assistant/core/pull/57682 +[#57683]: https://github.com/home-assistant/core/pull/57683 +[#57687]: https://github.com/home-assistant/core/pull/57687 +[#57689]: https://github.com/home-assistant/core/pull/57689 +[#57690]: https://github.com/home-assistant/core/pull/57690 +[#57692]: https://github.com/home-assistant/core/pull/57692 +[#57693]: https://github.com/home-assistant/core/pull/57693 +[#57694]: https://github.com/home-assistant/core/pull/57694 +[#57695]: https://github.com/home-assistant/core/pull/57695 +[#57696]: https://github.com/home-assistant/core/pull/57696 +[#57697]: https://github.com/home-assistant/core/pull/57697 +[#57698]: https://github.com/home-assistant/core/pull/57698 +[#57699]: https://github.com/home-assistant/core/pull/57699 +[#57700]: https://github.com/home-assistant/core/pull/57700 +[#57701]: https://github.com/home-assistant/core/pull/57701 +[#57703]: https://github.com/home-assistant/core/pull/57703 +[#57704]: https://github.com/home-assistant/core/pull/57704 +[#57705]: https://github.com/home-assistant/core/pull/57705 +[#57706]: https://github.com/home-assistant/core/pull/57706 +[#57707]: https://github.com/home-assistant/core/pull/57707 +[#57709]: https://github.com/home-assistant/core/pull/57709 +[#57710]: https://github.com/home-assistant/core/pull/57710 +[#57713]: https://github.com/home-assistant/core/pull/57713 +[#57714]: https://github.com/home-assistant/core/pull/57714 +[#57715]: https://github.com/home-assistant/core/pull/57715 +[#57716]: https://github.com/home-assistant/core/pull/57716 +[#57718]: https://github.com/home-assistant/core/pull/57718 +[#57719]: https://github.com/home-assistant/core/pull/57719 +[#57720]: https://github.com/home-assistant/core/pull/57720 +[#57722]: https://github.com/home-assistant/core/pull/57722 +[#57725]: https://github.com/home-assistant/core/pull/57725 +[#57726]: https://github.com/home-assistant/core/pull/57726 +[#57727]: https://github.com/home-assistant/core/pull/57727 +[#57728]: https://github.com/home-assistant/core/pull/57728 +[#57729]: https://github.com/home-assistant/core/pull/57729 +[#57731]: https://github.com/home-assistant/core/pull/57731 +[#57732]: https://github.com/home-assistant/core/pull/57732 +[#57733]: https://github.com/home-assistant/core/pull/57733 +[#57734]: https://github.com/home-assistant/core/pull/57734 +[#57735]: https://github.com/home-assistant/core/pull/57735 +[#57736]: https://github.com/home-assistant/core/pull/57736 +[#57737]: https://github.com/home-assistant/core/pull/57737 +[#57738]: https://github.com/home-assistant/core/pull/57738 +[#57739]: https://github.com/home-assistant/core/pull/57739 +[#57740]: https://github.com/home-assistant/core/pull/57740 +[#57742]: https://github.com/home-assistant/core/pull/57742 +[#57743]: https://github.com/home-assistant/core/pull/57743 +[#57744]: https://github.com/home-assistant/core/pull/57744 +[#57746]: https://github.com/home-assistant/core/pull/57746 +[#57747]: https://github.com/home-assistant/core/pull/57747 +[#57750]: https://github.com/home-assistant/core/pull/57750 +[#57751]: https://github.com/home-assistant/core/pull/57751 +[#57752]: https://github.com/home-assistant/core/pull/57752 +[#57755]: https://github.com/home-assistant/core/pull/57755 +[#57756]: https://github.com/home-assistant/core/pull/57756 +[#57757]: https://github.com/home-assistant/core/pull/57757 +[#57759]: https://github.com/home-assistant/core/pull/57759 +[#57760]: https://github.com/home-assistant/core/pull/57760 +[#57761]: https://github.com/home-assistant/core/pull/57761 +[#57762]: https://github.com/home-assistant/core/pull/57762 +[#57763]: https://github.com/home-assistant/core/pull/57763 +[#57764]: https://github.com/home-assistant/core/pull/57764 +[#57770]: https://github.com/home-assistant/core/pull/57770 +[#57771]: https://github.com/home-assistant/core/pull/57771 +[#57772]: https://github.com/home-assistant/core/pull/57772 +[#57774]: https://github.com/home-assistant/core/pull/57774 +[#57775]: https://github.com/home-assistant/core/pull/57775 +[#57776]: https://github.com/home-assistant/core/pull/57776 +[#57780]: https://github.com/home-assistant/core/pull/57780 +[#57781]: https://github.com/home-assistant/core/pull/57781 +[#57784]: https://github.com/home-assistant/core/pull/57784 +[#57785]: https://github.com/home-assistant/core/pull/57785 +[#57786]: https://github.com/home-assistant/core/pull/57786 +[#57787]: https://github.com/home-assistant/core/pull/57787 +[#57788]: https://github.com/home-assistant/core/pull/57788 +[#57790]: https://github.com/home-assistant/core/pull/57790 +[#57791]: https://github.com/home-assistant/core/pull/57791 +[#57792]: https://github.com/home-assistant/core/pull/57792 +[#57794]: https://github.com/home-assistant/core/pull/57794 +[#57795]: https://github.com/home-assistant/core/pull/57795 +[#57796]: https://github.com/home-assistant/core/pull/57796 +[#57797]: https://github.com/home-assistant/core/pull/57797 +[#57799]: https://github.com/home-assistant/core/pull/57799 +[#57805]: https://github.com/home-assistant/core/pull/57805 +[#57806]: https://github.com/home-assistant/core/pull/57806 +[#57807]: https://github.com/home-assistant/core/pull/57807 +[#57808]: https://github.com/home-assistant/core/pull/57808 +[#57809]: https://github.com/home-assistant/core/pull/57809 +[#57810]: https://github.com/home-assistant/core/pull/57810 +[#57811]: https://github.com/home-assistant/core/pull/57811 +[#57812]: https://github.com/home-assistant/core/pull/57812 +[#57813]: https://github.com/home-assistant/core/pull/57813 +[#57814]: https://github.com/home-assistant/core/pull/57814 +[#57815]: https://github.com/home-assistant/core/pull/57815 +[#57816]: https://github.com/home-assistant/core/pull/57816 +[#57817]: https://github.com/home-assistant/core/pull/57817 +[#57818]: https://github.com/home-assistant/core/pull/57818 +[#57825]: https://github.com/home-assistant/core/pull/57825 +[#57826]: https://github.com/home-assistant/core/pull/57826 +[#57829]: https://github.com/home-assistant/core/pull/57829 +[#57832]: https://github.com/home-assistant/core/pull/57832 +[#57834]: https://github.com/home-assistant/core/pull/57834 +[#57836]: https://github.com/home-assistant/core/pull/57836 +[#57837]: https://github.com/home-assistant/core/pull/57837 +[#57838]: https://github.com/home-assistant/core/pull/57838 +[#57839]: https://github.com/home-assistant/core/pull/57839 +[#57840]: https://github.com/home-assistant/core/pull/57840 +[#57843]: https://github.com/home-assistant/core/pull/57843 +[#57844]: https://github.com/home-assistant/core/pull/57844 +[#57846]: https://github.com/home-assistant/core/pull/57846 +[#57848]: https://github.com/home-assistant/core/pull/57848 +[#57850]: https://github.com/home-assistant/core/pull/57850 +[#57851]: https://github.com/home-assistant/core/pull/57851 +[#57852]: https://github.com/home-assistant/core/pull/57852 +[#57854]: https://github.com/home-assistant/core/pull/57854 +[#57858]: https://github.com/home-assistant/core/pull/57858 +[#57859]: https://github.com/home-assistant/core/pull/57859 +[#57861]: https://github.com/home-assistant/core/pull/57861 +[#57865]: https://github.com/home-assistant/core/pull/57865 +[#57867]: https://github.com/home-assistant/core/pull/57867 +[#57868]: https://github.com/home-assistant/core/pull/57868 +[#57870]: https://github.com/home-assistant/core/pull/57870 +[#57873]: https://github.com/home-assistant/core/pull/57873 +[#57877]: https://github.com/home-assistant/core/pull/57877 +[#57881]: https://github.com/home-assistant/core/pull/57881 +[#57882]: https://github.com/home-assistant/core/pull/57882 +[#57885]: https://github.com/home-assistant/core/pull/57885 +[#57887]: https://github.com/home-assistant/core/pull/57887 +[#57888]: https://github.com/home-assistant/core/pull/57888 +[#57890]: https://github.com/home-assistant/core/pull/57890 +[#57891]: https://github.com/home-assistant/core/pull/57891 +[#57892]: https://github.com/home-assistant/core/pull/57892 +[#57894]: https://github.com/home-assistant/core/pull/57894 +[#57895]: https://github.com/home-assistant/core/pull/57895 +[#57902]: https://github.com/home-assistant/core/pull/57902 +[#57906]: https://github.com/home-assistant/core/pull/57906 +[#57907]: https://github.com/home-assistant/core/pull/57907 +[#57908]: https://github.com/home-assistant/core/pull/57908 +[#57913]: https://github.com/home-assistant/core/pull/57913 +[#57919]: https://github.com/home-assistant/core/pull/57919 +[#57920]: https://github.com/home-assistant/core/pull/57920 +[#57922]: https://github.com/home-assistant/core/pull/57922 +[#57923]: https://github.com/home-assistant/core/pull/57923 +[#57924]: https://github.com/home-assistant/core/pull/57924 +[#57926]: https://github.com/home-assistant/core/pull/57926 +[#57929]: https://github.com/home-assistant/core/pull/57929 +[#57934]: https://github.com/home-assistant/core/pull/57934 +[#57937]: https://github.com/home-assistant/core/pull/57937 +[#57938]: https://github.com/home-assistant/core/pull/57938 +[#57939]: https://github.com/home-assistant/core/pull/57939 +[#57940]: https://github.com/home-assistant/core/pull/57940 +[#57941]: https://github.com/home-assistant/core/pull/57941 +[#57947]: https://github.com/home-assistant/core/pull/57947 +[#57949]: https://github.com/home-assistant/core/pull/57949 +[#57953]: https://github.com/home-assistant/core/pull/57953 +[#57955]: https://github.com/home-assistant/core/pull/57955 +[#57957]: https://github.com/home-assistant/core/pull/57957 +[#57958]: https://github.com/home-assistant/core/pull/57958 +[#57961]: https://github.com/home-assistant/core/pull/57961 +[#57962]: https://github.com/home-assistant/core/pull/57962 +[#57963]: https://github.com/home-assistant/core/pull/57963 +[#57964]: https://github.com/home-assistant/core/pull/57964 +[#57966]: https://github.com/home-assistant/core/pull/57966 +[#57967]: https://github.com/home-assistant/core/pull/57967 +[#57968]: https://github.com/home-assistant/core/pull/57968 +[#57969]: https://github.com/home-assistant/core/pull/57969 +[#57970]: https://github.com/home-assistant/core/pull/57970 +[#57971]: https://github.com/home-assistant/core/pull/57971 +[#57973]: https://github.com/home-assistant/core/pull/57973 +[#57974]: https://github.com/home-assistant/core/pull/57974 +[#57976]: https://github.com/home-assistant/core/pull/57976 +[#57978]: https://github.com/home-assistant/core/pull/57978 +[#57979]: https://github.com/home-assistant/core/pull/57979 +[#57980]: https://github.com/home-assistant/core/pull/57980 +[#57983]: https://github.com/home-assistant/core/pull/57983 +[#57985]: https://github.com/home-assistant/core/pull/57985 +[#57987]: https://github.com/home-assistant/core/pull/57987 +[#57988]: https://github.com/home-assistant/core/pull/57988 +[#57989]: https://github.com/home-assistant/core/pull/57989 +[#57990]: https://github.com/home-assistant/core/pull/57990 +[#57991]: https://github.com/home-assistant/core/pull/57991 +[#57992]: https://github.com/home-assistant/core/pull/57992 +[#57994]: https://github.com/home-assistant/core/pull/57994 +[#57995]: https://github.com/home-assistant/core/pull/57995 +[#57996]: https://github.com/home-assistant/core/pull/57996 +[#57998]: https://github.com/home-assistant/core/pull/57998 +[#57999]: https://github.com/home-assistant/core/pull/57999 +[#58004]: https://github.com/home-assistant/core/pull/58004 +[#58005]: https://github.com/home-assistant/core/pull/58005 +[#58006]: https://github.com/home-assistant/core/pull/58006 +[#58007]: https://github.com/home-assistant/core/pull/58007 +[#58011]: https://github.com/home-assistant/core/pull/58011 +[#58012]: https://github.com/home-assistant/core/pull/58012 +[#58013]: https://github.com/home-assistant/core/pull/58013 +[#58014]: https://github.com/home-assistant/core/pull/58014 +[#58015]: https://github.com/home-assistant/core/pull/58015 +[#58017]: https://github.com/home-assistant/core/pull/58017 +[#58018]: https://github.com/home-assistant/core/pull/58018 +[#58019]: https://github.com/home-assistant/core/pull/58019 +[#58020]: https://github.com/home-assistant/core/pull/58020 +[#58021]: https://github.com/home-assistant/core/pull/58021 +[#58023]: https://github.com/home-assistant/core/pull/58023 +[#58025]: https://github.com/home-assistant/core/pull/58025 +[#58026]: https://github.com/home-assistant/core/pull/58026 +[#58027]: https://github.com/home-assistant/core/pull/58027 +[#58028]: https://github.com/home-assistant/core/pull/58028 +[#58030]: https://github.com/home-assistant/core/pull/58030 +[#58032]: https://github.com/home-assistant/core/pull/58032 +[#58033]: https://github.com/home-assistant/core/pull/58033 +[#58034]: https://github.com/home-assistant/core/pull/58034 +[#58035]: https://github.com/home-assistant/core/pull/58035 +[#58036]: https://github.com/home-assistant/core/pull/58036 +[#58037]: https://github.com/home-assistant/core/pull/58037 +[#58038]: https://github.com/home-assistant/core/pull/58038 +[#58039]: https://github.com/home-assistant/core/pull/58039 +[#58040]: https://github.com/home-assistant/core/pull/58040 +[#58041]: https://github.com/home-assistant/core/pull/58041 +[#58042]: https://github.com/home-assistant/core/pull/58042 +[#58045]: https://github.com/home-assistant/core/pull/58045 +[#58049]: https://github.com/home-assistant/core/pull/58049 +[#58051]: https://github.com/home-assistant/core/pull/58051 +[#58054]: https://github.com/home-assistant/core/pull/58054 +[#58055]: https://github.com/home-assistant/core/pull/58055 +[#58058]: https://github.com/home-assistant/core/pull/58058 +[#58061]: https://github.com/home-assistant/core/pull/58061 +[#58062]: https://github.com/home-assistant/core/pull/58062 +[#58063]: https://github.com/home-assistant/core/pull/58063 +[#58065]: https://github.com/home-assistant/core/pull/58065 +[#58070]: https://github.com/home-assistant/core/pull/58070 +[#58071]: https://github.com/home-assistant/core/pull/58071 +[#58073]: https://github.com/home-assistant/core/pull/58073 +[#58075]: https://github.com/home-assistant/core/pull/58075 +[#58076]: https://github.com/home-assistant/core/pull/58076 +[#58077]: https://github.com/home-assistant/core/pull/58077 +[#58078]: https://github.com/home-assistant/core/pull/58078 +[#58079]: https://github.com/home-assistant/core/pull/58079 +[#58080]: https://github.com/home-assistant/core/pull/58080 +[#58081]: https://github.com/home-assistant/core/pull/58081 +[#58082]: https://github.com/home-assistant/core/pull/58082 +[#58083]: https://github.com/home-assistant/core/pull/58083 +[#58085]: https://github.com/home-assistant/core/pull/58085 +[#58086]: https://github.com/home-assistant/core/pull/58086 +[#58089]: https://github.com/home-assistant/core/pull/58089 +[#58092]: https://github.com/home-assistant/core/pull/58092 +[#58093]: https://github.com/home-assistant/core/pull/58093 +[#58095]: https://github.com/home-assistant/core/pull/58095 +[#58097]: https://github.com/home-assistant/core/pull/58097 +[#58100]: https://github.com/home-assistant/core/pull/58100 +[#58101]: https://github.com/home-assistant/core/pull/58101 +[#58102]: https://github.com/home-assistant/core/pull/58102 +[#58104]: https://github.com/home-assistant/core/pull/58104 +[#58105]: https://github.com/home-assistant/core/pull/58105 +[#58106]: https://github.com/home-assistant/core/pull/58106 +[#58107]: https://github.com/home-assistant/core/pull/58107 +[#58108]: https://github.com/home-assistant/core/pull/58108 +[#58110]: https://github.com/home-assistant/core/pull/58110 +[#58111]: https://github.com/home-assistant/core/pull/58111 +[#58112]: https://github.com/home-assistant/core/pull/58112 +[#58116]: https://github.com/home-assistant/core/pull/58116 +[#58118]: https://github.com/home-assistant/core/pull/58118 +[#58120]: https://github.com/home-assistant/core/pull/58120 +[#58121]: https://github.com/home-assistant/core/pull/58121 +[#58125]: https://github.com/home-assistant/core/pull/58125 +[#58127]: https://github.com/home-assistant/core/pull/58127 +[#58133]: https://github.com/home-assistant/core/pull/58133 +[#58134]: https://github.com/home-assistant/core/pull/58134 +[#58136]: https://github.com/home-assistant/core/pull/58136 +[#58138]: https://github.com/home-assistant/core/pull/58138 +[#58139]: https://github.com/home-assistant/core/pull/58139 +[#58141]: https://github.com/home-assistant/core/pull/58141 +[#58146]: https://github.com/home-assistant/core/pull/58146 +[#58147]: https://github.com/home-assistant/core/pull/58147 +[#58148]: https://github.com/home-assistant/core/pull/58148 +[#58149]: https://github.com/home-assistant/core/pull/58149 +[#58150]: https://github.com/home-assistant/core/pull/58150 +[#58151]: https://github.com/home-assistant/core/pull/58151 +[#58152]: https://github.com/home-assistant/core/pull/58152 +[#58154]: https://github.com/home-assistant/core/pull/58154 +[#58157]: https://github.com/home-assistant/core/pull/58157 +[#58160]: https://github.com/home-assistant/core/pull/58160 +[#58161]: https://github.com/home-assistant/core/pull/58161 +[#58164]: https://github.com/home-assistant/core/pull/58164 +[#58165]: https://github.com/home-assistant/core/pull/58165 +[#58168]: https://github.com/home-assistant/core/pull/58168 +[#58170]: https://github.com/home-assistant/core/pull/58170 +[#58172]: https://github.com/home-assistant/core/pull/58172 +[#58175]: https://github.com/home-assistant/core/pull/58175 +[#58176]: https://github.com/home-assistant/core/pull/58176 +[#58178]: https://github.com/home-assistant/core/pull/58178 +[#58179]: https://github.com/home-assistant/core/pull/58179 +[#58180]: https://github.com/home-assistant/core/pull/58180 +[#58181]: https://github.com/home-assistant/core/pull/58181 +[#58182]: https://github.com/home-assistant/core/pull/58182 +[#58183]: https://github.com/home-assistant/core/pull/58183 +[#58184]: https://github.com/home-assistant/core/pull/58184 +[#58185]: https://github.com/home-assistant/core/pull/58185 +[#58186]: https://github.com/home-assistant/core/pull/58186 +[#58187]: https://github.com/home-assistant/core/pull/58187 +[#58188]: https://github.com/home-assistant/core/pull/58188 +[#58189]: https://github.com/home-assistant/core/pull/58189 +[#58192]: https://github.com/home-assistant/core/pull/58192 +[#58193]: https://github.com/home-assistant/core/pull/58193 +[#58194]: https://github.com/home-assistant/core/pull/58194 +[#58196]: https://github.com/home-assistant/core/pull/58196 +[#58202]: https://github.com/home-assistant/core/pull/58202 +[#58207]: https://github.com/home-assistant/core/pull/58207 +[#58210]: https://github.com/home-assistant/core/pull/58210 +[#58211]: https://github.com/home-assistant/core/pull/58211 +[#58212]: https://github.com/home-assistant/core/pull/58212 +[#58213]: https://github.com/home-assistant/core/pull/58213 +[#58217]: https://github.com/home-assistant/core/pull/58217 +[#58218]: https://github.com/home-assistant/core/pull/58218 +[#58222]: https://github.com/home-assistant/core/pull/58222 +[#58223]: https://github.com/home-assistant/core/pull/58223 +[#58225]: https://github.com/home-assistant/core/pull/58225 +[#58227]: https://github.com/home-assistant/core/pull/58227 +[#58230]: https://github.com/home-assistant/core/pull/58230 +[#58233]: https://github.com/home-assistant/core/pull/58233 +[#58235]: https://github.com/home-assistant/core/pull/58235 +[#58237]: https://github.com/home-assistant/core/pull/58237 +[#58238]: https://github.com/home-assistant/core/pull/58238 +[#58240]: https://github.com/home-assistant/core/pull/58240 +[#58241]: https://github.com/home-assistant/core/pull/58241 +[#58244]: https://github.com/home-assistant/core/pull/58244 +[#58246]: https://github.com/home-assistant/core/pull/58246 +[#58248]: https://github.com/home-assistant/core/pull/58248 +[#58249]: https://github.com/home-assistant/core/pull/58249 +[#58251]: https://github.com/home-assistant/core/pull/58251 +[#58255]: https://github.com/home-assistant/core/pull/58255 +[#58256]: https://github.com/home-assistant/core/pull/58256 +[#58257]: https://github.com/home-assistant/core/pull/58257 +[#58258]: https://github.com/home-assistant/core/pull/58258 +[#58259]: https://github.com/home-assistant/core/pull/58259 +[#58260]: https://github.com/home-assistant/core/pull/58260 +[#58263]: https://github.com/home-assistant/core/pull/58263 +[#58264]: https://github.com/home-assistant/core/pull/58264 +[#58266]: https://github.com/home-assistant/core/pull/58266 +[#58268]: https://github.com/home-assistant/core/pull/58268 +[#58269]: https://github.com/home-assistant/core/pull/58269 +[#58275]: https://github.com/home-assistant/core/pull/58275 +[#58276]: https://github.com/home-assistant/core/pull/58276 +[#58277]: https://github.com/home-assistant/core/pull/58277 +[#58278]: https://github.com/home-assistant/core/pull/58278 +[#58279]: https://github.com/home-assistant/core/pull/58279 +[#58280]: https://github.com/home-assistant/core/pull/58280 +[#58281]: https://github.com/home-assistant/core/pull/58281 +[#58284]: https://github.com/home-assistant/core/pull/58284 +[#58288]: https://github.com/home-assistant/core/pull/58288 +[#58289]: https://github.com/home-assistant/core/pull/58289 +[#58290]: https://github.com/home-assistant/core/pull/58290 +[#58291]: https://github.com/home-assistant/core/pull/58291 +[#58292]: https://github.com/home-assistant/core/pull/58292 +[#58293]: https://github.com/home-assistant/core/pull/58293 +[#58294]: https://github.com/home-assistant/core/pull/58294 +[#58295]: https://github.com/home-assistant/core/pull/58295 +[#58296]: https://github.com/home-assistant/core/pull/58296 +[#58299]: https://github.com/home-assistant/core/pull/58299 +[#58300]: https://github.com/home-assistant/core/pull/58300 +[#58301]: https://github.com/home-assistant/core/pull/58301 +[#58302]: https://github.com/home-assistant/core/pull/58302 +[#58305]: https://github.com/home-assistant/core/pull/58305 +[#58307]: https://github.com/home-assistant/core/pull/58307 +[#58308]: https://github.com/home-assistant/core/pull/58308 +[#58309]: https://github.com/home-assistant/core/pull/58309 +[#58310]: https://github.com/home-assistant/core/pull/58310 +[#58312]: https://github.com/home-assistant/core/pull/58312 +[#58313]: https://github.com/home-assistant/core/pull/58313 +[#58314]: https://github.com/home-assistant/core/pull/58314 +[#58318]: https://github.com/home-assistant/core/pull/58318 +[#58320]: https://github.com/home-assistant/core/pull/58320 +[#58321]: https://github.com/home-assistant/core/pull/58321 +[#58324]: https://github.com/home-assistant/core/pull/58324 +[#58325]: https://github.com/home-assistant/core/pull/58325 +[#58328]: https://github.com/home-assistant/core/pull/58328 +[#58329]: https://github.com/home-assistant/core/pull/58329 +[#58330]: https://github.com/home-assistant/core/pull/58330 +[#58332]: https://github.com/home-assistant/core/pull/58332 +[#58333]: https://github.com/home-assistant/core/pull/58333 +[#58335]: https://github.com/home-assistant/core/pull/58335 +[#58337]: https://github.com/home-assistant/core/pull/58337 +[#58340]: https://github.com/home-assistant/core/pull/58340 +[#58343]: https://github.com/home-assistant/core/pull/58343 +[#58345]: https://github.com/home-assistant/core/pull/58345 +[#58346]: https://github.com/home-assistant/core/pull/58346 +[#58347]: https://github.com/home-assistant/core/pull/58347 +[#58349]: https://github.com/home-assistant/core/pull/58349 +[#58351]: https://github.com/home-assistant/core/pull/58351 +[#58353]: https://github.com/home-assistant/core/pull/58353 +[#58357]: https://github.com/home-assistant/core/pull/58357 +[#58358]: https://github.com/home-assistant/core/pull/58358 +[#58359]: https://github.com/home-assistant/core/pull/58359 +[#58361]: https://github.com/home-assistant/core/pull/58361 +[#58362]: https://github.com/home-assistant/core/pull/58362 +[#58363]: https://github.com/home-assistant/core/pull/58363 +[#58364]: https://github.com/home-assistant/core/pull/58364 +[#58365]: https://github.com/home-assistant/core/pull/58365 +[#58366]: https://github.com/home-assistant/core/pull/58366 +[#58367]: https://github.com/home-assistant/core/pull/58367 +[#58368]: https://github.com/home-assistant/core/pull/58368 +[#58370]: https://github.com/home-assistant/core/pull/58370 +[#58371]: https://github.com/home-assistant/core/pull/58371 +[#58372]: https://github.com/home-assistant/core/pull/58372 +[#58374]: https://github.com/home-assistant/core/pull/58374 +[#58375]: https://github.com/home-assistant/core/pull/58375 +[#58376]: https://github.com/home-assistant/core/pull/58376 +[#58377]: https://github.com/home-assistant/core/pull/58377 +[#58379]: https://github.com/home-assistant/core/pull/58379 +[#58383]: https://github.com/home-assistant/core/pull/58383 +[#58384]: https://github.com/home-assistant/core/pull/58384 +[#58385]: https://github.com/home-assistant/core/pull/58385 +[#58387]: https://github.com/home-assistant/core/pull/58387 +[#58388]: https://github.com/home-assistant/core/pull/58388 +[#58389]: https://github.com/home-assistant/core/pull/58389 +[#58390]: https://github.com/home-assistant/core/pull/58390 +[#58391]: https://github.com/home-assistant/core/pull/58391 +[#58392]: https://github.com/home-assistant/core/pull/58392 +[#58394]: https://github.com/home-assistant/core/pull/58394 +[#58395]: https://github.com/home-assistant/core/pull/58395 +[#58396]: https://github.com/home-assistant/core/pull/58396 +[#58397]: https://github.com/home-assistant/core/pull/58397 +[#58398]: https://github.com/home-assistant/core/pull/58398 +[#58399]: https://github.com/home-assistant/core/pull/58399 +[#58400]: https://github.com/home-assistant/core/pull/58400 +[#58401]: https://github.com/home-assistant/core/pull/58401 +[#58403]: https://github.com/home-assistant/core/pull/58403 +[#58405]: https://github.com/home-assistant/core/pull/58405 +[#58406]: https://github.com/home-assistant/core/pull/58406 +[#58408]: https://github.com/home-assistant/core/pull/58408 +[#58409]: https://github.com/home-assistant/core/pull/58409 +[#58410]: https://github.com/home-assistant/core/pull/58410 +[#58411]: https://github.com/home-assistant/core/pull/58411 +[#58413]: https://github.com/home-assistant/core/pull/58413 +[#58414]: https://github.com/home-assistant/core/pull/58414 +[#58416]: https://github.com/home-assistant/core/pull/58416 +[#58417]: https://github.com/home-assistant/core/pull/58417 +[#58418]: https://github.com/home-assistant/core/pull/58418 +[#58419]: https://github.com/home-assistant/core/pull/58419 +[#58422]: https://github.com/home-assistant/core/pull/58422 +[#58423]: https://github.com/home-assistant/core/pull/58423 +[#58424]: https://github.com/home-assistant/core/pull/58424 +[#58426]: https://github.com/home-assistant/core/pull/58426 +[#58429]: https://github.com/home-assistant/core/pull/58429 +[#58433]: https://github.com/home-assistant/core/pull/58433 +[#58434]: https://github.com/home-assistant/core/pull/58434 +[#58438]: https://github.com/home-assistant/core/pull/58438 +[#58442]: https://github.com/home-assistant/core/pull/58442 +[#58444]: https://github.com/home-assistant/core/pull/58444 +[#58446]: https://github.com/home-assistant/core/pull/58446 +[#58448]: https://github.com/home-assistant/core/pull/58448 +[#58450]: https://github.com/home-assistant/core/pull/58450 +[#58451]: https://github.com/home-assistant/core/pull/58451 +[#58452]: https://github.com/home-assistant/core/pull/58452 +[#58455]: https://github.com/home-assistant/core/pull/58455 +[#58456]: https://github.com/home-assistant/core/pull/58456 +[#58461]: https://github.com/home-assistant/core/pull/58461 +[#58463]: https://github.com/home-assistant/core/pull/58463 +[#58465]: https://github.com/home-assistant/core/pull/58465 +[#58468]: https://github.com/home-assistant/core/pull/58468 +[#58469]: https://github.com/home-assistant/core/pull/58469 +[#58471]: https://github.com/home-assistant/core/pull/58471 +[#58472]: https://github.com/home-assistant/core/pull/58472 +[#58476]: https://github.com/home-assistant/core/pull/58476 +[#58477]: https://github.com/home-assistant/core/pull/58477 +[#58478]: https://github.com/home-assistant/core/pull/58478 +[#58479]: https://github.com/home-assistant/core/pull/58479 +[#58484]: https://github.com/home-assistant/core/pull/58484 +[#58486]: https://github.com/home-assistant/core/pull/58486 +[#58487]: https://github.com/home-assistant/core/pull/58487 +[#58491]: https://github.com/home-assistant/core/pull/58491 +[#58493]: https://github.com/home-assistant/core/pull/58493 +[#58494]: https://github.com/home-assistant/core/pull/58494 +[#58495]: https://github.com/home-assistant/core/pull/58495 +[#58498]: https://github.com/home-assistant/core/pull/58498 +[#58499]: https://github.com/home-assistant/core/pull/58499 +[#58500]: https://github.com/home-assistant/core/pull/58500 +[#58506]: https://github.com/home-assistant/core/pull/58506 +[#58507]: https://github.com/home-assistant/core/pull/58507 +[#58510]: https://github.com/home-assistant/core/pull/58510 +[#58514]: https://github.com/home-assistant/core/pull/58514 +[#58515]: https://github.com/home-assistant/core/pull/58515 +[#58516]: https://github.com/home-assistant/core/pull/58516 +[#58517]: https://github.com/home-assistant/core/pull/58517 +[#58518]: https://github.com/home-assistant/core/pull/58518 +[#58519]: https://github.com/home-assistant/core/pull/58519 +[#58520]: https://github.com/home-assistant/core/pull/58520 +[#58521]: https://github.com/home-assistant/core/pull/58521 +[#58522]: https://github.com/home-assistant/core/pull/58522 +[#58523]: https://github.com/home-assistant/core/pull/58523 +[#58524]: https://github.com/home-assistant/core/pull/58524 +[#58525]: https://github.com/home-assistant/core/pull/58525 +[#58526]: https://github.com/home-assistant/core/pull/58526 +[#58527]: https://github.com/home-assistant/core/pull/58527 +[#58531]: https://github.com/home-assistant/core/pull/58531 +[#58533]: https://github.com/home-assistant/core/pull/58533 +[#58534]: https://github.com/home-assistant/core/pull/58534 +[#58539]: https://github.com/home-assistant/core/pull/58539 +[#58540]: https://github.com/home-assistant/core/pull/58540 +[#58545]: https://github.com/home-assistant/core/pull/58545 +[@ANMalko]: https://github.com/ANMalko +[@Adminiuga]: https://github.com/Adminiuga +[@Bre77]: https://github.com/Bre77 +[@Cereal2nd]: https://github.com/Cereal2nd +[@ColinRobbins]: https://github.com/ColinRobbins +[@Danielhiversen]: https://github.com/Danielhiversen +[@Drafteed]: https://github.com/Drafteed +[@FlavorFx]: https://github.com/FlavorFx +[@JJJ]: https://github.com/JJJ +[@JeffLIrion]: https://github.com/JeffLIrion +[@Kane610]: https://github.com/Kane610 +[@L-I-Am]: https://github.com/L-I-Am +[@MartinHjelmare]: https://github.com/MartinHjelmare +[@MatthewFlamm]: https://github.com/MatthewFlamm +[@Misiu]: https://github.com/Misiu +[@NickM-27]: https://github.com/NickM-27 +[@Noltari]: https://github.com/Noltari +[@OGKevin]: https://github.com/OGKevin +[@OttoWinter]: https://github.com/OttoWinter +[@Petro31]: https://github.com/Petro31 +[@RenierM26]: https://github.com/RenierM26 +[@RobertMe]: https://github.com/RobertMe +[@StevenLooman]: https://github.com/StevenLooman +[@TheLastProject]: https://github.com/TheLastProject +[@TheNogl]: https://github.com/TheNogl +[@TomBrien]: https://github.com/TomBrien +[@abmantis]: https://github.com/abmantis +[@alexanv1]: https://github.com/alexanv1 +[@allenporter]: https://github.com/allenporter +[@ammgws]: https://github.com/ammgws +[@andre-richter]: https://github.com/andre-richter +[@asansano]: https://github.com/asansano +[@austinmroczek]: https://github.com/austinmroczek +[@avee87]: https://github.com/avee87 +[@b-pass]: https://github.com/b-pass +[@bachya]: https://github.com/bachya +[@balloob]: https://github.com/balloob +[@bdraco]: https://github.com/bdraco +[@benleb]: https://github.com/benleb +[@bieniu]: https://github.com/bieniu +[@bjpetit]: https://github.com/bjpetit +[@bokub]: https://github.com/bokub +[@bouwew]: https://github.com/bouwew +[@bramkragten]: https://github.com/bramkragten +[@brianegge]: https://github.com/brianegge +[@briglx]: https://github.com/briglx +[@cdce8p]: https://github.com/cdce8p +[@cgtobi]: https://github.com/cgtobi +[@chemelli74]: https://github.com/chemelli74 +[@chishm]: https://github.com/chishm +[@chrillebile]: https://github.com/chrillebile +[@cisasteelersfan]: https://github.com/cisasteelersfan +[@cmroche]: https://github.com/cmroche +[@danielperna84]: https://github.com/danielperna84 +[@davet2001]: https://github.com/davet2001 +[@davidlb]: https://github.com/davidlb +[@dboslee]: https://github.com/dboslee +[@dennisschroer]: https://github.com/dennisschroer +[@devbis]: https://github.com/devbis +[@dgomes]: https://github.com/dgomes +[@dkt01]: https://github.com/dkt01 +[@dmulcahey]: https://github.com/dmulcahey +[@drinfernoo]: https://github.com/drinfernoo +[@drizzle1]: https://github.com/drizzle1 +[@eavanvalkenburg]: https://github.com/eavanvalkenburg +[@eifinger]: https://github.com/eifinger +[@elupus]: https://github.com/elupus +[@emontnemery]: https://github.com/emontnemery +[@epenet]: https://github.com/epenet +[@fOmey]: https://github.com/fOmey +[@farmio]: https://github.com/farmio +[@felipediel]: https://github.com/felipediel +[@firstof9]: https://github.com/firstof9 +[@flabbamann]: https://github.com/flabbamann +[@fredrike]: https://github.com/fredrike +[@frenck]: https://github.com/frenck +[@garbled1]: https://github.com/garbled1 +[@ggravlingen]: https://github.com/ggravlingen +[@gjong]: https://github.com/gjong +[@gwww]: https://github.com/gwww +[@hesselonline]: https://github.com/hesselonline +[@icemanch]: https://github.com/icemanch +[@indykoning]: https://github.com/indykoning +[@itairaz1]: https://github.com/itairaz1 +[@janiversen]: https://github.com/janiversen +[@jasonmadigan]: https://github.com/jasonmadigan +[@javicalle]: https://github.com/javicalle +[@jbouwh]: https://github.com/jbouwh +[@jesserockz]: https://github.com/jesserockz +[@jjlawren]: https://github.com/jjlawren +[@jrester]: https://github.com/jrester +[@klaasnicolaas]: https://github.com/klaasnicolaas +[@koying]: https://github.com/koying +[@krys1976]: https://github.com/krys1976 +[@lanrat]: https://github.com/lanrat +[@lkempf]: https://github.com/lkempf +[@ludeeus]: https://github.com/ludeeus +[@lukas-hetzenecker]: https://github.com/lukas-hetzenecker +[@marvin-w]: https://github.com/marvin-w +[@mib1185]: https://github.com/mib1185 +[@michaeldavie]: https://github.com/michaeldavie +[@milanmeu]: https://github.com/milanmeu +[@muppet3000]: https://github.com/muppet3000 +[@natekspencer]: https://github.com/natekspencer +[@nihaals]: https://github.com/nihaals +[@oischinger]: https://github.com/oischinger +[@ol-iver]: https://github.com/ol-iver +[@ollo69]: https://github.com/ollo69 +[@pabigot]: https://github.com/pabigot +[@pattyland]: https://github.com/pattyland +[@paulmonigatti]: https://github.com/paulmonigatti +[@peternijssen]: https://github.com/peternijssen +[@raman325]: https://github.com/raman325 +[@rdfurman]: https://github.com/rdfurman +[@regevbr]: https://github.com/regevbr +[@rfleming71]: https://github.com/rfleming71 +[@rik-v]: https://github.com/rik-v +[@rikroe]: https://github.com/rikroe +[@rklomp]: https://github.com/rklomp +[@ronalterde]: https://github.com/ronalterde +[@rytilahti]: https://github.com/rytilahti +[@sagioto]: https://github.com/sagioto +[@scop]: https://github.com/scop +[@shbatm]: https://github.com/shbatm +[@some-guy-in-oz]: https://github.com/some-guy-in-oz +[@spacegaier]: https://github.com/spacegaier +[@spahlimi]: https://github.com/spahlimi +[@starkillerOG]: https://github.com/starkillerOG +[@terminet85]: https://github.com/terminet85 +[@thecode]: https://github.com/thecode +[@thomas-svrts]: https://github.com/thomas-svrts +[@timmo001]: https://github.com/timmo001 +[@tkdrob]: https://github.com/tkdrob +[@tomer-w]: https://github.com/tomer-w +[@tylergibson]: https://github.com/tylergibson +[@uvjustin]: https://github.com/uvjustin +[@vigonotion]: https://github.com/vigonotion +[@yeahme49]: https://github.com/yeahme49 +[@yuvalabou]: https://github.com/yuvalabou +[@zacwest]: https://github.com/zacwest +[@zlinoliver]: https://github.com/zlinoliver +[accuweather docs]: /integrations/accuweather/ +[acmeda docs]: /integrations/acmeda/ +[adax docs]: /integrations/adax/ +[advantage_air docs]: /integrations/advantage_air/ +[aemet docs]: /integrations/aemet/ +[aftership docs]: /integrations/aftership/ +[agent_dvr docs]: /integrations/agent_dvr/ +[air_quality docs]: /integrations/air_quality/ +[airthings docs]: /integrations/airthings/ +[airvisual docs]: /integrations/airvisual/ +[alexa docs]: /integrations/alexa/ +[ambee docs]: /integrations/ambee/ +[amberelectric docs]: /integrations/amberelectric/ +[ambient_station docs]: /integrations/ambient_station/ +[apple_tv docs]: /integrations/apple_tv/ +[arcam_fmj docs]: /integrations/arcam_fmj/ +[arlo docs]: /integrations/arlo/ +[asuswrt docs]: /integrations/asuswrt/ +[august docs]: /integrations/august/ +[aurora_abb_powerone docs]: /integrations/aurora_abb_powerone/ +[auth docs]: /integrations/auth/ +[automation docs]: /integrations/automation/ +[awair docs]: /integrations/awair/ +[axis docs]: /integrations/axis/ +[bayesian docs]: /integrations/bayesian/ +[bbox docs]: /integrations/bbox/ +[binary_sensor docs]: /integrations/binary_sensor/ +[bitcoin docs]: /integrations/bitcoin/ +[blink docs]: /integrations/blink/ +[bmw_connected_drive docs]: /integrations/bmw_connected_drive/ +[bond docs]: /integrations/bond/ +[bosch_shc docs]: /integrations/bosch_shc/ +[broadlink docs]: /integrations/broadlink/ +[brother docs]: /integrations/brother/ +[buienradar docs]: /integrations/buienradar/ +[camera docs]: /integrations/camera/ +[cast docs]: /integrations/cast/ +[clickatell docs]: /integrations/clickatell/ +[climacell docs]: /integrations/climacell/ +[climate docs]: /integrations/climate/ +[cloud docs]: /integrations/cloud/ +[co2signal docs]: /integrations/co2signal/ +[coinbase docs]: /integrations/coinbase/ +[config docs]: /integrations/config/ +[control4 docs]: /integrations/control4/ +[daikin docs]: /integrations/daikin/ +[darksky docs]: /integrations/darksky/ +[debugpy docs]: /integrations/debugpy/ +[deconz docs]: /integrations/deconz/ +[demo docs]: /integrations/demo/ +[denonavr docs]: /integrations/denonavr/ +[device_automation docs]: /integrations/device_automation/ +[devolo_home_control docs]: /integrations/devolo_home_control/ +[dhcp docs]: /integrations/dhcp/ +[directv docs]: /integrations/directv/ +[discord docs]: /integrations/discord/ +[discovery docs]: /integrations/discovery/ +[dlna_dmr docs]: /integrations/dlna_dmr/ +[ecobee docs]: /integrations/ecobee/ +[efergy docs]: /integrations/efergy/ +[eight_sleep docs]: /integrations/eight_sleep/ +[elkm1 docs]: /integrations/elkm1/ +[emulated_hue docs]: /integrations/emulated_hue/ +[energy docs]: /integrations/energy/ +[enocean docs]: /integrations/enocean/ +[environment_canada docs]: /integrations/environment_canada/ +[eq3btsmart docs]: /integrations/eq3btsmart/ +[esphome docs]: /integrations/esphome/ +[essent docs]: /integrations/essent/ +[ezviz docs]: /integrations/ezviz/ +[fan docs]: /integrations/fan/ +[feedreader docs]: /integrations/feedreader/ +[fibaro docs]: /integrations/fibaro/ +[fitbit docs]: /integrations/fitbit/ +[fjaraskupan docs]: /integrations/fjaraskupan/ +[flunearyou docs]: /integrations/flunearyou/ +[flux_led docs]: /integrations/flux_led/ +[folder_watcher docs]: /integrations/folder_watcher/ +[forecast_solar docs]: /integrations/forecast_solar/ +[freebox docs]: /integrations/freebox/ +[fritz docs]: /integrations/fritz/ +[fritzbox docs]: /integrations/fritzbox/ +[fritzbox_callmonitor docs]: /integrations/fritzbox_callmonitor/ +[fronius docs]: /integrations/fronius/ +[frontend docs]: /integrations/frontend/ +[gios docs]: /integrations/gios/ +[goalzero docs]: /integrations/goalzero/ +[gogogate2 docs]: /integrations/gogogate2/ +[google_assistant docs]: /integrations/google_assistant/ +[google_travel_time docs]: /integrations/google_travel_time/ +[gree docs]: /integrations/gree/ +[group docs]: /integrations/group/ +[growatt_server docs]: /integrations/growatt_server/ +[guardian docs]: /integrations/guardian/ +[hassio docs]: /integrations/hassio/ +[hive docs]: /integrations/hive/ +[homeassistant docs]: /integrations/homeassistant/ +[homekit docs]: /integrations/homekit/ +[homekit_controller docs]: /integrations/homekit_controller/ +[homematic docs]: /integrations/homematic/ +[homematicip_cloud docs]: /integrations/homematicip_cloud/ +[honeywell docs]: /integrations/honeywell/ +[huawei_lte docs]: /integrations/huawei_lte/ +[huawei_router docs]: /integrations/huawei_router/ +[hue docs]: /integrations/hue/ +[huisbaasje docs]: /integrations/huisbaasje/ +[hunterdouglas_powerview docs]: /integrations/hunterdouglas_powerview/ +[input_datetime docs]: /integrations/input_datetime/ +[input_select docs]: /integrations/input_select/ +[iqvia docs]: /integrations/iqvia/ +[iss docs]: /integrations/iss/ +[isy994 docs]: /integrations/isy994/ +[jewish_calendar docs]: /integrations/jewish_calendar/ +[juicenet docs]: /integrations/juicenet/ +[keyboard_remote docs]: /integrations/keyboard_remote/ +[kira docs]: /integrations/kira/ +[knx docs]: /integrations/knx/ +[kraken docs]: /integrations/kraken/ +[lg_netcast docs]: /integrations/lg_netcast/ +[light docs]: /integrations/light/ +[litterrobot docs]: /integrations/litterrobot/ +[local_ip docs]: /integrations/local_ip/ +[lookin docs]: /integrations/lookin/ +[lutron_caseta docs]: /integrations/lutron_caseta/ +[lyft docs]: /integrations/lyft/ +[media_player docs]: /integrations/media_player/ +[media_source docs]: /integrations/media_source/ +[meteo_france docs]: /integrations/meteo_france/ +[metoffice docs]: /integrations/metoffice/ +[microsoft docs]: /integrations/microsoft/ +[mill docs]: /integrations/mill/ +[mobile_app docs]: /integrations/mobile_app/ +[modbus docs]: /integrations/modbus/ +[modem_callerid docs]: /integrations/modem_callerid/ +[motion_blinds docs]: /integrations/motion_blinds/ +[motioneye docs]: /integrations/motioneye/ +[mqtt docs]: /integrations/mqtt/ +[myq docs]: /integrations/myq/ +[mysensors docs]: /integrations/mysensors/ +[mystrom docs]: /integrations/mystrom/ +[nam docs]: /integrations/nam/ +[nanoleaf docs]: /integrations/nanoleaf/ +[neato docs]: /integrations/neato/ +[nello docs]: /integrations/nello/ +[nest docs]: /integrations/nest/ +[netatmo docs]: /integrations/netatmo/ +[netgear docs]: /integrations/netgear/ +[nexia docs]: /integrations/nexia/ +[nfandroidtv docs]: /integrations/nfandroidtv/ +[notify docs]: /integrations/notify/ +[notion docs]: /integrations/notion/ +[nuheat docs]: /integrations/nuheat/ +[nuki docs]: /integrations/nuki/ +[number docs]: /integrations/number/ +[nut docs]: /integrations/nut/ +[nws docs]: /integrations/nws/ +[octoprint docs]: /integrations/octoprint/ +[ondilo_ico docs]: /integrations/ondilo_ico/ +[onewire docs]: /integrations/onewire/ +[opengarage docs]: /integrations/opengarage/ +[openuv docs]: /integrations/openuv/ +[openweathermap docs]: /integrations/openweathermap/ +[orangepi_gpio docs]: /integrations/orangepi_gpio/ +[otp docs]: /integrations/otp/ +[ozw docs]: /integrations/ozw/ +[p1_monitor docs]: /integrations/p1_monitor/ +[persistent_notification docs]: /integrations/persistent_notification/ +[pi_hole docs]: /integrations/pi_hole/ +[picnic docs]: /integrations/picnic/ +[plex docs]: /integrations/plex/ +[plugwise docs]: /integrations/plugwise/ +[point docs]: /integrations/point/ +[powerwall docs]: /integrations/powerwall/ +[quantum_gateway docs]: /integrations/quantum_gateway/ +[rachio docs]: /integrations/rachio/ +[rainforest_eagle docs]: /integrations/rainforest_eagle/ +[rainmachine docs]: /integrations/rainmachine/ +[recollect_waste docs]: /integrations/recollect_waste/ +[recorder docs]: /integrations/recorder/ +[renault docs]: /integrations/renault/ +[repetier docs]: /integrations/repetier/ +[rest docs]: /integrations/rest/ +[rfxtrx docs]: /integrations/rfxtrx/ +[roku docs]: /integrations/roku/ +[roomba docs]: /integrations/roomba/ +[roon docs]: /integrations/roon/ +[rpi_power docs]: /integrations/rpi_power/ +[ruckus_unleashed docs]: /integrations/ruckus_unleashed/ +[scrape docs]: /integrations/scrape/ +[screenlogic docs]: /integrations/screenlogic/ +[script docs]: /integrations/script/ +[sense docs]: /integrations/sense/ +[sensor docs]: /integrations/sensor/ +[sentry docs]: /integrations/sentry/ +[seventeentrack docs]: /integrations/seventeentrack/ +[sharkiq docs]: /integrations/sharkiq/ +[shelly docs]: /integrations/shelly/ +[sia docs]: /integrations/sia/ +[simplisafe docs]: /integrations/simplisafe/ +[sma docs]: /integrations/sma/ +[smappee docs]: /integrations/smappee/ +[smartthings docs]: /integrations/smartthings/ +[smarttub docs]: /integrations/smarttub/ +[sms docs]: /integrations/sms/ +[solarlog docs]: /integrations/solarlog/ +[soma docs]: /integrations/soma/ +[somfy docs]: /integrations/somfy/ +[sonarr docs]: /integrations/sonarr/ +[sonos docs]: /integrations/sonos/ +[speedtestdotnet docs]: /integrations/speedtestdotnet/ +[spider docs]: /integrations/spider/ +[spotify docs]: /integrations/spotify/ +[srp_energy docs]: /integrations/srp_energy/ +[ssdp docs]: /integrations/ssdp/ +[statistics docs]: /integrations/statistics/ +[stookalert docs]: /integrations/stookalert/ +[stream docs]: /integrations/stream/ +[suez_water docs]: /integrations/suez_water/ +[surepetcare docs]: /integrations/surepetcare/ +[switchbot docs]: /integrations/switchbot/ +[synology_dsm docs]: /integrations/synology_dsm/ +[system_bridge docs]: /integrations/system_bridge/ +[systemmonitor docs]: /integrations/systemmonitor/ +[tado docs]: /integrations/tado/ +[tasmota docs]: /integrations/tasmota/ +[tautulli docs]: /integrations/tautulli/ +[tellduslive docs]: /integrations/tellduslive/ +[template docs]: /integrations/template/ +[tibber docs]: /integrations/tibber/ +[tile docs]: /integrations/tile/ +[toon docs]: /integrations/toon/ +[totalconnect docs]: /integrations/totalconnect/ +[tplink docs]: /integrations/tplink/ +[trace docs]: /integrations/trace/ +[tractive docs]: /integrations/tractive/ +[tradfri docs]: /integrations/tradfri/ +[tuya docs]: /integrations/tuya/ +[unifi docs]: /integrations/unifi/ +[universal docs]: /integrations/universal/ +[upb docs]: /integrations/upb/ +[upnp docs]: /integrations/upnp/ +[uptimerobot docs]: /integrations/uptimerobot/ +[utility_meter docs]: /integrations/utility_meter/ +[vallox docs]: /integrations/vallox/ +[velbus docs]: /integrations/velbus/ +[venstar docs]: /integrations/venstar/ +[verisure docs]: /integrations/verisure/ +[vicare docs]: /integrations/vicare/ +[vizio docs]: /integrations/vizio/ +[vlc_telnet docs]: /integrations/vlc_telnet/ +[wallbox docs]: /integrations/wallbox/ +[waqi docs]: /integrations/waqi/ +[watson_tts docs]: /integrations/watson_tts/ +[watttime docs]: /integrations/watttime/ +[waze_travel_time docs]: /integrations/waze_travel_time/ +[weather docs]: /integrations/weather/ +[websocket_api docs]: /integrations/websocket_api/ +[whirlpool docs]: /integrations/whirlpool/ +[wilight docs]: /integrations/wilight/ +[wink docs]: /integrations/wink/ +[withings docs]: /integrations/withings/ +[wled docs]: /integrations/wled/ +[xbox docs]: /integrations/xbox/ +[xiaomi_aqara docs]: /integrations/xiaomi_aqara/ +[xiaomi_miio docs]: /integrations/xiaomi_miio/ +[yamaha docs]: /integrations/yamaha/ +[yamaha_musiccast docs]: /integrations/yamaha_musiccast/ +[yandex_transport docs]: /integrations/yandex_transport/ +[yeelight docs]: /integrations/yeelight/ +[youless docs]: /integrations/youless/ +[zeroconf docs]: /integrations/zeroconf/ +[zha docs]: /integrations/zha/ +[zwave docs]: /integrations/zwave/ +[zwave_js docs]: /integrations/zwave_js/ diff --git a/source/images/blog/2021-11/social.png b/source/images/blog/2021-11/social.png new file mode 100644 index 0000000000000000000000000000000000000000..c71a62e6893ca71af3ae2fc9c43aa93085d50fe2 GIT binary patch literal 82891 zcmbSz1yI|;*I@AADeeS^;!-HZLU1WioZ{}T#VNtvp+yR`xVuv*?k>eCR$Ph~xX}MM z-_18SH*<3{nFKcbcAxK)-zGvuNd_B(3_DBRpL5why<;?-HG>5J40#E4U{=_i z9-cLa|L8Ls9)-`ZXM_1JDZKKUhk3x^PR)`N+!K5`=f1!t_r?2T72&By+AFUI$I}N! zH+=v=g;e}TXy*A#fOt6B3>@hhc~AwiuV!t4R&b78_haf35+G1s8+iN3Z^ZPydfRBCV>omEoSl=I#fxt!6Qkvoal zDfXPguZo;W-^oeR`f3H2C%{Rr{roXJ#lT5dQ}|Ay@Hbu^3II$8f>ybb!|)%4?JbE` zn6uePG%{x6x^>zoIyq|*0lq?{w{t#iGBN>)J>4{hd1xX+oND>0b_u)z+{Rkwnir{i&G#Sr7B6Iw0eXvHtM|w>{py&xh38DG z_PlG1zDT(s0KULf5Z0Z>iW9Lzm6|f}hk~?$otagoJf+$+%g=Bs!UHgOiKtKxhQOrh zp-h&$X#JXCH6E*EMF2n+I12)d4VLC&YtEu?TWMv2-oSBhBkV!X#Q-cwC@Gb)Dt(7t zUhu7Y%dPKdX7$eMQ=*bFynu5#7enc5XEC1hqS0kmd_z$W5^?!@fo6Lm6bQFW;br@( zCe`Kj87yxGk@3q6wh9BvstIOmxV`|pB3ME&Hv|Qp`L+F+eDjPV!(d9yxVz2S0gP2Y#YqieQz=!!y9xu&p`A;Bv!$ zu6~WHjE^swZ$M$fji@j0@4te((&CO7ZR+%XA274$((c&nm=PdA<6xMJ>K=?`d#27s zTC=%8E{h*ZUM9{|rvDFtRni8X4;p5No8HX=$z3d@?z8AU_ozA9Z~duz3+oQCJ@w(G|NROELLc+^mS#)Sa`-e%1p;2P=S!C{(Um;yur|Fz0X*Xe zM-u8K73`smmZ95*-AA+t?$RGSUqqurn}#|Id)*X9A9H6DO*NuCFAz8*ykuK*l%`>3 zxjoVD2bbSJ8oOR}t!LuOgw)t&Fa8nK6@))+V*<#<&d$*~ zvBS0Jk~9nUNI2V5Rxwn3jqCBb2lHVLAB9)gUM7xwji4LP`m#p)=@sxhGUuonk z-$9(7qmpi0umSMeND~k^-e*trE_7UJxI`I4YrLgJP6l@yCA{--?|_OuF(GXe24a_g zDGN*@!p&BB50w`56_^YQcSzccUTC%cf!$pecjG!1gC{&}>4>AV!7j1a%^t?4-CIgF z^NWRM>#N3Cdsbidk}_P038)NKixO-&7RA|_V6yOY5_8hAE?{S6fx)sP=V!hrE!;aG z;6VdnAd1IU@iz@U`ZDIhD~vBLb&2r=BX4f(p`s-9I&QBfoPmXuk)3;z>G&Pa(fEnj zqLZe})5STRADW_a3bK5DUV4U>2kfqx5@&A=8UwQ^=cDQ~K(uf#u{>>EwU=jmJNg(d z%G~=2KQmfs4gf%>fk1&cnemzoXv|D@Kfx%@mb)`TKNU&`C=eRE_VP!jv4J&d{=H0u zTb5`9WO#;KR9i4#**#b;_Bndnj3XHp{>(3wq$kd6H?p`(3SmFf(lL+sDf_-{AkB?S z5GSlPix2>=U&lz*#BucSX&oS^-k|n8M}V|}@}%(aIAK=rR1*w=;_@4rpWZn*%*LsT zI|Q3pZ*UMF6Aa0GBM!k~a_dHE`P%RMC5mg6q^|6BJ(gH#>^bv~G+nr=5YO3OdyEuF;uti;t(CVI3yVQX8GZa{r}@|)q`=HTT$3Ep1mAE`S{&&cg+ur7Kl zzi2Uxwe*vx&*S_dQO+WzuQ^eet`~ni)5m3MCe?y(YVUDJHKIFx>2BGp$AKJ}P0j9q z=5*UC!y5h3+MHl5oy~PgtgUfk*7Qh{+~+**klpvrC?ePuLrJpOwubx6%GV_zfq>E8 zUFVd`7;ka(_GiMm&_#Ri1;xqPI2Btp$au@}N9plZM;qw%Lut}%`Z(Rav;8X$`CgY& z-r(i^lhL((vFregPEkQ(meW0zAl(_y*|_$spwrZ#_2%2{PxX5%6E7o~wpf4lHWRiU z?Ovxo2HrlLZ=7GpYNqR~e#U}b@7Vrgxa;gf%1v|YX^nov8Hp-zxkW{O7miwgQK%Tq z$0xXbS}YgT*TJp5AS8QBCd8w zXxVu6NR7?>Hu>eaTQF(Ya8)pyGfu(g7f>>#zWRx|{15vbQojjG3kBhreDp%sfxE#1 zE>^=HEsCgfsUiwC4ub&VR8y6(Nh5CAC!x6qA4G!W2;0j6)dEX}n1Jk@ojb<_rg`z8 zg^(bL%MD!K=I+s?QFRPN{V(3C60#k$?qPBiF;7pWzk1(_WG!iA>S(^#h-V7Lur)d~ zO5u{GFB%=9`Ex$cey31-<-hyD!_C(GdoSvTOzaMMr>F))nt0lgwaK*#3D0M5R=8N3J6pE_a-j!86~sMfHkD02SI> zc5hQD_RlS9*=3iptBf%+IonV?3}o9XOhlC2-_sn;>P)nGf&cJ@gWlX!S2K*|aa*e# z@mm9D&c~ALp4fSfeaVu$BFYPtke~&sNV(Z-?st~5bLscHrW|mHXgcGn( zu<@8QqLQNMs(&(iYWaJXyj*U1>+Z0f)Tx?OJ~YREn=ZLe3mbHiNd?MV+G}z)C#hR#vTPEi0=9dB4`08tV8D_bk0mhRE)XYs zbfGxvvLXrBB4G=nAqCxBBImtm;En7{i$ zCN1=a19n5$44<~Je|^Vo(FU%Ze@`#dt=EEeHvbT^hl76Vfps0e!jA`?gwcx~M@ zm_J;^`+EL>zx!hK{!1b=Vuob#*ADOus1|A8F7JDxW62jX8D#Pht~Vd>F}8JYc+xne z1m$C^puBVpT(*VpC*q^asvD|Wqd^l{)j|Lm2`@fFy@^7yZTFtnV!~$WeK+5e zA^~k|s00G~0Yp~7gt0rr`cf*8>1En5QZ6wrEDHsu>*F%M!Px={E+8VuDGIk0)GVGB z;f|J|Q!tBV+jr7e1q&yZPAf}^+I7BQ@l-Rc(2hcdhI};6@Ez0^q zVPm_pqTc-xP9^mS*l!#DW;VL$BK0__`x2|q_~#8Is}#-l;tAa1PYRW6XfHlH?nR}@Cgp~Wk)bb%WIv32dq!J?g=&e<1@xl1=*U+AT(sUy9 z5Yk)Mr8?jL1~lY_+mz@YdI^#^>$`2&GC(WReNFuL*zMJ0rmEiiWB7U5DaPKuxp<${ zS+P3v&(kKO>#P{mNCxx8E)oEVAF?7b!`+);S*JlF;@=XmfW@-nTHLsgmv)!!#XN$% zq}^ILY3AT9&lT=f*Af#NF&b`H#t}SV+Fke#^$PiV)_u)evKd8fd0b#|W+^UvC$C9? zZE$^+OfL;uB%j@h0wwVGps!BJ-jD7uFO?+0KCXdyRha%+fEW2N}aML38v-Q}Bva zDy!1#*Gp$dwP2q!$R0z#GTwIp;i*KU5eF}7H`IRPgxO=CGdRt5$S>J%=ms(%HoJDs zUURUdW?p9Y`pXbRHlRC-Etb1GHJ6>S4i}bt7eo-_YteKX8U4{B5f5a-`eT=UYW)Y5 zCFTc$SfDf)4QajxcsZav7Mp9bYw`1U%%Xb5&-As6%qAMs`zQ%G8AvAdxzSDiAEm## zZ?3`^II2ENdDn1PTp4=hP_mE-$;)N`NHhDYNJCwaS!E#oAi~|iSC6b5_##3vzpF8)pIkT<06kJL9W^ZwirH0Ua;gGf2jD01}*H*W&jOk7y&C%v)D$i=e5(O08p#=^Si0s zymt4mzkWrm2XR$;=Lxb!`8&!H)K;A=4^)&1_gxPe;>|QQPA^13=n(ER#NeX zQ}BEU1gr>Bp)^FIAtM<+IFEv$ZN@2(gg5s9x|fCbWF*#&|G(hCPs@DRI6 z=wdWkAf6Wo5!O-iY6;f$Nff+fz=)xRW!t%ng=X!UU?VRMDvAuz=Ced9HU5AzdKcAO zU}zy&v?PnzKrlYyQ_LBzyVbUgwKr-U*5?&Q;*d=KAE!4rD}y+Goo{sXee|UsDNtZz z%4&6zNV&$1)YOrIr7~d{p@r*5Y)rOY9iR3Bxr0EsFMeb{y%`e1TCz}(iA9B0hE=|W z8)rdPIfHG^Rfb9>qI#fJIhP0rx0k0CSdway93syQ;o884Fi(KjbDd`R@!|ZW*ia%O z8^|yTKBPw(-kI3-QgmBYRs@v(Sx+Eu5$})ywUj@c1NOcfh zICzFQpb7?jALZwJe8KJHe3D`&k99w~%dl7Y)X9`{|i1`}IfjUH$%u zC2leRdfZL4LaAs_+ItbAKB}JzvSP9{hUZj^NTj5 zZfCOK$eIMz_#24_POETo)oc->pM~ zz2s!zAo_S6f{s13TYti{PX?l;Z>H%Qd1B`=p62fGETc6XWN*K6bcfzIa?Ecc?}fWg37y7Ufevjc*h zE$=#!$8uTv^~yR`cRXSd;Y`mNo4}62? zMd=G!utV#cc7dLs*Y@?RHAEU($H%k#BcYmce-EvkH5JuOOW#Xt-Uh9l*jz!ZxIA!S zaCBa6O$?e~FOkaMVbCD9YUw1u%E=a;biFHxmnxg}rQJOO z%{%7B&ih3f5NP=CO-66c*(UF}KwYre?CC1!2|tv1=O2wEy+_e7ZNihU^7# zHO@U}Bv4Ly^8o+4iMkF!#q=5ZP(hBz?taVn0H}V7LH&h1!f#zQG+rJ+bTzR;j11or$%9MJJ@n%c4nBN4!I33-Pg8hsAUUWWp zFzXB>)cd@HYpohbD66)<5i8upa~bCmRZ+ z-9SU@sz7Bm5%XH(o=^Asqf|il*cBw2-`8GVI!j`HRWPCBdB)*AD#aoB?(8NsDDJZw zyg`S}pnI7)o<@>_YJmF;(P4VJNZQik_1kznXxq%O)YL$92hD&P7J*Z@Z@UBq*N}x| z)M8Ze)PV|eL8pyPx_$l$sNe0q2U^idB|UOC7k&rV`>p5=JOVSGcnyM*{cqkMnwdgs zpQPOuE+AHW?ZxtmiQBy`nM9RSYS8go!j_kRE{<^7v`=x&U0nVBcyun`$0MB}?MI2) zSRlH0J}0q{3;F=4i%D9~{qlyYEhmY+j)Yo*% zf`MDS$bP|Pa4xs>l>zI`SGS1OHV)5!KHdW@FrM&o+_E6Vp$zVTAbY*=JhS{^O*B5h z`UQ;{IGMbl(`gZXTZo1ndmaA{LjQwPS@RcwCRF^02P5Y1v3iPV{?&s~Nn2mgsfh{L z*Ws(v5?~+;6DfB&j0@jkfAGb;TfGK&%e+8|a(AU~VY;J@Gg^*Qc%Q`w%!kmuRAl?p zAKS3WL)%&`<_UVYsInLs{00R-zE_x5dj`8Ow8-&e26r!z>(D~$2r0ML)Dr+~-N|Jr zGlf_Ao{=@)Mcf#DI9;NZB?07mP{$lu<)(9a?p6qkMo#D_e&r$a=fWlGu1qq~FRr4* zhH)OT=H-W3b4}{!nkhIQ%YP#TOUh1vL@XJ<&l@n6xrq6Lzc0@@PbY{AlZJS$WqTlZ zD^uHHf+;%QCt>bc;=hYPpWOV?;Z&qvqMM$d@xeW*BO=2e?ne^J1q+2febSF;$y}IxFlT9 z=t(nRWd+d>-?m@MT96V-(po>7 zy>T3a{+s3Vh_3&T$}~GsZEu?#MG)x6j)xX@;6(j%o#8dZ3&t-v$3YYSiU;Kp8l3wh$^Yvo|Kn@bC_EBNV}F5`cF1X2*m&hGsb&5zp1U^{@OxOPWvX&VS-^is`WvtQ zZsc%#2yFmur`%_@?h0e@F1MPK!(fTxYZ02}>%7y_5u2+(PcL85Le@K+|O zm((x8^tK636a`C7jnW@i{8BgL8XNV%G{+>c`_F&Qguk7~ZN$VQl>J8}D3$vAwJj}x^cp8YI#e$#vNr&9RVAN>ch>2=uZ~Cik38~pR zQ{Vaa+2+sV{hYkOiHGXX9goMW`02PFe#%r;5fsBI`&bUEjYl?T(eOQ-!ClkW=}kp7 zR=REY*|CV-b2#_kn8A9b^7Zf<+Srg1EIF}_Trud>w;7=%h=F3`B21q7j!_XFR*%OK z4bn;gw*G=lCc&IkGk2yGt}zH3{$Im|rS;IHHtZ3M7lFXRqTH6VqI9<{_3DJH?UVzM zswccYhYk{D_TD;ga$j$Wqzv_|_ORU|9=v&Dw?BGe^>@$9e9NXi1QW5y*Cb%__j5FH z-JdN2@((D%%iu&KSYEJoBf^Ej4|z^_l&Yh%6^2%%BGv(bu{T8FvL#b*W3R8q_Di*Zv-xN3~3ToEvAW8q+V&v@m2S*xT>o0J0kS~*s6<@V`sg3EhA zv{AJIPuUQ`%2nFAVoaN2!`+j&8e83e7&-D+&Hq%a1hrvK2OX5i7fm?CSTVbdm(9KE zq7U&r<5bdAW*FR0s2r`*6Z)xf&yjx|C*qU#PL*TuHr0v2PgQ%bZMevj^m2+69#y+w z&@}v6|EV>>mPP<%xhw3rNvqX(eOeyTymm{9=JJ|2cXc>J1pt*_svcrZURh03<4cz{ zT$`+1lNdwFtpRml1!JSGpS?ud$V-T4N2MIqCfv33F>Fao+d?}phgX4-fdW@shRRLgSiZ<{Xwi5 z2!qVqB^Jm+=JDv+#KCVwJ&>R(@2jS??+{)9&teYub@uoV4waSFQMw>si5KDRzO|f+ zAc*z7GEGb&{Q|tF~ z%6+lVVg+`s^1WWs=lfu>?Bc#IYz(HRh368^;{tr@2g{_7_X?sX|K*pdfbfQAHWkZP zY*^s)|N+r#u6ttt0&U8$aTo4ecLOKMPnBc|3kAvG2S3OV(QG;FkXLMSz-`lCYXud0QEiC}a{=7i z;xjyFEAR%;pQ&X&n8t4LMz;{axEr<2`Ukk6J0)EupN=A&J>hAV8b45F5-i2Y?>0VZ zH02%qCK@#96pl3V9uW%D6Ivp|m}VU$1G+1JQLCszg`USI_mcj)V9{S1Y(sVt6Erx3 z!1GkxUug{dq7(31Vj00B6aK64{=A-brf;62-6t@mf z5B^t>l$%EJF~kWT@AOuGG@?l+kNu*e*Ibbp!fy$EY!)uYGSou{8b>%PrRGpzG+ghP zlO>DPd({{H&D)bm;M*euagd-pQV%>;3WCPeGHF01Z(w)nK9w^gwqgUc!I8$oDQMk$ zfRz+-IhHrZgbWYT_KdADxZ;ogO0+RZ^S@qxczxs=P)5IhRmH%Dc)l6~*Smktj~z60 zu;dpU^j{&qceA)lNddL96(?)jyJ<#l8gZG88vJx@M+mr=5CGS=@yq1z-{nk_6=kSwgGaTA};u~&;`@4ft>_-BJjsP2Cwm(60{n2KX~3D5YR z`%m?W>N^cVe}`RENqrQ7XeFJTPjm2+LL@8jtXu6*@dkikxj`20ZBX#&&aOu<=nKAX z3k8)24X3~$MR$SG#0WR+A|*(&R5YGZhqiwNmYO-3(_?2B+Yocnx?i7XPQ6s*le*s4 z&ZS|PAH2fIBo=Vdvk^> zp*?7EA<0LcL&!J+{TI^4XZ+s&u#e^K&h~JeUYrN3?LPz%PvFR<>ZuR1Kd9D7k^*l- z-s9-62xL=kCE@#Po^T9UPj8n4ZQmCk7-){90MUPkq~CBp01Fdp;y262dQnnO!g^z( zpPnNiPLGjb&!Ztz!^EHoTKpkMcy8jDa7`nGz=xLX4`kq5e)d*uM^!VYrflw}fdBE{ zxHBv@=rrXlkt2Z`wHpnU?n;FQqhM)>!Ot&`Uimnibuf=e1SCB)&qzmvz1+Ai5S1l^ zOP-}n7Q~WXyChWO_hgpW#&bO0?t}Q@jR7fVU$LmA6X-LQXO4)v%fFm$e*s01ql0LH zLD5kc#F>uW=SZRNDdXViP6FaF*r-~lTT*AZf|q4@X(DfG^HH`rBa3K3#XPxKu(pkX zIB5Uo)EBhwZ;G;gla!bq-EkJpgEMqdPrb@!3Tt|rG&qR_z{^Dhcp2SHFl3XN*6^Zp z$%&%fQ8~VHbfHGt8yp>HS@W3|+deUFQQqry6QA0o*qE~8zJC2-R8V^1{tE8P#cO%~ zIINzcr-&BCqH;Z_0r?l0&~Wm}2pf3TA^4nih~q>m91L50NcRsvQny>GrGanV;KS7wZqfK?UN;KKS4^Q4xs>ORmtIl)gyCqQLm+SFT${4*iJ} zFR}Al^S{t}RbR9oK!8-k%uUflbthH`rJRFa$<;XTI@z2-`feoB{2rzZI0htH`CX|& z@vVCq3EiRQk9jRW!&(@&gxy15Vx}@5Ec_1QiuKjh`i_4cI-21m6L0}L$C9~CH)kV} z-og$S@~nhb0>8ss>foY2y z9i9>uF2l3t<#!O~)`@)7fmMhB1u8TeizAX)Bbw^YL`WtWxuKv@7X?~`tA!Bz1-AA> z8tGAsyrzy#Y+zhjogfcFDJOLLjc%K~?*@(LDR-gfQ-~EI#1N7`;lvqu#WJ% zMa8ZZ{+Bx@58=&+b!G$T#u5Y-I`mNKW>A#)qk?bY}hXy(~@ zY7qE$0zAubHk{mi03&To=kt%dt0Q;!hhoa%zD6ySdS!=rPB73Nu(WdMyrW%=b60~_Ty{$wvS>5Ih+}i+9qj*@=_FJA@cWRD+O@9q<6jmG;B5ag zbt^r*g5X>JmI|SdwR0f(7qgsa5>-Z`l+7-;#r@7by2S-|LVJl8X@ZgjP!z$hmAFV32Osocmi$81-1*v>ykcpxvFh7O~ z@Ey}S7vQNW=MBr6V;XVR_-!}|P8y4V7!!p&&_dp`i6NHR$l=DyFsH`1-0%_a*Lo^= z#`=j9rx8l%5o+2doOIH^?K|`O*-*g;z7G@;PQGzyE*9JS7G`4FP`z<#{Lcqg#Oi~H z%+9{U(8xtZJEJ$I2BUtlR#U4EEvmV270Zin=ENdGC1b&_b#07HF1>Hakh`Cb##$K+ zlCi^bAc)^j2Opw%450oKc%aSwVjQRkNQ!4a$BW~^XrGS8vq+TEA?9rs>Ta|atJTH= zU_00Tz))5%w6*wdSlLUB(NSkqiVw73EXU}}K+h#6=Ir3>Uw67}6_jH%!bBwQ@H=d` zg9;rstlZ=LeeB8jxQ>tfWex3uGapS^QO!EIilJ_UhEH( z&eruk4z=GLXXkF`^J-W{s7xaTt|E)U5~4+Bc>X5zb0V%w6@fP#dm=Rn@hY!lTmSVa z=H6WvxCR{NEq6A8sWY&@z_S6(_Y8AVNWEpQysHd=JOougY;E;hEL(4w1Uvu7-lD?@?j1RYV-qU)s_U!~Sl!s-@r{Kr_%^ zHM|P`eu^EB47{e3Vi+H{teJ!`V`V7!Et_nsZS{e}MAN%g`5kTBuyZ91Oi2s|=JnI{pr2McFzcxj9)mD!!qnO3XOleYHG){Cfl; z-;|i1sJ|v`;N{sxlItSc!Uh9Q=Btcvzh)!$u)lc5GN=JKG%T+4OI=$6^wW3VdKx`S zhQ_E2!k;&*s~;GiO7Dj*hX#1Hb@M&!xDg((nu%s;?Yh5hd%erEFZKI?`PlOiqkBhu z`*FTzcrPwaE1Lud+^(wsd(D0MMFPC=e}7fgCEbmisk|c}hLG1(V#Dz;wZWhmepUJK zM>7%^nJq2KgHSDZ_3w-^?6@Vm=HiXAGs7$K2=h+79j(M|gJN!d=^tphRXr_I!?o+L zN|3(?qx0G#Z=UQqy2rK+Te;j`7Vq0NycIbi#boqs)?zMO{397YnP}~6D%@W_PThU_ z+4|RZ=HVgydc#U;RIblAH^PpcWNuAbR+NSX2rPr588i@wU|z$zvr<8;(plM9Tt?Tms9 zLZFQcG4RQo2yCVrc_F4ogak&81fr|Js9o0`&3j>X0uBOS#BpKe=pAddI4PlRfw#K?t#KNTY(;YQ!v^yJRW zB{rFTf13Ae0gCejLATQxzdiot8torIT^?cj1GJ#2jxt`4@KYiS=!0CmBLjG=bCa5@ z?CzrVrQQYy=yBhS5N)`Mrs8cN*CCs{w4c^ja7Q5+m9jbojA2k*sG^xFPV4W=^k?zdIkgewedtbnF9V3nJh1$bhQs)fQAH% z)J&kOq3Menp~ATvpO&m4vH&KIgCq2R?GZ9b7huI_L{k8aG3wU=J_E(;TfvHHSf43W z#Yqs9()!tx%#^w=J)5=d8vS-AzW0d z#6>ia`F%xUQr;}mOVMWdelCxOa;+--5$bf}%tYd3vw#xJG^_k;h#yBoe0 zVNg8gPa+Tol%VfLFduIqb@6a(Y6zOAVYHXeN-NVI1gt(rP@ln%^qd8^*D~*P6-r|u zVh=&mvElc6!n4p}$ZXusM@TTv(Mcm?nNCWw8K}i4PAU%k`DC}s8@&%ZyG$ieXES_w zaL;`l>rInSJ(o0hk(bXL_1bFV(<~0_zGL205uV19=)qH3-cUfT)Itp@MrD((17jn)O>Xvp0x!~ms$#fj1V(iCRjlV&&8Se`^Jkr9&cP0D|TNsDxY~{&hbhsd? zi_bfcm-?5c{WpEAJD!E5Wms;~j#Q%~#PmJac;)LtGOSJLWxS%qZv7n*{M^wJmEYewat!{QR)Q%6xs(jp0-?n5T+S={w=Gei0F(~#FaCHoAb=J54b+f#h zJcYx{%Zq9eaQ(_Tz3X-?B$H5K|6{P~R*6F`_qny|Zs)w?k+J8?&g|{N%I|;wMobA6 zt~dieDNdUpuwjSs#Cdsd8GJm9MS}NQYqZjlcrYHE6N~sxH4&BWQqR9XyjFydg255f6n4^?vN)CW`F|#VO8(!E8qC>#y<|yd?31ANnOxU~91OgdbMYTCeU>@Uc;yf+m!x z{Z4YvRE_N#_76H3 z53ypcaR0e8wNJ%85rRWFS+wGngPX3_lVWALv3Ddc>sVbHM69@H6k3{N4dy-DU;Ms5 zx3~M1Bj0GbcSY^7IS!xqyZu1l8ExJr1p4`S`t8#Lh#(LFzCGdw#;5lJWRus`FGKyU zRWMU5t}|vtn5WiXuKhWBP1LuxmhqOkT`y`C>#GcSMiKjOdXW&j_%q~p!CL*;D%FM| zHFjdfwLjlRUEZ@S8!Aq!d>Ts?An!KF6gSXNQv>ialBVK{*kI-s*&?i2NSNY!;PUuS4z50(&oAmtbgNUB6G{fiDgS za*{H9a7XGlZ&pX#=+A9aC)6!$6OlDuwvRAmy!Q{9@S02!LeoNho~mMm(i6l^ELrJ2 z#fnW9akZ|!;uxh<1X^Omj#L9qS_rnh$A1!d7jiSkVL(V7wy)P)AB6%3oLk&ShE9EP zuBF+`XN>lHnhkdJcB#ZO%!GK^WGpr6Mu=jkJe5s4h7ALIbAJ4?b_hB{i{p~mhtmQA z$^{FF|8aAfIBzc2L#Zx(ZZcsh^P{;J*j)YGsKspoEV8Au+t(?mHnswIdMz znY$uvb8Lx+u+$5c#(UoRj7bPaT(Y^O{jI6FNW{h@>dJ`G4#gSw)|MC9+8mf1Yg9LSor=FwFk8h>rT;sd4)uH8gjK0g_pN0_ts)fa_w*PN(09Ygo{0x~ z=6$bkSyAXaThaUTLq)&LVvmx*TtcP^&3=O#7y#S1)>5U?vRAmwPiT@lmFtnZ3T{>uqDp%>haPwP*eLM5*9xp%_q*Y7R(f5(y@(eIN20A-$F zn63P>O}KBK$X;jK$Z+-uiW_~64)2@yz7z!@pu)!E_9ynZaO*s8b?UmUu-p&6@)ylx z(MvfLy2O!FzhQftpN$yy43_!GR!x~CdPE>VxLuTUi>n&#UjHLj!2as8fSD_^JMiY zhv37tRzU)+cXz+{qXF*Yh@h8s`8cbuLtcQ@f}AvYrx;SDN_*Yf4X(ar^*1#ruQ`C= zM)voNVh?prw`fP?XrMh(sK8|K7w)sS|-;%z5m zqCZf@l|O#gb4>rmFuyqnH(g|CQ={ri{y^Bva!5LL>F&yw*(6&W4gbiUK$4AbWIsEd zu)x8~N;%y}O*LN%4t8uZ*8~5~*qQp41??QjKkGv7ZjZd-Q|0u>)? z*XGr_rV+YXD{L%v^aJ{1sj>q8pR9l5}w_4QBH$B7Ie{`iu zEWe`JC(PpHE(R9bOn5$+t z)#m@A=^Gd-{l2!tR3}X*Pnc}mwr$(SWS?A1Z zy=Lr;{FhRePfS`&P_8^CP+WuBP(5@hXfWcM5t?B74*S2aWEX3{XjfspUVprNWW4+} zH)IBvOeo^_@hxr7me?x$*X|dNO}4JAT^3jCa;L0&7BDDf-CnonvQ8{HXTeIvpb4o4MXdSjes9B( zaq8pGVCY9z=i@Xs_WR{VUrSylX^sD(lg9GqY}HSLrvuf$`VWqbbgw6UuO4~1FEgSk z`lL_3h+MDB-&eC2k5-VRJXbdmw0Vc`C@u8E|(b@u~nueO}%d z+1uIChS_E=DQ(W{)cdg*|t6-y@r5Db2j@7jax=1|BWM7+kGHp^P5>-v=7rls?Va+i3i_RV&?zpV=HI}#>}^-4AQl4q)g z#%{MBfHDFTp4H>ITyfx7(T@MP1{k4j@WMH zV-3Z-ZRxIGXuxP%mDxrWJo)2er&sT!V8uG8BJb` znqj|^wYkq+=S1TNt9x$8utmk-HPFbPbie@iZ!SbaxK!Xk3gT$O9$b8*dEdjgYV4y4 zhon_Z`c89wi<-#~#Gl-C%E`M7iLhMhync}Ly~dROk$)FT{~PGeo3`CG?`V_Ir4I#G zq*qpMdp4P8%xyYKCba<*_&Cf6)l|3OK6#~^M9{&#X+Qv^U{{GPZdBvwikHo285 z7xx-jXIh`feCrI+Pv6(sCVJ_ZdV+5f3Y>^_%{hcOSrB~_0^Ps3wsSq+h|z%;84R^| zHwp@VAp}C0Ki9ejWfjv-O1JDNmISmb!r`W{m>$liA7%l?4F% z&Mp`4eyfn3`!g#j;}az>2p5ypf}|+O;$}YsoT)h(k@J%Ry6BQ4-(Mw@UF$4F2a{T9m%b=Xv~(ti2a z+_iT(cjC}m@qtj%vG)tJKjm$E!VJ?ojiIK{vp{whm< zZq{fhoeX69fMh-24zRc=B)~lhtm6&3yhb-zbD^Qm+Wjsam*4c@)@)M5T2>{d>~r5? zw~C7G;-V65%(#$X6`O);9Gf27s*=;y<0%x3A&?^Uc3+Z@PA$?6UUwY1Y7_ivpNAe7rY6!s&2hxmBgl zeG*Rik`P`gRP;`a;kqpKqw?d196I`!k~OGy<#fpR{_Qy^86wtYcD2Pu;u!{}A7z8% z47IjZW2C2j*?jvhw)7zPyEd2PqYbpC_&YQOKjd=zRvo;~Hxzf~lpN6`sHf*}nLSZP z$G>!4y&AYbHqh5MdU}pqSAS1qN=P~(ZbU1;u2lHY5i101c5#X`5RE8IH}I&2|VpIm~R=-;>zu>7q}cS<48=DzE=cJx7B`j z0h9}(KJdvUoC(|^m$?FRcyxx&1^x;@7k*V}{J|U;zlC&4;Pcj6ODL;FltFh&(BVG9 zYgqwzb0t|(0GF9$H{Mh>4VVvRw=pwvVt&=~C(|@=8EfsM29m>1zhF|h+duIEbXCauWlsVpoj&B}rHa;T=ZGL~+@kpk-?hp^(}++6 zAcOZkid!x=5e=LzdDJ>n=QI(!2)8)D{2^nrUsk*}DXzZ=TKFn`Ez}#^?i27_?d}-} z8wQ`Zn?p+AXLXx213^k`m_Yw@M|t>|lMM|#U@`)qy~#=*?1zH*02el zSR)Z4d@j{3R&|T4b?qnp%2tPYmY3PTpLI%VnAH&+^KSp9-6U;n?8pRn1gu{ zs5Is7;turM$rw(!@#MF;yH`xTE&RjtZExct&V47)sFH=V)DPrwzB@rcR8z+o?KPf- z1fiq7A8Gc!k6*LiZl~o8wk1XFTRIeQb4wWc2&Nqm1K^&ef4vT5lG{@unJPy~EMto1 zIw<7coYX%?QO$pJc9t3P8xlX#lctK}V^Urn$ZTDA@qV{>+`Jf%hbV%vdKsmn}4i3v@Qr zjsTb?E%9s+ZAkeJ{((|nd8vE9%C$B)3tDH}SbtqpR)El$kHoSUeUj7TB75Fd!ZOy~ zS+79lDk+EhLv7(Drl%-$+_Zp33br&il(EleE$~(!1<_NcayZu(FezO=cnUy7NXZt z?hteltk^qvc==MKp@-azm%GrXZT^6)*|_P+k9!kUH{8b)bk|RSGu+XN-nDm}n$}zKGTLkLx`nof zOH*ER4fh1DQbtTWr)X8?gI0I*Fa!MsS8RHQYROo%NL+0NR0#=-fZZ<{MRo-aE5 zh3tYvcI%JQskTZbmwQ1-*$9 zK=)uEm%mMY&cZ`ArHnNC%_v|n=&9Xe%5^qC!4C5oDIf4)>TpiG6r%G}ke}1Bnff|U z-KRJ2x%l|if-~v4-2c{Y#kKb#{YOJ*gp|nJT!%zq*vR`I@vLYPtO5dl2ak%^pgL2y zGqA`7stCkIoZo$*mxz6JuKIl}eTi#0icpzdF;YFxOpKdN+mX{DV%%@ysID4`Ylk`fmU?{6iAv{!i8 zXsf}ZeGZ!y7aB>c$wRLt!n#)?M1hKYEYO3)+8u)4IV7x{bKu=2l4j`R4b`t!z8s#O z8n@s#Y4a-Km%gXKahR~LqJ={7{qU)P~f%Y zZJ!=ZD|VRPvZMN6Lgu`c zfAmZ1XqCAjdX29~VQnITFmiZPVS$MfRH~V|L7fZdn=4d>0TH+b#aR@Yj_6crGBMWis8??7`>uO|ELw3ZaOLQw%D^{yg#oH~?$kdOGJPC+OHmZ@L zLRjXf=g2RtIq999QIn|_;BR6Ylz-EYj5xcigIdP?HV%2y$(+rqr0Pjyto z{wK31B5#RzmiN`TS<6*H@gk&-5uxUTvU7GsQ34NInDZ2)hnt~8Un$3(Pt3m1LJzW1 zW|+NAJWblXKM#wIGlvRKa?bP%+}-7wKkphbT6C|X$|7R2Vd>pxV{%5B@0gIWJIEEj}KMCui3oc zDZ@Z@X#iqqC!5yNt2n=ps`&jP7?SOfsEQJ`fsd+H!&CH`^x0!1HibSb#?g6i$m~Y? zhBK(MyVTIOh2`zOLIHI96VL(-STO!Sdp<%x)C(J0^nvbS3f%n8=d22fUrpohN!LA2 zdF2TN5R$)nWMohTZSZ7J*XIA4_ z?TlX?n7amtE_nZWm>&3!8lPub_)IR-X&ZRiO1%(&SLXmN`o|!T=T425_;cG`ICF7% z-NOlP)j+@)0AO69DTf_u8W~w!+jEd2fal{~#bN8TUvqe3AyjzCP8{mpE9!7w?=h+O zn1)S~(YPJYLbFDZC?-$LkO4%RaLs*+0==scP%LXt8lp97FNIAkgyLTpQz97-D6Et4 zOsAY`Sa;o%AZr<-zHjSD6C!k5%r?2yFXPx5|MJ&AK@Vu=alQ5TT1nr zF1+8S1$-Q$@sbC9yM1Bwp+R;RUE-pcW0w=O&219xyiXFboj>DW8Mpz^E`jp@cJSbya5l)1|Kb=4623D=@J%x-89 ze}Ltjh&%8U9j`~s)=8V@K3qO0bftx0pwE2aB?BeBm2Gb%S_x zsE?E$;Vv7)(LHewz6)?27cgQUMA}-^5X6SGp$1$9pMz8mK;5-tNJ#B4Xw>Jz2bW0P z#gY?`*tQ_KyqXmmCiLQ?1=I6`R<#O7Cb=n7rR4O~$q%*t!V zNjX*u+Ko_st;D{dx|7TDQ&JRZ`SddW{m&UHBTgS=r*wKBUS7-^Nzm{Qu|CO1Srmc2 z&*MHCH`oxhrI&A>UE0OlMFOm&nd$2t<)gfWec`Pgp8;Qi-a#-kdn}OgRG%9R z3-Tq&Bvv~N&_hfdI9TIJrU0^h;iK)+ipF56hhB!ZwOoDcUs%ZUypBlw<1Qf{0;HgM zEkm!RJ9+rBnbJ4A_&4F(ecP1Hd*)op{(0!#{8#CYNeqCb;Wz?db#DQWLwn$#coZqn zA~b!Lq@`$u3`Y)4!jhJ>ONmAt)TJ5Y@=am=O<#y&m;#!<)mV!5bKPW?@pWhZDb`SG z$(3+x$2)Rp}CAhP8w3 zGr7pm#s^x^uSEL(*yA;&&LOE0XNag|=(08E($lryCx@vCQ1TV2wf$6mbw2Y!N)04H zJaDp2k|wiHSz{6dK?SizK|lqi&NK>za$54r=zL<416&z!pNM+1U_yatUyeB~{U4;O z-6|Fr%K?4d9gqNOY4gUgN2P~Es6^u7pSYDx7#z3Waha~)ljUJ zg(xF0A&pY3hT%nrfOj-*G+@*o8`Q)l=nN-)`J=u;Z}%_rko`qg!nnDKECG)`w~Ixn z=Me%^B^JrqD|_`SbgiI+u?PYJNHCF^lFjZba19Iqm@>Ow(w+VapGMo0!Vt@x1en6$c~L z+{y5BN_B~)uMjEp8egS`xufwQ4{w=)&$h2SD49~$4{l!7Nv4y>Rfu1Pzmj#|+@V$F z`E+K^ruocZ^mu*Pk?#TR)ZctQ)g&SnK{VJD(2K$@XQFs~y+RUX>P@-x%$*B#+G`qg zb9^F2(ZnlRBGp7PXXy`1Y(6}k?-UdMp9AM)XN#tngCy$i%%JVhb;?-lUN)HNvIb*+ zp^iyi zc?jfbi&usNEyq6XR*-)ZS&97lo<^VNMfx{5TE!H)fr??{MC_`Ex@yXT26vy(0r$Zn z_wtdK8eMYENQ66{yW4-FnUTYvlWQKCtY`r?;)$RHJF^w!K-Okxp>CQY2T?vvUDTB4v zD>!<%R+A4R4`Tm_oEK%{uGkMqrSlw_6n;pvu{=HVWhqwG=t}&gBD%NK;84&UXAgrlA=XCEy$c^z&EODAl;# z=fplNr|=fXZyvSPxQTBIAWEkXbwz{){g6S!u0Xkq(|Q~H^Z%O)X(?g^X;Lxxpvx`Q z_aTv~xlo}dQ_FoU6TFb*F(NF7Q>D|96u!GOd08zf*$@lM8}c8ht2zvtvEJFu>xB{? zNfIlI%>*8skOHMhD#6)|j$S-q7U01~&RkiUVh|;iCkc8--a4zS-5DbXI>68QT^+5d zN)R;=807mL)NUyit2ET_1C0I-^)z8~|2$zDRvSJd?WLS32rRKFboiReikFH1f4C#x zT0e;Zxnn*OmtVhR%X@kVlUQ$z;Kx!ZlY|~FnULBYY%&_-7&I!88anxW=y0gI%ca|? zG+j_U4N;m0DzK13lXZQ#9SHz8(OYAi(r?X+JMd+D)HSC&3(VS6ht=0mhVT~?dU6~H z{LyW+8ow3|@81*hd{E<_7e?c5yAVSSu55~#MgSE1Y>Dtoj8Q>c&W2a+n5ExTSupyO z9#?Z^h+7OzSx;a9tj!WH{Ugyb{VFY9VXl7_kX-*SNh@RpBR?;iLV;5DA|>nwIb6m^ zn!e5X#8>Jp%Y-ruaetR7@u*ew|S>^`W?Y%Dq2~CLe;t8 z1el_4G)iWs-b&X-DHpEwLl9obC!ZKC2>UGgpqYDgn#E7%Kb%NMgW}24j)@G*YeElgsG|aEC%n|Lnw(yRT#-fLTSIo zP#OmIYdampzv>cA4Q5}+$ZU6&5ZARFeL0uz5~py;*Jj`i2Thh=Ed4eHwbnNvaG~qC z4ccwk2qI4A#d&t^ll&j{fCy?c%)#FhCJgFV6|q}iy0QRC%s5>qsc z@iqa>bAFV!MzeiT#4U~!%;@tLqiu3 z51G!Bw`u7NxxqVFLPumJ$QZ-^Y{g}>G9NB1Td+vE2gnahkHw$*zGUh9#?eZa-;5Id zxp0$Zapa7B!OHT)f$jfgDUsi(E7$kIt1w0RT7=Mo6#_j;Mb-5O1xA60Jk6?T+V+5+ zj-$k+*dZ&PrLFMQI)0&-_BM?o6jsFTpjrn_c8~J#Aa<>;oy4`i&XJS zn#MbsMOyZ}$@=8)7Gw_;AV=}UV!wDKF1rX(fJ?|goN+B=ke$;DtTw%f1{BEPwA*++ z!6!CDgB4sKr@w2L_Vz&&PY&P4GU-l72n>11ugerf+?vCHItu{DPU$%jku&IXYIzd; zWZ-Z)-(;$Qte0{_m~)lkMDfOISQB28P{&j~yZs>H6T?z&TFMc;ZMvN-Jy4;`R;?LD z|JOAe&w|+j>dVzmHH6p-CMmQVZ$-O-&uGcTHw6RsL;ZCHiSk!?vGDM(^Us7stTY9r z(uQYID-j52@A^Uob?ao_#b}pQ41ph2gT#lXC?=h%9%;_s zh=C+Fm?xHx#kW2HOnSIG({jO84I$44>nNf^J)SIC)0T}urJ^N5KHiVMH8Uw3m2q%; zbg!;Xu^k9v_2LkGjGtWg*e}~rBRo)}#+)kX9TnCFH-X@WA`;wC!qbRx@JyW z@|x@KJgtl4l0<6DF{aAdLG)k2Jo(vYaFn3^lM;KY38 z!+Y4nWHE~lh*s~R57EZ#jB1Aj%q|hnX}|z@(O`mvyq&HVHZanI$ky&~CxmKY07VBS zyXYdMa283d1@d!5pD7vkF-36^zTp51ySrO^l)aHfJ1Xb>tE&Tn$JHNY%ZbMT!KX6f zfSB+y{vaj0GS^?kp4Tta6Z?Xd8b8Y_L@sulcNQ3&g|if0Bvs25RUP%BWUE``a1jpK z2AVEt{@1L|tcIk)blrif5*_m$Ggbl@NYk0hsL)vrk`V~ce!~EgrnhPm5?hn8=9_$? z0P7AABK6~JhArpOp#-`NC?N?7_UU-TqxHlj$(Ruu;UQ5~K^d-zitf`BCv!zq^I4%T zZA}LBa*g0!yi8`pztKu@7Q&sC_RNvJwwy%xi+v`QO|o;Y(;`^aJEIeO+byiXLS98& z7nx)IgqJFvk-`duf(DFq=_?w($Vvw1dOKCR@UUzh*9gzUHt*Oz?rqfJpX>iPBru;J z9=aZOdqQ{rB1=ShdVn63w##3)ktiTx8l$QrA(&$fgz)lQYH<({CYGFkFzc*pPD{qbiI`cg@{QA#j5^Q9mN%~)3mC!wYgKCa`2+gMTJ1+; z0aJlYDrJf*N&8bjDa%4h6WnKmoB|+>tYf2YfV7^37T@WCiT+EREA&@|5R19g{C&+` zNBGHUYAmt@n}UTR;R9Koe)p>hKabhrk>2-GS>5H0Z zgZ^hKIFOy|>N~|9A(>*_ZU$)v^bTgomM|^RnLIi`eXoKYSfK$jNE?Wr3nBhXlSzdH zHJaaH!FGhz`cwIn2Qi1y(g@jc`3WN#m5RK_ha3*w!t?TtWhaIqDhf3$FS}ht{>9=? z!mmJ@dc{RW_pRE8n&sb9hHM!0o#Pdq@9uvD=x66)Ma;I)Rmm4?*vPHj-wJT_&YJJ$ zzVb?#=!H%ZGHT-0i%1mUb~%b|bQEm{6G&w&|IZr}Y969eGMjH3C$MQ_C!MGAYl}m9 zY^jxZvUfDGeGq&8QCv}QAhjKjwJ+3lz0p#?RIx7#uYVyFkK3#aENDX#LzF;$%;CbW z@$YLx6Bl@E<*?-LN?*d(wRuo@Z4|k~%hTht1s1+ojJ4$1i5R&q4|1{VGgOKPGQCL8 zhtEp-MfcFF!N)=ySAd3l{eRO5*Zn}8b2ErqjaVPe`Sz;PX^c$N$c4#hYrwvk@w$ud zx&!w5r%BtjKz-~JWI09oOZ7bP1~ z0W}l*M`wD7j|KW__4B7DV=BLaOwDM>JF0up>X9_kGFvk#ZT*sjp%gNL!-Jc=#Q~BZ_vDk#=DmKq2{vQPbHC*Iq;o_@bt73=ef^$q3BF6z z4fS!yb&qFd_FZGPNUY;|i*5h9xOV-I8kZ)gQ~pin<)3CJq^_YN0evu`3;PE%1(g5- z+FNDqQ{|Sk&_N(Q@FEZ11y@;kIRz~m5*Jlzb;L<2{@6*0$W0L)O1-5=#j&R>jous< z0dCB2?Q_Lq9)FA%H=ZkaFLyeg0F#N}J6x?%y0Jr23mM8~n$V|^+00Nbt^195vJ_<> za>8pdGF&&I2xZfaz+I2fuT`$Frq`{Cpn$mj$BFtO52&g3d^S<2@#?;*y;r$f{i~Z zo^VR7*@L-rIo;xlsA|hBv2GP|%chEkeA!lG|C7nggrh>e1ud@deaL*QMJLj{whb2J zWXbk#6CU8n*~UUEu6?d+T=lcb4j^j?;=`T0`;V`NYkn5Yzvbh#Fo+h?fn-V@Cj+Jc zn{_QrtCVa8DsdcD{<4Tu8B}cJ3~Jcu&-qNOO4U(B^iCxkpdMx|sr^qZ1gP^h?|n*( zdG<8gcJ0ZKhzEDb;AACJa4F*{odpfG2X_k{;)>-wT8#`^qGW@GG;!8rKL{t}k{Zc7 zRz;y90gpzmB82)|-#mysKT5eo^fz~jq2QQSG0M{9l9k(jJAQ|1OL(RN^%raEwDzga zcEC~~WCgT6lizRJ; zZAQ01XUD50dj^NBI%c&k$+ifM36va{eeUudQFzKlI-9Uc~M z?*0R6T;b&hjno)r&xj1V(|>e91ZOQE z@R?#7Z3oZ`@uadPz)V>hj+8FB+v?TaFRewrRAop>@#Ycu@LrrUI|ox=dS0D{Yw8Mq zD%D0)u1Ou1gY2G$G8ekXS|=jZg5~d=55V6*M{=$8=VxUUYh(ZV5x=JPfFVMrttM9h zy$J0ws96DFH~t~w+ix1#y<6QTI797E(2q$E4=GInuce2F)vka)=6p7H;;nv15yC14 zF!AwKtfb1IJ(H`vTVFoExbIz9r#Gk3r|D>7o?-Y3Oow}T>>4B626_u#SfMqVBz?J3GBgDWZ2h)V*0h&W}-Y8B8?*9>v^h z7(lvurxTr7dG3+Dpj8$F8O5K^I3~=SHs+NqT{cW0g3(tD8QIGAW4&`}{3tpW4h1f^ z%r!pq`(K<2N?xJzl(gERA%!W5=EB-i{vTG`B0P_WfxworBa5mu%rHe-4Y|VUT96lb zsP!jRazZkX=U;a&^^c*{K}F7ja;^0QqYHTKh;nw)k8XotK&_{q84<$hP`s-ISI zcV9egv`E4o`tYRwHb|)?Vpc>|a`$&7#zv`ba(vs@gbLFZsr`v`RtnNK4f%w(w5@|U ziH1cnTfDAht9UZ?9s`U7r~^tp*JQgwHQ-l6XFG1a_@Fyg;MJ;1ONj4<q?VZE~ ze^iTCxS&E^c=3Nh3Pn%}h*gHPzPOI<&A>A)g?{@kg%T-6SO{1AZY z2SwFI4ukGwgQsB-zo!h+;$x3*s*q%BqZL-_Z=UhU&}ztrw+oUhctbMs)`>AjEFp2OOLJ*QZ_Lk;%5W(nw*?`t|?%m z6s-6abfwW>JjKaDS<(f!<%MTXDz*FS(!*~y>Qt`ji@Q(-7;b}(wd_kD5&*pKbL4%H z#Jl2Qa^=q|WMiBEfPSBtPH6Ct!kz0)?tQ{wXqX$5lOq>%-)vDDS2R5uU?>OEm36rZ z@rC)dO*~B-qE7$NXv8-zdgWjt&#KwxgIrX5Dph)Q{GwV&9iRRitjns;1yBg8)v!ur ziP}S~8!pemR@(|DL_e}bK9p!jJ+v(HlhAkI=}dW?(Se@3i{cQ0YEgsT*mFm5c<4YnUFyl8QcVvFBZ06Bn}_d=|;O-o^@0co2Wcwr)b=# zuoZNw*E2F|RI$AgBI1dVXkZl6dEI$i`mcqlS<>#}av@rPHG!X!N-&&Sg&sz^s2MXL(l&ZHE_u)EyNTpxH(vt_r zuIpy`)|b1DgW9Tk#E})s$!UXu$aR_FdDAgpA1PD=6GtTWFb~FiiD8_bw!@U#Dz~yz{ z(sM1M8YF9r8dEEsVU;!EHcJGPf{La%`g_Mt7(((~A%Zc0_(`(7e9yUyJbH9{Hj(%$WBWlvJJqsHaBScGXW;Khf^?UI<7FGU>g#X z0S;%yVXX_rZAVmJQqpK!%@}WKx`BCTCAqq^K8=o>*x$ah)3U=e)_Q5Hh>v?@ek1T< zeCU$YO^$;bC7Ej~FHWyF&26~2 zET#nxd)aH;oC*$gUO=bh&}f05)HrQ+u`3DwQz1~2$-Ks&Dm?XN@U{Qm>3xrVr(X~8 zJs*{+Y88GkhDNqOBX*ERjwD_AKZjEsssfS$kk>D z{PmSjx{k@RAr<7f*9K z8wfuw13bqx#Jx7xPA-3B_F1`<#5J3~qda`i3Y}uHV@63reJTFutstP}fqRGkS=`py zAxuFjF4>>%m$wW;$aQ4aZ7P7UR%Fvm+!moz(yuvyGXHwzkxSk$fhBMPd8ADuN(}S; z((^S|kzE=&(GFmCKUN^};JuA}SQim=l=k1ZMHX^cPA+mRm^U{?ES1;1_f<9#{E3!? z2{tRc_Kp=^%_zgf?=1wq1f{Hu&5>jUt*+m~gYd3A_}s7x^?Ns+x(_=Rh78D!ldS0O zRPi|2DDckCu1f>+mQkQm1UKTKJwsFryKp`Wzz~Z)-spq);nBXe1k;E5D`+ki{bBzk z|4%-Vvam}rxR{>f&pL_8zt*tu3!3#UXK(jUyg|tdI-(GQg4=Np4iZ2YLqq{%=|$&O zQMXMgg*t6nC1KAwGL5omfj~BwwI*DC6x)YCM1*r~Wy0~mh>z$c;v_an;5UjGhxX20 zy_Gkp5%=8lrQ*W>bKLV@xHgrt>z0)TOptLf@v#>29{AGrz}q|XGKf?}8E2v&>%)FE zJoq;94;$t@0556$wDaNxLFCi@zJbf@L%-iQk&Bz;9DRoLn}winR1Rz-yEY4K(*1JE zGw%1lPv3;Lhy=e^rA?3{9LpF={wJvvkmb;+0K3=3X4(d&nNIL>$$~AxQV+{aQ5ui6 zM8~;6P=v<%bT~%S1~>7j%bBl}=#xV@AzUxMh}<<7AzN>XjK5dPOLhaUoh|{R!lwdT zqao5wQ{TT5@?x*scvLZ3!)>Rf?Z}8ZK#>T+72d!5%?U=QFN-xP^oQAhymN}Gj^4H= zFr@eG1josR-d}S1Av?lK_Gpd5*o1Q`49gpJaK5m^Rtd~Y1Bk;6fLq#*tu~y))?HeO zlLp=OTTb7r(ACbz+Z|ctfI5jZ{)8FDztXw8a_e;i_~jUuH(*HN6fDE35?t(u#OJtb9mQYf6v{ic6I)uniwIiXNGAv9#eZ)&9rtaVuP-mNsv>_uxVKp*yETnn!x zEO|?AI?tpi-;O-$zexDvgiIX$e9(!C2%Z8WyI{HmT?Fa!?Z8M6H3>d-6UG$|zC4&K zfTTmmY@BE-Wi!+;M8pQr(>J2c#Hylly3a#^UyJ{%lW%1YZ z;v0EkPS0VnnN~xHC_l&CO1e(RtVN9(OZ@VnUnm2NSO2Z9ls0>6JNl{&$t*#AJq^ZO zib1-(7L~}J{Sd9gKoEcFcZR=1xBN|Z_nMwd>vB}>7sa1j7sVfEB_2yx3Rjt1kwPSqR3PAP45@HB zQXqAonXKp2c!tM15BXHIUwx87X19tjj&|p1H8vUF9Sg))x-yLIG=$-e4j;VZv1#8* z9_yUn=LT34NLrW~cC_jStiHxr1v-ih8hBDRp^n~*(4QIn1ytQ1+*>6r+LHCw0j3t= zNbhbyyKmdqplgWH(Pp2)8B;<%Si@}HnIPVyx_GDwh#Ji_@++GE*;gca)Q^V>EiH@p z7L7gRM_Lgi9AIkZK_vL{Ndb2=k7NI)*Jdafrl(J_;wZkDN7S#*iUvMbsrQV^HIqkq zz2j4}L&I-MOFAq!ziL#5KIC}_ruX9Z`E@kVJ^-6nm}_!#k#;)s|+SYU;a0bYcm^Xnl?09X;@y~yoS!e4C3-Rib3Fty;jPSQFOU<#LSJUuGt%x|!nrVS9XR%J{O+(?FsrQf+$2a-7IgZ30*ZI+R=z*d@6{(GNDT*>! z^AEJ&xe4OO-DYrF0>rw(kAK;lhby~oWn%M0zCAPq{VTA-t(iz+)Cas?^b!G03L!T- zTNj*`dT(0zN4NQw)-@?w!Amc1a&rS5sI`&lTf5Uq^2x5{f7fKmxizy=XclK5+0I>r z5O>7ORPOhT|Eeh>-Z84yK1Os3a@keC(IIb+PZ>{yW zTIsBBO-j%2>6X=cCN1PH7Bhx#0m#+SHuQYS(708IM7WiK+q=!*|{+!{I5Y zzY;k+jvI9)B<6(K@K;h%I9D&IR?hA(TBF%MHl-P>)(C*2Q9isI%Wzq*jeC~K#=0aN z-<<#a@%JvzlyhNT;{YpTAi{M@90^vq*tuy*i)-xD&RDJLO~aFQw^zc2U9vd@56^T9 zi*ULv`R{%MR&)hFCRESn6#r=~SRL`vWQfLF40#XS(+oiwgY#DN_+Z;h{7J{~Nj!H; zHc1lSlJ%i*#P|JtoX1;a*7sfI8=Xn+2bOoHd7>29A1{b|jID7pK9F#r(J6|(qw^*Z zAz%owruVOMhoFOy5kw>a(SW{MxJg-c1LD-9VAq)RQ5k39m7_eO&W2PFZ}7L!r*9!k zqpA$8=%wvVsdTf1?w}gT8hRQIoIm87<3LPF(~>@XeM8VN8t8}~yzMkn569M#$+s?p z^>mMH07PTN7$lF{f8IOKpKR1=lR+~VZ@Oa?Sp9~RUo398y{lfh-3wH&{g@2 z3?fBVbQH6o{^b@=k*JzU>9q_u?)!~!=OxjduXmS!@SxZr_XfsJ^i{Bk#fRd{@tKWv zFdrIdTF>4UySf)q#I&Xwp0X+6e|es2LW4P+X)>$q*#BeJf(JF#$;x2)6T4z?8EFlY zOZBJM5be)?(Lj|pb90b9s~YnL<}X(u9}Ak-zAD3SY2FMh5PV;W{@zuIcv+waud*|T zWh#*k-K0qnZqHfwV^Wvd-Xse9{jMhN1E&`FJ*G3A zGbYcWHwIOoDd1vHmzQA~*N}Rx|L>L?5t`5SrZ}{m`ii2<&WJYBOki&+rQKcw&&CjT zves*q7s~dEIE63X03;%lb=1;W34Bu;SQQZoCOxQq$M?70BF@}U8EmNEWHx8{MmxE; zpEQFDc18@%tG`Oy@f)vPQvqrh@uD31-_!P`*_C$Qv zf=m!8`5Yuoo5#|f{)Qpd@ns0Q4H0fhu=E+k$~Nsad`(^DcwB!x_4;KWj<}`_4gnB& zUxcNIprO(q6=z7LvH#Yjx>eF7^YE&Kds|%N=R!?okW+A-+j0!KC!NV}8GOyY{UBYY zCbwrxVE~a>?NWyc#*Y8q_*YjF#m2Y+h`E9%6*IA`-)&w7Ga-Z~`e{p`xY;R{G;Vp&(V^xkvlRT2MS1$svPops4x}hL zys02A*`}cZ zV5P7z4kYLD++dLwB^0IVYi26f+QO3p(LZ@V5z8**qi1hJBeb@mbPgyx=}h}9?we~n z7%&STS$UrtXJDyaz}zH>z!2jMUq;@UF^5TwG}?C1gAnI(^X0ULh77-x0n%Ra8_;** z(V$u73QMlz(iv@-ci_1%%#X-j>uru9$R3YxP6?@f%^9voHD-RH{cmCZ-z`4kCWihS z$6H~V_d|~Fj_h2*^kcf~(tH4y&KT0YpFi)8)D<-9)X9y1#;;+f#ghL&n!drY&gc2M zY0~6Ijcwa@W3y>&+cs`&J85j&jcq$Owj1M3Ki}W`4?NHA?3}Y_W_D)*hcR_}+O`Su z5kH@F%-tA4V_WrhVG4hr4-A1->ObVlig3!cTwQmAOSo@8KSj(B-vZjJvG=0v6|E-7c0+E ztW`K<4y%a5;8VzGoWCXb;L z2lk2G*iVVYIk7=dyAo`MpS|>nH_zF0FNuBqt$hRtOsF1cM2&NEnq#c)Cr487|3#Z| z1fl?}(sK52wDH&E@-VG-8a5aD#uhDxpH`sMADLdYiZJ>}H3_U`g(sa`@|Sfrj160G zqUn}@gukM%VC_Bn!~{$eTufc^U@MY@c~b->Q)GF{fINC&T?M+baf3zqjGnFJs(279UGIBvHA9mMURex|05_F z6yhESvSla@19MzsB4&xWYffP(N<)vN5BJK+8661}wq~9oJa8kT_%FKW1sqGSJ}d=4 zz_YhODE%tVRAYao{0QpzOTzR@*L93cS9`E+jp}8KJQVT>O<20NBC=_vcDJ;4|Ay!w zT2Nfwg27DaWCk2E0M$?Bo8xJmr6%rqY?duA`iTUPXK)TU)KgERrNw2YDJcQ}mNOTS z3$EDiPLl;A8)resC`ui4C5(aMCK}68?ef!2BlZXRw-@g1F@l}5ocwOHA;xw#A}(+6 z?CKCCWUVZ>_xFg#lwAQCx-T5J(=k7T$_-pt8v#kBf}s5)mMKIUPtO1&&9;TCB4_UJ*YJ(JjpDzu0TKO4*rt>omHWQ4xt)*W|b|&D{Ip!=~@p&eO$he{)T! z5h8pQwP6{pO46(4ct@ZS$zeYk`FXcnlP>C-&3Xp}xp|?$7Amz1`%7o8`#tAInWsCj zzW(wlV@1t_IxlY3{6B>0+mo;Pm$vo+oGllBUy7_(!y`IQ)AgO4>)b|16Ur7blNb3Fdj_p|6|Me2TzDABw_=Cz!nZ0w*}tA? z#Nv0IGzjmqiJaFi-yf5H@O=Um5m1ab`@P`!ytjU?$fvBlWsz-67__Wij(U+aqQd+Q zt=>DNHHwqGvj3Q1;eb+(^0R{}07!RahXPEoII_ch2XrW+gjh-X_HL1V!fMfaUL-SG zFuK_@6jgmtk9i!hq}!m@RnloQOfh7HVLJ~$JhMHYgxa+^!I!eIfj0uX>+`+if4_Fr z_h#cKxN}OuGWp7yOZGRne+JThWj@4E)<|bpD$^WMrqugnA(gLD5hZ$C|HzdC8NQM~ zS#tIZ=XWVN4@ArTPJg9~Pq+dH>8COGwKa z5HK-~(U-M5ODSv_J^D_MQRX{NSotOWXu$?|;_RJkM`D_EW&0&Cw9`m!j1=mc)C&1+ z12fBT;?V`~6O4Nn3d`bK`4a_yJkP%YS@;gRf^o+|p(pL_%p;0oZjN-cmdgJm5Hj$) z%#H(n9aCF+jitw9M(5q6$CMe&w(HhY4|8{D{t04yr_yc`Qx(Z;ozEW1s!wmFZu%Zj zhdBikIc8CMkU%7Q#!)G7|Ah60;Z)-M+c+M+R}0c>+lt<@h9SRr?DQ-==dInVxF7L< zSxSi9h1!nw+Vz2YH0n%C40N5{J4O`Xh9OZ2v6=(A4LS+}=aQ)&`$-A(@E8^(B$;${ zPxcuL`o!ROgm)``x&;MJeRyC5j1W4hZn^j{V$)BGvN_$>Z$yJ5a%GVU|CtW%Q#}3E z7l1c&RW~tygsqF^f3q^pYgpp!`fS3@Dn~2WB66MV>lO!rp9WIPK{%5_;yZ zbJ!uiwn;d--81zvVZO#_{G;XOSRTrJ20g!0wLR-L1yjljH*Fl}SgDIyD7vt$^YDCV6K za=YE&Pf@&&qWGs}x@iDm1N~Kt@vfeMi@?S94+zLaev4doC;#rw$r;qe${u*?n$PYT zXcjYiCRw1c>B`i->zRp;*4VlqiP@hdsKO- zo{cm*jO+L^PDfN$tIExT&^CfF(3ufK257(g6W(PD-9EXX6CBa$p~%7aY7gSypQE?& zS;1|X77@IG@WpV`VZtJCBOo2qwl2V>@_ZQUKLYhNUxoXFfru z86+Ub5~nb;$KP#n=>?ix9{Saoit9_89srSFYNq|Ke5UMoxAu|SSH*WOAkRpP%kO_& zDY)F-1)D6$-8o7gb>&Y8+vC6}eLga2dq4YE%QgF2(7o(CR>l)tc^--%ROt#oJ6MX*+q$^$#ukQBDTdL z@UFF~^|cEBG1(R)TUKn9qo-AhGGvAp`cE|2DY%VV=LxZWC12gS(ujJJL-d?#M(Ibu zi}jUniXYO1PIuHPWz%AueoKfRvw5FB?tC@kz0D~RZTF1DCZYZIxnrUb11wb6CRI7LSgQ%|q#t8r&oam^v1xf9 zFXcQ=IxTV_Wg1fzx=Q}@4^BN9#Q0y11bEpQfU^%1U0JB~C7tPf=kb~~_%Un@NTzfH zH%J6#dJwU)iY=ALZD#c%mkY0l8)6`gU4yq@W5?~v!X z1tRyqAw4$R1t2;(jCdG)Uy&aNYrHgc{vo@HRp4~Ym~LQRunY77o~*dAyN_GZTgk8L zgYCH0vInmCUWab_x-V=Sy#zTU?>I!MZMOnInPbVX9TbOKF#>0HHqzEOL&MosvyfJO=k zfj|NJI{D=dal?r*+Nni{PCH!bMS}Y02@4oVl$8Q~CBhmMQEDk>x;HE*m8Hr3+fW3# zye+M}9#6n#9(d*Q^_zVEWS)r^ z1|XfZkSP@G+V62QgHL7Cr}+L6oNgCb)YI`bAY8ubrxC*%?_j*t{*Wg7B^c@&{`|-T z$1MHNineNKE|;!T4~w)s(nGx35qBO}`+x2#fhYx?x)f2skNd>%-4N2;4H!=Ud;dM{ z8&IHy`Je<^{%a@GZXoi0Xj@9aLKC?FOw-|cQjoMvY5}wVgn6dJXJ>9nANWv;3^w#N zVtB#s(u+afZUXJ=XbJPCp}5_y_v`*QS=rwI8FwHopUUne$A^p7yTlI5jVM$TJJ^Rg znfLYh4+4T%hKO&Y4RtwgkzJgT$W`pI1x#y%Uj5_q-kZ*?L#5HnoX}{j=@wrct{!~) z^MXyd#CsCANS$T>Xf?}un{300y;9AOiFyI(+br4MyGpvx$pN5+KsiHwL@%x>SOqlN zX|`lEc&s{YaJ2#lG$$h4$0|2`+3y@5IAo57>eg!JI$&qXAsODIzuD~#uITzuA^L|_ zg&IU0vFj)4$8@l*x0O>b&p&`CfvCRq5gZtC!V)be?Zd6&!svBeVkZyjs{f=v z%3FDfWSTg_0vdN`x?@>%G?W6tqeYH`@4F#TNDj233|Q4pQ9Yk$m?z@!u&pRF!W?Y# zWsdWk`B1o!?AT5v2?3fgI3h%=k+LG31>TLHgsWKMFdD6AHQbPzrEQDTO zLA-x5viJW#U!j7c;o9{I*aMN{9c?OrZl+uOLhsi{SE0F)g=L)ZX^QZ?`2W?QnkocF z_tRw)a89naml5tqUR$Oncu51MA5AIJ@O>0Fd|K6l+Y;!%%K|^cGz;|{tKzw$5AoBv zAOCD|c=XwaVkQlaeKR@eNQBwfO$Pi=cd+}dQ_<&Ee0Ro69TxR8h|(~GG4qblJj(=2 zi*RiMIhO=Ezx|*qT;mB}osHPozAJ1!0%@L-JBhbiIvpDe?Fq+k56Q|B{r#U^FgplQ z4^*S-Un8TpGdg#RML$I4vAd3wG(PPUfc?o{2mJ|*V}V6%H?=)mee_|fI5Ex00<0Xk zQiET$tRmej`76?E>dQ(kZaf&G9xg&Ig~w23?HQeNxkoMj2~@=wrO4vXqIpK(JWo@Tu{`%1K5dw?$T>gY%K6vi zLVh7KJFokmezajX1VU#j$*SUz_%M?GQ}y~1SZD{fQH>di9n1Du1)X;^1XB;+v>DP+ zl+Nx7w9cXvj+mD9xMm%hc7?UHb$8h@2~Lb=tcLhEWiYH9Azv3-DV<Ozi_ zOf#|2JjS{Wx^_VbJ7ZwI^QCwi@V#dLmO}wP7b5qP#NZ2F`hhQx82Y^?qQh#>T^U`G zX`_eI`AH8{209LDT;vp7Cy{GUE*>+xb*Hcq$y5uUjaxMYUwVqE;vDN1wl4s7q)&S%*X z$1*IX+KdKOPGXu_^@J(Qt^IqId+rG<1(t?jC|Y#m*ydNX^lKjh@74qZn5_j52k80X zeeS~>zEvrvEaP19X4ICA^;}Wi5Wzj8jbL4e`F>ph!gEsjU~%AGkBPzYj_;Pj|1gi4BKTw1V9Iq(0|Fr)x7AzE_B40~jc*_r$xbV|4ShY)P`QbEW%or@y- z1kq0^M@4&Sq4n`MDwc;@R6jWKCk9&Pa91`Zz+Vy-IKTOkEs|v#@)3|#ANJw>zsTV*v?{XZ zorUH7(|Mavz!M~X9l@~`V-NgKY`5Gaf-Wt%dpGqFj?p(r`ZJVg4AJG&~A&d&St z@VXTy-|ekK>QlfnUM_*3@Oj-XUpfxVC`8CH6I&nZ0J4;j!gD!Cz1Uj6jkBYB_9g-z|ifCW=f3sT)) zgxMG09Z@kbC{m;NRV)@j&9#Iq;L0t(X!aTF6-j(VgKdEMSa@~od{Xm)& z;NMQ$e*_Q;f=MKCQg%RZ{$#cFt zOy#@w9ICdPKejkV)a$3DSBzpw<^u@qFxQj4Jv*6vQFY;o{ns^`-qjK1{&BNVWHzC4 z!&RH{w4xR8zObe9-4jzhpZvg}T+l1#;D<3Lo4%c@p3&>NK0nWLW|-!=H`?ipOjTX; zghOu9y4o%pB!N~|rTqj5r_{B7NBE$J`s3%n@0!XZ!VF$-o7HVenl1MbbA@u0Z4rKW zVf+6?M_dg*?B|H$$x=iyu7MN;1O07$#WVIXwr?Fn!dYfs9X!VP1_9bpG%CN_LQIi*hdB) z`qr2H^8tN_Txv)V+1ul+~C3C;! z5JZJ&t{B|#2l#R`*)gW}8-{)y@^~MS-IhOH+T{7){Ez2&cSoWU(J3P|BDuVJlRUZN z>w$kax38R*^{MVVIC+aGaM={ob(kR`K!FqM{zq0Ko6({o`Dm=08dFlHxBNlAYoHau z=x{;A%TxVV9cJCteDVUw|3kR!a;mzu7c@NytKg&0RuNJ_y@`zYu2dG6&rCVgjLM!; zWuju%t-$YCuCpFIKGbPFMF0@CwKjly1u=+hjzT4rjC2*)-XimpHb9&EPcv)`Svzp(!G&gpTQI zQ<4I7FAEdE8GXddHrDpI^K)o_z)h(X{{O+2(65Kq_e1DkDL`-tzruZ<&tCirQMMe3 zRZ2vPb1#!J9p(xvwzAn7rM0^qHXvGDiDHr&AQntxP1d?#Zv2BP9}@wSW75j@s8jZD z{C_8jAabuvbPP+hTY`^`^4W51*D$YHmZVLJR^5iMT;sAHgYF?ZYG*yJruAII*^{0; zQprXKrH+EIbPw=&K!?>T*n!7nw?+{oc{Ad&9hQJ1`A=N{n52+|{3E+4G_z7A zB_`IUl4(dpR`;-A_?^gSbgL+G5O}ULue@gN>+Oi@R?1K^3kqtFR;b&J55mTfXtIHX zk&VdF!&5jer{hFkH7i3=)>9a|AE1&jm7^E4*Kyhp1B%ml?5?LZ>q*tONn;#v95WS8ym*JZd${uf z6l()jpcwObZ=TXlU1#HUc414^)pY;y|gyNEr ze0TxqECPZkgouLOj!BUnc`jP!Ay62*oY%jP-MXi$DqT|IZEEbB9CDGzED3%NJg{R9 zxj-^JM-HFE2SZ^*;iiv5Q#XH^F7E7)T>PwjE>pnH|A}eh>}Q^Q{tpBWi-@yJToaee z)nWenaVWP-!r@!%Xwz!O;oOdQvZilbsk<0feD%5DTU#4v9T-VUwu~^nrfaRTMn$PS zGS&0$c;eaZfwZ*jn$nwVr9-8#x3o$RPmG<@NQZB$a_7+Ri4}?uv&il9H%XB#ZvUJk z)bXRZ%JS47a$DYm(^j_~3#y0=vH=_&Lx{N^U%XBQ$x z#=t?>dbR^8u7{;6MhU?ZLL&VBj;GUH8?)1kK{KA;NKMw!osOAlSh0p{Fgg5!zJrXn|VegTN)<@c?qNFR2qGAvoXr}1sqs-pDZ*5>DT>B;K zdcOvG0mA?A2Da^+ev!*7D=_R=^p97)v^=iHO_sZgSWkE7B`Z#0Xt)P zQrLehC4vFuvp{tCo-5EGmTK5f#c_MK^+)G6<<#j$MinuwOMufCuWf_(fKgC_V}2G- zJXUULRGMw?QB*nbH#8yKC)<+b=fuI*+?9uJGr?+B<9YSU{CWb}ZGP4552Io3sel;& zZL6`)ldk~3S&uh&_%>WjMk%a)mHde~tNmSXwf|~k{jEB9pD#W@hYSxwkq4_IYco{Z zqz~;3Qg(01D|+lT3M=gV{CIVSZ14R^!1BwtA8GkeoJr!yR`l#Xh!Wq+mGOjMTvm*)fAhZFcHe zWLHYXA7+obBV3iu9I^kM&^~NiAS@uf?b*(oAUFg%cOBS0%AgbLJ$i6-n!6Xg&0yxe zA)@FugmC7Mb=MV$b5G~r*JNTFiQT32sS#yWNwub(n3WyfqLJI7$C~=gkExxYY7$FC ze72>0f!Ny39rx@;_u^UHe%h%dSV+3W%#2|G5ZH+7H2ot5p#3B-FYprI+F7+5!kv9c z{QF@HXAX89%NSzB`Hlp<#urnnej2_e$%B&pvPSD)*4vo|R1U%ttMEN}w*sdhGBrZbWiRJm6kCRNoZnIIL5ODOxqM$U%03hQCWYX?+&aL1^1!}()0lJEwVSpJ zRnGN?--;7LQ~b!UAeekZuGoPr=egS=5QE~Mn1UMpq%);69cF2IOtw6nwaaXS<2VqD zTx2MLpwBZsG68v|Dt!0xP)S$`&WJIEMxSFl}MC&eXm~Obp(zLNb)zg z4ZE7ZT-kW9^qegY0&Uy>=|IfG@h3(|M=RUkqAz?cma{-bVe~^^5lnu6U$ffvg*Ivv!yqSq`~t9i@==Ipb)Ig$70=QTDfm_UK{tZYq;os{x>>hI3|)Bo4=etj z(GV--PDCNCDvFPs&RaX%oz=GYmk@7Tv!ZVRs@Sgu98!e2oUxu;o1WdB51TLWdN>$0 zQB=pBuEq!sa~ja}L* z%mm!}{inayuuYYNSFT|6VfM_N40qzCIs_3Kg zCU#N+3QLP;An)j~v^hOiUTgC{zDJMo^|Br%pwKVLu)Ao5u~gP7t!>g_3e%7M((6KpCrA=t9K|!G#$J&y7jGY7;Hj9~mIPC!$!S5TQ&{W3S5t;& zxB^LSp#QpKS&PB3=+y<7zvbBbw)w_PZGwDC+f=eGb_s89ELKtUcA7LOT>89q9ytb~ zl>)YPT@*5~=gP%h1ptCgVI~5))#vj0JbSr^l>`WQSv!cK|HA8bGaLcbe2xK0uEkR1 zRobgHBn+rF{5*#btpx3hQ6e!6+=zA%doE(=gOwqn>tO64aIePtR=S2}l~J&Zj9P>VL1DcdMR^Z)svE4jcM6 zebd9S^s3h_N0iSYP~kt*NhoMkL_Dd+q>L$SErZv!SlbVy4hSqRoer|6<2OBZD?7HFPaV2y5v=VRF(oF^6i~uQ!DB! zbV3y(h=i6Dlt^tbn+bY_x&_jKE9s_i(V@!Eu&HC$N)%D99Uu4;lYT zLCi!6`wDArbM1i3ru8+p`SgXa9ck42a6i$c^#Darur-@Ad^RVHXzwD!FyLl6a&=@~~Dz*J? zg{}jf4g+q|ZP3zFSfZ|gB(S@fbGXI%*S?;jQCY?Eilu65;HP$Isd}k<)CUinO`hDZ zq6B%$p{Y@-zs`@r4m_AS<{*~ARZDBg7G$`2eK6kqJ|_+eP0ymX{8kE||)lGuv;6*9}ZNT4j;Nse1LE12~Gd_G52J+g3tU^9I zawm7$p@ZVfOZHYWJ|lI1Zoz@ZRPF6wjz3p$|*B|?FP2vnQlv}?)&M>VPN(5~5 zAgn;R2(bo7`>DWo)1#n``1?qpsq}Ido&v@-hk7;>J8yU-EYQ~7k`wMyl+qTgSsu{7 zb3}Hr)VC=jA%cl5N}tM;w_0=w?>XXD0Zu77gMFu$WIZFsi9Skr4pZk6x8xG_yP_`T z#1x%$GczW$+{>^A)Xu!EOpKruoc?V14YRHxy{6NM5wi|_;*E9Xcd4*6!=6RtLPyZ)Ae5 z(P}pfso}aG*5WqtM*M9KguGMCtyJAE`Z8JE!7kEiuDI7=t6x}=Z zE*@dKYUk-FvlvyIX=1j| zN^O1JRx9QEoa8(O5Q%+Q*j_?3MP!*f>Zj8eQPlS6d?{#XdkIWxYn(DtK8=z@)T9@o z*C>b6ksu(T7OQ0gHUOH(>a4xtLxu^By`*($b57Lbg6aLWTtBl$3Ls32SHtE0ry;i* zxoBNrM;ZXuC7vO#+|8u4C802pm49qa+L&_G%lkmDzVYpoX&zr;bAeOE0@>!r`)k4B z&-=Pwf{#;q-#&OdH8P{z{NJbQQBqGUPU*b9@O{U4+4y|D+^odc%|RR_9@!?~5I zGP1_G1rc{J04tL5wjayJ2FOx6cl(FHFYDSW2fSfJUW6@9cdG+1>;^L(PM3fpqNk{VmP7B%D^yjwXfFwg|ka{_o4{0UXiTK|~ z@Fn{NDE*DN$qj+iFZgI*^~5}m{f5xde4H;OX844@9?QlvE3XemaPJc(bvj)|@~Jao z!dX)T=YS9qiSV73QCF}F+_o0?H{9;-hd(Sv(jw+kePQIKk(6B>3s*r0a&Po3HJspN`o zCGx$;QM`K=<`DQaQ$Tpd8$0dv{P=`VVW|tVr0H|J&%Goa^1RvvbQXWR6= z2P!Q8w!HQtQ@ZwUiO%|sib6gD1`D_1ZDIfecNQA$z9&#Xj7-dKb2MR|opILo_w(^E zCz`G=+V33q%w5*QPGFa1Zf-s&Uajd0v5{tyAG3D=qN#yL7^w*O6WgZtkcb=Q0X@ba zU!7}J!bxzxhtv~mGx7`vAEj)aC`+lFXRtN~b^tEt#75=Et=@ zWW%cT3nbSFb+t>iF-> z7nHCtrG0Gh&pJ*=PO^mx{`U2F@U53RzurWk6dqfcP<8&@h2S2!vI=<1_VDG_!AE^n zJ3lwPlvxSZ!ekVZxO4RGHZl)D{pvJsj@<8_H_|dp1;T~HRuJcl!TE*w?VQa zmaW!?S{)zex-Ih@|6SC^GD*HjFc$q~mFw&2ePeR&MK?_$13f=myLg)9XxLEABF=>L zpk9e80y&vxvPud%;t-*bEdIxG zbHAEgQL~6P$jMq3onH55LgrVd1bk~SQg5H2(01FV^yD(ip`poRp|m2lLEQz)|I-ep2L(L3>L3Sj#o zcRr&@-3Xuw9vvY|QXAhWc(kyIq|&SaphC~}y|K8EmnP7^*sV<@O8H05Ooc)0MG?U7 z4G2x)9O-dj=7)4}Uzw5=uD?@Gh$U{gwqJU7`_Z&s4t@#TkWidtWoC082$dpjJ|-78(>g$ zww(ZHkDf%;#q%yL)OqCO3(h?0^k;`5cz%YZJ2bc8I_r`jD|9POUmjd|OCA$UmpKs7 z)nrC_mWbNQmQIKr`vU$HPo+TD&Goc)W|5ps&vwlC!Z+INx3D^6 zjV0K2GfQr{*WyQAR@aa$=Ay>meg;6Lfb&lgb!42tNx__s>B(;D(AN{xu6y0^92Rq; zu=7A6(8i~G(7cTE}&gJ_c(g5mz&`nxtVmyT1tylVOHjEdEhzvt3Po=9oq~@AU zt(?%KA%n$dHweh>e%*6V9aj)2zu9dGt#!E#4os9Gy?g&KZTKBPVUKM zy)K+{jT5qA5_Rx_3rQ6CoR0L8(4q7?aKPju^(MlEw7~NI#SlBh+L)c!7iMdi5dDVj zTXjiQ;$y!*4@X3!x*Gke2CjKmhk`@0B@l0b^ITUWh~L~eAuX2v z-rgPiEqpYj8-vdTfv^t-+zQ4R6jIP}!)UgqfV84;41B7jW8KDaC&KN{?o4ISgoW9> zyMsXu{7Z@zQo+mj{g^Xq!&iEUEdgA2IHOL+~6<+(~C`p1aJ#GLJI zX?o`7O#@{zr0@_xUve7&(vD|NhujN$ITr%BR~Hekc4Lbfj4=X^>Shvfpm1Mj$2wPdkGB5$F|K_Ts$qLGKxiijM^uor|wmmq- zSy-g~TBM;OWJ|=Q&c0*vZ}Xaxt$QCo&DNdRpzO7E*EnSU=J0~W`r&B+3m69_)J=VedR$zn z7Am!LI$-loA%?;GFiLoMw_xIiiZoRz$JpdS)`)fHbB3g-)X1sN<+w4&uJ(*VXu9#= z;ko_D#=+oHj^65^s<-BV3+4vKcKMD)7u{F4qwcLcT1*PmBvHaB5O&FFiNX6k1b7hb zUnC&zw7H)u)b2ir&O_tVyO<*O8&0&XLW^6s;;!YXefxd+geU~HIw!4RC=Cb06_nw_ zdEO~vLSE=`ZW^e@D*O#vWp7R~;y{%x;KI+7g&*02pDXwCRqUZGZiUGyQhh&t-Gpn1 zz#kOky-wTWy_7d#U0}oQMU_hyAR?^Y42BR)W`bpiz$-$kcg5c5gdo-MMyr~A&+FDh zVXf1-L!8Nby;N>u;0>C%ZzuqE;FbJFNQ3g!@hU0Jb!NECP9TKugm)qB4=t;MhV-AQ z9C4!kv{j9MX-Hvl0H|dfRKFWC6)nK3qT?L-BL{fk^hZH^C<66>`LXZECKEby&P#~2 zrPfcdODe3zdsNq$3duKpKO!lt83*^~}Z zH1*wLeWNG3p=nYJFR4zB{0=s+iwXN^m0QdgfA4dVANZ1@P~U43!KLr4IN~Fxa>`>c zn(y;r+JIBnh^eU$qR`P-)r013ODZbz2iv}BkTU!}?}PIxx|!?CDPD-Hc1!TnOnKu| z-BSC<3L3kzfrSvenO?r!@vd#oKL(E(hmi~9WKdG;F--5HlInf7Qef-b62$8SyY6Sv z(C=nQsSFD+*QXaGFK3edXMOoudR)-5-H$59 zJG>b&iP?a^5XERI0N-P!s9>jJ5VGw9o0Z*!7o?u<6AG&gyNbR+y3$Y)bl)0D+BC?k zqb|F)byO7(4}ZtIDunx^YlBUR-2bAR($#iRzuzvOq|*3yVwJziso-=vl{0dIN8iF* z8GEu~vN`WRjI&$l#DToMcKM9rrNpeu4aR+lM}b$5HjGvnI6T~ek%Iv-qRh_>>7)uR zK$WsOpHf4hosaJXamv-I#DDBzkf=(Aa~OBKZ`YBX5>Bf{<4l)R)Ya|dXrV2ya_N~- zR)RV=34!^O?l`UH9Sz|U2p`@$Ry>(9kX2Zyb6;IjFjtIY3*MUwTbqT(L}_7^;&ElA z?kM+GJDbf!z;eC3d&(edcQC*;_>!!hMt`jz7r$A+0C=Z3)KI=#U8|ussRcn#WB7!uXFPEizjQ!7t6iEKU`8zEX6Ok?D`T zFLhy&x7(PV=<2miI$7sR{AaHueBuDXv7IEl8fQKs>F`^BmIz+Awo~P>2U%l=5yK!7 zG-;g_H?3i-4P2NDN3f@LE@F)M$^HK7CO?RT)7i&)%xMCrFV7*(#mI0s4Dun6VNTbR zBT4U%jfjPhJFp31A@Q4N5*%EuZMGe_Q*@vAYgeW-Ml^jvLDQOBKGeB78VV0k2{KPl z(FrrOvcs=YQb~n}z_Pyr2MSIu37 z?@$kkjtUrmWo2q=05Ko8XTXaFq9J$(=<|RcL~`JX`sJXGS*idL?H6JqOcQCrux#j= z+z%Nz2XXelL`5U#S1=GnPtD(xaJ8YVyAZG2ixU;^jHYk}=nB?dl*R%@h1YCoES7I zAYRvKdivLj*P*KID{atgCI!;9?dKMg#=4Z#$v=>gmF-$QLV!-M?fF~2>h$<%@pFTp z7lb<&(~h@GqWpoR_xLiciHX{qd3&>?^%j~73~N3;vY6a5)$bIVU1N*Xbn&7SVTbn+V>E?rV>xIzjWmX6u@7r zzK*FwQb)vz{VW)3zac;}bd($jfMg6eSUQAh9SMdJbk z3v=P0b=!x}<}o$-^n1A5y4{V)Is!pgKa~!aEmQ!`;C{a}0(cs&ns?rpt+=a&MRZqs z4yLkdtTMU5|mW3p*)enu1 z(3rt=T9(a5F6uOGn@T04!1so$+_}VjmW4%r+29@zXcOS$M9h_@sKlf%XP-QPhIF<~J|O9*AWu%miZhYi#oR77 zc2hvu{aK%Y5D!QtH{-@dtZxanI+3)~^YA&Ont@DM9{EC>s$!z2W-!AJm$P;v3D8&A z89YAwly-RjWv!IZ>~%d#iEJ0Vzs?N0of{k$ek>j}^~A>r0lrUCDc`Qr&dhUaXSMS9 zJzASw!4D1_jKbi^=wjaKLg)|BkxgKe&d}Ei0p2iG^?BYdoFw&ayf{S%6Lp?`T61%+0b`hz2K#B@L~h>fRC%|>o;nDE5YD#v@SNk(cwpMmO}2wd*)a(ItQU!}A2BZF zP&!eKVh963kfb-)jLfTF%gwD7Jl3s`8lCcGNWTRPXF!GTbjD%sK+yQxzG%qap(;TK z7%xG$Zp;^xxCsxjQ{(6UT9^!sogSay8~++Ls&I)Vw<0ZelA~&@%N;6?8hIMJ^;&Nu zZZAF;+!;)7POjtVb@J*K-~+yM5t=0#em3^m{((r`wf)&%IuM5Iom<7*TImBxy#lM2 zCLUSFkdH}3@>?S4sktDAv!z2leWC7<&6{o+Ti;O%1r=LyURGz}9E|IJ=$Yc2OFJ3T zkEQ;-F-1p*M+v`GO`lN+FpB+I&Y|?-xKn-1j)j32|7MT$r}Xkq8t|>U_vUv$qTf#Q zyq=ok2ouUj7^@fR;Tdjyju%)BlNnEj$G}qDXjPzN8!Xs>To0lG8>jC`@hybk8Iy9> z1XZEyo4Loxu;yh>!bJUxmITVjMSba{K)91rFWqb?@qHeg!MK{IQx1-;jUlSDfSzx`zURKNaLp46}k|q zDMVD;28%och6j4KLY7zU9W6;XmHIUsoZrtLanbM&_*~y@0+CF4lynHVmR5@C1@WrK zNokGkx*R}w)Lo~0$Rotw+WU~7#pp)ZT&k{5i{TY?t4APB@!ccd z9%!nO6V~=t+*4pa`slwfy|FKD*xlhK4c~%i&POLW-YL(fONMU>Ta5O~+O`N?u%{1% zz9vT?Gr8^v{}&zsw-x!-bC;T>ud-%`ZDkEokzt{|})x-#DUds8RY-XNuxPEcA>pG0N zyMXd6F0zT0Ix^20D!P&CbnQzmNfMH|rpN6fkktoad1!q=YEOKw^Z!vjsTAhJvUv=Kg^WMR;t{fcmRFWRxuH-& z5Dj~qvPgpv$EFyz2r`I(C5R`-FMW9s+%3DVf?V7wqlMI{!05U?zE8S?WJNqng@?%g z$J=dB+N~ydyF>Ck>$pQ!Y!JciLDgp>@zWdu&N?Lg-#Uc6P^5_kpJ?(?v0J!nxU}zd zokxDHz6(+K`rf#eF$}}y8XvcvnxE}(j*hT#t`w~tPQTl(LoA|Gw!Me}I z_A2cNdbGK}&N(Pi)9QMhonxa5enQPUs51lDffERNdINOj* z>jr()xz#-fDjpe-4|2L2iN%a`cWmZWt7?9Nl9~9yga8{Dk}6%zBsBZaAFD&3*o}p$ z@NDx9?T$;2L4IOb{4hcoUt1W)IPh!;PF9TTJ(#I5YWa9Uw5?mc`NqLi-(7VyvwW~) zS1dG$S<_>KS9GLnPF!iZnb*qCNG+xN6Y#4=Smp}W2G&8{9$uqI&Q(&}m&wjl`=2tN zw5soPUj2Q6sivEM78%qcpWZcG6q4pSXV!tDT->BxYg)F zL;Jbdv-LY(Fw2EK2&XaHCF)j0K*p<>EGJUE9JWoeb{y1dY# zD&G@zv{{7DU(lS8n}V0sk)*x#+|JxJQg%02zF5HK6UF@*=*(!>*PJK{kILe+z_5(Z z^9%jWnP94-?UOo=v#!uTdC(w#;Y~%8yk)Q`6kX7~PPp&1+>4?if?vK7CriCJZ()^_ zSrpg!SLIW3yYzX}T%{HK`!gZ2PFpOJsM+dhQfnuokp3;ReM7Nh>65Xham^S+MK`94 zr?ruh`G%=ln>;n4d6dvgzJ-4NMyO3i-I1{goelRDtUX8fYS*((9lEW>e?B`Ae=<+a z#0#fOEwXfL6!NqAM1~&$-06S(`jk`#<`ZIpBW0!O3~MkLA=CmRU%P92BxuX*vJJ*ZPSkYm*eukS7F9V;D9JBTMi=;}U6Da-*CtOrCVJ{o8^JY?mc zWc-}S=)=;9q)HeFD}#0_!c>?LF4T{bBOw?UVUQ=fEk(2g>hNKCIPa{6!2 zOvD>zN|h!wQvZsSW4RY}awl7ODSQ}FfVoZh+%!6Y52LK@XXG@4!3d!TbU;(Scciqs zrya_MK_2-N4nhdi@*0JoWJCz5IC5f9>g@pl=^rxf{IEf$M5KOoZ{g-a9^V!rFeoz* zo-PqB9dL#p!JqDb`8nlqc$tvb$34a1hvi}fVL>aw!X$(n`wEFQVfk)>JWHmcYt;~H zjpLu=ATG6vTxF;2voT1VmJ3X_?U^m{E32Wk(`I(2n*a&72?*igpijNtlLqawC8Ila5+vUZaeD=f8)ga9B!_Pby)dnw4Ufvt#KYA5-j9AAvb)Xb;%MiY(Z>%e^ zroW@aTPU{02!)pvJ;oDn3glQEl1`z-OXS1IjT7m(?p@Y9;ogzOLXr(e2qQ&+ZKi?( zl%I9IVLD;RKH7$F_%~sbP!GZ;w=Z>$geI0+vM9J>2w7HMGWk#ik5=Tq8wQH^4VPSz z=i%m^oGRTE;fLkBPnEV0Qnpb)n{;7p(K(i~@AQ?%>&d7Zj9PiIz^1~BmQt&U8wcC* z4aVSv-HOmAneBnVd^N#rwN!|DpmyfGZ!M_=C4_EgEhEDkbcQ7AL|2d4lQf(4NAMbP z{?NbW<@&e(6+c=ynNX*pI$w}Ghf9>4QMMOJBBhtZr<-UFflYvZ;n^U6byc9uMAftL zS-zrUh7w{EF|mxJj^WGs>nFzb`$`ve9u!7i`?~P$26b*Y)969yeXq4ad?|Gerzmf< z1IfBC0#6Ef`XjZ1WM*Ou1TmheQK8v*_F*Jrd3H`Ot);;~Rb{%Aj4rZkHy9!G2#-9% zaS5b&+P$GqMXTAz8GScNbC4@}v(4WDBi2razTU+zVmO14XL~h~aW%eu~^D#}SBD(~8h5 zg=n1mwQw=mBk`jth9jkA!j!Z%2yBWUwwl@so6;}&!K;(xy-TNfIZj`kxwg5AHJOHV zu!wQ)iM)$+8<4x@=?vKrS}mWgk(UjN1V#vN9U^7FlZ235xJ`4mq9zZvRelMw3U3|q zCWK(Fec3gADOTdCRucm$2JyPpgz}O()=4(VG$_qNV%;Z>9Z>}9+~}eNH81QAh&n}I zMBzm63rK{Q+EG?UE+=t;E0owt;(N4JW_n&SblJ|7YzrY|tI!7`!Tfdm2jbm1#n?}` z@8_S7ma|5A0Kd`*p#s{G7THLa5mOM|(Jp3$JHtHZb2W8MKMOn7u!WkL7!Ds10T7xI zIcLy?&aISG{pQWkur%AaAk;-z;%ie~iPSKTtpg3O?nhb-lp{7ZR}5n!x?+82pzx)^ z>L+KSZn1Q&_&Z^+Qs9>X{zl#<_JAeQ08_uvfCeriHVLBe!>_zJ`IFbDB6oA|n629) zf)TPuBZ5>axfT#6aw z*KdYAHYGn$(5q}P2z1x?&Ob36M3_UoN{NIBOH@Zwz9T~a>K+vH{k`aK&EbqnuYGrX zHm0+}M>5-bD%pR;ax<;|bvIy8aM8ka+@-mc+Mg(_Z zhvJQY4T}jz2v-Is>_`*!g2)UB;T@-nD~$?v6fUIOHLg>K1&}0t^H_*t45IPT%m7TQvH$qqu^w4P!r$Gn-MQiJNeZx&DaReKsdw#0z z0Ul(Y{$a6iVI<-}U12a=11EC)b_^{HM_+M*!LLOYC)pjpcer$)ICG}5m!uwVD8n*T zX`?T|k>$XdgoN0(Wf(yUbHI!Hn!S2I51=bU)) zimJkvnh@Sh1=^&Z08F(`hj;N=kqpUsNB-6;al*^}EwVvCGHu8wvvEltE-(5_&BL3? znf#Jk=XfU=K4s*N(!?KrOA#8Ds#NG*qZUvcWzY;)Wxvg~pDf`3#G?lmpGF$gN;H{{ zYasi&)?-&5yBHQHj1W3*hW!`*gko$MriJ{OCLw%av@C?M{a0>S5n$P|0+JCbhi7|w z$<3?84auMV%fwtlnm8GzRy`=T7Jfmze;#asprO_|raivC2$IN>knOqo>TBoLTy+Q&Rupob59+>N_3?$`k%26gkQa6DotC$8$l#W9)3SQN*0~1 z;W5y9n{TQX^$0xhYH()#t`AeQ^BeZmZAJLEQbyP!wy5qDFNyt+A+NY)u=M-4ro@~U z8Jr^6wY`h(N)1K`jSY4fh{Hvv4Eyo?YS>M{ z>XN}gVpYWb$v!-Ig{h{o>!cG}hdf33lMRnLw?|h+f^(n^y}BB#a%L8?y{^dO?%J782uTHsx$N;J%9-Cq~b{Hg{xYU(q;^ulD_q)IJv%-cl%#(~o0OsLO9-6rfJb7?x~ zSwP4E&x{`-#?@vjHfQy@8bi?;v4?36PkyZ1-^*)T0}6R`#SFOzPhNOlgMxjvQNcwE zBZS9_0vC}uuMr+a^HiR~8?)Kx!;6igASHnNW=CRE%xB!%Uy;IxACxVcT zP#Iw|1h1{rYQk@B(t*vjnpo-3#-(=PW5v@J_^sEac|eP1e7bf0TVA&)e?d@9z8M~N zaDPu}0l9}oJn_3(katevY>ugcSHY|rzYfAp9(jkIQ_wNqd}hiB-G)ZF>BAcE?kj#?{GPO zV!xEsN@>qsbIytP>Zon>PK+O!@`OmuAv)V5=f?SqCR*KRXFiFWz*};r z&M$4{mXSZDopu;7!F~TvRd`7Y#5`<8gTY|I3( zvMlh8b(+=W53(Q9rO^I+i7&<$H(j_&t9M$oDFys6 zW>&ZaX-^b1vD$OUAZ^sZApVjeVETNj+T72-_(JIC)K#KVHo1(tJ>VbTo{l;5&C+aS zwpaJGeAn(9E}suty5rPB^=5+m{=-+V@a_M7b|N3U(O@tbAv{`)U_}K5u#!I&Rvjy@ z#r>?eh#vs|W>iXg&Vcd5iNI?C0m@ngNyg``4V{3y%h#VMx;p|6``y#S6bPLtE}Ppn zElox?+gdv2k20Eo@smTw*?+ps29|ee+amK`Z1S#Sg*#3LY!LWgn)iap{n|ZJLg#7c znk3j2+_?Q?sV$oSCg;h*%BD9`a1IErMQsVNnvBq%0%a=q(1mieL@tKxkOmkBiKZR2 z-{`A;-vaOZ0@&37Aq>WEekQk&YAfruRDo^1HYw4+`j4kWjO({By?P_`hh@6mBjviM z?GGoQZtRJfRg|;+#rg5b2|EVkIxE~iT#gz1?8OFFr3Pw-q|a6)9MLZjkLt&E9`KGttgBH5d$k(xiyAB6ylB zK@1PG2_mZjN}>nt?zNAcB|tB@$iUcnN3bHets8oH*zCehFU`uu%6ANvf}pd|+Ds~Y zp!y^N!&`}f{Z$>N)TA$V$$UuVTID|JvN(AHQ$mT_g-xj1 z743(9valw2k`P`~|r*eK2~xZTcMLW1w-DBnLgGvLh5@`@3hq96t<`XDs8!PD*1q7CR5d%+`-F~Ryf$~P_ zPo6CO9nAbu<`cmCrhtvT1=-k5ejbrPZ|q;{gz)G)S6EbG>hhZ7q2GSvrOElIQMBjy z*BVF9|M=uYlUbcSGKl)Sgik=p)F+UHi6yC$4usMZ~vEKvR0pVhG3zj=IIpD-yy zHOBp6JJ#)ka(*1?$q40H z$-Eh%8BQKTNMfo?H5Ed*wZDa%!qqvUk`JR6Dwi7Qx&hl!m2XoqWo8`k!<98k-6vBa zw@d`XW{MSGE5;E*8X@Xl?bj;SB$a;pP0=~|`Py(pLQ-M*N$ucA!cIB=_H-RJZ%Cz6 zI)hW0gMea78K0}x%@Xr}>$R=U%Z2E@Fi=(+%2p1KTuBeXjepkY!7*3X zW!5sC#PZ-tzp(UFk~5b-+5)wZQY)0S6y-rt2+?F#wa-~pC@$|6knN#jclJ!ipDkcN z$Sufk*67hfra(MtXutra=h# z%-%lKTJ3=Q&L_&}<>EWF#1It#|LlA;>ixA4GifFfJ|R+Mh~60UcB0@(qGlspQ2Cml2QLsN~HPL3OYle)E*##wuj$8v537`NjEI+PnE>jRZWB*g9V{q5GxKxLN5wS6CGE~a(RIu_ zeoy(t5O6n{e)*S5oIwesLxw(RI}v#~E+7%7P}Ck&LCW@|Q$;gor({v~(4H}TP}!*4 zOK^PWl}QmEp@OtCkA4(~&QV+s)v0d9Oe9e7K?oL!~TbKJC)~I(v z8u^e^TINtBEC9;(Zt5>~kPxytVN*^6JqPK*d>kC7 z1wL#LFcbr}N(lFkmew9$x^?4!t283%L>Heq`F~;NKr@n<5#sv_KBr`~7zK|u80+WK zGD#eOwMH^I$=i(YDxnWdBl+z+5|F`L&+LcTdE2W17;^)x(TR;`JgW~fc2mgfit zL(X9}gv1j(9rrEwss<>ht7hnCH`>`~8{!1VNK0$Fbx0bu#TD9#l6HrOJ{iNNZXWE+ z)^aV{U~Wn>O2PyAbPzye!T}FiO#rR@OVD6%9w?HJN{H{T7P=W$>n*GAlB+Ck=EDl8 z<`eB@Q``uYKy(S7>vwCB*1uOoCro9rebQQAyzi)Zi3#|wcwmGTXr2wKZ-znr&9Jm^ z^FT@SqGuZDbt4eM25z6UGS|QQwQBRw4AXn`?dkXeLU~6XzMwtIY{j_cj`=zzkVQM80ao5p@}L0-P(IPNM1I^;8VX5fTKxL3k$55it4S$Y zG?W18l0`d`g-el4s~5#-I%TPpCX-h%w8ZJAuY9#XTdT%WsK`UaNBlmKeVMa!3RD z&u4_`#ifjXey)aaQ(ut=divNoGJnwgn2NJ$R?#R+b2cmkmgPmN-0_~_X4?S38~^di zajZm1aP10yf)*<3A@9|7yoH{Pc(IVtO8<;ay$iz=Ylj7 zFsT}a@F0Tm5xnHg!*=x5RT`c2gW~fV9z+yQMJc_?gml)q3kq1Q+q~RmZN2B?QsQ!OOg;$ zcL%4^b##sBO`rB(QRLy9nosKd&se;uQcS-t9V}{q4NS~I1>o)8UDW9`=z{*@^yRL_ zc#AQNl~i8bZW>i`a_AaJ1Nbyc7wfERFysh2crzjr>mQLw5 zwTg-+gaU4#Y6b(6mVi>+FUo4((woV3JkWkZsBkzpNumDCmJcZ@xO@P)-OC#gLLfaA zk!R(jn(RpjQufLv$p)nnUo+X87-q_8BI~W|iOPf0$}b*pxmt71_=H9|B)?HA6+MBM zDg2fO5{vaNOS&xHr}TA%=b&(kxoD#fga&OR#M0f+zYwNvFc=}!&KY}0Qy_!{3fBcb z2Mdq{3ZuIMcnGQ&kKQ-+Rk~>t+}{WWig+aQcdnE?K)MmEImVe1^n)Uh24C$IOXY4d zD`6B~oX~Y6q<*hKCa|m(i9@<+dx}+3Gz6cMoeS;PS~vAJORY5(lqMOHLEW?~PZ5wo z$_5LS6ee82adv6m%6g^Y&7P5jS7(SxPR1@3V<(n(Rq&<6pP=g)-wBvu&``Tltr{(x zY%v=d{z<>nC0i~|=4X>7Qa@F}u{2b`Nk#wg_0nvUS(l$oHDyV9Z68|Vtehz_CN3$> zt9b^Jc;Peg$NxMVW%7o%O0$uo)3(B3FhU6B@IcUXd+>@3(lVqeHd$&Xb=GM9A(Tb{ z!Gi`=Qrhked>~1z!lQ-gywa2m5Dx`^KM(*Sy>qzY7qV>-iU>c{%usbXYv1JnOgp5E zF!?=|+q!G6gs<*>h^v+fjnP8%9vy6ZQd9K0G%VeZvMJ-nk)N3c7hwN`P(P` zU>Hh}YytT^O5mQW58X=XkK(am3_{Wb-D72#HXna({r15UyU3a7JTO|>mfbZbItexv zRb*;o7ncL`1>cvV>sal6SIiD`h3G}Crf&X$h>Xq1Plg)A0aG&{o74sDa@4xZ5O8!g>FgpgRt3tAT9nQgwPpuJ>Dgb)IZ;1ELy zH}({?oRwCLi_P7-b%(a&c z&)nmlR>}xVk@?FNL8OsVkAxS>;~hcS0sC)9s@uJnjyiB@P_pWNXnw5@kvOgTo+sX) zTs!Hq^0*<{jpG3gs#dHW19v4dkJ|2<>S_q_>teJbxA=3xiBdhToO*b)N&)*=b& zPI@;FmSWCFmy1a_#FqsXxA}M1exa`wXWMhhhU@!FbkfsOA#D}OzpXvf@PsnL{n_hN z?Vf@VGK-5KKIvOBh(zQp z2zCyTPtm)wztRFwTq5D+D50tBNKPnO^cY?;1=1ru*G(YQdVjUmgz%!y6cBDcQE2|s z+-b;zBn&U}p1FvGjCOELK9x!C9a{0SoRxdY1#S;Ym*wh~4uojcmGyEpRW++Jxd2`6 zVTa^GFC`3w`wG%eZ{C-1PF*%Q{Qh*SIk)7O>P{88S{Z}ki{Xk{#PfE~!C)|W6T)J( zjF7egqKA0I4G#sK>m(q~59UOhs3S{+iK{7>T<8nGh2yv7>a<(->$ZC*&>`!H71llve#$^r())T*< z{CyY;;Hp4_)mwCtqj5^-!yw;;(AD%xIe=`ZrGw2U=(ruK23+5qr--zt*X}YKdt07> z?s@RRgb_kRzM#ErpZR2=)wmiAMhJxyI>l^{;z)@@hl62xCtqwZ=rKs3PmmpAgJ(hd zB0wbOgMzyJJwbM+GVmE1X2`pHhJ%lst=MKRQ=XYFD-{DCS;iD&&6VM+hY;m#f<+baxTUfDM42d@yh-CW&DCP;vk1 zlKO3q=&R%&FIhGS{xfVR^SigEn)QR}DN=-{jbyGpk-^rvbBr!e$qW1$Q05(_&4~%X{aFdy{1^v!0Tu zoHxZDk&w^h;j^+u7Z2*nfRYi-v!S3@O^Ih`YlEJF&IrnNhH&>TKbOGW*&$!)lHIVx zF#17A=zDOi+|tX*5c#iXCitRT>Cy3m9umCu#LVTR(ssgN$N~Q1v2oq>^6K6NdLagb z5khdZnj_~&2p!7zk3b&M59s}~@1)?ZoloM05K1_R^t3YDl*j`3(?<*Rp?)}sw!8i6 z`VIw|z}P~{Vj|*+;Yy0~AR6^*b;~-d5bhXinGo)T5T-TrqYiWsNkRyPW5e55HaYDJ*3|xW2bI zsT2_WT{@Gt+E+;&mD)vvAt!kB?deF9%!LYr!3ZHz)v|yxX}{1Um@6ZsMq*hGL_(QB zS4ID8}z6dmdj!Pkez<_aETr&8-kKE zwl`3>qo5yJIYIb{8neSjGQpN!eOzZWEI~y5Md>&%zcLsM7sjtVFZrv-twZBNhQSCS zaCv}8G!hN?ghwv2&xtnJb*u=15o+Yn@tT~>D=jN!ghl@vt!|()ff*LlRMn^>wRjr+ zgrYKWzU?g7y|)A@qla2i2#Nl?Qk_2^Nf@0^4dIU5ri=zUHcx8Evt4isVN6*d$~l?g zBqOl$oBE2B^15^YWhixp1lCV$cXvF54qO-YjVRvCe~Gg}@a>ncI4IJRj^1>s3~Mlu zUHOF0h`%DN!zTST|(smhj3L$7-M}>qhOD|=V z1s8gdr1&$ZE~BB3=bdta3sDK26Swh(K}@6Wlu|%aEmnmyLRSR;D;GY`1FYkfH4)F} zD%x^^F`1&waLM9(uUsL7gBMcEh%*>onCnz|=Hkqng~4I!kdl zXf?4iC!r@32+G?as7@hlo)ChY2TE5t0s#DcoOl>=U2>-`>V;cf;Q4!(gBK+DQbjpOMeL`eHZfn`D5v1 z#2E}cUA?T1FD%Sdr@YV_^sqj zI^-?NME}W*2vx?s-jCr6+&v|Wk_b5URug2|ZRpKQ+__vzYI_P|oYRUOYx$~2-L?2k zph^r#D3T4Fq%3pHRet8JF?|8J&J(mVkye%qqEUns17Ybm4HU6fa?M4r3Ufc7oqXlx ze0}vf-_Z!NWxV)ja%qm-$~HEvI$r5Kfnmm~lw=%(;epd-O$eV|fbILRO4gU~XXov4 z$pVML2%#tv1UGl63KpM61v`d1V-O-i)#^%T#VpgVJfI47q}~#wpE$a{C)C+IF(k1w zbuSrk^B@Vv`67gF|LmRXSJ~1Hg~hqc@tA<5ttR11SJINlN{(r-$W>Uc=Qw}M5u@mevNl#R#FnkTt&W{N&~E@!97VUcTk2_pfl;cgnL1|GpRuMhFE# zrX0bLN2_QtO(|)qq-}7iXb2-|rJ{A$M{2Z?I1djA5eZWdD{u2K3d%Yh7q?X|JXZ#o zfHFeLVBxAK#VtFLa&aWTsYko{(hsR<;fns2;2PL;Oy zi$Q249aPddJF{W}GQhc~=*AD77U$$7aE+2E(1FN;7la`}i-9 zqT2Jm|1+25d2wQPvmYniITEUY{0sA2S~M^iA(Z%oGQx+w%LqYxts|MdP@sY~ZTBfC zVjUO?DP!+wi3B{-J1HnSBx$G`e$gsx4v&?!O0ks)j7!@U=Bj@3nm)16$fFJB>SKim zMw1XiE^V7i90g6jqp-odJzD>ZRnPjKd|8Z&T?!VOV%P(+@P>)W2t5>7r|cRj-#S!; zU(pgPLk+VnGrq84#qzlUcx*(iQ6?huTYaILo$#{Z^h<>x$2e5 zJf@v&&|on9-4o*%CoWIUUZxVSZEyN!X;vs4Qen)Q#3WSFU)Q*=AT~>y5Z*YjxC#gj z1|x*ag4`s3Um2nIf`igW=0jYqSdI=&4#UO_g zd!<003Di(0B=P9|rEvvq_RQ`c%wjxWnCcopP zSLaN(d)c}<4Dl;;_jr-Q(X4DUL4$6AEGhBLeStwJPa@U?bSTUNHTRRsz;bX}d=&CaC)ZBOJhY6qn3{e4a1dezF7!g#9+U>h|Xq8w`fFWr~7* zVPDhRPS&Ate4l*xmB~-$5?YZlzucf7#@Ak)l%YPFyu7IHi@{)o5CqM^C?hQSCqwQ( zjRe%Dq_yRs8g9~!y&7n?8pLaQwtc8bf|ipU0X}`seQo(+R;)5+VdE0;?YM!!U zdKJMZAcVx?_m7m|u`7>hM;tx*D{&;CLXQ+I>DBI2wRoTSvZiW|!d0yAC2O?vgiwd+ z@f#yI1jd!rww4$ivGPZpae7olkdZAUnY}cbkh;MtlCCg(TP&SG9u`wRFU-x;<*1oP z5%jyiGbjthJAt)z+$o$6TJ%T<&4q$3R{>;^W1vq<_o@vB17Eq+(S7;F$^U+KVrw?} zlXQL;?JjaW`SHxWHG$AbIe+lNwEh(xBWQ$pxxrDMxlFxrWV8<^u8j8M*UV97F~VSk zFlZQEI_w>^JsdP%Z&UCw_Y|D?yVZC)627nRk*HlFY57Z?@M~2iNwt)qYEdBXeobHH z5>oH^#+cY2EKJKCax!C-_CTop8*@T@wM+)F~2=ymMp{j@#evrU;Rrc+(xD#s*wyYEtuVve zhKjT}2e6}^!xhI!sdLltsYl(=noC?_ux7z{=TCGoQBcwwJklA+KK>B-gxd2n-I%U$&)vLrOul0vIG(kkh7;n7K) z>_p~}vdM~T`*uRFOy?T$>y`}pW`mMGebu8d8EsSK+rs2wjg&h6tHH-%M=Ql7GdDsj z>gavLsmO!lVit;cyS~RMfwh%^8TJe`7z_q@8mW@;4DCze$l`(DhMN{n%v>fhmFL$k z17915e%#pH(Q(UKmlA8WV$|_$p2%{sI))`kSOXUHbtEAA%r|;+u#}!rcDSLR_4}0d5{Z~bzUGT zc?E}iG?~eyvt=Mwd%N|plS%K%M~87KWObRhrLaAZ@0F6>T_Xbm69WwfL+03gqImAZ zIz@M{6=x@vUihK6{U(Mkdi=ulWgZ+yBuae()qu5w@LYac&5CqZmqf~F`k+AZ$hoH4 z338f#;riaic$Wp;M;4$W(Q(2|t=Qo_+N7}s8s;rqEmyAk zyGJ0U2|3}Bv*nuyi_&}|-MDGVJbgJWLU`)^kc9VzdI_kb zA6z--#Cy|q$NAxFQ(D7Z*He6@7$USd)-dyyx?kv*FXlULFc=}E&Y3qN;gAm?27wM*MjsodzKOxi(uE?j$Jv!s%!6Xxv zHCKd?X=uK!T1|kwh^tig?oTgS6wrHpT~AZl-3Eifu%*9*k><50QW$FYXq`06zkF=G zHp4T%V>{B{KR-1At!m!5HW+I3k8cn=M z72V{)d0{XZ9yvD-ZxONXcW+It?@2xytTJNA`CLt!CH|Zd<*;^~{b$OqqVMhUEX*)o z9+b%wM@3G6QfirxtE)Q>mpr4+BcpXn{qN_Jw#PVpZrlwsIV(Nx7aa@+BZSN6tSLPS zp*+ziF3d83t14hEwaSo;R+wZeRgU7OxND?!LI}bpoT=Zg1ub)^lQ!!eE3@B4BJA9`bHJaVQ{Nu(hleLg=eB5O2P9KHrs)RbHNA zwk_@W6B9xjly^DuoVL>=*N9ONS*fx_SwkB_F4!Pm7`3aa?R?5;Z9{fi8p;!mTnVat zvQUQgZ2g;9Zt9EE^9=@r0m16{I}IE6p^ts}1?jBNEc)IH4M+_htW2LkVP3>_^s5b0 zF?-&fp4X8@8d}JlM?RQl4iLzXYj`d{+1A((<}*62R2}p-Z0gz#27?hof_N-ad?PtA zfsimRPlRw^s;%=G2i!W;>Y~YfbZTY#gplSFlJVF!35#b6ly_>zvd~ZnB8ffK9 zXtk@sPtXSEJLtvNeD^$R;CYEo;6%ZzJ&l=bO|Ma9oi=otY~VWcPMLF>IxbE~BZ~U? z^_z88gKX7Jea)?>!C){#2yPql$&nM2{W5LbT(fMDQOfAG0U_*ekr2{LU}f5ba65jU zNeSV7Bk3!IdTz8HlDV}fp>f;LoTbo0&GBRMRHzokbhm=eQ9)sY`%hPzOsvYEaqIHA z)|Y!nODTHE>>Dj@=v|!Eg9d{E`b0fjd8Q8Md3StP6R>#v+tX1&3~okRed_&wFIQZvGyFgwl>KIpT9J7(?F@|$;%=A z1`P&-5yB=ASfmt4GW3t<@XK1;lVKPa5W+&MHG~fb8F%YQ84U;+NF`--+h8#s8fX4;Ltw~9Ui_P9EBOz_1QCQ~$G`Io0AYL&Y9b0i}azfkgz zkOW&QfTS@-`7az^tBnO^!(>woQ)RufEMfk9U6mO*(S z62E9EFQC9}Y3lKA8Gs5F^%L?P>Ii2xV-()^I?<2P(_-yRS_8T&zq$xLMtE{^7|9 z?Jw%{b}UPT5Pt8~Kky23D+($Ir;&Le^1pOx{XareB?eL1M2_YAPMznB)c%e5}hrMKc zmL(Yu1$CJ8KfGGHWjY)Kxmzv(WknfIam5adxomSIgo_OZ!#_PW5wX6!_C)j?5$NLi z8}=}Is7K$Pu03a8O-DW^Fz+NUDc$iupON#E0KHB(g-2(rd)g!C$F=i~&pYyzT!s>r zHSy%7%YO{hok|vQphV zL30xW752gl-K;z&R;VDb+CMlZb7*aSV3I+H29V)B+;@9fLpL!ZKTBkgTZja zKuL40i5Yr1lq2V$7V>jB4xUvfD6H-Y>39r#ZGWB9p87b-XZDWCfDLix;*2Jc9+wL&&rx~5(a}ITS5q~ zk|58I5R!L_#pP8Q1hq2H4ZST=9Zs7QVb=A?#6Xe>xPIBlBQk6P9<}mV=7bQchU%3% zA(X2=7_>^)H+o?~wiEK;gR)S-e`OjILiX)LW0eg638ZP~_5JX`;@oBc#pQEP9P+$q z_%rQIb;THsyC93OXuh=#2E%XP3YGl*&vQ{;K}pQ$2h-YYv(ZqrdC)`gzqRN5qf#T~ zxO2EP?>x1P`G>csR(M?UH^Q9iE=7PfHuUMjKOwhq(|frvyZdyV(a5%lTrwOx+2r3+ zxx2aya@&v$*hv@+hHO(tfpb}W$PukX6{TQ>p0QtLeFw9d-;| z;dKd?hnM^|;GBN5~CcsHuH(i(lEL z_Y9ZiZh9>X2x@3)8;Cr6Lw{-OKnY{Ln}a{`TjwVmdSQT=`trVPWB!yqz@Pkm0W8|8 z<3V$dvr6{#Td~7u$F~gfH@e6M1&_q2gKZjnA&> ziJo&^znl}5HC|?0 za*=n<%o@+$GZP0nG)QO$YOS0zzAU75)|lG1#eQOEOC&$;gfq%Gn*rju#rlJx&`Iud(@gd9T2s_9hNFxTI!+_<9F!XL_bC{Z>0+_-es8J(N9mJDxGJ zRbgQLu&w#H*C8`f;bzw3BH1{*gg`6rJK@>oBnJ2REGPqA3LbX+akT*0sSYpD-w+j{ zgi=2euUt-t0V-71)M819cf5N-uT(}Lpk>p?BBIn--v0B26+t^yL4tNb8y~QvCT#ur z7aurL#qD*_Y}7|U&>#*8&o}oO5AGCj)R+w<^_LSx!~nH_Stim5FG-q?xGkGq8iT}B z0brvd!kq5I8wI)Fkv_`H1gN6b#%5FN5&S0Xv$EB} zbI=~_Cx0L94;suA*3!GJGugsJRlc4H@O36>{9@qcq?~GH-CFQdYP^Txr>U2pJ%MOW zERo;2T)^Y7RKpuHPAV`O2r+r@2jcgl4=JE+Dtl#MA~$O&sc_Cb2ni|31THEpBNXFv z$DFV0U6n@MNI6dAH@F!PKs?1Rd`F4lmYC9_;r9)MR z!2wkS>SWauxVV&HQRzs8OfT-A%yZiUufCGbLqV7t%Km`QQN?|8r6l^BrilzvDGV4< z9tOCG2Q1!fCgj9GUyj>H^VtZQAsCDNJT2KcN{K3Iy`fE$XW&_!>*ike{N#_{)&R>B ziI3^D^%!K^h|ij-y^}q+>^lh_3Q?bV}b z#U*|UNC2XnKB-$^{E`x?!_}6VPa^sx4W4}^nf9m_`B7R^L7hyQY}ol8837-IOex+H zYs*a*Z^}%@b5R2jw^UQ@gQ=R4Xw@N<5x3~$mFvyKZy$UR{i*9K+)m^+s%+#~;g^p& z`qsAZ`T8tgj>~AVm`}*>ZL7zQL&}2^*(B>?iLH!S)1+8E#2!?)FE)^UxS35Sy~uLX zzCrJ0YHH=nC&;;FjSXJqMNxYb1C^LiYEkna0~%kV=xK3OoAog`@vJNB*T#Wdm$ZEhD7&jrzIMWn+I zl}H`Ke4)Z$ZvJN&CiF0_LIx<`<(SW#cB)|FL>7*fH#uDCDs_7*LS2*Yi7HYsC1c(& zVEE zR4%){IacuUyC|ViFWvphBl96g{#sY}#u>~?l1hmHwheMbm<`cST|b8Q3~#CTx&;fU zv2tmZ;K@_dm9;c7k-3L15_Poc8gx)^+|tz#7%q*As8Zwn*yiW(`wj2&sKK-Fq$nN* zXBK5%!EG>cfYbshf-(4c3z=-mzk>oWT1!bak`HBZSgpupvL@&|RaRuxT}edg$gtJo zsV|H0-^PMHP|EV?Rta?nK<-#>NftB3r{p48{bCu^G~2y`>4|()?$xU$?qHQ+I_ea_ zk>7P{7AkvIR%FB;6MB*2_m~RDOq<`p$hVWzwnQ_Zt<>+!&itN!Efp5t4v!>{{$3>z zM+ZrBP%;bCu*5)|alavSPwf^spD_2L7O5}X z#=(DI0wde}Q@Vm=lZY!~2RDWUKR2rL?&J0crMMG%-i)$}jGP{bdg)iRmpSWh(9lXEvg^)0-- zpd+O;NrUq^JJ+{rtbHBd{Mr6&R-|) z?DJ`TE9eL8?1uLXsh7o5p)s0F|Lr@hv`}`(d0a@-PmeCMV6$B&vYmw-q9Oe(JJPq5 zRigD*$)%zDUyF5|}9C196X47q9f5e!A-)8r=w>DoDSH^9jt;-iced7=QA1}{4AX6QE z@fDnIAVmYEZ9 z)TV@nG$~EydC1YBC)u)Qy&u|+A#%B8txN8$Kr;Ascv(DdA8p}<0aaCn1$!gtN3GWw zPAb`?#({@}m`-QXi70b!_Jy=lD?``(;iyu2XLgQecoI?v$IWU-DWio9xZ4{I6yH@c zW={j8C5YDdwtb2F+LwBzs3@GK*FowEm=BN(;bB08IB?k$62njSGRN%=9;h^_-@WNE z{np~bUWK52I)F=F^HXAnL;68aHr~J3sx|Y&sX_-~qGvbQHgW3jf71P_h_mRuz4{fv z&-*d$`HnUT+~?fa$dlFk&RVC0|IMJAS?per`&yz-PH)L!!iI@X35PgZyUn3k&CmRd zfCxuYBz(?Nz)2?FFqJg1ww2wdwb!Bradf{ zQ6l{3bp5R5d`)2ircCWUB)iPUFne5tJfJ;34dIRXg!U^rTZgq$R@4>na9dNF7Djia zsX;i{$V&L8hfDseJk_dU6ZlAQE&1*8vocQ?%LE?zW=Y?0g3I3P(+6EMx410RNELb} zk-sNu>N=G3qFuCp*dq>vG-|81ruv*zR3DbCN!U5cp%lXOj+(rSL-Z&8!`Yea?( zg|Q0gBW?I3WAA(COE5G}`@ev?WR+yF*l|*cUiUI0P+IiLe}DFDa&u7l=LHpc`mTut zlm0js$3U;7H@9D$E5;Rq%-m;V>H%}s#P#s=QAX$W>>mv(HJHD`!v~~x1ad@h*D}6Y zKE=R};g~|w>2gqkI2T$sj=jb%TtzZ_=@>|Hx1EPCE9F?VZj2gC*u7>AH3u}ebpDo= zQTV^z{ahZ-nEyN(FYSHt*5vVN+>Xo&&7T=5O+WU^{nvMuLQXVKrufobbn*b)BXiT_4nZ&8FVdHsrTe3uLfzoz zEsesU*^c$gFtM?w!I?%uH&jcCLo1gsH967swqM)eB}ug*SpTiwZ7w{F8@=F*1CAnp zxqtXYG#cci@pTNI^Q04}_*YC5o&<2(o>i4q2#|5jnr?4EQxYz&;n;Z)GH(gBbG9Mh zzRf&2=jFGaZt7tQ0uHAvN@i17v{k|?3u)CUGTYwZD zP+-VDj~`tL^Y)Z)qy+Aofxcd&g#c9nz)}QFpY%7=kD}WXJP6$7kW)__pnLj9kMM}D#2}~t zE$1~VK~`B%CeD^1U1?HTK;;U3=we@m{vM*b5`M{{eFW_=7xq~J~c1i zlP5l4hw;b~%re0=4ToT!sBzCIDjLhteNzK5~byJ-tn7cH&ICM+0&T zAlb63AfK!}N?jzLWz5Ux1nBE{=I{!EE!&+F$+VHvB*hEUJ0J-rit?ww-sx*v(i%u4 zU|m@)rt(tq5affz_F}!TEsd2yD#3jy%$?yJXZg;Uk~JkS5o4fjv%lmq?UAhgZ@Xd; z&@ewCb@~wwbo!csjyY!&e(%C7>>jw5`Fz547#H))q`J+nvSv@iSX1PCz*njMA4@~1 zSWM=$HGJT;ouDG#=MHNUC7*cGgu0i7@rxjTbvfPqk%71!nf|8DThWvlI;OUU%ZHJ0 z-vTMh`m2Nx-oPyZ#;0n5Xf&CB{KJ7bC$ZiZ&F<|AyVq6P8Q$e6JO%7UwF=c!XoD*ONsl@%W^SIkK2LV%-LITMxw^N z`PVUTg=u#1>j1RFfww?*j1H1Hc?e1Igy5)QUWY{3J==mS#EoXp1=|4G30$I?|ZTt^8S>U(% zW)%=Fin>i>&vi&|G@cEA+O`&n5eHqbYL}?L6Fb9xR(ct(t_OZ!mQCqc!tP%-lo0T=zt&pb}4%`I= zYZn{{K5Ole7I55I-2$S+ZbH@+xHJj6fKkWQVPAj`TtK>`pmif*^q!E6ff{?aCrmC+dB_9SUW6B0^AB)ehK z^Z0jIOf(3XtFw}}(dvY>@q|GI7^^D!%R7&^u}B~&lq}EP)k+eurJJUDT6eOx;>+jDRmT9Hp07b0}&d;l`j4xdo6WKx*;&D*}yp7)6W1$dZ< zF^J`1QYZFAEcg;lp%hwJ0|*LqW^%(;g6&;Xi`OOIn3S(7kAG3>i%A32QH>lTbf zhxjdX6nmX0A&kTDeR#(ty1_lrNj7UGR{(aObx;BI-$!Z>lwHiRDg=usNnOVZ75 zuLPt%M~z6MZmYF)JUT#)7!lPr+eRgv1T69e$gxfTd|q?E-YNB}m zpwip^8gfJy1bHv+5%b+A+=3O^81#bW1znm&h&GsrZ>aFyU$_=YHQ1SN_Wo@(Cl~(54&wZ6_Bc-a$cJo6rHDSr)(3Od=S}e3RzK#n+Rwj`S!#YA#Q9#s3 zgc2mRh@7<+b&|dOkLoU=ayJ`rYI5&FHWrlx2GuH*ICAHHc2=4GQ{ju0t4C*k-PmR{ zpH(XU6hKo~@SF=yP%2Y=v^=btkizSKS{b;Wh$#nqzH#jfNxsF~4ugA7CwpT}-g#eh zKH#uXCP<0HLQNAbIO@eDwEIRYU*Z-G1-NjaoG(?d!@~;kbElr$gqdh+S+wx6c3cppV{e}|#InId``Slsf#Q7N$eLO3i$BI(U>{k$v7yi~ zObz`9-!Ew=x(OKMdHewZV~0(*+kI`yZk@6gB{J>yQ>QQvkiw&+BO_|}$U2((A7Zlymz zrnSNz@n`q40!)jhVs!7{=!+C8{%5&tvOqi=y8~0GCzFF1LkZL*w?LI5Ok~Fcbc1QT z&M*E9#`MlM(*Q!-=fh=g!HAHk&JpGET}_6h^Naesy@AQ8Fh5SzCQqQ*7kP_SE~@lu zmfhQa|FFHM(*DS_DX2&ih#9z}J7wzKe2z6=KwrQpb9I!~%4LE_>id<0B!S3SAFxh4 zjP%ydXV}aFc;##OS7%=D-xM4vkyR<;ecKh~HBIoTb3W5OLstn8s>!u?`HL$r$DYjB zU{gbwV%DUr5i$~xlTV8DUiAj+7E1H&x#p;$6Sh$yP*mpN^Xek}eNLCpf1!MKGVaTq z;Ka6mW60J_UziO9yyk37FMHEa|J!rT>?@3eR(ifU`T5WzpgD6uFYVAB!j4vl)HJVm zYwPSAaMhaEeL<8xV^?^h*7xA>UQ{{wA@HFA-OS&rQw_a(NY`QbbjJ~khmDv5WYF_v;-y;?5q<$poR4Eu&_e8A-i<- z5|M2k%?Qa?vvs8y3O}^Uja-duRT))cbyyp>4EuGcRwJqeORgWEEh6Ma>e{>2mEr-c zg5piG-v}i1YkcR2Jjj!UvH|RYrVp%h)O$W({N^K;)+9fa@`>kO#1JAntSOcoVg4QC zn*5*Q=i6vDjz;n5tR?_0d4B2C?xkZrp9I4V#Iu9EJq!Q?&()cLjHG6rI$UE5>F?;k zkmPm6VJ)`)J-C7JY+QMLpulpO1fdc=$~QFQO}#|hbjHT7V_1{l%#mYatS&k>Y&+Lm zZ!Zts$f5u7iiZ{w%scey^clU_Km)-<>`}BmSc7^MU>9D07M`r5k-m# z2SshU;oX~rUcsL|KY%`FKK9^8R@bvI?r9ux5$D@uie4b#Zz3AYzlrVk`x~zPwYxx@ z#ImR*L{#bjc>BmX3@^cnJK$x(nDxM+r70UTFcQTIE<~PP_@9!tE8z?zYIGJvY1V>^ zS!Mc7uH(rfUk&z-s)r{jy7|B6r%kn55Jd%Iq6*;Ky_Td4nsZG0)k3@bvd&uQa^$~< zSu{`(ldtSF7J}aR#P)a4{pW`h5q&s&(skpD3iOcmOdWd|lqmmGynrU_0rqYSBDns& zN(zp(%PI=}g=^EaeGA8e)Z2#-tU*Z^!%TV zz!;I5>g3696Z2KMxI3M?5bJDJC^0-kBe|!l6h&V;>bTTtvOA%r?;aiN+!Qy=&Lo6v z8!bQ~;JB>mL=~ey#Mhk{Q$fc#2cbUZr6@rD%y-?kk`cX>8ENBKF6e31n-1x!{n`|# z`X6HdyG(M*uc)Yabk!cvz|U}E-4=idUqVQ&RtC*;s3LI ze{x&%Ym*L5u1#LyaScyoT{i^gn^SERbjbNiijaY`{(TB_g9<8Tv=9uw)(klLLNz(I zF4mUhpZQy1#v9QpTn-}^G#>*#;n&yUYEmyjWK7=NGwYBTMuK~K_+dh-Td$F7e1H=-N732xdOCE) zOb!3f6l;gvsfhj8BdBYr9FU*n=lm|ei}M;-JCfWep#ph!pjeNbR4&E;ainW5%q1&l z*?nM4OeuD@7%Mr~qW*=b*{NM}uuz>{c)|OUpIHG~Z=>~5M`bvnlES?aL5+RKefdjG z@sk>?3i~ITXaRvb7ewclVfp09!)R{*utIqda*14L;j(L(oA0#v12(o_DG$P@y#DO7#06j7LQxvE4A-n4x-nep zZ;h3{n$cfiEQ}z$>&Rb%po=&XuM#v4LtFvj$eD}Z06TNph5)S@2q>dpac!3kJ{At6 zdkG)2@oJjZR#;*dM|TRV=u=KCH{>La;ydv{yh}2KgRnc(lcz|upd2`@%0Iy$dVwq zJW*szl28dJqmV(>=*5@txyE{T%t+vugp;s1$x^=qRrn`}Z>5U(H zfpyAv$CQRBsRAhG5TxHr()Vsk6BLjdtP55B`1kVnhMju!O$Uk4(67HAeOtE7qQ4_= zRri+aA{h;A(><$X zDSWcPTsS5b6L8vZ&+mih(j_vUc-dt1UEx~(dsKS%TGz@o2#RFQob(%_EDv?_uH3~m zXZ&IoGroBiPlp9%{9hZfcV37?;)&SkjWF%%vFkOt(7dqT@^CIb=JV7?aOMtlmj^rt zglxvTuNx^{b!o7pK7w~wmjKwlj~C3Ien+MRp?=+MC25mIy-n=AdtMc_47Ca5rn?c; z!Vso(oYN-pg|f`VFZXqD>-aSftr1eTj-ufU2J0v1CoUPh0gPwPks!(0drtU3qoRJU(6R0HV$ zyAUVmbGd7}`MqU3>i<9vFFEac-JX zdv!J);}c+l6IHIrOc%UU=O^WlaZ{H={FKw;G|S3dU;^%Uh!Lr8`+KBZ)&%kfrs=`s zEk?EfGzCpU<)s+GEAsq@8?6dNZhtZG+RCUk?;}(S#9)mSFSL$t=Y8Uhq-!#7^`f+^Rl zBwqf{Cfdt`W^u~i2I1ynhOiM{EJvPwIR2zZ;{9Sf0I|l^!f0r3WOXe90o}b1O|lJC zBwbBu{5({v5Lryxu+`9|jK7WVW$9Wv6_C@{RqSga=EFgM+j_1Qt#y2gUi|9b`h`Y` zN32t+V~bUQbR=FfmxU7*<7X3u+V=UMe>JD4fk{J z-&MbpD3Zk3;6gZ!INjQ4fw*>c{xVGx2{7P?4?(j}kh`CL1m_q&Dh>uh&wo%>H2=C$ z4T}{9Het`IA6inpGUC>Xa!0*kKe~mP_jUG8YN>X$nz3+vtcnfc{ciTlKd3;qS%Sb= zUu1=V6!#USg)3ralDV{K&R{X+5M#+ZU=>Gf>gg+l_pPJM(|p39koonLN=M4Z0(s5> z8N=Qyc;x@;FLYFV)co;#F``@yt>58}{YBM&tht*G#6KdL`i%?R$MpTqY7g|WR@ELW zBSO6s62)#I^T?A5`KfGO)#bN?7$cY6a0@;^n;V)z@C%{)Yh`8+s_%pcU!3O{_L^JI zGV4vH(LufAK^f_y-}&b&w+OaD=2*JekklZl%W0-{K5GMnsbHnDd^%r$LKl=`<+Xt4 zBr;-Si`{$=rc{JiH#XRd9;xF{FB}H>4Y25(r3I*7bIu^XLjpj91g*-=4tJiM7eT}h z#7UP$ebeh`8mYO;fSbEY#)j-x>EnsqWd_Uah}A9h!{I#fKiNUbpHDlH{a(2I+e{q; zBGC_57&s=o7MFCNmftbI5Me+@De#PrJ828xxoY3AQ_9`kw~@@$0C=@i!Bcj^QG&tA z8wvwnQrQa(x`10iuOPtSEIe_g4d0%7zHh<#&~&i&lNpz&HM8JcdB1ND*wS0-ygJ1` zzM~6M+1|}nQj>L>4srL9!y22=r{-QYmw0s#m~wj~v*R^PgKHY!>)`RW`lDo342=Ww9sChJBpAKePpdrX ze#HIGE%a`#Gd`tM z^5BM}+7{VFJ+2Mi>F-^O(;&`ZJ_fA+bYT{x$X9Y?_|m+P)lVCzhx^?vC?wGQB2xL5 zVvMGnB_X$h2rx6L|Dz{;UxX9&$yY(%(4t{;exanlud)MQ8Z3jDUMeFZ))DC>?EK-SQ>?w4t6IKo zrkhC(wIr3azNT|l^;LOoY!wa_;}t`lrlSUt%eHN1uhqUy}GPmOO)*na1UCWiiPUCS)2RA0rFfR3j`6)uCDD3tozV(C(PG3(b(0Bj z6F*v^AQK>dC;68G5brX$#l<=IY`BuzSa(=T+wa69)BR)USfWy3crBkg99M&;$Ns%$ zL?p>3VS9vPiT!3d@8HUJVc0*+O&{kM5C6cbWaa3@#7+rXXqp;uJDraurRvb}AxvYc zs=OZ|vIW`_uR=rF(ardecy5Lhk0QZ2@A5vhb;}OXnX4Ip>8Cb`j*5U>??sYomL!W-QMt zT-~@9XuM0?^kX`A-kJtQ>Dvh-m|>dWsL%wupC8WHb?C@!VcwA&F+Msid~< z?>pF!JncN47-2B5X!w-fB@g!wYZ$~t=^8?hWo;(!ZFtNy)kF81=1Y;?2c4eBciGb<} zeO5vogFsfu4yIE33PItgKSW7zbN#~u_po~OSmV~Q4rj`8|9r_CP`S9 zDPgr-M)%*R&u&G&rP5!D(steun8t7ct7mBh*BMe~YETGm7hT;t|Ymi_(j5?a4 z`SCEoePCbYWw1$)4x_f=!k;yrd0x!`F6$j%2zZe0AHOFqk&qbqQ)5rpi%pnH?y6&B zf%7Jk_OKI_0&}^%04fb$6+JR~=-u#Z#+Tll;LlRC7!+5?NWZ&Q3nb~WO+QW9VZoB~K5Jf8e! zE$fN1kpDnJHl|&Tg&^2!7sQ63Wf>C+yV2MBynunVYu(EIAHCOM*;pw+Re5n|K#7k2 zdH5qDb;F00j!JN+ZDRUN*K%KU_26gQ_lZ~Udi3$(9(9CjDw0pc&-1H_%m}p_rft;c0dH(@VnLN6tGr76YbFg!8@!Y z;6+LsG7s;WjxrmMpT4U?$v_~1m9jYRf*AY8gg3Y{f_>)xc{fxve}E>%uhLyKBM|;M zgZ+{7TRld|a%=9J>t0)p&{-5#ifMFTCg?{Uiu>SWZ$0)<`~lz{AF9BNgN7&Ig{y(+ z)H}H)z3!MR3wz^q)TJs~1wWmS3*}8+CjU2~O4)1F`}`?5KAm9wUQolmYR0_5LJ*r_MZ|%e#`#C?&d;#5Zf!XRK(BFAKmx1(J>d12qyS2V4I!X;1O*Pci7b$U_d&pFUj%sPLRhCp4taW%w>!4UmGpIP@O*8f z%x5RZ+_T6(71^5I)v|AL5#gCOQ`vYzqIaQ)_W&aCBj!^tAx((Yck${o*mq*T5KUJ4 zf?lj_ifT~DU+QDp`6i=i8cVXn_#b*g()WuL-%RDmq^;KNU28SuV80X46dNLkh1YyD zY50*vM7Vfo;*Q{kB#qgr<>AG8fOS{?Uw+_tTDv;9keY?+u z#E!!|9^m@PFkgBx`skR{4__Lub=ocu-u6-i`!pgnaqB^_s`C%3~Z**Q*-C}TikN`>$a1q|u!*;oXKq1~Ij424#B3a2kP z<{J=ox0Tp6ur1_!wrt(%q24*)En@zh>8Jm>B+<2#xN(<(7v_N6{N*==q($Y8@;eR@ zpviGz^E7-+eh{nav4ei$=fuS*mCjrxg)-OT$P%;})hz;~ED#HatpK;X4Udo>i@_#{ zZ5~Itr?dFDNxj_aaD`RabKjr$KQJ)~OYlhk=m_Y7u&r0#V{2g>Ym>hc%dryLH*t1Z zesXd^fi0Jo=Oh&Z6hGFLp`D!42{jrEN&wPXufXPlccmUa0~;9W+rl8S(O6DI4v{Pe zJGd0AWQnqB+uYGt$~#BdRab!b3(hQ7<1ve%?u9Ex&m+pI=~O^Z)nykOZ)6H&`Md01 zdQ;6%O{uH(FJEsr1`8{uKGD(orrOtdIy$WZ<)gr=oR_Am-wR6jP>!xJKpmaLMTc}m z`n7p@0FhF1!rp~FdEb8us(|_Fde?4lxeoE-tPZxAT#f}y9Jt{&zZuoz==bX?BDB-3 zG462OXU(q-pJ${@m+#>&pLYv?)5O8C5jUL(iH)*5u{)C_r#?fPP59|2J=SlE&u(AY z^uIc583*J%E=awHRYyP%|J8`QbNCbooSHzvImZF?Xh)^ln5Qz;r{s3E&mUxT1ub}o zZ5RB8F5C@X$X68N83@DTw2cH07n6;y9yJ;14o?_V4)y16t*w`JV4jOMgi_l-8ErhW zP~LXAu-{Y43_$IKXobGt5dg%?_9JmOizfh=tKtcvHL zBiCiUyQ0rDVRV0JP86&f6^bX5%2pZe733<3JH9gS0*+MYw-H9vIPD#?+J|*HLhfxD zZ(G8QKM$AZ3C-D+!@NKLv6D)MNm5LGj~8Ev*rcxm(gmC4>NXH`$wYbL{GY33P7BHCG6laEO!d#$DraKZIN@8j)Hp(_c*`HWP-%D&N zHULN@TrYXjp+uvZ$5IKG2R=Zm$l7>2gx>()e)Yiv>yEZ zTnhqrLLNm)cHvo>j)eqhE({GHYUgK?WD=?Q`I>PRnVqT^U?HRsR-Sk{oKC2VcLtItg*{@8i-#`FRDf04X? z2ejFF}(1z4{3g#D$G>YzpXrEIOFv15a zL;#2x--`Yk7ma}{$2H|ms}n+)3;pt5UQxcqQ*ld9={0Tq`v;sz=i~AdhkeVxQK2gU zCDKiu@{|D`B#`%eE-I|4Xo_av4jjJyu?TqM<$m$wmDB(}>9gk@Hn=8_|IX)f;lN@r zVE;IKZh^A9fZ=dIc>60=ZwE)U`19HZ{wX>*N(nI=g)_wy{fuzGwJg4ZdlA~fs^Cy? z4dGC;!S3d%EFsiFCmEiWLH`fcJ2yeIqDv$0 zSGI_6ZNEBRv}H7a+6$uTpgQf-FMld2>S2jXMn+6`Vlus11{u}mQ1>imL*ACyh-Was zzXfNzL7}F6=bSubi`o<6wZ0@Nd)v)Lq~=AH5zdur=vScmn#>Qfpf|{quK^9%spxcA zSOLDO9Ms4EIZ(P!ES!HFs9W~gE*lm`n#*goX&6$b#CK?!)t_HQq({^raW;D65)OO- zhT~vu;$Hi_b~!vSpC^p&FM#O4@lXy8CIT1&%{Mx|G|iEZ_8E5nK<>U}eYAiur$bx9 zq`WAcs&*Kq`po|ATc&@wfRJyHD(8hrRq1G;PCHfr7Q^?MAd0`=$muqjIR42(aWKQ7 z`iN1hRu+SUik?#Z5)QnsCHy!!5?0JX^X7;B^4n`*Q6|fWMVTF~>aO8|5)2B-`Lv)E z9Gk73xljg)jjdJ)uVU8!SKkwi=i-!~u}$m)q>m25R>>-cZ%lqon+Yw6_UJEN!GAz6 z)l46R0VehEb`2LPI`dQFSjb<6e6$4#e-{9Eo*|{w?`cy|Ync{hB|G2yLqq@soSZt6 ze#|QHl++_#L8Tm#hrXB)i~e3!1lLU8R_xl6EOM9i7n>0%%0pG0`)hLlEqJlzTF{4)zH7Ohf=N zi{9En0}#J??0T8I$6aFCx8u#cCGQlih?;wG7c9mMtGdCo*Ciao!7xLXW-eL zi@iOM`;S=|-NhoC8OK?7DDJ@v6AvLA?A~z|N?^LdUNlS+n9A`}JbgXCDYQo?Muq^Y zjL<*GK7W`u)aXYWY=Qimm;E?QHE73dr_ZMc+=ChoswY6QdpcZA^6hFrSoAhIi529b z%STW=sK-n?zyqU#1Nm_B`j;HTA>9mV)eFU^kGv%Q+Bq$i5jSCCp}V(A!HW4fb6q;M z4+YMN?TCsGQdWKp=r$V!!~yLX&~N&!L4|1S0j~o^?I$ z8-i0zqWyN*yq=9KmE$)=3P`0+B_0VHclj>4Fl46B{ikMnH=#b?8iIKhKP(GoPi0w! zvy^bV>$2Wa%{h#$&3pGSsGiAu_&IneNYNGiap8UT7J$=2SZTB9nUKq0emu`Bx7tup z&Rl%2H(&uFY^lX^d^(jWtF~(yl=##&We6Yj2@C=Z86L;;TmNm-R1A}o9XR|%4po3R zLu19}I)YvPsSTq{soqQJgAbKGCp!Fq^skti(%&&%3U<~xC9jd^16slAs*r=0{>*7`*I4zCo|aIuuVzGW)MR74_#b6tI4E#W=XPE)E{ zU$Hy?uE?`4-quGgSmP*7;-hq7l~~!hyYdK<$;Igx7xT-oLor} zo6^eIF9oX|C=9e-b|z0CN=AG(S#$VP;>rI9ztXtb8CSU7f6fofhWy=9z)g|7*k0-4 z9`3ax87hDo#nH3x3;~m{XBn!bZ)rIUtRQ{MN1@{(JNg#wHVhT?&+T^+MW13ykvMr)`3BQ6|!%#LaNk2 zY$KznS*VDcwJy+eI(n32E&x@qWuC1l{GL!D(_CZQaUbGfu81#Q@ CwpI`T literal 0 HcmV?d00001