From e706d7ff268a6a5cf3ff000ea7c3867e39047eca Mon Sep 17 00:00:00 2001 From: Wing Li Date: Sun, 20 Nov 2022 18:41:11 -0800 Subject: [PATCH 1/7] docs(psci): add design proposal for OS-initiated mode Change-Id: Ia3662e08d98d01a93951309835816969e1602624 Signed-off-by: Wing Li --- docs/design_documents/index.rst | 1 + docs/design_documents/psci_osi_mode.rst | 716 ++++++++++++++++++ ...-flattened-vs-hierarchical-idle-states.png | Bin 0 -> 104883 bytes docs/resources/diagrams/psci-osi-mode.png | Bin 0 -> 163553 bytes .../diagrams/psci-pc-mode-vs-osi-mode.png | Bin 0 -> 101822 bytes 5 files changed, 717 insertions(+) create mode 100644 docs/design_documents/psci_osi_mode.rst create mode 100644 docs/resources/diagrams/psci-flattened-vs-hierarchical-idle-states.png create mode 100644 docs/resources/diagrams/psci-osi-mode.png create mode 100644 docs/resources/diagrams/psci-pc-mode-vs-osi-mode.png diff --git a/docs/design_documents/index.rst b/docs/design_documents/index.rst index 3d82e69cb..d20fc5809 100644 --- a/docs/design_documents/index.rst +++ b/docs/design_documents/index.rst @@ -10,6 +10,7 @@ Design Documents measured_boot_poc drtm_poc rss + psci_osi_mode -------------- diff --git a/docs/design_documents/psci_osi_mode.rst b/docs/design_documents/psci_osi_mode.rst new file mode 100644 index 000000000..3296e270c --- /dev/null +++ b/docs/design_documents/psci_osi_mode.rst @@ -0,0 +1,716 @@ +PSCI OS-initiated mode +====================== + +:Author: Maulik Shah & Wing Li +:Organization: Qualcomm Innovation Center, Inc. & Google LLC +:Contact: Maulik Shah & Wing Li +:Status: RFC + +.. contents:: Table of Contents + +Introduction +------------ + +Power state coordination +^^^^^^^^^^^^^^^^^^^^^^^^ + +A power domain topology is a logical hierarchy of power domains in a system that +arises from the physical dependencies between power domains. + +Local power states describe power states for an individual node, and composite +power states describe the combined power states for an individual node and its +parent node(s). + +Entry into low-power states for a topology node above the core level requires +coordinating its children nodes. For example, in a system with a power domain +that encompasses a shared cache, and a separate power domain for each core that +uses the shared cache, the core power domains must be powered down before the +shared cache power domain can be powered down. + +PSCI supports two modes of power state coordination: platform-coordinated and +OS-initiated. + +Platform-coordinated +~~~~~~~~~~~~~~~~~~~~ + +Platform-coordinated mode is the default mode of power state coordination, and +is currently the only supported mode in TF-A. + +In platform-coordinated mode, the platform is responsible for coordinating power +states, and chooses the deepest power state for a topology node that can be +tolerated by its children. + +OS-initiated +~~~~~~~~~~~~ + +OS-initiated mode is optional. + +In OS-initiated mode, the calling OS is responsible for coordinating power +states, and may request for a topology node to enter a low-power state when +its last child enters the low-power state. + +Motivation +---------- + +There are two reasons why OS-initiated mode might be a more suitable option than +platform-coordinated mode for a platform. + +Scalability +^^^^^^^^^^^ + +In platform-coordinated mode, each core independently selects their own local +power states, and doesn't account for composite power states that are shared +between cores. + +In OS-initiated mode, the OS has knowledge of the next wakeup event for each +core, and can have more precise control over the entry, exit, and wakeup +latencies when deciding if a composite power state (e.g. for a cluster) is +appropriate. This is especially important for multi-cluster SMP systems and +heterogeneous systems like big.LITTLE, where different processor types can have +different power efficiencies. + +Simplicity +^^^^^^^^^^ + +In platform-coordinated mode, the OS doesn't have visibility when the last core +at a power level enters a low-power state. If the OS wants to perform last man +activity (e.g. powering off a shared resource when it is no longer needed), it +would have to communicate with an API side channel to know when it can do so. +This could result in a design smell where the platform is using +platform-coordinated mode when it should be using OS-initiated mode instead. + +In OS-initiated mode, the OS can perform last man activity if it selects a +composite power state when the last core enters a low-power state. This +eliminates the need for a side channel, and uses the well documented API between +the OS and the platform. + +Current vendor implementations and workarounds +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +* STMicroelectronics + + * For their ARM32 platforms, they're using OS-initiated mode implemented in + OP-TEE. + * For their future ARM64 platforms, they are interested in using OS-initiated + mode in TF-A. + +* Qualcomm + + * For their mobile platforms, they're using OS-initiated mode implemented in + their own custom secure monitor firmware. + * For their Chrome OS platforms, they're using platform-coordinated mode in + TF-A with custom driver logic to perform last man activity. + +* Google + + * They're using platform-coordinated mode in TF-A with custom driver logic to + perform last man activity. + +Both Qualcomm and Google would like to be able to use OS-initiated mode in TF-A +in order to simplify custom driver logic. + +Requirements +------------ + +PSCI_FEATURES +^^^^^^^^^^^^^ + +PSCI_FEATURES is for checking whether or not a PSCI function is implemented and +what its properties are. + +.. c:macro:: PSCI_FEATURES + + :param func_id: 0x8400_000A. + :param psci_func_id: the function ID of a PSCI function. + :retval NOT_SUPPORTED: if the function is not implemented. + :retval feature flags associated with the function: if the function is + implemented. + +CPU_SUSPEND feature flags +~~~~~~~~~~~~~~~~~~~~~~~~~ + +* Reserved, bits[31:2] +* Power state parameter format, bit[1] + + * A value of 0 indicates the original format is used. + * A value of 1 indicates the extended format is used. + +* OS-initiated mode, bit[0] + + * A value of 0 indicates OS-initiated mode is not supported. + * A value of 1 indicates OS-initiated mode is supported. + +See sections 5.1.14 and 5.15 of the PSCI spec (DEN0022D.b) for more details. + +PSCI_SET_SUSPEND_MODE +^^^^^^^^^^^^^^^^^^^^^ + +PSCI_SET_SUSPEND_MODE is for switching between the two different modes of power +state coordination. + +.. c:macro:: PSCI_SET_SUSPEND_MODE + + :param func_id: 0x8400_000F. + :param mode: 0 indicates platform-coordinated mode, 1 indicates OS-initiated + mode. + :retval SUCCESS: if the request is successful. + :retval NOT_SUPPORTED: if OS-initiated mode is not supported. + :retval INVALID_PARAMETERS: if the requested mode is not a valid value (0 or + 1). + :retval DENIED: if the cores are not in the correct state. + +Switching from platform-coordinated to OS-initiated is only allowed if the +following conditions are met: + +* All cores are in one of the following states: + + * Running. + * Off, through a call to CPU_OFF or not yet booted. + * Suspended, through a call to CPU_DEFAULT_SUSPEND. + +* None of the cores has called CPU_SUSPEND since the last change of mode or + boot. + +Switching from OS-initiated to platform-coordinated is only allowed if all cores +other than the calling core are off, either through a call to CPU_OFF or not yet +booted. + +If these conditions are not met, the PSCI implementation must return DENIED. + +See sections 5.1.19 and 5.20 of the PSCI spec (DEN0022D.b) for more details. + +CPU_SUSPEND +^^^^^^^^^^^ + +CPU_SUSPEND is for moving a topology node into a low-power state. + +.. c:macro:: CPU_SUSPEND + + :param func_id: 0xC400_0001. + :param power_state: the requested low-power state to enter. + :param entry_point_address: the address at which the core must resume + execution following wakeup from a powerdown state. + :param context_id: this field specifies a pointer to the saved context that + must be restored on a core following wakeup from a powerdown state. + :retval SUCCESS: if the request is successful. + :retval INVALID_PARAMETERS: in OS-initiated mode, this error is returned when + a low-power state is requested for a topology node above the core level, + and at least one of the node's children is in a local low-power state + that is incompatible with the request. + :retval INVALID_ADDRESS: if the entry_point_address argument is invalid. + :retval DENIED: only in OS-initiated mode; this error is returned when a + low-power state is requested for a topology node above the core level, + and at least one of the node's children is running, i.e. not in a + low-power state. + +In platform-coordinated mode, the PSCI implementation coordinates requests from +all cores to determine the deepest power state to enter. + +In OS-initiated mode, the calling OS is making an explicit request for a +specific power state, as opposed to expressing a vote. The PSCI implementation +must comply with the request, unless the request is not consistent with the +implementation's view of the system's state, in which case, the implementation +must return INVALID_PARAMETERS or DENIED. + +See sections 5.1.2 and 5.4 of the PSCI spec (DEN0022D.b) for more details. + +Power state formats +~~~~~~~~~~~~~~~~~~~ + +Original format + +* Power Level, bits[25:24] + + * The requested level in the power domain topology to enter a low-power + state. + +* State Type, bit[16] + + * A value of 0 indicates a standby or retention state. + * A value of 1 indicates a powerdown state. + +* State ID, bits[15:0] + + * Field to specify the requested composite power state. + * The state ID encodings must uniquely describe every possible composite + power state. + * In OS-initiated mode, the state ID encoding must allow expressing the + power level at which the calling core is the last to enter a powerdown + state. + +Extended format + +* State Type, bit[30] +* State ID, bits[27:0] + +Races in OS-initiated mode +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In OS-initiated mode, there are race windows where the OS's view and +implementation's view of the system's state differ. It is possible for the OS to +make requests that are invalid given the implementation's view of the system's +state. For example, the OS might request a powerdown state for a node from one +core, while at the same time, the implementation observes that another core in +that node is powering up. + +To address potential race conditions in power state requests: + +* The calling OS must specify in each CPU_SUSPEND request the deepest power + level for which it sees the calling core as the last running core (last man). + This is required even if the OS doesn't want the node at that power level to + enter a low-power state. +* The implementation must validate that the requested power states in the + CPU_SUSPEND request are consistent with the system's state, and that the + calling core is the last core running at the requested power level, or deny + the request otherwise. + +See sections 4.2.3.2, 6.2, and 6.3 of the PSCI spec (DEN0022D.b) for more +details. + +Caveats +------- + +CPU_OFF +^^^^^^^ + +CPU_OFF is always platform-coordinated, regardless of whether the power state +coordination mode for suspend is platform-coordinated or OS-initiated. If all +cores in a topology node call CPU_OFF, the last core will power down the node. + +In OS-initiated mode, if a subset of the cores in a topology node has called +CPU_OFF, the last running core may call CPU_SUSPEND to request a powerdown state +at or above that node's power level. + +See section 5.5.2 of the PSCI spec (DEN0022D.b) for more details. + +Implementation +-------------- + +Current implementation of platform-coordinated mode +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Platform-coordinated is currently the only supported power state coordination +mode in TF-A. + +The functions of interest in the ``psci_cpu_suspend`` call stack are as follows: + +* ``psci_validate_power_state`` + + * This function calls a platform specific ``validate_power_state`` handler, + which takes the ``power_state`` parameter, and updates the ``state_info`` + object with the requested states for each power level. + +* ``psci_find_target_suspend_lvl`` + + * This function takes the ``state_info`` object containing the requested power + states for each power level, and returns the deepest power level that was + requested to enter a low power state, i.e. the target power level. + +* ``psci_do_state_coordination`` + + * This function takes the target power level and the ``state_info`` object + containing the requested power states for each power level, and updates the + ``state_info`` object with the coordinated target power state for each + level. + +* ``pwr_domain_suspend`` + + * This is a platform specific handler that takes the ``state_info`` object + containing the target power states for each power level, and transitions + each power level to the specified power state. + +Proposed implementation of OS-initiated mode +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +To add support for OS-initiated mode, the following changes are proposed: + +* Add a boolean build option ``PSCI_OS_INIT_MODE`` for a platform to enable + optional support for PSCI OS-initiated mode. This build option defaults to 0. + +.. note:: + + If ``PSCI_OS_INIT_MODE=0``, the following changes will not be compiled into + the build. + +* Update ``psci_features`` to return 1 in bit[0] to indicate support for + OS-initiated mode for CPU_SUSPEND. +* Define a ``suspend_mode`` enum: ``PLAT_COORD`` and ``OS_INIT``. +* Define a ``psci_suspend_mode`` global variable with a default value of + ``PLAT_COORD``. +* Implement a new function handler ``psci_set_suspend_mode`` for + PSCI_SET_SUSPEND_MODE. +* Since ``psci_validate_power_state`` calls a platform specific + ``validate_power_state`` handler, the platform implementation should populate + the ``state_info`` object based on the state ID from the given ``power_state`` + parameter. +* ``psci_find_target_suspend_lvl`` remains unchanged. +* Implement a new function ``psci_validate_state_coordination`` that ensures the + request satisfies the following conditions, and denies any requests + that don't: + + * The requested power states for each power level are consistent with the + system's state + * The calling core is the last core running at the requested power level + + This function differs from ``psci_do_state_coordination`` in that: + + * The ``psci_req_local_pwr_states`` map is not modified if the request were to + be denied + * The ``state_info`` argument is never modified since it contains the power + states requested by the calling OS + +* Update ``psci_cpu_suspend_start`` to do the following: + + * If ``PSCI_SUSPEND_MODE`` is ``PLAT_COORD``, call + ``psci_do_state_coordination``. + * If ``PSCI_SUSPEND_MODE`` is ``OS_INIT``, call + ``psci_validate_state_coordination``. If validation fails, propagate the + error up the call stack. + +* Update the return type of the platform specific ``pwr_domain_suspend`` + handler from ``void`` to ``int``, to allow the platform to optionally perform + validations based on hardware states. + +.. image:: ../resources/diagrams/psci-osi-mode.png + +Testing +------- + +The proposed patches can be found at +https://review.trustedfirmware.org/q/topic:psci-osi. + +Testing on FVP and Google platforms +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The proposed patches add a new CPU Suspend in OSI mode test suite to TF-A Tests. +This has been enabled and verified on the FVP_Base_RevC-2xAEMvA platform and +Google platforms, and excluded from all other platforms via the build option +``PLAT_TESTS_SKIP_LIST``. + +Testing on STM32MP15 +^^^^^^^^^^^^^^^^^^^^ + +The proposed patches have been tested and verified on the STM32MP15 platform, +which has a single cluster with 2 CPUs, by Gabriel Fernandez + from STMicroelectronics with this device tree +configuration: + +.. code-block:: devicetree + + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu0: cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a7"; + reg = <0>; + enable-method = "psci"; + power-domains = <&CPU_PD0>; + power-domain-names = "psci"; + }; + cpu1: cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a7"; + reg = <1>; + enable-method = "psci"; + power-domains = <&CPU_PD1>; + power-domain-names = "psci"; + }; + + idle-states { + cpu_retention: cpu-retention { + compatible = "arm,idle-state"; + arm,psci-suspend-param = <0x00000001>; + entry-latency-us = <130>; + exit-latency-us = <620>; + min-residency-us = <700>; + local-timer-stop; + }; + }; + + domain-idle-states { + CLUSTER_STOP: core-power-domain { + compatible = "domain-idle-state"; + arm,psci-suspend-param = <0x01000001>; + entry-latency-us = <230>; + exit-latency-us = <720>; + min-residency-us = <2000>; + local-timer-stop; + }; + }; + }; + + psci { + compatible = "arm,psci-1.0"; + method = "smc"; + + CPU_PD0: power-domain-cpu0 { + #power-domain-cells = <0>; + power-domains = <&pd_core>; + domain-idle-states = <&cpu_retention>; + }; + + CPU_PD1: power-domain-cpu1 { + #power-domain-cells = <0>; + power-domains = <&pd_core>; + domain-idle-states = <&cpu_retention>; + }; + + pd_core: power-domain-cluster { + #power-domain-cells = <0>; + domain-idle-states = <&CLUSTER_STOP>; + }; + }; + +Testing on Qualcomm SC7280 +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The proposed patches have been tested and verified on the SC7280 platform by +Maulik Shah from Qualcomm with this device tree +configuration: + +.. code-block:: devicetree + + cpus { + #address-cells = <2>; + #size-cells = <0>; + + CPU0: cpu@0 { + device_type = "cpu"; + compatible = "arm,kryo"; + reg = <0x0 0x0>; + enable-method = "psci"; + power-domains = <&CPU_PD0>; + power-domain-names = "psci"; + }; + + CPU1: cpu@100 { + device_type = "cpu"; + compatible = "arm,kryo"; + reg = <0x0 0x100>; + enable-method = "psci"; + power-domains = <&CPU_PD1>; + power-domain-names = "psci"; + }; + + CPU2: cpu@200 { + device_type = "cpu"; + compatible = "arm,kryo"; + reg = <0x0 0x200>; + enable-method = "psci"; + power-domains = <&CPU_PD2>; + power-domain-names = "psci"; + }; + + CPU3: cpu@300 { + device_type = "cpu"; + compatible = "arm,kryo"; + reg = <0x0 0x300>; + enable-method = "psci"; + power-domains = <&CPU_PD3>; + power-domain-names = "psci"; + } + + CPU4: cpu@400 { + device_type = "cpu"; + compatible = "arm,kryo"; + reg = <0x0 0x400>; + enable-method = "psci"; + power-domains = <&CPU_PD4>; + power-domain-names = "psci"; + }; + + CPU5: cpu@500 { + device_type = "cpu"; + compatible = "arm,kryo"; + reg = <0x0 0x500>; + enable-method = "psci"; + power-domains = <&CPU_PD5>; + power-domain-names = "psci"; + }; + + CPU6: cpu@600 { + device_type = "cpu"; + compatible = "arm,kryo"; + reg = <0x0 0x600>; + enable-method = "psci"; + power-domains = <&CPU_PD6>; + power-domain-names = "psci"; + }; + + CPU7: cpu@700 { + device_type = "cpu"; + compatible = "arm,kryo"; + reg = <0x0 0x700>; + enable-method = "psci"; + power-domains = <&CPU_PD7>; + power-domain-names = "psci"; + }; + + idle-states { + entry-method = "psci"; + + LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 { + compatible = "arm,idle-state"; + idle-state-name = "little-power-down"; + arm,psci-suspend-param = <0x40000003>; + entry-latency-us = <549>; + exit-latency-us = <901>; + min-residency-us = <1774>; + local-timer-stop; + }; + + LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 { + compatible = "arm,idle-state"; + idle-state-name = "little-rail-power-down"; + arm,psci-suspend-param = <0x40000004>; + entry-latency-us = <702>; + exit-latency-us = <915>; + min-residency-us = <4001>; + local-timer-stop; + }; + + BIG_CPU_SLEEP_0: cpu-sleep-1-0 { + compatible = "arm,idle-state"; + idle-state-name = "big-power-down"; + arm,psci-suspend-param = <0x40000003>; + entry-latency-us = <523>; + exit-latency-us = <1244>; + min-residency-us = <2207>; + local-timer-stop; + }; + + BIG_CPU_SLEEP_1: cpu-sleep-1-1 { + compatible = "arm,idle-state"; + idle-state-name = "big-rail-power-down"; + arm,psci-suspend-param = <0x40000004>; + entry-latency-us = <526>; + exit-latency-us = <1854>; + min-residency-us = <5555>; + local-timer-stop; + }; + }; + + domain-idle-states { + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + idle-state-name = "cluster-power-down"; + arm,psci-suspend-param = <0x40003444>; + entry-latency-us = <3263>; + exit-latency-us = <6562>; + min-residency-us = <9926>; + local-timer-stop; + }; + }; + }; + + psci { + compatible = "arm,psci-1.0"; + method = "smc"; + + CPU_PD0: cpu0 { + #power-domain-cells = <0>; + power-domains = <&CLUSTER_PD>; + domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; + }; + + CPU_PD1: cpu1 { + #power-domain-cells = <0>; + power-domains = <&CLUSTER_PD>; + domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; + }; + + CPU_PD2: cpu2 { + #power-domain-cells = <0>; + power-domains = <&CLUSTER_PD>; + domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; + }; + + CPU_PD3: cpu3 { + #power-domain-cells = <0>; + power-domains = <&CLUSTER_PD>; + domain-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; + }; + + CPU_PD4: cpu4 { + #power-domain-cells = <0>; + power-domains = <&CLUSTER_PD>; + domain-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; + }; + + CPU_PD5: cpu5 { + #power-domain-cells = <0>; + power-domains = <&CLUSTER_PD>; + domain-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; + }; + + CPU_PD6: cpu6 { + #power-domain-cells = <0>; + power-domains = <&CLUSTER_PD>; + domain-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; + }; + + CPU_PD7: cpu7 { + #power-domain-cells = <0>; + power-domains = <&CLUSTER_PD>; + domain-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; + }; + + CLUSTER_PD: cpu-cluster0 { + #power-domain-cells = <0>; + domain-idle-states = <&CLUSTER_SLEEP_0>; + }; + }; + +Comparisons on Qualcomm SC7280 +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +CPUIdle states +~~~~~~~~~~~~~~ + +* 8 CPUs, 1 L3 cache +* Platform-coordinated mode + + * CPUIdle states + + * State0 - WFI + * State1 - Core collapse + * State2 - Rail collapse + * State3 - L3 cache off and system resources voted off + +* OS-initiated mode + + * CPUIdle states + + * State0 - WFI + * State1 - Core collapse + * State2 - Rail collapse + + * Cluster domain idle state + + * State3 - L3 cache off and system resources voted off + +.. image:: ../resources/diagrams/psci-flattened-vs-hierarchical-idle-states.png + +Results +~~~~~~~ + +* The following stats have been captured with fixed CPU frequencies from the use + case of 10 seconds of device idle with the display turned on and Wi-Fi and + modem turned off. +* Count refers to the number of times a CPU or cluster entered power collapse. +* Residency refers to the time in seconds a CPU or cluster stayed in power + collapse. +* The results are an average of 3 iterations of actual counts and residencies. + +.. image:: ../resources/diagrams/psci-pc-mode-vs-osi-mode.png + +OS-initiated mode was able to scale better than platform-coordinated mode for +multiple CPUs. The count and residency results for state3 (i.e. a cluster domain +idle state) in OS-initiated mode for multiple CPUs were much closer to the +results for a single CPU than in platform-coordinated mode. + +-------------- + +*Copyright (c) 2023, Arm Limited and Contributors. All rights reserved.* diff --git a/docs/resources/diagrams/psci-flattened-vs-hierarchical-idle-states.png b/docs/resources/diagrams/psci-flattened-vs-hierarchical-idle-states.png new file mode 100644 index 0000000000000000000000000000000000000000..7c41f75ddce9c6af282152d1483a1d8f74bdf820 GIT binary patch literal 104883 zcmeFZc{J4h|2M9ya7A%NQc5aCHARJFoy(RjOJwX+lAY|?W-26P%PvFqb&O?@WlWS5 zS;pA6QMO?)mKn>K<$jN@&-e5Bo!|Y}ea?N({l~{Sj$ypF$LqN~9?$3VHIat;nn$^W zxY*d(j%sVE8?mu*?y#}3U;gtC;4k8_8K%IG1KviOs%#ZKXBL594mqgksj#tC#c|Uf zu>-#!ex_ya&Bn&(!}>lj^;G0J8ymAgTV3VBbDL%Q(LQ@?n_>UnfloKY?0nTug~sPw zmh_t?2R4S@{PJPKny*VcVMI7|!zgmH;P73ICgS}s7l$U?ItOOkf32>wpZ~gaJJe1( zW%8wi>dQ|d?=P!<$by_x7gL?#=TzsM5b&kf05j~*%sHZVWeF(VO{V#`Tb@2bZe*53oEG!)Ui^Ff*_%9Cs#o@m;@LwDF zzhnb1xYtC%8=^?$VvOumrD;^N)0^Z2f=hEdJmCq^i!;ElkU>RZ#Q zPM+?^Mgu5=rikA+@Y-XCBPg9`w@KIFn7wS%{>Ae@7Xz0@FQ`HMAj-^5Fun&$8m48~ z+OdB;ZqpJRK$=3AnIgxIu3nR23&C%PWD8eq#^85iAa$|S*q$g}^HXeWW=B6?f5H8C zuE?7Ng6-)@XnBk}^X6!f@)LW9aCPRTE!ys;bh}7Afs>65^ynk|vjbY>gE#r;E~41D z+5`evEU1_D;PC`ZxlQx)gsu(lNGKayCEsgHHo+I_Fy{^YUj|H@Qi18<`2Wr6?R~db zt(!{Jw8(kW-U0lzUwaCaAb?^`*n`v<7GeMH*WgQf@pL+lP(Wk7Ki>4F9+;qwYnW5p31cNA`9D;jp*Y#s~qgeKK?LuCq5aT z>_PkLfwKHq@0W6-BgfK7Wi)_FE=j(=bWmjH?>A@aw<0m z7upK&M8T-llb_hnVY4$75e``)hcml!SA#vntLjjoo;l2oZ0lcY5DqI8O7{8gMnN*X z;h(jS>aqX&?mr&m?_97yTs1lxej4XPx&S`){E@H>*eG*H@yvcO`!~upaAx;0m9?k0k|p5MWZ5 zOwr4|x*aKE54A}TGH8Pc_8J7iyxwjMh zqQ|0r$+_MVPCeKuc~eH3_8cRJkEOfYNOqX}A&v^qYRQ z5>L1nqkm-C1g5sG&`!Q^+!PZ zpCU^~d4xfP0r5p?;-HfiI&hFD$uQySfXIzMQzcG_s1z&)ks7=g^oh}hK4CIb);c7u z1BQPJ2q-;YJ7=Ry&_I++dEXbLk(hhTikUAqK`SyK7qT~a+uQHWw>a9jIJ5P?tU1x$ zSg|~|q1>J=^KOEGL_|a#$lXQAca7yjKlvK6cOtVZtDPIKMFlH_o^Py^U!c}-k@eN2 ze9)o<*Pvk)%kpam4ndpqdgJE}e2)ttqW$16;6xi_f^rBIwcU?w-iS(`D>+aKPw6!` zHIpibi30E*99L-!hZ%uS+`-Jb;+Y}XQGR?gKDm2S z4^P(f(^Ft>GHGB-^E}z9=bw470i+ebd8>iQ|H`@1y>V}jXoc@)EHHOr?nV8( z?_rxB7UtLpFzwO!&v=2jU0X&fv)zx-yr4v?sun1Ai{&xM30b247mIY zYh>(Q5m4EO=_|IJ?a4j2S5wJ+kfHBrL6#>CLNZb%G`g>%hn3{jtY@(dJ;B>wUK4~z zdxX(Z$-b`j7pzk@2Dw#>hkcF_+jl+P$&Q~mDZ*lGnPPl&Hi=IGm#DRE*ycVzN6&>G z_{NW^B@^zTg0k{kgS-kS6k&{D9|WKA99AP5*F51z+_~a(>f!sV1Px-%!<%qtx$MC_ z!HmrDKr#VK$hc}KW5N?8Ab~vtrsKf$l=|lO*pXdM=Cp{JXY@Akh;^_9H;efoUrKA#7@UofCWf*(Z?Y4dp6dqg=_5c*Sa?7X}!lVa;(5AS8t zdh4svg$?oUIym1UJ&|r3^o%g6atw~#i9%LZ=aQ%uq-tRv6R7@Lfi1P5PHh2B3NA{% zu5(~WUU4wYevH=D33o=5_F70aqJB$YkkQ(JfvKVwm#}pl5Hzc~%6fDc-rrbTd^O&q zR&FFSeqGHJIj=T!7M-`DU2$xI-<=$Gr7^I}_N_<*& z|N3(6j$+VQ$4LubN4QVa(@Fo<$D5kJBnd8Dwfx8$eX57Y2{l|4d^~ z;UAWWO8SE;iuBG)ztyer6TB3w+FOF*pqbKBcQ97vD|CnSu3(v zB~n9I01RUsI`07e8l?bSxKS7L73sFR4F&*zmhCj;CsQH%bX$^PBGGNLmFZw?18xG`eSUfKfREWn~Uw> zNvISWbge%hWl|=s{iqQAJky{BtA}fEBR_qB<38{y((I}J5jMS^OIWaj^T{R{vqgA4 zUci()=(<9$gruoWz+CcaS@)5|^D*Je{ovUOlm(=j>V3Z<2<$*N??qSIfcCi*;W3jV7jo>GOE zsG50NE9+ymE?ZBu^n&gw{AHc#Wt$rP)#=n`mg=w1=7TKEXSy#@7f{Am{FN8O2UpT) zUU~Ii7P&C5AJG>srqVs7kd<9WGkTVUtE)#_2+=LyVn@=~9G);nME30Jyca;24G`km zt?O7@_sXS91BWWC8XouZhigHZdw7rJ3osIit_14YJBs-!Yqp}cZ#6O-14EAyu6@ZK0)0X!0jHZwP@TOYNVX2clY= zO`u$mjV9%DY)Pwj-PE)T5 zOWajK-RFJAly!HMC)6Ee9rmE5H4ZTsoW;lH%%f#G==vxO#G5j==6LC+AypXFktmDw%)fxUq zc-i}|aTV9~vN5cs1n1gA=_L#E^_=l~k22^z%g!#!M*H!yVeCzB=X;H%d;ZxWd-7#Am$!~UxAOkh z%Tq<(8kv)~7EvJlRp#@p^XXmbG&hv!dBsPT5audFj7wY0(IyseLD!{7(Nm@}wbp z=<2Zfm3+iq;lX;P1t&dnYE!Gw;^l0YQWodhh?SCr-$Obg6Z+DNEsdof_?xccIgn|| zCN+~hi{Bu@T1w6Ou6RnujS=(pzuF^(rE`T5A7husvm!Oz$%Nz92Vm8kMr>xikG&tW z75krvWRP`lp4W73S3`Xr3dTB%^!t?^A2q1cYs?daLxv6qIi2tEJS zNL+!akV=C-3Q9=Lf}bw$R_3oI=)LB(c&jdJ5T#%$#DK|&-lK1|atoBjwTal=L zSnZE*}j+?YFD7PH$evh#_v{G-%I zwu*-NMY^!tHU8tT48;vU8n-_5%I~uQFj-V8brMp^AWGV9p*r3y`nphGk}FK^mP=5k zImIEFkCJbZ`}6#7pxcakUVNJ#z1oA=G5pyUJO3wH)v5H-wyKJ8F0(ya&}nl3eO7p& z|Mc~SBNkM>pPe@~IPc-14I-5~K+-zQoX6~XjHxKVC`g70sBA3=+DodMly6`@{~&|S zhT0Tx%Lp-Z4GkQ`Lf4rs+vwgXh3wt*Y$y9uFmfE@ewqAiFD)HxM|ll+zsT;}-kl?5 zjoSb%yF~9jGJld5Z(y1?;ZibMXnOB1I4ub!TluO$<`UH#Cvfx`#O{s7`n2z}hTSw4 zXE`sA&g<4K(#GL3z9n-WJLMYKU?ZJYcR_302xEbh`}WWje16lNUBlbm2Y1|>q!f~~ zap;N`@~hCk-&^2#*e+{H9mg!E(rnZuq>r=U1mOwXH4p7SD_X(RIo)Vm%!_p;Vdgig@J zGq&o-J-4T5^RfWB$s#{)VKKI9tqd)6$X;D?j5bnjt{-J1@h50F<(*hC_ja)i794;D zHA0;Da-JQ)onBf>`~%I~KXBemg&iHXa-ypGNLf-bNsR+HA>#q@?cX``BW^)r+3}W= z7N_u)%tyw#u*&zP%|1@EygVnQIJ;5dDGF|^5S_Ayr~5PE!YHX7!7a{`u9f!j>4-dF zxxsLY2d_QjSCyZ~`87>i;;E1_?Cwty#v{<#jd0tYaEQmZRM>8+CHg#`v4VG}$lH=N zY@gWc8fK1riY8k}Eajui-fs0ec|2s-bY+Z6{#SdadW~G3d5P9ZT%({n}dF~Z#Hls(KenaSim>PaP z*5Ax?p_efVcCnAlX6|MK!Ds3(S{HOwvZhpxu_nU!3_)(PBwIo9_495JBauuefANMZ zFLi?sg3K&Ja$##R0}Dzr@<*Wa=NsHRfx?>k1tqk}LIIAf{8Qp>O^FQ-R8)uCHrlj6 zzcjIH6d2GB^&@MDf7un1l^;Hf!zq;PQzL{EC)@E%Xf7so04F`bwUm$ROVlA35vQp6 zak`uA4e5c@p?sNSrzT%6L2)?Tz-+kyKX=ON?2)H`Wt=z|DyVst1TDZYhMA4R^~M2o z%tBC0habVQgo%xV4n&Ef@3=bOTGViCd@a+T+IQN?!ZK=Q^vXnDp*oD}P-uaNX1r?1 zV3tWb#ho8RLl0!y{1^g_c4@v5cw$zdMv)_v_d*dNs$-MpDi_g}2((pTnCis=aVkk1 zM*JXiAPHImj!8)mEgZ>$Zw%J3BH4M&N+*+Alt@PFqE1M?0wN+E*`qiSylbk z2^Z)DcW@cCqg>!0Qgu>R+8%5pBeaQcNBxM$CG<0HBbcjMy71N}8`A1H?s2j&R6Fj&$J%Oj;1nx`78nj2+<5O9>2{t;tV;RAH!OGO z*2bhUo1nv_>T1RCp&}TyXq+d=w8Cn4EduP?9!UjE!Luvukh%PUleFkf5{$Wr_-MQ% zMQ478ZDgAjpz#})(5`wYv3@MECunN(Y*~obLSE~)t1BU^3(yL{J-YRXerD#;Q{p8? zt5Uc+S9aYp19B1lZ{h+x7viL#={1?e$}DP5W;!mC*D0I*PRk$Qg`qCrb_Qk(jk8iq zU!m_7J$(y7HjzT~hy$`m$FPEKF`E>3^0ec)0{XW)9?I}z`@3~foa)g3w$J86o?Lyh zeSXuxJz{|`D}0I1E?!jnY4ubbA@``jEy&MHP+V_G&vLM6ao9&Yb0}eGAj?s3T+S$9 zn@DHinR_dJ@V4y7e*()E7XnDp!ogMABxcVaNZvvbi0B_CdhWJ2$7_u5r~UfEV<6?4p-%Np^-Z6W7c!s>ao@VhqvSdG9qCfcV zXpX|13hpW(&cgGVP2U|th8#*vQNP|InN(!`7#zPB1VbhtEdjua9CL~+B6n3no)I>c zNt@*#H!*Y%=KEw}DoesoIxmMz4u?!?DsLnh?4b;57J_UkCbsqf#os4)cNf6aIEE<5 zQgy7bFx)*b(@XZi0pJhJ-kxai?%+!C%ao|sw5~v# zIgm9hXM#&kTT5xAlF9nc|IQn!fX^1D=!;{K_Hl#6S-w|!uFRfk!Go7VT=<`E)j5d! zd-j_U!bs)pbue-I)xPN{e~bBczt{&;^guj)67LqVx=%!t?VCvOFeABY9wyFu!Zya~u90YDmYZRKVm0wsQ$rk|Z`Z&sic;=|%p#-)ZLb2z<0;m7d;3$E)nU4P+1M4@ zs6@#`ejx}$HDxXtV#JTm zc6jHT%fov=_rLd&fr@39UQFSZO&T7Ay%DJ6d!&Py48~ zQP9iS3!R;iL?|1Wnv3vknTk2<8YiwS$^L>;F0;b+;uVrwimaA1T`*;I+U}Ojwkpoe zp;$c%%OtUcMW0g^MtO*j0On;)Ua6h<+%9F5)WcvqVR9tVeI7~TpKA5wq znjAVMN$;1et=1y(u^et*TzUPl8*D)V@AO_i^m8|u*~{F7G;ag?r*;FTSTV3C^X9u9 z%F$Lqr>HM6-))pD1(HrMC;}zUh{G#p8?XEuaW@4o;t--8Bi{1uZGmu-Q1;F@?Z|UU~!A!9J1~w)2@)(kh>tVg*;` zk6zka0bXt6sFx`w+pCktII}CQ7Bguomy-cG?6QMn^grm^EBoUydxXyzWFmdy?ox@v zpObb}fki;HnHBUn`Y&+|??UQOyMlF#f3glDp|52nX8g#zK*zr;2u?+?tVEx>(51Xr z10L^uo$tSf&C`UW+y?-PE58mIDz28ASn=}+AzC87PEBVol8%BH9rqYt@jIvMN;a2A zYYb-@tRM&(3g}RndSuUCHRC77e4U+t&?+aOaJ%c@SQl-`s(t~;&FFbhbh(lw{H}vN zr=H_HbGr2)`|brv(^0Jj+_Mk*W)4}g$8WLh+&%dM_Y|QuXC-Oj-;!%w7ECE6_qG z(yWJk5WIHKkKE(I=*En8@{t01gUXE-x-hgZ#5J{*3*9o?j-I{?J;JqcQHRrUr^1W? zAbNF%JANUp0bZFZmyfIa)$_0h{-dUT>8vl(_wm*(jXLkwCQAbj#D0+Cn1I1;X4`Gy zoLg8A`(vOx6^HNNZ!v}dvgP_!I`?hZo(Iznq)XedWpp9>rw9>wtn*_M5XYSHtM3b> zQmjG)Suo1TgLgu~j`ncaitXNTxhrXs1oaejh z9C6K{>tdPp`D+!ZWyQ8%OMoQl6@hBm9E5;XR3}DG$%iU?c>1J{hcx4MPXm+`;MiVq3g>8U*l&?U%?>xjeBc%1i>^?b_KRmYKGxQm?FmHt)Rq8Ia(B` z0kHs(Ht+TnNB~7)x&v}Dn^DC4-npSKhh;LhF?eSmDA9wCfYfax@Kgk(a(HiCnb{6o zw>4{>Dhe4Z3fcKAQdeyNH9Dvxsl{NufdVK=H>QQCRnT3thIyaQ!Y>u*C!c+0?m|Oe zT%;pdO`^`OESto_zQNT*Ov>@oA=tt@m`|reGX5>~@1&|@p2qN33s^`MdE@u(jIP~X z!#RwWGQIY4W%RpnYt%3{=>E7+`dZ5?4T<|P`<=8EcKQ8cGmwCzGfBY<3W)NanU1)k z>t!6^=V_#Uq@a`=kY*mV3oss`KOUtJI(XM<&T7-NEAY6$HVJRQwA58_WVtZDiJX^| zY?1N_JC?9+`MP5z`(g&5mQdY8>q{s&KN z#q;X@^dp`|FaSeNp}u`^V$~@789n%2g{?o}Yy|eGqIpj(!ugH!F^(RQQh$_4q><{4GYkmiyq;3emv+lYF_g{Io*If@`9qmRyv2{L<=NQ2 zuGepEw&ePMbcJmTT=R;&T9Ew^z2BWhi_ozmwXb>vVe5jHqemWj0y8U<8I)%~-@n71 zk^0l#D;I{|TP5>tJr;()P96+k&;lg7kau%tB37%`3ffUCzmc>pAafyy#s6iP(a9Qs zcwKb3+Nu*;$P#8CLP!} z*Z2@xgqkD5rBUHOwjUBfJG0_4y={`Eio%ME=HhX8m9dol z$jCr-!OwulusqoB!mMfqkkE-|9@#YVS#wPWTDwt#ww~T{pK3Ngc>xz){@KFZX0?}M z)#Rs#EfXbFhV!26{~#QK^$`SptJHy0UeD+VD(oYEN1WqDCb04@8%k+k`_&t6NRp~T z&>cJMM&==+Fg6~SN}v0E|-?QnR59)J6Hk{@_W-0ru$$K=o1zNj;2pJ z6&<4pGJmn+Qn7HjWb0hZeP24&x2!SVjw9!uK3OD3sc_r0=#jlIN6q1=+|D0``EDIt zx5|x*7*hqN&(X?{7~yX6ZQ7Tpap2z}^A&R$yw|%7WM#$-*xi1wp1GLKScFuXiaZ5C z-UT3buMZ+x;+-WM{DDwsIIwr*!?tP2t0~);0GXRQ!N|n2^j7cA+ulk<5OWo?M|y3Y zVy{X1;lyx4ntWtmq*uQx(9XHn2Y zpz9PRc+GVRxYY~U{U@4oE1sSm*{lXIBok-=_e6?QIhl?IbSt^aNfwfaanujKS(ESE z&OXXg`X4Mwya1^mzJuC@rB@+T|OhyFZY1Iwza_5g+w4 ze5(P8J5Yl0@686+hg<-%P`V%_Bld)s`t&man3~Vxv<{*fM?W!kwOf$6b9zY_?d=UGb(X<26!^?&&uW zycP?iXv$Rgds)PP1cyMG`IA4~WUiM@TsUt^+Nb)GxLsY?qGWh3X*Y{hr3c4v20;xj zTf|9NWW<_pDTH(!Q3WKXuE%6h*j8Fyf>p*-!;H$b_$2LvQ~Q>>I5n!Aa5#OHl{4g% z&OVtBPc9T?=_K9B3>YtvKI}-rNdI_^z#Bm2Ar{2aSVP#oY+dpIm-6m+$(>h{EJGxN z=?25FI~D+M3c7LhZ%AD=nfa8rm5HQ*m{CgjJt^3HZx~f+zdazc)#k+f36Q0gfQ4*Y zB8+cI5=2*~pm-bmiO33;boiIB>UG%I=Ij5OMJ!~EPzlR3n#nr@4rAldv(TdwG4)#QrQ2{yZ1oDG$V5r|zlJmX(Ps3)k{} zEl2>kPIM~x<1w5KFYnxmpnpZ*_?Dqr$?1`%rTozg{Cf zX)%fItl0`~jWV6ol03b_?>9pYmw=W`qkqX(n&m7JwUR8~kfLz8d*hx~W&vIa#j;nY zM*qdb2H)ZfNCs>V$bh zc2i*ugClzg45i+A21Ao%c5MY42%djnV>MPN_63tKaxw`Cqc#F5t`q2h``D`vBVK;> zi~W~|?eD7HY9_1Zhu&W$_wNiV68zqqO|nFi?E{M$MFeKxcu34?I8Sg_kM4no zO2nSX0}uPI0AgX5V4Tq~)&s|eqV$Q@M8%*DZc6@c-b8Rnf+dI5VxHFo!(WF|_ zB^odDGqZ26SD;{{sdw>u)|yG{RJ)a*itp^Xa)3qI#%Hbx3iNN8eZvq@2&1AakKM9+ z!p5c3u2uuhs(k}Tq!!j^PKo;7f}BYI7u4k0f@D-J$T?a%f%O8F0+a^4oHNN{DJTAp5O2R+L z)@Sy06#e^^jQg@8rZr$MjrAQy&o-35T49_i+l}EoWy1h>%lmQ|!0N6C{ zyF2lVgtb-|LB*no;@+mHU|m~RVb(7==sMEL_d9q17~3#`DH=0#I62JQ35P0_4k>}% zSiHh7aX;~2)tKe>t(N7kmSxrm%*ywFS7ufWlWZb}?&TK8jPwNYL$K_cJZ)5U40-A! zD(gKk$N+B})CCcLnVGYX7kSsN6Mrr}#96&H^8~0d$|hSHH$0$)J42p6{NtaIR|49;`U zdQwD=oC=O>n2Wl%FGh^-ymC)5i5lo7)dpp7U9rlPj<^i)KJUpI>|BW-WO2@+AlV&Hi@B(f8{M+c0~~D3fXZ)3t}SPkP(r7&PW`o* z3hD4C>mZnx|PhiF}M+pv=*THifE@v@%D1E_+{f$Xl0Xp_!;q>IXu7!7QPVRq=h zi8NHgy!_@q?*l6IsXm7MwS8Wo({ClLwL!7>&Pr1_yeFp*i&5wB)OyDCpsMryEh-a9 z1d%iDK5@>0x-l>6)bf?pS^d@#V5AoR#3X{Y4RpyoC=jVTKToaLnaH2a zoI7j~UuO^WSAnMcnyA4kxUj%j$!zX77O#%C>(LeO8%L@6`{+qmn6Ib#Y`1B_Arf(c zp(39LGT%#B%kO#RsjZ;yfX8B#*ICWgg_FP(5woEWa>7W1PD&3= zq=4`up){V6Uc7YVY0Fu~=Y}KJ;&N%FIKQ%+PktBMH;$1{^#3Sv9I|=t-=IEA*syzs zy&yj}os5;coLO%4m4$mAFqANkXZQu7zbpg;g&*3CNPVdQM~znFwB%QYL|Db$F~5wK zw~(1{DkB*L0|QCJ%%pLGL%-eB2K5+RkGcpDpXElkJ#ixbuC7f_t6Ur7PxTz9z2lGfuG zSa5Y|WPS78^<>yNcOL7PtviAgHs?k3s;(uMRAYu8yzbBag|Y1)aEL!$UV9&>T9%a1 zbdEJP_IlPGCj|7BIKb~rQD&Z5Vp@xiMt9T%%mLX`Ec@I&JhksqcMLF)ygk)_M{?py zY7-V$NC@A4{%gOIbaVa-Tc0=J1`}retY(O z2=;H1zO3qS(Z=LpzN*&&{>!dDO1^uqCb%grddib-i zh`^M5y`iSVX=--s3j;L`H005WTe3XPLUZ+?+@g$8ctM@nXil4MFRM)Ds6*CW?P`A4 zLZA4MvX?@?5c)Lm5L~+gR4D`qDm`Ej>=*PqFoLNk63YQx+B&{9u1dqy#MIJs#AV50 za7^vVj{clwWin9^0S9GeZ?xp83g zYsI8*X{a$WX(>swiu{Vuy)@Srpl|sijNfMIF7MqYOq5BK)JL-#6De81RITRHjCnc{*4S4J~^@-q#xK#(m$f$2jVdyMC~N zwj&n54;z=6l5Xy31EK&2@?gyn+uLs0+df756I@#6UCQr952<5*oO1tTr6P3XXK4s) z*m4C%VD5k!yufVo9u!Zi8H<<#N?YbJlDz&tSI4F(yJb7oM`icLGzM)>PrQ|rUB8|$_eWXk z$~Ha|cObwxY#8v*$8134(BEqJ@%8aomzd20;K(9&S^` zxLa0eBWsf)2-$&%K4yofBh(}(kLQ+J;U>FT0U#}fkb3w)q0Qr%q$vHo;lbIjwk9>D1(18bn4YN9db;H3)i-|>UU^rbtdJ6j-^UaxP{+xT9!AU%qXZ*!F2FCJVp6*F#=+2&P*c+H-pF-S~k*}yJqk0z)rkK3$iQUGCnUa^gZ|3 zv!|bT`y!N|IGoyL&Fg~BZm#-c#A=vKFuG4?vwyd(phoIs-dPXTb9$D?zBz7Je4eLnSykAQhMmv!zn7n5e}fAc zdK;+nQQ4)J#T+}{^B?@Q+ka?%kRrE9^12d+)hwf}De!xHa{8nl9 z=U9lSXt{iFZn+35wQlz5f?O$b_#J&$NLbUOj$$b8xHh@S;nekuB=P0#Y9X*8Ez5Z? z>`SX$|M(HXX8&We{ptf_s>dU(Kcb&e^c@6*R=p;$i?J?Ugj1!jrlMDHwLBmNE=qml zJ9Hvm|Jl-tOV|>cu0j1Q7g}f|ubjOrUc(Lr&2U^AtA-ydN|w<5=(u>pn!h+z+Yx~# z{`IQE*{b-)mpAaysYssz`Ik4|j5ztKYL;@}5syb9-8;hsUOGNEdEO!XD*N5wH^Zhk z_}Hy}&(4rH60d9s*G`-Z6#Z!uh?NlMyU%t*gtZIx_gBx!|Gs7+@&6nSBctL}e-ZkQ z0h)G$7vS7$)2*SLyl2HJebR$s<*C?S+Jt5hDHZtBKkvmwhtO=no5$WG-1~uJ@jFaL z9&>ooV}Ad*{ePOtKkK2$)V%!&{T7NJ4ly9nH-4X$^{!`C9DawhrTb~wd-dGx|2XfQ z$VFjxIx|2N+snG0-={tFfA$~5OH^1liOM9z{^xDXMu_FEH~SbzGHjVa zm|B0Ce?2;IEwepO;x^1u@yg%{)??c1l3|qL5G1hIn2k*{KhjZAa`Hhg(+gt`{GM3| zqiu+;=O^voEiW6}3u9m(H}J+CV2>ZLM;mzc=?`GLHt@4UJr{g;|2;FdeRr5n(;|2L zevkVc7C4se41Xl!x2rrnaFKcdIGf!CtjIVdm+3+OCK)`Ar(fnhs}~msYx^ZmnPJY( zpgR?xzg32=F}H7We^6A7?g-P=b9Bq3Zcb^;wAzt#M)TMW+4<<9CkLM2d!EE8lj5r= zrpVPLuj#m+wpM%?5o0Iz$*yfigk~#J&nBdn3$8<`GlyHY7hoO3uz1e6!Vb;NvLn7q zzpvBsQ$gAFK+^vlJWg*D4-$;wjKg+_?COF&4m^0N&OFB(r&{xbGGC8T5$l)6u)uaS0XQxL89fv zZTZc%+O4gBX0F+BrBT(vIqi8H_eCsD*N=-+2kW;b&hegYh?tMLNc9Fb1sri!yec9S zD%2$pz=O4ii=v)OD=n$*U(+%0@`K|yE>ep|t#UC=wXb7vf8;5;M*P&7j921}Ihy8 zA^WvDI9^8HRmv(yJLGoC@3%h+M?$49U~K^_0F|5?FdNGGPGDi+XawAQ$2~SZEpo3) zuE;kb;kr{5efi3#bsd4D9o;5k)xkmu1j%#Qxa5H&&ew>2PkhW5{=6<-!pmBv7p!ew zfRQ|j;Tb<->S&Z5a|s0;jk@iwnJW^bMHY-Fbm%y901NDRtFhcW>_o;u#L(B9{C@*m zoVBi)?pkA2{h#)RkqFku%;(5YOal2%+5$1kUozEb4EhXx%iAc{Rpg&>$QJwMS+j*sGf^?p$>)^ zNflR>t0nH6#Xe@S>1-Lm@`e6)`TpNnJ_dVp@a_gM5DA3(kAv9W-Ylh>U(FqHBH(NN zDy+gonbMcIH7XG~Uf2xu>cTo7zc-YYcSXutg)6wM`w)lFLEFdeASp#R{@j*zkj|z3 zDRb-+vW4ng?9qGwL3WI_Bq~ceq;wA$NrT@(4MduIesy$QJjaD-^Aw9nk(U?`YX%(q z<75V~b(OwFOaI$==CN2`lsc>x7&%J6Wvwg|I#xPr*6jd%l8E#p&jo)uO%)1l*Skz9 z--$7!QVe@)b)fK+)uz>?-cOX!tk|i!=L2W+|28och{egT)^E8M1CFdPwgCYb zTfe<6!Ar@c&bit1E_*Yu-l6-}$h_vfWuf1EWrj*2E-)tSp>3E9jqihmA9j29}R zYZ1QFRe)DoDx!Qq9#hSyRv+ld7Q|DcHCJx2F97?^-RiZ14~;)~fU5~_UTVps9+yea zh-;N7V=b1bq=!aA!?z8HijB?G5c$(DZ^p+U7;VSXQ8T%&W(?RutZCv8>y)?w)L2q1 zt-lOlMtCAS=R!X0s*D-z9^(?NIxRdu*ma~O&r2{M5MOz<*w@#8(RWatKC3>Qr;V52hY)o;__n)L^eh1n~ZOR^alI7yi#!%@rXh z|D@B~-knPCV^g}yO0(}RFf9#%4C8;kYrNIoX*$P7twVe730T!0v*gX#G1MzMzvyHI z0g_1Z(yGCz#wF^Y?HB%5VAcruWCrPbUnodu3v0jD$^zjL@~p=aRpq*3L3(Sg%do1j zcHE4nq5XK0>DhT1bY=Bce(tjpF4Us2);H9RkP z-)rV;jG<=#8>4W;d=XdU`^DF`6nibd_;D0H2)XSy+80%GKI*899~1J*J%XAJGOY+R z@^v}udz1HVXP?oH?btl794+ujVXmQh|BJ}+whyguf6PHx`QK6+i@ecA8K-VLN*x$H ztU+zPJvaCCkGhgr{XxHR;A2VH1(OMq(n@k2SBxia7$0#CJz+owMJ-2R7WFa&OGuPc zZ=UL9CWG0VA{>7y`toM&?-ayefB3GNT0(UZ-l19@eTsATPm0A%Hsr%Gt#OB$@4a<@@OWnPh zuP=*KaR{DN)=%8o%~Jiw{cxH(CkZesvz^OVl}Gc&tGoWnSZ98;ctoTx5WN{=bmN{s_BHL_sd`!;XfcY zY;&V~4Hb|RafP!??gyCbR;N zxkkcC(ivy|$eohBGwhfj*{$j>A??s?W(#RahjwxBoQ=C?){mXguO6EZ<}f_-e0@>F zX{aN{E8+3Z(tZf|a?O&*xyV^I$0|E%2;bA=s;pgy)5TR<>b)_blOdlORZbU<({P%ylcz-MlcF(qo{@mc9TNaKEYk2oj7|3r~5;k=#p(Qi9O@mgLhx(d85wx$?b7GKC)-6N_k zbQt7F=@~OzpyO9;^BwZ}K@op*fA44Eyc|HdqYTO99sW3RE)PO}jqhv6%7Mx8+oCG+ zVPMIU|Xg5Pylol zw~9zMsqHk?xwOe!iqEGe1PSbp3&u7(GwjL}OOXClfn!1(+_@$+P+2y^@4JlQpQc#% zPlMv!zAd#~6;qX)sX<$CB9}vn0T$|D)D0UPCMM4Y>FK8aX1=7cslj%yqDYA+0f2rLJQD4cS(EDLtx8_ex-W%D291<}`bbR)g1 zEc^fq1^Gr!Of-isI?yfg1rH|%g{E&}SL+tPW$N<|e_!DxiuW8P(8ectIZ@X(n@rp>o!ilmz=MZS7;sv_cQhU>7?JC zrXKG-Pii^;HQD#sR~ege;=0^6?kWDy`rxNWSF4;_^A)FyQ&%XMA3o#oJVR-EJ$IA( zQF1eyM*sD%14(>Rkv<}4kDp#;eV}k!yQR33)T{h8^R@eBk`dndSNmq}Y}Dv`(jd?s z1Y%kQUTwLIDLtz9yjhi?HhjL967Te(idD4yW_~X^2@D+i2W#>e??J1wT<+}qB=^7D zD7RR9p26{?G0>*Dz{9_$$LR{?>d*;klf#Ld_Q;?1YKHlUBA&oQE3~Og5+n37&-9e!u0ZRtB>tHHK;|K)HCZ?89G)w1ujui z^1MfDzm+nvr%D}p_RaK?hj6Kvx-FAB@y$;oh9!9mr*4tDC9t^S7=VYkqvE|myXExb}f%A(mSNgq{B}H zft29o&$LduI^NqS4^jxGEOn=4_nUmY z7xbCVnBc@%T*qj~>gxfP0qoX&B6+2N`UK_m5=H~*Y`*8WJO|9M1$K!#QldV(72P?H z#lNEpHd>#&1M@bVXIg?mY}q6|rKfs@=*hMgv{H*Xxm;O`Gnm8aga?XvrF%yP@CI&? z&L;s!>GJx1yW-M>BdJWk#rS!{2h%E#VxzhNH_%4JPM2@jiV3x0ozc>8+MaJy&)G-j zkcgMnZPG57J?~J0=z%{Rb}cC6d(1{qPIu5++MOpSvsUGq<4FP-y1-OBPk#t#M`1dI;ALDD=Xd;7VQWA6nD?GKu*l93P!jPR>0}+Q$ zvJ3b*2&!!{_R54q5oNoWQc4Vj-Y=)uGr0?SIe&_Ye38yxnmskRv($X(kPTG@?7(@j z2ufDXZC4y>mr~h1L;wvzBh=-6KV7*v^B_duXz^wSWiJ3I80i3|TgS)RF~QfK>Tak$&TMzYx z@^jldNx@=6G3tbVx@fCVZlOX}HQ1O*rNj8JonSu{A|e%bI7jR{lJI!>a?`%-H;7aP{9lzxixDFHS6=MWFbovGjIY;c>mnWYXHkP`7^=p_A6`{~h_Uq= zB7d+ENbV))4{nP}Y@KKvdiI%_bht7(0jSQ~!U;a{{A?fRVF~+7A8!-v-gj*WA^<21 z@+Ej4L`<=JCm4Z`Y<;(@dO7?LKly~l3c<5WpgJyNK5{%%XUm1YXYc>@R%+c1r?8<2 zHoa>DOF3d@TK*|MM%4(h-Y6TUdno=GVRa%A8asY#M(5s5N;bQmBG6=rHc-qEmKm`7Dv(Mt{z@T#4*W- zE7pg2Q3nAs$-8Jq15PJi$E!(%Ab+&n zboxl1AY#|Yh6))4sxer`eSIhEy{I#YhEsKM&)%I$*VmAv|Di(_qCV8E!`{o8RCz5x z-KNE8f#N?q-Qb|ZjUYB8jCx+$)g5TG;Ntc0pNHt9j~{Q0Fdvug%m!GBNkR3OT^xO{ z7T`nf7FK#kC#6^X>TJIH@z(84JN$*Jra}@d#xFR9ei>DisvxukBvtKskr6Gl*1+`h z9s7w{<<%T{2%n+d+iMevV!X4=(g6+??cyx9xF*v1k+|q|C1mnva&kTYT;D)tIG{~! z5#|InxlWiy%i8bZ>(G&Q=yKxy;(k1TVo*2)dxG@GEr)Kq z{9(6a-v5vzuU@2H-HFN$^b@9fW! zR=l+IP^w=&B+e_yv>smkf%U{B@_aVfzCWAs>LwZp8oo>$SH_G zo^7ebcn-3Ed^N6QZC05L0=x1KyuWHo*MmXM!`rv1xV`jgvG*8>C@%Tk;`@13^QpX8 z7^qu1ta*rIBTC^8W-Uev^@J=b3hyL$7FZ}wP84*x>sA#h``_gRyw{L$U<4yA`%A{Gl;2Y5w`%L$iC}}|A zJV#F0y?QnOdnG;LmQ*H;vK`^VFpPuk)$Zzx$VH4oE}XVuFaPwH9njiD5fxU;O3@&Pe!z*Hb&)|ML{P!wDZrv!hsKfSJyzz}LD+vwFj)i@rYi=_dZ!*(Nl&&x6c3Qeq#TLH8 zcKR%QV)bt|+Td8TCA-%Vd@q=VE*E5zJm%Dmx%^*RdVGKWktpfsh7?c*xZVg!u-UR%_X219ew!%UoX3)UHKo|d2p`UdE|xjZH6EI zPeremoyvS)9B-ocmmU^9Q=l{Y9!FM)qv>(HyM)O8%r4n_GR?JW(7c^1CiacJdnC_J zu0OuqBAHt8ozE>J2630t?52&Dh{TsJG;PzEDLTH67j~*6^gtj3g6^3yZyKA4k(#ja zNRh`$*IJjzz1$7NNjHC{Y&cYvMvL;40dqajjq+wNifO6yC$d?gPs;c+dFeT33+Czm zRY=BGHFLbvyHB;-&o{}^gQ@B(ReU?l7KGY&1bXPBIY4#zXtB@*zqCg!kk89#(~LkC zmO1`T9-H3vyrsNrn~orNetBv5uyFbZ@TP5lZhrV(>KZd$kgu*MQ<<$+db;~(9Ytir zHZ3203HF;-%-uY_xgS}E5J|+l&YvV}dI=FG#B-5?)!M$34x*W)Zk{^)NmE8JEumTJ zlPs+*CqXERRM}bKZ&1prsVrMwyyGW~tT4Gs!WPFh)|c%zuaMxvA^Ck~MO3aL_fo z9NzK8MYFS)ux_G-%SLxvpPHB>CVM0`)b@d16usIjzxc8;^vh^#9}$w#S11+Zb+BPP z$dY2DTkZ*}*{lB94l+w}^(3jWJ~J_)yp9a4H?DOp?|?>0Ri(Df(n~o;*13h^x!2jC zthH9Xn`p2&ZgC3jr<>L;nBZ{e{oT`hx&?eHV%b_z!wj~FT&TeZYEvEd%j zc{!)WYcA%WVjd0KWd}E%y0j_(qdupeUh;e5!8ws?XXCLFY-Q0C_wZG>q^DC0Aon5- z&zC$X*WFV9@b;M&k8xRdGf*&ISNZR5<4ywYB_Gmkg#FdOnRorEHwx?&I@Zp5(97H< zVOi6;Jf_HJ?@U6Uu_NtC_i7`BkuJP}U!~iCfF)7Py7$%n46y7T-(V$6w5In)Y^b4? z=dgDdIe1(qzuO9XJ-@|2ZxSXp!H;cgCaKOO<#iC?2fKfoLz!PAR#SG=PXAFHTFo2I z>iRgU52S;GT0YEYeO22(tU=%PWlfAlUyzeAWHoizv^Ot|0{9z6$R1d&8}I1bnRVTP z(oo9aX+li82MqeVEg2n(p=ks(v99m2H0{c1Ti8jg>i z&d0lNfl3mhkBmnw6IdRCTdWTyL5du=@2l5s7*q4zLPG4r%%3dMl43f z7QM-+dt89z(@Kb5D<*_K2}ORTPE_K`T`#JK1$y7(!xW5HiS1V7)>7f;2bCkZxr{RT z{hu1O`GnZ=*q`BgV|=~U8QHALjO*hluu7)N2}(yWr`ERIJ$e7N27k7$XTNi9JG(Yl z>m@(ZXGMM^9?>M#;F2ggy834hf`a!89SXv_OcAY}-Pw!UIhHb;x7w4t8PYvCuuGuC zd~`W@*AG!a^MRoK%D2%{%Oe|!B=-G2pl!HH0qT8@p76))s>~)LGQD?8BIlw2J_>&I z>?@_ly6y5ELRF1X@ig&Q2#Ty|joCp0=GxYr`~0`~^8 zD<=Is&QyJ8S#Ym5u=Zoa!nFwN5-b~HV8ZnE8VF*ygh3E{(9IT^e$gXhYmgox9;Z^Z zd)_+Z?rks^O6I4`h-gn5S4kNt`m*?O@4i@;9ejP__cc8VTafxJrdVS)8c0%;I3FUX zc|HLEXe-1zpV85nOQB!xYB}J-xvyUlkjnBKZkE4!!z={L$_fW!-XM-Op{zd@h?(T( z6Qix!8?F8%b%b^R$DrS!|LP`+SVeH2kSE)h2O@J@-bWrG z!QAe6rF+l2%oO(J8t9UyUHf7zKazx3>9#2qya?2b{TafRhCs|YNm}H1{wyuHNgY;BZR=_b6_CnZl~yWP->LhZ z2n-1xQcGAtWpzvY6`0qqj+K>@HIZgwmpFu5>go+c_Am~+v3y`MSpq-N`poL2Wyx2 z@t%#8Z7@Hg;_T5j$sveNG_DRLT<6_k6}*$h-7&@lOl8;pa1EA4RaENn#k7gV6 z!CN?1L`})`eBLGpC&uVR*%~k=D|~tmUXks+3F`|RQq$YmcWk*V*Tr|>Ma6z9%IFR* zr5hQ3%6Or2pE2W>Hq@Kz1uXM>md`znsqCA~7cGQsgWpd!(a=afgnC5^J8C;SOFf;R zWm8JaiHsD?x$@FC(|0Tu7?J~)ChvpKOJP`gi$PIh(cgYXaw!Md8>~#h7v6w3m{2liGgqzop+m7&<8h%yd?BQwcV@Zy$BB3 zescmu>%q&1(Do#FymK6_gJ}^JzpvP1W>xr!Z~nP~F4&%>-+PorM#W|Irlg5E8B#XX61#hb9B}|#M&_}PE2w=N4 z()%=p{(vh6!3p(60mHZ@iYQ0eVith%zQ4?IJC#}w zOIDLHW2_i_COpY@RTIA}SAT2do_PRq5o@#gA2msRU#=z5V&WzmaD09Ghm2fOQXXo9{_V+PHGStH!60R%V1fc5z=E*rNa2Ute{9tol&zWEW5b1V6NIMNf)G+7@;q=5T zs)JLE*HoCJ0JbUt)6q)Bi?elaVS#oVG~VmojVb9SDVLup;8a;;y=0%@9yj0M_<^rE8E9LF$SKCvZeu3u~+;A>c;JjhKMU)2O?PZ za}ljwOC_x4H-7OxCp+J{8WM6x@9wtc`>pYbX{R17{lg0M$V%*n%re?kLc65R9#d}! zYb z547tIp9A-X&~N*qh?6I6lA=oFdn$gK>9ja!@U@+@+NsIPy@T$OOMm>eQ3WHf8@BwpAEGq0P8HeI-DkY zb*;(0OgLz6%-)D2KpF{GIZ*|$vw9erBiHLrghikaCTwdSw+G@G_+A`tzIAo_M;G?tE zC3hJg9|R&oS?~-*k)Eoz65GLlaURHLx_AS53hk!=)-2F4PF$p`bmh{)TQH2XT1}*0FNUkLDT#$Emlu|fOkW{x{ zujO&|<9a^%%Z#St;Xe2AgF;!!IXc#$BNvZdEYo^ZfBcJbDGA@j&J~?&4Vj0{C#HFq zdtsOb99gZ`+5W)K+h$ag=ORHrpV!H14-u8*#O zwj)sF`Gris);o0{euKkaF;LEeC)>kN5(`384#MYaWj zpSW&s+g=sS>?$7Hx_MsB)FZ+@$XOYW7Gj^bk~SMNTS1!V^(uKZ6Xmv20pGVBe9_Rg z1q-r2rFl<%nypK^P|dsHceIRCOLFqPw&y?^cb6zxL3>s@8qwMFLkzQV0Za!0Sw`rw zqehd#83lQ-1sYv8rYI}rM&&w>d76jV*p%YT5)7Ofa>Z-f3Dc@iYub6>9iTH(F7aLd z!1ux6y}xQlS0*HvUR}0ra6~XA;RR<3@%<`rff?P?u2jp!SiOWF&z!_rw+1&%8qMbN z+<@RlaB!!9j^_sdmA_$fdg=)QxRD@o?j!#dx_t8OWmB&T{kOxh0=@?w&c2KXT+SZG zLFDMe^y92sz^6$@Fiqd8lJQjw-8AHMw`*rbGI*(N{!$@j8ya^Q~o)X*5Qm z@@|Gu8tZX-K&+Mr&g`?#!clmcA6jgnZg8ovgN((?o7KA)Nt~|$oj`+x^ymIe_ewkE zk(|aUZn+Y~kAe@<GZ8E?_l*ZRv6ttV+p zid=MiAL0xqX9gy($mKAGFXI+x&ae+B%AZ7IHXpUBF^SD%GY`{I!}h$Y)~AgT)rf+j zA5jc7iLSgRc(Na^jF4$$?k}TmZ>X!8NHeNN-_Kl8HIo^h)`+@xXbSQ1n#mD2c4BKR zbwL;?h;_H7zu?I-Q2&cxmh5M;wzXDz=hT6vcFmW>#E_+>-?3jNuo4ZBgO@LO^)K_1 zd#j(iUd1P@Ss3?`E*3x)X78J%p>io2=!i-k9LKrO(-{lQ!e4EP&Ft-Rbnk)JY`;2H zVx!O{3Af5O6olF1DgjaNO^&YXc*%GuCs}3`3W&lNq>jFuLCXCpVF~245bC;I_y;>b-QK@=Y4L;hM zbajMsDCz0fA9$&LWl`e+HnlKpR_K!P9`(**H{XSw-RtZso}|t6n1sdY@S!(mBIE?$ z(P;$>SpS?})Z#4~a(Xw_v`TJ6a}H;Mkiv<44P;aFLL*juTy|xzS8!`ximt*D3M!1+ z3jWMVrX$;`qhU5Z^n9qWADx3{arPvE2#ur|rqFktby3vC9=#sspKh4`0FNN)kqe3ztQf~~wY-6Uj8%AlI;y|bMm49{& zNd$GI9Anl7VbKq+NUHOQj4pR)0OufHx)Xbs$=ucm8SndM#bej~~hYInIfk>U&b47}`ym<6C2;s!IA#5+IqF4n%b2415>d z=lX2eb|z7hEH%u`rYmhYXKE;Jw%!ooLOIGIUY)-nEp_$hLL4NY0Cn1WitX$2W=ASV z90?=ND{n6CYSBj|;gv8Qd0h%?ArBDFQ1@30_4r%2WlWKYE0L=F#=+?~lqT-eYhk_K zWZZPLRKh&%U}doB^(P)u8NS{#IRkS;vTM~pe&MVSLbnlmTv=ynOLO z;182wiDNGKT6@K--D}17rw-F<@y)Ex5syTgy58V%0I3$WvX9V!oZO+(EYx{s z$zbLrA1cKnq?80WuJldDi$2qwyYxIEq*y{k?xpjppm^-ro9ZR$t;s1#^ge0VU|Rb zHD_hNp+|$T-xL8ILJo%kgkWBH;C8MYqvFcjnt-imtL{aHGLHunv z`%*ciw1R8yS=n1Ho|Pq3wi1WF9selrk3Rx$+8JPV`Y2qdE>Bp)|5nDkXbc}5*C)`u zyc=Sj0QQMP_GR)8HpbxszJ)&zz_O|meEjij!6NP^%-=T!55@ixv=I&drf76qG0Fl9{YcFRZb$CD`sPo#wFYeU~f8ffwUPUQf!`|XHVriE40ck zENXaWrF#HDuaJBRp_vQ@80MPO9EJN@Iuk0oq)B#%6gEI4qe)<7V+bvX?RIq>F?k0wBg* zT7CUz*Ab}-Em9HsD3oE7W?JAUQ(0sArG_^hz8+1jHt5ZsVt|~CY)Vv-5^0kIm!xT* zALSr-l)grAO{8F|f85Q!@2_u_O$>2Om%QvFtQgKty`gKs9@ErkhR6TG}8OoW_@nS13c=!#5H#rpAzq{lsExu=-mI-I@U`4Vr_t9gH6`fSZPIccK&s9pgco43_yIYJ8GbBAMQF zghb5cdQVIP(nNe>yt*!)Zu^XXY?97!ZSC(|rgdq-);LWnJ2=bPVq8w!8`bQ8iu@jt zh#wS9|Cq&<*grDcG})sHKx;CJt(pQO13?Gm1jQf@LwhX@1{)20c zu{W;Xh)L6EX5s*s+yT3yBfI*nR62)M#m@m?dszykG!7}hX9GU}KvAU1^uEMOY?buH zeRaz(C^YaSA4DFm_2(3-&~oCF5lyw+sH$js>G`NDxpr@y%M1R>yst7Z_?*3nTGYGp ze(zOBP%np+b&$<)k7TXf>GL?@*R~2{Rl2)bDfj%DL2SzNz9nIrH|7r4_R|nH9)p+kz`jP zXcN?WMYI^s=%$+SVAKD5+54{tL?Z+!tK4^V1+FhJ23PsEZ$T)b3w_$r4%SnAQ5R#X zvf}g*6M*<}*6gfYHuT1>y5($o%p5ErD>b!kXKO&S%F;>H1${=v+C5nKO^q*r;h?}{ zuP%rX5;?<{ZsV5re2S#Saa_Oi1@)`N&(Kyx4m+F`sk8$>(L+p)Gz3j^_8Yy=+=#~GO9v#YMApoTZKM&1F6^) zcUJQK;dl8?%Um%i8r#7^0)C0oy?hlsqR%ixa;E3TaI~Jz3y(2k?bg1r^I@H8SCr8V z^|uUyhh!IeDDfd?{<6na zIB#~QoA*^_*h_9Z-I*=Jr#@GYN2+DPPt{m4pOb8cTduxw^(l*^md~_VCc9K8QPZq) zvoaTh4kfhY=O)5|1$ zu@6~g!quu*4`C`Yhx?^Hzwt(TK79;`P5V1m7&e;VF#cA-(A_B}c{k8Tn5@Y%FMB6O z9UWbzG$qaHJ=Q$&W+(tFD{}}$7%2>R8g-ad4UjJkzq9L5;i)tRTbTDH_;>>!+{=xf z9u5OX6lfSTsN)f@CK*)#XPl0aPZ0Skh^3s9J)5$1NVCIxHZner54)6(X+S#%UR;!- zDe)kf1EQXz7x(YzfCkQ&IBxe@1**%&@L^{Ewa=y@(~ly?xlX@#4}4G)42~Bh;TJv~ z2|1^ur>&2H4j7J7|5}maR-pLUclOe+5~6v+nE~>V;mzBsKF!R7%i-N8ndm1^G;DSM zl1542v(7vL%(4;tc6)D1C&fOGxs~sVojBxgu0mT>bRg07JqZ!i!O=V3!@siaKN{;% za1J2w?Xs5*yWc*X9}7F880p0ufqVIOv^u>Uabmes2~wG{@ZzcJdJyaPH5`Z%CDaR& z>78V7yJ9xC6t4wdjnTAD^*}-^Wd>` zJ0mkYzG#D%?R^6+ETzu@E|}K(JppbDUw$jy273;D0=iWx0zzHS38z#NRY8Hy1Gi*L zzx5Z`dO`td^mbWA4Gf^?Ub~H{yAC-ufYyq5bdUKyKe8FZ!N3T$*5&M>GB2uYPd#e} zPI_bKChGg!&|=6Z6}B1F=&#e_wKe-E9bq*eEU>eTcv3~)bv`sn5&GegtD?YfPg#Bjt0XtowxoXtE{~Qwvsv%E-4OZ*jqpOIx)F5UZi+Y)&)uo*E9SzBq}2c?UR@v#l|P)&gQF)#gtsqCpBqwRr95V7tmY`$54o%;n3-ta7D-{f;p zU!lD0-|y#F=&h#FTa?A;XG(r>S4aUaWrsV=Rqt+&dn8~@;pZg^gU{gafblG!V75Zq zqNi+vhTMyS#) z(|;4mA`6Og;G4!h(W9mRIc}Q@w{|-$6;XH8+GJJ;vo%gkU+1xB_!Esd5AH;7J_&1Q zIEhBNFvGqvO;EpbdSYa~qiQ+>)so=blc6>lB;*-o?PLf%zR>-AcbAKz0=Q*RnTQ$$ z8GP_oq}{o8->%DN2jsH~pX@4JSv&U*ZYDSPmZjT)9Nn|pK}r2Mm)TR~yh z4PTNf#TRq$fb#Bb{mlg~q4E|Bms?AP)zry!$os- z=xe>>x!7Q7H%R-fszhLn5T7vlAWw>UmN$cVN5a#wWXKp>9k*{l(HExsY=azc=c_NP4K=^HEUu#@u5yPEzUonA@} z6nnzlr%D|_K|N{TN2WogU|pg>bGy7cg5;jKGPvqQM|RVf6KoDGnpAEojn8Q@{J9_s zJ~v;=9XbtQxp}whDfb{AnQ)}ryVMQbi(lz#o36#?E3gnI=nN{IgllW-DEpRbI7;67;b4`AjU?Qi)=r!iKj)D)y>;)4I{%NQ zbrg1z$!7f=x<4ou;(B*#jd#0?1MO}xLmx~VDbXn^Q>QNMs(C%zIIXQM_0I#gK`pDT zeu_mMPw|wxBetv@zhLB$Tcuv*0g<+(S)WLL;*Iu2br3ZZ7bzOv+gfpoUb5+JV^x+Q zqux9Xu4AO(57Ft<7Cm5SKeh>E?)cE?mUj^SmNh-+kpcc@^;5`L!P*Aogeb4+q2I(eqZP zP?qbvLa~Rm2VHFgp`^sV+{GfJB#Uf%H^-1B55Dqom~JQDWyw6YfH-!K^8hLwoaaMY z6CG-7c>-%9q0{Oe+GTpDI@0oNivQf_hKDgrz%DzG zg;s?#EBT&4;Od%!OdCYd^B0owln=PraRak!O3z#qjoFI-m-CVoUM;uaT~T!jk< z*FGZE&(&$T1GVy1cA9!&WQS!M)?v$5W3WLb*|I4)*%xXI!?#18+R7iJ{1+T>L5G|V zIOvVl_luCb+^>K0j$MyzPbEdefH&^*R*df$PUy$y=Sm3sxaN|4Gu{hQXy7kAH_c9? zB|AsyENB3KhpicP%r4Onx6qHJG|#>N%J7rf-(gLaxuWTuCN^L7-0jm7JD#Vzd2Lv4WzAmsG&^YqpOx^iC@iBW=hy_~+JXILS}pCV zq5;@8V^By+kAm5SFc8p!rz{<0{>%nwlDW%R{3^)dVaO6Kw$TMNVsK}70%0=wdibKt z%F^N~tN+`?BQEDheIGCDq|!5y-!8ULqfh^V2VaU_GL%pMMjAx@4x!3OEQuv@{bZ^$ zf>{K~Pm&o4$qw-ycEjfO$c4=&QU%ho$q%@8ePZoBdBq3`Wq@an7@y085@=|Wpv*ms zg#+4+odSk{9pTmVFN;mkoPJIM_?HI|g@1MD|8J5?1Lm$!;O+6R0o%X+d62E*|2O^f zj2c(+sxj8+V1e-;D$J7&K@`GC;M&Qhi7&!G9U(E2fMEm4?$(^rh(}jIMhw6kz{>5# zV}W%rYL)JSlO*AtyN#EenqdUFPf_O@cADj=CH`S*AirfNMcu#ykPLRFV*9LArC-+g#oi|zffwOvtlIil4^ z`8GOhO8PI3jnlXDpo z%7xp~kT~N3k46e2_A!~U?=bVF#N~GV;GnMsns!4XY-Jm;omH&jqyO=a)iZFBBrU;2 zJGfsfN!-hlkE3?-X&_Zqq_i%c36wsqkw$AuIjyzjj^GyGpl1vI_qBv`@wC!B0J2dG z#E{1O2QkPmJZB~=+Xx(`1g?>gI~lLp;Dr{tbA2|7Ly0}0;imZ_CyynVtcd?5Db z_7`6d=(hvKn5yGZ4wFQzP+5kfh{!p_9b?O@d=c!71_CPq+tDAu{FHm;Lx*Jgw=b0d z4q_n3Ynw5X7!4Ebt55~A5Sq&LK84Eg+xj13V39`qxvs~&VY}^{M3)SUr+vQ&A|G*LjG?3vq?ycYjn)Fb{#99 z?{S<8dI}}edC)~Xv#yhnKNp|TaiaU0r(M!@P-;rO{5C5;>jMXzZsxKp$1H<)Z(%x` z36vLo+D$|uNTe5P!x{gP8|m0HJNh9MVGAA)>OSVck|rgce_nolqI1DH8Fd(#*qH8h zqP--9?KoO8eNA(U?LoVB zlYQ}Pw-CKp$UH~F=Z5AGMe^znrAf+}ZXRZrV_$wip`Y9au3p>Ne#iVzf*rdp`e~=&N~qU$@Ia zqv!L1b05!OzqBx2w&anuGIj?2?4_PdV$%T27dbd_l0ohbNH2N|FQ=<&QOb03`dLOA z3+R+Nhnxle_dV@nd+boQZW@13xsipsGo=eIX@6fbDU;%w0@}!-=d_`L5>+c|$LmZ0 zf)23la+e{W-@KzCf2@-yh{VsPV#tC4gp=91b?=2OH;I~J$X?TxlNK324s9t~A$?Ad zDlB~*#B_u*XrCh$>&=6qEaUnYR+4IOGGP8`?0lqxZA&GgjGDjW53Hx6|L4^R2a~;SRfW!EFQ#}sYp)jk`Z(E!%7K0*i3bux zLNC}i`zmB_?88AeOR)tmiB29UZw{0*9;)QwRln-H%aH2eMF0^`BkWPYbtl3k?!6oJ zgYOwpb4K-Syz!-QiQ&M6`{(@4G4NC$*d?zbt2)U49_zyVeS-~bQ3BA6Wza6j7nygB zuVYgb8q%jkP($t8ZE3dl^rYVFl@70&o03rRc~A)pCZU-{PWLuZ@izk{hy;hp=9JHS z-DDV4V6DINYdWWR{#AmwEsAU}jwkCr{{UuClRz&tqn1LL;~}z{j+R7Y7bG^|bmUDZ zf6+AV{eka{xs{&UPL$p^aaofo;d9?ghyW}d-96;Sm>aKpIT+iJa_$oFQ2sT1602+> zWbOTwlC!~9t+{skevs)pFgXTJ5J~gR?PjlE#Bra92((7wpZk6s{sXtFSs<7ER-W8Rp8(ereK4Dpk3+_TH3A92Zl10yO5PT)Z}!{pkA?P-!?<)aOAtk0 zmTm=ncBpM&CDAa0#+((*b=v3IswrQ;+&qfpYs~mt-D8^TKXA^pB-PNxaDI_9;|7g3 zVA4>nCWLSFk=V$N&c-i~0>7D5NC%fWP2fe`LtrIr00g`FY$6SsxLLJm$}3Go2aXVr zvMsG7z%cqrEAH(I`99a~@?!6>YLMYezyJ9L{cP_Wb!@q-M5AUrO+BlyN2U7dt9511 zesH&`2-R7U)_qP{X#Mktp8Qmyl<6%yCt_nQeGO88Nu*o`Q#w!Fz6DL-Zz^oW2Q%;E z^ig^(yN>Tuy2@+MM*gInmc7}Ajyo_LBQDXrlM`}=!^L`tL(YrJ#}fKyPxDsqVqVlQ zwN9&cVtMJDBRf)mO9##Uc51({AR3*&Ywejn@z(W*=eWcNEF%!75`7~iWYemLY-6av z3^;k>Eif|kNs9rW=e_(uOqVYciSs(xCUGh|65f~-fPWwokMu>K{(oEzCN4QWkU6bD zrf)EpIcEWKYwJOE|Lq5p@_&0i2EbzRIvqyU(hqI)knDXic;2;3q^A_(M4^Y?<}$+> zkjLY^zpht?ucd>q*E^44AQyOFAe?C=C;Ajx4$x?jdf7~=Qk_5~;GjA4+X6Ic03b5O z__uVt5WcPY)!#O?8wAoH>{pOa!6oNMHfm|e80{F;biK}yJ`36vk0{gDE%WACGyZiQz0E9;pB8J6g3 zV>;qnwCcApD>!4Nrc3TS$C9QPRA|?y3QWg#j(matBU(kl7|4-d_p&>-eV}tH5U6VW zmZbJ^Kn5Q8_P{>1IwQ}=qMUSEu{P$4zTJ<%nR(H!JI7`7B+;W^y)m#C2H8=qYCaX@kH6|I83ulR4X7=ztrQ_75jk z%M5^kHKLEK-tYR<82&~7Mts$IFSJTfc#g7ko_T3OP8p90YA71KWU{~2V;6h?N(2IC zV)Fw*1hs_g-<7Ra)0UtW&7{{lRTX42e!vOI;wf{NtCQu<*OehTb%bPH>6ClsTUG5$ zwF;+aNe0%+7IHJmm(EqAr;SOcS6!=DC4^LB$~#dMt(f#1p=Zo0Cp_;TtpydGUOC?b zJw`()&%^xv1S@gjScs?rHaq*5nME!Sw4_!$d{ZcRQTX?1)rW|TCU*>&`;QI8PHc~O z&ylvQd11;#^^LyS-n0XZ$Z^V-&|v6cjY=b#pCD!eGI*dVg}a5U>4KZ`e8o#I2Q3m{ ztx2)}O$QSFt4Vreca9ys<Zzm%HmeUsHRkDKwL#FA`iAfZ@y|R zJN4RiX+EL(co`+1gHQ?3?)RbW;yrgPgu&N}?5kBBuVGFOw*^Tu5Al+y+puUAq_g_; z399|N75r*fK5%~nG>R})&82;tZ06Ikph-IFNyF+kvR?v=iJ>-<&Ozn=0f|mo{H=3s z9}vzP=|9MO=Ed|)uu#QnE3X~v40)3OJNobIAdDKLqKM@&YP~BI{K84CjHIo9hj913(@;ufZsA36tl zE+eYe*EldpfROKZ)cx;AzwF%w?9%;+ju#lQ>Ega;mg`DC`$+hP3!+ehNMA@VK*C~{ z=OiBzCi_`U!Rau;i7B$->2CuvQbFkql=WxA(j3;)=v|t%J@@@57~9wqg8L7?U@ZqB zTN($O)u^A->s|ag588pHc(6cS7aC&+$tA&{ffd6jj`-Cw8~r4;+M>!5mFQ%EFdlZH zw}WeO6q<~N@T$2hzMl8kJf|WnTq(FOhgPWT+9+XrmzGTS?|SSuJ6`1(mPti=gBc8{ zp`vjZ^={@wTfYYX|FHMw;ZVNs-?;XjBxFxQCA8QXlY|h;8e)oMCnd{Zrbt4lY}rZ3 zo;~X*Yb5*5ObBBg!(hzjxkmN=eBSRq&vX2K&++`8417IVfvTyyL<^U+Awt z9vN<+ZKgzKhN#I}!2Zt|Pj0#s|MC7RI1aOv%uxCM`SM9c=91@N>+nr6_!#KYGh;o> zSy1@<_w+lBcEcNudVtl`jFt}aOmKXEeC91DWNTvqMVfAWb`<0?iwqQL zF^gaa`l@9D^NR{|nOA!i)0f=6RDll!N}ExtPY+iEwwWEn73+W|fKPt+!_<`K!Jn`D zoOOOMy_y)z%ry6M@2Q`ibecpe(WB+>BNNP}9jXx2iiWmhQ<}fJHBYil#qz($?N@p5 zmE)uMey7n2E2WD<3AM>v4q0XlU2mxoJr%k57X^@4pqW$XlO>2a*u&ZRs#GS*;2e)c zXsr4-?D@DkbAdJZwTkHL$;8%!T|iE7PK8(TMWq4^lqWD}Udt%ITkGZ0Bd+030jmreTt^f2?EH&`PTILw z7brV++o|Q`{CZgd!w=SRYZT4G)!i!%_rYo^Y?YHO@$?u8H{#@WI{d4X6LRONjB`7} zjCMv62{v1?wC}|ydT|JQn-5x|4%T$Z1Pue|FqJB9cSDR1XU2T51-HO{G~-(zkUUHD#F|h?{0|v z+}yPZnv_g~Gwb~CS=}A%>wk}0@h#pkJ~jNcwf%=9Ev$ zf=8%UV2tB|G`+Y0a&-P2SW@%?GjOc&{6pP~_lJ9YuWW9GJyzD+g(azm7YqI|zPAM% zpu6G>F*ng_iHq-v!R){E1V9DlMXx~()95GksUUKL{Hmz7g&UtX>j zV?Hc4|_QT2%qWR$yED8+nyx!Q^FNlIZt^ z+_mBvu892~kZx%?+#C7#VVds*1YY3SRA{inY%pNkS_MsV|DQ5y8M6FC_P@pO|CUNh z>mRcJ{ZjwCDX=Ub2GTH848pFj*-x!)f(g;x9vQH3?iLkLv8A9x6+8|q*3j~ib|>ER zoqfE#R}`?TZP`i1&iook4P3$FDDS_x((v!S!3o;4bAWmc1ks@#o7>H=tPv@}fyaEOPFol@1UGjX&2AJYvf$EhVd-j~pu%B3otWWZKr{z{pc`Lz0x~CRryb|^=63R~#o1Wej7Ad26u+sh|c3Bu1owUgV+f@3^b_o)%6ucvJ z=|_Rt?=$qjj|p zvw(?p7$zf^!Q}Vb1TZ2k%nKS4j{CaC$|3~L^Ld)C;oPrKmibpBdgYrhfi zmHue}otL&Baa9Bn0h=5^o@Q6D4CuK_M!>t05O@I z>CQ-;LI5$t0LBGqxNf=#;ik$jgChu0$wo{8y~cy-{#Y%4f$3W)1oiEMZXo|K)KpGo zYEf_6URVEov&wr`WSsG^Q$P;!Eelm-SEDZIAH%IJ-r-*j4nUh>`(Z}P9o@Slq) z6(GzNk#Pl_?$^}_MF7#UBTK<>u@gM2v8b_WZ)1>ZLLtsl%*Ppc544JTAwkm%#7v)%Ovl=Z;%Xz#0 z>KWe^2ffDDXz^;6j{pjAbYw=FzfW?sH@~&%stDUA#`n*4M0k2~2*_gI(>#7#nN~vN za=C~gsqVaBv>d^KT$nH4g30f>rQTkVo;m%&Y<^>x@#%9@!O-iOlm`_kcG*|&9(GTz zLQ&mhZxIBn^fV5nKWMGn{4r0C9SvCjZtdVlDc;b9e&GG*W9t=G4Ogt~%&R<@&jbt0 zJ$fpQ_Nd#m*P>o0wi}h;!SZJk$QmRopZElDYy$$eGxh$>1T^ja;AXeMu)!cBX=x0U zOz&nAk>ul*NK<70fwH?#Zw8`I@8fbE1|PH=hI`N|gvKtg=?+)CPSGCIU3VJ)-Wj`H z+4ZpeNTQv|rh(jSg1JL9yS^XLmBx zdkbC18`u|nQTxPK$@{PuredvIps=&+H!3n*n350kc<(bfU{rbEU`JTNNM_dRVDJJ= zjD28SeD)E=Vf9RnU=KbzI1I+PBg3b6bx_f3vbt-ad*dljot^{mNFsl3;$WkO23&z! zw5LL^zHYT{FvodV4a;`6Du6{e{w+b?FzO>HzRjrhB_8N6kVuJv0OyflyH*WGx|f^nOIxKp?mdM*0iTrGVK#?Ic6--(|5{h`*97*X5_5UO{J7K zp|T!{a^csNK%t<*<}urQZ((`sP%h%K4#Y z-(BRW(wb@AmBn}FY1!e;PEn+uxtg=uZqujedyBqv)$c0-mC+eX9ku7;slB!LUSeTi z2Fn1H0X94tKo$ECkiRx9%Wd4Xh*^kV+8L#QqeK=?lo$z{_Yr_YEa2 ztjHKkY(ix3sb#3A{)+YZ+$uVF{KHhW2M=o5&k0=>Bh^0A##!8)w78G5eO7ch{X8Cd zgR;2b#kPo*H#W1MP0!yeFoJGSs^{-WpStI(&SE}Wy9pwSZ^EbN!> zyHHu(UaQw(^d?(=9y4GVU3IexkT2N+O&Pg%iQl-s=CNVxDRafEn4BaXoLCk1d-QWt zf8{_3CN3PiK9}j0Qpu9H29#=b<@W9kJ$L)F=f=A~7fzMRiL%})b^XPN- zVjkZsv4@7z2gjuaLBUTyTPN3x{J7YM+$M?Y{ig@hpJMXOt+4?HU+4TC=4!;3VQ;Y2 z@kG|O{IB-z3Av?YrSZz+S>Nv@%eg>f5=&9V*yY&;!il2m&t7^6wjPFpgk)U@879qj%%VgA)g(IG zeLLcCftICrH0kDQ*&sQT!X4Cj|Ldn?&*h_tq*J%*R7Veh15WPqK0;$Sx&FuvuldnX z;{Mj}W}$Nj*A!^k4AtGC6S9!P(9~4_t_SlooMOG)_e1|V{#S62WX|}i3pAFKntvRk z+1q+Q5ZNtDRkS@UoCVkyg1fves*G@^WqDKCmGo-6>LxTSPv$`sOkpOfW^mu&sNND~-JcX0*-0Itmb?KSA#0_vhj-wY}C>J=a-zpz@vYcUSxQcNg_P zW$~h$ZXNV^pg?ov$B&dD?G>kzatMos?yvE-^%Q}p=+*`!k0m{Iyj=OYj>hXs0NfmV zn0!f|)X?6L_yc`Z3ZR%8c3!>VDqE3O1|UuXF3}IrqG;fusvkIKLt7fF`*bqGIdU5X;?7~eGOgr}TZELKo_esFie72Sy=i{#zXGi7V zlEyyT&(Cw_IRsOr)!_DHPkVzo)u-MH(3A<5RL_1nL3jD+r112uK@|cz*8y-gv2wm# zmJHps5Lk4(G*j=Y%T!J35Mb&W^TOcw)$=NP+en6f4tMeo6Px|1`0?2O-UD2dp!ZE_ z$>;B#^-w>+N_WzzO^Vgo{u{uGi6;+y=^OFFv$rgmezY&|(8`ouuSr@Q_XA2@qsjjg ze%WV6<+1}|p`J{7q=&Qu#Y!c_1urQmb#F&q>N>}zw(0%jz2ng<>yHFBH(5LqJ`e9> ztxr@tq(=p1Q5QJ9$_HxQfK^v_%!e0lIndvazQnfkcZR{mfd{Zq(%+T8K`$M&a|QjS ztj8a?4ghyx0+g6Ag`-3)B<1{%S`UZ;SD4(xx7z#>O)abNKj?66dJ3n~l60cpA%Ne| z@`dndm$ban?>Q_toyiccumUA298^E;*YdGRfs9sVX9VW0V+e8QA-~B-d;G@JZcQNZV(&P8VeTsq-N!I#@vET*w3$Sm z1eed^uMnkKHx3?kdTSGXT@-CpWjZI=_Ym3J)Sj|r^!iF#iV5Wbg3-TysY+Yy;7R?% zUgj@C60d8`ZzQ5JKL=X~0R6q&a_SLquXivo{1(SP;M8w`qD{{%Z8(OZ&8j;-bP3xj z(C#~Vb3t1yWO8^e616rwfgDtBvAtql5^yu*Jk9JoJ(5V@FIO!shtGUQxAfWS2d13T z7#C$bZeArpJ(uq;U7ie0A7(D?4=(C0%_I#qj(?ANi8(0W$lih4VJ?mkPyN#O*{szJ zEwp8-DDiW!e)pKA10sIT7af?r63>6kCz=Is>W3m%AXKsff)+U*-I}2Mb?&Ie1u(S4 zO{!nd?Kg*<>cJUQ*q4YKv+uTin%dLHJLzFk_(oFTOY_pa_%Co0!Io0u0}5?ed8VD# zlOlo^I=-aI_;^)c4sv|CIr+9ld^MoOFQ@U149p?!4AHzAHOed%1i`eLwci{w1k%wJ zmwvOzJ~~e5ju`12mo`29O=T!O>Hup|!f@(kqvP|(V6`zgD~UlcgZ^;_?Mx?1ZC{jy zj>u+E9-eIobj+F}H~t*ctI8_~k%>(iX(MBbltEC~b(x$MIe$$~po`$p!X(`ZslPGn z`nQ2BZmdj~th2VMrKUh+yK?d9 znT5&FDeJf0eeIG8w@=QCtW~|jjHJU74{xeGC2pS``P>NVk)G=Du%g(Z9FApL0mTsg zt2mRkHqOaC%z*LQ=EE*L?*0$7Z78zzD5~v)%6M?hnOi5E~ljO26{{_*zw-%AS;1i3VOe4T*+OsBQ*;C4mQ~4H_f@jN!Te*|33?^NArx z01H#|T~D!@wT0pGh+Fhu>Rq+;U$AJ;9(1ylC*e4bK6n_sqA-#B1F3ZEXvQtCq(cLJ zb!EokYy`5wW@C~fb+c$4S^Y|ZoG`uawfo1#<9tuzUh-aIsgZ8Z-sOE!>tJ%i0k3P9 zcc0z%tkXyIm@-K<>czIJ$~$Jhos<|b=Du`U+AWud>t%Gu3(E9fsZ*ZpU6%yn%(2|+ z3Y$OL^J_lg5F9bgtTB->C$rJwJ2`XSe{F7V&dF=m5ezQlUAIn>j?g}cQ!n)vFg5C$ zcrtEu@lcQqHRt&bEcpV#a>v9D^I7%D_mR)s4?ADcHHZ{Pt%)sP&8K#$>$2-Ce~e2L z?{4>q#ZY^>Q9S6H>L#e|oX;a-3ZLueH&JyzTJ?v@cAbPUPODO?pXPO0U$k$B%rpAZ zVqSPh!{zsqwlOd)u^lEvA0`Ma-!12jl0~J$MAEY&HC|h->XzfBL_5E5h%jd~c_XBq zqD$Y@=3vsct6}mA>R-1v zl?XQuJ?>(JwKg4Fu)vNaerqb0;HuR(g?!N@7fLzga+kC$m9D6sG>Ej_L$&`no1ZKO zHA}-ox$#fU#+~3k)Ro=Pj_Nx5_91ob=p5CD6Y1y%J@>pA<`yyWy_j1FmcIO%K0b4G zgWkHagnndPrk&M7dBCVr2Q>T@PS<&l5`E2}xBJqL_#&?GMwQejgoT9#1O$|Nv*ks; z&LL07-7R{2dYNn|XaLE+5-)l_sf-(Ud`;e4B*pZF>oCigHmhx}f|6`}rZbD0@V7uz zjAi1-3$&PaikL0y?CqL}>D<8&K5M9^=!Rz9KM-w@&D z;~Tz^=6zqWY%Ke0SZJumzI6EFL?4+y2qHLx*WfN*9D6PxguhNo2@~M3H8VXvcWtKr zF!b<{P1(gGUU4DHS)<3X>^jpb!boSn7w{u`h%egBCBg;@=7TjkhfGECeSb~(>WwlT z9UaF4U2s-|DZ=KGMx}#A)3wq#wl+;%hK0*lP5zIl5ehLX>geXFYyvC|b*)gK_rV+Q zn3gvK+ret9=U<@eU!b8Ngps<%%B7n zpbY)dj59L>pk4$Lc+uFzC{U)sS~M+9*`X3pj7R*qu&}Ty)Vh}QuBlyP&_=p7H0AEW!pfNBA^fAFQ{6f*a?l<d&YMsUi;?eMg*L66l#dV%_!50OVYkJBt8mI$#9h|S$_{g~^~DS0Kc%&A zOHk*wZK;K;=Lic=etpldYxjvj_sGPAgoMPztj5Ha&oaS`;$mV|lOG>B-e?~Rdce0h zV;E;Q7#G>p)b!?lrjn?@`45YS1dE=!BatW{o#F{0QXLt8pZnKM-zv((0K^VEGgnGZj1r<*^+VfsNDQg|mt-`3s|*zc`{ZO~P9;287!L@}TR&LFyuyrKytk%NpxWhUjgOcM z61BnUIx3aQI%)>U%(<0?(hFfuY~cy=fg*Bn^{a-AF;i-Sa?b|FinzC0K>d)mv}`$ZDV-7_h7Pmf8?-h^=9 zdi>0Us>3sz%9B5m5zjVz*Ef>6sCupTJeOU_z!1$fyq*-uzk1KBTU}kpnVS$iWE5Sf zeQ*5w@E)VAf`HDCKKQyDaFTI#SNufKtYKOLg`Qx_&Z&S22p?rAs z=sb0xwz%r0kB6XB!8^rU)ewRKJV~mPtYx4zr~Ty%zO zkCRbgh=Rb__4oIKlTphAH848D5{R_z!;g!8m-cgCk@V_IJ!RirBuu@JKsepWjw;Yt zSz1bFg#;{wEcARd3>)ohH+kTAD$~j$pWw%9Zf>4u=5oHQtjz6-_fEj9yoMMx>n;88 zu1S0_)GLlp(ffK_l+_$8B*UY4Vg6vCfRKq1q-WVSg%Ofw;4rorct<}|Rbivo!X(XI zy=eCPde=nAM&5?;J4FIx$upGyh&M~#?=1iU6m z9BD2^V=blcV_P;a5BU?Jk4?JU;r!B!!3(Jpi|Mfj*2RHnqwCRO_tT&?*V33uAHQqj z;S>x>WJ-tML^|d{{)2pgq(YOCLOZvTR6F;QG`Dud??8-&rb?Te>uM4aiKCz)Ti4Jp71y)s*hv-Ky6yd))Qf`+$(t~0 z^k(u(;O|>)^kO!cl{WWoU2{w={Jt+ucHW```o(r9h_FPL=1|hcyR|xCKc`cz1Ipry z0MDBj^QF0Lz2rGYrOj(w|NBt6m(;{h&#u+VfQSA3-{J`@U%=KHpZIIFR|Y2|xwmff zLizt^H+;66x;YP{EjUv@Vf22>8HLZ^1k=a3CBp%;oz#hghe(q9GJZ~0%Jr(l1f9?= z8PG=_ucWl8gQSH)H#q!%&B8J!I%)Gn8>_TZ2Ol#%@VV{IObEMpYAaJYb!qFvf#$lp zy0S@CgiB?*A3;MxEsxb7l+P{cKZ;YAXOgvB@oDs`sst@F%kFdCJ27LuspaJhkb>hFDq#Fe&nob~ z%c=Ij323Gqp)c)gL&Gi?=(#zm1<8(wNcs8sxfcaF9Sae+9{|A~-Uwb#bh6O^z$ek0|S$?mUy-R zHViC#hr6G5dOF3us{kR)hjT~W z7_BUjN(~!xUXykn<~py(Bebc_FL?~Nh(nZjOsVqaXAbm9a~G%%sSS?+CIelAfNv1f zdog0$D*b+IdX=0n?Rhd^t*VgvOYi_EC#Ra7m>Qos)gNZS?*wj-ZGt$g=jytXO-X8B zJ<3Zh`=(Z_&`AWpPOE!EJ=5-rvQ00<=_)Y1!ut6@N(jZr#oeut*7n9uusbyu3(5CY@nhQBk|K`rU5JirIAycS-b_MHjc$ z1xh383YzxLPU2K5QcnrBneHn+jzJfpP|lL9U~qUG_eU@jG8*XKyy7bZK2Tqpux}B} zrhh6IhRE3=#zJG{OftBag zaSR3n=4W`8bu>o-ZGxTyT7#ZTu#-3Or5zh`b8hGRq-=M{EbGkkxNmGu&h-ut-dw}U z)E6x9rZ=zPUl$c!H0`P!vO4e_SHq{|j5^{w=UrsAwzj6*yOfM+N?9I!wz>c6q?gCD zwD`-B?D;_-EE3ct694!6Hom7 z{90QzMaAttq3Ulbl=*mgbhMAVKg@Q?wk;o)L%hEaZIJFHn`iIH%(`@7;Pq?AifZNw ztq_@OLPD!J}N!EO_n7F(3U9z?)CDH6%IIIaep0dDYLmA+G!$n#ops<&O!jU+GBMR~UfWvu98B z7l&(6dc7J|W)+ohpPgCGQ1xV-j? z>2Vt{?aFlL=&_O7FUyYIIf#ouo%POyU#rmT4RS7Ug_ca0&)|zR?%x`Vi<{N9!!_dZ zE~MaM9&2ms(iby}nbKV$8D1fZ*QWR>o?|%|5!`9gch)D~Pjqp4XLqr^B+9czPV|x^ zkQaK$3lMZWlQ>GdY0J7{c+T^MpxdP=>$}gO#ydhI_--;NZGsIO?CKtmc2b#@ppQdd zXum`$B9$~|$PX2cN9mW0o1Wc86^#7;@w2qF>mJQ2t`KWpQM$6?ppPv+LR*K1(V6Da9(UvS7C)bif{WWI;EDL~CZ zY8==gc6N3eySpHydYMSXN^7-(F9rt(+uGWOxXX`l8xa`|Yy1$0anBIfC#rkuNQ)i< zCNc&Fw&zU|^>=iw9n5B^vu}v6uC1>#b+IHk>zZUgsM65!{FXS0L)R_#&k&nk)w*WA z)UK&DCANLrzghhRt#f5}V5%J9;t>YF!+$Ibp?!r4ii#j`ymjjqHy@v=e05h>J4l3a z79p%tkkaf@^a;U@g8AXVsamRH>}>?%xP_SVP46PF_itWUc)nm5YBYIT{(K>26i2`z z5<-89rDtWaY`q@CH9%=4_zZZV4)3dd`iFYl4d1x|Y{Ak}hhZ4_S6f@#q9)#OFE1}I z*yE`7cP^-@sg1@Zi_F~jSL^Mnd5gh|8c)rQ+I+=&9df)IUe`m8(NN*`40&S^I^aa# zU6;EXSKOg&)v%0-E&UK*9ofX@VXAQJ-;o|0>xd@2&&UsjZU4d6sR}orzXX+$k%2-{ zU~4C>W+T}>zqaJ2N3&Ie9a>u9m?UtE2K!@;y2j*mDuxA&HX#hTaaoC4N4_&U-X+`# zf*nt_eCG!DoE05fFMc4?GMGRUJ=2uE9HG72Yqoo(j6f_{x}vB%y!&_uZl7rB2k50 z!d&~8VUkN92f=&51xDBC`btZaw%@GC!99qYF-?2d)CS%HacW`bk~0oZfzYy^th}1x zWz5ch@dmdHd>YCvkgjC{yM3;w^L>%g#K%?zZ`Q{|y9moJ=9mHX1ronm+`3Eo>U+Bxroshy=7Gd!N{<3&0?XPWF6Qi>BjXy$`>@B_S=)X;Uf zg(Zk&VZcAjW7y6AJGlAnLov6jGchrVM(3>bbg^`S9X8v=L@1r|I`Jl6z8>IM72C?} z&JIVO<0|fi8O0$Zh;mQK_4srYe-z%2G)ia>o{EV)6$X%0M zPnEEFLB>K{pD|y0cIUn~#)zofMK@n39q%r^Aq=@`p`L z43}E&xgb;p^mgrhZ9{{96M@&YWo9Nbv4nNPdB<~zRcKh4o+IqX>>)drp_goVBYQC- zt)!44yke!s1;sm$vvY|!j$nkKZ0OGk^A8!#Kgr*ysuGKueTa4W_>H1 z=v;@{t2kbbTS-I$X9)CC7WJ&?Ti^-Odatz*OG%StQoX+s`pv0KB70-C4SYx_Pk`?`D<~Ti}I@q5d3Q-?>Wa4m;oe1 zoWMU<+`~nqt{qjL`CM+p*1VBAM=7a7M?AkL{L{N??Vlb9!@1YU zGM&kG@f{u$|J(=|j@6J!kKRDzfIGzfZw3b z)>F5F*W276>+$n{^dSGICkV#)6EOS74Zny1yn#Yeb5l|K1^o=-m+7y)>inP3pA96X z9M*H=H!g7|dUFcbb=T$M-!P!upNQkWEyNKFiTgKx^LXD@0tUbjwaotjCjXDQ3z+9Dp4r|pLosuEDc3)xnm@<0iwZ(W zYUyiUCU+m7Y7ichOP-O~G833-5E|_W?@NZM zb(DTfpw(9X1()64zBQ+{b8s~!)T$oH*A>bSLcNLiJv}#8W85~se?JacA9V+|J}n0- zS`gG+V%QJfaD8p9>vDDuDo!$EnvIE6qSvRbzZsR%sXOP>)H-W@h_u=}vtwv7!>6Pwir`OLL6g6nFf1<2e?gshBK zPIa>c@1aIVNB3z<~4$!c_VV+O=S3RYD5h$D& zumUuiV((g@G156ADbb#&OJw3xe5WGsqg?`Si%tV&x*KZDBz_3wwEeBF2`d1b;eg)# zL?VB$sz@c*P-@l(6P~ZjRQ+h2SR7K&g zTXGT8K9kVsXJUQtcbTf@q+iJ%u&C+O4I$Z@8VNgYlP{@gT`%O#Gdozz{pZ_(fC<1M zzykMO?x&-4!mA5zX18v=^EcGcluBO%K8dYAKTI`0B-SZ5X~=FbX(AnSxdVrEBvL3N zb`-9V(9qDF^viLJkiM)JUeji6^%K3hcqnXs1{wWL&{Xwo2|H#Nl-oSKAZ0~I{!Ef1 zQ5Z67khT58@!!^rf#o<>9ALiY{X+X5P!^+Kr>3Sl^=*PeXoBk}W1{j$(N8Y^0i__I z4j+O$!$w);Cr*1(hO5j6?HBl0m~NPa8kIE;uQTyiRF%1?gspP)KDlg&=iEg8UR=p790^YLr#lz!GmK?=dxIVpV2SSFBBQ;IV-j%bX=JDp*C7d-Eo*qh@Gu&4Eje0W(UD`s- ztMb|{S$@n-4{zvbYwPxE(s)iAw!zbIrRZqCuW1i>Ub&It(8Sv3I{PorAn05S2=mh`)#`0TO>ZNS zP=nl?AdY#`3yg=bay9JDMEkv@SR&q$i9{{i1BVVT=_mr6f#J5{pTg6yb>+%{QiB5?)y zIQ&G$UPFNym)onx9XP&Y1caAPCKmv+@r>5Oceq1RriCA8{*`n1m0??|kh=C#gmOT) zFshn{1?_*M?CjOyBU7w?2*-+}p&5d)UL{}d1dXkN#gui3!n@}5nMS1euY#A!%!y|vR+ZB=m(x0?1bp8iVG~&ekVf|s5$tVr1@);7&@sG z1zfY>;Na9$0sD7GWgri2zquH3b-{aM*=oUT35eWf-3F?tn0}NpTz0mwtnZ{|)E;%M zvquPC9;4&kt++M(NAG%`#nQL*xpwzMY#u(_4Cna&lQk&J z=i=e!j*pMWo<<$0ESm&xva+(GyW0m2AF38mgh&H5L@5uG+i-$4hSDn~a8Gt6;BT|o zTOqHz6WkgMBM34dNNCKFB^>iIWi(6$7jP)m4^eXO0MU6Lkt5D$Xxr^O|6z5h=OOuD zcvFaYutjT{aG4@JJU-UcC_=cO0ugBrnKUPUciWReknLsN)1XHCj z^qSD(18%{v)*@Wjmyvv$g7TWA+E1yk@1~-|&mzTr624)Rp+e*}+i+@5k)Y_d?~#8l zbJcqM`03d#Fka2M6{vI6-njt%-W&T%a)I@@mpG=;szt?%5%pOI^a|BGpoF45u$shv zYl`M{+J*0pEGxtX$oWHI{D{WNGEWeY4tr5{BY7eS1Wh1%{6#HOdg z=}=f}>Pq-B#%9%7AxzYZVzS>etw#`4q-v~;UDOc+rcd;PEl!cZ1!JD@S}l*@#GuhY zJ%=sQ?vEr!f*60n%g*Z29v{J)FahHY*LNc57fB&^^FMl1D26RdE6#ofNsa{rU5K=;pSamN4?tNVTPv3c|LIDd^P*8BXeZ%={CdzxmLW=|P$i?MV zqUo2K1R?Y-OdAQ(j~*Uwb*e6dtB36g!qCKlpW*KAUb+u7NHz#hG#T9Y9tb%4~c z!!ehX6t=U)Lk#ky;)7y zSR=)<=a5$|dsyxLXryQXE3U5OG+~A+-aqs;dJi>3K|2JdNYDMj;c##7d1?1x;SUd7 zT*jE~DB~Wo^77>6vj{&8=?7XmIg0$({nEr8^P3B4ui@_!*@k4W(P&zZqK^7ZIalm* zFmgtVY&MH8dLly`Dwcbhc=HAm)rjwF@`TlDWHNN^N@1AyTiuR)Mbm2Rj~?4TfVMdA zt+n_M+m;^;34uA|mhbl!*0d?NK%MXqE-dtl5d+N0lk8md;+# zki)QA#f0tjDERNy77R-!i%F=lX%GZ}D97=iMv1{gG$|1UJ4Fs*VaR{}55?KWkUxH& zBKVlJzIWTrBmY!xhN!zSG~jCC@darVJ~iqcYX*?#|NEZDQ2SaDL9yAWArEb|)-jla z>Vm&}%i;e7ZLnEgfl(%yXg`Dj zyjW;88HONs6EGw9=#^3ri7T7LmHC8Vpzx*1lm-k%fht`F3;`&RVCa~g$=D?7AXc0K zFlp7=lD~-#>qb6|qnA^C9ovIk4*%j)70FmSZEQ($YaP}Ff>WKQa3H;Yr|DQ`^b2r@y z$$i(vfZqKR9KU@YB=1WP{@P}96Vn+=jn$a+IEiG!Lt9J(-eGrl zcU)Xt@!=ut$Kib)+SAueJR3}#XPa)=gK`{DTY4=_I$5xY=tCd02$_Hs)v66@+B~~WxEe_Y>(jg8bdfm zo12^aeS7{g2k%cn{ll9tAn?@Evn{v!6y491ISc8?8yy|>*$1kL%&iIwcFpgOR_cmv zm#{7+sV}~cd6|GNFq+UNt`jeGnrGMLFTed2pC|Wr$19@l)E}RznB)qL`er(4?4tfDLW&^4Mh|vUoIM?p6yN|PIo`EPHoG5lm!Blq$S*(-5m+8AbP2q$LZheYKoE6 zU$aq@x^rc0?2{g%Ex+eZQi%PckC&G{CfdfNM*e8ybQ-88?s{K()n2iv*Q)MIQTudd z+_9F}7N=?U5(NvEi9Yy&`B>Mwi3>;n(u{itNYp)L1&;An4eHl0#ilr%+!tl6ydh=^6#7*(-XCyf0s5iTaf zX2TDGiqLj-32JE`sD(;#t*dFT^{;f~bVTsq%Wf44x8~79jon)*>U7JJXX11JY>z6g za`1Tcp~|Ry_}NeY`>~-;(JpE%(?*+Q?41aqNzoNeh!xVlRp047E@;l&%q)a}# zu<>zhbjz&*p9ka$iMnEhhEM5?SG^WB#6+xq*5MIHzpqesY#}Myx&_Q;dtIe9%}aJn zxR^33^()>ehR0sS_TL&wXJ0!fir4i)WO}N{Z^#;~iSY^Fk3~0#Te^UH8-WwH&gGMp zjJ?v~yeL;6pHVVTDhPffLo-XzDKZd9TVIgh%PjLVqTib?L+yta;#%3dr@(nP3muiA z)4dt~v9_o#63Cj^M>eC}GF|6QZsz4)ghCMNrUhCNq1xgw5r{dS$4F1^lpM?aogN6} zU0KQd%E!){)+#vTtmrJ!4l2105it6iPvKVqPH>Dkwx9eF6=|esvp%_}O+Bh#vAg>R zCMrVT{|r<|RmaEi5y#MF%AprFV0kQF>_*MFESYN)_YGps++23z0_L!ayx9p%zdka#tt}+IEmrf5crPZ$K;EQQI)l&KjC%jkqh9$|vsU4;v@ZrfR%Ugf zk{4zJS2ezU`&Jw_Q(owB%E7%yA5My~li02sqkb>-Zn5{R8*wYzL)&kZ9stt}z>JxN zl|m~9hL~veD@yw1PrO^C;j{MHtsQI>LTkjgMmEIIdg4k=gHl{GV@PYLrNXd^&LbTr zd>=e1a&gM_!a(Ue!v1B<(RR5^qbCawCavT}|Jr!kxCu?1TJRj9Gi~A%!aHLN?St}n zU4ho$l#MGP?)>IWTvA#X&?9{+6C9lCTMkU^H2C!Vbcwr8k?u_Z$uBaHrnH_Ft*jit(oNuWcU|Ee=GsEuw#Oi|E zQY=zZR^#%kz)Gp-No8r`0jo-4JPGDt2df&FU*xaU-dD-c!7-_(Q8>CaA(uqS8&l#U z6T@c~N^;+?oPi|r{odb<{bEAzWtK;RaA!_|F?yAmeURsN|I5MWUa!CGNBijedAL9ibXT_YvL<`=IqCS4S zs#EpO>=^SDDZ-i1({C7^B5LEgkh7AAoi47wFK3(kidooO-BvWaxX3Jjuh*NI#09j8 z?MJvYFi@(LobHlK?oEzIc*R+*f#DB-)&FJdJlokRTN=HP`%~(M6XVTT80pNYXW+ea ziKngkc!?udi?6xoO$6SJSCCvTPwhTCvWT^fxk*;rRULk=*CQzQkbl3saIlL*bsKu0 zg}zB`m_H#jF=L>*J*!dPGD)>~sXTKa_msU=h}VHxWEN+unvnd?g}%}bpC`pjV3kM8 zxXP(lsJ(M7T`y&eWLpxQ{kq;ZQ(Ua!_|2{Y@HtymB*gFgE!J`XS<2pZ{yN?2K7Eq+ zY?O^qN5cG|-cW^3&uWp>!pi<`MNJ74#av_BixmHMRS8({I~6Zc^V8LQmx&5ZHvQiE zTHKJN(+w>zfEjAG@yzaTZi;|)9m$R}n(2JC;}A!lRo6t!FYvHq z7Kj$6a3X9Y89zDEQ=idOjZd>_#KfH@k6eZ4pHRpO9ktKk!7tn^wqI*SRr9c+USbhL zci=np@_R0&Wkq{OQ^)J=HOM!CU{!1fd`?ulISnE7P_cyuLsq8iY#Pcv-^j3`PbJ<5 zyC)c7$*!*ORVl83yt2BQOEZ@;ns_32QCcvF)hqcID!F^--nvc&Gvy?uJ^WRE!d3(l zTuEn$%YzF1d1>WI!jT{;e4Y(Q%W{HSsE9OXenhOjEA)xNdf&6qz{Kl~u?x)JjCwYA z2WRD9pK`s-Co7fDn^50>MyvXSX>Hi6z}!GmDr2^!y5>_Z8G^FZ%<=*wHEj>yz{eCN zu-AnR~7w7MqP%M2c zbbrR>O}F*BpNv_&%|WZr$td@Ml8Ln(MyssZ>(&l2YvQ(efiAH)j=z@W@D+La7Lqh% zap~XGKCkG!LG_OV5sa?zksHRBgiDhsa>71eNY5kT7x;d=?FV*J$HQkAMXNy*uEgZi zF!#&Z#&01agYy!-Y)%~bN=J)z&P+*E#Pec3wNp|sDl=RINTh07$?7eqX(^R5(x z9K?zW0xBX30xDGy5K)va9fE*L4K0K8gaqp-O#}o4q!SEF+W3e zMqC;NFuihffqWftcF-aYIy6f2u4i3{ZJOE%7GYN0u`2NOw!C?jgMNsLyf4<`9<*XP zSv*B~c`c}WpYzw)w^8$@!&}WeB&FJ~_v}nO2c0G!5>AvRx2(;%eKGAKU)OB1)^8$j zODKJG6Y{Q{hS>SF$G1=HW_?@~BS1*~M8-zR$I5Z3Tn@(dth}dwU9s05Ya(U8h=Yfu znf&GsFIAx-%5-6FM#u*NAH(gy0sN1#Yue6Ee7@>%0dZ(~)Sl>MWp4HROEDTGh1)66 ziONv5PAu=l$Zn)xlW8Ur?7q1K8A`_V&UHNvzL1`icPdlN~!m zTR1Nhf%kW6i!WilEHLsXQTD@*O@Mu(dgS|vp+$!+o=wg-o=WaKzFcf7o+CVEIZ(qL zvJj(6UQY-}dZ5G-RPpy?Uv~$4cz-<08eJXqdd^ZGYCh{;sAQD?DMF9FKHv&Ri*>ip zxm1su{JFnCEQsK@*Eqx3&gML^J~U(O4gOtz#JULic)(1wDOUNJical7>oioZX7jjp|e<+$;Oj(Se(%f6w$2 z((Kl4BiQkFdGsc7;KQ7OSiM2mG(ejOQB4xY{^ef3gM1eT=}Z8fLp5$UHnMBf3ep-X|++ePHF+8wzr{p zac}M)HpwCd#)kDC86|OMI`F|S_DRA80d6D8lj5&z;UK$P_NGTiNtHEB=L><&8am#G z(BM`m0wL!nda^oTn%|s}D@xSD#L|waxw}hmqgag7(zoS_lzq)Uqa!iy^KUEc?#dVG z9-z;rCG_=coCZ<(get0`$JI2E(qY!oN1VF2`b5SyI<$g@g+uk67Di zmEWEcZTr9k1ATaNF(n9*bIaAaXF#{#1)7Iw>~5u`lJc`}FM@<7kHa?~Av(cxzwVOM zVc=11Qime9#Yc7s;jC1ICZ)^#JiiJ(+hwUQV}03T$B?;1JdZ(>kL*p7>eT1YmxXMb zv}zDI0k@nw?x>{UEs@-1)K#&|FQ_Lp=PFjfW$^UU0*u8`?vK@xnNGSTb9Cg=d&z0<$y7G_@d zg6)vaJMN+zO$M@YD64>-DhI&oc|(d1zwvJaPm=)i_*k)BM#PuQ61H(eH(zJ!1KDTetQo zs63Ah&%!>adJ=Fdd}Qr#YrTg1l8#~JxKCP-~V=yMkbQu?dOlZsbe3{R@hp*M-P(2(On^1w--K7j{i?H>mqBrLg_fRg0Z(=Z>*X-a>X4yRAGQfZXM?&fAO}5z!!W&<+x< z@Jq-;Js1(f4PHpoEY4x`h&L+73jy@~uM0>32>Bj6oXF>=W+S#NET}JXx#A{0t+SIC0S2ttr=Gi1tN%@M9 z60B+5vvRDQFNz_YSSs!feX#l1&l>sqJbS|xy!(T7eK`8}{Li_0RL5jzeelza%NAjJQS~8eI=QKI1;$k{l zTN@+1>ZRE}$VB1R5HLXc95&JM`vKnb+p5@_fPP4akRc!1e{OiPEL(|-kXGE6db)?u zGb#jN@!0K&8Pg}MjfbN*tmEcmLOzOi_A0{g3_?Om|Jvo1V+@quK0-Y2hyInq;QL02 zN%>T=wEBt7#Ux=etEJ|H7P{5McNad`&f41WV~l=*;h7)0Qe#b*J_&YCx3qeQlr)m> zp}O(J0|~$XjJTs9H4h0rRl*%A76LiiW66$7KC4{P*x218-G)TY5q*ew5E5NFfCcT=P%}R|)gsjbg-t03e1%|I8m(J|U2_*i=ek^`p75Ol< zUAE7MJOE%gttku82nXx=1{3JCE4KP_NWtkugV=nzs%_C8AFLkHr*0E`qY_-@G&t+kOp?ONfEyz2WeL#Q#5X2O6Z2L@3sTO8917HVU zZGcc}_u2lC)O<7outT{V*>`ts#U^?PZw=2P4Gxd*guIhL`-l?^b&CW);fsovN_R09 zCS(V0$)tV_U`g9rh0c`rs0m;sZh0Lo*vPkxZ>1q4gQm=;uykF8-%v9;G0L3044<2( zuw5?ZaaaLX`dR%i-9_9W?lk*b-Y6N@8S^8E$MlgEK*6OOu5zTc##5Xyo&?LNzFwx+ z)a1+s$DFZEB^~;{D#5^tjV(p%`xhB*1ymbDi%YHt^d00ybR_dwUoj=V9_Z@JPn;_N z6L?~H_(QdVDX2Bv{VV^iX}9A1En84$qEgFYLkyUn1;OIjyzG|QYM9*aYYK3$iJ(B= zUf1_tFSd@4})&XH&r15RH1NpQ*0dVK4-V$Hr5^Z0hDSEZtF;`pj}`(xqI z&8v^&sKauhex$_|@>_h0!!DO1kNv*-ZTo6#?R2?6A4zX#Du!D_0iL;^wA@KT4FW)r5&gW~ zuBScWMPYUfJ^uBaZ|*1m;?DEn{N0QRI#pU>qDS~L8WhIyjvY{S1VTM-zg^k|*8UUU zF%F<_(5XSnmPw4ip|EQP9atuHmKejQ4`;k=b!!IYJDrep1y_7*Sw2WbEOl)t-N>SY z7-Ok|mGUkpca|Y9O`0Jz3WNB4tz-Vih z-iwzNb$Y>Fse%HX50}s5yUEv`YM(1{j-r`Ynt0wm@z3NQ*v{nku0uD0t0!fry{?~P zjyKI!!WknIGt2sL=rE`(e?N>QK@IZya}yo>tCWE3gv)TxQ9$YoKHur0KuaF)HHpO+ z*ra73A|JwitD=R~r?b~HY@T-r&$a++Pg5U8(A8aZ zEsVXn)x`v)d&kH@qU*2*WAU7-EwO0kX~o4)GB-d8W@Ium}95;nV8kHkvAviFb(Wx`?v?p%^Wpn=4l7DAl6Oo$}Z=~tFrwj@+ooC z&xVLcpmQ79JO=~sK(urmwSFWS?is^ zq^de{zf_eV`nlDQO`1A+EY8--4;R6nN$Oaj%FKqCPV)N6#LbFzupnsnqh84I;-E;r-=?W>y_V87JlHAmIj;93LNtPIfJ% zd|>W=C_VrR1yQS*1hN*F7cflG9mJ9+xGi4Ss<5K?egoMWnT;+ zzmIy*yxX!oeSrK#-KxrMCfe2vIGDypDtS*QYfd5HvM5^;j-O!R5JYMtb>Eln^m!TZ@sQM zcB8o{koEq(2D}PrU;OA-f&_B$4GiDcm$V940ic4V8?5O5_X!FJ3Kw0*Fh?q!(qq+k zzS%X?;~HO;Z1*o8J+`O=e`7yq5j@kvVGRDDJaK_z+hp4hFaVEfpijG^cXqvr6MOcb zAKR<^^PC2svI6SUcj94FfZ-YtYljp28EgK%%l@hrG|2$_#UHd)Y~6+c^S@(c$KM6R z5YUG2{=rA&2dtvoO@FVi|JFbH0cuboN&-&Te+kmCiJt(gkE?C-=J2l7pMU-eZjxK@ zsEx4TPL=Zj3*m0Hk}0ww2aps;K=S_X=*BP%l|uC9A}II|u*c&zk_P?lD2X`*;(UY{)pYLx~^#Ak^ zm+jbVr0(NcKV^JqrYq&at3A*Ul@S~990Esq!0!9!9Qb|Iw<&l5m{d67R3@oBTq%Xk zUo#grQGA=fr=9=*(C-WVMHrlB4qc?0-NSkCb4UYCMmdW^Y|X?so|(Z+4*b({{NF#K zE^tTFptviUG4}{1^nvp}XXx)q1S9Lm5urTx6=WN3)N#)I%fNEJ1us96v!-hQJ;?_e z8ULk;{J&iRR&BxSt-;^a*@rmJKd002OGb#x>-ag-Hjetnf}KOA#*Y=0{>f&eV~ADm zWvtW2sdm&L?fw(K6-=+?i&Gh1wv{Ft96$P5@Ml^!3AO%I>5SM!@DMlJY>Ha~V&xXy z6Pv0*fH?}tmj9do!cTG{m^Gcs>8Ee}y&vZnWHyRPx-oUlfD7vKxcL0fIhqOB43hf% zia?HP*1U~VLt5`sUuh<>$9vRQmxk83k#uvX{0l$z>Y;lIEkCy7fyRQ3mdK3;*v2g1 z2GtM{Q@3qrw*!W2%xf($G`(B>3ZsPGfuz~j9+ZEP#;<^fieNei%Uk_}k^3Vh*mD0r zW6b_9r{Mm#eZ$`4fFR4obOi+5i2P;CyOzJHG7Z35S_V>L!mVQfKbDg_@zk`mVr>mE4T$i8*#7%~$VnL~pEA?3 zb$+>#)DK8X9EDX2QP`52i|w}CKn{&tiU49}-x<&LNkHAOFM2f^WHDS=7+QsLWjmYD ze5H4$I0FFFK)s}~q4>DE?~*1K@_M;t_1pXi*|hW*`MY>D8PDpXWQepwa89?ga=xW9Ip?#)3;j5)NZ((1?<}ja1WIAXFVa(`U!K14H zzyNL6Ch82nZok#N3gl{V0|V9r!!%lof&@wf;K|Q^*SVTeB03HXl(_IGy5cC50_FEO zUADEh*}Kb=+u>a%AMH|-S~G|k#kHaxv@@IOpuI|+io=pOGfajNCo-}DD78QzAq6oD zol|I*a_WzVib9zz)?pJ=@(poGVNxO(qmmCkv=16RI4y*P3DP&RG)|ag2Eg>)t#xV^ zi}uLCzyxdx=o)vaz5^9=Aje03zUcpF#|7^jVfz@0fYZS$D_RliEAY%lwxb)5HhW4Z zUk3RRb~CMwlsb?@1+XfeQlUh_mGNIdRTT~{jZTKz@O7OssOR~P>Q4t42pFId7hTL4 z>j0W+%X#i{l^DiR982Y4Wn1P14t~_c;>kZX!2dN_HFi@+S7rZ*%R;lRy|=R51qAoMq;d@05859~*5Iks|Lxu2gvi&sFgF;%8Ny z@8}KccV&O>60sH0EWIr+T)LJP7}4;nN%Fi_-YFHoRdw-cd>m7#^RwIQj{U7gBe|*U z;BeXq;@-Wxty8yj%pRB*I*VD`@cF(f+OJ)bwIMi3HTOH~^A~Hnat&_8g(q39NfjKJ zIk4H7FB}Of%l5Y>CAO&;z$+uAMA18G-}iBW!>j{KC;@6GmynRz*KAdA5&)*Tq~Aa$ zXJsEyuAY3(*g#S>j5TG(PgjRDHjkhi1_9%Z$CwD{o_F8Gx~dd8fdxf4pD+MQ$;MY= zQfz0bIfki}M+dEMgujR@-wS5%97%&F|Vft_9L(s^fNhHGkpxD+|+jz#BalU z%nXudF5SY(Ekq=BtR$FQif=f_wwsiN^CkAYQhG&{p#{uH@URyaj31c@1PPIqd^Qg0 zS8__#9?R&(%sI=VJ~)s>GBpeEy(UD4J9C0;A65E7NFHwuwc`l#DJ#CI`?2f8=-1)i zC8=Tv*-*;9F2~N7WA|`|C8V6mK2Wb6gIU7K+E>%@bld5*>eGTF7P#6e{?u^f|MPc63%QJoQhcfL07jP8Gp z&lS;OK5@|&jG;N3Vf?yNBI=W{fAqJ-N^Rf$`!&S8g=_T&2uA?X(< znBm4Y#OmrYtN6bR!UCHTQ~N&520b20$w%Xz&yaW#@HfL`xq-d&5$4NiLR>B-B{twA z!yAiydw0^532*23HMdrwou8z&jH$d5R_{nSl45H6dpuqvp&a^j7nA2@&ji|^suo3wba0Lh{PdLY$LF%VUv*>Al8U+5<{k}CR z`=lm0JXqR5Bq!l^{ALmtDKt*MzN*0|Z&&&h?k~CHVcGp&i6ca_SkLY4Yt&~6*ml7= z=obS~4{3td4a2-F?7>tBV|mbF+dimoa8paJ+VXqF&RG4YR|P{mZsau1b+%`TnIjH4 zr>liPa78k%QYw0rAzzAu(r{`Z?9gP^!frH zY>m+y%}vmFI#5ng^(grhrb0npd#2bWWZS+VYFk!zKiM}iyT2yfwrphgo^Q4wd&=Ud z5BY->DvGQv(l~^pwIoIZlz?+;?Bs2_`(=|8xR-OcuF5aJ%oYMV14z#=A!d4QugUX? z!C6>mb9xDUGBGPY=RyBfFoHWHRK@ycvWjFNl$7W>)`XRMMYL;b7hfpM)V?cO3VP3} z)%7b+GkX06(ER2Vs8mYmkiT=wLNor_>%Pk?TGMMM`mz+%x>Oz1t`0ZHX>}FY`(7@bbBkKLdBA*orb8tF~#fh3o|7P>I6 z(Uh_P??BG47RvVRYHU4`skz6Zrxy@GJfL_W}x@wh_*y|vxYGg4o=YQy2-$!yxV`5iY-Eqp>DE+aX#(KP@ zryPD!Zy+@FVyTFHgHw`CAFiggex}4~?MesD(cW0O(9y#!+V@khiQm;3=XOnwdaX+Z z<@a|Apy1zdpEcrfV&eMO7-7(sR=BON4e*@Bt&OMP&fBUpXe}mPy0n$E#cm1KrphC- zIqq@xu}&_XXyN`)*GmBVwHEDBQY53MhE_oSqHWf?j+s*mun?OLU)*V4ZV_e9DFTez zy)p@KXP8)`Qg)a5nP4n$$^D#+Xx|3$U^H@mZ;L>WCQha~h5cfs;iiBYpii^J@Sd$s zs?6n%k=TGc9fa$Zao=oO;ByEGB9HWLUuZ>TRbO7SMv|_XN7bmOxNd=HK|JkHfr!fF zEWSMLOY=re6s0-~+rkqtA09gsvn80<)f(ekx7Id$e}0Dq`HF{A@_C@<&9SDNt)JVb z^1bapqZC{)&pea5Lz}7TqTT9C>u2O2s4*c1LVbxz(?hSe>HHC8UHhAvU@7w!8#jp~ zA<2rKxbxtBbNH=VGw1FfPHlpQ_2(14tVPz(1e45(=7&;$o#4S0wg{@0ICou9(5Gm^ z$`A+gY~3#uh{@NOxa|(e5!JPQYcrCrdxrD0$jZX(-aLgIt@S>d6Z?g> zf{ket>h2%x+4=x2C;^q>dKmfVEy#F+e+8nm^U7#0v}fi_yHYRivOQW1=`L2S928q| zT<8q$z;qRFg?Z-!?H9ItlORk22YR%QxaSxR!H9s*C;dKUiJO;D1MUyEN6l5f>*i|u zzqvHb%Uua{hSw>%M0wyq5Zanhf;a7IR}nnDBhA2jtE!k6za;hyeqzl!A!+K2wbuUU zrlogdjr*eZi9Dt#tyMdi?CC81SyZnp+7-dgvnK+#Ncf z;a>?CxLBJfB)^VIEOL~KF))*~Ex=`(c6|Zh1U*_FpbSVpQivBWpN}IXpIsW722mg0 z5Sh#n_8M}5er0bJ1s&TFw1pe?cV~;LcVU83>_b_jU7SWvms{kMm(TN z+Xg~6n@TekH0GJ$$T`}fv&%0XU>+NBSFc)r(sW)+bkpI zG1s~mbNw#|U29IO+%_EZ%{@_^h)+O*2H%A9REa9SSqzMDa#dbwh%g~P-yKSYi*I+LHL%zt=F zrjnHxX+21oTQc}6^ikSd=V_~58HIQsPjbi87}W~wkyP5FUG6}SI^mBdQQ9$J#Id0; zlpGlTeQV3!r?~5Zz3nweQF(jjOtX~Swl{E$o-uN3a&tnS@m;5$kBWHhKsuu`t3*aB zNcimL{IPtB{hv>}AHjrYfw`;lX#0&7{$^jdE`87-#sZf|4=b2n>^G(eOup_cs~yLn zjh2>qk}q!b>qS~r+RTQI2L^q~#hF_L7OrVY&N^3d^(W1L^^jKe9Fg)@v6>?F#P8Oa z?0rk|tfV35ahXcLq5Lqi#P+uqelicHs`$|M>5JkZ+7Rp@@A8DUb1hXsWu$NfK6L%= z>AqyyEb&I%OIqKETm@VCgE$bpubh+a)wGwdAF|ff*DjZzZ_tEZqdSz@5%EV-_gOfV zp&O#jLd&cZmYEQOOm+LrR9cbDhAA}BG@;XMcc@{jgvC*1b&mvECn4U>(pSZP{X<7q ze=Ma+dSQ9QXb}}R=3Cv)@`~bffBh2fIQe9(JqScix4IN^yazN=LT13!+P2(3bCWRm z_qN*qjPlifkDCs-r!+b=#nN6Or_!uG*45R420vxL8M?bleCeF7`+4n13u80+{`_z0 zao{3MAQ0mGbk>UE{JK%^yR-V8V;|jJ+9w`pqlV8ro2{Lda!|itZiLYkt&!@-f-LR* zw(C`erLK6Lx0zkfIC;tNw+sED_}B<6Qy+jTV4j{3X(je!@DX`hl#z!tA=t(Epv#gVfiaLV}WQY?w{%dX4PKeBijx}Cfcc*E!P?DgbgN9PFqC;IF5vUWI?=MvmJ5z z7TFc(c)XboR1U8A`zD3&=ax__JiX)cBTEymlg=sYd`A6I^)7!>DRdeK9iMi!%yVj^#cG-Hd>qd+5KYrG-^nKOO?p*S=Gt}Zz&MDf zr)BSwb^kd5oKisvA(e7Jf1RXnZc?PILII$V!9F-Xu#|agD#RrLhm*9CofabvF~_Mz z2Klp9GHtmO#UFb2g(DL5>uM&A)!S+%#PWw18z^gu^Ud<7#;VuT$}d{iZRVJ!%9GaN zO|^1X@t0z6$aM@P)=na^QznTIEYUBs^A391`7{)-RF{17C6Ej6-Gr#^+6(l$!;VCj zp^NDA4;9UxG_IBm9a>C|c#3E{zUUQJJW;VLF(|v=7tWVTa-U{~u`2tTx+Od|25~?3 zf%YtQ-sTuMUYMRYu&!z4oDpZQ?q~rCJ#WdFu|~mSCnHFEN;441Pfbqt&Cv%_P;K*i zA`5$bTWrFgcHwb7S$+Hyp#wUSmn4M_6u=ZGHg?Ys%0Bma0?-MfpW!@>uKg>OYCaLk za%iK2LT6H`ev`hPM94R_EV74;SjU>+PNL?^BZVVqC!YTZJe+=BywE@?!KDAO$S#|Z z$#gs9N>>=^#7sITb#SfGSREjbJRXGi&%Zo5{k6YkZEJ*1=3}ni5w|9HYn1(Q=$V*W z64ur{jy5OjHZ&+pb1z36EDO~(ldN9Saf4(1kI+LV1c1JJ2`VP$OzD_v`++O7roDIj z??Sw}pk(3P5*aEk1^kyN7gkLmm=ssO3T0mMjYLeQ<;t4N;G#}bq?qjzxkRl~G>p^rZ&OoPlmgtu>$RYr9gQ>dZOL4VD7a&j zGpkiyLloN1el~2HHd?=Zq}|Lf>;V8RR~f_0pLbWEciRf|C<5=@8%}@K5hR^-CJwTg zlDk*6>jaJG&a@8vlDVUuTuhktfu;8;6u?MLSXL$k+db86cGXTzMT;vVrG*Y8Z!?z} zq6cpqG8e@U&*oqytSzUSm16a{gz!XLHxx2w=K;YXhv z_!V1Qz&NFk%rQVzpZpAB}&Gf(}5pMyJ{y2JG7^~X>67lB-5SppzKu^`3}{uY`Cq1 zw!+_a1q*2pFF~}s>No?YExFI|k!7FRR4~l3lVG%Y^>+BGGB^OP-r>PIsch7(Ck4^O zNC=P`lawmvjjV*wUdan}c1qAhlJREnBoS5m`Lg^hvdP4p?()GnG;%NLDCJArAJzW# zFs}Dd-h~6^06{6c)aEIr9l1*a(b?o27Z(%9P?(<1CO6BSExX%vlE$n0zNE^p(N4dz zKZK`!?S*iGWkeQv$A-p3g(z&l7EMvWB2V()rr<`?z*fiwGh&IKzeEzSy$-0in?YGk zr*5}wS}r!QL3G#geF5UxzuFuum|gGRaUbxs0dTC>YpGnY`C-u5*y0_;X|Gty0McnT z2~nRU#PD>%z2Yja7nGQb>?uuyYQpL(Nu;6V%s2>wnl{wQL?gCoARUI$F(xC*4fhE7QBZ$J~KT7I=)7o@d@j*#~-MDq9OBVJr`NpCl$vwnpd+~rt6-G%X zqCiHS--?5f%%nwZwdRsg1&KAp9oyL-S*B-bY9@Qd!}=C5W#^jlRp%9}=bfv>`*>T> z<$+7xQ>8f=*Wb7naoTl8`eu@`XTrL4>F%Gh#FUZwM-QaFD}DV(R4Wyse(%p%)u~ZM zCFkoGI}pDIjnF}y^-&#!AHgrYem z-x>(yyh*?JVcT~&f3Mdp{rX*#WX9)F?ut&>9a3%%=dNk=+)~lznr1R|+}wC-U0V7; zkS$I&1`0bijLC6+X!Akt^EJCy$P62X>`s7mRC?9po^H5f;bVr5%~%Wbf+LA>(Dr*? zUu;xwG06?w)TE|TGcpnN=HPU^flc)_7`BJaCbB)@mmXGD*dp57S*sF6_kRp`M^z2+ z#6y%rkdtWN>{lE3t{%a+QhCtpSfmrz#E#{j2~J*>JwvYm`&#OTe&kxfTmm?eX=BKh z#y{#UTK(F%G4gI(buHqA4!9v?Vz8pS!51{YcsjAX&xG3UT@3_>3UYV)1IeJ6s@1zK zFx@E1%SxZ$W3^;Lb4proB15eb;t}Lag0n(q@{Uidi%7KA0OHiPSn%n`ELy~1QYwlN ztr|s0-~)$$NrJ!`Jf-T_zBwC)2RX;rNOh=fn&as(v6P+l19Y{~b;XODXD{jD)S(O_ z>C8jwcebhDU_VoI9`l@?oyk7yb&zwLu(47C%ddX5sPA9kb%MAPwYJ=xGhG&1C@^9Y z*4VO|gm6p<&;CXD4Ymg3SI1Oz^O!xE)6yNw2vDASWhf=U6ieBMt}*Q!YSbuPP5%;* ze2UWzDn)8ENo}(`%da9nL5O(Y$?e_Hv#6C3`+WX9C#l)A)CjK|h|RNjJiQ=^=nep} zo^-7TQb5llW^(8YzgAnMbns9t$S_R@(gW{1sh7P1*)9ghHJ%G?RnTF!ujN681&ezu zoCFohxqu~|Q4bokb9fNvR;s9WyvvZ~j z>AGhSjjahYy@4aB8Or_#<#xZXA`fkz++lW5X3DqWS!d4BUBw@XYR>}d!1(R?-$9bp zkzU`LqYLvm5@{~kyo#u7ot{Yt(?d^+OJT)Zsy z8r*a7y_G;^?F;lCd~omh6u_I8$W+snD=^ra_(_8)P!8F%(zj2h_5!@|uN%NlGF8g> ztx=8PC2g~G9N0+8P{~l`+p#vNxs{F8R|u1gR9}|FY=HWR3sbl{;GoHouN06(>F)QP zq@I4`2>Kou#)Rhdk562Wr@66J&47|Q0X7al#C&N7cm6c_Hh%wmrGbh3QCP#N>ho(^ z*9T^kd09Tk3F(;&3iM*_N%oBzaylZXs!JDs=_pd=Cb+#z#sQnY)p#TM_DW#=AC#qw~ONE;C=+rfTHt1Ye8Q z;+n2)9_em@>ibd^u6xCn#z=aeoJw;;vpe+RF~ASH^9by@5+X+F z)x4v%fP?zwXzs3)Gm8It_Sn$oa4;kVV3 zhMk|kBff#wM`w}Q>ZNQs!QP=EQe|Zk6X9!yBWKAc@vsKgfpQv?`J$?d_qgpP7g8s$ zwbm?|I@6L%*`JyHcB+`3IUDA$Ex3S;awk;FOeHOKSTI&xjvi&>R2!eiyF5^;S+;uF zU0So3e6FRigsYP8p)7o%{YLh|6liEdinXt$WWVaE)#HBJ&XAc;kiG^?O}|GO^T57Y zi=!))Y6nG9n1VnKwc03TZJ%?OnrGipITcQ+?*LM&pu1BNAu;_HD2J$rUB6yZNi^uH zF)gL2Dx;(w1w(@}`*pC8oX(lFW;FSG`HpQzI4)ua#1CyD1eGOy7S7D)N_PLdR^!R$ zv%_BMs;XU9Svtu#;Ou(NAG18kf500JWT6-NfmOURW}Tx&bX`B&C3#*df~xf+D<4^l zsx3bmgTJ@1KJXg;G;}d2)BketxCF77xiH(W0>vW7=5twE;5^2iuYNNYLDUcA6PrtB zrmMuustvXH;V)Eeq(4;XpA8R4O4N1O#g!J+WFckI$o8vLewV>Rsk7X7E+=>KDPhtO`ZspT09w1l_`z3od{!uEOL**nmRV@mpy zXeWD$>+scPhvwBW9r*a2$+t!wx2y;<6so7Aoln)>eaY?H4W?JWe(DX)@GTa-;PX{i zWI4~qNGME1LJn~HyHg7lX2;#HXQ5U>+%CE6_*l%kT}HU*;za-M8|8c;ZjRiZJ?5`o zzDIqQp!qc@6WteN@$WGgZ9l%bWl;xD68#_4aS*yPdy-E=L)0pJ!>sqxr}|rxR&jca zyf|%L`|_XBmW4X0R^Z(y;q_M)i3D1&hY-xpwa(^d{ZDNJIda2`zW`yD(CI1X*1!?> z_pW*%3+YgoABD|Led+2ln@O)FE;7tPs7Gddg1hAtO=JMlAZa$s@JzEhZ)a?nltiUm0!9F z=330VUQsoTP~Q}*1So(bQf-Le69Q5kQZs8KTk;yNyuHq^l zSLIP-6E4~P3tz%ytdB5?N>?dYZFIn83$XF^>Os~6L|$?`2C&&`)LX{#*httH8)$oV zNSZn0*e8rWLcCjR>5_Nk;!YI-hZ26{fClIulK89a|K! z%O+jQ|9(A&23lX%&Bn%W&bQx*1R8%8d&XEQ(|JU)e?spYJA$)>k;mN{SjqL@58vtH zi%9?FZ^(+yj0aa_{(@bvk43u*44$9osF~nSSi{*R>+zX0QVz@T8_xp#LY%yBK)}SE z!dxMe^fPuR!Q*uxgr`NBWKWGq8W}5jQ;V7!@6Cf#DA`%#T07Vo3LUF5OtIb9{0Z}) zUA3j?vL#AgM&pJSC6}=fUZ+)P>0JCb6F_K##5e54T9*A9yUM9}xW*$PuC zvE6~$R>UqryrYU>Bm}lhrRH{rYFE}G4~dj3*>wIPTb4PCO$I{3d3;mBkUMorq2gsn z*hQr|+@d3Qqb>-|&4OBnD3KgS3tytQ?bHt$``vYRVc}la^6JM1=&&QMqyVSp=IOw0 zHC7*Q?!OyWXIW-68wSr6G4@DUEfDhdnOiA#(}LbVNT`Qqd9V0VdQOhry=q6fpqN z`CD%Phj&D;*YcSnIn;sKCS54k;N zuWcp+m7=HA&aLcTUN)BmnxwUP-Ja}xhi2EtwY-Cf_)m#ld|bVx(8L;m8Y~ zcEDCPuia$VWXM6cbI-8`j~Ihf-!NVXb3>50@cQ05@7C?o0ij+u-Zec=6XR)E%}XWf zs{<9Cc>DmWGn}Yg^nemVMN|ihREocKE!urU*M!&_>Z>PZNp^qC_HAzx$a{Ux4U`vw zvfck{$BX~Aa62x7k!$_=Pske={N}$I<+*lm|0T#G;V^>(+gK#^BwYQ8JzZa%=8E~9 zlbh&Kau)pwYVK=ZDA;HU25qVu0Hyp1wG2Jq6>T{&0iDX<(8B ze*$yU16H_Vgg{R84~^guEhRzkA0Swe4v|GTC;kR}a)mWNftEM;-~R}W{*TV;|LCm# z@6lO3{CP45Z1N(HQE_!$PMrr=GW0)oq{|YcBY0h$v{KG}jpHa+%X5*X+~4%6-BJSQy4Ct_9_c_QWBs!sDnnZdz|R4Z=RIjndllvhfaSo) z^55UK{^5rDdPnMdpB+0K#J{q%33cG=cai(h|MGqRf2Vs2Sgl-IA-G`2f1a9}0`5tZ zQ1{FBxTvF3K!h7l+9#-O1`A*M1{5cSfx}=IT;*ZuG10$TRNn05MY-muYgj9(*mBLT zHVLPH0CiYyHSLE&`DL=#tIc+qGG0BdK{eSMF*X=wdHxotfeAVi6A!`|%$qG#Xpn1u?_osMz46}M~^hZ2@^k~~a2EbzoVM2^F{ZXhC zbKxenl4spzE5Pr*PVP5>P}3(y|H-4Am|)Vy`vwNqz}R7tTsP^MK41}9{VeFQ{snls zwx|d&?{-5msQ@OgrrxCX@l5hIH_RElFl@Zw%@gi*qe%NN&(pj{{a=eqhiIb9t`ySb zd9D9z${;i}ZRm;~M!X8N`GEIH*-1Nt3m>L`WpllsO6k>rq^w`s>hmZ2(d#%RLKAEp zc1e*I&<10UB>`&>hDlA%F`Aj@)X?@HEcwHL`?T3*0J|TA6+s?$iY}1KJZ=`dLga|# zuyk_>PSGWBAJG)^cu$4M)a~J{hzKCFV_km!GipSGcS`1aaaG7&+OR228I?G?9BZ9 z{B*JD5(TVtz-^a5EF>%pyj!!LtOD}~Mt;Q)8!>oy^xpV;vz7(a5J7$2OE{lN-7h8& zls(SN&kJafp0fH20B~nWN1b7~unOB&QoxD>nt)Bbs~2&TsCgr&T9;!#g_oWB)9hj> zu%T+OZ=p1t$Yc7J?QhQg$h9G=9zYavyLZhkV;sGp8chYNvbCfQ3820NZIADKT5;E+ zZ1|)G2Y?FO+oRa-lzoy`@s(@$fSDD)$8x0xslG9bj5H?H&?lIJG|AKx4xRh0(KNB* zKilYbM(B|g?5`+9Br=b(vBvxHZ{CC+o!Knie&BZvil0P1GS2 z>~wU;df9b$nGR^F79IqmP>R~3ME8ud=c%3!Ic;eNt#@Z6!3q#dDft_B{>meME$h$| z_k)K6?=MhC1qX{e5cE}UUu()dqAw0~Y>(>6bRF_2WPZSS**UazUNVTcAjJ@EnVRvv zH?aM$o`3A>iVYsj(2ZhT6~uc=?yh`596eT9nt_TCi(e$1-_{4oE~k-$S&g9S(;c}A*x>YS~#dN{)qQn=Z*CX z1jL8Z#~W(mxWSHD??EM-FxeaI*RFO8y;RwbxNyt;`qro1x~I|pVKj6cvYiiu)fnv4 zqE6m(KWP@>i$bA*@5oB^5ij(Y>m;!ve<_}JUZF~w=)lC+ueAb`D9VYF-SGU1o=k$`%hnnj-G{Iq|4)^Q;Qf9)OUOeMV5YQH6(3+Gfdi5jn9|xH zvHxu3qmfUP{fj#HrWWmCgW{Oj=Dx>XnOi# zl9fIF*SDH>gy+kWqgNGuCVpKyxiDn#V$N9@RjI>vZB(gR7X5|s!?lw;Q*@KLRs8Dw zA?@pf5f8MTS~3OON6jD}zKEL&h|Y9o$L+zBw<^mQEm#bKkI;cSqOfYI@X3~%5uTH7 z!5ZDtvILUS^K?*=;ksP_1!#F!?dn7L)uZ&$^8hFRNeBVU(%7IsLfWrAtRwJ!FN0 zd#<0&Bo>zfD7b{6vQO-g8ir6+Rf3;*X<+ss*ivjM%!70m_V)ReAC8!BUIB-l)Ly`M z2a&&YkpEHi_Xo@B?3U2~&Av%AyCCuTZiv4}a7M2pST5sV3HFPBl1@*vFLZ@V-AYZh z|A*!)F!W69f@)3JrHq&+#93;WPFJh5fwBd^E-oUpsZJbYrFg=yus8&Yq4gClT5Vt1swfdYPsr{W5J))}$5BcJW((Bn9aWMMk zF|&hPC*{x=wLmHZ^sStBuO?@YY$Pk}EB>ss%iW={8ej*VKR!cdztY#!U2>|eE-?(U zAHld*XbViDw@q0EH#z1k9@mc?sCu8Kp7KI!%Hjhw9mCi0{AU=D)ovp#SO3x;q!}X? zgSDj`m;)rhK0BLeiiM|^YX{8MYs$>O4mgC#pN>t+ZnX&JXcwsj6v6ratmA(MCuI5d z%;^?vPTV}kSK(NcVV0!GuZ)F|>3(&KX}PkpP=!QnBUv>)j07)sLF4K4oa2~;F3{6+-3pLRv726#! z(9O%6H6B&mq5~p9q~}!?PoVROp?)aUeiHn}VbtVtxJWHLUT<(Z9Vz(Uf73JPiJ=a} z^GeZB#9<%8K5jA@$o%=8fm@Y+|I9|>;$H=7a@3W$q2Tl!Ii&lY@+;&4xjc-P>-%m1 z1Hx)9T3DY-dKEX-{0s?AWw~m*-2&R@F>=Nk)3{DXrMiOP%8P8Whn!DY9LNS8i|0xg zz1O~eb?|jxTe-VL_y&kt^i?ttmE@L_-rdb!wXXukeBCKsT8a3Th;^V+UqK|6UM$<_ z3a^_&Glj9dCP?+3mv+E78jRvBG286*sYePP_8F@npQ4+sQK!cu z3`zD)v)(ZK>o*s{(tjXQtF$0i2AkbFwk_Pz8Y zaL?plEb(fC#pJ*pj;tJF)$YvbDp4GEzjnkYu;U*3i-k;IttoX5@4r0r3~4245O31; z=ZHW%WI3dzpHOeyp?Qjtn!?cnSjud0QfdE{Z_pD1-8NkvBTi%4U4(f&h?_p`^P^Z6 z)(1S{*5avvpbB81z}pq^dAj2sz{WmgB_&!Vsqq4)WK(t!gpw4I0B!n&mup^zXYyCB zO)N?_e<8HG){j~RBU9oM9ClyqxN6$GIxaV>Xmf-&3g3&E&|N=PrgwA1)|toWo^mx* zS0)mcM`u?_ED!~KY(lu=a^5!Yr9sBeeO{}!f{>TZPqVxzGqOuc8Vu`mm5cXsa;ovQ zZ{rIrccvj}^qzxi5sQi8tw=F2;rW+e2Vc3_cc^`;Ol8swh{zh4)kL@fq1%X8A>*1@ z*UwKg<+6y~!nH2Z>A1y6NuRA**oOfPMwJqayUTA~PybtL?=K*=H<&riVzI#HT&kjo zp9E?6|IyxiMm4>4-@N)>+JntRje!cg}C&P%pWVf~EDtpdM{XD1h>WH#Wv*3zj z4(k$M^+u}2j4s^Lx0Zx?&z+r;xiyuNlOE#Q>|rx)#iD-Oy@jULJxQpqJ9{AuxLU>Z zakC#Kjj2Fb?TO&7OVNmk!pWh4jB!umVRAXM6u^${?)#85Q2nsI?>n|}3Odc-rBv5=imMwXT=E=`F-P-|=ct)w)z6rnZ zhbT7VM?bEu9cybygn*@XY*6UoGiGiu)2@0+SUJW~77ev2%NK9y)@jgFyk4w2!En+4tyU$%7T6{b>^7w^*Ev z6h;iTzt~o*^w}3JF1%W{vCVWYw#cxku$(ya0B!w2H-Hrc>1H|0{r8{v`HlMaXpXz~ z*ncGKp7q!$7FZ}h(rx?5)+f6`aCh=DKKupLx_Q{UTrjIMqv_Ny39!H8vI$qap4+Q4 zGneAc@TvTA=;#G8V^MzJIp7H6XKmc6FH?LkL=;^{%|rU+Ba$XNRGhzhdU!WT4$ z@ztC6L9s>_2J=|8VWcqod0&rihsERBZP38GgrdU^4W50o-R#K=SMx-+2e zGnz8(($iS0uG80(6AyO;BuSIJ4vQuuTcV`&vwt>?=st1}&?rq9rx-|ypTMW z*+f69EhviU6+_CCG3L-gIIw>p<|$hY*fZd}csH2Y1~jrWr-9B43+JK{hS7|H?F^nI z{0DW7d?Ahb6;T#pojJfOcGBo)6lArs&~^83Q*c7D-a34`evd)wy~h?w*}*XyGDski zSR*yQuH4Q~R!<~( z*()2xRfWX|MErTOGkf{fT0I>tO$|OUNcDS z#{gUt6C;gL3`0JB@9#M5GES1Y3wxA((F(9Gbtl|g{rdf|9*d&!+XmLMYB(`)Ee?2? z%Cw5SpeUP6cI{I6Wbi(Oqc>mEKl)0w;J`-jAZX0FqjN2P|jF?1if zzq`iR6RIwCwLNR%BO$0q z-e)9Bf2Zd1BUR760%JBde-Ui%xvP>m54RMlk>+Weot_?i{vBoLdvdZjcQ)JnnG4V}3J6 zK3n%L1q<6Z1vG(ka@)JodWDbf2xMl8gXQ?Cw)j(M3v;-h>mxR-ywUAhs-1M$Q!FJA zc$8nsi{qpwH9um)ms?MQwXQf#;cy?_cq_4d+|;A*7`l5o#=Z-8Y(&fHFOc8633>n_ zRmQu6^TR1vYTdgTO>q5Cc|Tc`Cpl3im)+6rLhWSo=@TBZ3d%2(Cn5XD%VKt0wR;ul zGd;Z*udXij{E0GecSj%^3Y9$9<=K&b>~86_R89ooBBKjIUBt0PcuvpH=WkpJF3MZ% zy2rSNR#}uTVI|B=!Xr?n0NtQUDg6{mK=gPnFBhumv~j3K=@b3DGn|~6v$`b`LxA|1 zzIUfe$pSieefQ)JM|0RuBf5+xF`HFSUO`o^CDET;M?+p%qMbkB0JJ(2-M5)^^GS>70C03;U_Pkp}Zc2rKMoxhXjyDm};!*%G z0?nx%)bXIaP6ejk)9-WtLSpY)Y5IhY|9grhmD%{Ky-tyQ8%7lMdWM(R?M`a{K~Pt5 zF(A7X`&Z07k*JfUBf`C?qw==gbhqGn=kU@%Gats4<)qr1RZOz@o&_9NCb9c)%df3ig94T?Lwx*_CS6idsz$V@H zeut$q6-a;i^QT~Jjaw=Va~FF(kj5qc_<*JEn}%f&=BPpF>EXMQta=d1g&{{PgHEbQa)4!M2*Zz0L`CnD1Pq8`A zDL4>W0GaK{;|^wmp|35dc2>(uJU*C8xGf*)5RWkV>wY8(9Ng`OcRYy#}6Sk8I z2zf}S{(mOo|5GC2$5E}QD^7xJ>9i8wWhx0#M^zB~!?6c|??1wE zk+NG9K&r1LpZoLGS*^*`AnweA1c_})>Uw?0|6sGLr*=`3Z7QlGG5%m9{QdeY^!MJN zy&L2FzvSPKc>R27Bw)F$An18C0-;ff^#j&YHc*e^K-rZ@O9WqN;H+0C~}Ud&}L;N{r?3~>D{ zo~N8CEb@ul0<}F$MZ2v<8QFT2%?PTL+%rk#AYsmolN3pMx*9tlC?T;>?+iCL7L@VU zB%i=w3f6sq6AKUqx$@@LZ#D||uImPD#lWQHiu0k{nNStE*h1!Z3Euu|wG2-sLjW_? zt-4O4Pe`9e7kPP$gj00(Lxt`h0O|SbiCd1pndt-Fg zQf+73GzmutV1HH;_+v}8m6+8*n2~;eJr0BY^siLlCe~O!5PYmF!h>T zu`!Lu(M!o^M8)aRGa$>ZJ z88EuCMZ{8w+Q=&ol53BQxqENqTaRmx%!ai~Ak6qP9kV$f;uA6SpW{J+u;$a_Zee(j zM=1s4ZR;a+SL2Eu?q%qe!%vJ3N&z=VXQH~!Y6-GL%DWgMjWudpak}j;L^8)oV+(@V zw{}qukp~`M6Jpcip_Uno`L%5%n75U*#>*(Bm=@>%_)rhYTKo6!H!R6(I|L1N^b-7Z6od?~$l`rYGJ2czaIpK}Y5h}U zmB#_T23zHgy~O$27_Jv?rIg;7ckr_AQfF*+WbLuGZYblAYc?lzF^zzjDeHmS;+`5i z+F{k&M@CI;(%LwVWz0S&HIxLZH#dK!Yl?bGGog>X!OVg~hcB?R09^nLlIw2n)aypwjyJr?VGgU;N_lrhS5%6Zi+%Y_g$a!cQy9ngWbhE zsq4g%7-48QR7O@-D>F%@t^Bmixe>p=HkOuv#9`DLlo=2KT-r@HWan|1CXxDwo$Alw z78VL+D{}eP1V`R#O}|9;sr%+)=FIPsA10ofYrllJZDU;i#M$|s!FBmT%J8|7U6lud zA34ieo9>Scf9f)>)+IgG_eKBU{Ei_T&!~J3y6kSDbgOK9GY^5*8lrIY2AxU*tcM06WAf{f)d=wx4~Ms z<4-cz?zMZT{MaHZwfjuY#<10>w%_}l50I~u?m>`|K##08gMbU*$i;%b+NG}?%-iCn z{rwk_4%so52~qd%NgT}kbnH~MU$Br;HS`?3r~C`ZDH){ZibeGsK_V-(cdmph+b9+2 za2s|=l?IQ!*0D78HRi^w7mEuzsF2O`x((ouvvm)Zxv!lo_@vHfH)vwzt0}FCWVD(P z(UAq5ik@czru71N(Wb#nc_ z9`~5ev@*9Z-Doj`OiYQ%iGY3;swm)3wZw;AsdXvNZbYZpGZ-krPP} zVkJ=sK2|{6WrD5#F4=Hv8cLZ4^l6z}PqPHpg7bt98CVw7lT_;_Qdw`CVO-wfhZWY2366RlAJ%lBQZeSz2s~4p?C3iR(3LEBrFFcDD0Xzcu(3{QJl`<78ALKqO!J8=9Ot; z$tNH_zC~j`Hns*^W9LNsNL+N7E6)SQUV$KKp28*$Tz9XlqEDK}hOnu4?}toT7IvB7 zGjez_gIZ_HGi&SDTYWMic9-ic$xE_{MxzG!q6^l>_f zE~r`W-nHotF(~uffCcum($P6R*hs9M7Ib+#uez!Vn~^lMCyG&YLXT_*b*6~b-g8*< zUQ2(7fj-1V4;B3~n z#nuK0%qE3v8(3Mm6_u1v*vxzf_D?#CV3mmR2*(G_y9~QQ@tPZ13O&jNko4$M$4U&F znU5o9d4lc%pC%*2A^a>yFSE}N;(Pxex|&->Dd!0qP6*(eWJ?-!7i00kcyp&5ICBQC z$(&_VnCAR@@ciuT?BN*FBOa4i_*qO`MUqN~dyQjv(aFA>UHvf5x<${KIIeYdai#Qk z>^@o3eXayBbI2jixrj~~!ThQ;!SrNbtNJzONXtL2>Mf57yfT9~5U1|x)7L`t177!B zKP*i3&dQx0up^-HmJ*7z)(O)r-&ep#6rT(dTI^58EFSDJfDdd`hEH+=ERy6O@1B~y?1^qXkO8x?gyYCB*XX8DX(jl?- zuYG(o2g};(qzf{OiD-*#3;S_vqwYl?4b`5b?ofPfQ@=Tp;J3u~D29D;A;&{Ojy%6J zv|DPwrH$+zq0Wn^`Qwe-t?PSTy86G7jP5KFZle4614hf$@Mm1-sssahg@=5gQ$2^5~2Gm%00P7`G#Dv&^@wDu`m0_OUQ-pz2(SQ01(#2o6+CK zeX=)Xo<{;dI@STAc9Z6;HlIli4Kac`6Ch~y$v#U1HOmhqYIT|WSS&y*oc>=AQSb7< z*?D?*ub>Y`%jmY82Nti-MUk(EaHKqMBiB<2BA_a&G_cW0<5bYt$Bp7~Z$((Be}>q^gx3$<0bePyfj^YaS}j>N;}@*MlgQ7x(FEGPLo9QYMs zmjufmBu9&NN|fHSw|G8PEot~covtO&k*LidZ)g1|?P`e*G1LhOSwGa;y*38XEZMk)q;<50yn#^MZU4J~ zrY6xHMbPUnCK)Lr^z8IRY7qr%NgvZ+P%wkn*k{W~Z@^O2e5lO=tfm)zGqp|T->)eQ zthcCtU8fF~h^B5__&l#|Ut>L=WcC0H1+Z9eqa)9aw;}KWp^JYp!l#Sad5|z~O8{-m zIlm*=f=8^ucK2XAQD7*{@oTRQQcqyHT)PK zaArXM{c^zh^vU;0M}VF7*~;J@yeE+V!Q?NQGd`_l&>@Q#S_<6#E(VS~UnaT7K;Xzz}U@x%UMR z*+1$51xI&_N%de>bz&h&-4il-;O>T5?mFSQy|KHn+;YBbt&@F?zYjB=6Dz=rHzgua zx8lMPouERVz`yrltW2EneU`p#phvB!MXjFw4*lUgkUyC@e`M;-O|S~ zk$y(q*rfZ}Cw191W|UC}jTFrFsag&}g(<*Z&QUciOGFir${hg=M#@mJ))cK1bWdNo zTRGx`b1a;e!@$C84XWjE#1{h9)a%xc-HvYESgFKj-78G}KmlpeJel-s#LhG=K3Oxv!UIN=G}Mz{Wl8^8HVVS1+;`$JG4!e+I}K@~?`XwYmTNStO|GC!;bED) z!)1Gs>5?LDF%ScvOc8aRHk(&bV6^sM(E+OJN)qFaqj$390Vz&(a>p)p1eu(N2+L#s z%yW^mnX`eXlD>-GF3RD-bH-+AX9isc=YtEMckH#Ft2TQojJ;=o?+K!RThu6^(Dn7s zckCCsiwnC4Rvd=?+zt%YNK9Uw2@SK1i(?KjwSTKBd`UP^$MxJRv~D8fwx?vdfZoG1 za&~4N_pL^yAv>t|-0R zqL6pCx)s)?v>G|xg>cDTDe)(r+_ei*>S4Fd?x(A---v}>cF@!Ekofjy=8c@2;F@sW zm*u}|QV_ZOQ$A){OU{9>l^(qGa}J0?i;0X3Dr{Ui-B3*Nah;J zA}lC=ybfqn5)KdNcP$U0@H5RmrzFUn(|efUm5M%|=xY5)0Y#ZnaxVMQ!DpxIH2j3b zE>HThpUzL;AHVkD`KK7edao(UDZzxp3(*359KgC;WB@GWqFsB=EGTe377AR z^;F7EQ9WfFTleAi_i7`;JcA89`shr ziQv0}yPM*@-w)B33&avOp#fVw7-gVWwS@M>PP0mWFZ$53F8Qs|tA3lRU=eV;u*y0d zVe_p=(QI{jD%ewyZu7!4Ct>3Dvcv^Mz;gc1q&TUI=t0>Ys$a*x?eunaNeppSgsrZ9 zd1l#Y$hp?4NNullc@hU%ztPMil(uQqR&x)MS&i203w$e@)$w72PMENS55lk5yteo z-Bd?6p9WuR)n9~M@Ypo&U{-dxwK_8nZ#gmwm$vITH`PDFwb&A;?%R=~0N?J@P$-BC zSe>E>PU^Lq@5DE9oe=CI3c1WR_SkvNu+u*sS{^g&5#2V$@o*SpB6q5we znJF1IuwS-(9=S9Q9o$aWRS+pWV?-Azchu^7jMsZ&I9x)FVo_cYx571M!Ffb{j4(Jl zG|Px&apC5Wo(%kmo)!4?eeA|1#*)02X)_<8VyT`;Pgw4>bz4zqK`dCs$^L(>VzPa^ zaRgiW3qdi5B$&jU?M%KnQ*#btO~EA!%$wUV5QMHLuaAJM8J8l--#4SKp(vKcP17E1 z()bCS_;uH?J)a5I3%Lqsw$jrh;YG+-ELgK7+QyR9co0NMrO-}G)lm{uiD{RJz|QnC zFwNz)a9OkZj(XgIc*7793*x^H=C{=SV0m`7{T_SXTrj&}65d6 z4{epHGEr0&EKl{0dfytAi-AHkm?h5YcF7rwLFqekz=mg3gu%Yp z7wG8EUuGRiYKncYdS(CGfZx#c@sRSP{|}ek6!} z$=z;&F!^Rqu__`gVYzC?v+I^xa9~)y#K;Nr7xZyI4Xq@T)UwXRm&x(GbisNVgsD*N zYr@6sBjSl~wYUe%6sAI(#9)VsShN!lI?4_hnGj%Sm&b3f$_1iJ2WtXc=N$YsxX2RQ z?RUpcKBrhtp8KvX;(~El8c6+l=-TW@pQghl?C%jp-d@KL27b4yD1GZc_l(2$wqxS#VdZX+Q@XdLF)`$;$?zJK@Km& z&%xCbz6=#q6?L(B@J`X}sxpgXAa}rK>Q+vxF+@>9>h0EZd+{p2)z8hrk0gg`aE#r* zhZmcF$E>aD>-lW?d>dHv=?EJGUs7otD0k1dpJtPuJfE#@S0`R08)|P-FTGZQm8Y_N z8OPzuyw&7o&RN;}EvMAiKQg^9$<8nT||Z3(8jcX=_(CG^T3aDUFdAKXS(~ zz}>OY$VWta>b2nPp^${_Pq>!R38gcdo$*VnT?(@?d2G_#d#O8;CalZj@{A9MvyJVO+Y&sPYiAq2^>yJT%?WZTo(V1(qZl_;bKM1&4ZY|U! z|6Yo;Wx9&M&tME(cf_bC~}#(5hccdANh&+^YY`i6Y1ute=D^lvQ%b7MGl8 zbMwb7sGw8$#^5*84uT{&tlvVfQr9q9I*&asE`ebtc#6QDLS{pue5=GR9@aas$0;aP z*DGYU;28yaLeV(5;!C&r9NsE%+hX(4FotT~AW7xCx(T?zkn{=VUZAaH@2)3R%sM8~cTcn8H|F*`c# ztNe!IP1m}w1?QlBp$Rhm^$+U+W=fDeVHVoLi#8F&b>(a{Y}p=pva1s31apl`449@6 zonURJIUs{qsfsrfHjHLX>mJiBS%^mry>tS;(`}GC{w-*I6>G$Gx_;)XJ1YSzFJ5lZyu6&K*Ylzqkvbi} z4UUo)9fb1nZvH?_^9y=ugElUMx`Q6+F4f@P;IVb2=b{T{HoRhYZuCtR$y8FE*ck2l zN=e=SJwPjQcMx#;h|<3N-k3(w^oGktuJ{nc7eQG<%!uaJt-skDAr3LL(-q0=9E2`V+Yg*LiH7*LIVOYLw`;qwqlj(hQ!}f$(*f19wk}5AVw>{)?vR|* zY$lzj=I#g}C!g2VBv+lC{keyy#t!DjAAFz0Lvx@K@U$(*#AC12lUIViJUheR{55sj z%u&cwgv(`jR)LDoYcb3r{DuYd-*akbmR#o|N&d2h5tGB#0jqAF^Zhk@ZyIR^C5<0K zL@%nYE&-G_J+FQRhSSR1%J8UbXfxnH`Dyb{?HgUvlp8wK%)b>L82^QCNWg|T*n78=L5`_q~Ro!=N z7!el3*WdwKKx2$dk9EA3o0$(=e!F;oux0=@E;k?W*RjM;zWsUVPU?grj2ad4g^h3G z=r*&SE`lQVb?*MoPTQ5jVl>83TsZTp7i#?$@~D$AGMQ)ekoebK!$ZLPR@N?9lFu!? z07dS3r&pS~N=&R#TLs8*wN`FZS$|{pw2!Y1i3@^W<4W@UNwpL&DhgcE*lwugHhv^nXrVz|!7KFmdtw^akumyZwj8$_PICFq7a@?spJy)g=2`0`wQ<8nnZzr2-BuF! z(3v!yCDgwefsQ`eiGSp@64RlF$j!<7f#-jdx5oWKVwCLO#G=ALK9?I)UOCrfEjnOH zT@CD^7IzS=1rB|>d}OD~7~aP|JyGCQi+^?$Vmxw2c5dj6T^8)pm31zM*E$szbB-v9 zy1S0XZwc$vdRC(ZfyF&0(J9>Wedan&?4+NtXVxS6DOZTj_BFc!26Ii9=^8nIX0_-~ zhW`4}7x+sRTe;QC%zsXwv!s>LFB_CA6^;B>g+b5SIZkJoY33B2+RP?H2gJwhV6!pr4+tiE%usqxz+%DW95GKqS7bFJ~`{p6qCpZz=KIqs58TD|R zbY4%7sVG9x{E8Q+^N!=2H!OoArjE`A+FG-=H3dJ`3^R69jk*;sL*m1d^CYZxecw@6 zt0;6$ldWhOX7%foj z7~1$;H7sdRzQZApxE_$V{<{s|2P6_13~f>``hb50j4&wOfKqMuZr&8~3|uV&6{ z>&ERpa+PyFk?9?l@zUv~DDpB3FxwiAez^kcI+hvjA#E5aTEgsP%9v^^*I zfpMEb4rT9GG8|f$s4cEEX!z!3M?Y`LN4R9UW?l(oDz8T>;)WK@2XK_HZIF zPeu0$O8m{HVu zp@M|!HCei1lshS-1rZmUig1weBVL7|M?=fNa-hn5=RQG`C@I+L)cQPQI^TG_*cU?K?i{E{`Y}s0)bLDiK zg2j-TcLa2oya?;cN%ke2Q=XTMsYD0rBz!T#;504X^UmF7GQK?7}-2;7?x$9J8|h}BO=|?ue7!c@VXxh8j5JI zLo7e(Ug&N-rge>g*JZW;KIFf1^51>(-?Q^yQ}AE&2&f4EYYP5r3jQ$#768*x8T^mk Wdi@UT{DlS>?kTC?F1-2Z`Tqh@Gk945 literal 0 HcmV?d00001 diff --git a/docs/resources/diagrams/psci-osi-mode.png b/docs/resources/diagrams/psci-osi-mode.png new file mode 100644 index 0000000000000000000000000000000000000000..d3229539d0eae2af34a642fdcfe98d70a12f5bad GIT binary patch literal 163553 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 XvCh3@R^z8Ff`8h_^)>U4SqJ|Qodsx9 literal 0 HcmV?d00001 diff --git a/docs/resources/diagrams/psci-pc-mode-vs-osi-mode.png b/docs/resources/diagrams/psci-pc-mode-vs-osi-mode.png new file mode 100644 index 0000000000000000000000000000000000000000..7270a3dc4f65345c9002139dd347169ac6b9bb02 GIT binary patch literal 101822 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 JSjCs`{}1cEcGLg> literal 0 HcmV?d00001 From 64b4710b8de96cbd881045ab37737fcacae8095d Mon Sep 17 00:00:00 2001 From: Wing Li Date: Thu, 26 Jan 2023 18:33:36 -0800 Subject: [PATCH 2/7] build(psci): add build option for OS-initiated mode Change-Id: Ie4f7b6a36926ab075ebb9c6507a3ff48ce5538fe Signed-off-by: Wing Li --- Makefile | 2 ++ docs/getting_started/build-options.rst | 3 +++ make_helpers/defaults.mk | 3 +++ 3 files changed, 8 insertions(+) diff --git a/Makefile b/Makefile index b9ca664e9..46361f757 100644 --- a/Makefile +++ b/Makefile @@ -1114,6 +1114,7 @@ $(eval $(call assert_booleans,\ PLAT_RSS_NOT_SUPPORTED \ PROGRAMMABLE_RESET_ADDRESS \ PSCI_EXTENDED_STATE_ID \ + PSCI_OS_INIT_MODE \ RESET_TO_BL31 \ RESET_TO_BL31_WITH_PARAMS \ SAVE_KEYS \ @@ -1256,6 +1257,7 @@ $(eval $(call add_defines,\ PLAT_RSS_NOT_SUPPORTED \ PROGRAMMABLE_RESET_ADDRESS \ PSCI_EXTENDED_STATE_ID \ + PSCI_OS_INIT_MODE \ RAS_EXTENSION \ RESET_TO_BL31 \ RESET_TO_BL31_WITH_PARAMS \ diff --git a/docs/getting_started/build-options.rst b/docs/getting_started/build-options.rst index abfc8eccc..7dd8d92e5 100644 --- a/docs/getting_started/build-options.rst +++ b/docs/getting_started/build-options.rst @@ -740,6 +740,9 @@ Common build options enabled on Arm platforms, the option ``ARM_RECOM_STATE_ID_ENC`` needs to be set to 1 as well. +- ``PSCI_OS_INIT_MODE``: Boolean flag to enable support for optional PSCI + OS-initiated mode. This option defaults to 0. + - ``RAS_EXTENSION``: Numeric value to enable Armv8.2 RAS features. RAS features are an optional extension for pre-Armv8.2 CPUs, but are mandatory for Armv8.2 or later CPUs. This flag can take the values 0 to 2, to align with the diff --git a/make_helpers/defaults.mk b/make_helpers/defaults.mk index d8c621078..1923d19a5 100644 --- a/make_helpers/defaults.mk +++ b/make_helpers/defaults.mk @@ -258,6 +258,9 @@ PROGRAMMABLE_RESET_ADDRESS := 0 # Flag used to choose the power state format: Extended State-ID or Original PSCI_EXTENDED_STATE_ID := 0 +# Enable PSCI OS-initiated mode support +PSCI_OS_INIT_MODE := 0 + # Enable RAS support RAS_EXTENSION := 0 From b88a4416b5e5f2bda2240c632ba79e15a9a75c45 Mon Sep 17 00:00:00 2001 From: Wing Li Date: Wed, 14 Sep 2022 13:18:15 -0700 Subject: [PATCH 3/7] feat(psci): add support for PSCI_SET_SUSPEND_MODE This patch adds a PSCI_SET_SUSPEND_MODE handler that validates the request per section 5.20.2 of the PSCI spec (DEN0022D.b), and updates the suspend mode to the requested mode. This is conditionally compiled into the build depending on the value of the `PSCI_OS_INIT_MODE` build option. Change-Id: Iebf65f5f7846aef6b8643ad6082db99b4dcc4bef Signed-off-by: Wing Li --- include/lib/psci/psci.h | 16 +++++++++-- include/lib/psci/psci_lib.h | 1 + lib/psci/psci_common.c | 53 ++++++++++++++++++++++++++++++++++++- lib/psci/psci_main.c | 45 +++++++++++++++++++++++++++++++ lib/psci/psci_private.h | 13 +++++++++ lib/psci/psci_setup.c | 3 +++ 6 files changed, 128 insertions(+), 3 deletions(-) diff --git a/include/lib/psci/psci.h b/include/lib/psci/psci.h index b56e98b5f..8aaf4879e 100644 --- a/include/lib/psci/psci.h +++ b/include/lib/psci/psci.h @@ -59,6 +59,7 @@ #define PSCI_NODE_HW_STATE_AARCH64 U(0xc400000d) #define PSCI_SYSTEM_SUSPEND_AARCH32 U(0x8400000E) #define PSCI_SYSTEM_SUSPEND_AARCH64 U(0xc400000E) +#define PSCI_SET_SUSPEND_MODE U(0x8400000F) #define PSCI_STAT_RESIDENCY_AARCH32 U(0x84000010) #define PSCI_STAT_RESIDENCY_AARCH64 U(0xc4000010) #define PSCI_STAT_COUNT_AARCH32 U(0x84000011) @@ -73,9 +74,17 @@ * Number of PSCI calls (above) implemented */ #if ENABLE_PSCI_STAT -#define PSCI_NUM_CALLS U(22) +#if PSCI_OS_INIT_MODE +#define PSCI_NUM_CALLS U(30) #else -#define PSCI_NUM_CALLS U(18) +#define PSCI_NUM_CALLS U(29) +#endif +#else +#if PSCI_OS_INIT_MODE +#define PSCI_NUM_CALLS U(26) +#else +#define PSCI_NUM_CALLS U(25) +#endif #endif /* The macros below are used to identify PSCI calls from the SMC function ID */ @@ -347,6 +356,9 @@ u_register_t psci_migrate_info_up_cpu(void); int psci_node_hw_state(u_register_t target_cpu, unsigned int power_level); int psci_features(unsigned int psci_fid); +#if PSCI_OS_INIT_MODE +int psci_set_suspend_mode(unsigned int mode); +#endif void __dead2 psci_power_down_wfi(void); void psci_arch_setup(void); diff --git a/include/lib/psci/psci_lib.h b/include/lib/psci/psci_lib.h index 3edc50b6c..4b244ec33 100644 --- a/include/lib/psci/psci_lib.h +++ b/include/lib/psci/psci_lib.h @@ -92,6 +92,7 @@ void psci_prepare_next_non_secure_ctx( int psci_stop_other_cores(unsigned int wait_ms, void (*stop_func)(u_register_t mpidr)); bool psci_is_last_on_cpu_safe(void); +bool psci_are_all_cpus_on_safe(void); void psci_pwrdown_cpu(unsigned int power_level); #endif /* __ASSEMBLER__ */ diff --git a/lib/psci/psci_common.c b/lib/psci/psci_common.c index f233be1f1..5ce562feb 100644 --- a/lib/psci/psci_common.c +++ b/lib/psci/psci_common.c @@ -76,6 +76,14 @@ CASSERT((PLAT_MAX_PWR_LVL <= PSCI_MAX_PWR_LVL) && (PLAT_MAX_PWR_LVL >= PSCI_CPU_PWR_LVL), assert_platform_max_pwrlvl_check); +#if PSCI_OS_INIT_MODE +/******************************************************************************* + * The power state coordination mode used in CPU_SUSPEND. + * Defaults to platform-coordinated mode. + ******************************************************************************/ +suspend_mode_t psci_suspend_mode = PLAT_COORD; +#endif + /* * The plat_local_state used by the platform is one of these types: RUN, * RETENTION and OFF. The platform can define further sub-states for each type @@ -154,7 +162,7 @@ void psci_query_sys_suspend_pwrstate(psci_power_state_t *state_info) } /******************************************************************************* - * This function verifies that the all the other cores in the system have been + * This function verifies that all the other cores in the system have been * turned OFF and the current CPU is the last running CPU in the system. * Returns true, if the current CPU is the last ON CPU or false otherwise. ******************************************************************************/ @@ -178,6 +186,23 @@ bool psci_is_last_on_cpu(void) return true; } +/******************************************************************************* + * This function verifies that all cores in the system have been turned ON. + * Returns true, if all CPUs are ON or false otherwise. + ******************************************************************************/ +static bool psci_are_all_cpus_on(void) +{ + unsigned int cpu_idx; + + for (cpu_idx = 0; cpu_idx < psci_plat_core_count; cpu_idx++) { + if (psci_get_aff_info_state_by_idx(cpu_idx) == AFF_STATE_OFF) { + return false; + } + } + + return true; +} + /******************************************************************************* * Routine to return the maximum power level to traverse to after a cpu has * been physically powered up. It is expected to be called immediately after @@ -1050,3 +1075,29 @@ bool psci_is_last_on_cpu_safe(void) return true; } + +/******************************************************************************* + * This function verifies that all cores in the system have been turned ON. + * Returns true, if all CPUs are ON or false otherwise. + * + * This API has following differences with psci_are_all_cpus_on + * 1. PSCI states are locked + ******************************************************************************/ +bool psci_are_all_cpus_on_safe(void) +{ + unsigned int this_core = plat_my_core_pos(); + unsigned int parent_nodes[PLAT_MAX_PWR_LVL] = {0}; + + psci_get_parent_pwr_domain_nodes(this_core, PLAT_MAX_PWR_LVL, parent_nodes); + + psci_acquire_pwr_domain_locks(PLAT_MAX_PWR_LVL, parent_nodes); + + if (!psci_are_all_cpus_on()) { + psci_release_pwr_domain_locks(PLAT_MAX_PWR_LVL, parent_nodes); + return false; + } + + psci_release_pwr_domain_locks(PLAT_MAX_PWR_LVL, parent_nodes); + + return true; +} diff --git a/lib/psci/psci_main.c b/lib/psci/psci_main.c index a631f3ffb..4b5fc81d7 100644 --- a/lib/psci/psci_main.c +++ b/lib/psci/psci_main.c @@ -370,6 +370,39 @@ int psci_features(unsigned int psci_fid) return PSCI_E_SUCCESS; } +#if PSCI_OS_INIT_MODE +int psci_set_suspend_mode(unsigned int mode) +{ + if (psci_suspend_mode == mode) { + return PSCI_E_SUCCESS; + } + + if (mode == PLAT_COORD) { + /* Check if the current CPU is the last ON CPU in the system */ + if (!psci_is_last_on_cpu_safe()) { + return PSCI_E_DENIED; + } + } + + if (mode == OS_INIT) { + /* + * Check if all CPUs in the system are ON or if the current + * CPU is the last ON CPU in the system. + */ + if (!(psci_are_all_cpus_on_safe() || + psci_is_last_on_cpu_safe())) { + return PSCI_E_DENIED; + } + } + + psci_suspend_mode = mode; + psci_flush_dcache_range((uintptr_t)&psci_suspend_mode, + sizeof(psci_suspend_mode)); + + return PSCI_E_SUCCESS; +} +#endif + /******************************************************************************* * PSCI top level handler for servicing SMCs. ******************************************************************************/ @@ -453,6 +486,12 @@ u_register_t psci_smc_handler(uint32_t smc_fid, ret = (u_register_t)psci_features(r1); break; +#if PSCI_OS_INIT_MODE + case PSCI_SET_SUSPEND_MODE: + ret = (u_register_t)psci_set_suspend_mode(r1); + break; +#endif + #if ENABLE_PSCI_STAT case PSCI_STAT_RESIDENCY_AARCH32: ret = psci_stat_residency(r1, r2); @@ -515,6 +554,12 @@ u_register_t psci_smc_handler(uint32_t smc_fid, ret = (u_register_t)psci_system_suspend(x1, x2); break; +#if PSCI_OS_INIT_MODE + case PSCI_SET_SUSPEND_MODE: + ret = (u_register_t)psci_set_suspend_mode(x1); + break; +#endif + #if ENABLE_PSCI_STAT case PSCI_STAT_RESIDENCY_AARCH64: ret = psci_stat_residency(x1, (unsigned int) x2); diff --git a/lib/psci/psci_private.h b/lib/psci/psci_private.h index 6ca9ef694..73b161edc 100644 --- a/lib/psci/psci_private.h +++ b/lib/psci/psci_private.h @@ -163,6 +163,16 @@ typedef struct cpu_pwr_domain_node { spinlock_t cpu_lock; } cpu_pd_node_t; +#if PSCI_OS_INIT_MODE +/******************************************************************************* + * The supported power state coordination modes that can be used in CPU_SUSPEND. + ******************************************************************************/ +typedef enum suspend_mode { + PLAT_COORD = 0, + OS_INIT = 1 +} suspend_mode_t; +#endif + /******************************************************************************* * The following are helpers and declarations of locks. ******************************************************************************/ @@ -260,6 +270,9 @@ extern non_cpu_pd_node_t psci_non_cpu_pd_nodes[PSCI_NUM_NON_CPU_PWR_DOMAINS]; extern cpu_pd_node_t psci_cpu_pd_nodes[PLATFORM_CORE_COUNT]; extern unsigned int psci_caps; extern unsigned int psci_plat_core_count; +#if PSCI_OS_INIT_MODE +extern suspend_mode_t psci_suspend_mode; +#endif /******************************************************************************* * SPD's power management hooks registered with PSCI diff --git a/lib/psci/psci_setup.c b/lib/psci/psci_setup.c index 3cb4f7e43..16d6e4531 100644 --- a/lib/psci/psci_setup.c +++ b/lib/psci/psci_setup.c @@ -254,6 +254,9 @@ int __init psci_setup(const psci_lib_args_t *lib_args) psci_caps |= define_psci_cap(PSCI_CPU_SUSPEND_AARCH64); if (psci_plat_pm_ops->get_sys_suspend_power_state != NULL) psci_caps |= define_psci_cap(PSCI_SYSTEM_SUSPEND_AARCH64); +#if PSCI_OS_INIT_MODE + psci_caps |= define_psci_cap(PSCI_SET_SUSPEND_MODE); +#endif } if (psci_plat_pm_ops->system_off != NULL) psci_caps |= define_psci_cap(PSCI_SYSTEM_OFF); From 606b7430077c15695a5b3bcfbad4975f00c9bf95 Mon Sep 17 00:00:00 2001 From: Wing Li Date: Wed, 14 Sep 2022 13:18:17 -0700 Subject: [PATCH 4/7] feat(psci): add support for OS-initiated mode This patch adds a `psci_validate_state_coordination` function that is called by `psci_cpu_suspend_start` in OS-initiated mode. This function validates the request per sections 4.2.3.2, 5.4.5, and 6.3 of the PSCI spec (DEN0022D.b): - The requested power states are consistent with the system's state - The calling core is the last running core at the requested power level This function differs from `psci_do_state_coordination` in that: - The `psci_req_local_pwr_states` map is not modified if the request were to be denied - The `state_info` argument is never modified since it contains the power states requested by the calling OS This is conditionally compiled into the build depending on the value of the `PSCI_OS_INIT_MODE` build option. Change-Id: I667041c842d2856e9d128c98db4d5ae4e4552df3 Signed-off-by: Wing Li --- docs/getting_started/porting-guide.rst | 13 ++ include/lib/psci/psci.h | 11 ++ lib/psci/psci_common.c | 190 +++++++++++++++++++++++++ lib/psci/psci_main.c | 46 ++++-- lib/psci/psci_private.h | 20 ++- lib/psci/psci_suspend.c | 65 +++++++-- 6 files changed, 317 insertions(+), 28 deletions(-) diff --git a/docs/getting_started/porting-guide.rst b/docs/getting_started/porting-guide.rst index 6735cb147..8d6a2bf23 100644 --- a/docs/getting_started/porting-guide.rst +++ b/docs/getting_started/porting-guide.rst @@ -538,6 +538,15 @@ memory layout implies some image overlaying like in Arm standard platforms. Defines the maximum address that the TSP's progbits sections can occupy. +If the platform supports OS-initiated mode, i.e. the build option +``PSCI_OS_INIT_MODE`` is enabled, and if the platform's maximum power domain +level for PSCI_CPU_SUSPEND differs from ``PLAT_MAX_PWR_LVL``, the following +constant must be defined. + +- **#define : PLAT_MAX_CPU_SUSPEND_PWR_LVL** + + Defines the maximum power domain level that PSCI_CPU_SUSPEND should apply to. + If the platform port uses the PL061 GPIO driver, the following constant may optionally be defined: @@ -2810,6 +2819,10 @@ allocated in a special area if it cannot fit in the platform's global static data, for example in DRAM. The Distributor can then be powered down using an implementation-defined sequence. +If the build option ``PSCI_OS_INIT_MODE`` is enabled, the generic code expects +the platform to return PSCI_E_SUCCESS on success, or either PSCI_E_DENIED or +PSCI_E_INVALID_PARAMS as appropriate for any invalid requests. + plat_psci_ops.pwr_domain_pwr_down_wfi() ....................................... diff --git a/include/lib/psci/psci.h b/include/lib/psci/psci.h index 8aaf4879e..d4f367071 100644 --- a/include/lib/psci/psci.h +++ b/include/lib/psci/psci.h @@ -277,6 +277,13 @@ typedef struct psci_power_state { * for the CPU. */ plat_local_state_t pwr_domain_state[PLAT_MAX_PWR_LVL + U(1)]; +#if PSCI_OS_INIT_MODE + /* + * The highest power level at which the current CPU is the last running + * CPU. + */ + unsigned int last_at_pwrlvl; +#endif } psci_power_state_t; /******************************************************************************* @@ -308,7 +315,11 @@ typedef struct plat_psci_ops { void (*pwr_domain_off)(const psci_power_state_t *target_state); void (*pwr_domain_suspend_pwrdown_early)( const psci_power_state_t *target_state); +#if PSCI_OS_INIT_MODE + int (*pwr_domain_suspend)(const psci_power_state_t *target_state); +#else void (*pwr_domain_suspend)(const psci_power_state_t *target_state); +#endif void (*pwr_domain_on_finish)(const psci_power_state_t *target_state); void (*pwr_domain_on_finish_late)( const psci_power_state_t *target_state); diff --git a/lib/psci/psci_common.c b/lib/psci/psci_common.c index 5ce562feb..ebeb10be9 100644 --- a/lib/psci/psci_common.c +++ b/lib/psci/psci_common.c @@ -161,6 +161,49 @@ void psci_query_sys_suspend_pwrstate(psci_power_state_t *state_info) psci_plat_pm_ops->get_sys_suspend_power_state(state_info); } +#if PSCI_OS_INIT_MODE +/******************************************************************************* + * This function verifies that all the other cores at the 'end_pwrlvl' have been + * idled and the current CPU is the last running CPU at the 'end_pwrlvl'. + * Returns 1 (true) if the current CPU is the last ON CPU or 0 (false) + * otherwise. + ******************************************************************************/ +static bool psci_is_last_cpu_to_idle_at_pwrlvl(unsigned int end_pwrlvl) +{ + unsigned int my_idx, lvl, parent_idx; + unsigned int cpu_start_idx, ncpus, cpu_idx; + plat_local_state_t local_state; + + if (end_pwrlvl == PSCI_CPU_PWR_LVL) { + return true; + } + + my_idx = plat_my_core_pos(); + + for (lvl = PSCI_CPU_PWR_LVL; lvl <= end_pwrlvl; lvl++) { + parent_idx = psci_cpu_pd_nodes[my_idx].parent_node; + } + + cpu_start_idx = psci_non_cpu_pd_nodes[parent_idx].cpu_start_idx; + ncpus = psci_non_cpu_pd_nodes[parent_idx].ncpus; + + for (cpu_idx = cpu_start_idx; cpu_idx < cpu_start_idx + ncpus; + cpu_idx++) { + local_state = psci_get_cpu_local_state_by_idx(cpu_idx); + if (cpu_idx == my_idx) { + assert(is_local_state_run(local_state) != 0); + continue; + } + + if (is_local_state_run(local_state) != 0) { + return false; + } + } + + return true; +} +#endif + /******************************************************************************* * This function verifies that all the other cores in the system have been * turned OFF and the current CPU is the last running CPU in the system. @@ -278,6 +321,60 @@ static plat_local_state_t *psci_get_req_local_pwr_states(unsigned int pwrlvl, return NULL; } +#if PSCI_OS_INIT_MODE +/****************************************************************************** + * Helper function to save a copy of the psci_req_local_pwr_states (prev) for a + * CPU (cpu_idx), and update psci_req_local_pwr_states with the new requested + * local power states (state_info). + *****************************************************************************/ +void psci_update_req_local_pwr_states(unsigned int end_pwrlvl, + unsigned int cpu_idx, + psci_power_state_t *state_info, + plat_local_state_t *prev) +{ + unsigned int lvl; +#ifdef PLAT_MAX_CPU_SUSPEND_PWR_LVL + unsigned int max_pwrlvl = PLAT_MAX_CPU_SUSPEND_PWR_LVL; +#else + unsigned int max_pwrlvl = PLAT_MAX_PWR_LVL; +#endif + plat_local_state_t req_state; + + for (lvl = PSCI_CPU_PWR_LVL + 1U; lvl <= max_pwrlvl; lvl++) { + /* Save the previous requested local power state */ + prev[lvl - 1U] = *psci_get_req_local_pwr_states(lvl, cpu_idx); + + /* Update the new requested local power state */ + if (lvl <= end_pwrlvl) { + req_state = state_info->pwr_domain_state[lvl]; + } else { + req_state = state_info->pwr_domain_state[end_pwrlvl]; + } + psci_set_req_local_pwr_state(lvl, cpu_idx, req_state); + } +} + +/****************************************************************************** + * Helper function to restore the previously saved requested local power states + * (prev) for a CPU (cpu_idx) to psci_req_local_pwr_states. + *****************************************************************************/ +void psci_restore_req_local_pwr_states(unsigned int cpu_idx, + plat_local_state_t *prev) +{ + unsigned int lvl; +#ifdef PLAT_MAX_CPU_SUSPEND_PWR_LVL + unsigned int max_pwrlvl = PLAT_MAX_CPU_SUSPEND_PWR_LVL; +#else + unsigned int max_pwrlvl = PLAT_MAX_PWR_LVL; +#endif + + for (lvl = PSCI_CPU_PWR_LVL + 1U; lvl <= max_pwrlvl; lvl++) { + /* Restore the previous requested local power state */ + psci_set_req_local_pwr_state(lvl, cpu_idx, prev[lvl - 1U]); + } +} +#endif + /* * psci_non_cpu_pd_nodes can be placed either in normal memory or coherent * memory. @@ -424,6 +521,8 @@ void psci_set_pwr_domains_to_run(unsigned int end_pwrlvl) } /****************************************************************************** + * This function is used in platform-coordinated mode. + * * This function is passed the local power states requested for each power * domain (state_info) between the current CPU domain and its ancestors until * the target power level (end_pwrlvl). It updates the array of requested power @@ -501,6 +600,97 @@ void psci_do_state_coordination(unsigned int end_pwrlvl, psci_set_target_local_pwr_states(end_pwrlvl, state_info); } +#if PSCI_OS_INIT_MODE +/****************************************************************************** + * This function is used in OS-initiated mode. + * + * This function is passed the local power states requested for each power + * domain (state_info) between the current CPU domain and its ancestors until + * the target power level (end_pwrlvl), and ensures the requested power states + * are valid. It updates the array of requested power states with this + * information. + * + * Then, for each level (apart from the CPU level) until the 'end_pwrlvl', it + * retrieves the states requested by all the cpus of which the power domain at + * that level is an ancestor. It passes this information to the platform to + * coordinate and return the target power state. If the requested state does + * not match the target state, the request is denied. + * + * The 'state_info' is not modified. + * + * This function will only be invoked with data cache enabled and while + * powering down a core. + *****************************************************************************/ +int psci_validate_state_coordination(unsigned int end_pwrlvl, + psci_power_state_t *state_info) +{ + int rc = PSCI_E_SUCCESS; + unsigned int lvl, parent_idx, cpu_idx = plat_my_core_pos(); + unsigned int start_idx; + unsigned int ncpus; + plat_local_state_t target_state, *req_states; + plat_local_state_t prev[PLAT_MAX_PWR_LVL]; + + assert(end_pwrlvl <= PLAT_MAX_PWR_LVL); + parent_idx = psci_cpu_pd_nodes[cpu_idx].parent_node; + + /* + * Save a copy of the previous requested local power states and update + * the new requested local power states. + */ + psci_update_req_local_pwr_states(end_pwrlvl, cpu_idx, state_info, prev); + + for (lvl = PSCI_CPU_PWR_LVL + 1U; lvl <= end_pwrlvl; lvl++) { + /* Get the requested power states for this power level */ + start_idx = psci_non_cpu_pd_nodes[parent_idx].cpu_start_idx; + req_states = psci_get_req_local_pwr_states(lvl, start_idx); + + /* + * Let the platform coordinate amongst the requested states at + * this power level and return the target local power state. + */ + ncpus = psci_non_cpu_pd_nodes[parent_idx].ncpus; + target_state = plat_get_target_pwr_state(lvl, + req_states, + ncpus); + + /* + * Verify that the requested power state matches the target + * local power state. + */ + if (state_info->pwr_domain_state[lvl] != target_state) { + if (target_state == PSCI_LOCAL_STATE_RUN) { + rc = PSCI_E_DENIED; + } else { + rc = PSCI_E_INVALID_PARAMS; + } + goto exit; + } + } + + /* + * Verify that the current core is the last running core at the + * specified power level. + */ + lvl = state_info->last_at_pwrlvl; + if (!psci_is_last_cpu_to_idle_at_pwrlvl(lvl)) { + rc = PSCI_E_DENIED; + } + +exit: + if (rc != PSCI_E_SUCCESS) { + /* Restore the previous requested local power states. */ + psci_restore_req_local_pwr_states(cpu_idx, prev); + return rc; + } + + /* Update the target state in the power domain nodes */ + psci_set_target_local_pwr_states(end_pwrlvl, state_info); + + return rc; +} +#endif + /****************************************************************************** * This function validates a suspend request by making sure that if a standby * state is requested then no power level is turned off and the highest power diff --git a/lib/psci/psci_main.c b/lib/psci/psci_main.c index 4b5fc81d7..fe12f06ba 100644 --- a/lib/psci/psci_main.c +++ b/lib/psci/psci_main.c @@ -60,6 +60,10 @@ int psci_cpu_suspend(unsigned int power_state, entry_point_info_t ep; psci_power_state_t state_info = { {PSCI_LOCAL_STATE_RUN} }; plat_local_state_t cpu_pd_state; +#if PSCI_OS_INIT_MODE + unsigned int cpu_idx = plat_my_core_pos(); + plat_local_state_t prev[PLAT_MAX_PWR_LVL]; +#endif /* Validate the power_state parameter */ rc = psci_validate_power_state(power_state, &state_info); @@ -95,6 +99,18 @@ int psci_cpu_suspend(unsigned int power_state, cpu_pd_state = state_info.pwr_domain_state[PSCI_CPU_PWR_LVL]; psci_set_cpu_local_state(cpu_pd_state); +#if PSCI_OS_INIT_MODE + /* + * If in OS-initiated mode, save a copy of the previous + * requested local power states and update the new requested + * local power states for this CPU. + */ + if (psci_suspend_mode == OS_INIT) { + psci_update_req_local_pwr_states(target_pwrlvl, cpu_idx, + &state_info, prev); + } +#endif + #if ENABLE_PSCI_STAT plat_psci_stat_accounting_start(&state_info); #endif @@ -110,6 +126,16 @@ int psci_cpu_suspend(unsigned int power_state, /* Upon exit from standby, set the state back to RUN. */ psci_set_cpu_local_state(PSCI_LOCAL_STATE_RUN); +#if PSCI_OS_INIT_MODE + /* + * If in OS-initiated mode, restore the previous requested + * local power states for this CPU. + */ + if (psci_suspend_mode == OS_INIT) { + psci_restore_req_local_pwr_states(cpu_idx, prev); + } +#endif + #if ENABLE_RUNTIME_INSTRUMENTATION PMF_CAPTURE_TIMESTAMP(rt_instr_svc, RT_INSTR_EXIT_HW_LOW_PWR, @@ -142,12 +168,12 @@ int psci_cpu_suspend(unsigned int power_state, * might return if the power down was abandoned for any reason, e.g. * arrival of an interrupt */ - psci_cpu_suspend_start(&ep, - target_pwrlvl, - &state_info, - is_power_down_state); + rc = psci_cpu_suspend_start(&ep, + target_pwrlvl, + &state_info, + is_power_down_state); - return PSCI_E_SUCCESS; + return rc; } @@ -187,12 +213,12 @@ int psci_system_suspend(uintptr_t entrypoint, u_register_t context_id) * might return if the power down was abandoned for any reason, e.g. * arrival of an interrupt */ - psci_cpu_suspend_start(&ep, - PLAT_MAX_PWR_LVL, - &state_info, - PSTATE_TYPE_POWERDOWN); + rc = psci_cpu_suspend_start(&ep, + PLAT_MAX_PWR_LVL, + &state_info, + PSTATE_TYPE_POWERDOWN); - return PSCI_E_SUCCESS; + return rc; } int psci_cpu_off(void) diff --git a/lib/psci/psci_private.h b/lib/psci/psci_private.h index 73b161edc..b9987fe65 100644 --- a/lib/psci/psci_private.h +++ b/lib/psci/psci_private.h @@ -288,6 +288,14 @@ int psci_validate_power_state(unsigned int power_state, void psci_query_sys_suspend_pwrstate(psci_power_state_t *state_info); int psci_validate_mpidr(u_register_t mpidr); void psci_init_req_local_pwr_states(void); +#if PSCI_OS_INIT_MODE +void psci_update_req_local_pwr_states(unsigned int end_pwrlvl, + unsigned int cpu_idx, + psci_power_state_t *state_info, + plat_local_state_t *prev); +void psci_restore_req_local_pwr_states(unsigned int cpu_idx, + plat_local_state_t *prev); +#endif void psci_get_target_local_pwr_states(unsigned int end_pwrlvl, psci_power_state_t *target_state); int psci_validate_entry_point(entry_point_info_t *ep, @@ -297,6 +305,10 @@ void psci_get_parent_pwr_domain_nodes(unsigned int cpu_idx, unsigned int *node_index); void psci_do_state_coordination(unsigned int end_pwrlvl, psci_power_state_t *state_info); +#if PSCI_OS_INIT_MODE +int psci_validate_state_coordination(unsigned int end_pwrlvl, + psci_power_state_t *state_info); +#endif void psci_acquire_pwr_domain_locks(unsigned int end_pwrlvl, const unsigned int *parent_nodes); void psci_release_pwr_domain_locks(unsigned int end_pwrlvl, @@ -330,10 +342,10 @@ void psci_cpu_on_finish(unsigned int cpu_idx, const psci_power_state_t *state_in int psci_do_cpu_off(unsigned int end_pwrlvl); /* Private exported functions from psci_suspend.c */ -void psci_cpu_suspend_start(const entry_point_info_t *ep, - unsigned int end_pwrlvl, - psci_power_state_t *state_info, - unsigned int is_power_down_state); +int psci_cpu_suspend_start(const entry_point_info_t *ep, + unsigned int end_pwrlvl, + psci_power_state_t *state_info, + unsigned int is_power_down_state); void psci_cpu_suspend_finish(unsigned int cpu_idx, const psci_power_state_t *state_info); diff --git a/lib/psci/psci_suspend.c b/lib/psci/psci_suspend.c index f71994d71..861b875e7 100644 --- a/lib/psci/psci_suspend.c +++ b/lib/psci/psci_suspend.c @@ -75,6 +75,14 @@ static void psci_suspend_to_pwrdown_start(unsigned int end_pwrlvl, PUBLISH_EVENT(psci_suspend_pwrdown_start); +#if PSCI_OS_INIT_MODE +#ifdef PLAT_MAX_CPU_SUSPEND_PWR_LVL + end_pwrlvl = PLAT_MAX_CPU_SUSPEND_PWR_LVL; +#else + end_pwrlvl = PLAT_MAX_PWR_LVL; +#endif +#endif + /* Save PSCI target power level for the suspend finisher handler */ psci_set_suspend_pwrlvl(end_pwrlvl); @@ -151,12 +159,13 @@ static void psci_suspend_to_pwrdown_start(unsigned int end_pwrlvl, * the state transition has been done, no further error is expected and it is * not possible to undo any of the actions taken beyond that point. ******************************************************************************/ -void psci_cpu_suspend_start(const entry_point_info_t *ep, - unsigned int end_pwrlvl, - psci_power_state_t *state_info, - unsigned int is_power_down_state) +int psci_cpu_suspend_start(const entry_point_info_t *ep, + unsigned int end_pwrlvl, + psci_power_state_t *state_info, + unsigned int is_power_down_state) { - int skip_wfi = 0; + int rc = PSCI_E_SUCCESS; + bool skip_wfi = false; unsigned int idx = plat_my_core_pos(); unsigned int parent_nodes[PLAT_MAX_PWR_LVL] = {0}; @@ -183,16 +192,32 @@ void psci_cpu_suspend_start(const entry_point_info_t *ep, * detection that a wake-up interrupt has fired. */ if (read_isr_el1() != 0U) { - skip_wfi = 1; + skip_wfi = true; goto exit; } - /* - * This function is passed the requested state info and - * it returns the negotiated state info for each power level upto - * the end level specified. - */ - psci_do_state_coordination(end_pwrlvl, state_info); +#if PSCI_OS_INIT_MODE + if (psci_suspend_mode == OS_INIT) { + /* + * This function validates the requested state info for + * OS-initiated mode. + */ + rc = psci_validate_state_coordination(end_pwrlvl, state_info); + if (rc != PSCI_E_SUCCESS) { + skip_wfi = true; + goto exit; + } + } else { +#endif + /* + * This function is passed the requested state info and + * it returns the negotiated state info for each power level upto + * the end level specified. + */ + psci_do_state_coordination(end_pwrlvl, state_info); +#if PSCI_OS_INIT_MODE + } +#endif #if ENABLE_PSCI_STAT /* Update the last cpu for each level till end_pwrlvl */ @@ -208,7 +233,16 @@ void psci_cpu_suspend_start(const entry_point_info_t *ep, * platform defined mailbox with the psci entrypoint, * program the power controller etc. */ + +#if PSCI_OS_INIT_MODE + rc = psci_plat_pm_ops->pwr_domain_suspend(state_info); + if (rc != PSCI_E_SUCCESS) { + skip_wfi = true; + goto exit; + } +#else psci_plat_pm_ops->pwr_domain_suspend(state_info); +#endif #if ENABLE_PSCI_STAT plat_psci_stat_accounting_start(state_info); @@ -221,8 +255,9 @@ exit: */ psci_release_pwr_domain_locks(end_pwrlvl, parent_nodes); - if (skip_wfi == 1) - return; + if (skip_wfi) { + return rc; + } if (is_power_down_state != 0U) { #if ENABLE_RUNTIME_INSTRUMENTATION @@ -269,6 +304,8 @@ exit: * context retaining suspend finisher. */ psci_suspend_to_standby_finisher(idx, end_pwrlvl); + + return rc; } /******************************************************************************* From 9a70e69e059863d7aec11883e6345b54058264e0 Mon Sep 17 00:00:00 2001 From: Wing Li Date: Wed, 14 Sep 2022 13:18:19 -0700 Subject: [PATCH 5/7] feat(psci): update PSCI_FEATURES This patch updates the PSCI_FEATURES handler to indicate support for OS-initiated mode per section 5.15.2 of the PSCI spec (DEN0022D.b) based on the value of `FF_SUPPORTS_OS_INIT_MODE`, which is conditionally enabled by the `PSCI_OS_INIT_MODE` build option. Change-Id: I5da8a989b53419ad2ab55b73ddeee6e882c25554 Signed-off-by: Wing Li --- include/lib/psci/psci.h | 4 ++++ lib/psci/psci_main.c | 12 ++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/include/lib/psci/psci.h b/include/lib/psci/psci.h index d4f367071..6d27b7b61 100644 --- a/include/lib/psci/psci.h +++ b/include/lib/psci/psci.h @@ -143,7 +143,11 @@ /* Features flags for CPU SUSPEND OS Initiated mode support. Bits [0:0] */ #define FF_MODE_SUPPORT_SHIFT U(0) +#if PSCI_OS_INIT_MODE #define FF_SUPPORTS_OS_INIT_MODE U(1) +#else +#define FF_SUPPORTS_OS_INIT_MODE U(0) +#endif /******************************************************************************* * PSCI version diff --git a/lib/psci/psci_main.c b/lib/psci/psci_main.c index fe12f06ba..276c3a59f 100644 --- a/lib/psci/psci_main.c +++ b/lib/psci/psci_main.c @@ -383,13 +383,9 @@ int psci_features(unsigned int psci_fid) /* Format the feature flags */ if ((psci_fid == PSCI_CPU_SUSPEND_AARCH32) || (psci_fid == PSCI_CPU_SUSPEND_AARCH64)) { - /* - * The trusted firmware does not support OS Initiated Mode. - */ unsigned int ret = ((FF_PSTATE << FF_PSTATE_SHIFT) | - (((FF_SUPPORTS_OS_INIT_MODE == 1U) ? 0U : 1U) - << FF_MODE_SUPPORT_SHIFT)); - return (int) ret; + (FF_SUPPORTS_OS_INIT_MODE << FF_MODE_SUPPORT_SHIFT)); + return (int)ret; } /* Return 0 for all other fid's */ @@ -571,6 +567,10 @@ u_register_t psci_smc_handler(uint32_t smc_fid, ret = psci_migrate_info_up_cpu(); break; + case PSCI_FEATURES: + ret = (u_register_t)psci_features(x1); + break; + case PSCI_NODE_HW_STATE_AARCH64: ret = (u_register_t)psci_node_hw_state( x1, (unsigned int) x2); From e75cc247c744d21e52f834a442bf1c26d0ab6161 Mon Sep 17 00:00:00 2001 From: Wing Li Date: Thu, 26 Jan 2023 18:33:43 -0800 Subject: [PATCH 6/7] feat(fvp): enable support for PSCI OS-initiated mode Change-Id: I4cd6d2bd7ec7f581bd525d5323a3b54e855e2e51 Signed-off-by: Wing Li --- include/plat/arm/common/plat_arm.h | 6 ++++++ plat/arm/board/fvp/fvp_pm.c | 14 ++++++++++++++ plat/arm/board/fvp/include/platform_def.h | 4 ++++ plat/arm/board/fvp/platform.mk | 2 ++ plat/arm/common/arm_pm.c | 12 ++++++++++-- 5 files changed, 36 insertions(+), 2 deletions(-) diff --git a/include/plat/arm/common/plat_arm.h b/include/plat/arm/common/plat_arm.h index 494e4705f..34f913bed 100644 --- a/include/plat/arm/common/plat_arm.h +++ b/include/plat/arm/common/plat_arm.h @@ -125,6 +125,12 @@ void arm_setup_romlib(void); #define ARM_LOCAL_PSTATE_WIDTH 4 #define ARM_LOCAL_PSTATE_MASK ((1 << ARM_LOCAL_PSTATE_WIDTH) - 1) +#if PSCI_OS_INIT_MODE +#define ARM_LAST_AT_PLVL_MASK (ARM_LOCAL_PSTATE_MASK << \ + (ARM_LOCAL_PSTATE_WIDTH * \ + (PLAT_MAX_PWR_LVL + 1))) +#endif /* __PSCI_OS_INIT_MODE__ */ + /* Macros to construct the composite power state */ /* Make composite power state parameter till power level 0 */ diff --git a/plat/arm/board/fvp/fvp_pm.c b/plat/arm/board/fvp/fvp_pm.c index 6b9d6184c..a85b54581 100644 --- a/plat/arm/board/fvp/fvp_pm.c +++ b/plat/arm/board/fvp/fvp_pm.c @@ -227,7 +227,11 @@ static void fvp_pwr_domain_off(const psci_power_state_t *target_state) * FVP handler called when a power domain is about to be suspended. The * target_state encodes the power state that each level should transition to. ******************************************************************************/ +#if PSCI_OS_INIT_MODE +static int fvp_pwr_domain_suspend(const psci_power_state_t *target_state) +#else static void fvp_pwr_domain_suspend(const psci_power_state_t *target_state) +#endif { unsigned long mpidr; @@ -237,7 +241,11 @@ static void fvp_pwr_domain_suspend(const psci_power_state_t *target_state) */ if (target_state->pwr_domain_state[ARM_PWR_LVL0] == ARM_LOCAL_STATE_RET) +#if PSCI_OS_INIT_MODE + return PSCI_E_SUCCESS; +#else return; +#endif assert(target_state->pwr_domain_state[ARM_PWR_LVL0] == ARM_LOCAL_STATE_OFF); @@ -269,6 +277,12 @@ static void fvp_pwr_domain_suspend(const psci_power_state_t *target_state) /* Program the power controller to power off this cpu. */ fvp_pwrc_write_ppoffr(read_mpidr_el1()); + +#if PSCI_OS_INIT_MODE + return PSCI_E_SUCCESS; +#else + return; +#endif } /******************************************************************************* diff --git a/plat/arm/board/fvp/include/platform_def.h b/plat/arm/board/fvp/include/platform_def.h index 039f8e299..84e2e826f 100644 --- a/plat/arm/board/fvp/include/platform_def.h +++ b/plat/arm/board/fvp/include/platform_def.h @@ -30,6 +30,10 @@ #define PLAT_MAX_PWR_LVL ARM_PWR_LVL2 +#if PSCI_OS_INIT_MODE +#define PLAT_MAX_CPU_SUSPEND_PWR_LVL ARM_PWR_LVL1 +#endif + /* * Other platform porting definitions are provided by included headers */ diff --git a/plat/arm/board/fvp/platform.mk b/plat/arm/board/fvp/platform.mk index 207e0d721..143d10e0b 100644 --- a/plat/arm/board/fvp/platform.mk +++ b/plat/arm/board/fvp/platform.mk @@ -472,3 +472,5 @@ ENABLE_FEAT_TCR2 := 2 ifeq (${SPMC_AT_EL3}, 1) PLAT_BL_COMMON_SOURCES += plat/arm/board/fvp/fvp_el3_spmc.c endif + +PSCI_OS_INIT_MODE := 1 diff --git a/plat/arm/common/arm_pm.c b/plat/arm/common/arm_pm.c index 62cc8bbcf..055ab361a 100644 --- a/plat/arm/common/arm_pm.c +++ b/plat/arm/common/arm_pm.c @@ -79,7 +79,12 @@ int arm_validate_power_state(unsigned int power_state, * search if the number of entries justify the additional complexity. */ for (i = 0; !!arm_pm_idle_states[i]; i++) { +#if PSCI_OS_INIT_MODE + if ((power_state & ~ARM_LAST_AT_PLVL_MASK) == + arm_pm_idle_states[i]) +#else if (power_state == arm_pm_idle_states[i]) +#endif /* __PSCI_OS_INIT_MODE__ */ break; } @@ -91,11 +96,14 @@ int arm_validate_power_state(unsigned int power_state, state_id = psci_get_pstate_id(power_state); /* Parse the State ID and populate the state info parameter */ - while (state_id) { - req_state->pwr_domain_state[i++] = state_id & + for (i = ARM_PWR_LVL0; i <= PLAT_MAX_PWR_LVL; i++) { + req_state->pwr_domain_state[i] = state_id & ARM_LOCAL_PSTATE_MASK; state_id >>= ARM_LOCAL_PSTATE_WIDTH; } +#if PSCI_OS_INIT_MODE + req_state->last_at_pwrlvl = state_id & ARM_LOCAL_PSTATE_MASK; +#endif /* __PSCI_OS_INIT_MODE__ */ return PSCI_E_SUCCESS; } From e528bbec74af359714203c7f8d356074733ea9cd Mon Sep 17 00:00:00 2001 From: Maulik Shah Date: Tue, 14 Feb 2023 13:03:24 +0530 Subject: [PATCH 7/7] feat(sc7280): add support for PSCI_OS_INIT_MODE Enable PSCI_OS_INIT_MODE support for sc7280. Change-Id: If94d59190c0bd876e748cd80b2641ce7616fd817 Signed-off-by: Maulik Shah --- plat/qti/common/src/qti_pm.c | 31 +++++++++++++++++++++++++++++-- plat/qti/sc7280/platform.mk | 1 + 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/plat/qti/common/src/qti_pm.c b/plat/qti/common/src/qti_pm.c index ae361e973..1405ca6fb 100644 --- a/plat/qti/common/src/qti_pm.c +++ b/plat/qti/common/src/qti_pm.c @@ -24,6 +24,12 @@ #define QTI_LOCAL_PSTATE_WIDTH 4 #define QTI_LOCAL_PSTATE_MASK ((1 << QTI_LOCAL_PSTATE_WIDTH) - 1) +#if PSCI_OS_INIT_MODE +#define QTI_LAST_AT_PLVL_MASK (QTI_LOCAL_PSTATE_MASK << \ + (QTI_LOCAL_PSTATE_WIDTH * \ + (PLAT_MAX_PWR_LVL + 1))) +#endif + /* Make composite power state parameter till level 0 */ #define qti_make_pwrstate_lvl0(lvl0_state, type) \ (((lvl0_state) << PSTATE_ID_SHIFT) | ((type) << PSTATE_TYPE_SHIFT)) @@ -88,7 +94,12 @@ int qti_validate_power_state(unsigned int power_state, * search if the number of entries justify the additional complexity. */ for (i = 0; !!qti_pm_idle_states[i]; i++) { +#if PSCI_OS_INIT_MODE + if ((power_state & ~QTI_LAST_AT_PLVL_MASK) == + qti_pm_idle_states[i]) +#else if (power_state == qti_pm_idle_states[i]) +#endif break; } @@ -100,11 +111,14 @@ int qti_validate_power_state(unsigned int power_state, state_id = psci_get_pstate_id(power_state); /* Parse the State ID and populate the state info parameter */ - while (state_id) { - req_state->pwr_domain_state[i++] = state_id & + for (i = QTI_PWR_LVL0; i <= PLAT_MAX_PWR_LVL; i++) { + req_state->pwr_domain_state[i] = state_id & QTI_LOCAL_PSTATE_MASK; state_id >>= QTI_LOCAL_PSTATE_WIDTH; } +#if PSCI_OS_INIT_MODE + req_state->last_at_pwrlvl = state_id & QTI_LOCAL_PSTATE_MASK; +#endif return PSCI_E_SUCCESS; } @@ -177,6 +191,18 @@ static void qti_node_power_off(const psci_power_state_t *target_state) } } +#if PSCI_OS_INIT_MODE +static int qti_node_suspend(const psci_power_state_t *target_state) +{ + qtiseclib_psci_node_suspend((const uint8_t *)target_state-> + pwr_domain_state); + if (is_cpu_off(target_state)) { + plat_qti_gic_cpuif_disable(); + qti_set_cpupwrctlr_val(); + } + return PSCI_E_SUCCESS; +} +#else static void qti_node_suspend(const psci_power_state_t *target_state) { qtiseclib_psci_node_suspend((const uint8_t *)target_state-> @@ -186,6 +212,7 @@ static void qti_node_suspend(const psci_power_state_t *target_state) qti_set_cpupwrctlr_val(); } } +#endif static void qti_node_suspend_finish(const psci_power_state_t *target_state) { diff --git a/plat/qti/sc7280/platform.mk b/plat/qti/sc7280/platform.mk index df07bc4a7..528a1d441 100644 --- a/plat/qti/sc7280/platform.mk +++ b/plat/qti/sc7280/platform.mk @@ -28,6 +28,7 @@ ENABLE_PLAT_COMPAT := 0 # Enable PSCI v1.0 extended state ID format PSCI_EXTENDED_STATE_ID := 1 ARM_RECOM_STATE_ID_ENC := 1 +PSCI_OS_INIT_MODE := 1 COLD_BOOT_SINGLE_CPU := 1 PROGRAMMABLE_RESET_ADDRESS := 1