From 4a6e7e9195fea4d72da33248c20f1fdf9152bac7 Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Tue, 8 Jul 2025 17:13:13 +0200 Subject: [PATCH 01/11] EZA --- packages/control/io_device.py | 12 +++- packages/control/pv_all.py | 4 ++ packages/modules/io_actions/groups.py | 2 + .../stepwise_control/__init__.py | 0 .../production_plants/stepwise_control/api.py | 68 +++++++++++++++++++ .../stepwise_control/config.py | 25 +++++++ 6 files changed, 110 insertions(+), 1 deletion(-) create mode 100644 packages/modules/io_actions/production_plants/stepwise_control/__init__.py create mode 100644 packages/modules/io_actions/production_plants/stepwise_control/api.py create mode 100644 packages/modules/io_actions/production_plants/stepwise_control/config.py diff --git a/packages/control/io_device.py b/packages/control/io_device.py index e64c5aba8e..6c349b2091 100644 --- a/packages/control/io_device.py +++ b/packages/control/io_device.py @@ -7,6 +7,7 @@ from modules.io_actions.controllable_consumers.dimming.api import Dimming from modules.io_actions.controllable_consumers.dimming_direct_control.api import DimmingDirectControl from modules.io_actions.controllable_consumers.ripple_control_receiver.api import RippleControlReceiver +from modules.io_actions.production_plants.stepwise_control.api import StepwiseControl @dataclass @@ -47,7 +48,7 @@ def __init__(self, num: Union[int, str]): class IoActions: def __init__(self): - self.actions: Dict[int, Union[Dimming, DimmingDirectControl, RippleControlReceiver]] = {} + self.actions: Dict[int, Union[Dimming, DimmingDirectControl, RippleControlReceiver, StepwiseControl]] = {} def setup(self): for action in self.actions.values(): @@ -93,3 +94,12 @@ def ripple_control_receiver(self, device: Dict) -> float: return action.ripple_control_receiver() else: return 1 + + def stepwise_control(self, device_id: int) -> Optional[str]: + for action in self.actions.values(): + if isinstance(action, StepwiseControl): + if device_id == action.config.configuration.pv_id: + #self._check_fault_state_io_device(action.config.configuration.io_device) + return action.control_stepwise() + else: + return None diff --git a/packages/control/pv_all.py b/packages/control/pv_all.py index abe2f50225..01f7833411 100644 --- a/packages/control/pv_all.py +++ b/packages/control/pv_all.py @@ -68,6 +68,10 @@ def calc_power_for_all_components(self) -> None: else: if fault_state < module_data.get.fault_state: fault_state = module_data.get.fault_state + msg = data.data.io_actions.stepwise_control(data.data.pv_data[module].num) + if msg is not None and data.data.pv_data[module].data.get.fault_state == 0: + data.data.pv_data[module].data.get.fault_str = msg + Pub().pub(f"openWB/set/pv/{data.data.pv_data[module].num}/get/fault_str", msg) except Exception: log.exception("Fehler im allgemeinen PV-Modul für "+str(module)) if fault_state == 0: diff --git a/packages/modules/io_actions/groups.py b/packages/modules/io_actions/groups.py index 538025f563..1015e67a3e 100644 --- a/packages/modules/io_actions/groups.py +++ b/packages/modules/io_actions/groups.py @@ -3,8 +3,10 @@ class ActionGroup(Enum): CONTROLLABLE_CONSUMERS = "controllable_consumers" + PRODUCTION_PLANTS = "production_plants" READABLE_GROUP_NAME = { ActionGroup.CONTROLLABLE_CONSUMERS: "Steuerbare Verbrauchseinrichtungen (§14a)", + ActionGroup.PRODUCTION_PLANTS: "Erzeugungsanlagen (§9)", } diff --git a/packages/modules/io_actions/production_plants/stepwise_control/__init__.py b/packages/modules/io_actions/production_plants/stepwise_control/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/modules/io_actions/production_plants/stepwise_control/api.py b/packages/modules/io_actions/production_plants/stepwise_control/api.py new file mode 100644 index 0000000000..430f361147 --- /dev/null +++ b/packages/modules/io_actions/production_plants/stepwise_control/api.py @@ -0,0 +1,68 @@ +import logging +from control import data +from typing import Optional +from helpermodules.logger import ModifyLoglevelContext +from modules.common.abstract_device import DeviceDescriptor +from modules.common.abstract_io import AbstractIoAction +from modules.common.utils.component_parser import get_component_name_by_id +from modules.io_actions.production_plants.stepwise_control.config import StepwiseControlSetup + +control_command_log = logging.getLogger("steuve_control_command") + + +class StepwiseControl(AbstractIoAction): + def __init__(self, config: StepwiseControlSetup): + self.config = config + control_command_log.info(f"Stufenweise Steuerung einer EZA: Eingang {self.config.configuration.s1} für S1, " + f"Eingang {self.config.configuration.s2} für S2, und Eingang " + f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung musss im WR" + " vorgenommen werden.") + self.s1_prev = False + self.s2_prev = False + self.w3_prev = False + super().__init__() + + def setup(self) -> None: + pass + + def control_stepwise(self) -> Optional[str]: + text = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist auf " + "{} % beschränkt. Die Beschränkung musss im WR vorgenommen werden.") + msg = None + log_msg = None + digital_input = data.data.io_states[f"io_states{self.config.configuration.io_device}"].data.get.digital_input + if digital_input[self.config.configuration.s1] is True: + msg = text.format(60) + if self.s1_prev is False: + log_msg = msg + elif digital_input[self.config.configuration.s2] is True: + msg = text.format(30) + if self.s1_prev is False: + log_msg = msg + elif digital_input[self.config.configuration.w3] is True: + msg = text.format(0) + if self.s1_prev is False: + log_msg = msg + if (digital_input[self.config.configuration.s1] is False and + digital_input[self.config.configuration.s2] is False and + digital_input[self.config.configuration.w3] is False and + self.s1_prev is False and + self.s2_prev is False and + self.w3_prev is False): + # Keine Beschränkung soll nicht dauerhaft im WR angezeigt werden. + log_msg = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist " + "nicht beschränkt. Die Beschränkung musss im WR vorgenommen werden.") + self.s1_prev = digital_input[self.config.configuration.s1] + self.s2_prev = digital_input[self.config.configuration.s2] + self.w3_prev = digital_input[self.config.configuration.w3] + if log_msg is not None: + with ModifyLoglevelContext(control_command_log, logging.DEBUG): + control_command_log.info(log_msg) + return msg + + +def create_action(config: StepwiseControlSetup): + return StepwiseControl(config=config) + + +device_descriptor = DeviceDescriptor(configuration_factory=StepwiseControlSetup) diff --git a/packages/modules/io_actions/production_plants/stepwise_control/config.py b/packages/modules/io_actions/production_plants/stepwise_control/config.py new file mode 100644 index 0000000000..3ac772e1f3 --- /dev/null +++ b/packages/modules/io_actions/production_plants/stepwise_control/config.py @@ -0,0 +1,25 @@ +from dataclasses import dataclass +from typing import Optional +from modules.io_actions.groups import ActionGroup + + +@dataclass +class StepwiseControlConfig: + io_device: Optional[int] = None + s1: str = None + s2: str = None + w3: str = None + pv_id: int = None + + +class StepwiseControlSetup: + def __init__(self, + name: str = "Stufenweise Steuerung einer EZA", + type: str = "stepwise_control", + id: int = 0, + configuration: StepwiseControlConfig = None): + self.name = name + self.type = type + self.id = id + self.configuration = configuration or StepwiseControlConfig() + self.group = ActionGroup.PRODUCTION_PLANTS.value From 22d008d5c8ab8985a03cb1a66366a55289793ea3 Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Wed, 9 Jul 2025 07:35:19 +0200 Subject: [PATCH 02/11] fix --- .../production_plants/stepwise_control/api.py | 35 ++++++++----------- 1 file changed, 14 insertions(+), 21 deletions(-) diff --git a/packages/modules/io_actions/production_plants/stepwise_control/api.py b/packages/modules/io_actions/production_plants/stepwise_control/api.py index 430f361147..a47117cc6b 100644 --- a/packages/modules/io_actions/production_plants/stepwise_control/api.py +++ b/packages/modules/io_actions/production_plants/stepwise_control/api.py @@ -17,9 +17,6 @@ def __init__(self, config: StepwiseControlSetup): f"Eingang {self.config.configuration.s2} für S2, und Eingang " f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung musss im WR" " vorgenommen werden.") - self.s1_prev = False - self.s2_prev = False - self.w3_prev = False super().__init__() def setup(self) -> None: @@ -29,36 +26,32 @@ def control_stepwise(self) -> Optional[str]: text = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist auf " "{} % beschränkt. Die Beschränkung musss im WR vorgenommen werden.") msg = None - log_msg = None digital_input = data.data.io_states[f"io_states{self.config.configuration.io_device}"].data.get.digital_input if digital_input[self.config.configuration.s1] is True: msg = text.format(60) - if self.s1_prev is False: - log_msg = msg elif digital_input[self.config.configuration.s2] is True: msg = text.format(30) - if self.s1_prev is False: - log_msg = msg elif digital_input[self.config.configuration.w3] is True: msg = text.format(0) - if self.s1_prev is False: - log_msg = msg + if msg is not None: + with ModifyLoglevelContext(control_command_log, logging.DEBUG): + control_command_log.info(msg) + return msg if (digital_input[self.config.configuration.s1] is False and digital_input[self.config.configuration.s2] is False and - digital_input[self.config.configuration.w3] is False and - self.s1_prev is False and - self.s2_prev is False and - self.w3_prev is False): + digital_input[self.config.configuration.w3] is False): # Keine Beschränkung soll nicht dauerhaft im WR angezeigt werden. - log_msg = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist " + msg = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist " "nicht beschränkt. Die Beschränkung musss im WR vorgenommen werden.") - self.s1_prev = digital_input[self.config.configuration.s1] - self.s2_prev = digital_input[self.config.configuration.s2] - self.w3_prev = digital_input[self.config.configuration.w3] - if log_msg is not None: with ModifyLoglevelContext(control_command_log, logging.DEBUG): - control_command_log.info(log_msg) - return msg + control_command_log.info(msg) + return None + else: + raise ValueError( + f"Unbekannter Zustand der Stufenweise Steuerung {self.config.name}: " + f"{digital_input[self.config.configuration.s1]}, " + f"{digital_input[self.config.configuration.s2]}, {digital_input[self.config.configuration.w3]}." + ) def create_action(config: StepwiseControlSetup): From e18a2c2483f9a8655d56c8e7834e16e9e997bb4f Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Wed, 9 Jul 2025 08:20:04 +0200 Subject: [PATCH 03/11] EZA --- packages/control/io_device.py | 8 +++- packages/modules/common/store/_io.py | 13 +++++ .../production_plants/stepwise_control/api.py | 48 ++++++++++++------- 3 files changed, 50 insertions(+), 19 deletions(-) diff --git a/packages/control/io_device.py b/packages/control/io_device.py index 6c349b2091..387d9004bf 100644 --- a/packages/control/io_device.py +++ b/packages/control/io_device.py @@ -16,6 +16,10 @@ class Get: analog_output: Dict[int, float] = None digital_input: Dict[int, bool] = None digital_output: Dict[int, bool] = None + analog_input_prev: Dict[int, float] = None + analog_output_prev: Dict[int, float] = None + digital_input_prev: Dict[int, bool] = None + digital_output_prev: Dict[int, bool] = None fault_str: str = NO_ERROR fault_state: int = 0 @@ -27,7 +31,9 @@ def get_factory(): @dataclass class Set: analog_output: Dict[int, float] = None + analog_output_prev: Dict[int, float] = None digital_output: Dict[int, bool] = None + digital_output_prev: Dict[int, bool] = None def set_factory(): @@ -99,7 +105,7 @@ def stepwise_control(self, device_id: int) -> Optional[str]: for action in self.actions.values(): if isinstance(action, StepwiseControl): if device_id == action.config.configuration.pv_id: - #self._check_fault_state_io_device(action.config.configuration.io_device) + self._check_fault_state_io_device(action.config.configuration.io_device) return action.control_stepwise() else: return None diff --git a/packages/modules/common/store/_io.py b/packages/modules/common/store/_io.py index cba0fcccc9..f083c4d46f 100644 --- a/packages/modules/common/store/_io.py +++ b/packages/modules/common/store/_io.py @@ -1,3 +1,4 @@ +from control import data from modules.common.component_state import IoState from modules.common.fault_state import FaultState from modules.common.store import ValueStore @@ -16,14 +17,26 @@ def set(self, state: IoState) -> None: def update(self): try: if self.state.digital_input: + pub_to_broker(f"openWB/set/io/states/{self.num}/get/digital_input_prev", + data.data.io_states[f"io_states{self.num}"].data.get.digital_input) pub_to_broker(f"openWB/set/io/states/{self.num}/get/digital_input", self.state.digital_input) if self.state.analog_input: + pub_to_broker(f"openWB/set/io/states/{self.num}/get/analog_input_prev", + data.data.io_states[f"io_states{self.num}"].data.get.analog_input) pub_to_broker(f"openWB/set/io/states/{self.num}/get/analog_input", self.state.analog_input) if self.state.digital_output: + pub_to_broker(f"openWB/set/io/states/{self.num}/get/digital_output_prev", + data.data.io_states[f"io_states{self.num}"].data.get.digital_output) pub_to_broker(f"openWB/set/io/states/{self.num}/get/digital_output", self.state.digital_output) + pub_to_broker(f"openWB/set/io/states/{self.num}/set/digital_output_prev", + data.data.io_states[f"io_states{self.num}"].data.set.digital_output) pub_to_broker(f"openWB/set/io/states/{self.num}/set/digital_output", self.state.digital_output) if self.state.analog_output: + pub_to_broker(f"openWB/set/io/states/{self.num}/get/analog_output_prev", + data.data.io_states[f"io_states{self.num}"].data.get.analog_output) pub_to_broker(f"openWB/set/io/states/{self.num}/get/analog_output", self.state.analog_output) + pub_to_broker(f"openWB/set/io/states/{self.num}/set/analog_output_prev", + data.data.io_states[f"io_states{self.num}"].data.set.analog_output) pub_to_broker(f"openWB/set/io/states/{self.num}/set/analog_output", self.state.analog_output) except Exception as e: raise FaultState.from_exception(e) diff --git a/packages/modules/io_actions/production_plants/stepwise_control/api.py b/packages/modules/io_actions/production_plants/stepwise_control/api.py index a47117cc6b..77dd746f19 100644 --- a/packages/modules/io_actions/production_plants/stepwise_control/api.py +++ b/packages/modules/io_actions/production_plants/stepwise_control/api.py @@ -27,31 +27,43 @@ def control_stepwise(self) -> Optional[str]: "{} % beschränkt. Die Beschränkung musss im WR vorgenommen werden.") msg = None digital_input = data.data.io_states[f"io_states{self.config.configuration.io_device}"].data.get.digital_input - if digital_input[self.config.configuration.s1] is True: + digital_input_prev = data.data.io_states[ + f"io_states{self.config.configuration.io_device}"].data.get.digital_input_prev + + active_inputs = [ + digital_input[self.config.configuration.s1], + digital_input[self.config.configuration.s2], + digital_input[self.config.configuration.w3] + ] + num_active = sum(1 for v in active_inputs if v) + + if num_active > 1: + error_msg = (f"Fehler: Mehr als ein Eingang ist aktiv für die stufenweise Steuerung der EZA! " + f"S1: {digital_input[self.config.configuration.s1]}, " + f"S2: {digital_input[self.config.configuration.s2]}, " + f"W3: {digital_input[self.config.configuration.w3]}") + with ModifyLoglevelContext(control_command_log, logging.ERROR): + control_command_log.error(error_msg) + raise ValueError(error_msg) + + if digital_input[self.config.configuration.s1]: msg = text.format(60) - elif digital_input[self.config.configuration.s2] is True: + elif digital_input[self.config.configuration.s2]: msg = text.format(30) - elif digital_input[self.config.configuration.w3] is True: + elif digital_input[self.config.configuration.w3]: msg = text.format(0) - if msg is not None: - with ModifyLoglevelContext(control_command_log, logging.DEBUG): - control_command_log.info(msg) - return msg - if (digital_input[self.config.configuration.s1] is False and - digital_input[self.config.configuration.s2] is False and - digital_input[self.config.configuration.w3] is False): + else: # Keine Beschränkung soll nicht dauerhaft im WR angezeigt werden. msg = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist " - "nicht beschränkt. Die Beschränkung musss im WR vorgenommen werden.") + "nicht beschränkt. Die Beschränkung musss im WR vorgenommen werden.") + + if not (digital_input[self.config.configuration.s1] == digital_input_prev[self.config.configuration.s1] and + digital_input[self.config.configuration.s2] == digital_input_prev[self.config.configuration.s2] and + digital_input[self.config.configuration.w3] == digital_input_prev[self.config.configuration.w3]): + # Wenn sich was geändet hat, loggen with ModifyLoglevelContext(control_command_log, logging.DEBUG): control_command_log.info(msg) - return None - else: - raise ValueError( - f"Unbekannter Zustand der Stufenweise Steuerung {self.config.name}: " - f"{digital_input[self.config.configuration.s1]}, " - f"{digital_input[self.config.configuration.s2]}, {digital_input[self.config.configuration.w3]}." - ) + return msg def create_action(config: StepwiseControlSetup): From 681c634548c94850553ad18b63935cbb2c147cbd Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Wed, 9 Jul 2025 08:34:43 +0200 Subject: [PATCH 04/11] Wiki --- "docs/IO-Ger\303\244te & -Aktionen.md" | 6 +++++- ...bare Verbrauchseinrichtungen nach \302\24714a.md" | 12 ++++++++++++ .../production_plants/stepwise_control/api.py | 6 +++--- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git "a/docs/IO-Ger\303\244te & -Aktionen.md" "b/docs/IO-Ger\303\244te & -Aktionen.md" index bac6bd4be8..cd16d3e177 100644 --- "a/docs/IO-Ger\303\244te & -Aktionen.md" +++ "b/docs/IO-Ger\303\244te & -Aktionen.md" @@ -27,7 +27,11 @@ Die AddOn-Platine stellt 7 Eingänge und 3 Ausgänge zur Verfügung. WICHTIG: In ### Steuerbare Verbrauchseinrichtungen: Dimmen per EMS, Dimmung per Direkt-Steuerung, RSE -Ausführliche Informationen findest Du im gesonderten Wiki-Beitrag [Steuerbare Verbrauchseinrichtungen](https://github.com/openWB/core/wiki/Steuerbare-Verbrauchseinrichtungen-nach-§14a) +Ausführliche Informationen findest Du im gesonderten Wiki-Beitrag [Steuerbare Einrichtungen nach § 14a EnGW und § 9 EEG](https://github.com/openWB/core/wiki/Steuerbare-Verbrauchseinrichtungen-nach-§14a) + +### Steuerbare Erzeugungseinrichtungen: Stufenweise Steuerung +Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung ein. +Ausführliche Informationen findest Du im gesonderten Wiki-Beitrag [Steuerbare Einrichtungen nach § 14a EnGW und § 9 EEG](https://github.com/openWB/core/wiki/Steuerbare-Verbrauchseinrichtungen-nach-§14a) ## Manuelles Setzen der Ausgänge Die Ausgänge aller IO-Geräte können per MQTT gesetzt werden. Die Topics findet Ihr in den Einstellungen des jeweiligen Geräts als Copy-to-Clipboard-Link. Das manuelle Setzen des Ausgangs überschreibt den Wert, den zB die openWB bei einer IO-Aktion gesetzt hat. \ No newline at end of file diff --git "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" index d4cbb44c5b..b9a19e7754 100644 --- "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" +++ "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" @@ -1,3 +1,4 @@ +## Stuerbare Verbrauchseinrichtungen (SteuVE) nach § 14a EnGW Der Gesetzgeber sieht verschiedene Möglichkeiten für steuerbare Verbrauchseinrichtungen vor. Für jede steuerbare Verbrauchseinrichtung kann eine andere Option angemeldet werden. Bei der Konfiguration muss deshalb auch immer der/die Ladepunkte angegeben werden, für die die IO-Aktion angewendet werden soll. ### Dimmen per EMS @@ -13,3 +14,14 @@ Pro steuerbarer Verbrauchseinrichtung muss eine IO-Aktion konfiguriert werden un ### Rundsteuer-Empfänger-Kontakt (RSE) Für den RSE-Kontakt kann ein Muster aus verschiedenen Eingängen und ein Prozentwert, auf den die Anschlussleistung begrenzt wird, angegeben werden. + +## Steuerbare Erzeugungsanlagen (EZA) nach § 9 EEG + +Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung ein. + +Die Einspeiseleistung des Wechselrichters wird über drei Signalkontakte der FNN-Steuerbox geregelt. Die openWB übernimmt dabei keine direkte Steuerung des Wechselrichters, sondern visualisiert lediglich den aktuellen Steuerzustand. Das Signalkabel der FNN-Steuerbox muss daher beispielsweise über eine Doppelklemme mit dem I/O-Modul der openWB verbunden und anschließend zum Wechselrichter weitergeführt (durchgeschleift) werden. +Die Signalkontakte bilden folgende Zustände ab: +S1 -> 60% der EZA +S2 -> 30% der EZA +W3 -> 0% der EZA +alle Kontakte offen -> 100% der EZA \ No newline at end of file diff --git a/packages/modules/io_actions/production_plants/stepwise_control/api.py b/packages/modules/io_actions/production_plants/stepwise_control/api.py index 77dd746f19..592951a2a1 100644 --- a/packages/modules/io_actions/production_plants/stepwise_control/api.py +++ b/packages/modules/io_actions/production_plants/stepwise_control/api.py @@ -15,7 +15,7 @@ def __init__(self, config: StepwiseControlSetup): self.config = config control_command_log.info(f"Stufenweise Steuerung einer EZA: Eingang {self.config.configuration.s1} für S1, " f"Eingang {self.config.configuration.s2} für S2, und Eingang " - f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung musss im WR" + f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung musss in der EZA" " vorgenommen werden.") super().__init__() @@ -24,7 +24,7 @@ def setup(self) -> None: def control_stepwise(self) -> Optional[str]: text = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist auf " - "{} % beschränkt. Die Beschränkung musss im WR vorgenommen werden.") + "{} % beschränkt. Die Beschränkung musss in der EZA vorgenommen werden.") msg = None digital_input = data.data.io_states[f"io_states{self.config.configuration.io_device}"].data.get.digital_input digital_input_prev = data.data.io_states[ @@ -55,7 +55,7 @@ def control_stepwise(self) -> Optional[str]: else: # Keine Beschränkung soll nicht dauerhaft im WR angezeigt werden. msg = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist " - "nicht beschränkt. Die Beschränkung musss im WR vorgenommen werden.") + "nicht beschränkt. Die Beschränkung musss in der EZA vorgenommen werden.") if not (digital_input[self.config.configuration.s1] == digital_input_prev[self.config.configuration.s1] and digital_input[self.config.configuration.s2] == digital_input_prev[self.config.configuration.s2] and From bf14f9560e6603d916f5e6a3e456f60a4abb3a28 Mon Sep 17 00:00:00 2001 From: LKuemmel Date: Wed, 9 Jul 2025 08:36:36 +0200 Subject: [PATCH 05/11] flake8 --- .../io_actions/production_plants/stepwise_control/api.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/modules/io_actions/production_plants/stepwise_control/api.py b/packages/modules/io_actions/production_plants/stepwise_control/api.py index 592951a2a1..8dfa0b4110 100644 --- a/packages/modules/io_actions/production_plants/stepwise_control/api.py +++ b/packages/modules/io_actions/production_plants/stepwise_control/api.py @@ -15,8 +15,8 @@ def __init__(self, config: StepwiseControlSetup): self.config = config control_command_log.info(f"Stufenweise Steuerung einer EZA: Eingang {self.config.configuration.s1} für S1, " f"Eingang {self.config.configuration.s2} für S2, und Eingang " - f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung musss in der EZA" - " vorgenommen werden.") + f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung musss in " + "der EZA vorgenommen werden.") super().__init__() def setup(self) -> None: From 328b344776dcc7c1f0dce5a3d07ceb6f3f9fa19a Mon Sep 17 00:00:00 2001 From: benderl Date: Thu, 17 Jul 2025 07:46:49 +0200 Subject: [PATCH 06/11] Apply suggestions from code review --- "docs/IO-Ger\303\244te & -Aktionen.md" | 2 +- ...Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git "a/docs/IO-Ger\303\244te & -Aktionen.md" "b/docs/IO-Ger\303\244te & -Aktionen.md" index cd16d3e177..07f34179a8 100644 --- "a/docs/IO-Ger\303\244te & -Aktionen.md" +++ "b/docs/IO-Ger\303\244te & -Aktionen.md" @@ -30,7 +30,7 @@ Die AddOn-Platine stellt 7 Eingänge und 3 Ausgänge zur Verfügung. WICHTIG: In Ausführliche Informationen findest Du im gesonderten Wiki-Beitrag [Steuerbare Einrichtungen nach § 14a EnGW und § 9 EEG](https://github.com/openWB/core/wiki/Steuerbare-Verbrauchseinrichtungen-nach-§14a) ### Steuerbare Erzeugungseinrichtungen: Stufenweise Steuerung -Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung ein. +Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung an. Ausführliche Informationen findest Du im gesonderten Wiki-Beitrag [Steuerbare Einrichtungen nach § 14a EnGW und § 9 EEG](https://github.com/openWB/core/wiki/Steuerbare-Verbrauchseinrichtungen-nach-§14a) ## Manuelles Setzen der Ausgänge diff --git "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" index b9a19e7754..0b5b54a611 100644 --- "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" +++ "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" @@ -17,11 +17,12 @@ Für den RSE-Kontakt kann ein Muster aus verschiedenen Eingängen und ein Prozen ## Steuerbare Erzeugungsanlagen (EZA) nach § 9 EEG -Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung ein. +Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung an. -Die Einspeiseleistung des Wechselrichters wird über drei Signalkontakte der FNN-Steuerbox geregelt. Die openWB übernimmt dabei keine direkte Steuerung des Wechselrichters, sondern visualisiert lediglich den aktuellen Steuerzustand. Das Signalkabel der FNN-Steuerbox muss daher beispielsweise über eine Doppelklemme mit dem I/O-Modul der openWB verbunden und anschließend zum Wechselrichter weitergeführt (durchgeschleift) werden. +Die Einspeiseleistung des Wechselrichters wird über drei Signalkontakte der FNN-Steuerbox geregelt. Die openWB übernimmt dabei keine direkte Steuerung des Wechselrichters, sondern visualisiert lediglich den aktuellen Steuerzustand. Das Signalkabel der FNN-Steuerbox muss daher beispielsweise über eine Doppelklemme mit dem I/O-Modul der openWB verbunden und anschließend zum Wechselrichter weitergeführt (durchgeschliffen) werden. Die Signalkontakte bilden folgende Zustände ab: S1 -> 60% der EZA S2 -> 30% der EZA W3 -> 0% der EZA -alle Kontakte offen -> 100% der EZA \ No newline at end of file +alle Kontakte offen -> 100% der EZA +Sollten mehrere Kontakte geschlossen sein, so wird die geringste Leistungsstufe ausgewählt (z. B. S2 und W3 -> 0%). \ No newline at end of file From e2f8bffee46f44c34626bd339c58491ac31f8806 Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Thu, 17 Jul 2025 08:22:28 +0200 Subject: [PATCH 07/11] rename "production plants" -> "generator systems" --- packages/control/io_device.py | 2 +- .../stepwise_control/__init__.py | 0 .../stepwise_control/api.py | 10 +++++----- .../stepwise_control/config.py | 2 +- packages/modules/io_actions/groups.py | 4 ++-- 5 files changed, 9 insertions(+), 9 deletions(-) rename packages/modules/io_actions/{production_plants => generator_systems}/stepwise_control/__init__.py (100%) rename packages/modules/io_actions/{production_plants => generator_systems}/stepwise_control/api.py (90%) rename packages/modules/io_actions/{production_plants => generator_systems}/stepwise_control/config.py (92%) diff --git a/packages/control/io_device.py b/packages/control/io_device.py index 387d9004bf..e74fa14d27 100644 --- a/packages/control/io_device.py +++ b/packages/control/io_device.py @@ -7,7 +7,7 @@ from modules.io_actions.controllable_consumers.dimming.api import Dimming from modules.io_actions.controllable_consumers.dimming_direct_control.api import DimmingDirectControl from modules.io_actions.controllable_consumers.ripple_control_receiver.api import RippleControlReceiver -from modules.io_actions.production_plants.stepwise_control.api import StepwiseControl +from modules.io_actions.generator_systems.stepwise_control.api import StepwiseControl @dataclass diff --git a/packages/modules/io_actions/production_plants/stepwise_control/__init__.py b/packages/modules/io_actions/generator_systems/stepwise_control/__init__.py similarity index 100% rename from packages/modules/io_actions/production_plants/stepwise_control/__init__.py rename to packages/modules/io_actions/generator_systems/stepwise_control/__init__.py diff --git a/packages/modules/io_actions/production_plants/stepwise_control/api.py b/packages/modules/io_actions/generator_systems/stepwise_control/api.py similarity index 90% rename from packages/modules/io_actions/production_plants/stepwise_control/api.py rename to packages/modules/io_actions/generator_systems/stepwise_control/api.py index 8dfa0b4110..91815065ff 100644 --- a/packages/modules/io_actions/production_plants/stepwise_control/api.py +++ b/packages/modules/io_actions/generator_systems/stepwise_control/api.py @@ -5,7 +5,7 @@ from modules.common.abstract_device import DeviceDescriptor from modules.common.abstract_io import AbstractIoAction from modules.common.utils.component_parser import get_component_name_by_id -from modules.io_actions.production_plants.stepwise_control.config import StepwiseControlSetup +from modules.io_actions.generator_systems.stepwise_control.config import StepwiseControlSetup control_command_log = logging.getLogger("steuve_control_command") @@ -15,7 +15,7 @@ def __init__(self, config: StepwiseControlSetup): self.config = config control_command_log.info(f"Stufenweise Steuerung einer EZA: Eingang {self.config.configuration.s1} für S1, " f"Eingang {self.config.configuration.s2} für S2, und Eingang " - f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung musss in " + f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung muss in " "der EZA vorgenommen werden.") super().__init__() @@ -24,7 +24,7 @@ def setup(self) -> None: def control_stepwise(self) -> Optional[str]: text = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist auf " - "{} % beschränkt. Die Beschränkung musss in der EZA vorgenommen werden.") + "{} % beschränkt. Die Beschränkung muss in der EZA vorgenommen werden.") msg = None digital_input = data.data.io_states[f"io_states{self.config.configuration.io_device}"].data.get.digital_input digital_input_prev = data.data.io_states[ @@ -55,12 +55,12 @@ def control_stepwise(self) -> Optional[str]: else: # Keine Beschränkung soll nicht dauerhaft im WR angezeigt werden. msg = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist " - "nicht beschränkt. Die Beschränkung musss in der EZA vorgenommen werden.") + "nicht beschränkt. Die Beschränkung muss in der EZA vorgenommen werden.") if not (digital_input[self.config.configuration.s1] == digital_input_prev[self.config.configuration.s1] and digital_input[self.config.configuration.s2] == digital_input_prev[self.config.configuration.s2] and digital_input[self.config.configuration.w3] == digital_input_prev[self.config.configuration.w3]): - # Wenn sich was geändet hat, loggen + # Wenn sich was geändert hat, loggen with ModifyLoglevelContext(control_command_log, logging.DEBUG): control_command_log.info(msg) return msg diff --git a/packages/modules/io_actions/production_plants/stepwise_control/config.py b/packages/modules/io_actions/generator_systems/stepwise_control/config.py similarity index 92% rename from packages/modules/io_actions/production_plants/stepwise_control/config.py rename to packages/modules/io_actions/generator_systems/stepwise_control/config.py index 3ac772e1f3..ad6c1b4aa1 100644 --- a/packages/modules/io_actions/production_plants/stepwise_control/config.py +++ b/packages/modules/io_actions/generator_systems/stepwise_control/config.py @@ -22,4 +22,4 @@ def __init__(self, self.type = type self.id = id self.configuration = configuration or StepwiseControlConfig() - self.group = ActionGroup.PRODUCTION_PLANTS.value + self.group = ActionGroup.GENERATOR_SYSTEMS.value diff --git a/packages/modules/io_actions/groups.py b/packages/modules/io_actions/groups.py index 1015e67a3e..7705fd053b 100644 --- a/packages/modules/io_actions/groups.py +++ b/packages/modules/io_actions/groups.py @@ -3,10 +3,10 @@ class ActionGroup(Enum): CONTROLLABLE_CONSUMERS = "controllable_consumers" - PRODUCTION_PLANTS = "production_plants" + GENERATOR_SYSTEMS = "generator_systems" READABLE_GROUP_NAME = { ActionGroup.CONTROLLABLE_CONSUMERS: "Steuerbare Verbrauchseinrichtungen (§14a)", - ActionGroup.PRODUCTION_PLANTS: "Erzeugungsanlagen (§9)", + ActionGroup.GENERATOR_SYSTEMS: "Erzeugungsanlagen (§9)", } From dc4524a78aa5811ab18ed76f18a5d819c6e1bf12 Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Thu, 17 Jul 2025 13:17:32 +0200 Subject: [PATCH 08/11] rewrite configuration --- ...rbrauchseinrichtungen nach \302\24714a.md" | 1 - packages/control/io_device.py | 4 +- packages/control/pv_all.py | 9 +- packages/dataclass_utils/factories.py | 19 +++- .../controllable_consumers/dimming/config.py | 4 +- .../dimming_direct_control/config.py | 4 +- .../generator_systems/stepwise_control/api.py | 100 ++++++++++-------- .../stepwise_control/config.py | 14 +-- 8 files changed, 91 insertions(+), 64 deletions(-) diff --git "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" index 0b5b54a611..c1a4e7c24d 100644 --- "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" +++ "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" @@ -25,4 +25,3 @@ S1 -> 60% der EZA S2 -> 30% der EZA W3 -> 0% der EZA alle Kontakte offen -> 100% der EZA -Sollten mehrere Kontakte geschlossen sein, so wird die geringste Leistungsstufe ausgewählt (z. B. S2 und W3 -> 0%). \ No newline at end of file diff --git a/packages/control/io_device.py b/packages/control/io_device.py index e74fa14d27..c045a80c92 100644 --- a/packages/control/io_device.py +++ b/packages/control/io_device.py @@ -101,10 +101,10 @@ def ripple_control_receiver(self, device: Dict) -> float: else: return 1 - def stepwise_control(self, device_id: int) -> Optional[str]: + def stepwise_control(self, device_id: int) -> Optional[float]: for action in self.actions.values(): if isinstance(action, StepwiseControl): - if device_id == action.config.configuration.pv_id: + if device_id in [component["id"] for component in action.config.configuration.devices]: self._check_fault_state_io_device(action.config.configuration.io_device) return action.control_stepwise() else: diff --git a/packages/control/pv_all.py b/packages/control/pv_all.py index 01f7833411..7250a32da2 100644 --- a/packages/control/pv_all.py +++ b/packages/control/pv_all.py @@ -68,8 +68,13 @@ def calc_power_for_all_components(self) -> None: else: if fault_state < module_data.get.fault_state: fault_state = module_data.get.fault_state - msg = data.data.io_actions.stepwise_control(data.data.pv_data[module].num) - if msg is not None and data.data.pv_data[module].data.get.fault_state == 0: + limit_value = data.data.io_actions.stepwise_control(data.data.pv_data[module].num) + if limit_value is not None and data.data.pv_data[module].data.get.fault_state == 0: + msg = ( + f"Leistung begrenzt auf {int(limit_value * 100)}%" + if limit_value < 1 + else "Keine Leistungsbegrenzung aktiv." + ) data.data.pv_data[module].data.get.fault_str = msg Pub().pub(f"openWB/set/pv/{data.data.pv_data[module].num}/get/fault_str", msg) except Exception: diff --git a/packages/dataclass_utils/factories.py b/packages/dataclass_utils/factories.py index 8b58340c6f..6e4da75d79 100644 --- a/packages/dataclass_utils/factories.py +++ b/packages/dataclass_utils/factories.py @@ -17,7 +17,7 @@ def voltages_list_factory() -> List[float]: return [230.0]*3 -def empty_io_pattern_factory(): +def empty_io_pattern_boolean_factory(): return [ { "value": True, # dimmen @@ -28,3 +28,20 @@ def empty_io_pattern_factory(): "input_matrix": {} } ] + + +def empty_io_pattern_stepwise_factory(): + return [ + { + "value": 0.6, # Stufe 1 + "input_matrix": {} + }, + { + "value": 0.3, # Stufe 2 + "input_matrix": {} + }, + { + "value": 0, # Stufe 3 + "input_matrix": {} + } + ] diff --git a/packages/modules/io_actions/controllable_consumers/dimming/config.py b/packages/modules/io_actions/controllable_consumers/dimming/config.py index f655093c8b..76197a77bf 100644 --- a/packages/modules/io_actions/controllable_consumers/dimming/config.py +++ b/packages/modules/io_actions/controllable_consumers/dimming/config.py @@ -1,13 +1,13 @@ from dataclasses import dataclass, field from typing import Dict, List, Optional -from dataclass_utils.factories import empty_io_pattern_factory, empty_list_factory +from dataclass_utils.factories import empty_io_pattern_boolean_factory, empty_list_factory from modules.io_actions.groups import ActionGroup @dataclass class DimmingConfig: io_device: Optional[int] = None - input_pattern: List[Dict] = field(default_factory=empty_io_pattern_factory) + input_pattern: List[Dict] = field(default_factory=empty_io_pattern_boolean_factory) devices: List[Dict] = field(default_factory=empty_list_factory) # [{"type": "cp", "id": 0}, # {"type": "io", "id": 1, "digital_output": "SofortLa"}] diff --git a/packages/modules/io_actions/controllable_consumers/dimming_direct_control/config.py b/packages/modules/io_actions/controllable_consumers/dimming_direct_control/config.py index 7ed110d50a..3ad19cd4c7 100644 --- a/packages/modules/io_actions/controllable_consumers/dimming_direct_control/config.py +++ b/packages/modules/io_actions/controllable_consumers/dimming_direct_control/config.py @@ -1,13 +1,13 @@ from dataclasses import dataclass, field from typing import Dict, List, Optional -from dataclass_utils.factories import empty_io_pattern_factory, empty_list_factory +from dataclass_utils.factories import empty_io_pattern_boolean_factory, empty_list_factory from modules.io_actions.groups import ActionGroup @dataclass class DimmingDirectControlConfig: io_device: Optional[int] = None - input_pattern: List[Dict] = field(default_factory=empty_io_pattern_factory) + input_pattern: List[Dict] = field(default_factory=empty_io_pattern_boolean_factory) devices: List[Dict] = field(default_factory=empty_list_factory) # [{"type": "cp", "id": 0}, # {"type": "io", "id": 1, "digital_output": "SofortLa"}] diff --git a/packages/modules/io_actions/generator_systems/stepwise_control/api.py b/packages/modules/io_actions/generator_systems/stepwise_control/api.py index 91815065ff..ae6bf1f01f 100644 --- a/packages/modules/io_actions/generator_systems/stepwise_control/api.py +++ b/packages/modules/io_actions/generator_systems/stepwise_control/api.py @@ -1,10 +1,11 @@ import logging -from control import data from typing import Optional +from control import data from helpermodules.logger import ModifyLoglevelContext +from helpermodules.pub import Pub +from helpermodules.timecheck import create_timestamp from modules.common.abstract_device import DeviceDescriptor from modules.common.abstract_io import AbstractIoAction -from modules.common.utils.component_parser import get_component_name_by_id from modules.io_actions.generator_systems.stepwise_control.config import StepwiseControlSetup control_command_log = logging.getLogger("steuve_control_command") @@ -13,57 +14,62 @@ class StepwiseControl(AbstractIoAction): def __init__(self, config: StepwiseControlSetup): self.config = config - control_command_log.info(f"Stufenweise Steuerung einer EZA: Eingang {self.config.configuration.s1} für S1, " - f"Eingang {self.config.configuration.s2} für S2, und Eingang " - f"{self.config.configuration.w3} für W3 wird überwacht. Die Beschränkung muss in " - "der EZA vorgenommen werden.") + self.__unique_inputs = [] + for pattern in self.config.configuration.input_pattern: + for key in pattern["input_matrix"].keys(): + if key not in self.__unique_inputs: + self.__unique_inputs.append(key) + assigned_devices = [io_device["id"] for io_device in self.config.configuration.devices] + control_command_log.info( + f"Stufenweise Steuerung von EZA: I/O-Gerät: {self.config.configuration.io_device}, " + f"Überwachte digitale Eingänge: {self.__unique_inputs}, " + f"zugeordnete Erzeugungsanlagen: {assigned_devices} " + "Die Begrenzung muss in den EZA vorgenommen werden!" + ) super().__init__() def setup(self) -> None: - pass - - def control_stepwise(self) -> Optional[str]: - text = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist auf " - "{} % beschränkt. Die Beschränkung muss in der EZA vorgenommen werden.") - msg = None - digital_input = data.data.io_states[f"io_states{self.config.configuration.io_device}"].data.get.digital_input - digital_input_prev = data.data.io_states[ - f"io_states{self.config.configuration.io_device}"].data.get.digital_input_prev + with ModifyLoglevelContext(control_command_log, logging.DEBUG): + digital_input = ( + data.data.io_states[ + f"io_states{self.config.configuration.io_device}" + ].data.get.digital_input + ) + digital_input_prev = data.data.io_states[ + f"io_states{self.config.configuration.io_device}"].data.get.digital_input_prev + changed = len([ + input_name for input_name in self.__unique_inputs + if digital_input[input_name] != digital_input_prev[input_name] + ]) > 0 - active_inputs = [ - digital_input[self.config.configuration.s1], - digital_input[self.config.configuration.s2], - digital_input[self.config.configuration.w3] - ] - num_active = sum(1 for v in active_inputs if v) + for pattern in self.config.configuration.input_pattern: + for action_input, value in pattern["input_matrix"].items(): + if digital_input[action_input] != value: + break + else: + # Alle digitalen Eingänge entsprechen dem Pattern + if pattern["value"] != 1: + if changed: + Pub().pub(f"openWB/set/io/action/{self.config.id}/timestamp", create_timestamp()) + control_command_log.info(f"EZA-Begrenzung mit Wert {int(pattern['value']*100)}% aktiviert.") + break + else: + if changed: + Pub().pub(f"openWB/set/io/action/{self.config.id}/timestamp", None) + control_command_log.info("EZA-Begrenzung aufgehoben.") - if num_active > 1: - error_msg = (f"Fehler: Mehr als ein Eingang ist aktiv für die stufenweise Steuerung der EZA! " - f"S1: {digital_input[self.config.configuration.s1]}, " - f"S2: {digital_input[self.config.configuration.s2]}, " - f"W3: {digital_input[self.config.configuration.w3]}") - with ModifyLoglevelContext(control_command_log, logging.ERROR): - control_command_log.error(error_msg) - raise ValueError(error_msg) - - if digital_input[self.config.configuration.s1]: - msg = text.format(60) - elif digital_input[self.config.configuration.s2]: - msg = text.format(30) - elif digital_input[self.config.configuration.w3]: - msg = text.format(0) + def control_stepwise(self) -> Optional[float]: + for pattern in self.config.configuration.input_pattern: + for digital_input, value in pattern["input_matrix"].items(): + if data.data.io_states[f"io_states{self.config.configuration.io_device}" + ].data.get.digital_input[digital_input] != value: + break + else: + # Alle digitalen Eingänge entsprechen dem Pattern + return pattern['value'] else: - # Keine Beschränkung soll nicht dauerhaft im WR angezeigt werden. - msg = (f"Die Einspeiseleistung von {get_component_name_by_id(self.config.configuration.pv_id)} ist " - "nicht beschränkt. Die Beschränkung muss in der EZA vorgenommen werden.") - - if not (digital_input[self.config.configuration.s1] == digital_input_prev[self.config.configuration.s1] and - digital_input[self.config.configuration.s2] == digital_input_prev[self.config.configuration.s2] and - digital_input[self.config.configuration.w3] == digital_input_prev[self.config.configuration.w3]): - # Wenn sich was geändert hat, loggen - with ModifyLoglevelContext(control_command_log, logging.DEBUG): - control_command_log.info(msg) - return msg + # Zustand entspricht keinem Pattern, Leistungsbegrenzung aufheben + return 1 def create_action(config: StepwiseControlSetup): diff --git a/packages/modules/io_actions/generator_systems/stepwise_control/config.py b/packages/modules/io_actions/generator_systems/stepwise_control/config.py index ad6c1b4aa1..2072c53c72 100644 --- a/packages/modules/io_actions/generator_systems/stepwise_control/config.py +++ b/packages/modules/io_actions/generator_systems/stepwise_control/config.py @@ -1,20 +1,20 @@ -from dataclasses import dataclass -from typing import Optional +from dataclasses import dataclass, field +from typing import Dict, List, Optional +from dataclass_utils.factories import empty_list_factory, empty_io_pattern_stepwise_factory from modules.io_actions.groups import ActionGroup @dataclass class StepwiseControlConfig: io_device: Optional[int] = None - s1: str = None - s2: str = None - w3: str = None - pv_id: int = None + input_pattern: List[Dict] = field(default_factory=empty_io_pattern_stepwise_factory) + devices: List[Dict] = field(default_factory=empty_list_factory) + # [{"type": "inverter", "id": 1},...] class StepwiseControlSetup: def __init__(self, - name: str = "Stufenweise Steuerung einer EZA", + name: str = "Stufenweise Steuerung von EZA", type: str = "stepwise_control", id: int = 0, configuration: StepwiseControlConfig = None): From 9d555186205c37ea1c6b54ba8c50bc20654632f7 Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Mon, 21 Jul 2025 13:23:23 +0200 Subject: [PATCH 09/11] implement outputs for stepwise control --- packages/control/process.py | 7 +++++ .../generator_systems/stepwise_control/api.py | 30 +++++++++++++++++-- .../stepwise_control/config.py | 3 +- 3 files changed, 37 insertions(+), 3 deletions(-) diff --git a/packages/control/process.py b/packages/control/process.py index abf9090ec8..9ed2572b2e 100644 --- a/packages/control/process.py +++ b/packages/control/process.py @@ -15,6 +15,7 @@ from modules.common.fault_state_level import FaultStateLevel from modules.io_actions.controllable_consumers.dimming.api import Dimming from modules.io_actions.controllable_consumers.dimming_direct_control.api import DimmingDirectControl +from modules.io_actions.generator_systems.stepwise_control.api import StepwiseControl log = logging.getLogger(__name__) @@ -85,6 +86,12 @@ def process_algorithm_results(self) -> None: data.data.io_states[f"io_states{d['id']}"].data.set.digital_output[d["digital_output"]] = ( not action.dimming_active() # active output (True) if no dimming ) + if isinstance(action, StepwiseControl): + for d in action.config.configuration.devices: + if d["type"] == "io": + data.data.io_states[f"io_states{d['id']}"].data.set.digital_output[d["digital_output"]] = ( + action.control_stepwise() == d["value"] # active output (True) if value matches + ) for io in data.data.system_data.values(): if isinstance(io, AbstractIoDevice): modules_threads.append( diff --git a/packages/modules/io_actions/generator_systems/stepwise_control/api.py b/packages/modules/io_actions/generator_systems/stepwise_control/api.py index ae6bf1f01f..a20f3f82db 100644 --- a/packages/modules/io_actions/generator_systems/stepwise_control/api.py +++ b/packages/modules/io_actions/generator_systems/stepwise_control/api.py @@ -6,6 +6,7 @@ from helpermodules.timecheck import create_timestamp from modules.common.abstract_device import DeviceDescriptor from modules.common.abstract_io import AbstractIoAction +from modules.common.utils.component_parser import get_component_name_by_id, get_io_name_by_id from modules.io_actions.generator_systems.stepwise_control.config import StepwiseControlSetup control_command_log = logging.getLogger("steuve_control_command") @@ -19,11 +20,24 @@ def __init__(self, config: StepwiseControlSetup): for key in pattern["input_matrix"].keys(): if key not in self.__unique_inputs: self.__unique_inputs.append(key) - assigned_devices = [io_device["id"] for io_device in self.config.configuration.devices] + assigned_inverters = [ + f"{device['id']}" + for device in self.config.configuration.devices + if device["type"] == "inverter" + ] + assigned_outputs = [ + f"{device['id']}/{device['digital_output']}" + for device in self.config.configuration.devices + if device["type"] == "io" + ] + # Log the configuration details + # We cannot use configured names here, as the devices are not yet initialized + # and thus the names are not available. control_command_log.info( f"Stufenweise Steuerung von EZA: I/O-Gerät: {self.config.configuration.io_device}, " f"Überwachte digitale Eingänge: {self.__unique_inputs}, " - f"zugeordnete Erzeugungsanlagen: {assigned_devices} " + f"zugeordnete Erzeugungsanlagen: {assigned_inverters} " + f"zugeordnete IO-Ausgänge: {assigned_outputs} " "Die Begrenzung muss in den EZA vorgenommen werden!" ) super().__init__() @@ -52,6 +66,18 @@ def setup(self) -> None: if changed: Pub().pub(f"openWB/set/io/action/{self.config.id}/timestamp", create_timestamp()) control_command_log.info(f"EZA-Begrenzung mit Wert {int(pattern['value']*100)}% aktiviert.") + for device in self.config.configuration.devices: + if device["type"] == "inverter": + control_command_log.info( + f"Erzeugungsanlage {get_component_name_by_id(device['id'])} " + f"auf {int(pattern['value']*100)}% begrenzt." + ) + elif device["type"] == "io": + control_command_log.info( + f"IO-Gerät {get_io_name_by_id(device['id'])} Ausgang " + f"{device['digital_output']} " + f"{'aktiviert' if device['value'] == pattern['value'] else 'deaktiviert'}." + ) break else: if changed: diff --git a/packages/modules/io_actions/generator_systems/stepwise_control/config.py b/packages/modules/io_actions/generator_systems/stepwise_control/config.py index 2072c53c72..c7380f666e 100644 --- a/packages/modules/io_actions/generator_systems/stepwise_control/config.py +++ b/packages/modules/io_actions/generator_systems/stepwise_control/config.py @@ -9,7 +9,8 @@ class StepwiseControlConfig: io_device: Optional[int] = None input_pattern: List[Dict] = field(default_factory=empty_io_pattern_stepwise_factory) devices: List[Dict] = field(default_factory=empty_list_factory) - # [{"type": "inverter", "id": 1},...] + # [{"type": "inverter", "id": 1}, + # {"type": "io", "id": 1, "digital_output": "SofortLa", "value": 0.6},...] class StepwiseControlSetup: From 6b2e4588fda296626a2a23cade0aa529a8027e53 Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Wed, 23 Jul 2025 09:29:03 +0200 Subject: [PATCH 10/11] rewrite output handling --- packages/control/process.py | 15 +++++--- packages/dataclass_utils/factories.py | 20 ++++++----- .../data_migration/data_migration.py | 8 ++--- packages/helpermodules/update_config.py | 24 ++++++++++++- .../controllable_consumers/dimming/api.py | 2 +- .../dimming_direct_control/api.py | 2 +- .../ripple_control_receiver/api.py | 4 +-- .../ripple_control_receiver/config.py | 2 +- .../generator_systems/stepwise_control/api.py | 35 ++++++++----------- .../stepwise_control/config.py | 5 +-- 10 files changed, 72 insertions(+), 45 deletions(-) diff --git a/packages/control/process.py b/packages/control/process.py index 9ed2572b2e..8dfe32dc19 100644 --- a/packages/control/process.py +++ b/packages/control/process.py @@ -87,11 +87,16 @@ def process_algorithm_results(self) -> None: not action.dimming_active() # active output (True) if no dimming ) if isinstance(action, StepwiseControl): - for d in action.config.configuration.devices: - if d["type"] == "io": - data.data.io_states[f"io_states{d['id']}"].data.set.digital_output[d["digital_output"]] = ( - action.control_stepwise() == d["value"] # active output (True) if value matches - ) + # check if passthrough is enabled + if action.config.configuration.passthrough_enabled: + # find output pattern by value + for pattern in action.config.configuration.output_pattern: + if pattern["value"] == action.control_stepwise(): + # set digital outputs according to matching output_pattern + for output in pattern["matrix"].keys(): + data.data.io_states[ + f"io_states{action.config.configuration.io_device}" + ].data.set.digital_output[output] = pattern["matrix"][output] for io in data.data.system_data.values(): if isinstance(io, AbstractIoDevice): modules_threads.append( diff --git a/packages/dataclass_utils/factories.py b/packages/dataclass_utils/factories.py index 6e4da75d79..acb55a2fa8 100644 --- a/packages/dataclass_utils/factories.py +++ b/packages/dataclass_utils/factories.py @@ -21,11 +21,11 @@ def empty_io_pattern_boolean_factory(): return [ { "value": True, # dimmen - "input_matrix": {} + "matrix": {} }, { "value": False, # unbeschränkt - "input_matrix": {} + "matrix": {} } ] @@ -33,15 +33,19 @@ def empty_io_pattern_boolean_factory(): def empty_io_pattern_stepwise_factory(): return [ { - "value": 0.6, # Stufe 1 - "input_matrix": {} + "value": 1.0, # keine Begrenzung + "matrix": {} }, { - "value": 0.3, # Stufe 2 - "input_matrix": {} + "value": 0.6, # Stufe 1: 60% + "matrix": {} }, { - "value": 0, # Stufe 3 - "input_matrix": {} + "value": 0.3, # Stufe 2: 30% + "matrix": {} + }, + { + "value": 0.0, # Stufe 3: 0% + "matrix": {} } ] diff --git a/packages/helpermodules/data_migration/data_migration.py b/packages/helpermodules/data_migration/data_migration.py index cca56b8285..dc9127a64b 100644 --- a/packages/helpermodules/data_migration/data_migration.py +++ b/packages/helpermodules/data_migration/data_migration.py @@ -581,10 +581,10 @@ def _move_rse(self) -> None: action.configuration.io_device = 0 # Wenn mindestens ein Kontakt geschlossen ist, wird die Ladung gesperrt. Wenn beide Kontakt # offen sind, darf geladen werden. - action.configuration.input_pattern = [{"value": 1, "input_matrix": {"21": False, "24": False}}, - {"value": 0, "input_matrix": {"21": False, "24": True}}, - {"value": 0, "input_matrix": {"21": True, "24": False}}, - {"value": 0, "input_matrix": {"21": True, "24": True}}] + action.configuration.input_pattern = [{"value": 1, "matrix": {"21": False, "24": False}}, + {"value": 0, "matrix": {"21": False, "24": True}}, + {"value": 0, "matrix": {"21": True, "24": False}}, + {"value": 0, "matrix": {"21": True, "24": True}}] Pub().pub('openWB/system/io/0/config', dataclass_utils.asdict(AddOn())) Pub().pub('openWB/io/action/0/config', dataclass_utils.asdict(action)) diff --git a/packages/helpermodules/update_config.py b/packages/helpermodules/update_config.py index 40daa6a85b..39b41716dc 100644 --- a/packages/helpermodules/update_config.py +++ b/packages/helpermodules/update_config.py @@ -56,7 +56,7 @@ class UpdateConfig: - DATASTORE_VERSION = 89 + DATASTORE_VERSION = 90 valid_topic = [ "^openWB/bat/config/bat_control_permitted$", @@ -2348,3 +2348,25 @@ def upgrade_datastore_88(self) -> None: pub_system_message({}, "Es gibt ein neues Theme: das Koala-Theme! Smarthpone-optimiert und mit " "Energiefluss-Diagramm & Karten-Ansicht der Ladepunkte", MessageType.INFO) self.__update_topic("openWB/system/datastore_version", 89) + + def upgrade_datastore_89(self) -> None: + def upgrade(topic: str, payload) -> Optional[dict]: + if re.search("^openWB/io/action/[0-9]+/config$", topic) is not None: + payload = decode_payload(payload) + # modify key "input_matrix" to "matrix" for all patterns + if "input_pattern" not in payload["configuration"] and "output_pattern" not in payload["configuration"]: + # No input/output patterns found in IO action configuration + return None + log.debug(f"Updating IO action configuration: {topic}: {payload}") + if "input_pattern" in payload["configuration"]: + for pattern in payload["configuration"]["input_pattern"]: + if "input_matrix" in pattern: + pattern["matrix"] = pattern.pop("input_matrix") + if "output_pattern" in payload["configuration"]: + for pattern in payload["configuration"]["output_pattern"]: + if "input_matrix" in pattern: + pattern["matrix"] = pattern.pop("input_matrix") + log.debug(f"Updated IO action configuration: {topic}: {payload}") + return {topic: payload} + self._loop_all_received_topics(upgrade) + self.__update_topic("openWB/system/datastore_version", 90) diff --git a/packages/modules/io_actions/controllable_consumers/dimming/api.py b/packages/modules/io_actions/controllable_consumers/dimming/api.py index e38bc2709a..0312bc1945 100644 --- a/packages/modules/io_actions/controllable_consumers/dimming/api.py +++ b/packages/modules/io_actions/controllable_consumers/dimming/api.py @@ -17,7 +17,7 @@ def __init__(self, config: DimmingSetup): self.config = config self.import_power_left = None for pattern in self.config.configuration.input_pattern: - input_matrix_list = list(pattern["input_matrix"].items()) + input_matrix_list = list(pattern["matrix"].items()) if len(input_matrix_list): if pattern["value"]: self.dimming_input, self.dimming_value = input_matrix_list[0] diff --git a/packages/modules/io_actions/controllable_consumers/dimming_direct_control/api.py b/packages/modules/io_actions/controllable_consumers/dimming_direct_control/api.py index cbeaea3fde..980e9d2a08 100644 --- a/packages/modules/io_actions/controllable_consumers/dimming_direct_control/api.py +++ b/packages/modules/io_actions/controllable_consumers/dimming_direct_control/api.py @@ -14,7 +14,7 @@ class DimmingDirectControl(AbstractIoAction): def __init__(self, config: DimmingDirectControlSetup): self.config = config for pattern in self.config.configuration.input_pattern: - input_matrix_list = list(pattern["input_matrix"].items()) + input_matrix_list = list(pattern["matrix"].items()) if len(input_matrix_list): if pattern["value"]: self.dimming_input, self.dimming_value = input_matrix_list[0] diff --git a/packages/modules/io_actions/controllable_consumers/ripple_control_receiver/api.py b/packages/modules/io_actions/controllable_consumers/ripple_control_receiver/api.py index b17191f9a0..886db6e43c 100644 --- a/packages/modules/io_actions/controllable_consumers/ripple_control_receiver/api.py +++ b/packages/modules/io_actions/controllable_consumers/ripple_control_receiver/api.py @@ -18,7 +18,7 @@ def __init__(self, config: RippleControlReceiverSetup): def setup(self) -> None: with ModifyLoglevelContext(control_command_log, logging.DEBUG): for pattern in self.config.configuration.input_pattern: - for digital_input, value in pattern["input_matrix"].items(): + for digital_input, value in pattern["matrix"].items(): if data.data.io_states[f"io_states{self.config.configuration.io_device}"].data.get.digital_input[ digital_input] != value: break @@ -51,7 +51,7 @@ def setup(self) -> None: def ripple_control_receiver(self) -> float: for pattern in self.config.configuration.input_pattern: - for digital_input, value in pattern["input_matrix"].items(): + for digital_input, value in pattern["matrix"].items(): if data.data.io_states[f"io_states{self.config.configuration.io_device}" ].data.get.digital_input[digital_input] != value: break diff --git a/packages/modules/io_actions/controllable_consumers/ripple_control_receiver/config.py b/packages/modules/io_actions/controllable_consumers/ripple_control_receiver/config.py index 9a866908b5..2daa3e29c3 100644 --- a/packages/modules/io_actions/controllable_consumers/ripple_control_receiver/config.py +++ b/packages/modules/io_actions/controllable_consumers/ripple_control_receiver/config.py @@ -7,8 +7,8 @@ @dataclass class RippleControlReceiverConfig: io_device: Optional[int] = None - # [{"value": 0.5, "input_matrix": {"SofortLa": False, "PV": True}}] input_pattern: List[Dict] = field(default_factory=empty_list_factory) + # [{"value": 0.5, "matrix": {"SofortLa": False, "PV": True}}] devices: List[Dict] = field(default_factory=empty_list_factory) # [{"type": "cp", "id": 0}, # {"type": "io", "id": 1, "digital_output": "SofortLa"}, diff --git a/packages/modules/io_actions/generator_systems/stepwise_control/api.py b/packages/modules/io_actions/generator_systems/stepwise_control/api.py index a20f3f82db..2811ac5b9b 100644 --- a/packages/modules/io_actions/generator_systems/stepwise_control/api.py +++ b/packages/modules/io_actions/generator_systems/stepwise_control/api.py @@ -6,7 +6,7 @@ from helpermodules.timecheck import create_timestamp from modules.common.abstract_device import DeviceDescriptor from modules.common.abstract_io import AbstractIoAction -from modules.common.utils.component_parser import get_component_name_by_id, get_io_name_by_id +from modules.common.utils.component_parser import get_component_name_by_id from modules.io_actions.generator_systems.stepwise_control.config import StepwiseControlSetup control_command_log = logging.getLogger("steuve_control_command") @@ -17,7 +17,7 @@ def __init__(self, config: StepwiseControlSetup): self.config = config self.__unique_inputs = [] for pattern in self.config.configuration.input_pattern: - for key in pattern["input_matrix"].keys(): + for key in pattern["matrix"].keys(): if key not in self.__unique_inputs: self.__unique_inputs.append(key) assigned_inverters = [ @@ -30,16 +30,17 @@ def __init__(self, config: StepwiseControlSetup): for device in self.config.configuration.devices if device["type"] == "io" ] - # Log the configuration details - # We cannot use configured names here, as the devices are not yet initialized - # and thus the names are not available. - control_command_log.info( - f"Stufenweise Steuerung von EZA: I/O-Gerät: {self.config.configuration.io_device}, " - f"Überwachte digitale Eingänge: {self.__unique_inputs}, " - f"zugeordnete Erzeugungsanlagen: {assigned_inverters} " - f"zugeordnete IO-Ausgänge: {assigned_outputs} " - "Die Begrenzung muss in den EZA vorgenommen werden!" - ) + with ModifyLoglevelContext(control_command_log, logging.DEBUG): + # Log the configuration details + # We cannot use configured names here, as the devices are not yet initialized + # and thus the names are not available. + control_command_log.info( + f"Stufenweise Steuerung von EZA: I/O-Gerät: {self.config.configuration.io_device}, " + f"Überwachte digitale Eingänge: {self.__unique_inputs}, " + f"zugeordnete Erzeugungsanlagen: {assigned_inverters} " + f"zugeordnete IO-Ausgänge: {assigned_outputs} " + "Die Begrenzung muss in den EZA vorgenommen werden!" + ) super().__init__() def setup(self) -> None: @@ -57,7 +58,7 @@ def setup(self) -> None: ]) > 0 for pattern in self.config.configuration.input_pattern: - for action_input, value in pattern["input_matrix"].items(): + for action_input, value in pattern["matrix"].items(): if digital_input[action_input] != value: break else: @@ -72,12 +73,6 @@ def setup(self) -> None: f"Erzeugungsanlage {get_component_name_by_id(device['id'])} " f"auf {int(pattern['value']*100)}% begrenzt." ) - elif device["type"] == "io": - control_command_log.info( - f"IO-Gerät {get_io_name_by_id(device['id'])} Ausgang " - f"{device['digital_output']} " - f"{'aktiviert' if device['value'] == pattern['value'] else 'deaktiviert'}." - ) break else: if changed: @@ -86,7 +81,7 @@ def setup(self) -> None: def control_stepwise(self) -> Optional[float]: for pattern in self.config.configuration.input_pattern: - for digital_input, value in pattern["input_matrix"].items(): + for digital_input, value in pattern["matrix"].items(): if data.data.io_states[f"io_states{self.config.configuration.io_device}" ].data.get.digital_input[digital_input] != value: break diff --git a/packages/modules/io_actions/generator_systems/stepwise_control/config.py b/packages/modules/io_actions/generator_systems/stepwise_control/config.py index c7380f666e..7cfc0d4802 100644 --- a/packages/modules/io_actions/generator_systems/stepwise_control/config.py +++ b/packages/modules/io_actions/generator_systems/stepwise_control/config.py @@ -9,8 +9,9 @@ class StepwiseControlConfig: io_device: Optional[int] = None input_pattern: List[Dict] = field(default_factory=empty_io_pattern_stepwise_factory) devices: List[Dict] = field(default_factory=empty_list_factory) - # [{"type": "inverter", "id": 1}, - # {"type": "io", "id": 1, "digital_output": "SofortLa", "value": 0.6},...] + # [{"type": "inverter", "id": 1},...] + passthrough_enabled: bool = False + output_pattern: List[Dict] = field(default_factory=empty_io_pattern_stepwise_factory) class StepwiseControlSetup: From 38e8994c8c6310eb368dd70afddc38341575415f Mon Sep 17 00:00:00 2001 From: Lutz Bender Date: Wed, 23 Jul 2025 09:30:13 +0200 Subject: [PATCH 11/11] update docs --- docs/EZA-Beispielkonfiguration.png | Bin 0 -> 128926 bytes "docs/IO-Ger\303\244te & -Aktionen.md" | 6 ++++-- docs/RSE-Beispielkonfiguration.png | Bin 0 -> 80114 bytes ...rbrauchseinrichtungen nach \302\24714a.md" | 20 ++++++++++++++---- 4 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 docs/EZA-Beispielkonfiguration.png create mode 100644 docs/RSE-Beispielkonfiguration.png diff --git a/docs/EZA-Beispielkonfiguration.png b/docs/EZA-Beispielkonfiguration.png new file mode 100644 index 0000000000000000000000000000000000000000..19980e4a5f8469f8f12f5e561d9c581b84f2284c GIT binary patch literal 128926 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

y~$k2J}gp1+`MlCr2yR^0%k7B0m4va?w2yKIiy; zh={oULe`Tr3~jn2%v+pGfLF3-z*fDwjNa(CjrHmH(h({gf?K{Kjf z#*%kw+Wj8xckGr>udOBvbj$E!>hT*-d&db4- zoF4B~@%N68`i%6IXjQZN0GmA`KT(xv7`39D>P*}?&PtO7fSKPWmuG`QXkUlvho z+9*KiffF_48J`#X9BS?n@loDgYdH9L(AIbFSP$Iw1Kg)vnW2m&r|)Bh2a4C zM}18iE%}O)S%8C_S0UY9IuPlVfoNDTTo`}a7uM&vJ>!tQ*zQ7#7pvFcsmDl9yij9# zm*CKvlaSn`p=Pe-{`2ZSFZX`TAN{mH>Evh4+V9&30-(*;##PYE&BldMYq*L?bLzvP zFIm6?;m;2}|6X5If+kdyX}z~HhpewBfVnIjpO|wy z8mmTOztFPvD$o~_(`dA+b)EEiwpcXJtcTrxD2Obm1$jUSEb}zKPkv#)H*#U!7 z+6v*;GCJCe_gs<5(ENp2#st!U=*H`{$zI_96LjLvPvZWQrJ%4g#|@t)MX^Ld;|cu1 zp?ac9Z(Ynwg}lJ|`mNG^iZi(R;##|VWLNcjNWtIBRE^EMAEVQ=O_3s%N1(J(GZ$D{ z)wvmX_uYr3LyME{DU*x)`UIrcAF|3nbURW6r6Rk%`L2LEL`D@}uIz`r}0(Zg~vj zSc}qOG;Oj$r|aHqbOU3NUW{7;u)Bl@?s91RZO`nbO+EKN;w`)ZW!<#;mE#Y|-ZXMp zTG`cf_#-<xoS3G{8hiSx}1L zbGeGC7tUTBz~oJL7l#jLUfmfuORC|dF*z`dX3)m~J10zWaS0o4xAh>opDZ?mn|1gW zirK`(ylyX-?^Xp;t*dHF#`kdLsU(|P0m!TjBHF$`Xza%>_h}kb$4y;6lqcJGqywi0 z7cMR>uMTf_c)6Yrvxz6|ch(dDo9Vy44Az|J1MPMhV{(CNrsI{ylom7+Q&(F&rPq69 zg=F(iM|^$mnj*KIhC<1&78b(Y4_oQ1A9I0ft>lSGs%oQTI)LKB?okj(=;r#9yjK>8<8%MDO6snkmG#{upF%zM4G z9kR*&het05{ReLSDI-1(XB8Fl4j#CPX93?wW8Q>BB7G)`&CV*F;W2Zyo*T+Pd${ja zn|8kpf49@!;YHGBkY~*pQEGE_Soc}MZAH#Pm^{YSYpE*21S4j!{QU9M_oz&DI%?4L z--mD?A%kR)Ns|t6uWL<>>`KVeh47=D!(N%?l}ErZ$2bFKp4up>_EY3h|8)UJXux+_ z#^9BM)}tzQB`9)uF9<8zXCoC1#_a)i>Adc?Q)Ek$EC?5dq8v@@2?|ub9h2A-V{z5OE}B=vbzC!z~R2zDcPU~S|3+b zR+cf(YTb)(UBS*_@~@*|AUSWLyh5qI4_36m1rY^{hqvp-RWfFD&Pur`v>u#oZAf(XIy!jUAvjt0G2B zNr8q@CHdgqroV~(Bd!GI3chS8#C0h~_H@J@|1|X}(8Y0n7+DG8#1N@T~KZ zaEWl?;Hgrjx|#fn$+(j z`zDtsQw5uxScK1dt&)i%{)-v4-51Q*P!8)W#&^bzx(C*FJ4-63MeP-)zokSMJe2eK z#x`D_gEp@--OP7&;eR={G`71@zpk}(k4%!T#Innv_WcNQ&d@dr%AScH@!`2{)?;F{ zaok#hkU~_Z``C-B<|&Jbw2EN z|4!3$ck%@qc7@O4_OME=elXs7WO*3z8%S(| z`-U=d@;=8@cfo}Md1#D|AlsQOSA-2#EG@6=7H7b-gjBtot8W@yWFkB9$0-F>5og~6 z_Xv(X7MIiBox(W|B~Z$7&{+V0!giU;SiOc|qfNpIBqF-sxji%O)AC=A_d0{F?>iAZ z9M#fx=E^yq{zi(>B+24f(Nd@E{3b1R)EP0Gm1 zyxdD!uCXaWOEX9M6bGMSj_EGoj_RY!S86ZKVbb5t2?m)?<~(wfW-baj^%qbOY7E-i zDe@iO;jco+cMA&l;Cv4yMd>xM~PW3y%EnspWbP>Y($>iV7N3Mv2)6nYzA6 z5d`@;?FaI!tZ{|B^XMdZ)ns_t6Y_3ma1IknnwsCSQDlIG&eGcbxD;)UQz?$pqn_>K zc3P@CBVKBImMxIWlvS5gW-7Ar3d(Q%omOgDSAupz=q{DjepSoU(Z`5eNbxD8|D4tN zB0!5*v~6%iOp({>Q{EcF-6JpKMHLo~KoVN$$<{V;$K@rt1u1fHR78cEo4e=ab-yjV z$jaXx=clIjD=rc^jqv}-S4bspY91xpx<8+r}*ku|0bm{5}a-9Zl z&Q1f4EHS(MfDpL3jEtP_gPa+UF6$RL3dx%UZz0Fq6QA!MhPi+)O8ATMNfy{XL2@Z* zpAJw=F+|_ma%ZOs2{hL`Tp{M5AuSo8bxaJ-D;;^i-rJy&2unA^KcoVC)ukSGi(OZk zqt6!R?7CH2AAp#-4ZyBW*r{LtRlNco+wy6j=$L^4x?6(IO z994bk$hwIByzYM|#O!tVJuFwaHWC2Z4KHIESIFrYrxb!!}!?C?tGjVuLD zve05WGwy5u13(Hl*dZ5XJuj+96F~f#FC-a`_jGnK$C6YN)V8V4CIEjdt=R=;i@xCdII?r~lbdH! z=x(Kjm5oaY)ZQ9kj4M^@CWUmgP-Eh4{(WpsNYcy&2pu|in6K`T?f6GhDCe*h$3HH( z0nH`6@jz1&zL~Sb9}Lx}nWFx5Hx}psY-cIUllODyD`@w$YW+JdXz?XA)n` z)ovdBy;mI{9+3XCs1Z#fU>mrE<7YExLvd5|wiTYp!(FQ(kj_X_vH``*(yTaQ$)Hlp z5CG{FbYb%L|F0IHt^REb^t0rR*Gk5hwrnqlg=lQQ`q1Dry}&sn|s4NI7$9jrpGri3deW>ns0HoY*~EI z+VcQg(G+^{@npUc;hZuWi8@>*ZD!qLF)Hvf-j~*bM9Yamr%_3j^q;D6v7-i34BB1e z$JV;YX$&%H+DnTL_}gnt(tc%FHt5#e+`1hcHW4dT?M-^3aw_GI;V{3I0Fu;a394~K ziLkzzjSOsZ|GNkq%2q#=tikDFf^yB6Oym2(nrNFz4fDdeZ8 z8E#&+9)?5H_^*nytV$sTe6Mpnyw{uJb2($O-0o)UnRj;+Ir0J0Umsc0ZQJHUoSGz^vOZwUQY^0oP=3UH#=N zux5=OZism%y_hQG^%Xce$k!tNm=-u0NBI}j?R!QPsTuj%iNM6)_HiazWJW9#k!>_$ z=P&dD9D^j{&JYMs<$Sl}tiXn-y@qNGiwg`EZ1zJ6b`_zW%AvxFXKBw}GDwg(BOl`2 zTV9t-mh{O?%uTc}ZTo-dI?J#&yS7XBL5sJzyA@L0wNTtz+&#FvLyH#o;7}|;ptuw- z1a}DT?k>e)^1SoCKW2`ZzsV7~cXsx@_j#?guCnhNiJW~*C5qkRIbuPP@J)*Ue%>0#M^M%V$NpQW->{OCf$X0 zb5>!hgFe7$YMX4tHSn-Q4_Ui;lbFONIC zn05{?D3n0B{uHy$!8LZr!IoQMnENd%wD%k7jePtU%j%D%Rlhd$oWvvIb66HrQ{sur zGWk7K-@r>1-lt_u`_@iy!WQL)O-Ylgk`^AM5VW7?Ps#t~WNEmiQf2c3$>~g7YM-tZ zfKyc37fer26xfL&uXdht|Dj0=&4!Kd%s=Mtac`ejRHVZkdGNbA5(SofQNKW-eau6n z1&@~RSIS_S8V3DcIMO1s)2=e}^#t*+3J%QVz9fxQl$V!TF709gYjsxzozr1^Y#^!Y z+a>R1Hcv5l#9hJVSQj0+kmn_Twp5u(gU)->{-MoCMIp7t+St8rN&T?FyKVEliM&d7m4`vQ8x($1|s(8uC(HwJZB9h~(2 z)8dCpc{gHQ_%o5;Lafx3g_Tfa;in19G+=2YdYB(EA@g82qAFfpb?%RTr$1WnQC}O+ z=v?QyK!ec{;%i$fPyqyiq&z;uk0Pr9X91N4N34Trtj3+F%<{PZ8a6c|(OEv}X5hf* zc$lKLqSn`cL@4d6L66#ud#7Qgq*}bgE8>CCJA(zth zmx@hSLQ^yKlMe}ex_Ye%tJPw>AiuUdcmh8vGM4|t80Mc@VcBJ&{`>v6Lz{;&N;;$F zCeyy-OUM!_+U+%FL&SwM+nHP z;x6bVu)+Brpgj5^>dV1$FRPNu_!Nx)ZUWz{8r8N8BpDMoo?uu1E}N98lxJe!%LvCv z8CU(8yfq0pT=KWThyrTnw(dFa0zpAu$ySW<|I_qM(fx6bK6&(AWM7oliq!_WM6NTB z=TdES@i(v?ypnUI&8)zmJj;VwP;=MTN`&Sp2Cnhm^bM)g>$HmMTqU z9A^hjQRUVJwswY5klEgC42$=XJ6T?L%Y%-+b9Y@)aZT{mt_=jF^Ia%dvux#xNmczG zo99nxb{xTFBS!V7+Qm}xj<0$ELQki)KC1RR*n!VbuUkd=55}kwJNw#~5#Gu??#KMOU@S}deK|%=ZxNEk$AAx<@ zyzy3;RcRU?gg@J-ZFGmpt4Y9MS2AN}F+S$t|IErhF*~JE`(o4eobxN@h!7TFS` znByhSAM=@Acn`_|7#Zuj-lbLk<-o&Ct;_+-^W?58c(KC^X~Z%IxvxdsB=8n_kuqEO z^$5X!Ov$5@Fn&39@?0l5t>8n~> zjyEOt5-DT@H z2p%3ViUw@)<5CR8~0bD-RHe z;2Zdwy6yMwvoxp-^0wMx7zJ?HEv(hLGUhfeq8woO5yBPp9j@Vk7k_j8{*s8CZl>6} z2_1{nS|C~&jf+ap)dKL&(`o{i7%OJOs=gIMSoHa;N@}^Bzci!P0ybP)eSpI#%hJSf zr_cVOfxLRa3PsqB;}Z;gV^>;MiLY?=u7-K3vw>Gr<&Bh*Gw5-5)=p&ElNl?=g_$GRmmLXCHKqyw@g#-6mM5nPO z=4kiTht619>|7GqueQC<8r8~1)zO4k%pzf?R@OlKRm~)OPqLF=zv`PB@GbNWK@1=^ zn;ncipYYs{7a!xJS{(on-*k^<7c9R)p^?Qped{n6M^vY zBbn^(Rq>}$iHw|B&c$+i4NYmn&$RzyrLOM(0ZhTjW?g@eF`>+nfhAtGlRQd1hO#Uh zScG_PV=BtBpwT2Mb>%t5m&HG*?dFOBafdD61D{*jJ=~#x+Hi9H4CgpcLpTF;hA7Zg z+q0atK^&OL&H&ZR&T2F%v%$yiG3$bBzaN=!5|`SH1AZ`=oK#{9qSEmV5>cem$%?kQ z?G=Hie`#nExa6`(d7MUtjBnu_$;0RI|Fw4K+^!q!_{{XPi(*J{tb^TK9efO3S z4=-KGLQv#AkTI1eh{}NBeF|R^Jq>H^J~rL&M?u7tgCp9{zh>4OZ7DvAD>+g20p2gDrv>v&+yNArXC=LTiZ3oc$op`j^7 z`2G`#(41F=EWENX=bH2<6V1tUw+ zvy9@wIa&nt`sNl7J?sNMx_7$~DH)lyqiwfY%?}CO|B%5eRpJ~CS{W|&-!H+T6_EKH zHUm$xODAI@Zmile0TO7i;q1U63uP6CCf5fbtS8w8IZ9>KG_E@64k+4+g@;V#3P1^bbav83@`@6%?hg=TYM%6Qq4YScHnpt1&Cjs}Ee z;`pWrw(;snO5g06fAMyoeWNIuY&p<%Fy<<#iev>?23z@vF zVXC&t%B22!2DPgS(t->hiKiFdDt4|`MS{KKbl3(U)mMCa|EHtpg>leW6YDM85xXLK6qe*R>rvx6ZU;_t^XXrN@hWcoQud4cMy;e6U)PcN%X@YT$6aH8TP#9MB}`0p$y6m4ZPC7xR4#;B z0;Ek7S-LdLNw<64!^?oS^B%&XUnmRqD28+YAV+KVPNU;v;?0;rEmb*h5Clj6zypot zaD8bMSHD*4YASvF!d7LP{!^!79)LSIAwV?lss1{^G~v!pI7pp0tU93#oCzMal#zHI0y?Zqj`=% zx6kEy51la`ETPArNKcaX@Se;a5fLqdmJX3nSCWgyZXf7=6*rfj9o0>gRqo>=%^lHi zB}gg{&;67Bp@tgr9?U=>N?Och*rip4jK;i=(qdy~R*>;?h>K5Gk{{Ex&nYlSOS+3i zalb`kjDsVwnuSYCw|ndI9GIL#8jT5-U*#AeW2~j8;hbxMu_zLQB~5hyMvq9>Y)YzSu>4TYxE6)=8SrPP^jBZyps*LV<@vVw(j?A#z5e>gtwqjF0pE z6Yf!&Gk$lQC5=gE!XsX589Rz=Pk@hb@;826Oo)!Z|O2Z-|dSmZAUd)p#vDw)&_{XAWKlPq>-6ermh{ZFgk-U>sPcV_Hw*Q|jA(=+oUI@tz0M>vN_S zsRo`V*YE6Umjw!urRHq*rH|I|7AR+w8#~S*1t${YBWn|f46M3@z5R)|Yhmi}v^OQ&m^6}4@ zNm&ZMSE`v+4fMF&KR}R@MgVJ@cVWUi5AG0LvNS9%@g~>af3C-;rK$H zoP>O9)Fd<8-qgxmG|%=tQIXNxO<>Rs9$EleCkjZ;Rwi&>uoqAYsob^9t*GY|;O&i% z_^f0-v0b%};V?6uDgUx@DPR+=K%2#6J8*1myM5rx&X&0Ai@{(ppqW-#ctCoulvLAE zZg7kZoBtYVyG`8eOju}vF&^ZL)4-Nf_BA^gEnO(XJHZ4+uhp~04yrbL8W0|!4@%7X zJt9{bH~zZ8@7>1R|HVj9sTbbw{|rBEh4mv5wT zhhG>&t62Y>kvDqKHEBSX$Z(_R5M(x0 zUeR#=aRpTVdDhV@L!KM492$)X>s0X;}1rxgWnME6J5qwP0akfr|;}?fLZ5 z>bW?1Bf&OiAkjBU{j>(kiWQJ^wS2j|6~|d$0yZV-Kl+3GAkE}xrK>Mx>=LWOEzB`w3V(9PtkttHGmTZx=$!^QEF*{Lc8zoD%oef6b z<&v|WL%m;4k0ke#D?r8SGh&t~qti|7xucYoO-2@JmShexKF7<1H}^lE%(f zZXRh^JiAp4P1>{4ez@<|09A&Q^0neCnWXl2Q8mp>p1Ll-o5i7>7T22@(qI`j&O6#l znSb~=G<)XG(?>8m1YUfjkBD747D_Tq_D!B8YgbOg+)WWLXwgU>z%v|~J~s5=`(p1w z_UbB)m}SVarGhSu!)XmP_`l0*kTF{8l*aXeE-U$3@S-wwu27_Q=T(ml+*lRaS=8=K-m7U;Sd z)*s*&%86ic7lSE|zNb60U6P5}nI1Eh$C+r^_N1B|U!06QA_?N&f<3v?jwK1PCn^PN zKQP_tYMB42zDgSoa8KQv|LSONZ692>L2s#GW~hll#$t#`q-2?lW<-&>U9_jm-f}qD!rgdPp2$bf35qlMP#y zRoGhO=d^?DNLR*mU~|xEtD>cvfztl5jvkbb7u(e+wY-i*32Fi$wv=+Y%s|J%;)6F? zb?M+Hu&D2jx2>7b#52j5i{n4*B2Y-0#!>?IFgkNeYpPlAFAl-ttNP3nYnq?nnu0AC zT{NTQulCs4RHKc&;!ozJLSWbDGphU7Bs1tqEuA9VuEAGMp{e>OC6OL)t1#8O@^vr! zhy2}P>)j#0(fWFg8+pJplKBVr@t~tG-bI@apfq^pz*27P`f@nv0UOmG9bC3mQPy9X zUc`W0vNGnB7If{?4$rJ{Z6?R=H*lED%q0DLyee(}nJ%ipgct=L81b#s!2Vf`8GC}` z_q&*PzpBiYo5}3LvaH=RbF;gcDp&&3vZ~xY6Zn+yb@LOHzrIm|QkNX;&+S>|f2B5< z=;DzlLMN_`83u3GF2Fa}MYRh3Qr+MCGy@!2%YGgddEjYg2=8Tnu*O%KaF3Pi`V$?x z#AOAw()zf=xgwQlaqS=8h8CWW$2yX;k_ndh$MH9mE?=NLg7Mzo5AoGjnQUbPDbG-E z9KJ5RdQ_(2ZG^s?rcG2R5hNOWH^^7$5j?}zsU1qJ2l`J(MJiNibcvq+$RAW=MjH5}VW*xPl;fkq?9)kZTM_{;K3 z^)%`YGTr%PRpj60W=og1?)0y|5LL?!+#{8_#|0aj`?3T(rb{tBki1>+eu`e(PEHIo zdYlZ}dcF#&SlK`r{P{COKqQdGPJjNYnP_2olZl9O!@wyx6CLMs)18;yk*z#qa<*{L zcUiB~Paunj#|J_8?EoR|U)^S^85ub{cNcj7nsGDylG>%^5tdU$Ak}tp;OE3sC6XAk>us>J9+hb$Cy6 ziNrn&W4pFElh)zEd!P4GXD&nCP-Yxa2|)CjQ28tv0%wQ`qayRKOW$#7)J@VIO7^36 z+z{Oy*}GBXBiR+x`kxm$xt#R$VomkmWe-{QvHS0j+yb)SGD*$-EKp_&DYH%q9E9e1 z@lKt7{li0?nYsQ-63dl+VYb}!obgG3a6`5omZCXb(=-&z0w3_Nd-ZjTn!VckPu`RJ z*nNr1D#w=CZ(3&*!g_)9i45?R0wCA5l{-iQH?Sl}CO(xNP+l^c|1P$_8Kho@J9k2) zuHkf+Am*P$FqE})juO#yT{)iZu3s6SQ4PX%0h@?=m+0(tbh^_;O`DrCsJ$ z>4)Hk#;lfWhZ@-Dx5rj9ZM?q8?C$Ujy2a;wK-c#05SSZeM$yV|u)bbim7voedOg5k z=})#`QnRc!oL1jhdo-Ejf9tmf-Kd5&SYqin+MAv%vQ=oY;^E;v-7$$XBr2Wnk5Lr7 z?Lm~17`}M1PqJz`9FPGEz8_5D#~f1`b*_Yj1vuRB^j>P*i44@(tUmt2RHk=cG7xF1 zASh>*(QHWW7_?CdFW{iux^J=VC>4+&@)R;aVOKsNrpkys@DHa`=X?RmGo^7b~ySpEAm(`FXgS~Piwb4Q!jx9t)0y!#Lqx;%4?-yJd%)|T1hu) zh9yf`Zx8DzUL)4RM5MS&(#8)z(yz@6o_36%XF54CL!8lNHa#2bN37l|EA`5I1h9T= z5Sxw%>yM8TWLxa;u-kMWRhwKPS(pCJx5Dr~(yn%Z$6k_=T324=m$KO&X4zD@<_is# zI_XNr&S4MSA$S06AYJ*H1AOcr%D;GKX4SOyV>8B0tE{d1>9VZL?0%ZxD`#-r6 zARsFDJl?ALSpN1-gk68Uw^dm3)e8{BVKIM*(V*kM5 z{^53LISM6V3lo^)#Ms6AfDB56Ec6=Z6=+5}2pP6BjCjDQYiLR@Dbj(-v`GxK@!%vSe0$)^6X zXqY_o*lZ|80&vNp--r=p$hWj_z=VmP4Yf&3q(kSdxP-lub>qs#9%E_E z6?}RDY|ByCe{#w)|7;At%Yr-!%(M!(2y+4^kB3!HlM*aQ{x2;auCAfiXTGeRk&L=F zuR9Jrykxj-;mN|HLU&~_ccrzgtc)?@h)_3{Z0vC#;}ixrQ+#OlK+)_3ovc zz5?wB>T%(f-0-E=*;^|NPd-#~Df9QMaq|9l9;|lD5IG?Pci8q?PDfv!CmW4P)9Q@h z%kIySu|DDxOA#4aUX)l!ArV1?H=b^lI&DbY65pr zA4<|n-B5nT-;qJ7{`B?fD-1AB>S5-or(#ul7BoVFs?qK`WzC*Prt~oa<{vC#!G1k&WRgkz3+m$5 z%@epWS2N#E?z)(%!$0~|U4$@|Xz@sQ(*<{En|WDQni`2AivIn$U7I)ot~t%`)(?o@ z_F8|39hdf7OEj7cBkn!~Y{9{4e^I21>B7 zWPl@0iOqPB{}mSo$)wlD(69K}#UsDhgmTCgtECqZxBNRGr`&K!@s4Xgvx3bJNC7jP zMqZ5mJ6`J>ao%ta`|rs8e-w-VpNIcvod2tD1W-bV5hOmCWP+L9;QW{HJ(~Px?$Il{ zDgi*K+5bC`MY-drDQzfR6A8G6JdcSN3~;fPP((oEXvc%_w0}TMR3|+`yt%?)jwLMX zvY_6`&`;DlCd#~6m|J5*Eb<9T7S#(516MIRVWsGVx*8rp`GS!n84v>}HJs7DEnq?P za{OY8FzAj_K7(*|tV7q0(6y=JsgywfABc-jj@#n645LZ;cLvaHYf!&?>fppggmO5N z{#wO=&lULPpMQnx3iihHtV~SS!QH;>@L#A4F*5fH*W%n4=0Zc92n%}^s+-u@6hVtk z7!>J>jr5Rpa#JEHJO{lq%K#v^T&;d^`!i(`R9}XdMPkn4kl$VQUf}}|&#V~}^ll%i zw)4AC=a$U26DjG&1j!%(tgWW7zUB|>+@}m4j>&Y@8|a@YFzw25whMD z=v>RmMj_mD5FHQ`8_&%rG|*g#D(DYR0~#^mWdiLPW%3iukB3~?uD>L+ZxgqBW^xB` zIB0S_uR`Om5HY62HV`(c0$PO!ZBGit|<3TXQ-zI8X0vLuk4w#G%{2 z$ImzU0o3Y0yj0cP=w~_T>86=#2~AW?hA|j)xFQ7NKm?8nMNFh<-&Wqi@UzNUF_elettb(+4H0C|Gszc)B*v- zb5$dsO=6$4d)fQ4l18Q!^AzxK^VfL=K~GjrR##6CWELkY1Xw>$)_w4uTlK?nhx(m; zzf8@zMX(+QOR0VIRFA@;5~D}g%+QS-d6Jg0l)`ko8_>mtASNZ#ANv3@a-h916_AZGsg>8iAvNLeg6ch}qWUl3t6E{rUDAEQEx@He$_bc%nAl8-SvLcb{bv8pyQN zi6?q%*q$`e!X)h%YIk<$FyuG2Fb_QyB{e-zbRJ`=>b7YRhq;Jt#fCaxm);c*&#Gr^ zS+;dj4W>$jFU4h~n|bpD!>GC~Lgssj3*pTJ7s8>8re!L@B$RS8BqSs>nLIVk{-IAs zJks4USKa|=E4q#itZB@B9LDEJdgMmG{r`t#h0fgjnlg0kzzzKZXWM+`7# zu#AUbcyD78Sio)0?^7GijDtE!URRo9_)T~!q)1CWwH)U9^yYIT7oSsh2$Xo|F1LM} zckg|+af~5KwH#BS)RYjstq0@qFOF&7sOOs#Ol5*^7KZ$iDHh)?iZh5$Etq#K?~{=4 zwm&Sk_SZCXzxAa@LG6p=7_%l%+GRH1dO!7yDDY%as)fm`(+8=gy}lN>>HiCxU91|XWk`3U~q&+i8g3I9zF2u6mQCs>AhH-p%<8_*- znv;B~LTxZ~3;JE!zB?k(6jz3{~wqKBX&@r;ugg=Dq)-X#uJ+lQ~ zl*c=7&wtAdoHWYC)G8xoU|`Aq>^&?taf=;n>l0fAvcWwmw`2 zypPgDc$n!7E)x9kL0`(j<}E9UdG!@-$#^ck@Oq!i4pOozkVINlm4HAKlt@7Efx^n$ z`bWxUVPV-n3kvTQd(z1%X)@Tl9h1R`(zi)zLkcmzQu66f;JV0mYwwcl7;5T-%vYF-`v&aYYIRFVxcF{oBPK%8gT=FZ6Wg zg_t+7pCr(s2=X(7Y;W<-TjYzlod+C>ruy6`bQu#j#AM9n`%s0Nd5RN=W8aaHnFCqS zl7jhDV#jS{LD>R47<8!}dc+)R*SwTl=gn+tAQ=^1tc=|^Hzxta*4r8%EqdD!jti=4 zsFxQ@g48EfM>{i>uDG6M+N;j+F(|kV2`m`~clj5D`a=mgAL+H4X*ErTo-qJJN z84%IF@lHCDn9i2w^{&07bPyzXzly>ao-VbdNNr)S3J`8x zP`x0glA!(Vcwk*!HI$pgJGxlvmEK`rNIyE?-$35clW#F~x$#H* zjqB!wDeemw3+t|G`pQVxRbd(thv<)J> zEj~*a0~-U6{|3uba;&=tPlBAFF0MQ0Y+!Z>lixs9CiFNM!MC3N*HmiK$II0BCiInO z4ou(a=}ePUnB?dQlte=y3qDAOe7*@^H7vkinOEv3vJ>^Y%&f!+aa)$6SFX3l*!m>9 zPj3npHs^^#^~oSIF}vne=Z_Sk%U3yjI%>ILEb>L-M<KS_sxD}M$rCA#2n0N%B&`fe9g&R9pxPWO)tM|ID0J)U{3CodEWYimPL$yo*%qb1 zG92}m^q0HmU)7FHP6#?wM4@XYXjMgNOD2b7(;o%zi0NT%@F=TwM%h=mJGdl`gJ+#S6y-9Mo^mJQ2G1OgO zf8@I4EEl-?>m|*$U=)2ku+=6TrhQLg&I3`aD-CV?8GHJ|99jPlvw%lxWR0mzA2%mT z3o)_cI;Z+Iui>^qmDEW#I>d4?CYF+kRB>ZqkkN!<*S|CErh$g*7%_Xn4_)?vRFW<7 zC7;H5Pfbhho3NspK!X?Zp{r-9$E@c0G?{0SXM1{NFKSe; z^@lXX&7b(8onK4!Y*0w!uMX{mOIwZ}?e(?3Z!PMDAf*%PzzTJU!^3QJ>6I~bwGu2} z5;c)OIGB>6)La-Hj**wF<(rV;DuUSQVPz)i1{CgwNr@J6U`&9bWJ5U&x>EeH8UPQ< zW%C+l$y9Ey<%Fz!H&g{T+3l{T+mIHit1gm_IRmGW!Sa@)=q$A&%ooFRUooH@8Kj5n z+nfXuET%=06%`+QZSZ0{z2I4kr9Czx9^Y1@NpT4WSOhg2Qg$pjIKc%U(32`QvBJ|u zd_l=#>^rM(YQnFwuPv*+|C%Kcjk!Hch|!bqcwslttj)aSCWXTCWPN^zMKk?{K?aG# zzgH?0VPynQagCjc4p$l?hKjH>V)8>E8{;4TEV;x4v@X@C$peGXqA?KW-IJHIF-bA0 zB&x`o$a@Np?ylTi7VLop+8bx$!yBT|Qm!I3J`HZ^p_H#0C${s7xDYUnB5qPa0SkKN z2rY;`%C%zy;FkqRa0q3!y;vl`mu?4tIlZp!sZI=bUXq-l6>T%8c_48IMFMnjcN zZ!)7(9Da)7&D;J|Cv9nz-j*Qo9Hs~u)8vrNEOW~K>HYbg-{zt8Cl?fEmH{(aLyDX$ z1Z%v}Y5wbt53k3139Jdqrbdh!>>H~Mnge(%d*vFaswr)(5*)&=!uSn6cP?2QPb{Wx$YqA@VV61xu%rolJ^=L3uDiLm zW!=dOEiTHu2gRUL;k@C#-nSjHV5uz^OvOHMtF!RQfKCc~d)9JFO#jxWzZ$N$=J(9l zIFO2U4DFhYN{$*Jsr>AO1{ze&S=a%f+eC2e2$b(W9kqI%eU}ME%g|>|I2JhZG?>8{ z1XM7BQyHA^blO~4lUBk8G$nphPwXxZCUe}lXh>Rja)fRE#MB+N2$}c-vq9_Zg)Pd5e;4qUjOYyo88}@ z1#Di#e)hi{!gzr+`|hOo-Xns3axO+dKqlqu;=)4l)RqZzn{bHlR4(9S3h)1pm>E z*4cI2Y>>QDC-OPK@$>dS(rb+K@1_cT)ejaU+e)s!eA(I0EG=7ACD4?HZsBa+$E+=7 zQ&zff)eB!N;hm5S=x2r~L&2HTK~G#z-nC6x96+zB(&QWrIw6JGDl8`;P84t0Rg2k&3eQ2N zqOn*QU}L6Tva)h5O@2vNQ4QqtgdYafFmLN&ygcyDeSzK2$Jz@!PTz3#P>f6G1^T{6 z;e+@id;*|p@>C4=^@K1-c$whf*f7(!+b1qbZ9idi`P8RPwPhuEX8*9%@}He?Ff~73 z>;8w=V)`U`+DU`O4%2fGdts) zK1j64m|4f+g4PV>eI(?NAkKAA3c4Id2OZ|jaF#DPNJ&a0)PvTU;Q(FY1AH4q4dusf z#LX<3D2<21%h%--8$~7keheH2S>1lrA%vS*1}{_f zse-AOjhZ|_q%#C&tCu$;ctNNeU*!AC#P7tGZtH8d^Gg3B|QTuY@1xug~c!AY(6eeI2}8bjN`w7ID&U zKAV$%AFviH9|P(;bJw1C5$grXyzQ?L+8VPe0KB~yIIn;DW6@3nj?oD5e^;%TFh&Ro z243Q3G?b?&Z{ha;pkDr`2gchy7gDfUzeH@?IZ!++wpoUhLp1JI`+`d}mXlu=gia?m z*4u*8QljK;DBGRs__qf9>KDK;-py5F+$oY`Z04FCzU#~7XQkO%Xfwm-b_O~-Zy&LpzgHm}lCGM8#Q$I0B1M*~oyl@JW12gp=Cfu2Dlk1ys za4-4}NTZU~6GPS*IOqLA?WihKWSoO6S;LDKR|6M|k@2@KPwNt6O<0BAb)|-FF^f|Z zN(9^zkM|)@FW30$;N;9+I~`G`_-Sjnl!$!KY>oposwl7gad=ld$&~xRMqs$3u!JOP za9fKFxH6@SRQaKjw2b)Xam`BGE%@iC3D1GaON9X=Q%QBdx(-O*zXINv2*(xdK|GVJ ze6qWP(5ZB+~0aYf%ZJIi;&#FV|;U%^2WZA(QDih@O8JGXee zo5_N1?yzR)?}MMO|MAQ_>^f=U6f@;?TG0ZfAxo!`NW9BudBQ4TsWkb~ri3Gl+Hzp+ zH94JEWOnLL>`+)$m&4a7ZHx)&_F*boC9@>#g$_`OFF*x8!e4RO7$VH7(| z|AU9ATIP8t24-s&eD}w@BXDz*71ISL9c+ z|MbcqlB`%_?CxfXaQ2fOZ~ls)C)3l6Ba2(s*P+(_vD!9jxF&PYWwa%YD$onjHVARg zFA3O!ul6P?qFA45Gi$hZ{_(KN`yPn%c}rbMStYSYhPw6J(6TM4*^L>;)}2bMZ;&z- z_4U++kFaR|C2P(3bXxbpb}qp7(L$dwi|U^6_9LK&SYR9#CY-hJER2d{^oRc}F!1`< zjm~qd!Ex++R~DszqJ*=QaYVXyxuW@lUh?j$t=^7y{s^m66qs4+&%Ci?_H@6z`t0G& z!hb%3cNA%~*u@^ylm~NAWaj$_Y>n7iqTDO4gP!N=IXt7vMQM72MZ}FX&WWE;@M(@lbl$eagx(cfDnglZ~GMU z*46yIl-NO4j82dV&_4U(LVyIr^}ID(K+$SzjJtXPU+*7#BQ8XvV^1=b2)qSy=meKe zwJ+kymT;-?6B?5mZiaMS;x$%Lglu|LyzBY%oVDwRnAl)CZfSta77s6BEvuA^(c7la zR)?7q_jrkD;f#P_U79u(rpj7f;5OO(wt&O8(F5A;+k&N}-v*u|>E9!HxwVh4-!RJf zCnc64J*UN8bvp?q;wCeT@ef)f3?t0!(vy$%?%}!>p?6bIK`hOJ5v!h!pVGX921hRq zGioFokr)1+STzU9lX!AQQC++U1>UeP>7JjwrncIiwrvc29NxUnsCznly?8a*3cnF~ zd_GIg$qAz$q)$eJ`}v`Y?46Q!cC6y}gKogPj?F|b`mj$%G&D9uSRr`$06lqu?cP*C zciN)jmPu4WarxktV8*#m^@5=Wz+e!pDxfa~QO zU%^lbH*yassRvnBKfUc$;v!Hs(Pa#0pfOM6i#cKg!OUxiiZ(e5F6coOo6bTtcIcKY zDm;$s&VnVVxLp40Lbl@lB_!rpb(0}lwpwo z5Yk!5S@R*oQox<9z{DRil`+qU?t(RCxCc_%Izykhu++jMD;8av$&G(k?fhA%u4;b~ zf{PY*%a|xjnv28u8=aUkl+@JJy8Ez>?ho9=cVF+F#JB!*g)BE%U_c%;S0xgh!!DTz z>tO<>@7O-l?0;3|#wZ=Bh4DBh=^KQOoAw(DMl2qy8;E!yJ&@NM*yfu!q&F-`19Wth zp&f=#muU_h%YzB+!9I2;c?;rtwU`fN@mEu)*a{F^eu9={FQE0LO(c=i!8<3 z44WLx%6eOGi6q?!-`_7$h}_?<6*59Mr@j;U{Gy4V5^v7EXvu+_?^Rk#fCw2Xw5m8? z#BL2M=&EXkh0^wNjbd5F2KqZ+1nFkttB2Nlos0xSM|Y_Cc!xsqH}kDJ`X6k?+ll^O zOqEkjapm^xjsB5a_NQ79lT^g$H%8MqCUvI<`)IA%S50H8Et#*J34NimletUW89H#)p7H7 zh91Wr3%4uQPkUL@_1De43(|Rqmw}J&^tyBj z#(kH)s*>NScgU!aZdJz`|Kc@qEnLoP@qPTosQ%?@x{2X0mFT#$n(63sxo&$sX}qY4 z(LFhcQ4)T0DtaQFWvflhx0Cy}d(P>1K|B3Kt@0&-7snq@c2`2B2|Itc!fYvNXJq)+ zwdQB=PSLrrCOv`ckezO7PK3JG`^?rDKh!Dr9*5GnH;QLIrx(#}4}FTqql1>JEPeBL@G98B)>P!% zLUq-?N4AT;FvG@U6Z)XOXv5zX=+|Us_xIau;j?yl`#4I+cvNK=Gc&+s?R!WO?4au9o5!7w z=b1X70c>ZSgft%jSpAD1T^XRg%FU>e_CR)7;#K;DrBQ2pPrI9fl)%8TX`U_M zAB<6>mK$h^;nOIwD!eN95?nHXQCSILm9PQh_Xe}#wm2vX9^vT>$WX`<4R zT;a}+%1&{YymSD_?%fn5*xo7CNZocTa0t$?BqR+dUw#}>upMs4Zz&)b{VSAIv3`k? zVJk3J`TSMW;Lq$Yf^Fd4`LFpXFJRO~t`=#Q5HWd<2`w)46Jrw?8e$G*OfrhfkHg%TK3mZ=R3bKK6FLdX>Xn}q81yuPz z9f-y!9JnP9RZ#;@_LP?13AD?DekhU~Kj!Ka2r?9Gu_jj(&a3>WTD##sXvFsd_RBrmvAJm~+SLqHj zMPN9{^h@Ul*!jA;A1KD~5Byxi`u&64re;hqaGADAnW3o;K3SGPtLa8EPhQShCF;i=4MnvO_;ZdkR#SD-TT1xSmKxs(vvD z3zJE!awsR~=hGkribt{d0?~r0pL%T}GD820vbPM2qubWCBM>A=aEAbmJHegc(6~14 z?(QVGOXD6~gS!T&aZTd{5AJTK-?jF-uD$nn&X4bBRn4ld8na~doX@x)34sKW%+^F2 z^1RX!H%`J)4tz_V-YAySLdRzhEl_rhX>sk5e(yb~|Kj(>RnvfH+V<1=7wHY4t~s}g zcVt8vt&`xmhy^+lLo|O{n2$A!px=9JAKxo?cUF!BIGJAi)QHPK&GnmfqsZVn@FUJ53U{s%AU&p>2QgJMe(jvR+lLLNY8B}V9_Sct zbrJgul5TM+U##f}Uw_)gb0ub>p3#$%8VfC_|ErRu$MO=XN>xPLCl9FKWi4q7ZaM+p zkS>q5n^^3Z2`g-gXJv@Ln{D&Q`F+hGR_BF?hf{a^_pOjG%#qZChQ9L{uytpVE)r9Fo2e@T}T9wE;1}8IXqgR*b2Gj zk5>-@*^q9u^48i|tJ9a8m-y~;`D-hU4-~so6bB{WLY30VLMlq#eOG|+cKu2P38C4)QdDJT?|dNA^MXH^bQrg_C85+l3 zgTesD?*&&z8n&{D?%O|>Nz_=@LknErNqDG|*5FrrY`B^!b?vj&$?Z9p{fukiieggd z#5QXuNKH9sss@HueX}jGU0f9~G~KA%#~v@EA{Y}%P!9~LPs<(YFQ)aZM+PZn4i-V6 z$v3b;0C7g#t$|ei-J`{NHBC(u=rIZ^TJ7sE(ZHTJ!oD{M*tod9MF`e>+0@Che&>@C z4?Ny~@F``fVP)-rp)Y#hSiu;C3MAVz;fX~RDe-%aMunSK&76+4MKQId-$!%h%&r-c z>jdykU?v=%p$S?C4<@=zi8}FO-mc&BAPd)`jAf=NW9E=2SzY8pY9Ai|{G8}Ws=44! z!+xuF$G}Sxq}@tg38!DN=~>$|`&iLF6(HU8=hk)!0tgaw4v!3<4X(>b-QCP;?@x{( zJG@dNB@j>dLz}4V%ryB#R%xGVSA3-IZOMsxW*KcvNgM{G)Yu+`w$!*qHZ*8ywco3% zBohmz28*}Bw8328$C=Pu_K&yduGG+wa+wNR> zBJLXRdD*XdQ_$VuFUEbuucrL%k{{25<%TOqBoi1nxAczu4xzprP2a%xmk{?tOM$Dm z)tv#DoJsPbSfL6eW|QA%1@5*@#xCX3B*EeWgNCC>vDZtWT2E5{)aZe+m8x?dlU28) zYBGzBi=u6B68zuu2oV64hTIkT`gBFF96VmG!TX@oi{2NRoZ+&<&!4C{d56ze`5he? zdmi42ai;Clq7JzymW~${a~zIN%GeS_yBV175oBj9CPU+%%%}-S2*sJD0|vSJt%N%> z*TA1Si+FXHV=;(qH#u|Xt|V_f7=n&PUau} zwVG?Sb3pr>73eC*JGDs*FY`1YX%Pg=8-I)u$3{|$Sc!h??0g0m(@#^wro-K8e(=a^ z`p_gS>CS9DqX5{`Q?tL@_W!lF&o2l-89gaz$Okj##+nup>{}Hyw&w!SE+R*U&w+R& z)Chb$F1Eo9+n>8zvO404Hn&`xny2{%z8CR9=okxVY2Gga+2`hgF3?Y*2l+n=1JA}f zsxdLm=_RH5s0J}V)Rxi4io_eXd_yVuV4gAk;;zmA7?IB9j66DgsetEB*{7GqD-;ou zowezF;WxG9nUK@gQ)ae2WpyNH<@>K6b~t%QjvNr0tM5#Co&o03vH!$fUp$Nk7*6HL zhjLB~Jx(~SzqgSgQdT&636Cgu)`gIVqN|^cOL5056tRMlV7M*FFe?pO=YUVi5bfBc zVW|%dstwsrPAjv5?;Zb*YZ}`{26v?!c0rjaPY?Q zj!K*;$c^o~ESe9Tq}0&Ft>$Skm^T%nHGg6B&O}- zqtc*FAL+GU5+6T*&$1z2j=SI zQc7~(wB{Gl6YVsy1QuCM&5!#{NY1G{SYr*!#A*4BMQ_`{+tuTu@@TVbYl!&T$^z-*pFkAFcy)E@;Y0Dn?8;UeAU&5z+_;3lKdET$N6M3-0v!M&Q8LaYEzdPy zxBtt#MX!)KW>829X-R!W+*>KZc41<1St%E?e=dm2HPYGqr5)B=dBPW0ZefO!}fG=@MiKh85stz{=PWWnKD9VPWUl zE0dN%UyU1rYI`sqhKzsk439v1w_L+TaKuYtL-#r$H#ph~+CTjXV#F8J!{saDzvj7D z*Ja$msRq$rCzvE+qlnvW_{Ua8v^&54mRbA){n}L;yz1;^nG%y!af`%T8>mk{tc{;q zCGgC`g@^aQG2oN89U0g2O6MV_4jEYN@YzQJ_zA>gi6joy9P+sbe5*|%6-p38aF?4_OYj|yY2Px^52Tz-(o6<)Zy)_4KoG1*=vWHR?j9hS{Tj;G? z%m7~*dIok%ZY7D_jK!^SoR(`e=Z_u}+9IJgIjBv3fBc3t&8+Qsa7Iy`31UB}9Y9gPbW z&<{h9ynPU+-oYo`qp0uLjm;F;#U>5YVtstu3SB*dnmt#$9xoGPCwb z?$F_wq%~4#3emt-OWmaNLOlGVf7A8Mj$|8Lfm_=_D_$ovble~>T)FGGQA7775gVo! zvA1=n8Hj2+`{DL2h^%9nCXp?$p1Y=&F|`;MU3uA+%+VA+Y&1qbxz@*pb~1V45@Ii# z+nS2dS1{>3>$58VKm$2c+xUgQxwg<{5U58XV-TT@4_R5yba-eD*9bTQI9|CJN zgR6lsf;nbPVkXYh*e$HI!^DJg+Vbin%R0NNIHi;6YJ^y_v^XVT3Z^oOSNIfBGM&xL zVP=l<*ECDZ*Ly-oVm>~a)^6O6=YpONl5YP_fhJ#Eb=J?@0Y#CLfD+8=#8a~Ow{xG1 zK!zd#A3V+}*u`N;P_}B}GqqS)f&}?s7&?7xc4VZEjfZli~0My#w$E`YzN7?T( zj+uJXH>U5Bv}092?;fh!qP@&5e1H|U`}JkQ1oAuQt7no(<0sszL|PB|^~FwAuZE^; z1Trk|-8dgp|5f0Aa5Iqadf`Xxg~r3aH+QN%jK%U;a2qa|+$?aSuw-gZEu_0B!=ME%)|;*iUd9u{0S0@c*5`-(O@ zJ6kKojY`SJ+FGmLe4GhMefo(3_KQ#QXZOCg3pL+6IyxBgwAIxI4(2PS-JVk_#r}0l zXWW#Ou*sQBZdENUX?b~68)((QhT}@zPSmae>`XTtn6ix47(+P``TrYrepsd<`-KpDazZ(O^uN7|tE&rT=UFm#h)L$5wp^)4! zoGpmz8%Pl-n0f7kBxor&hc40Ei{4(lB?ZqmZ2p*jEP?y0h?aUt&M^0 z0m6*DnCBz}%FEYUoazfL)<#KlL{<)`h04%=`m^S9Vt&3Uv2g6}`t7(jV%awaLh+swe_q-W?_5Zgn_AT&%aY_9wuFSD8TdF>KNqC@rrIWI%RS& zP*Au!dto>=tk9M&zvj@`F+Txm1m36{*nta<0`}zFo^3o`^>~}or#NO|%C1w3F;y|U zg#HO`A%M$(A7jOYWUCWV3@zSG*U&UXC1-()tofLQtg@h>;OWS~U%|%*0bR&Z*kx~Q z(7YKdMx594@2Bo3vhMtsO^KYB-`vw~dRgSn(i~g^hu6nIZ&(TU|0eqjf;-N1uC7m91$o@N0Rv`bONxmX4>(EP=M=Wv?z4*^5aeL>UTbRRSy1 z2QXc&OZS0NOpIHN1N5yzW7+n&fr6O=D%#F(eK^x`QGFRCS=Mi6xF&GAD>;$YksDPX zmQ+4g`>2dbM?2X=!}@V|*t!{0S2i&_NFT=^4P=qml!ONC$qXbUI1{ALPJB*hXJjY$_od z9Wg#++^q!KYZ;Qhhf2P%;N>b+`|<_x9OT>}d1bnbRyJ3+hb2orp_IF?Te5WE{y|3J z$qD9-t6#LQ=e|++sRsZ67=`;0NxoVV3bo`7w@Gs6hoO+!K{>f`3z zir%%r#IhGIv?G3zOA%~Edn%jX%rr-`j>davd=!||5lG0mwuYeen0ka8rz$_h0nJ}^ zoHnJ9X)B?oAeZM48n$UY5geeMsD&11=C>suL;?bY5zt9C&tG#pZ)4*s_%2`9Z`bzy zBxj=AOy%krHCOltzp?d)zR81%d;@&KoZ)KE9Cz?YT<5;0Zbt%qf0Ku|ynwy+ZgAnl zE%UN-Vw9;{1$6qV_16D2-UPU8Ta%cOc=^(I2A1@g@H-Kl+{@Y%*yH7169It;7&NLj zpBoPy+jTjb8!m>My9egzR4pwnO=pY8ff+n+o0plqA@_uzMyQcvkk)?MnYDaLB`=P9 z6(WqPsi=(!>ftf3kJ6=USJLrB_KOv3`)WfKSUX#|dP(%kr4` z6%7==WM93D!R&Dq9<|9>#08!SANO+%W2TyVdV1PoxEFjMIr;Hv?)B&RBs8Q!3oq=3 zY|wx!+slP|X2}fc*C?Xe`*;Wp0043LO5nPlN-ZDJttlH_t zOLU_?y`%-Pne6QUu0W8>G*O%!1*&^t_1nnoeEE<0W@#p_ng-AmSkbv)#m#M>Tnlf ztc9$pjJaWzy%bMqF?~8sQwtap=+Mix-Oh%vM1XhZV(q!u(k34XCyp(zYowv(`_rx) z;?djYt#cnMCId*6gYA#j_FNO4HS>)Oy?#6UqflD@bx^z~+CnN|6Euj1U^`@MoTH!9NWaHokk{F7e?^!0 zSGi;vav93_#Dq2c^8+ebUMb*<_|tuvkLA5F3|l%|yxJA0SIk6~g0k@__qghm-Bd_zK^)f%r`UY+kd)qmLbzl zt(M?yt5p5*af5VZc^rY-XZ*yf*SAplahf&lUy0pb>5(QTGEnTuLB*|^#aX0MuQ_4? zaWNf4d8je~#{Uf+upKmICzrv5O_{6Z3P6_J4qH!_Sia;}qP)qRm!(MmOc%MF>p&*e zHaiY5$todIU|UiZ*>ru~KSZx<6&xAc#I#4$inv<#%+HUA%;7+u%%J#N7m?2EZ*JC( zl)iQJ^Qf4qO4$^*eG4v^nl$dr$W4%Q1I|hV;X4O9r7qVBdxH%tQ{VV|lc@V2Rmm2L z98;-ktsH%$eI`*g1lT!3p5PsM*h_)U@o_n_oUq_zfgCNTw8S1l#%mbVl<`43bF{48 zl>(G|Y4JN+rR%DQfKk6OYl!>rU0v9h*EV>bCBE8w*>fHyT1lL4;rAs}!ORcZrUy476l*P`HY6*ZP#UsPTOt)YxzS=eO&DeJwsIE*hvk_ux#{>jC{ zvLa)L^Ehev{Y1GiX$dd!hWI>eo@vxFLskz+#gg!(^`WE^A5kkh%`|)j6PYiA`JKz_ zUwj<+=68Zf*H^4|e++O!Fcx`NHrc-yn>44h-ug9YC{52Q>M4d-Cv8*6Io2=?b4#HP z*sFP7eET$)6k#neH?Z-HfM55AxhhjTa{LF@e)-;Uh(q0}C#BU}5*fuG)UH$NUwc@~ z%_%Wr3`g3+!vcKaYg4u=b!yX^p{Kh`0w1Rh$u_hw8D+e^eIokJC`jggTQ2k(l)2B3 zc?(#tNp@hw#+!t`1T&!&41ml63GTKfgP$_aDjmlD;Sc^|3L;>OfKX&qiOcGdvepj3 z?)rKd)aQh+IEl=WtSZG-V=Kk4x$Y%AE4MtowSXLW@F;2g zx&sR7QAocl=#v70$R{0^B{l0p5)uP7?klBP$Bw$2*Q&4eH zQ8F}zaVKp3l^HiGM2m4EPb>^FEIq_n7x2o5Hf6g74t(Q-{=1g1Dsf-2uadS!o?6nv zf_>KJt7hWd?GW9SmQwqKe=R2yoBQ5zI~O^&>(uLWkkHv z{3J-68w?Tv8(+%6tk}mxW5{Z(=d}+g`OHgFl@kZC$^{kdcxk?^nDp+eYcQ}N8|`s7LMCntcDbKIZF zb|XC_pgA>qEO9S1%nX(gm!b_M?0gSTUoOZTa$htuplurkOsZ9G#Kh%|>UH+WyKEjwX&1znlw!Ao8m8D=-hjg?M$6&;Kgf} zuED3HUAv2Bp_PLk1QFF&rn7=@xu33yiRFHWq#8i_!6^A8na^t#zqX3}46$td&UL&4=Z|4zp-lLwj9=!rtW^62^C(_7`@NbK+U5$}yX+=x-CXRG)$EHhc^=8D&v}uT`h@ zEQI8R1O(X|gHlP2^Qe^vh_f&Q#~R*r+%wkxck`Xf#u50BOFmY-3}*S135Fgv+=qlq z3#%l67jyx!YeLi&wWOf&v+gLQjI zfm2j3HUC~1nt%f@1C=f(lxB~FBYdAL1yxdaGpsHFn8Z_gAB=#SUf{%-3B^*V22bWk zOE2_#Zco#`&(h{uzt1H@bUTo)iw=%;Z(~mgjx8?#3;tSo&pHZCN@O!8_F~Q+VH#Z| zB^dBH?F_Xod8;?8V4(O_L#Tpp_E)2tJOaQJ^c5-0P*T6Tm2wRiuG;F{!vCxi1|U{Wx+!R99>B}435oE6MgYq=8%_A=Zr6$ov$eT z0)0qC{Xnni_mC6#{A{~Yli)_?E6sx`s*F8n3T~LiNv4+1xZ|!URa?e0w)11SjU#+O z-}qxD^PnXzI`8Ug^?3{PL;0W5_t|fEu3$jf(n2e~ncOO;Hse@Ex%}|ky-zab0%xMU znQf1+FMYA#U>R`yluVYoJmmA}`vE6cC8IyL8L??${#;^q=4)yE5genh_A2L(G3@mh z-gGzUK;4PajB)@2{q4|@z*RtRX0wl4z%Fh9t{6bzo75$;Pj(o&pnI7<1H1bbs z#|G6<2J6?CWL95E-2rLizrYEJf<*W%Q;$9sV zCJ_u00gO2UyX%*N%uzI=V7830H2FamHC~A2?U%hl2iD^ZxHf==w) z7C0BN*_y4xD6Sr_f)W``KN_4^&KfH6S(=x$ek1F{Lw-xe=b{Ca5546hOQBrM6AG_m zb~NvL@TkCQ!W#Ub&vydYGQAe;tgEL3u4v0*!KKJ5k;|s0qWa(D$Fl_j8e(&_bnzt| z*QVTtYtqtk$tU1(pA@ARfFEQ#6mYT4jW~VJJ0D=+EINslAH#MfQ&wV9Qp7D3cMNxO z{YcA!uj4)xlzGE@O~v%$>a4WBYa$Dp!T#{?dP2s%Fx2It5d&Ms9JDa**xonB(KLBU zqwoMvWpz&DS~&L#o&Z(Y<##P?i&GLu7_$>djO~)?sk!~KAD3>i*@eQqM`W59slt?=+rBkt!#$H74?;ocxYpidfXoHdtKhg0-a60_rNi6_tKa`R>$Rw z@<1dg4l9zHO*{MUd0#7r-C6+XV?*@pM3T8G%Z>|QA7_&meqgJ+$cFVi-`?VDgWEYB&^d=Ev*sB@j7uXGewgZW{QedbGLF z)k%~&SW7^Nhl19<(pn1yh!^ju<6fOG5SC0sleaN!Z2-4mhx18p)SW)4{`Pg_j;lCl z$D*08&rs(Ik6;{=Tma-1wAQmg!B9e&5uxRh&c~Je8!N1IUn#xj4>M_p8JC|=$~jrL zHpEQWKMTRUs6Jp|>uGd^_Vwv>-ORHta4!ec-(W2wd?#U2>rC&oIW0QXr;RB z^-u(?BkM>?BxBsU=UywJt5g#3XEtbmC8g#&^xRwz=sDqnug3+j{!{eq!>#(~(<+RZ zmrsA!PC32&Yho3LCu)%Ww5`>%o!-j=Dr8-i5zB(b!70j-A|j}VA}%)=F_*VpD8$mGJ`v6mka$Sr4SGDlIzk#L&5#Uuq$?-v8|&Kg ziN0_>8!>^^G!$b*PY}znV-$2^ophZpW5at~jt;FGKXz?JpSO8l7D>$Um7F`Ej~4~J zB9jIb1p+x0_8`a_)$3vtV=%|8ZN>~VGRfa+9P(1CSmJGM1m36ItwU~LDKfu|W127b zYtQRNF0*7_t^?Z4*@C#;<(N@}N}MDlQ*(d>&p`2pxUKdzGrOQ{pRRMg3zSvjijN6X zcF{TPQ3RCS^-zI?>UB1}Mt4dU=B56#%~kdlKA=n@s~WIP+P6Fvug$O$>d0J`B8n)>rL8CmDn@;( zHm*zHEW|ch)zJ6c=NutYj~tbS)KHc3`bP^vKbae_XIjk`vsv7jc0{5{^VCPRJe7|Q zgZWAqJmQOUU~XE$Y2|s82^xIg_qU|jIvUbk!@kxCi_5Lb+(0XU8D4B(O5}IIa?D0* zvGDP=_v~~dZgr2HR2>(;B_Fawl2FI{ZHfP)nV)_dR3sL&k|7srj>_LK!T(~8QY2Q- zCK-4&1h#w_I#q^#cwu0mp1BB1AQ2qQ*VH%DlVAW*Q4U|WJHk9SNi-@?Q0ktT`6}p3 zBNrSqs4z34N9~Kd%E5yanj1dAnk3bLaRMU9r6LqT->}4c*{nBctjRy*8Y3l+- z!BcJ|GAXb`NE9prHZzs^D%G3Jow7{o85|W0RjT#Dl6$?QB|>vQt9O``dJiZdC{UJE z_{IpqkEV`}45lE8cO@Y~GJXG}fEw$sHW>EOLmQSP>MJ%FMgKXVrmkMM(Rcl1y(($% zeMckU*?Jg_jE;gQB6l^bfB92cJCE+@kpX zg!7T=$sY(F-o;I(oY&=iiPzmIW$AM3_xB~eT1RMwjtKL~QoPPJS%O3SQ`1PdS;pgs zEVTzB+?34vzgD@&22w4z)HJh>^2BOye%H7yyWgaw!U(GN-fBp5wBwC5Wrr?~=PN8u zi-nlP=J0yz(^tX~vowmy@n@zutn6|HzC#)}N2`-5OgcO(_;0}+B#R@X)yxITBfI59 z4qKrFyjkToKfYi;Myoml?g~p~kj*QwD#*oGYYWs!*M?3g8~Zu4#T&x1PnnH35Qfg; zTGROLJ9F5&K3}8$6n90cf46a>abUAtYlf5H@Ydr6kvf_lFrzOQXFgy?gnvkgO(1~? zgQ=RA2X?E<%!3=$PtEtvX|YbS$HF(iu9y=D?wf5E(p9e1WeFlEI31qJjNy0X;;=kL z`oY7~qR~)G^c(<9wj~M{?=N(oY)23K`<&`%#ha!Ny3Yi{C^O5L^|(N+^=p5`!mX6M;n48-HgV z&Jtf&hSJ`lm8|MM}L5qA&j>kFys;R z`5;4jm(557A!P^4na6C5I{&T{#`3@5L6_0j3;J>c`ZhFs+%t!VRM#}$!)*bL(b(lkG}OvQV9 zKVF%#%cy5g?0(=zpZxu@83h2-pNqfCU8ZAvxcymv)yO?Fh1;8)F6EvP^u0(Z+tGsv zb)1BD;?4bA1VK9{*AE40#|qKf;ax2uPl2|T{gw_^c?|fX^JZCA>D#7l`(;a`<+nmV z#^d|$FuXX9K@(9GKKC0A0TA^f_oYn5=|wzIwq>?awy!cDdDHa+k4q5g^h0;=l{W?F z=94$ z@gG2N0K78JhC$Eg@KjpU*sO8N*Q9}`2d;c1lEitj=`(ic&RrH)nR=RBn-jm_je3Qd zMKUo>py_rBt8uBpKTpOT>|ui?xACavby1Rudahl;+Jgx>qjy)jM!K*hwfWMl_g`Gy zPl(FTUoA7Jm%MV8%L2T~Mt+DvuRj)NFTqbue4Hr8lMcW{RPOu(*Vta2+jD~8O49cD zz=9|>1tp^{D-Y_*&XZ1(W)%9nOrQwZM-O2Mf5DCzM3l&fZGjZZ8oY)Wseb=7|IxL$ z+~D(Z2dg;)-Zx&BQc!Z09_<%(W|T~4qXyOgKz#onW^DiA3&Z{f{QoBb|L55MImmxO zivJfN81a9u{;C#&^zY#O+dS=mpBOCZ`4^S=|85@lzgz#?ckSK(WA%Sd?1lJ)QD8SQ zQ~Ku|U_NCYel$KRGA5rjh3MCLwlpBVDc#QT9A~nrikJ#EHqvIoC&3<8>h_N%tL(H( zcf22pJ8Lr%nVcde(P&offt^e+SOnwSy0?kSqMBQ-4IE1AD=`C^Vn$VD?E}9IYfG!j z0P3h9w$J*9lbmpASrv#M+e=bBz$MV#Q^+s61z`}PQe0%XVKXcQr< znSF<9v)Q)W1s$>?(WZuW~X8LtBR236<)SEq<(8&VBL<(2c$MAieAXVav!@B9$@BD5yZ`vd^ zuW|jKo?l11Vrf5BII=OpM^!)o^#iM%nw^2Op!2}`V&SGlSHw&kl zxmbf>Jg^!??3AacjXS4rXL9#Y(;%3tD2kqMV}fwa^PsshN>BWEO{cB@1~1_kYG(*e zA`%sz;|VLDkCuW#hVKBq z_G&(v<2s0CHEO&x>l%sRwT2g%?jvI@p&sK{-V}-Eg}?6q$H?5Y?|aPX-D;xTon1#1 zyUozvM8oT#{x_IO2Yu%1%K5OEX`{W#^pd3g>u%o|gPV)7>W9~dOcG*;eRJC!BGq!@ z3c%I`!FUY!WWi}8=iCr`TEHyo81Y7l_h@EELsMq;%O4$Gt~~6+&*$n9T4^UY=GMz& zx)0+zUWPq9S1HeMhyJ4S@`6465?W(rIP;zXALkn}2K~$kLnde)q-N3so`33cH^z5i zwPuxiW(^i=7+ZrP5#GE(rkbtZU6LWN^}FTte_2D84MQ*Sw0sK!rK2zr4E){j(n?lS zD0?ieu<7SEW=3D($+(^r=z&x+c%JclsMwzT`Dx+bN2ETqk5~cwTm*@!QMnMNuDA-9 z=WI{!H2Uu3ojR{3k*7^Y-a;agN@lY*LkS&Q1=Eaohz0eBf_u+_nI2!PIYv%%^agu# z5bJDK3~Okq>q+>H0+q3#x?V&fTWt{famkPK$~v_|nJhDZvAYqd3j}QQ(9` z&&Qu;wrh9fq;g<8c@@uvW(#)zoM?T(4$|bGC=`DElk3 z)u4^W=fEB#Ot0L)9?X|y)1x(F=FS^;ZN8jsEp^I^qAh7M+XA5hSxEolSgtZeM^4{j zyM|nsjXD!#&_z@~J2d)nJwJar{vjBCQQCak6L)OAZ;51iKjV@$ks2L-lX#&a7H^$* zIH}^)VkQ16saly*2LGphsC-v+SZE6SOW&>MRtz4GXF0-roFcIGKUx5Pj3BDpzHPcc zOFm?V!?o522Z#Hk&ePK~qBSMik%BudgX1PW0|k!7PszzO#W?3X?WYBoAp-*E?bpF3 zGFN?a3(XpXo8udihutGPTVckeaFc6>97Y_p_&{9WE^^(DAKwTxb;W#KD94Zeq+?M8 z=gok>enGK!}cXQkSpF;^0uja8UOCqFuABKZZs zEth|*{9MMymqEm%JS%yVhJOMP?h2|BshjGMx1ib_n7|2s$ALX&&5AC2ECa7}& z0!tK>=9$b^ssJ(S;;j0%jnL&wfpCYq7c zv-6@bhFwgF_I}*=zElNwjc-@cC>>~*yvrQevHAOi3hl>Hi(i)HcV1+BCx~J1FvDa7 z_7t3;^A1U+%?LoABit$P9SsvkQGG$S60pzG%`l;tV}5>ijc6z%K?)>8PP*J`7EqBP zDW%C`pZY%G)OF+RKLg8h_$Z-04MmbPOY35G^K69L{D1!<8@qeT+*&BJR|c=3-~~}^ z>8sQ%*#Zu27F~`$XJ_mErN$#5c#9k)`dDd{XoOtYsF zT$M8KVbyj27-WVJR7GW3UA?O%|K9HS_)4NDT{x82i)z~o7&O>J8~L@PI|_?NVP<7b zR51XvnI$HA%vTcSHW&K#Pphy$ydZ9I0XCO9BdH`X16Z?# z9p+*GqqQ@rstcc4k#Ik~H3^l4dew{o+b%iAJj?y#IO>q4Ezy}Gb;ZYA;iw~^uziIn zV%{5k@kh0SPWejxD*=|S&IHvS0ChoN3h)O}c66o-$$HBvY;v_-l^M>uAv*d-VQSyMZxCqi$p!?5AW-$z)Do?ax_j* zzuWVovc8%ko|g(6Cqgva-9?L>y`absU~r)5j0`|6i?^?Jqw2Bsek8(EwNt;S!u2=F zpLvVd;frypzlySHD3}n>cLm(3UfjOPKK30+#3gjs*)no7zP2aA03N?Yx1qwc3oml*%E&du@O3 zV>6V=^H0athRaK49d*9s)!Qj&Tm0r5oF!8jf9aW|n$8dMq5BHCkXy30jPn7Ibb|Yh zgI`>#zFv=u1CGkm+4Xj->b@?gH&I-T?X(;*BA(+ZdiUrUn^=vNXza;ye}1aL);+Y2 zmTt@ls6a0!&sUp6y%wbTxwLX{I#>H`Y92me?J<{5GwzJi`5f~lu z0Xgp7rU|=n_-87ps>3s+bc`HE;VNsX^>bo5t5~aYlA5k(NOWB3Q(;xLrV>@BeeIh3 z>M`rI7U07+n$jh*JB4|Y%Z=$mKcuD|jm5vVu~t@q^%idxb-r@FHTU;n zagm1FJfhnWL)r1U(`YkH46!JYW`;CO#WJK=*O@WYbXsr{TQTfb!fIPaW#z!r(^G)4 zD|Dr9pDv66-A~uo*XR1JL@DgO|5<%}HG0^+Pyx<0`z2QU=ETbI>50r4s#*1UmaXPq zm_?YZdTul?w>qz`EdpfbZ%gNU74e5|#Dkd1XQ^?;XPFa4u9;l!{qa}>4evdfqVt_2 zr{8R(jNHDdI?c?g$o+(MsKE>BN$WlRg|2zwtlcpHSG$#22atXz;(L|&a08y1427Z9@DS`5R6zsb zVS#JAv@L1Zq;S%U`Ix zVrs0JqeBMFJK?e~>D>u38y@M%b$ov;E)fY)dzXdnxU;a?R25|Satjr6U9V5Q?!yhH zTn*oN5hxqC+7U0dhLaQuFJI0uAlMpb!wfNw)gUHM#0zj%g;nq55XAI*UT+L-|Tek3f%mQ~spsi7ATdD&HR%@yWJ$qt#47yV3tWolcNt zQ%vUu)OERc*?rD#gfunioOtGC`L_5#%13AZ;^eU9{zT^EtlQ7OuBN$(kCWkg0S}pa zB5wF~E+eXxRcD0_K^lpm- zm4)X!V{X?rq7x4nG*{&HrT{9@If8X#xPGDyCAT{fb1i57R1WtN=nwbj3L34LJ8UPat1z8Tvx2FC| zN{rvG%uN1!de89uJ0a{!)#ZwQW;7Fk`}n8m8A+6L*8BjCa#rjH`YRn_DU)lbn3-A( zkabF_@85h` z3(m2KgnF;Mw+2~NZ|8ixE%8pLp+=@>L-Ij4&e4L;kDW16qs+l4(YitX=sb6FYnsZbA2iwFWt5>(;{RXmYltH-kXlh zR4_%sohilLWiu@6^y1Mr%u+3DsN`g>#JM~;i^FztSeWF(NNd6|C@0QIYIJ_+;L`ne zZT-8A#fHLpS6UL1ljYRm<4%2r<8PK2pau75S%tnZ7VR#Ydfx=u6MgYEy4p~NJ?lXD z+rzsjhb&`1Gd_(aaR!mE3K-EW=GV(hcZH!Rriw9K+kPMg8G%ZZcd;Tj!a@h#T4ji) z;%b{cNzCRKwFa9Hw=3eH5T07z8TGVS`*rkK(M~}4!M=nzrZ8JeJ+Wu3F#<;sgO9Z; zGG7&Vo)u0ldHzh!z9Xq9Et9J9-^zx@(X@yfe_VTb?j9k@%v62J%U0fgQTtfs3O8_a zhl@drU=$zieUoX@byI!D#hga3D48P=yyMH$0Mg>>1GAR}BUZ>)NpnWE*Vp_!4}6uT zy~-iu?b$-*gknF>3vGS~!Mrw8`?Xta-%j;?%;%;8&XqUG`zXD0VAcN43D@!WKg>53 zKzqBfwl>rxtx~mde48p@g*_EHrJC}l9P6OSXvU@jY?eLJ{`@E?|ENLjdgV#hy!Lg# z<+N@17YJ)0O(SIziW2^XiD*@Cpf5&|6h4Ta%HG5Eb1Pp)pv?|PrTzJ%4V`lC)}oV^ zns1gh5Fhg>;8m%xY`zz3O$9G}qz1{Vgz*1)MtiwhRJv+L2|{(k>qhqLitE>EzO5#cqCuD0(6{;?5HEi^4^a#BkrHs_~M`8_6AKjPSr zztfhla~4;Qbi6avS~)`UmsI&aPbaw6^L|-cH(jkSHy@jh=jz|vAEZxOm7jg`eSdu{ zL5r@Wu;K-4lF4fhH{o$IU#b4aWUlmRsT)`xC&6UH*CO{-jmW7M!vuxQ5856*w3!*z zwx!eNy6@_&7s5rUu@_VAGAw#oNr7g$JIyw4su+d zt%s_7nft3qtsTLT*pC$|#P8mcxM5{r{=6K?a6vF$Q_cU?_~qv7^xX6WQF=&sl4_8u z?o?Q=Ddy$wxS4a?6V;3Qzg+tl4Sg|D$1H1@6eRN2#rDC6S;)!=-V^6pipc`mF4b#} zt_uwquuG0s^s1}Jm}$2<1Q9mPPzFt zPpXs%miOzDsbG#(dFC0MSFR*Hq!cl4D~6-WX+f5SE8hxC+?)O!e4-3D9YTl9VS=H^ zT%z?jAWcw4WoAq#aIR7gGrC_*|4~Av52@c&m{kZ-o62cch%vovzD#Cu<5PUl@4KL^ zD9rG5q=sYqczMe6xO40hl28yGZYGHH6c$R}NG`qbO+>=m!ZexBOlW=(Vb z&nTCL=%53%T1x0+mk_CIZC7!^aYI?<_ArJek-~ zO9M7tMu+vKTRn;HXLPTl{9}ZWnBUZfTk~yHrkeft^+Nq$G_}Y2E)czi(ghagLn_ZO z{WG#9EvIya)x-j;&avdUT&pZbKfBXk;&ah<#EmlDuPhQ?49g@qoLU4(Q@wA8n>_Es z!Ngyif2|2OXQT*yla&8Es}=1v6r`9gEE9In@n!AX%1IY~x%tXcMF8bZMXt?Hfv#YN z8SQWJQN0H}W*@7cTI(0i8DtCAZ(_+1w1+Td5;D0fMslK0o$nHyEWdVdF?E5*>)|U4`7!-qQ_J;jYF!ktbF+P0)a?%~S)~wu)bW2lZ3 zFT{pRI?u9XrgBW%Nfja^HR5;ykK<&Ow*w#@I^Fp?Ba!tZg}ZaHHHF_kcEVEUm4yK9n;1b7wx)Vj zp36cRI*0dj_PI(H_5)pq5D-N)K3H?II32_u8!Zr>R{M@3a8A6~%qdSM$v915ydfZ!4?*v?xsy|;NeIg6mQhVP&TVZC?c4DeR1(s?%u7SL`>%0E3RFdSQ1_8(Q`%%q?epR1h; zq8Ek4E+%~@vUbh(R7j)T`ILqkQ&U|o@KWeX{xdcZlsx$T5 z)zUXD+CinI&Wf8ku3E z!b2TstIyt?seJ2A9!_z>q96Oi4&x6hxL|4V`p5ruYSK{vZGQ4Y3cH(NK^p~jj3Va- zRCPM&{m)Ih{rzJq-0Ht86Cf>-rA+#iXmg-jj%D3u6_K1N4wu=Y)`ndpwn`Oy8+UpP zEeX&(#FPLT4HS=Po^#NVI>^@2@WyUF+4Ema2?O%{MD8b4#MGDmRUg^8#H`)c_SV~d zoK}x-mIxh)?#}!f1Y@YOQ?gvS_R`9>+Hrmk#&nHyje|pO#6ojcZRgQ6LUl9>Re2Lv zLlmK{cs~*5|N5L3-nQO8y(OQ~`t~-XlfYEWW>kj~!B*IF{CRcPr~Q;=!tm!8et8Tw zdzDu_$GguGn9{CqkODmmjbaCFJJ;DK4%7OG!YIAWQyfDnctEpcgxr>Ye;YwMraThs z^&j3>9U=N+ea*1WrU_7Z{jL{cyQRUad>_Sxjk#mDsAi;rRJFx`Bo&w${c* z;9|Ak_w*E+=eZ=XcG|5E4TmA30ne@#!$meIE(4}X1oQE+W~PdvU@$CSQ;xURWM6Ff zI_p2%eGaJ?n00+^qJwPkcu;N2EZ>R0+QGzjwEdo}ev&IexwkL+Dyq)tZzO&m_7H6D zr!@~HxuHDMPI1NK$04Cp=jTUhVlSKf1FrEe2_~E7)*sz)z|1np64;KWxZtm8-?1Yx zK4nbLl)ZKk+f}{_5`F73q2n%g!P&m=9Xc#2VycmRewK^AS(k70m&nl^=L?Ow@nj@Y zd{)h)JY%nVRGllYSXFjw>x;OJ1v=4eMSf*oFlhoQ2l7d60_@fSTB+9>fE8_a`1HVF z=;i%FOFBIBz&D{aw%Q)v=Y0LF#GO>~->AIRcGzcXV%i%f0qj6}BX<0sQm-M9Flj0& z6O=&uoVmjZ5M%CK%sHQ!h!k~xRLGDmA{*JiCtR$6JByd3*6oi_4g!!v4}12vVi@Oy z+^>|<$F55XTx6`cPD6Gm76lD_o^vweoqf z{`*@ZD8#dy>Qm6*$kW9Zf`pUa!psz`77djBj1H-B-P!PnIg823BA^}O0fh{_A*ndVv z)oM%s&xVo+qJ{l`K6Jx+B36nK-@Hade2*O3eQW#VCME|B8@11ED5B3XqXVd`wrBsq z@8t5tQqmF~wj64zdQtk>4ZP+N(7$5r-^LFmHE<1ZX^;%L@fjEyfvTz0zjjATKV*-K zjk`GU;$ZxA#VlrEn75n#ktkCPi|F6%-M+y{*p|LTcn!jInm^7fpsxF&0D+i)wHMZB zt19j3g%l>pIq^I4A0gKk&+S^wZhr>kALsMx*p*9Vc?Eg2HMATUs2n09lH7#RL3Clz zuwGkQDiJi$q!+9> zo6c`i2~vHZ^YQNB4!$_ecK2$pup#;N0YBen6Xyq5{;=dG>{mk=p`~)0Nfd5$VB5DE zUQ1VmK>Fwk`5pJ@kH3oi=!$FjF=Y5xO<%P~?SV9hT#S#xI3LCs)J^5Rzr#C)u7Sy?wUV(!i1a> z1fs{L$Bw;WZo~AlDYTaVn>?GxhA}DgFu!2Q?cI-3#j)0SL`)O5Sd6eU{G zm&e^dDWk*B3-5y{VloB$%WlSK7N*INCVg{p(np7?A8w71zE2hszhBF=%Ty&=Kg*BUDgCM9IcR=}P7+r{tfHTZI+p2G2_Y zh1I!K6xlxX*iZ+=vsf@ zbMuW{`0q)#36`g@zLGi*Sc#c34k-fqGa*ySTHbex+f`8HV`!!vbrkb3@;X7ZOn9%c zscBw9Vk*HL*XV1#(EqCiDAiyhAlL^sGk>fQ-p-${I3)Mx%;gN?D4ER-uQvh<3jkqD z9gm*{gJCv?qDg^!_W!8qsLT25^G;Yseb4y>M?^#p>GE*XkCXfHL-B{^OrynG_r5N( zxqKuF!^pUFyi|xx-`+k^$KmB#!mcWG;6W8~VxlI|VO|Z^(Gxe)XN`cd^9##6ypTVO zpRMX)8LB5fEKS>Tf>qVUjr>^=gTBX2aCpNJoqSq7T1g{ha*?a|pR(+@@#&cdavR9e z(?|R6dZ=5Uf)qzbM%FA|;5%&KXVCwczhx}5-rysjEed&*4?l6d2iw#y^7}q= zt4(o%I=SeW68wBT)YKpxcojvAf%Jc8ruuVo=?L%%L4@hJxLfCUtD*F4Ofrz^Mq6%m z`&y5S!AiBLXcgLb<54y0q&}W_*R?Z9&@dQGE?&;yg*-GS6WUxa#^AYFszJJ18_kkF z3wT1HX>g`;|J@d~ta8Ts;%HsNg(SBn6ec10CS%4O<-)mPW)N;=Aiq~yJt_I(?-+3UczRV0osq=@`N!v1WF&%u**|KX{~o&8t~SKDUDsZrqfV?Wsn8P_ zw93p)p%4>BOUh9idF!ISk1fb#;?cx+fsjhep-0bf8Tlwir-H-TlbcS7{)cUg6M z#*t#ghl{}xxqdPBnhoAs-7-@Pvw!Faz+sdy!SODUfmdQxJY|OR`<(D%oNX&^ z{DINI&k%Lx3;`8g3-k!6V|8o7$Q3v6W(G&cbezD6)Zxn+wx}|1lgsNID~nStnL|dc zdrdjPU$vD%;LZaKh;$zpPsc=kTmM?tuX`Yq$RS^m9}ydzn0rZ531KN^;da{h*(LBi zClYR_Nv_*;IDhJXQlG>A>vaEK@6;#Bp``|Gd^@Pc$u|P-{K4V*NMxk_nn%9(Qw*7? z!bx`pIZDZRwiOg+)JrkUNtL^)sI0`r!4nOG6)_^bkpMKEPz=>#O%E!{jAsO#tm7znSyT3+Q5FisIJ1!~Ov z0LQzrb1Q!A&fQxR1>AHPBWXqQ%@}D@lTY{?jS4TZ?C)s zJhu?m?@fgyFys`RF3!g6OwCLkuNTqGHTf^HvBufy#`UGZ*l#-jX43og&no@G#^V&^ z?HriDi@1y$6+20KNY$vPJY9Lq;G^Q9iYHzwvAPfZg2oz8E7g3bU%e|B1 zO=Gpo2q1EeDJr!1>hYYJ7&pfCa0_lN$OtdCQqF9aBga=nNtemxC@?oaeH0SoOSiZc zQwG#PK**8N?0Ns)j4E40O62kbuM#jHR|&CTP2J$(?VX;~OD6v-A-p13gUG7TOP$up zk&h>zE)gF_w2Xk$jxd%QSBbGm+SG@IMj`aue>fjk!9uByjO5n%ozEHE7rg3w4yE^}A$kdwP%d!^H4!q-(ZMHi57dOnnf>hREPX;a>?#2?(!^ zVW~^Y$Vg3s!UW%rO`}$EPGUS!>Dk|^rqcbL{A76QGH$#t)SX}Fq@gxe1BBY~D1f(( zisD8@4CQyc!{5YG1MRD`m~$;?r@EBgek3cb4`8<%W;o(y(oQ9aicxa>m#`TX6+@S= zq(n<4u#kG^>;I8dK*C3JJYGed)jZ7guoG3PS@(FrZ)p9KZMm3Wuo))78_QswZaki8@yw*^xr0?A{yT?M=&um zDBz`}-e9O{#^%>-8URyXG2S1}wR`UUq&VIXpJYK#yyH6sLG>n)?9K%-sMZ4pLcs5Y zGS2eX`QTvQHes}sRg-rnU=QGkA@NCt%;UA$u0FoY)~9fTyv87LYa@Z)F7Q}J^N+IG zvEUDL^m@14`N8?>iKzlUa7r8vG7}{{q@D77!8Nbl@@YO`%q)F$b_HFeu9nH$1`CT6 zv~d1R-aLqFF)SPwvgKSlfxpuFBn6aEq4CO0gwms;qESUqatJi$Vr$1tEQy7c(t8}k z6S#RHI3cqAfNKLeh5EAuD5HcQL17YkTB>IqOS* zyhn~Z8nSC?@*pYR$8{II#-tMSN@#zKG)bA9J9}h`RolvN5Mz43*XH!rWJcovB?I4t z=cu@KaGg)TU;j@Wo{h7Xl8Y~3seY;t3@Pq1RkRHBY*9P3d5|*@GAyIHrza+7KM>O< z#07Xh9p}Zsrc_n$E|}ObkPy9&%We}W&v)&Ch*$V_T9lJ(@_xd`fzEEUP@=-(^n|3e zqGG$yp-om(h3o*P8%{aaBIy5Mpl(>TxO;+pjmubfw0mpg{wb-`u+F$T1>@ZS^IFf` z%Pr%Zb^Q3ws1HmU0@c5k58T5ki4x$wW)jer?* znrvc?G%Y)gRyO%lZ}K#IY9KppaWiSz%}r2MKUviNS;cH8bnBe znGToAE&1|gxAu!gPpa`_Vg-R?Ucnj_OsUiR_9tG#%yXoHxI zC3gr6<`j(|Ip`7%dnchd|7Ck=yln+rD9fn3ikWJB4w*J)SC1D4rSCE3bh?_7h0F-O zI}Rr@%>Ay>n4Yq&`e!;o^ zP9qk+1t-tyGz`n78>0kainfbci9G=E!F@pqw?X@L2Yg?u+y^bKX!ZNlde84U7x)N) zEiY3a{|?Y_Q)yypPS#o;MJAVlLfDR%2`I@@GRo5O@ce$hY*t#Vd-v8QzwupUZ`5c~ zN@nVWB_#__@M@d?s@JJV)dv0(Zj2Pa8=M=lm9%gwH6>Z8u-mF03nloJ=>*-ms6G>7 z9dS8^Xs7M52bGhLNGMJvIKg9PtD)uL>HRbpVoUK;Dh@kz^ZVG!DLV6fLHM2_H40_1 zGMyxq$*q#O&K{~-VRze+i>pJoeLWRu(hut=W!zq1fxrTDl3BJ=i3HY+fo?;ra8+_F zx_?(rx9t7irlgZtza{s@!7v*bte=EY9vz)NUupM&P9=L?btXw$Mago~W?B^r2=i~N=TPF*p16M)Dp<&OfiB{x=uS=yGgnZnNS6c+1*YEms!UM%4 zraEW)(DpFNH4uZc%F<`KL^-_1o$NpO$+DPZ0j{Hmhu@!qJzdFmwI;?YInt25hPoWs z7)Kj+WIa_tDaBin8J% zyarrD6P&QBnsefJxbmsv8-DaPqC~ zoePKOYqE=3p;LBY;XvYkkyz^ef${Op-ra0EF*Y^|VYLk9=lxS(;E;)9p%Tme^QjLZpP70^h<4UUPbnP_Os)eu^Ga`gn;6E;PBc# z>Tq3>%pZX{4W5M2GPA#utJ;iM;0V$X@7AocXd(`RXdr;b{202qVa=OfR1C{2uVbVD z*V0E!Yd|QG-tgJi0%Zy|H>}w4>6sXeH{tLf(%*W6?^_-pcN>;{(JJQf=2qI23#r)X z(t*oiQa%&L;{^^MgH3>R5{t1AG4t^xtM`K*H!W7U49H~>?~w}zY@?xg>j?y~l+F(| z2zIbla%hzLE|ii(J1MzO4FeZw0ftjx{xz?VAD4zO0?N$rNg4w|%E`%Ny4s$NHbwI<}~Np>kJXblZv25ws8UUtVf}-@h|a%7QrQbYTeeMvjt!N!@2;F_?~-?mhdMG>2SzB`$pHs)RWb=22T_uty1&Z znHg10wdl^@DkDOKAE%t3aQSqXkP#%E!V?Eg^I*^nr9+}WS|iB1D&NI_4v)@Ro*u>6 zoHcy=wqOh`Z;A+k>nQg1Tp348L6;k5WQIp|5gsL``E9Ma3F+BbjE4KJ=WS2#B#SJst`3qtH3vu<8Ld}cW@NgZzdXgB zo>lX$QsPGTwl*h8#kuUVon^lqiA{bns6P_!UPme%|GG6W$mPNVQ?OM3J0%oGAHiK( zrhS8!$UI!5*FGpj<{v1Ap@lgPlyETBHs7sdiDVSgp@&Y;aO2~tNEVKXadksGMmAAS3WHv z5#Pl&n?FT4Z;)tqEZNIep`LA%;?y=1@~4@sEYgoa^*srH(zVCqfX^B`8$u0Il%GT& z_g;~a@()y+^cPp?HXng&$4?9Q4|uxP2jbT#>gR^@hgkr7V9d^3Q6xhNX65E#EBd+- zE(S%Joey``qxSfF3K^<{Zg9G!wHP<(X_un&J4IrT8s09*v1d^cxktc_q+zw- zXv{z#W^{>(}?E`#)AlRk{$hha-U1*t+||7O~NyWcLj~j=K-reGa8@9Gh2= zQ%!S)|6O7tye{bt?6#MTmue9e)2~3kC)E?yH|VlGxL$c#z^x_-T?v`^-M@?e?;L)D zntKO92>edtK*?hXZF+_NyudzoT+SG;9Pz-fn5I(D^i(R9ss_Xv;kxJl+~X&Y+lAtI zTZxW%iPC51z-o;lHPhI@dULi;8)lhnoLQCLV!f?k>YOs=R5eiRZG!6n8R;jf@2RQU zd7%m1!TbHS5YhZEZd`4CYrl_BFH`8MqDS zS_YcKSg|LarrewYB0*6hksiOA8w<{MU}#!1HirJn|t zr)jx6^5-or+0>Aw15z_4`zh?gAb9P}w;`faKRF-G(~NHrjk7K;l`7y$Br75#O~On= zQve1DWXQme01`*5##MQ4!rVOiY`pA+ad=4WvhAUvqo=F1mpo8h3dXawZSJyhB`~Jn z5G95|EyNULaeJCuUJyZ4zt}LbSP7dgAkJ97nDFqr9B_M_z)#9R6nzO!wq&m4T5yWv zTZ4bQ8N}#|QqA%{k#^T8oC??{7lWU@q3D$AULC)Dl;jD^@?U+}m)#PDzaxc>Y0W@k zIAAL+r#&}8b%>d(Z(wb0E&k3dFhnaZDE(b5*~?;Z4>qW`NZY3EeL@UKv!jg^pqZB-h{LbJ+G|5Z~7J8yO&d|3!_)1k%sg=f6wTHB&p=$ zrOdq-4|GysT~e}Gr^Lq=<9Pm&Vt1`;<~Bq0$@Z?Chgn-!-#yN8k9Ks|o@rxo5%2d8 zL-(@rH)j)ZC+pif@JLw;@0W23TJ+&Mtn9{R`E~qmGm$a4#Q-|!`RE^$E!tl?tVB=T zL{+n$-^)+TyC~$dVzD)g7O(_QLb5#u7&tNC#$ksJW zLnqYLHozAvaXZy?P?z8R{A&}Php~r_Q!F}{sk@O9n{4Ls=3^}bVYYXMYeLPzQz`%@ zXy~hp=(F+}WG@ky7}lmN)Vgu$@;Q*>MouiQHg3hoZHu#G7i^m!3aj9>>W?R(p&c!^ z5kxNZ^bTvLW-5IIU*EsgYjofIsF^S^5W_;W&}N1eNbXqDieak$RFgT3cHPu7cY>1FoO*11#SuZoR0|0yFV%`a7|DXn8HrG2Cjh7$0)K-VaIA1T0 z{`lp^98A~I7otNNaAXAF68*~A+gFVWJ*EQtwu}*PmUtchO@w;n!canEGX8CBC*{c% z!6E6h5Y3CNO`poN(TqmN@Xf+8AT&;hu>cu~s)(G^FK83!wJ-Gb%f_tnTt0BM(Z^AJ zqHMx!yHjaX%;)NAtba*EkL8JLlZ-8ed7Q|+1AoSp`huW(QQ}G2Zf)V@|Z$3DN z!+$sEb`hDOcbw9Dp3VkNGS^FNQ*2fP5P?5BBc&xJ6c|Wnvk&hZT(@=fj#07Df;z>Y z771PBd%mm0xEyT>_&$rPE>4?rR+g71X)yyaiC2F5ftZYi#RaU*TS$4E=6Rp0FZ|Q4cN- zXRswm%(KAzVw+k}?T`{JZ7%cRojS7({^i!}@+-olCaAhhf;XV;wU5QiGC4vfDX7qb zr|`uZ3Zp3gcjM``+Z_bJ1nc~1-2pm4CPFOejsnJrr(EClKYRbi*YON#$aks7RGJ!d z`!4lzkD8%4SU$-tEv>>Ow+zbxQ)Y6wewYK?WY0vz>K9A)bk<+$bZ2RQebF<=tNJr} zFh=C?Zs|7QM|*SFV3t1Y)<2bJzd!&K?P=BOOfYMk&ngxjrWanFAMCPAcb>2QCCNy; z)_h6|BB|PG&2jlRhGnE-*(J3OL|A-qEm&u3*`Z(7@b-~!S@2-WlwW4RpjaU|XB4fLw zb6!1UFUUDX7|kpKivkT4d{xsZgOLD8=^JMJ*V^iskef$k?A&N%a^sSS$`B;6KsNt* z#-=pJz)p-g`x;IXCmI@+$X-RI8A8rU)kgPf9xLgY-*eRkEx+K4)`CsmCyQB*wc;33 zs+T2R%0YgIlBjc040$Y|Q0JXz1BE z-#0l80E8mu_w{Xi_s>;z$<^37?N&_mGdH2x>@i3u3-D)>{mMoh=>!A{t4i|xnCpNA zaCN-~YF*b`zk_sJ$f>(|iv*H04-Xg39e(QV!Nw*+MZ6Lu!NN+2iit6*Wql^?AVXs3 z;0V_*>^77ei3?SZXD5jM56cP(9UK|Zy5gdYqwl7o0<;Aj5-X7i;GW-n%O2LUKtoau zpWVPL3vPVOgfns^{OH@4Qf%p*=K265;pn~}XoYxEPA9ERD(ZB@oX43fAAEMBWqu&w zL&QD*9jO7tE*ZYgzr|^~kpjfl^|ogaAPu0UCD0YGe&4EGe^hM+1g3BsEj4h=ih1)? zqB#SA4p54Sh)@VeqI_VWAK2{Zl+h;;3f5jkjY2VM4aeoLYC${p;kUwUM7BsT9Wc za1p*=#2YKpss+yaiE5UwXeF`gzw;8{&-|!l#SK;>MvySPE&uAft?&eNR}DKqNB+g1 z@m;?#x2Y+fE#UkEHl184kTsqAtUVV3`l$eMhc$7%G4a9#Aky3+d+M9BT%JzB$l5kD zdprU95qP}71Dr24Z1gUH{?pWSLXn#K{^9*(KFk#0Z!^~06C%xFy~Y3=&<~krdu3i7 z9Kjt!prm4U9q4?>cu=EytTOw z3t1MR0b@&QWDQwUiwmj(zb^6R&e45Vce7msPVkM7U(dP+c7D;rB1iKU$(Md7TxIc| zw}gh`x!B(hjjNiKRo|-f@Up*Fdt#s3xtepK-h)q@AbjDy^u zX2MFXsP*-A0XmHS4It^MUXb$le-5O21qm+J#@lE3CeI_@ydKf-xl{Wkfaj&A5{DJ{Z#}pnF=W0QIJ@xEa@GYy7$v-fW5coWw|4{zJK(z zM=y<$ggBtzLYdS5uNDBwWB&Mq|Jvtuq;*Gx!tT0%27q9NG#0O7t(`hu@QBw|<1nxh z{+0q8(%B~Nqy{;A{|Hb^L=DuLQ&(g&-l0m%i5?~Jj0`ta>r{b9!N_EwNm!C2a^AD1oS}hFIrNC zQ(!&4j4NSa8HkC!aCNAW^Yo@-C&-ds#Vj849=YpIE~#T6WGKr{l5wGQE#C>J&!k=P z@}x#>?U>p`*|2FZm6eS8&4gVmiAf6 z&Fyn!$yZiBU{`wjwKY@+9J>>l<>%++%vUDIw`FR3c^05zzU8EcEot0Y55i_#`9K z4~V#&&NGG|>*BK06MkaS0MPbx#Fxgq;nQcH)3)2!Q(RmCc%)xZSX%SL!SAwu{$&db z`P1xvD#7#fd$Fxd4>3biS8moUD1Cf#LbuDf=%|D5aYWUtNSHD(*iVB{|vK1%Bj0L1l-4^aze$#<+mU$ z4uJrCf#*vHo$KvKjBuGv_z|$5q~Cc7KW&-(O2TGoKrjXKLLdO6diQUW3KccFNArOR z$wi4;KEliV#bj%Dhq|W#D?zO#;2-;cf-0&w{<+qe#|+yn??*6f_7{z5^~Sm9{oNTy zxqh>>A#(b2)Rp>;NJ}~Zlwqo>lmW1~P~>4p|NHwvn~H?EtiF(I^!}O7-rY;5{KnwZ z=j*jE`WiAyO4n5`c2;eDhYl^HcT$gja%S4*j-Dymt>?ICXh8X_J*wfc>gwu9;0rIN zj+QBQx`dSrxCV%rk-e6uds}p3KAG|HKnNMEnY2>r?dKnpB|O~mS8jPFKpjGZjp9;W z8w9`!SqtsxPn;gFBBY=h!hTtGV_A3B{tjYvg!#=5-+(YRE+I2~rs{DNC9spcUpXtc z*})LRixx^%Fzl6AP6mX?lyh)4lxTst|k{6wF(+~J?f%U0~5 zoQlC!9E6#0yI<^{A>hK|CAjUm?Z+8vXg6xive*WI+5=jfU6SS2Ha^;6KyAVTx;kNb z#o_(_^u<;JW9Khu zK=1y7F1>`G4-2l2p4>)3>#}`)Cl5ykTg5QO2xo_-SQX{<>#{M59m04yb(0Bv81!dS z67KDZ2oDcV$qbOQOM|z5oc%H*0B~X&vween;#sWHThs zz&IiqPmLHVvv+i2*0zPKpW)cy@(NM8ResV2?Q=hRP-cS}1GKst7lQrom9KrKQ2xybfCZe+Q7>$7bc# zwlXnz0zTsAcxAND%}ov}#f@vS+2mbdVb1S;!K^eochdCwe+_UpZN`tiKHj5i}* zg!IAq^-Gz-#)@&;Y7=YH>Dvcr%}!%_C;_ z4&EpVe*fbWm=tNzxGEM|?a3lkUrN<) z)WbE|7e0lT@=I;L<&whs!xZ_(2K@fRmzrQVv*MDbB(?vd@lUVw@&!}fy!hQOh!du` zkODjQ?x@Z3dw*f$7}x3mFo2Q_C+8$mXm^INPuz2-(JO#@r)M3Z1C$*jQ8il_kdnl! z8g&4~?pMif$J$4aiBi>3l>$qMGAKU`MZ!A8&1DEHQ$|uhD7m`b<`glm_`TiQ1r8`A zf|T8NfC2PziK#KvAU&%#iK!VIV0Hm^A5cZv*f27%4jGt18M$VhLfRjeJSyiLXbec# z`vWfd8rsiUNXu#*w-d6@78BW{4#?NpIA>(iAzN2;gW`hNs2PAQHa598@(Q|yq=~}6O~Rf zeSN3P%?wqX9;PgyTP2-)?oW}u`1pi?o{619;7LKxVM$%-O*&&l*Zdu|K2Q=cXF|w? z97mdhI0jl|t(QxYOa%B`5w79ubUWAUt54}F4XVGqe1?V&nuQ<`sMh@1R`Nov#oM|) z`iZs|Ma?z(Xl-0p9<<7bMu&4(6ABX=ndd3=n5i}q^a?g{WiK8Z7EH~tJ7n)Zt9Hle zWhE7Gn!V2T^M5%NQ%tHhADN%C?dn3wWo@gr@XeXBYR1R%72EDZgZsU4G9>4tX>C(& z3c~2onVW)wi?b6u04$uEofz%eQdgayK0bFo8vq$s(gS2T%A18$0^ueLIsz*zy{5&k z(&6e2VafIXq)OtD-RF98q&z{Aqs6x1c<38=Xb1rTiNU>61hY%yJ>uw`!}{g>SAVow zxa}=}m)8**kOQIiKLCUajA=$fj#avAfu)zuZ+zZ!zVAIB|J>*7?65O?-#c?% zznDwhAO_=BHKa>b*t)=C6xsJ{fJM_Q)E^|}c6yl;0fCR^N7S?dC9^TFsGJ(kY>^CvV8e(*MegKAoa0H|W%oetL z8)jy}hHJ0rib`wJ$EvZTGQ`~#e(H#6oL~kFcbPR--&MCd8k$6pAXa}J!hz_sqPd>! zE0LJ!%eSb<3*Ki~#69*q@*m&vzPvY|QAjHG89Q8+kvf)j_LAgIp^JgF^eZ9i-F8Oa zbAj;ZS2JFASxF^R7lI~GbAghLKhuP-kT>6+m6(nqr)%9`Y}u6Xax zB&niqmvLWXVg%_qRuodGTf&OzO?eeJJsvu~$HY&gP+JsozO4N>GeYn>Ja zmwc>OFZpkpkI^z8(q)!c)R@)Pt0o|TR94O;4Tt^KVj+%)Q;Yk?Esq`Md))Ghkk4&- z@IDvpWKmG#;}gnAFpQLE*eYTBo05z9#@&8g&R;8mZ~anKV;~Cs%lg&y@v}(?l(8L^}B~?w9w%GKW;Y6K5gTY zD95KipOjNt4__lo7_E|DSvw@Q#QlSpE`_@usbxJBUP@$De1el9gJDw2CGQMT*iAKc zl=)(!%mg?4{g+-*>osG04H@}4|L#U}_9q8>t+PlRD?LloUrrt1={0e4^Zr`eK)yhT z6C5Xgq>40vyrSqvr`L)q%LjqD&40yT2`q-KoYqOf2peT z(8T|QsfUH-VtSU2Q7*23e(7&u2)jvn%^Yw(llEG5h_M_ZFs^a2g2-YZ#5-D@Tx^Ob zNph?*;1qB9OU`UvFR{4r^9yGth@beP`+2$8_}>@=9QCx+d3olQesh3!H z^b>8~ltJ>7Z(jD%|LWm7)V~gA8XIzpRO=nda{wLL!pCQLz7ost+!hIfJI$K?t^j_g zM5EumMh@bu@AC^!T$B&9e+7CtqSf|^OWF8%Rw@BQP~qLls)2M2Z)!RDKB)%|aFSk- zwNteAeF`{9E~$tp4$H;*^wPTxOCl5Yb<8#hP?4-(v1H7T%AM8n6dP>jcc+0kc7Q+D zmLzYCJUI_bfu8rSEXeM&iRaLVOi(k^){5X8l zvBLQ`RU|~P533CVqM~)bbx#H<4u@+H3+Eev5@DK}w9kzlpVdlZNIw;j;ChyJPnu9k zO~v07ZTz#aMq_MJ9ML58M)1?_Eda>u`DuWhW>1u6lWe(amKUbuq7fCsNC@ivdaoS% zQ%eQJ0RrFcdTr~w!DuM(4Oy>$Gr1*7bO4Bx!z+K9*+%E(<7rfoOwM;A8^8rv^4B;G zSW{AN6Lq>n)+vpB4@CnG^5{?|ch@{CD)NsXL_9e_Sid7fL}|8@l^e zn19s`&^oKm@vLD$IfeP6QHcBMgWJ6fRrA@6NB}tU2?zi+)e=1)#;aC$1h$#?3R-| zJ~<(dlv`barKWaTL`y0wDJjW#Qy%;N1+Rvztw3I>=y52H@sFdhrjfq1z7n4~+Rs2| zdL^cZtx@1-)CuscG%>6}p>Q59w%kJdM`CPzv8Ad-7Vyi5oYn%ZH|QXW`u?2~!puIP zqOWP36r-q3BFE05?6V$RWVgS=Ope#{hqWtvQd28M%?Kjo>u)}%8(@rIDSjt7=~BPo zp0qC`{CFA$D|69HtBMzV)Q1fi`(l7aRbVG-epU_e8d(WupiFBSPysrl6L%FZn4Y5` zkXyjH2`Ea2=JC zV)OmhcL6%w2U04b4-GVe{z5xt)OEta|Ig<3zs9%!_}$pUWLQZIH0)a$mB;~ZyTDLd zDz+G|_3``B6AVTrQ2LT70by7h^b6`_bZzzI;pb;&CxMNRBfB?zTS|X+Xul-fs4-?@ zt1ce~x+3cEAzf&9tR}|?)i@$&wUo*~&->I&ETB-RaTO_MUZ0{9*X)BRh0V&kGu^xH;*(4IG?^kHbz z)6+YFM@qB{wN&5!q!Okz&(W%8wJ0ih?W4bVJntZ2Rc|m=SCJWs+$Pr1qr-aGH1&J1 zKCKb!flP6@M;V$ae_C<5Vb>{FTGcFZ@(}Xy;@J~U_&>r);22ZzBb7JR4OeXwH-`1$k zYjGge24`G`FqfqkGn4A3rCoFd-ndXuP`x7Q{yyHTtzEEnq;1GecDHSEEeV6c0Nhg4 zm@IWk5ZJlSF?5J}P$6iN7ijw7?m*#AWPROgVA$Q!F=8KjRw)Wy)0^wwZe;kAXgu<5!oh>=@;?l+3_>7QSl=Z29RArJGdD!%<)sEt~C6tbupNbtEz z8j(u}tn5`@XZUyzZ)yThfsLsak#@dzUV`Dp(5ztEJ^G70mvu!#@F%WGv7b%y(13q|d1=ArlB?Su!4hkF&v*N+%B^n(vQdL}9 z+P@`WLrzPxzMgEn6pYB~vNeQaCWnS9-6FH@+NmW1KIxj=LSbaIR_#;EFTzkrN_{bi3HDx3b%&4V7&gcl*4XCIW0{pL2M@n>dx! z5sqRagG+8GAt3bRY%lIHH*{{Rwv=wAQ8I1~2+x=m=4tsmhoJ_1Yr{PzRDu=kEsfDm zdg{2WHo%oS_ff>*-Fod6AA2BFt6^UOdsKO|<0&TALN@o=^RS&kk(a!%xioHfwxQ>b zo%|b;;mjAkV-_sf4?l;BR)onPN@SlQ&Cf%K1fR(!tzSjC!M8jBTnyk7uyup))Q`3u z7)mFRD!&G`wci}h_5Q^yS3F`eQ$Ib$860kgxi;;KqW?ysm>f4sbANg7!_y4n@?QXS zF%hOuR(odGx_NlHvQ2&ZGLzu^#{+4w;XUON!pKlF=PY2Cb+oij!lo*$_N!@&l1?AMB4?n#e&I$67kU9%ScFgWR@P zg20f2AeCxz{T3OnYjEK0e+FG7?nUj5cuhG0MQmnss&YC$W@#xH%y-}2p6gcYcgum^ zXi|PaeRFwfAYAc{0n9@w?!ddXuEERoc3j(feorlaL&66TkoN2xQ#0Q`4n}x@tyZ!< zE3@tXu(2)3WR%~oQr7tZr2#GYfqr>^eYZPr=dPt2(0jPw)abG}8~$5{NCqt^h%`v= z!NXcyLhpeoT0e39Z*iEgRHY+EpO_P?d<`KV!4j>)xDv~B?;Z<+DN`!E9$`~U;b%dX z`idWf>s(srxd<4^)zI`51?@-gH02U0l~<0n7f~+|bG19BR}(||a61qL@_v>MOCmiQ zM_nC?NB4w7+%ws3i)~YTCLmPaZDu@6@JXo;NS_2wj$E^SZVw~G6ib#>w`kRUBb&3+ z^56S2QLE37PZ#AU1(Tj|tp}rD-Rnl!Pzg+Y&b$%Q25Dkf_{c6xwjIDA_=5sLnb}+`Oy6g`k#{QwH+c@k4x~?S`Gnx{^mc0sgE_S(jJgN&} z$`g}XF*a<>m@aNjCBb}0db*9VMKT(gVCcQ2+l~PRI&KIZ*%i`b$WUPwSsVRW+~DKe8J-jV@mWe#za+jlnzfL<`=9lGN3-0 zz8ge{x;Lk&GAnABDqq7cu7o5*#F zN`0_Po#yMa*{C`M=Fge7ZBr-|ZT9^p9r>D$8V`=#ZQPHdOUaXQO+mUlmw+P^y3vWT z{+zpWY!}-0pXX~>i0HexSCJVWM&~gi(Zc+hRTO(ael4#iEBS_hlZ?+S)q7__Obqo{ zA<45?^C^XaETVybO zx@~fBdAjbA8SsUUPONWuTXz#lXEoG7HdSh}ia=aaP|@YL9`awLQ5G9e8f%@vf=czy z@1>;YZrLN}C!0jy;P1^3B@I!9vJeRhHA=>)A<$fS1?) z6cER*Tz3!P;YWk%8jY;_P7Wcf!dk%XI61@Z| z_y z`WV|K-6Fyvx@6Fm$yUc1^#RnQlg;MgLp4c6tpH-LrOf)7c2ebvm$B_ro}_^$RPy=e zμmzM{*8y4Co6Z9)OtdtuoW%$E5n9uR!tYg((3*Gt(J6!<2z0r84v7-R%@xKhZ| zsneCS^Wh3g`W`r48Br|6wG;1`ZPRin=;0t8=Q5ju|2C2Wa=BpvQbRlsuN}lxjwk#igvk zvkkrz12Dtsg6I;Df&Ud1|3-C4%K9o|abG3u9h>_h#RJ_b6Zr7lEjQj&7iCF~|eC!d_zVx}(0%Sl~r7 z9q1Umjv^39ih7e^vG7RQrY5?_9g^T8`fI!cE~_F^UBaB~V3WF;Ra0_O)c7+&{mBX+ zU^Z7qF?-(`iG1_QRVo;VLbnB#OUf#>Rzn#TqB7DYUG4C{kc)FSIH9&+?%>{Okyf60 z7$t}6R*a8Nv=vVjgy8h+>831QlSOLDu{Q-QqrIP&@5k-5#W`^Fok_KYRIHpKbp$+@ zafbhSkVj0}kkmz_V#Alt@l?fLR;Mpi-uogLeP_BYG26`2Nt8=Ku`4s&mkR|G$Thxs7Ly>f?LKOMi%f81LMGTxg^pJo>V{hFa2S6 zmmeYaepw)04BW77=|C>dE4U6H-wwPt5Bdgi(sJ<$iPPh@LN=)H3Li@C2grD=a_f-E z>fza(D5_~&CjJ181sq?4Ug;$@Exp*96DjUA(! z*Vbc+$Mx|@1+@@oqQ^D?A5t&k`#!0<2$gOe-k5LnTqgzY@9iSU_S@9xVbCS{LtH0I zkBCEZvpeQuGBm`66`KOwr!nEo?87_EX45JL`>?PDYb_ zLrV;>@k+ay^Z>fro9RM3$*Q8YW^S4c5$h+z&j$K`2~ZZ0Bw6{Zd>%#UsO|6gnkI!7 zS}~U;6q>;{(6e^uVb?<6{NOeGZrKeQ_LpZTAA}3{uWA=o#`uRs>D>6zu8fCvjy83@x;i%lNhLAecK&8Foens z%1_9J{!va^x?^21Qt_W3fwZ34LRYYdMka$JlN1ipMuU0BjY z;fJ4?R4Awn1OO+A`|9mBUh=*ivF}n4r<1D}k|rkm^b*PL?-J>WaH@S)0dz8*9;+^d z1}C=GC?U}`n6Z|>N89i?yUH5PFs*XrH+|C^wpQRhkvPsGfF# zW~dfX(9-raWQb;jm#_st!FdytC560qARe7F=8BX2)A~lD0?98ZD9fIhsVVvd2aczq zuFebI;1A4k1y6arCSDmfI0=Xe%k#t1-FZf_$bXtQ0f2TWG9$IpKd^S|$wR#ovni&KE?tAy`Q$ws^L3As=%$jy!g|D95 zEW4vyJOho4@g+WqLew~B!DaeV+8JRihtTNsUpr^-AV2+8wUOQ~Ig&7PD)B5>~-! z#UywS*|@ofFL4WzVsdhF`X;Jfym|(DDL3WM3%<(J%QD1r@*s}id9n^956m?cf}5`R z{7QtokrS0e`3hH8iee4ZYD#A?=OcUaORQ%>G3ps=v&I1^8OcnUuL|4;#oHgW`mMbk z>Ax+O?O)_OeTl6;+*$ZA-mW>Ul#nzpE9DQe ze!3myC!j)`3kf@+^kI}WuY-cvmD%){ID-hy$KpekWxx_LPwip4n3z(q#; z-;qB7FEeTdgH~+qzc2r%m8kUpI{kO+e|7r#DyURrQ_OAq2k6U(YcD2tVePi?NZSZ~ z_Dcc_nKJnA=fZ3Rh8WGaY3;bI1?tL=ahn)-1hb$tmb2`1uP)rW!N+~|tMcz|q6!Pj zU?x3MS5{yPrp!t?rs;j=^uh!Gf_lGZlTzRvH3pPH?`F}L33TAZxw8o(Q-6RaX~mcJ z*-EJ&mqeNYlwVH4*PirrH6ojRuQX8lAB+fV{0MTJQrPUxr9Xv9av9kbR)m}#QN-)`QQCCdINhhX9O mwA6|meWxL_4Mkd*LvR~R9R6P9pxR$t5>hkWo0B(UcGw#^VKUDY$ODz z|keRX$>NCatDLRKyH?1uU@$=+9)rf!+t<}Fb|6q!6F3` zFXpIl@7;0&s7Y)XA-7l=$QYYX9>Gg+swlLYjAijixry&wks^ZIlZ|y+!KRwEH?Xo> zc?682xI`9JAI;Z%dFY)By;!G1Fi#%7Q{!efA6`7Vo-F1do{_c*dIar=tP zQCp{x73LP|V}PZ&xU#Ic_`h6&I+E@kBPi3Oj1#1!nn#Wcj~d2fTBztUMINaWM6QNZ zCsu+%#rzaNg)STREoWT^d}dyCu)a}R5>P^h^!%j}RWXc7Wy4!GTQVGz>2$Nz72{?F z5h(&?rnFpJWX6U)L;mZ+axsC2B$Buq?AMV|wjBU1{Mv8ls8?&J#sVWRt63#VW4dTa zUwdmtS!_1YH}(~l)?1Z`ft1>mLe!ZoMWP$h<@BT-_DszTXQN+JWGAqtzxEj;(vysS z%$Fjjjx0`9yc7Fnl5mM3y*^qeG1P$pJW~_PB>pj2XB^;6v ztft43q0KAytlYUJohzihH3X*erPOLfy^~ixO2O8{gN(ZOJ(aC}=()PCzm@8*5ufJ~u(~zqowR&ws?scn*BFf|6$vop1+W+$XuQF6iL4i-g&cykTd9o6M*zVl?An<6`6h8nZC+av!sWeSBdGv;Jtg$`n5W#i&y^L2@=Gmj9M0TLYcUpaTTS z>ID45CM!25I~yk_bRJF?RxTd4|5nlfIXFTi@ed{|3llrn-=06q!UuH*N-XeCoI(Nq z%AvmSi93LRPIeAzc6Qc+JGW}~O6zd;dCKfwm<+|48|NqwD`Ox={W* zodVfHZ$YlmWNG(l`vWx5LNJz-mU#8@=lgqGK^#lSLB1)* z=ITDLTtA<+{>=I#5xq6)Y)?vv1pqxynG-?TL@cRaEZ#9-i*$>@L9=#$GE)^+)r601 zw;9pfRh6`J-M>HQ6%*nO@PT}Meo1*pjmkWJZlnA4F(Ss}g1F&pcN%sY)lbr8d_P~u@x)Bff z-}iZRUd6LTkwh{Z5s9E@oU1$$ZsGS?eK7Jfz158xMLLN=pfDL+IMFvJ7|4Ye zJ@+VDdKjEdc$6QIS{QMVu~H>`aTcYsvo(!xaCzpFke57#v=p#MVr`F}aZ~;nwhYC0 zb3hT`9xyfIk!0cex;PuYI3wp_3^T$Kqt7(#;8<8zWW198F*6xrJ^|tv=0&FtX)0hJ zPCq(M0P#A?Do}l9wErCr^#UwiGSmFZ%ZgTjUB7S6C#E;;fuK-0m@w2hPo1G>a4U*| zV&PcE7C-X9A&gXKWDbwP)Igg_cpkMvze&18!-`Fqx+1>m*Asoa?;r0mQVD~F^{vj0 zRta|a9|#s65j-?cO_ACj*^ObyR%o>oEr6SG-Rk~&?!6~ds`gq`$d70mN zNnyKiHLL{acg?96SKl5$11gYz$ST0M<`tJZq(oA8&O2^tbx z$WqCAd%EXC%{S%0t3ZIPm5Qh|!B&~Y_wgvAp=x?xNev#VE@9{$un-As=fWqx0Xr<5 z$gt5@{&=$!RH5+MB9$faOC0QE{3|(sf%gpKK`PvZ?>NxA&yfgFO6mQIo=1af=Qvd? z4ns&Nj0|of)B}waKA>TA>gE^?RTjR%3o-)0EO`QtOs-nwuyAg(m4kzka_y%2-hg|= zw?*Jw&_s@!4~qcs2Vx=)7mgjLO?{$TDe$`?*#hrT(B@|lgS0Ej_-BTzzQm)H^?=>b zuy!g8UmP8P26&C~7Nq_GInhM^2_JYCVUzlDN&U&ZQ1rOmoT%c9V8d+|B3Ze7X1+@# z+RK;pYpD7GWRtO3rwhhSq<*9XoIlY0>do|6zTB-gTlLW3Se#$EBqA<$p%!Q(Zs&w` zB5|Ux8IPsqaYJZ#ePhjgwvtd;N^r4kvNdhOjh@hKMG_u^F};(7;hAk*>ASmlP^ z?Rbt6XU{?gnAZE)wZy#h{g{8w!1pFfcHym`3CDpIOd$h3XS;}ypb#S<3i*;zm+|eU zyV1Lpa~Oq?%-3#Jq|ZB861HzkW6|VFAf8r6q8Rh?7N-Fni^#i=XAf3J8iJ2&=ySia zp?iEq&%fraRAKA8AdvBnqDZ?l@uA!8w{*YPYKGYhkG_fXSnK# z6hG^!Vfh}gl3C=1nqhP>$@eP2 zPYyCriWN~Z7kb%;8!h)|9t&L4hZ%Ut7J7{;{yh&O0atriJPT5<*p8@NH+^u-aU<2~z!UbN_zh>Vr1PuZTToE1$J85D}w#va-H>+n3k!aenRP z%_NWN7Zd1>zg`jbMIFxf9O;()O@nw5ribUcFKOWK%kRU;@_wg)?}s>E-h|era9L<= z0cRILH_vLe1W+2-BpRjz~;T*!&{T|5JUUz);n|pnSaXa+^Nx^Te{L4?? zGey`^`Z2gU;Vf7~yxHLONlS}_^&7k%3TN<<*v?Z>HH1Gex}y6Avn%maVfmNEk8Zna zJ2h?i#$hA})m>#`o3|koH9#Gf%)m(2Nh`K4;Z@|c2@wxCs&db2VCO2=yfUJdnW+v@ zj1Lbt%AzR+^^RXLG1yr|J`nl`*!7e4noY8Y@Ky{JtTsEe;>|XkPW;h|@PN*h`ev{CdR+cjP`Q(eQZ6Lgl zTRXWU;tf443$W7yE)q@53C2JG-dUT45&w}3%v+w}uA!Ui{yt>9)9*EbjJP@4^gAcC z&Xn6a?9z0XLHmI8U?6&>@2!Vd#YgT}Y4JrTF9#O+a(XT0KPl-eYhe!b&Ms^%9J=0* z2JPneJj1?`6PxuX#^mWOvxgUL9Pz@4X05{FW~N~5>HJD<`vlYMXJ0a6Cy&jZ(QWc_ z#{R`q^=w%7_L}Z?74~~8>=Hlwz@aofyWc@|Pt+lh#@k%@g#`VlDU44o$-Bq1T})6n zSdl=n=qv)hk_<_>EQC4h3+~MN#ILSa6dIdB0bcxG?z0<^i-Q!tfDv0F5m^>ijRM;i<8F~tV&91>UF}Kddxvx^ zoB6pA4{Un_Oew2HxX6*WIZhg#UT9CPik9jtg^anj{s#kWT6SA&tqz||bmTLh?~{la zBpw?nyM$&`HWj|jOURcaWYp-V2L9N#x5M%@V`Jg?RvJ4^)sJ1+2Y)VO9Aj{($V2(d zt-LpEr_ttw653Gid&IVogw5}WM}v?_g`O!kg;CRkUu{m!e$L-M zYE&;MKfad2j=tqgQlN6WbvM~@d&y8g^R*o$HhKN*pk&6t>5QK*&}x$XSs^$U-h!^x z18WDrtLNugH|RErJtZ_DX(H%h*WCYm4ZeW@M%li64kdBm%k5Sjc9J}-V!A)ROV{|2 zRV;uolP06}sCU#UCi5_GEaHs%5;Ahr_5S^rIU-03-|bUy4(@+H+NiIIL9 z;$7Q~AYOnR#o0W^Z6=)XiT??fn-}4zoZk{mAH1mUjyra!Jgl)4uU8QQshxjZ01I80 zDm{<}<>k(6hfh@y9Y5rQIvl4E&$|x$g+zE4{Kqb;TW?eVD&NC;o;cWo_=28|v2+i_ zvzWGEM0UC0!qwF+=H?@~C$;0=@%al76{TlgPIQR{(C7B&9FXlkdk8WY@_reuJsB}yc^8V-xh4vegkcMEkIj>)LAFx6S(H*Yjd7dqZ-uRW< z-ww2aSrPf9*+=eX2-J8WPIJ!KG6djOY^ehygAb2e43F0MtyY~W_5?f_J(}g}UBMXW zPhcYecJL0_BN#t7hs9WL?I1vKEIR#55M>!hVM-RPixVGYB z$vwH5{fZHAyUKs6H52elkiA9f8;`bCjBaqf-T=2d1oRH(pYt@_D9bc=8^i z9)at)$JyU)@Avf>=Dtn*K|6GN%11V*ich?$upd|krlkq*hB@#gcPVA1BH?EpWN z`I2F9nZZ!i2kI97la&c(vEMVMU474^69w5eubv%5N?kD8yfj=R%c!%cn;8Q5qrEPkT^N#w+%fp{5u7E*=QbpB4~GMWS8Zs1-^G} zSV_@O%iQZx=y+21@9`u8$vg$-!!DqiP9Luo!bPoRt!z`PgT&5zCG&j0 zCxJKFf79uoVa}S|9Cjgf+qR@>oB{5K1?&2Cq**cDw)-+#1T=-!0l6#UX(y0lIV@eG z^{v5`lslQf7MwMiz9zB1mBnsdMVYBN9%V*TO+#Y}e?3AX|JxM(Yb4p% zzgaHaf42THEt!})bgq9H@z0jfORvIkkf%QgWV?B$y*w&7cyx&_~qqU2i| zd;8Zg{39s4eYJ3^RL6rpoT{54m`E|N?z;UX|5{i@F zyRl31?DI2niwSb}kx`iG=hi9mXunxXn`xMa`)E_qx=D-+Sv{KXLl1X;vf|5rI)kgG z8ARWVW?wQS=j)%835>UeTpeMl!p|@goD?U)^=a`i3_TEP}2Z0;gYn5&m3!B*RN5YuK6!*>yQ=O zT7p(L6k03G@$S6M!*%k9^PW1k5}tLQpSVd2Iw{-N*Kktvr>3Vrnrm_gTRtuhcna7a zo#iT>m_=%}i!c04i@i{%w(ZUm0iXy72$zKyxXYu~(jqi%Es4pnYwKAkM~VfQ z4BMJ97>xCl?2w_?on5|vMupAvKZKF%Hsnj%CDnB{Da;=z^4$a>jBs6a=WFxS@gzl_ z?j*SCq%=V6FC2P!gj7oA$funnH4hQBU-qPmySdkne^x2hw?5*jl0K09QbO;zF;y`k zvG&~r%*+XQFS7}62-t`=E+xA39Jcx3vvSdx;a^~sF9e!kDbbg=9byC~T4Pc*e= z5c|kp)$$Z5E(GB0AJoDbt1P!_dKkn&R1U|9IY*Km>t(%jOB1QquEqI%zr8O%kmIy&-{WBfZD>@no)W%pt7o zfN9b>BOCIz{bD&O8aHJs=F>3!Ft6{kz&AXmjTJ#px4kaJ`DPpbDC@<+U&s6eq=Zd5 zr=qc@M;O#hN!SZ)Q&di|bd7o#IND;dHas|lAv5AM14=G#tcDl3Ii~K>Ib^ghk6mQi zkV$88@@YnD2evw%a5>W0OErajGMJ>b}i;Nas1i$5!=P($yYF;%g30*=3aK`*U-xO#X#N zPIV7vuCo%7-9qhlxTdzy@l2O1ih@GgiF~>x#$t8R#)s_GozZf`^PX~#QnmQ;k)$E* zdtACp!EonHqf0C4~?Gn*u;QrGJQGfLe~(ij+mdvtxeD|BMLhG%~H zK(rG3&atUu0HLOIvYM`#umJ%8ELlFj=J_^H%$1e4qt%+E@^Vr-`r(tki-=pY2iMk* zyU5&$iDt%5$xell1v?s>&Yp$3wPC;J8qPN+7Ket$vTJ_?r#P$9AbW=Pc7AoKzWhCw zj@e8lJ|tzo;&qZ`_zjz+r&c63S^;%rdcP5zJT|~b03P3fREr6?5V8>32=~w#~QCdp7!x*DnjY!{K z7*nV{)>=1wv!&i)Lk-n&E~smI&qh#TX|&H4PIm43Qj9dboR-N6{s9+9Hy6r;7z8G2Zw3cli5z>qE|!>pv8(Wd+1Xpd=Go4Z zr-)JCM^`P@nlIz74U_qZT1T;=QmSq+z#k#wlR|8+7ki1h4Vx&RSBde)GsQyZq^3?2 zVy4lVPI$zAm)fXPJ_=pf6F|9=*Hksd*tGbkhi|eDdHX%L} zN2O7h7l(q$cGz~WvAqU^p%epN$K|&M&!S|uIQTpl9i{i*c}X^gIO$VV*2NP6FhQzr z7k9+X{EHSAjWQ#lZN!3J!P1%D{&a)@>FC8~LV0F1g-lcG&5@yiS)|{dt9h0zp&LWM zu1Cw{e5n_iaP<+*^>%Qgp!B$EHBbmxAnI$5uhSU(kgut-7jrgRyg7dd>l8lL8JnRd zUy{eeA9zFq7_f|y*X7YyJi@>yZAkml5}Sv5goaV)_@m`pek5>%QdW&3Jd?m|qMrLq zt$aNyKOW*dU#Z6gJxWNUh*}6%p(zEun$4D`;$}NM>N&4S1~+co%LLEzq^P1s>XsYx zz#-=3K|L^quVznYYUJyu2Rb&}(_(!mlf}ZL$}i5L;lhy|US8?U_c|I%3W`!IcGy=zjb*@&8VK#% zxcZF=etv`xmX_jmye1a!=}G7HjO@w=ehfoB-P-_#Bvl{Kj%FnETorreCK(tTK4}-r z{fefS$M4hw$h&wd zkYCZq2Ca&OvMy|nL!U`~w}hnRaGxzl_=#zmjaN$b`(Gl-m&U{OR{12z!~QtQxR1L`UDlH#M9v{#pzkFG**S z;3Hh`FQ++rbsBm`$wUy;N;y1cF%7o!TCW8x<0_sEeSP_&vh0$U2V2|`nb>fCz2T>l zBzuTCBJZ^Fh`6(X2lLUUmt6QR7Zcf>iL^qmtR;d=h(CbPXb-T-`s345opJ*1^2r;= z#4_V?&!!~e+)uIR53p{_O#U@VHRWXi4K63ywd=@Y?!0^Ed`;8*VbpU{n$r9x4jAq} z)Fjhos||s9MZFuJHf$8aAFSLUUCuZyKaP%hLNjNpUZv5GKK>-4AuQhQyZ7c$$5p0~ z(+ZX%kC9;a+AtM>UJN^HstlfxO(29EDG~C{Hc&~BLRnxg!+c4X8+{rQR z1j|H*t27!3ZYE(=xev$^I~!nh{H7bA1e*N8nf0>gTh+lKpL>bbT#cly*X_#f=~J~}9UdM@ zKEhU|6~5ZuZk41i8!eM71Blfe&<^n9U!H6NUVa)Z%IsO>HJ|rbCvc?WVtIL1ziO|G z^1TnKxz%@>Rf93_k|)hrY%xFl*Si3^LHsLWZ;wq6cMQS3zGbns@Wbv~Rfx$t>n-nU zf7M~J&**N9fu;_eYoD)hS65vVD@rrR76~bc-5l8mj;Wq{EKhWAkP?8H`ms)%EP?S0 z{29*->6@PO*NRM-KNGONa#vanXz1z0XO;tNOK~h$Bw|50AyJEWBgu1DSPvM6WUksw z3&XEkTw3J}u1(~b&%&}XL>qqsjRn|%`^}1n-~0T^$<_>hPfgUb{^n@YOx-7y)ysGk zt!f#fXUgGW4%9~w#La6c`POv~=iPpX&dYkD-G0m5hu*rqhAuvY}y_$@(yhNMiYh?%J>#x)2jequr%bRD#+i0db|2wSUh`zslGUhtn4#dMEK^7yU>+=l~y{V zZiB=9l{Sa|OI<}8E=CO`8&Rv)=s9Hd^#F&0%09<-AN>1!9tvE@$K5yWk17`d<#U{C;Ik{s2qFZ4jkfF5s!H4NW1p^1-o?hPE@u0`2N5+F@HI z^-y|x!^!!2bC8K@&T4XHwJZ4~znUSbS4KF%#2yfm^j(@NZ;5vF2Kv6WKXXUCUPbq< z2z8r1e_r20FJd!6awSc1Dd47A%8%@ks)}LnfP{>n{;NV$8{IzQgQ-TMRN+uu<$|>< zm0E{UNruIo?DO*}S5A^*!L;3!S9VY=XGfpr+%HIVXwTRRlKM!sOrA>a%z@2HqHGNA zvMs*LLkPEnE%%>dN45ulHl3}?^VB!bR(N)|d)@?8O$1gOThiML6f^mQAVoQvGok7p`{%m)v(y6OpX}&AA3?} z0na!oi9zN2;gL#SKS*TX1Wr`kTtB+81ubp2a;c^vsY4t!i#}qBW+5i^L;{nO6YmI* zl(F(bpz=pN=o>Q&ok<`VA!dw_Cu{{c3TRE`C_p{YzNL3;1zz;_5j&f18Jpn~C5k^7 z^EP)TAxs%p$dOi^@}1mwOTOScTGtny6p^G}!a@JDAhU*r$|YPF17??pfheiB#ogu~ zxzYNmjg7QZnAVl36k3Xh$Zui(Z(yze;e9AhypKso##WY7BmrWnVK9N zI&ge%eS*dA{_;s1PcsR*8$T5Q0rSY@O~>_odVlH$hy-+-ukiG8FxoG1LJN?N)qw27 zew!5om46hZ9-D)OvW{|P|5^GfDAun+`BR1ZXNBr?g(mZw5! zX>=<}=#shM@+@Yo?d2gk)|Us^2@ZL97$?&o3-)rTdVTBO{Th@R#>z!1&TZ#<)DPfg z{kYai@R@JuOys?Z{qMwwxS|5WgH!4Yzk%f5f#5x&Oc8uXo8@u8i21!YIa60>>K&2sX(Bi88t*vz0I^)&(=2KI zQHP8ee#DgFfQ%B@S)x#@r^WkQiFaCD0%OamV-OC&mF%5A_xJQliCjtI- zN6)#Oc*Dwk^%YLpfJ^nJ8-0-yzdB=pU!v-f;4i7^#v8HUk@^LnQ`W1MCc)3-o8Lx; z?1up%Esc}YK_FU9YKA!#d-5rQ;t!Auc%=Jf8Y}{xu+UIsm10qA^2lN$twdQmE=941 zwbfKWw9s71I@=Y*T7 zzcLH-(Ztp>?uh$A=)lQ5XJK$66{*s9LOhow#EOAX7>j+lDhU)=!lZ$3bNjDUDe>g| z&{B(mLtFv|%or+Yzi*}m_e`wGgIA*eWPfup#H5d;h#qvJ0xA8m){Sij%aNm{O2L+| zHFg#atf~(b3cgat?ga-~yRQFsV~b*SQW+vJ$w8^M9yq*&sIgU;C{mSyEC3t!D#dPUJAwHv!%OenxD=a-So>x{w`B~#2p}UoPNrD1fj>!H zRE|=nm@2j?=N%qb3wFgs#Jl%71tn?mj^SEt_#rV;4Gd^2y(iZj_A-D?`{`6aYgfpn zN2RuDWY=^Ev7bVQ8$)DdU^WqtfKY2(MS_|$pwDmOv@d&5D={=x{*97CyLlA!m_*1| zWFw_0dMCq0EtG{A@*`T6H;yt0!<17LkZ0QNOX$QYD*%F=H^(R>xH0&7tki#($;wfd zbWvut;=?9UaEdIYDiF!;XbbXjC_B?uonImX7=uu9`9m%m(<+MFF;P( z$%J`+Wt z+g$x#;&Gvq$Xpl;t^aV8C_j~+P+IC@e?R$w2_3+~7`o9MRI0Dxdg&ZXy!i-uB5vaN znolLGZHrg2H0a%DRJ57C*bzt7BKxt1)qCIL*C>5!`Pr5kwglJ+PymF5( zL8{-tbPcx{SUKsutywt=Z5F{n+`e>Hb4(wU-tA1T25|iDV_~F8X3KJ>-`#j;yRlss z68-f0D6!u{!u+~8L`#Qg%lN5<*ovs1h11Dg$m+eGoS#n+_l;B4^$@yRAjuW?5lHu2 z+5p#hj?FGTF-bl4^`eZt1lSB8D_Q|sh*B8`js;j1BJFXI2zRck+E~PfvzNp=AD$F+ zCvB_~rCAbGb)K02Dy7YRV4mS5?wRDYhI}UV0^=q$og6aVa1*>gqCTc4pRnsFZ{hAA zI_~)1KGAIxM_XPnfa zmpi^HH-~t8VoYEZleGjK}vB2~N0@cH+Qak$>Ze9g?| zSd%P<=#Qfj(713zcW8k;Vea!DFBJ#N@oT)*jzsu`uBF0W>G_An5)LWG^v2|-1JV4Z zkolGymM3IvxoZ~lJDtP{2Fdp}<}aDBwP*vZ3_;b}a@q}GI*&DYmt&z}k!hHvtxa>B z$vLld?=~P_A{Fnf_4%#pAg*E3Uaz$i`-W5t{uI~P zWL@o;VPOLRs+N2$&GR*`!YhJpM=LE+CnuzI!y_m2)f6iVM?$NzE5(Q@nXnPm820UV zD6%C%Gvcov3yOY zTu|Y1NA&GE=R*`APl;O~X#hf7M{(n;nCHKlS(#^Gvvp{H zPs@UDZOqX&sIbbubU9C;-GOhq)4kq_TKlRqAf6AKBi-r)mYmT}V+9HLH_nr{3Ea0G zNE6df28LQSm=VpMdqli9Y~)AB&0m43$vUZxDSfb3+$y-UJa;D=kr^%W7Ks_A-QSIN z$hjC8sHa`RZ3dK7hz)oaX3X9awT`ww6$~|V&5bL7E~>#R(5W)!Z(IdcX*CQ3>@c*ka^nH0nm7@raqS@Hb(h~`)sa~;5k zc<+{i7dY$?oIwh?1q^0VmdTsc6noiC0?lSzt7^=rt=_>$cZUnggvN!xIXp3lshHhf zDo!bDAnr#5{{Qo(lkit~1L&NePt z(2B~@Y{Kjyo|Zw6C2Kg$A(25_!v53SktD|K%I{x5a!D#$T43tU^eVsCvqpr@s`NB; zMH|l%N;N=(4?QaZIKO5;=^DrYwQ+0maVFPR$1N6ncThfQYfEX6i5M8XR#cGWrc76) zb_qd^8u25i-HKPr&TmbQrcm%y@*gg8R>Rv>RpCsq%zMqZ*c|F>gr?RVr{CZGkpDye zYRWC!Pj0100-M&UN8);my~g$(ZeP%>e411YyV#rvgQGzJh;4OFe6CP}XI(@gUwK(H zzRK1^%4GR!8Iyg?$WZv&pH{wtHm|WY__vZk&r_XGb4yOVQc+GbAZufob~Yho-};z5 zKaHo&T}>VLEgAwX!)Tv;iB?#WK-TaA#Y2(sOt4@_YV-72SqmRyG!8c<2p4A?4mrqS zXqYj#m4+xwSfta2f|XUubpV&jRM;m(md$1z9f9Cv&y*n%AuZ})@$+!l#Sk+M86d*J zV$DF2<0eLzKQ2r_c#hdXNrHf2j+Pe5*z?8OFf4BR;xnCG*dR({If(=)DE;E|@MX^} zOp{vTF3aqaIKXlPX-h@@)5pQng38?ZXd#gsu(gAhyh(1wx7EUoN=>Q^`OUKsSxgsp zmUjcK`<2GA&(A&r+cPOTpX9YcB$&dN45)I}PMEocDMA6o8!*Eq`7CwwW83rrxoFtF zpD5KO7vOppaLn9gsbgih5Sc4 zB}~#Ywe-$60SA9uy-p2h7a|iixtau^Uzd=h?85C#dAD`3&9#W|BVH*@(OLE_Cp+Hx zQ4(o>uaMN?7e$_RDWyDR0iX0DAHD}_s&5R)N*b&`-BB_$??c0{rn!ohwG*XlYcdM4 zI!^=D7CU!uSXWp3W%OQ%onK(WM&u;-88F%xI`51ypE6Z6;Yomy2bU<1t@!wg7w?WBT!c#e;~oVv~u6NMaBm0P+5x#&yhD|GY- zXw}T&xf@W;l;Fbt*+R=qG<8Icx34d z;*~E-36G(8`k1Ow|Qz;%-_> z96QxqtYvbFI|HT2CuQR6AV_}SKXB&2GL*qCE^oLjqIQqLt_OoR- z=c7f5KYIlgL(AUu#d*DpL-qRa*x%pd1&Ml^bvv}AO}ewUWl%Z_o~+LhojiY(RW4e^D3km3pCH>tjy;Rqbf1XhNB;GKZb=xgHmJw z-5Y(VF(CL#t!lTo=Wglr#~Ets>eH)J?$Y?ggD6HB$3N`A=|+*=2{qEZ!VpU8t^AsX zG|0J_m_vBvxTpYx?@{qi9FwCtl`27lwTa87VFOM1P3+$3KCqPh3%j6*`5I4GEMcRK zK6iU?5!<|X(1)h@f?vx@e!9DlY_;ik(JuDZl@*cP4z&aa8PlD~{4ejvw=wSyQRJ8xrhi*Ac|nR03V@U=-b)pHaChQc3_;o+r&y2uL@l*wdnShSxgp5w=Q=SXeKN=Ry^Hik19G&$){6P+Lha+ z?t}HY55{|eh>F_iR`8crOGj-LO{6NHajxGRmwXl5O#p1BB66==1&oZ?BJDc@U{rvU z0bX`x@6k(E+XF^i3E$DnOS`Mb8f{ArsQxBj-OzdV4HnWTNoEB8`T&zn9(yd`44%8~ z-3mEk>iPNJ$gX~;DZm>fWaQtgo^zjF>lWMjZ3-rqAD&EtP`b&M=D+Y(>`q;tA+qz| zEIUr@)_R`a(#AKTqt$1vOLPXx-q51_bbSz{Do84JV5VOs-AX(lA5G146qLhOk1Gd> z%~=V&lo%S352kzxg}+hC$zK%RC>9rZzEa{<+4}&lT1FP)0f<${@*E^xn)6^7Rc zihQ#rgFl|+2K}Ey)XH@_jDALMv=fm-dakao^{Z>R-$lHQ8XzPfAR~>6+phFA^<7n0 znFt&ft*_AO|4<|GA`*tIIgvNLL0%0c8ZkH(i$j4Z@uzTB;DwYQJ{eL{Te9eq(CF)G z)o2IkeiFGnk&lY|6h~EQb}3|_>wpHb_>!C#ZzUa1R+lc>+?Wzu*XZEgcx`9Cx%e~r z=ZEoH_(7hHTsA_0G4WzMseUPucWu^Dv)Sj%(sV(=NA&tu6so9G(8!7NRfDN0Ltwvd z)L5bCi`B>J7{is`!jp(n{d$~|53)-0gQHe-L(FW|wwDHpOuRwwNXU$7j86(xQCE)Gdvs&u<9WKf7AeS5?j64C z%rFd)rG7g3-e{q{;YD)9H+Wcq0hy*I9BphgGp2OW=l)DLcwINLC!8s1!6Gp=UqWl2 zwlAbfogS1RPdYPlU1r65SQ~?ZSQQ`MXFd5`ZYdgeC^a+L5tCro9;*HB2Qy^j;PAlS z&AD``{+lNLdjQD+b%y$wvon0Ijt)~vEEbs+8V`w1y{&f0h(OS6P%nAO_t>GF=7lOB z-U4|Y1P@r8$ks5Fij2ff&9i!m{gsOt7T!yX%-O;F6?=ba!|$hUkT#Zx94cK ziz9~>b>z|yvOGk|hM%M{-f|r+buW=%9L$c*iNTM*S{ueu%gvz`_SRvhb-}eL=Nd#W^ z4V(a0+;1y>r6N9-go@s=k%`z&ci3722Bn|F<9U-{Oac>6Xo3>9O$j;3orLnRhH$)L zUt4QjB0l?yi;FY3KcQbAtw_^7K@Q0k&G9bFQ^fxt!rnS4jxOxtj6xttAh^rm?k<6# z!C`RM!QCym+u-i*?hsrC_d$b0aCg{wzi+p;wrXql&#s!eeW$x`&2yjgJEyN&YKiaR z2*eb>1d$u_SP?&F9{vnmuVRGjMY!ff75fZLar%b(ba?#Fgc>3G*vkv*A{h)iBj`W9 z*=zzy1;QU3L~Jt*_vHlg%&v=xa2m0RC>a$~b6L8{Dvp0cxSoa1%Jb(BWbTtMnv?M^ ziB87K_(TW!W$89dcsbCczpR-Z-be_W^_#N9%1G@P^L@Fw0V`0T*W!Su{i;b&(-q0) zRz`$JWemE$MuClMnj>_5KaGH>n3%9bH16IL0u!C+Wz5X5dq9ZsY{|X+TyPo`c*n){ z?J?@&0d$KJRS;=PR$+;=Z>JxKQ95Plmqg7JD42xcd5CZr>)r4&2gKr-up@LS<`&0O z*GcN8qgN*In$YD{P^)wYPow zIfGNrkKwk4Qvg^qGLoCMG@l9hmRu1Za$fb z%PT85I65FPxK@ZY5|u@=Z>qyQ^57;%2v%C;HQD$DZ`R~S7TGA+$ z_ZD(FOgFD~4Q2}u503#xH{ksSVO}{sSL~NuYE4HhcX!=m@e}x}8!GbmynLQthS=2C z9_}47L4`c_Tmq#ns~M~(#TVS z$dPYl93lM4m>M4_2+eZZBi4mKjU41mCCA8Cvo1L%eRJ_zuej4eRhwmL<8AwsC6RTs zy4Nfd-qU5{0Vi6*`*pp;OM78+KK;YKtHVXm7=d|zQge=3i96K#_My4M;-ivae?alRgXCP2A zrr$L_mDQS==q#1o;*!GH=|IPmoXBEBz#=A>t{^sv)PWN(S_$#DG8;Y2(>qIJSsOg@ zHs80iIgJuLw$!?~8n06tDMG(~tMf-@^MtUB?p{e;wyvFJbNt6_w@iJraK>rm zRs5D6Ss-4%=v#+xE+uZpOky!6wirwO;Xje=f1&mN5bsT}G<8G}FHB*>Wv_ddII+Xd zrS&5Fz>z5z(F;>EjS?q}r$Fp#=PD5!vQ{eSg6q1u;sGPZBzO_|Qf3No?9X_x%z*#R z1sG$pRD~^ON>O$!Y%0-jg0qBPxMGSmnli&M)lc49ED1oM`c=F$%ZbwQ_4Bf?oNB#P zM*-}_SFq1jiU;UcKm94L34_QYqT2r{e5~7 zKF2eBZP$poHW$pd2v#=^%>@yB#?7Di6HBMWA^4E_IbDhjgFs{^-F~T3`+`PcCQ$ST zSs0Rd#K(~N-+|Jsc$7F&hIJ+e92Sc6NMWD^5dRO_%=a1ry0(9;IE|*vtB&Oh4L^M# z1&0UrY>_}LTI}RhfS{O{Xc*P`G+@$w<7Mnlen3F3UP6k5bjm`ql{ zMq4KyF>N(q!AbHfhnA-I_1(0}p0`g}U>w=dKf3)>M&&!|Bm8 zB4zZb9)Gc9Qg#f9nKV0I>jPt{hRfb!CY5=oz%>Z*{*#bz{BKq-1HDTL2mFUYuI`bY zV_ly|rnlavF`TZe09)4FsapxXmQv8~cz9RGzcOhEi(`4ik3GoEX-GA%1KF4H$*62k z5gS|8dxzgGye$L<9EtP| zG>Bn$03UQ@yBV_4nvGbj_}_zLR}e1Ei%G?d^Sc92oGa0=gF3}2+OUq0lATvTgXix;q!Qb8^YKm?v2S+M>XCU03*mk2bZi+|dhq-y001^u0g__IFdv|z%bO_7%U?jp z`gvMC37I+?{1d8E-PPocWJ=*9DCJ&;YfA>8O9Yg7Ly@9d;HM{NB9$Ox{@y?ODL*aT z`U@#V8X6jy0cP<>P2a49{y4r}eVMG_^P^}^`8SGJaQ`lZtD|R+fsY${2PD$uCak`3 zRpX=J>8~Zkhq||g2um9dMOQYA;l`9tIpkIikl(|9>|Zx4fRRhbdi9}af=&LVdap!k z^7Il(CdX9-mzOdr$jd@dnV-CvW>dr@iE{ZR_WrN$E>!STf>f+R-}}B(+r=47Fw0LQ zMfbfKtxc4%C|O|5CI52V?S2J{e6Euo9sPTJ7*FqgsmKej?De#{av_Bn zCYkcXH*iaFd~OHIKpYFjAoW2@d|EV8)mgSHwr?@h6-VCUVDlDe}B)u{*Mgd`nWbppyVp{2@<+ z5m`JQ0iF43!4o&?W42CA8o|~vl*kb0oV&8W?|twVO#>yLt}Ul&W@K3b0`e`}H>CK{ z5|EQPfgG1j2rdOy&dH9{a(lo}nU{v9hB!;=LG$T&B-EKTE=m5voN0V}4+lGFRnB5r z5$^H7JfV#Kf0tX%E3s@WZG7zrR6V=nynRM# z<8kte+mmw({HOo@DN;Ls5(SMhUOKEDm?XL_$=hy_)F$|gn~^}a2dufsN^yGwIQ{A=pF9qTBJ;RX<5=wtrNSzXA#a181O5RGO-*26$G7VB$wxKa zzw@$G=dx{aA>B?~vVwd{yrY}W)t9qx?n#){UBaT?99&U!KcD!zxLB4(_XtD64l7$C zad}}2@~qYc57B~U^env>$;Ek=SUQJAv$iaNKnU6^4Cv9n!VK z%;(q|n;59z31Fkj&PaeyhyGrR3%XbZQbORwCtD+I*ZC3S}%!Gr+`%+OO`q|GXE;IN)@;Qz9KKY4_X5H`G|X7t{pa zbui#M6b8cfCsS)efjyf&MN-9Tb{%mzty|B_43?bcYTZR=39Ltt{q-uKyxnI-kgCyAWlYBguXM}+8Y1MPHFxYx&x@{03FdomuXoM3l|nt=H=Y>J zuK7|0%K}fgJ-KHVV)C8%@80HP=ewau8X7VN99uH2O&34RNax${5%#np8`Zs&IuhHSiEbu+JU4R3F}!mEmxr|_-+I`R`B5cm#g zcR|#%HSl!}-g=y7-z%}&=!gefc8@j_wY~RjN!(=;f?QQs z7c#{DIUX}x?pSF#i?*b3EhAXD=HGbTH00l|&Q;nNm=FlT9a~CqTkG`N?K+~l!C|WC zD-2$$-?1lhw-LxSP9uc)$o~4pt+}n&A4Pzq>`PKwo}pU^yP%KORvY!%HLV%& zw%UIR9?4|z5bS37Jp~sDp%8gJTZ1z{qcOZgKA}ucbNsZt?E|0Ntm8uCXZ|A3zK-i< zxF%Ruo37$chf7v_bj3L40iHqA{trk;>?S3uh*sVPM7jma|htyrYOx$>P>sM)IyAR{FH7 z&R@1nS2hA&)AJaQtgBvk0>-rX zwYZIWLD+)3xn=!4HJg}STs7afA96z@n;pnp*LaBOXb)BVe^N%3mF1Kf&q%?^6Bkvw z09=LcnKSuxx5Lyp&-ebJMV2|){W}q(*M#;)dUlT;D3&VneA$ zs1Zy0ln14G#mGMQu_+t8P)fwf^AlbgVNOE+%gdsbKeVDrvc{1lDk>-{VgwmG#oiie7HJDac$SryGF|xmrKIGDFX%qP zI6-5Ir{yo`g+Ct+=1tspb9$RWmkW$?s~o3(CqcD%aZC2xzL7Nw zSy)-Ye%Rx&wHFz742) z_6P%FV(gJ=e=2a}&v_$_{r5-dru*ush&THk_%2)5V*rPs3|A&snaVDw$_I2QIcu%K zZTy!87cmx0meg*{!*0537`aN2d| zQpAA~s{`8af=`dVfxE_Q+3X@ysoZ?w;z8&wwk#+Ee|b7Qh~?4CreIiJFOG7lRS2kqha> zXcK=}F6J$oGrm+5{3xEyk7ETW(`?1P8`6?v`zD+Jfj1&zG#owQboO|;6P2bNT!c1{ zkqk)TXU*0rzpb;k{W@;K7(BGcD$P5ZmB>`ndPToiw9;}^q><24S+d8AM|(M4d6v^* zPp>?vLKd>jgllk@xe6&8e~N z`>cfu0R!FXT%3%#<@qsg;yt%nd^50Jm1*YdTIQ$yV*Oe3iI9J%g)xrC1Ltiv;)=EV zN%eoD@l%BgvFgP|MyvkrO$tSpJ27}hXB3@WOEpys{wcaChk6|_zMkfKmegwFK;a)f zLGqs`&weLys7imwRiTiQxBObU_Jfsn7>{th*Wa=IitW0gF|WSm0@HYQtu>x2*|wne z;BgcBj$)!zM+@q7PLIh(^w(0aGeSDKKY^8R;~|Dhz1aZ%s(23BH@P6+sb6MqGF`6A zH1_o)ME&ib#>Dl|MPz9~ZQZ+NW^b2jDR&Xp zq(P^odjzF`XrmtCov>6`f1iR&Z7QK+a!I&R;sMjfJvnh<#k0m>gb%Op$#6#KsQ(yo z87Kk0f`Ygwt%qd>J~*KcN)Gu~_#7fM{cEI_1{W;I@Dh<{N#}lm#Q`|C)uyt8ST!R} z$!Ms zC0uHb)PE3(`Ws6j-{r!4KeW6LKWyCotfBlw5oHrTR|FT z#Ti$10tcqaUBRo60W{=iIqvMN8~rjZ*A2(JP^><4XnT(X6HL|$atUSb?ggmx^z~JDcx=|=fGiOdGz$al}^Le z(+Of)iB^QCn4iaJv$8rN`a>LM00($jdn^@;pEh8}jgyL(E>@(#jiN_(4PeJ($3x&q z&1t`3*1FBg>FkV}JvnJ`{yDvC%y{Tl{4C%EawbVVI6?(Wn*1rjuiBUiGPlt{Zyx*N zJ53Hm=5%G;1FRi`CSAHgAqIy$hD;J3HuUCnEw z*@4^&&FxzF^{JVH;(LwqKC2mnG1{H0jYm#L3jyQ2_a4uRG85XP+M1d|#yaXr0EG~I zxX;4{O8wgi80+=ZQuzWxFSME6Etmj}L4D?2AX|SPLNHfpQJ7dhV4^UifTh$f-$QqsKRCYc{tE>=kxh>2cHJpyUsv1G<` zQghjWNf~$9yZV;F%UTgNxX3u2f)>9bmRfGPweF71tP1g~f$$c=uT4hBOWwa@C#0n8 z(d5#D{QoJ+IHD|mG14Vc>d5v^Z=Ok=(r^3;Z9gQuMPWKMV3lkjUg^pD&ZWRP-mYl zwKjyM`3+gGH8=J0SUVh1z=?QmY|v;3m*6~pY-tkHFOEPDfdiPR&6%DhZFGmh>N8^u zMjZCQhjMHS%0h*Ar2)Uo$|R-1%6v&zOXS@JeanBwn^(u8+z}x@7orRI zt;R39oMvp+r$`M{i?z-JN}RG5TfwyhzrQGM)?<`er1eb99z$CRi#PMuy74}`ccG8{ zgJ*v|YrbTg8(-$asy!ACMYysxShvnExzhmg-1OR=aisRpTgI7uL3MH1nNp;uP^HDE zjf=_L`3u9-J@60+d_vR~GK+50_-G~=A7Xv{P|C;svzUwJ2=z zQYA)GLcE!7-@5gYy7Ebma1Wa9GatfAq@52_hfCTFjGbEc3_sFg++gIIW` zOn{A*``leeF{&ldfWa&}A!ze&5BbvNjMcJ7irr(K{i#^~Z&b(}(#y#ZPol%Dc1nmM zRjy+atM`JF>e({~9hN{C&v$)oAfuAiZyn3^zm=J5_k;BMqb+!KopPryPrjWyw}r4= zrK_bZ7o;v0uM5c6($QKJVrSOj1rw&raw;U(EGJX($XcsC z6HMdrxO)b5iWOv39j@w_jwi-{nhW{Fo>0C~w8!0u!&B^9onzI8 zLn($&9|)a3-Y(<0Qg6Qbrp3juKhHu=(_!*qU^j7xFR9*gTnTF*A2*e$-thsS;6z@T zt1#TFIPsNET`9IvlSEF<^J@sI)`6{MekGOcZoj!UpC@aE?zlb)Lb!*N+JFjsQc&}H z*k(a0tnbi|Z)>CP1SEpip=7F3Zl7%*T#&oTHYV)wOovurzOssP4AfTsdYBGtOkQU- z7~P*>@{K}WBfnlJHmiwGKgxM4#N=O}=^f0o%6mBplo8VwGGSk*|0+Ek#06_81ZcT! znIY_Szv1Nfcj%KpsWEJMN-X43 zjO(k!She&TPT|m4TbS zQ)|XG^c1h6ClmyoE!uL-&`MW{=guRnSn0@KYj<(<5N8;*!+w_!m2okL@j7X}kJ${{ z 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 A>Hq)$ literal 0 HcmV?d00001 diff --git "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" index c1a4e7c24d..77a573797b 100644 --- "a/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" +++ "b/docs/Steuerbare Verbrauchseinrichtungen nach \302\24714a.md" @@ -1,4 +1,5 @@ -## Stuerbare Verbrauchseinrichtungen (SteuVE) nach § 14a EnGW +## Steuerbare Verbrauchseinrichtungen (SteuVE) nach § 14a EnGW + Der Gesetzgeber sieht verschiedene Möglichkeiten für steuerbare Verbrauchseinrichtungen vor. Für jede steuerbare Verbrauchseinrichtung kann eine andere Option angemeldet werden. Bei der Konfiguration muss deshalb auch immer der/die Ladepunkte angegeben werden, für die die IO-Aktion angewendet werden soll. ### Dimmen per EMS @@ -13,15 +14,26 @@ Pro steuerbarer Verbrauchseinrichtung muss eine IO-Aktion konfiguriert werden un ### Rundsteuer-Empfänger-Kontakt (RSE) -Für den RSE-Kontakt kann ein Muster aus verschiedenen Eingängen und ein Prozentwert, auf den die Anschlussleistung begrenzt wird, angegeben werden. +Für den RSE-Kontakt können Muster aus verschiedenen Eingängen angegeben werden. Es kann frei festgelegt werden, bei welchem Muster die zugeordneten Ladepunkte Gesperrt oder freigegeben sind. + +In der abgebildeten Konfiguration werden die Ladepunkte nur freigegeben, wenn beide Kontakte DI1 und DI2 geschlossen sind. Ist auch nur einer geöffnet, wird gesperrt. + +![RSE-Beispielkonfiguration](RSE-Beispielkonfiguration.png) ## Steuerbare Erzeugungsanlagen (EZA) nach § 9 EEG -Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung an. +Bitte beachten: Die openWB steuert keinen Wechselrichter an. Sie zeigt lediglich den aktuellen Zustand der Beschränkung an und kann optional das Signal der Eingänge an Ausgänge durchreichen. + +Die Einspeise- oder Erzeugungsleistung der EZA (abhängig von der Implementierung in der EZA) wird über drei potentialfreie Signalkontakte der FNN-Steuerbox geregelt. Die openWB übernimmt dabei keine direkte Steuerung des Wechselrichters, sondern visualisiert lediglich und protokolliert den aktuellen Steuerzustand. + +Das Signalkabel der FNN-Steuerbox muss daher beispielsweise über ein Koppelrelais mit zwei separaten Schließer-/Wechselkontakten mit dem I/O-Modul der openWB und der Erzeugungsanlage verbunden werden. Falls dies nicht möglich ist, kann die Steuerbox über einfache Koppelrelais mit dem I/O-Modul der openWB verbunden werden und das empfangene Signal an vorhandene Ausgänge des I/O-Moduls (falls vorhanden) durchgereicht werden. -Die Einspeiseleistung des Wechselrichters wird über drei Signalkontakte der FNN-Steuerbox geregelt. Die openWB übernimmt dabei keine direkte Steuerung des Wechselrichters, sondern visualisiert lediglich den aktuellen Steuerzustand. Das Signalkabel der FNN-Steuerbox muss daher beispielsweise über eine Doppelklemme mit dem I/O-Modul der openWB verbunden und anschließend zum Wechselrichter weitergeführt (durchgeschliffen) werden. Die Signalkontakte bilden folgende Zustände ab: S1 -> 60% der EZA S2 -> 30% der EZA W3 -> 0% der EZA alle Kontakte offen -> 100% der EZA + +Die Eingangsmuster sind so zu konfigurieren, dass auch bei mehreren geschlossenen Kontakten eine eindeutige Funktion gewährleistet wird. In der abgebildeten Konfiguration hat z.B. der Eingang DI5 für Begrenzung auf 0% Priorität, sodass dieses Muster auch erkannt wird, falls noch einer der Eingänge DI3 oder DI4 geschlossen sind. + +![EZA-Beispielkonfiguration](EZA-Beispielkonfiguration.png)