From 7df70e0c64420fe7b195dfcfbc9d9be6b7219e3a Mon Sep 17 00:00:00 2001 From: "David B. Kinder" Date: Tue, 30 Oct 2018 15:04:04 -0700 Subject: [PATCH] doc: update HLD Device Model Transcode, edit, and upload HLD 0.7 section 4 (Device Model) Incorporate changes from previously edited acpi-virt.rst and delete separate doc. Tracked-on: #1668 Signed-off-by: David B. Kinder --- doc/developer-guides/hld/acpi-virt.rst | 359 ----- doc/developer-guides/hld/hld-devicemodel.rst | 1171 ++++++++++++++++- .../hld/images/dm-image108.png | Bin 0 -> 42134 bytes .../{acpi-image3.png => dm-image26.png} | Bin .../hld/images/dm-image33.png | Bin 0 -> 61304 bytes .../{acpi-image1.png => dm-image36.png} | Bin .../{acpi-image2.png => dm-image43.png} | Bin .../{acpi-image5.png => dm-image52.png} | Bin .../hld/images/dm-image74.png | Bin 0 -> 18257 bytes .../hld/images/dm-image75.png | Bin 0 -> 55637 bytes .../hld/images/dm-image80.png | Bin 0 -> 27275 bytes .../hld/images/dm-image83.png | Bin 0 -> 81532 bytes .../hld/images/dm-image94.png | Bin 0 -> 23978 bytes .../hld/images/dm-image96.png | Bin 0 -> 23369 bytes .../hld/images/dm-image97.png | Bin 0 -> 22222 bytes .../hld/images/dm-image99.png | Bin 0 -> 14051 bytes 16 files changed, 1168 insertions(+), 362 deletions(-) delete mode 100644 doc/developer-guides/hld/acpi-virt.rst create mode 100644 doc/developer-guides/hld/images/dm-image108.png rename doc/developer-guides/hld/images/{acpi-image3.png => dm-image26.png} (100%) create mode 100644 doc/developer-guides/hld/images/dm-image33.png rename doc/developer-guides/hld/images/{acpi-image1.png => dm-image36.png} (100%) rename doc/developer-guides/hld/images/{acpi-image2.png => dm-image43.png} (100%) rename doc/developer-guides/hld/images/{acpi-image5.png => dm-image52.png} (100%) create mode 100644 doc/developer-guides/hld/images/dm-image74.png create mode 100644 doc/developer-guides/hld/images/dm-image75.png create mode 100644 doc/developer-guides/hld/images/dm-image80.png create mode 100644 doc/developer-guides/hld/images/dm-image83.png create mode 100644 doc/developer-guides/hld/images/dm-image94.png create mode 100644 doc/developer-guides/hld/images/dm-image96.png create mode 100644 doc/developer-guides/hld/images/dm-image97.png create mode 100644 doc/developer-guides/hld/images/dm-image99.png diff --git a/doc/developer-guides/hld/acpi-virt.rst b/doc/developer-guides/hld/acpi-virt.rst deleted file mode 100644 index a154f1429..000000000 --- a/doc/developer-guides/hld/acpi-virt.rst +++ /dev/null @@ -1,359 +0,0 @@ -.. _acpi-virt-HLD: - -ACPI Virtualization high-level design -##################################### - -ACPI introduction -***************** - -Advanced Configuration and Power Interface (ACPI) provides an open -standard that operating systems can use to discover and configure -computer hardware components to perform power management for example, by -monitoring status and putting unused components to sleep. - -Functions implemented by ACPI include: - -- System/Device/Processor power management -- Device/Processor performance management -- Configuration / Plug and Play -- System event -- Battery management -- Thermal management - -ACPI enumerates and lists the different DMA engines in the platform, and -device scope relationships between PCI devices and which DMA engine -controls them. All critical functions depend on ACPI tables. Here's an -example on an Apollo Lake platform (APL) with Linux installed: - -.. code-block:: none - - root@:Dom0 ~ $ ls /sys/firmware/acpi/tables/ - APIC data DMAR DSDT dynamic FACP FACS HPET MCFG NHLT TPM2 - -These tables provide different information and functions: - -- Advanced Programmable Interrupt Controller (APIC) for Symmetric - Multiprocessor systems (SMP), -- DMA remapping (DMAR) for Intel |reg| Virtualization Technology for - Directed I/O (VT-d), -- Non-HD Audio Link Table (NHLT) for supporting audio device, -- and Differentiated System Description Table (DSDT) for system - configuration info. DSDT is a major ACPI table used to describe what - peripherals the machine has, and information on PCI IRQ mappings and - power management - -Most of the ACPI functionality is provided in ACPI Machine Language -(AML) bytecode stored in the ACPI tables. To make use of these tables, -Linux implements an interpreter for the AML bytecode. At BIOS -development time, the AML bytecode is compiled from the ASL (ACPI Source -Language) code. The ``iasl`` command is used to disassemble the ACPI table -and display its contents: - -.. code-block:: none - - root@:Dom0 ~ $ cp /sys/firmware/acpi/tables/DMAR . - root@:Dom0 ~ $ iasl -d DMAR - - Intel ACPI Component Architecture - ASL+ Optimizing Compiler/Disassembler version 20170728 - Copyright (c) 2000 - 2017 Intel Corporation - Input file DMAR, Length 0xB0 (176) bytes - ACPI: DMAR 0x0000000000000000 0000B0 (v01 INTEL BDW 00000001 INTL 00000001) - Acpi Data Table [DMAR] decoded - Formatted output: DMAR.dsl - 5286 bytes - - root@:Dom0 ~ $ cat DMAR.dsl - [000h 0000 4] Signature : "DMAR" [DMA Remapping table] - [004h 0004 4] Table Length : 000000B0 - [008h 0008 1] Revision : 01 - ... - [030h 0048 2] Subtable Type : 0000 [Hardware Unit Definition] - [032h 0050 2] Length : 0018 - [034h 0052 1] Flags : 00 - [035h 0053 1] Reserved : 00 - [036h 0054 2] PCI Segment Number : 0000 - [038h 0056 8] Register Base Address : 00000000FED64000 - -From the displayed ASL, we can see some generic table fields, such as -the version information, and one VTd remapping engine description with -FED64000 as base address. - -We can modify DMAR.dsl and assemble it again to AML: - -.. code-block:: none - - root@:Dom0 ~ $ iasl DMAR.dsl - Intel ACPI Component Architecture - ASL+ Optimizing Compiler/Disassembler version 20170728 - Copyright (c) 2000 - 2017 Intel Corporation - Table Input: DMAR.dsl - 113 lines, 5286 bytes, 72 fields - Binary Output: DMAR.aml - 176 bytes - Compilation complete. 0 Errors, 0 Warnings, 0 Remarks - -We can see the new AML file ``DMAR.aml`` is created. - -There are many ACPI tables in the system, linked together via table -pointers. In all ACPI-compatible system, the OS can enumerate all -needed tables starting with the Root System Description Pointer (RSDP) -provided at a known place in the system low address space, and pointing -to an XSDT (Extended System Description Table). The following picture -shows a typical ACPI table layout in an Intel APL platform: - -.. figure:: images/acpi-image1.png - :width: 700px - :align: center - :name: acpi-layout - - Typical ACPI table layout in an Intel APL platform - - -ACPI virtualization -******************* - -Most modern OSes requires ACPI, so ACRN provides ACPI virtualization to -emulate an ACPI-capable virtual platform for the guest OS. To achieve -this, there are two options, depending on physical device and ACPI -resources are abstracted: Partitioning and Emulation. - -Partitioning -============ - -One option is to assign and partition physical devices and ACPI -resources among all guest OSes. That means each guest OS owns specific -devices with passthrough, such as shown below: - -+--------------------------+--------------------------+--------------------------+ -| PCI Devices | VM0(Cluster VM) | VM1(IVI VM) | -+--------------------------+--------------------------+--------------------------+ -| I2C | I2C3, I2C0 | I2C1, I2C2, I2C4, I2C5, | -| | | I2C6, I2C7 | -+--------------------------+--------------------------+--------------------------+ -| SPI | SPI1 | SPI0, SPI2 | -+--------------------------+--------------------------+--------------------------+ -| USB | | USB-Host (xHCI) and | -| | | USB-Device (xDCI) | -+--------------------------+--------------------------+--------------------------+ -| SDIO | | SDIO | -+--------------------------+--------------------------+--------------------------+ -| IPU | | IPU | -+--------------------------+--------------------------+--------------------------+ -| Ethernet | Ethernet | | -+--------------------------+--------------------------+--------------------------+ -| WIFI | | WIFI | -+--------------------------+--------------------------+--------------------------+ -| Bluetooth | | Bluetooth | -+--------------------------+--------------------------+--------------------------+ -| Audio | | Audio | -+--------------------------+--------------------------+--------------------------+ -| GPIO | GPIO | | -+--------------------------+--------------------------+--------------------------+ -| UART | UART | | -+--------------------------+--------------------------+--------------------------+ - -In an early ACRN development phase, partitioning was used for -simplicity. To implement partitioning, we need to hack the PCI logic to -make different VMs see a different subset of devices, and create one -copy of the ACPI tables for each of them, as shown in the following -picture: - -.. figure:: images/acpi-image3.png - :width: 900px - :align: center - -For each VM, its ACPI tables are standalone copies and not related to -other VMs. Opregion also needs to be copied for different VM. - -For each table, we make modifications, based on the physical table, to -reflect the assigned devices to a particular VM. In the picture below, -we can see keep SP2(0:19.1) for VM0, and SP1(0:19.0)/SP3(0:19.2) for -VM1. Any time a partition policy changes, we need to modify both tables -again, including dissembling, modification, and assembling, which is -tricky and bug-prone. - -.. figure:: images/acpi-image2.png - :width: 900px - :align: center - -Emulation ---------- - -A second option is for the SOS (VM0) to "own" all devices and emulate a -set of virtual devices for each of the UOS (VM1). This is the most -popular model for virtualization, as show below. ACRN currently uses -device emulation plus some device passthrough for UOS. - -.. figure:: images/acpi-image5.png - :width: 400px - :align: center - -Regarding ACPI virtualization in ACRN, different policy are used for -different components: - -- Hypervisor - ACPI is transparent to the Hypervisor, which has no - knowledge of ACPI at all. -- SOS - All ACPI resources are physically owned by the SOS, which - enumerates all ACPI tables and devices. -- UOS - Virtual ACPI resources exposed by the device model are owned by - UOS. - -Source for the ACPI emulation code for the device model is found in -``hw/platform/acpi/acpi.c``. - -Each entry in ``basl_ftables`` is related to each virtual ACPI table, -including following elements: - -- wsect - output handler to write related ACPI table contents to - specific file -- offset - related ACPI table offset in the memory -- valid - dynamically indicate if this table is needed - -.. code-block:: c - - static struct { - int (*wsect)(FILE *fp, struct vmctx *ctx); - uint64_t offset; - bool valid; - } basl_ftables[] = { - { basl_fwrite_rsdp, 0, true }, - { basl_fwrite_rsdt, RSDT_OFFSET, true }, - { basl_fwrite_xsdt, XSDT_OFFSET, true }, - { basl_fwrite_madt, MADT_OFFSET, true }, - { basl_fwrite_fadt, FADT_OFFSET, true }, - { basl_fwrite_hpet, HPET_OFFSET, true }, - { basl_fwrite_mcfg, MCFG_OFFSET, true }, - { basl_fwrite_facs, FACS_OFFSET, true }, - { basl_fwrite_nhlt, NHLT_OFFSET, false }, /*valid with audio ptdev*/ - { basl_fwrite_dsdt, DSDT_OFFSET, true } - }; - -The main function to create virtual ACPI tables is ``acpi_build`` that -calls ``basl_compile`` for each table and performs the following: - -#. create two temp files: infile and outfile -#. with output handler, write table contents stream to infile -#. use ``iasl`` tool to assemble infile into outfile -#. load outfile contents to the required memory offset - -.. code-block:: c - - static int - basl_compile(struct vmctx *ctx, - int (*fwrite_section)(FILE *, struct vmctx *), - uint64_t offset) - { - struct basl_fio io[2]; - static char iaslbuf[3*MAXPATHLEN + 10]; - int err; - - err = basl_start(&io[0], &io[1]); - if (!err) { - err = (*fwrite_section)(io[0].fp, ctx); - - if (!err) { - /* - * iasl sends the results of the compilation to - * stdout. Shut this down by using the shell to - * redirect stdout to /dev/null, unless the user - * has requested verbose output for debugging - * purposes - */ - if (basl_verbose_iasl) - snprintf(iaslbuf, sizeof(iaslbuf), - "%s -p %s %s", - ASL_COMPILER, - io[1].f_name, io[0].f_name); - else - snprintf(iaslbuf, sizeof(iaslbuf), - "/bin/sh -c \"%s -p %s %s\" 1> /dev/null", - ASL_COMPILER, - io[1].f_name, io[0].f_name); - - err = system(iaslbuf); - - if (!err) { - /* - * Copy the aml output file into guest - * memory at the specified location - */ - err = basl_load(ctx, io[1].fd, offset); - } else - err = -1; - } - basl_end(&io[0], &io[1]); - } - -After processing each entry, the virtual ACPI tables are present in UOS -memory. - -For pass-through devices in UOS, we likely need to add some ACPI -description in the UOS virtual DSDT table. There is one hook -(``passthrough_write_dsdt``) in ``hw/pci/passthrough.c`` for it. The following -source code shows calls to different functions to add different contents -for each vendor and device id. - -.. code-block:: c - - static void - passthru_write_dsdt(struct pci_vdev *dev) - { - struct passthru_dev *ptdev = (struct passthru_dev *) dev->arg; - uint32_t vendor = 0, device = 0; - - vendor = read_config(ptdev->phys_dev, PCIR_VENDOR, 2); - - if (vendor != 0x8086) - return; - - device = read_config(ptdev->phys_dev, PCIR_DEVICE, 2); - - /* Provides ACPI extra info */ - if (device == 0x5aaa) - /* XDCI @ 00:15.1 to enable ADB */ - write_dsdt_xhci(dev); - else if (device == 0x5ab4) - /* HDAC @ 00:17.0 as codec */ - write_dsdt_hdac(dev); - else if (device == 0x5a98) - /* HDAS @ 00:e.0 */ - write_dsdt_hdas(dev); - else if (device == 0x5aac) - /* i2c @ 00:16.0 for ipu */ - write_dsdt_ipu_i2c(dev); - else if (device == 0x5abc) - /* URT1 @ 00:18.0 for bluetooth*/ - write_dsdt_urt1(dev); - - } - -For instance, ``write_dsdt_urt1`` provides ACPI contents for Bluetooth -UART device when pass-throughed to the UOS. It provides virtual PCI -device/function as ``_ADR``, with other descriptions possible for Bluetooth -UART enumeration. - -.. code-block:: c - - static void - write_dsdt_urt1(struct pci_vdev *dev) - { - printf("write virt-%x:%x.%x in dsdt for URT1 @ 00:18.0\n", - dev->bus, - dev->slot, - dev->func); - dsdt_line("Device (URT1)"); - dsdt_line("{"); - dsdt_line(" Name (_ADR, 0x%04X%04X)", dev->slot, dev->func); - dsdt_line(" Name (_DDN, \"Intel(R) HS-UART Controller #1\")"); - dsdt_line(" Name (_UID, One)"); - dsdt_line(" Name (RBUF, ResourceTemplate ()"); - dsdt_line(" {"); - dsdt_line(" })"); - dsdt_line(" Method (_CRS, 0, NotSerialized)"); - dsdt_line(" {"); - dsdt_line(" Return (RBUF)"); - dsdt_line(" }"); - dsdt_line("}"); - } - -This document introduces basic ACPI virtualization. Other topics such as -power management virtualization, adds more requirement for ACPI, and -will be discussed in the power management documentation. diff --git a/doc/developer-guides/hld/hld-devicemodel.rst b/doc/developer-guides/hld/hld-devicemodel.rst index cd697f1c7..afbf5c66b 100644 --- a/doc/developer-guides/hld/hld-devicemodel.rst +++ b/doc/developer-guides/hld/hld-devicemodel.rst @@ -3,8 +3,1173 @@ Device Model high-level design ############################## +Hypervisor Device Model (DM) is a QEMU-like application in SOS +responsible for creating a UOS VM and then performing devices emulation +based on command line configurations. -.. toctree:: - :maxdepth: 1 +.. figure:: images/dm-image75.png + :align: center + :name: dm-framework - ACPI virtualization + Device Model Framework + +:numref:`dm-framework` above gives a big picture overview of DM +framework. There are 3 major subsystems in SOS: + +- **Device Emulation**: DM provides backend device emulation routines for + frontend UOS device drivers. These routines register their I/O + handlers to the I/O dispatcher inside the DM. When the VHM + assigns any I/O request to the DM, the I/O dispatcher + dispatches this request to the corresponding device emulation + routine to do the emulation. + +- I/O Path in SOS: + + - HV initializes an I/O request and notifies VHM driver in SOS + through upcall. + - VHM driver dispatches I/O requests to I/O clients and notifies the + clients (in this case the client is the DM which is notified + through char device) + - DM I/O dispatcher calls corresponding I/O handlers + - I/O dispatcher notifies VHM driver the I/O request is completed + through char device + - VHM driver notifies HV on the completion through hypercall + - DM injects VIRQ to UOS frontend device through hypercall + +- VHM: Virtio and HV service Module is a kernel module in SOS as a + middle layer to support DM. Refer to chapter 5.4 for details + +This chapter introduces how the acrn-dm application is configured and +walks through the DM overall flow. We'll then elaborate on device, +ISA, and PCI emulation. + +Configuration +************* + +The acrn-dm should run according to below command line configuration +options: + +.. code-block:: none + + acrn-dm [-abehuwxACHPSTWY] [-c vcpus] [-g ] [-l ] + [-m mem] [-p vcpu:hostcpu] [-s ] [-U uuid] + [--vsbl vsbl_file_name] [--part_info part_info_name] + [--enable_trusty] + + -a: local apic is in xAPIC mode (deprecated) + -A: create ACPI tables + -b: enable bvmcons + -c: # cpus (default 1) + -C: include guest memory in core file + -e: exit on unhandled I/O access + -g: gdb port + -h: help + -H: vmexit from the guest on hlt + -l: LPC device configuration + -m: memory size in MB + -p: pin 'vcpu' to 'hostcpu' + -P: vmexit from the guest on pause + -s: PCI slot config + -S: guest memory cannot be swapped + -u: RTC keeps UTC time + -U: uuid + -w: ignore unimplemented MSRs + -W: force virtio to use single-vector MSI + -x: local apic is in x2APIC mode + -Y: disable MPtable generation + -k: kernel image path + -r: ramdisk image path + -B: bootargs for kernel + -G: GVT args: low_gm_size, high_gm_size, fence_sz + -v: version + -i: ioc boot parameters + --vsbl: vsbl file path + --part_info: guest partition info file path + --enable_trusty: enable trusty for guest + --ptdev_no_reset: disable reset check for ptdev + + +Here's an example showing how to run a VM with: + +- Build ACPI table +- UART device on PCI 00:01.0 +- GPU device on PCI 00:02.0 +- Virtio-block device on PCI 00:03.0 +- Virtio-net device on PCI 00:04.0 + +.. code-block:: bash + + acrn-dm -A -m 2048M -c 3 \ + -s 0:0,hostbridge \ + -s 1:0,lpc -l com1,stdio \ + -s 5,virtio-console,@pty:pty_port \ + -s 3,virtio-blk,b,/data/clearlinux/clearlinux.img \ + -s 4,virtio-net,tap_LaaG --vsbl /usr/share/acrn/bios/VSBL.bin \ + -B "root=/dev/vda2 rw rootwait maxcpus=3 nohpet console=hvc0 \ + console=ttyS0 no_timer_check ignore_loglevel log_buf_len=16M \ + consoleblank=0 tsc=reliable i915.avail_planes_per_pipe=0x070F00 \ + i915.enable_guc_loading=0 \ + i915.enable_hangcheck=0 i915.nuclear_pageflip=1 \ + i915.enable_guc_submission=0 i915.enable_guc=0" vm1 + +DM Initialization +***************** + +:numref:`dm-boot-flow` shows the overall flow for the DM boot up: + +.. figure:: images/dm-image80.png + :align: center + :name: dm-boot-flow + + Device Model Boot Flow + +- **DM Start**: DM application starts to run. + +- **Option Parsing**: DM parse options from command line inputs. + +- **VM Create**: DM calls ioctl to SOS VHM, then SOS VHM makes + hypercalls to HV to create a VM, it returns a vmid for a + dedicated VM. + +- **Set I/O Request Buffer**: the I/O request buffer is a page buffer + allocated by DM for a specific VM in user space. This buffer is + shared between DM, VHM and HV. **Set I/O Request buffer** calls + an ioctl executing a hypercall to share this unique page buffer + with VHM and HV. Please refer to chapter 3.4 and 4.4 for more + details. + +- **Memory Setup**: UOS memory is allocated from SOS + memory. This section of memory will use SOS hugetlbfs to allocate + linear continuous host physical address for guest memory. It will + try to get the page size as big as possible to guarantee maximum + utilization of TLB. It then invokes a hypercall to HV for its EPT + mapping, and maps the memory segments into user space. + +- **PIO/MMIO Handler Init**: PIO/MMIO handlers provide callbacks for + trapped PIO/MMIO request which are triggered from I/O request + server in HV for DM owned device emulation. This is the endpoint + of I/O path in DM. After this initialization, device emulation + driver in DM could register its MMIO handler by *register_mem()* + API and PIO handler by *register_inout()* API or INOUT_PORT() + macro. + +- **PCI Init**: PCI initialization scans PCI bus/slot/function to + identify each configured PCI device on the acrn-dm command line + and initializes their configuration space by calling their + dedicated vdev_init() function. For more detail of DM PCI + emulation please refer to section 4.6. + +- **ACPI Build**: If there is "-A" option in acrn-dm command line, DM + will build ACPI table into its VM's F-Segment (0xf2400). This + ACPI table includes full tables for RSDP, RSDT, XSDT, MADT, FADT, + HPET, MCFG, FACS, and DSDT. All these items are programed + according to acrn-dm command line configuration and derived from + their default value. + +- **SW Load**: DM prepares UOS VM's SW configuration such as kernel, + ramdisk, and zeropage, according to these memory locations: + + .. code-block:: c + + #define RAMDISK_LOAD_OFF(ctx) (ctx->lowmem - 4*MB) + #define BOOTARGS_LOAD_OFF(ctx) (ctx->lowmem - 8*KB) + #define KERNEL_ENTRY_OFF(ctx) (ctx->lowmem - 6*KB) + #define ZEROPAGE_LOAD_OFF(ctx) (ctx->lowmem - 4*KB) + #define KERNEL_LOAD_OFF(ctx) (16*MB) + + For example, if the UOS memory is set as 800M size, then **SW Load** + will prepare its ramdisk (if there is) at 0x31c00000 (796M), bootargs at + 0x31ffe000 (800M - 8K), kernel entry at 0x31ffe800(800M - 6K) and zero + page at 0x31fff000 (800M - 4K). The hypervisor will finally run VM based + on these configurations. + + Note that the zero page above also includes e820 setting for this VM. + The DM defines its VM e820 table according to this configuration: + + + .. code-block:: c + + /* + * Default e820 mem map: + * + * there is reserved memory hole for PCI hole and APIC etc + * so the memory layout could be separated into lowmem & highmem. + * - if request memory size <= ctx->lowmem_limit, then there is only + * map[0]:0~ctx->lowmem for RAM + * ctx->lowmem = request_memory_size + * - if request memory size > ctx->lowmem_limit, then there are + * map[0]:0~ctx->lowmem_limit & map[2]:4G~ctx->highmem for RAM + * ctx->highmem = request_memory_size - ctx->lowmem_limit + * + * Begin End Type Length + * 0: 0 - 0xef000 RAM 0xEF000 + * 1 0xef000 - 0x100000 (reserved) 0x11000 + * 2 0x100000 - lowmem RAM lowmem - 0x100000 + * 3: lowmem - bff_fffff (reserved) 0xc00_00000-lowmem + * 4: 0xc00_00000 - dff_fffff PCI hole 512MB + * 5: 0xe00_00000 - fff_fffff (reserved) 512MB + * 6: 1_000_00000 - highmem RAM highmem-4G + */ + +- **VM Loop Thread**: DM kicks this VM loop thread to create I/O + request client for DM, runs VM, and then enters I/O request + handling loop: + + .. code-block:: c + + vm_loop(struct vmctx *ctx) + { + int error; + + ctx->ioreq_client = vm_create_ioreq_client(ctx); + assert(ctx->ioreq_client > 0); + + error = vm_run(ctx); + assert(error == 0); + + while (1) { + int vcpu_id; + struct vhm_request *vhm_req; + + error = vm_attach_ioreq_client(ctx); + if (error) + break; + + for (vcpu_id = 0; vcpu_id < 4; vcpu_id++) { + vhm_req = &vhm_req_buf[vcpu_id]; + if ((atomic_load(&vhm_req->processed) == REQ_STATE_PROCESSING) + && (vhm_req->client == ctx->ioreq_client)) + handle_vmexit(ctx, vhm_req, vcpu_id); + } + + if (VM_SUSPEND_SYSTEM_RESET == vm_get_suspend_mode()) { + vm_system_reset(ctx); + } + + if (VM_SUSPEND_SUSPEND == vm_get_suspend_mode()) { + vm_suspend_resume(ctx); + } + } + quit_vm_loop = 0; + printf("VM loop exit\n"); + } + +- **Mevent Dispatch Loop**: It's the final loop of the main acrn-dm + thread. mevent dispatch will do polling for potential async + event. + +VHM +*** + +VHM overview +============ + +Device Model manages UOS VM by accessing interfaces exported from VHM +module. VHM module is an SOS kernel driver. The ``/dev/acrn_vhm`` node is +created when VHM module is initialized. Device Model follows the standard +Linux char device API (ioctl) to access the functionality of VHM. + +In most of ioctl, VHM converts the ioctl command to a corresponding +hypercall to the hypervisor. There are two exceptions: + +- I/O request client management is implemented in VHM. + +- For memory range management of UOS VM, VHM needs to save all memory + range info of UOS VM. The subsequent memory mapping update of UOS VM + needs this information. + +.. figure:: images/dm-image108.png + :align: center + :name: vhm-arch + + Architecture of ACRN VHM + +VHM ioctl interfaces +==================== + +.. note:: Reference API docs for General interface, VM Management, + IRQ and Interrupts, Device Model management, Guest Memory management, + PCI assignment, and Power management + +I/O Emulation in SOS +******************** + +I/O requests from the hypervisor are dispatched by VHM in the SOS kernel +to a registered client, responsible for further processing the +I/O access and notifying the hypervisor on its completion. + +Initialization of Shared I/O Request Buffer +=========================================== + +For each VM, there is a shared 4-KByte memory region used for I/O request +communication between the hypervisor and SOS. Upon initialization +of a VM, the DM (acrn-dm) in SOS userland first allocates a 4-KByte +page and passes the GPA of the buffer to HV via hypercall. The buffer is +used as an array of 16 I/O request slots with each I/O request being +256 bytes. This array is indexed by vCPU ID. Thus, each vCPU of the VM +corresponds to one I/O request slot in the request buffer since a vCPU +cannot issue multiple I/O requests at the same time. + +.. note:: By this design, a VM supports a maximum of 16 vCPUs. + +I/O Clients +=========== + +An I/O client is either a SOS userland application or a SOS kernel space +module responsible for handling I/O access whose address +falls in a certain range. Each VM has an array of registered I/O +clients which are initialized with a fixed I/O address range, plus a PCI +BDF on VM creation. There is a special client in each VM, called the +fallback client, that handles all I/O requests that do not fit into +the range of any other client. In the current design the device model +acts as the fallback client for any VM. + +Each I/O client can be configured to handle the I/O requests in the +client thread context or in a separate kernel thread context. +:numref:`vhm-interaction` shows how an I/O client talks to VHM to register +a handler and process the incoming I/O requests in a kernel thread +specifically created for this purpose. + +.. figure:: images/dm-image94.png + :align: center + :name: vhm-interaction + + Interaction of in-kernel I/O clients and VHM + +- On registration, the client requests a fresh ID, registers a + handler, adds the I/O range (or PCI BDF) to be emulated by this + client, and finally attaches it to VHM which creates the kicks off + for a new kernel thread. + +- The kernel thread waits for any I/O request to be handled. When a + pending I/O request is assigned to the client by VHM, the kernel + thread wakes up and calls the registered callback function + to process the request. + +- Before the client is destroyed, VHM ensures that the kernel + thread exits. + + +An I/O client can also handle I/O requests in its own thread context. +:numref:`dm-vhm-interaction` shows the interactions in such a case, using the +device model as an example. No callback is registered on +registration and the I/O client (device model in the example) attaches +itself to VHM every time it is ready to process additional I/O requests. +Note also that the DM runs in userland and talks to VHM via the ioctl +interface in `VHM ioctl interfaces`_. + +.. figure:: images/dm-image99.png + :align: center + :name: dm-vhm-interaction + + Interaction of DM and VHM + +Refer to `I/O client interfaces`_ for a list of interfaces for developing +I/O clients. + +Processing I/O Requests +======================= + +.. figure:: images/dm-image96.png + :align: center + :name: io-sequence-sos + + I/O request handling sequence in SOS + +:numref:`io-sequence-sos` above illustrates the interactions among the +hypervisor, VHM, +and the device model for handling I/O requests. The main interactions +are as follows: + +1. The hypervisor makes an upcall to SOS as an interrupt + handled by the upcall handler in VHM. + +2. The upcall handler schedules the execution of the I/O request + dispatcher. If the dispatcher is already running, another round + of execution is scheduled. + +3. The I/O request dispatcher looks for I/O requests with the PENDING + state, assigns them to registered clients based on the address of + the I/O access, updates their state to PROCESSING, and wakes up + all clients that have I/O requests to be processed. The flow is + illustrated in more detail in :numref:`io-dispatcher-flow`. + +4. The waked client (the DM in :numref:`io-sequence-sos` above) handles the + assigned I/O requests, updates their state to COMPLETE, and notifies + the VHM of the completion via ioctl. :numref:`dm-io-flow` show this + flow. + +5. The VHM device notifies the hypervisor of the completion via + hypercall. + +.. figure:: images/dm-image97.png + :align: center + :name: io-dispatcher-flow + + I/O dispatcher control flow + +.. figure:: images/dm-image74.png + :align: center + :name: dm-io-flow + + Device model control flow on handling I/O requests + + +Emulation of Accesses to PCI Configuration Space +================================================ + +PCI configuration spaces are accessed by writing to an address to I/O +port 0xcf8 and then reading the I/O port 0xcfc. As the PCI configuration +space of different devices is emulated by different clients, VHM +handles the emulation of accesses to I/O port 0xcf8, caches the BDF of +the device and the offset of the register, and delivers the request to +the client with the same BDF when I/O port 0xcfc is accessed. + +The following table summarizes the emulation of accesses to I/O port +0xcf8 and 0xcfc. + ++-----------------+------------------------+---------------------------+ +| | BDF and offset cached | BDF and offset not cached | ++=================+========================+===========================+ +| Load from 0xcf8 | Return value previously stored to port 0xcf8 | ++-----------------+------------------------+---------------------------+ +| Store to 0xcf8 | If MSB of value is 1, cache BFD and offset, | +| | otherwise, invalidate cache. | ++-----------------+------------------------+---------------------------+ +| Load from 0xcfc | Assigned to client | Return all 1's | ++-----------------+ with same BDF, or +---------------------------+ +| Store to 0xcfc | fallback if not any. | Silently ignored | ++-----------------+------------------------+---------------------------+ + +I/O Client Interfaces +===================== + +.. note:: replace with reference to API documentation + +The APIs for I/O client development are as follows: + +For I/O client registration + +- acrn_ioreq_create_client - create ioreq client +- acrn_ioreq_add_iorange - add iorange monitored by ioreq client +- acrn_ioreq_intercept_bdf - set intercept bdf info of ioreq client +- acrn_ioreq_get_reqbuf - get request buffer + +I/O client runtime helpers. + +- acrn_ioreq_attach_client - start handle request for ioreq client +- acrn_ioreq_complete_request - notify guest request handling is + completed + +For I/O client destruction + +- acrn_ioreq_destroy_client - destroy ioreq client +- acrn_ioreq_del_iorange - del iorange monitored by ioreq client +- acrn_ioreq_unintercept_bdf - clear intercept bdf info of ioreq + client + + +Device Emulation +**************** + +The DM emulates different kinds of devices, such as RTC, +LPC, UART, PCI devices, virtio block device, etc. It is important +for device emulation can handle I/O requests +from different devices including PIO, MMIO, and PCI CFG +SPACE access. For example, a CMOS RTC device may access 0x70/0x71 PIO to +get CMOS time, a GPU PCI device may access its MMIO or PIO bar space to +complete its framebuffer rendering, or the bootloader may access a PCI +devices' CFG SPACE for BAR reprogramming. + +The DM needs to inject interrupts/MSIs to its frontend devices whenever +necessary. For example, a RTC device needs get its ALARM interrupt, or a +PCI device with MSI capability needs to get its MSI. + +DM also provides a PIRQ routing mechanism for platform devices. + +PIO/MMIO/CFG SPACE Handler +========================== + +This chapter will do a quick introduction of different I/O requests. + +PIO Handler Register +-------------------- + +A PIO range structure in DM is like below, it's the parameter needed to +register PIO handler for special PIO range: + +.. note:: this should be references to API documentation in + devicemodel/include/inout.h + +.. code-block:: c + + struct inout_port { + const char *name; + int port; + int size; + int flags; + inout_func_t handler; + void *arg; + }; + +A PIO emulation handler is defined as: + +.. code-block:: c + + /* + * inout emulation handlers return 0 on success and -1 on failure. + */ + typedef int (*inout_func_t)(struct vmctx *ctx, int vcpu, int in, int port, int bytes, uint32_t *eax, void *arg); + + +The DM pre-registers the PIO emulation handlers through MACRO +INOUT_PORT, or registers the PIO emulation handers through +register_inout() function after init_inout(): + +.. code-block:: c + + #define INOUT_PORT(name, port, flags, handler) \ + static struct inout_port __CONCAT(__inout_port, __LINE__) = { \ + #name, \ + (port), \ + 1, \ + (flags), \ + (handler), \ + 0 \ + }; \ + DATA_SET(inout_port_set, __CONCAT(__inout_port, __LINE__)) + + int register_inout(struct inout_port *iop); + int unregister_inout(struct inout_port *iop); + +MMIO Handler Register +--------------------- + +A MMIO range structure is defined below. As with PIO, it's the +parameter needed to register MMIO handler for special MMIO range: + +.. code-block:: c + + struct mem_range { + const char *name; + int flags; + mem_func_t handler; + void *arg1; + long arg2; + uint64_t base; + uint64_t size; + }; + +A MMIO emulation handler is defined as: + +.. code-block:: c + + typedef int (*mem_func_t)(struct vmctx *ctx, int vcpu, int dir, uint64_t addr, + int size, uint64_t *val, void *arg1, long arg2); + +DM needs to call register_mem() function to register its emulated +device's MMIO handler: + +.. code-block:: c + + int register_mem(struct mem_range *memp); + int unregister_mem(struct mem_range *memp); + +CFG SPACE Handler Register +-------------------------- + +As VHM intercepts the cf8/cfc PIO access for PCI CFG SPACE, the DM only +needs to provide CFG SPACE read/write handlers directly. Such handlers +are defined as shown below. Normally, a device emulation developer +has no need to update this function. + +.. code-block:: c + + int emulate_pci_cfgrw(struct vmctx *ctx, int vcpu, int in, int bus, int slot, + int func, int reg, int bytes, int *value) + { + pci_cfgrw(ctx, vcpu, in, bus, slot, func, reg, + bytes, (uint32_t *)value); + return 0; + } + +Interrupt Interface +=================== + +DM calls these interrupt functions to send level, edge or MSI interrupt +to destination emulated devices: + +.. code-block:: c + + /* Generate one msi interrupt to UOS, the index parameter indicates + * the msi number from its PCI msi capability. */ + void pci_generate_msi(struct pci_vdev *pi, int index); + + /* Generate one msix interrupt to UOS, the index parameter indicates + * the msix number from its PCI msix bar. */ + void pci_generate_msix(struct pci_vdev *pi, int index); + + /* Assert INTx interrupt line to high or low. */ + void pci_lintr_assert(struct pci_vdev *pi); + void pci_lintr_deassert(struct pci_vdev *pi); + + /* Request and release the INTx interrupt resource. + * This API will try to find one best INTx pin of this PCI slot and + * set the "Interrupt pin" field of PCI config space. */ + void pci_lintr_request(struct pci_vdev *pi); + void pci_lintr_release(struct pci_vdev *pi); + + /* These APIs assert/deassert vPIC interrupt lines. */ + int vm_isa_assert_irq(struct vmctx *ctx, int atpic_irq, int ioapic_irq); + int vm_isa_deassert_irq(struct vmctx *ctx, int atpic_irq, int ioapic_irq); + int vm_isa_pulse_irq(struct vmctx *ctx, int atpic_irq, int ioapic_irq); + +PIRQ Routing +============ + +:numref:`pirq-routing` shows a PCI device PIRQ routing example. On a platform, +there could be more PCI devices than available IRQ pin resources on its +PIC or IOAPIC interrupt controller. ICH HW provides a PIRQ Routing +mechanism to share IRQ pin resources between different PCI devices. + +.. figure:: images/dm-image33.png + :align: center + :name: pirq-routing + + PIRQ Routing + + +DM calls pci_lintr_route() to emulate this PIRQ routing: + +.. code-block:: c + + static void + pci_lintr_route(struct pci_vdev *dev) + { + struct businfo *bi; + struct intxinfo *ii; + + if (dev->lintr.pin == 0) + return; + + bi = pci_businfo[dev->bus]; + assert(bi != NULL); + ii = &bi->slotinfo[dev->slot].si_intpins[dev->lintr.pin - 1]; + + /* + * Attempt to allocate an I/O APIC pin for this intpin if one + * is not yet assigned. + */ + if (ii->ii_ioapic_irq == 0) + ii->ii_ioapic_irq = ioapic_pci_alloc_irq(dev); + assert(ii->ii_ioapic_irq > 0); + + /* + * Attempt to allocate a PIRQ pin for this intpin if one is + * not yet assigned. + */ + if (ii->ii_pirq_pin == 0) + ii->ii_pirq_pin = pirq_alloc_pin(dev); + assert(ii->ii_pirq_pin > 0); + + dev->lintr.ioapic_irq = ii->ii_ioapic_irq; + dev->lintr.pirq_pin = ii->ii_pirq_pin; + pci_set_cfgdata8(dev, PCIR_INTLINE, pirq_irq(ii->ii_pirq_pin)); + } + +The PIRQ routing for IOAPIC and PIC is dealt with differently. + +* For IOAPIC, the irq pin is allocated in a round-robin fashion within the + pins permitted for PCI devices. The irq information will be built + into ACPI DSDT table then passed to guest VM. + +* For PIC, the pin2irq information is maintained in a pirqs[] array (the array size is 8 + representing 8 shared PIRQs). When a PCI device tries to allocate a + pirq pin, it will do a balancing calculation to figure out a best pin + vs. irq pair. The irq# will be programed into PCI INTLINE config space + and the pin# will be built into ACPI DSDT table then passed to guest VM. + +.. note:: "irq" here is also called as "gsi" in ACPI terminology . + +Regarding to INT A/B/C/D for PCI devices, DM just allocates them evenly +prior to PIRQ routing and then programs into PCI INTPIN config space. + +ISA and PCI Emulation +********************* + +ISA Emulation +============= + +There is no explicit ISA emulation structure in DM; it calls the +corresponding device initialization functions directly, and takes the +usage of PIO/MMIO handler and interrupt APIs (described in `I/O Client +Interfaces`_) in its routine. + +PCI Emulation +============= + +.. figure:: images/dm-image83.png + :align: center + + PCI Emulation Structure + +PCI emulation takes care of three interfaces: + +- PCI configuration space update interface +- BAR IO/MMIO handlers +- INTR/MSI injection + +The core PCI emulation structures are: + +.. note:: reference ``struct businfo`` API from devicemodel/hw/pci/core.c + +During PCI initialization, ACRN DM will scan each PCI bus, slot and +function and identify the PCI devices configured by acrn-dm command +line. The corresponding PCI device's initialization function will +be called to initialize its config space, allocate its BAR resource, its +irq, and do its irq routing. + +.. note:: reference API doc for pci_vdev, pci_vdef_ops + +The pci_vdev_ops of the pci_vdev structure could be installed by +customized handlers for cfgwrite/cfgread and barwrite/barread. + +The cfgwrite/cfgread handlers will be called from the configuration +space handler. The barwrite/barread will be +called from the PIO/MMIO handler. + +The PCI emulation device will make use of interrupt APIs as well for +its interrupt injection. + +PCI Host Bridge and hierarchy +============================= + +There is PCI host bridge emulation in DM. The bus hierarchy is +determined by acrn-dm command line input. Using this command line, as an +example: + +.. code-block:: bash + + acrn-dm -A -m 2048M -c 3 \ + -s 0:0,hostbridge \ + -s 1:0,lpc -l com1,stdio \ + -s 5,virtio-console,@pty:pty_port \ + -s 3,virtio-blk,b,/data/clearlinux/clearlinux.img \ + -s 4,virtio-net,tap_LaaG --vsbl /usr/share/acrn/bios/VSBL.bin \ + -B "root=/dev/vda2 rw rootwait maxcpus=3 nohpet console=hvc0 \ + console=ttyS0 no_timer_check ignore_loglevel log_buf_len=16M \ + consoleblank=0 tsc=reliable i915.avail_planes_per_pipe=0x070F00 \ + i915.enable_guc_loading=0 \ + i915.enable_hangcheck=0 i915.nuclear_pageflip=1 \ + i915.enable_guc_submission=0 i915.enable_guc=0" vm1 + +the bus hierarchy would be: + +.. code-block:: console + + $ lspci + 00:00.0 Host bridge: Network Appliance Corporation Device 1275 + 00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II] + 00:03.0 SCSI storage controller: Red Hat, Inc. Virtio block device + 00:04.0 Ethernet controller: Red Hat, Inc. Virtio network device + 00:05.0 Serial controller: Red Hat, Inc. Virtio console + +.. note:: For Clear Linux OS, the ``lspci`` command can be installed + from the "sysadmin-basic" bundle. + +ACPI Virtualization +******************* + +Introduction +************ + +Advanced Configuration and Power Interface (ACPI) provides an open +standard that operating systems can use to discover and configure +computer hardware components to perform power management for example, by +monitoring status and putting unused components to sleep. + +Functions implemented by ACPI include: + +- System/Device/Processor power management +- Device/Processor performance management +- Configuration / Plug and Play +- System event +- Battery management +- Thermal management + +All critical functions depends on ACPI tables. +On an APL platform with Linux installed we can see these tables using: + +.. code-block:: console + + $ ls /sys/firmware/acpi/tables/ + APIC data DMAR DSDT dynamic FACP FACS HPET MCFG NHLT TPM2 + +These tables provide different information and functions: + +- Advanced Programmable Interrupt Controller (APIC) for Symmetric + Multiprocessor systems (SMP), +- DMA remapping (DMAR) for Intel |reg| Virtualization Technology for + Directed I/O (VT-d), +- Non-HD Audio Link Table (NHLT) for supporting audio device, +- and Differentiated System Description Table (DSDT) for system + configuration info. DSDT is a major ACPI table used to describe what + peripherals the machine has, and information on PCI IRQ mappings and + power management + + +Most of the +ACPI functionality is provided in ACPI Machine Language (AML) bytecode +stored in the ACPI tables. To make use of these tables, Linux implements +an interpreter for the AML bytecode. When the BIOS is built, AML +bytecode is compiled from the ASL (ACPI Source Language) code. To +dissemble the ACPI table, use the ``iasl`` tool: + +.. code-block:: console + + root@:Dom0 ~ $ cp /sys/firmware/acpi/tables/DMAR . + root@:Dom0 ~ $ iasl -d DMAR + + Intel ACPI Component Architecture + ASL+ Optimizing Compiler/Disassembler version 20170728 + Copyright (c) 2000 - 2017 Intel Corporation + Input file DMAR, Length 0xB0 (176) bytes + ACPI: DMAR 0x0000000000000000 0000B0 (v01 INTEL BDW 00000001 INTL 00000001) + Acpi Data Table [DMAR] decoded + Formatted output: DMAR.dsl - 5286 bytes + + root@:Dom0 ~ $ cat DMAR.dsl + [000h 0000 4] Signature : "DMAR" [DMA Remapping table] + [004h 0004 4] Table Length : 000000B0 + [008h 0008 1] Revision : 01 + ... + [030h 0048 2] Subtable Type : 0000 [Hardware Unit Definition] + [032h 0050 2] Length : 0018 + [034h 0052 1] Flags : 00 + [035h 0053 1] Reserved : 00 + [036h 0054 2] PCI Segment Number : 0000 + [038h 0056 8] Register Base Address : 00000000FED64000 + +From the displayed ASL, we can see some generic table fields, such as +version info, and one VTd remapping engine description with FED64000 as +base address. + +We can modify DMAR.dsl and assemble it again to AML: + +.. code-block:: console + + root@:Dom0 ~ $ iasl DMAR.dsl + Intel ACPI Component Architecture + ASL+ Optimizing Compiler/Disassembler version 20170728 + Copyright (c) 2000 - 2017 Intel Corporation + Table Input: DMAR.dsl - 113 lines, 5286 bytes, 72 fields + Binary Output: DMAR.aml - 176 bytes + Compilation complete. 0 Errors, 0 Warnings, 0 Remarks + +A new AML file ``DMAR.aml`` is created. + +There are many ACPI tables in the system, linked together via table +pointers. In all ACPI-compatible system, the OS can enumerate all +needed tables starting with the Root System Description Pointer (RSDP) +provided at a known place in the system low address space, and pointing +to an XSDT (Extended System Description Table). The following picture +shows a typical ACPI table layout in an Intel APL platform: + +.. figure:: images/dm-image36.png + :align: center + + Typical ACPI table layout on Intel APL platform + +ACPI virtualization +=================== + +Most modern OSes requires ACPI, so we need ACPI virtualization to +emulate one ACPI-capable virtual platform for guest OS. To achieve this, +there are two options, depending on the way to abstract physical device and +ACPI resources: Partitioning and Emulation. + +ACPI Partitioning +----------------- + +One ACPI resource abstraction option is to partition all physical +devices and ACPI resources between all guest OSes. That means each guest +OS owns part of the devices with passthrough, as shown below: + +.. list-table:: + :widths: 33 33 33 + :header-rows: 1 + + * - PCI Devices + - VM0 (Cluster VM) + - VM1 (IVI VM) + + * - **I2C** + - I2C3, I2C0 + - I2C1, I2C2, I2C4, I2C5, I2C6, I2C7 + + * - **SPI** + - SPI1 + - SPI0, SPI2 + + * - **USB** + - + - USB-Host (xHCI) and USB-Device (xDCI) + + * - **SDIO** + - + - SDIO + + * - **IPU** + - + - IPU + + * - **Ethernet** + - Ethernet + - + + * - **WIFI** + - + - WIFI + + * - **Bluetooth** + - + - Bluetooth + + * - **Audio** + - + - Audio + + * - **GPIO** + - GPIO + - + + * - **UART** + - UART + - + + +For simplicity, early ACRN development used partitioning. To +achieve the partitions, we hacked the PCI logic to make different VMs see +different subsets of devices, and create one copy of the ACPI tables for +each of them, as shown here: + +.. figure:: images/dm-image26.png + :align: center + + +For each VM, its ACPI tables are a standalone copy, not related to the +tables for other VMs. Opregion also must be copied for different VMs. + +For each table, we make modifications, based on the physical table, to +reflect the assigned devices to this VM. As shown in the figure below, +we keep SP2(0:19.1) for VM0, and SP1(0:19.0)/SP3(0:19.2) for VM1. +Anytime partition policy changes we must modify both tables again, +including dissembling, modifying, and assembling, which is tricky and +potentially error-prone. + +.. figure:: images/dm-image43.png + :align: center + + +ACPI Emulation +-------------- + +An alternative ACPI resource abstraction option is for the SOS (VM0) to +own all devices and emulate a set of virtual devices for the UOS (VM1). +This is the most popular ACPI resource model for virtualization, +as shown in the picture below. ACRN currently +uses device emulation plus some device passthrough for UOS. + +.. figure:: images/dm-image52.png + :align: center + + ACPI Emulation Model + +For ACPI virtualization in ACRN, different policies are used for +different components: + +- **Hypervisor** - ACPI is transparent to the Hypervisor, and has no knowledge + of ACPI at all. + +- **SOS** - All ACPI resources are physically owned by SOS, and enumerates + all ACPI tables and devices. + +- **UOS** - Virtual ACPI resources, exposed by device model, are owned by + UOS. + +ACPI emulation code of device model is found in +``hw/platform/acpi/acpi.c`` + +Each entry in ``basl_ftables`` is related to each virtual ACPI table, +including following elements: + +- wsect - output handler to write related ACPI table contents to + specific file +- offset - related ACPI table offset in the memory +- valid - dynamically indicate if this table is needed + +.. code-block:: c + + static struct { + int (*wsect)(FILE *fp, struct vmctx *ctx); + uint64_t offset; + bool valid; + } basl_ftables[] = { + { basl_fwrite_rsdp, 0, true }, + { basl_fwrite_rsdt, RSDT_OFFSET, true }, + { basl_fwrite_xsdt, XSDT_OFFSET, true }, + { basl_fwrite_madt, MADT_OFFSET, true }, + { basl_fwrite_fadt, FADT_OFFSET, true }, + { basl_fwrite_hpet, HPET_OFFSET, true }, + { basl_fwrite_mcfg, MCFG_OFFSET, true }, + { basl_fwrite_facs, FACS_OFFSET, true }, + { basl_fwrite_nhlt, NHLT_OFFSET, false }, /*valid with audio ptdev*/ + { basl_fwrite_dsdt, DSDT_OFFSET, true } + }; + +The main function to create virtual ACPI tables is acpi_build that calls +basl_compile for each table. basl_compile does the following: + +1. create two temp files: infile and outfile +2. with output handler, write table contents stream to infile +3. use iasl tool to assemble infile into outfile +4. load outfile contents to the required memory offset + +.. code-block:: c + + static int + basl_compile(struct vmctx *ctx, + int (*fwrite_section)(FILE *, struct vmctx *), + uint64_t offset) + { + struct basl_fio io[2]; + static char iaslbuf[3*MAXPATHLEN + 10]; + int err; + + err = basl_start(&io[0], &io[1]); + if (!err) { + err = (*fwrite_section)(io[0].fp, ctx); + + if (!err) { + /* + * iasl sends the results of the compilation to + * stdout. Shut this down by using the shell to + * redirect stdout to /dev/null, unless the user + * has requested verbose output for debugging + * purposes + */ + if (basl_verbose_iasl) + snprintf(iaslbuf, sizeof(iaslbuf), + "%s -p %s %s", + ASL_COMPILER, + io[1].f_name, io[0].f_name); + else + snprintf(iaslbuf, sizeof(iaslbuf), + "/bin/sh -c \"%s -p %s %s\" 1> /dev/null", + ASL_COMPILER, + io[1].f_name, io[0].f_name); + + err = system(iaslbuf); + + if (!err) { + /* + * Copy the aml output file into guest + * memory at the specified location + */ + err = basl_load(ctx, io[1].fd, offset); + } else + err = -1; + } + basl_end(&io[0], &io[1]); + } + +After handling each entry, virtual ACPI tables are present in UOS +memory. + +For passthrough dev in UOS, we may need to add some ACPI description +in virtual DSDT table. There is one hook (passthrough_write_dsdt) in +``hw/pci/passthrough.c`` for this. The following source code, shows +calls different functions to add different contents for each vendor and +device id: + +.. code-block:: c + + static void + passthru_write_dsdt(struct pci_vdev *dev) + { + struct passthru_dev *ptdev = (struct passthru_dev *) dev->arg; + uint32_t vendor = 0, device = 0; + + vendor = read_config(ptdev->phys_dev, PCIR_VENDOR, 2); + + if (vendor != 0x8086) + return; + + device = read_config(ptdev->phys_dev, PCIR_DEVICE, 2); + + /* Provides ACPI extra info */ + if (device == 0x5aaa) + /* XDCI @ 00:15.1 to enable ADB */ + write_dsdt_xhci(dev); + else if (device == 0x5ab4) + /* HDAC @ 00:17.0 as codec */ + write_dsdt_hdac(dev); + else if (device == 0x5a98) + /* HDAS @ 00:e.0 */ + write_dsdt_hdas(dev); + else if (device == 0x5aac) + /* i2c @ 00:16.0 for ipu */ + write_dsdt_ipu_i2c(dev); + else if (device == 0x5abc) + /* URT1 @ 00:18.0 for bluetooth*/ + write_dsdt_urt1(dev); + + } + +For instance, write_dsdt_urt1 provides ACPI contents for Bluetooth +UART device when passthroughed to UOS. It provides virtual PCI +device/function as _ADR. With other description, it could be used for +Bluetooth UART enumeration. + +.. code-block:: c + + static void + write_dsdt_urt1(struct pci_vdev *dev) + { + printf("write virt-%x:%x.%x in dsdt for URT1 @ 00:18.0\n", + dev->bus, + dev->slot, + dev->func); + dsdt_line("Device (URT1)"); + dsdt_line("{"); + dsdt_line(" Name (_ADR, 0x%04X%04X)", dev->slot, dev->func); + dsdt_line(" Name (_DDN, \"Intel(R) HS-UART Controller #1\")"); + dsdt_line(" Name (_UID, One)"); + dsdt_line(" Name (RBUF, ResourceTemplate ()"); + dsdt_line(" {"); + dsdt_line(" })"); + dsdt_line(" Method (_CRS, 0, NotSerialized)"); + dsdt_line(" {"); + dsdt_line(" Return (RBUF)"); + dsdt_line(" }"); + dsdt_line("}"); + } + + +PM in Device Model +****************** + +PM module in Device Model emulate the UOS low power state transition. + +Each time UOS writes an ACPI control register to initialize low power +state transition, the writing operation is trapped to DM as an I/O +emulation request by the I/O emulation framework. + +To emulate UOS S5 entry, DM will destroy I/O request client, release +allocated UOS memory, stop all created threads, destroy UOS VM, and exit +DM. To emulate S5 exit, a fresh DM start by VM manager is used. + +To emulate UOS S3 entry, DM pauses the UOS VM, stops the UOS watchdog, +and waits for a resume signal. When the UOS should exit from S3, DM will +get a wakeup signal and reset the UOS VM to emulate the UOS exit from +S3. diff --git a/doc/developer-guides/hld/images/dm-image108.png b/doc/developer-guides/hld/images/dm-image108.png new file mode 100644 index 0000000000000000000000000000000000000000..382e5bd8d3fbb7005ed47904f48534c2d8f4f6d4 GIT binary patch literal 42134 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 literal 0 HcmV?d00001 diff --git a/doc/developer-guides/hld/images/acpi-image3.png b/doc/developer-guides/hld/images/dm-image26.png similarity index 100% rename from doc/developer-guides/hld/images/acpi-image3.png rename to doc/developer-guides/hld/images/dm-image26.png diff --git a/doc/developer-guides/hld/images/dm-image33.png b/doc/developer-guides/hld/images/dm-image33.png new file mode 100644 index 0000000000000000000000000000000000000000..1c5fb08218a861e7c36afff7bfbdaa060bfdd8ee GIT binary patch literal 61304 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 U{NiQU1@KQ=LP5Mx%;@R=2Z>^nbN~PV literal 0 HcmV?d00001 diff --git a/doc/developer-guides/hld/images/acpi-image1.png b/doc/developer-guides/hld/images/dm-image36.png similarity index 100% rename from doc/developer-guides/hld/images/acpi-image1.png rename to doc/developer-guides/hld/images/dm-image36.png diff --git a/doc/developer-guides/hld/images/acpi-image2.png b/doc/developer-guides/hld/images/dm-image43.png similarity index 100% rename from doc/developer-guides/hld/images/acpi-image2.png rename to doc/developer-guides/hld/images/dm-image43.png diff --git a/doc/developer-guides/hld/images/acpi-image5.png b/doc/developer-guides/hld/images/dm-image52.png similarity index 100% rename from doc/developer-guides/hld/images/acpi-image5.png rename to doc/developer-guides/hld/images/dm-image52.png diff --git a/doc/developer-guides/hld/images/dm-image74.png b/doc/developer-guides/hld/images/dm-image74.png new file mode 100644 index 0000000000000000000000000000000000000000..8b8fc9e92878fe8198bbbc4da3b3b23a1ba871b0 GIT binary patch literal 18257 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 literal 0 HcmV?d00001 diff --git a/doc/developer-guides/hld/images/dm-image75.png b/doc/developer-guides/hld/images/dm-image75.png new file mode 100644 index 0000000000000000000000000000000000000000..5c2ea2236e17a053281292c4b1a7bdaeeaaf9542 GIT binary patch literal 55637 zcmb@u1yqz>)HaNYgff6w;DCUXNGUNif}nIrr-(E-(jcv%AR^r$-CaYM2ugPkrP8gW z^nY$beZKcy>-*Qg{%1Wh_Y7xF?S1yX_OHj*zC=Dv$YSHvTw(gI zmXO&m zhtCMFO)a(CWo@xzgpzd*$^y} zC0zs#wg*YkiG{%&Vss7zL+%<8c!`67PmRu@p&#H0{R#nofQMHI@Ehn2Xn`4lb@CY@ zXoUV$dmaM=^;!^)(TU~K3N?j34wFEg!N9nE5f{9GF+htmNazQ6LV~6kNQ_3r1%uWg z?auMNfn00t%CB7*f^ZyG7-&P$CsNG8w>tZV#pRczyMXsDIWdhS>rc+~E~hMp%bPQk z5h~Xh)oB}=7sE*fxj&d96svdobDf^t-etK!eUO;DGhB0sUR5&P*FFnPM%c3JmTb=ZQeHIFq&}}5z3pC6=w4w8VhWb@pOPF z-C)VJ$>y}JJJ#`sNMaF5%l-4-p-q>9CTJVK7qC<>Yj8MBNaTK5Rn?}^=!EmFYMH-0 z0|^5~dB*VW)${VzjW0~M6CQp@9|^S?nHIbOwjMKK_XmenzWM!!WXW{Xw!WGs{AP8; zoc`vTaT{o+>n|EEPHC4FwCG3HT{JrP8pzAJDnkEb?b^g3$E5ECOlXO51U?kHqt`uE zM~S46X8wU+a|HbvikL+RjuZh!sTLlsnP;Tt@A$;_{8?ileDp4-jnM~8Xj*Ty;3$H8{+o}on2`l3qYD)MOiooy$@(8hAJ=MQN$JezG~inf zGvu=at!aEHWpcA}IH;_?)N#E$*WIBns3j+nJnxBX+xY=D)3A%l6KYo5o5nqJvn^AD zma(>Dso?=k*o&W-bgoky+~?m-J_EEBO?UzMj-&ML1bVq=ShZPHG~cw_K{Wo_!gS<> zlF)p98xz}FKW@?)u*FOpiD4f~L-JA(3QzQzeGBARyq78GttX}*z1u7zBJb>L?dLPI zob79?rvH%++jMp=GcsAx8;WB_u_QW=Zo52*mL|ZikYXhl8uQiQJ<>hmqFUyQ?0um% z@}DBgt=;LhTR)A+ch;LI=pjt8n*3=B)DAy?e$Ld`#?oNd6S5qd78Ue zx|TFSZ{d#JiFFo<6M!(%e>q}e7>gw{O}}d!LeFtFl-1Y4kAkFThWWhgIdBT!O&3h# zzY#YaRe=SuJ0kMB7{U@KUUzw@hOt>ySv~JT$rUJ=$Rh9V(>$}O6MH%1%v_3V>aNTC zH9dS8b~K1L0+W#y)jm?l7Bx3-F#eM@*~2w6NmUw)sNdt8F=SB=Eov<_IY^mUq~EW& z-m}zhcglH{qFnn}Wx>A4rsiQ**zRxfpV8!8$h-W7OK`qrH1f!vu*$((oo~}8Ju7;_ z@r=-PciB)ny(=~Jfq0k4tD}Bz&SjP94SH1^t_S%px1TAhC3e%&`gT*8UfI%&xxiu< zmpX6lOa%jV3Tzt7kL2n5o5n{XQ7so4o-3Lmmaz4vip^_js7FzL`|ToxqI_`!obOk5 z%?mfz=)|U%X6pz=;8Kp%Ymdt7N69{m!hbwrzC378e)*k7nGWwG&Ex=6)Z9*F9p1X1Rr*Cb_A8-m zt5d0B0?a?L)XeDCg&VKi)##7*gi`bZJF%Tnf;aO-{WztO0YAz z#ZnY7=&UD&msXvXnkT33uqCLxWcudUq=~y$^m0#Y-^~NwZ<`TCEUQtwj$w-H7T}OBR=RSy$qGHYK+xdWy)ybs)EC1B=7~pu5--HY;)^wFD%5iU7xz_7y9YSHSD|8K z-|h47?$`0vS+v|QMGQI;Wqx^_HFWiv^Mx%b9A~sWxn3ddfFDOn%>HVPX7!gWf#VJWZwjrZw+N9wQLF!T7G8;zt@o} zFP~#n;O0yp9M&qGEp$jlur*92-(4emo80JUl=v9F~_zI-{ps||RUjX#K%v#X@$ReG5 z|77~0r#RSNIKVvr184o;;nDG=kMIzfEVRX7?%?TvtRMZ!j|5uRStQ0cc`s;R^(n!~ z|H8IU7?+3o@6Hx-*-wWYJfHE_-V1!L*XALCPY)(|w6$+=o7_3Vw5m;*QpFf2zojAA z$rt8l=o{m)P6qVg+FKfTMfx*Po7Nn@ehe@d00p66->7a<`i!@^J#1+`6VM>^b426kzDNBk@FW{Xg_5N;v)U)^?ce!u1ug1sisVsR9=f zM;frrj3yqD>R}hLbeY zOV5+M#sjye5I4XkHUt z>79S2fj8r2`0lI#=Wd&V&~##6QSD;to87hfQRg*#e!EYLHG4MWtDGC>V#tS_{g-wy zceSLvSxd0$=i`rbTo4>J0Ps<@(H|l!R$@j8q|UoF`L*o?Iyn~0S@vR-TB%XpjM=~Z z9M&22%a`*)!SDh4>HG!KTn_Tu#q3l>xbBaLxG0~&9Q`Lh%1UBZfm5vG?ZB@ZhAu z1lZ{6moAT}@LhIp_#_?U*w=x^>UqMTgPiRN9{Wd^gy2%QUf3o3@cO-WCC5dkCe!47@h8&KJOWoBCT7ETty%E7L3c^97Cq z?jwI8R79yP=C%+dCvm})$l9)6{%jDl7CdQmR4g!mn^8t+}<4N>^>*T0Hg2g1Ibn0n%_b9%}0fg zkHEJE(%6!*-K6xjB_$=p2BtC2XY-e~y+ry@F z9Mh=UcRC1?7G7gm!hAN_n_=;==%U0{$O~@8s*0kV{OtI$eWL}E?+@K59>8}P#_ZCB zU3yo0Ldjot74A+o#BjFR7Ybhe@!NZ#OeW#j=T2I~lVBTFx-N2uWsLD@wsYm@hPP0~ zb}=*+x87-9-2UFuq0M~OlAf3+|MQChR8Fy{veXGCnj~Ct`DrY?&^O1RA@#ugaDD!5 z=9Wrd>@1(NFUpGo$EQbYG=b22fL-8jAzG99LJUvo!tbkPALK;hkLer#w$E~o>(UBU zcNuFemz((muUXs0(h1+f`AlcK%&Vqaur=1iiN4pYpEUnzs>F30_xx4#F~(7Q8@wE_ zAJ&Q^=GU4#q-eEht-{$vC`4GBxS(00$uoI2K_w8|a4GoW#Z?e(>4A_+IJC3VVMD{O z?}koV#(kkpVL}nt2h3Cx*ZXhS4|c8c&|Et)i|_1zZH$Kt;OSmp6d}fO6MNRnQ7o-$ zoruqN*p$+fyXR(k@d!wvDD^bU4t~uq&DaR`RT^sysE|{Bp~QJc@vNm?7j3A{%+=B& z%Qk%Oq+27d{bm*^PLBk`Ej9rnA;NPvECbXkQyybK-|yEg0-{X>klFeG?mFLGipzsYetucSy4-TJ68qkSlmM_XE z`doGhAgjO;^-$b;-G6|0QDudW3M`G$2EUH3OZdj|Hi>;#&E$E}4Q5~zB|<2onvkcL z>zi%8+^4PZIUd4=aj61qL3Go{lS2FE;ifv;AL<7Mz5MSnU zmaz?#TWE61x0RatPNZcqb}&UZ?vSP2+`G{y`Z@e^FJ}?UxcSr12|R6hpFDR{Rs0w- zw91!Xk+K(v-?Doks?;1+ywtqmN56R@E*I(EySBCMoyljTQ#-DPE+`-P&_Tsr0UK)`M9!?3s9yslW#mcRotk*eZb2dso zSb(*L_5;bQy9PRX8k_>1h9-{9l@K^ydwhoy446vt@(hpm zo*DM*9}5M#o!;`X2u*fgRSGs$`JMGV`;EqrP(`j&*^vs;TPwlP(;}8aAL9>=o^Ux2 zEialzL5=e7kP^$|o+znaj)ycy!{@#drQwg}hg|f%8=-!;-$mAK@~ibJ;+E7iIeRGH z&>j){exgp8Q{6=b$-hZMwe8C@c}0>BR$*NcQPW832+11`yxdU+J9SJJEvj9k&H`p= zz~cnxYFGH;`bHT1rD66SSkZA#K7;I6hJqTtjOy z2Jc5lXX=zD7fP9vESetrnVfXqP-j)#(qJsGq3~YtM5*vIOJc+1t-jCyxw zz$A8EjVCUVw+N5-=$$ZdeL5dWB0unTv1r<++Cx$Lspmpt0i2%3dQc z(FUZ`h;s({N|RT-yxoRick#x{Ikac6+le)iisTs&UA5GF%tS&N2lJ1j6L9E6AA73JwEDg@Otbb;fdyntsShPC(|@#ihU9d}SKDJ{A$xh|`3_EzTvr zLk?@}(ot>Li;IyzopjT?^e%DvVcw3wOJ~s-W%hyA(F^^u>zge1<0(#t;w!aY5~imY zmC3$!G}I<_z)PUt+ag+F0&#yDarJKW{M_`UrJ|;qr2bAVu6%_tJ4_Z;vcz=Z!SN>6 zx@VjVOHR_1EBE_A2$*Yqq$=<*0*}?|TCTh~Ub#EAtZ2KKxLWxX;nB)l&_A8}bhbsj z`%4}Zo`~*dD>L^k8vTuBW!BG_zdyHe!U`T7w87aX%lN%pFS!4BTebQ%R6mh!Y83HX z*?E4m0;{EF^Mc-+cwX^!yfWSunOGa!jV!YJX2DLQJ5?>X6o!v2hCX~tjgV7~WRaD2 ze8xy8{yE<2;dMS6f47ru`YG5fMo*tyNlhh%Aw5A&uPEhEl2HEhk;%r2Ebjcd)qy9s zGvZ7oB8>tcH1v0R_{UIN-U!zmck05|E89+3TB}!XR!xn_zIF@GNcetYH9ZfODNvTb ztDf*qY_o?)4maUk?#FU$niaQ?+^GQJ>*5EtE1}cFEi@Lba5hXN&YXAxUEOc{#PwW1 zw#LW`hyKVZB{G_V`f!g9V}mDe5$pGTiyvt`_l;B$6?%8<7+zB7Cj|$~KMA}<`w&j; zV+Dv!*~LkkNM4?guMHOB1;p2-O80YWe_*J$Oj>+gTMkbB5gBio9HcA}-UE4ZU=v@j zU4ww-=OmbcjybY31FHi?gv419PteZHh}+b-D?K0;;udpfmEv`eRLD7`*fW%^brYR~ zdB4nG(dUKjN2I`LucL-P{-(3F*Y&73sdq!X*`j`|Bu69nmYAQuW7JDcSu#sr(lkv< zm=;Cpm3rYkFJX!3|k*Fl8>YGvJA`r>OQGmqAuM_gwet@8uHdX4GBd89o(8cQpi50- zl`@pb2H6oX+!3>8B+P~Nw2wJsGd#n&8%wm#4n^5Z=M{rzJL*=fP(Wwixkf2A!R{G3 z<}&cqJ|yufDfl8}QfHW;bl{tmfWV45F>|Dt{%21F-tCShwIt_}DPE4*yIHo_M*QS^ zhHh(fL}X4cwPlEo=6OWbu;xgj#tb$W)1Vbj36*~hyyWqN`my7OtJ9cr6+ajG{f@>s zihuxMG;nQ<%L@U3pBk=ipE%A;u=MZ<#d0y+4z zBDF2qMX8o+O^ii;MJeGzDd(uDT0aKW^FIsR)hNc+Qff2b$}Zt_`*(_^MM7+jc8OFS zQ#@5+vd`#@6R4xVUVBkvnl~9{OcH(-IqN6h%t@T-W~AG~s#V+dR=wIt_u{Ic%sCA{ zJ?93=k$V0LF7YE#9>qBC^kfWwECM_=q{$CrtlB7WkJ`#J>DE?X84RM?Y2K*${72)xGAm$Ww2xj;1=&z1k0W{JP zc(!~3Uygmkw5#nJz|L&ESVh`~vzCH<2)=d9?SZ`(fq%W)*L-01f{I@1MxS9K$@keZ z-U8a|5bikDl|~z+DgZExhkI>C!riKs91aqUw@1S`$|!(ugv=xqDhubB3Og%QEFS)( zpDN;~wi1s!c(y%YsMtuEopC?lf3$V42M~0Uim#j+KnACr8Y$IFRo;C1;?9UEw^EuH zUPpq3n94eD0EEcHNsyIK6on)PSl*Y2M(coJZvv^M7K;BPw3O!PFaR!kvK%3%xbmWp z;Fi6P7K@kGtt~%}>sM~sG!(Ls{kt4N_=|AiF;w=d+M_EX3U$p2UA0fdR)6?g?!?lk>g-D^POc)L0Bo; zF&dA1>opwRhPeJF57h)N(wcf@P}=9>bj#Bl@#UU1wX!Tpb4 zLDc|4gqY}K##{4F*U{I2Ql2OQs9pH0wI`h%#p+N6!`Z)Tciisei2lF&6{LqhSGvaR zZJjp)+>$pEXO@Y%izKu!ihmz#3L)qiVs23O%_B7=;`%%D2k9`=I|Kx=ib5{2XO|;X zAD2(b*=^Z(|Jx)HCaTdPrK(7m35y_($V+h27q;(z zkdUuGb1z%(Jf>Az$4QMH+}{Y;GG2` z-MRN~WM3V!qEB6To6+&e&)rFgpuK{UU`saliMI0_6#Q5QuO#(-P27v61J~d22{18c zRd%V{B_Z}JgV=)9EGykhBu z7)mX6ZF+L8EBkH|C8QGitG(#1jmEtj_TvFPRGCrRw|*$tR_;}kbeWl~kC2h{QN2C# zt59h8y3b>?y|9i>2`@s-)q`EZCPlOQtwySwLd$T-c?gar}83$8xfbS4bbdDsrb6# zEJ2h^=)yWa2%rMq{q4yT32AF+Lv&B}oX@P${Vf?Lx-wZ<-6}(v8P{FG?b&7@Y?~2k z`9l|0ormk!^Q}kE5Luj@N9GW<99a3tea;L44VS}3_}pTtetHF=4Frq<`~k zttZ#{8x2BVc}#C6%}DX2YTRg0-~TT{4JD8#3U#Lc+oa=Y)@4q4E)a8GIwWWvudcd|tQ;x{|5wbD>{lQ}HRz z#u0npW{%RyrF~((tL45yZ%<(w>6*%aPkG>RqF5LL2hCZYlkcNR`bY1UO@udwENwiv z7pU4)8mATbBkCqJfEgrOAVt0HuJoBQ9`NX(84p@TvDPY55gYo~0H9Ya`HqdaR;&Us ztLO|ki1|a6o_{StXTSTm#Y48T)$iQHQ-n>g1MA+NT5Xben6%l5Q51E%AW*ZBLic1^WkqA$TNhT{;vA*mvCjfb71-niQ1iS9@^~hJ?U4xc~c<$ z>^+=z{>u!Iif7pqpIUip1^7B*evqy?-B64LtxiwBRY+s~zT}mzVX{1&^laR?Tiv-VYf&8{)!hefzj z13ss-7w_@d&kZ?JEHU2Uax*E4(O6{?+SL?fNG?YeKYA3MmuZ;2X%0Y*)Ims1xv#5| zFs+e0bwL-&-4tb-O`GRK_EHQaHxJI#6jf7tO5#TznVt8i{m*rIbbp0U&;~^7o!!n% z&~Dh7r)rwViyZTt=)|%(w=@h1)yB){Rk7Urigc8zur>L!y;8Scws&lJZMoq!+}-O~ zGxo6o?zEmV_;KOFu}7!$$iq+?qwh{d%&zM5c6oe=(=%INXk-}+kw!m#B+u%eX`)3LmeN{1<<(bwe>UA07H|=B38Zq^wUH8OZXMXpioC6=&cdQL^vNrlJqG#S z8fikXJEpN) z+k)E~fE~fpC=Ra_u~>Em8B-4?8ciNH0nwMI;bYw^)4FC4OVHs4=#c&24zV=hBE(=0 zyy6#6zAS(Zt-w;10)bSmb>+ow4f(WkDAWr8~5#?G?%;)Ysp;*7+ zl^c9ZUik*LI#E7MEstcIE09044WzdRr1%&+nm<>pEw`q;@w#&PpFP1s#cSdTRpZ|~ zBffS1-kC&9d@Eox<7J({Pe)nn+s8>-pZ^6ITxgnqstVLHVXFf<@^a*P*KZi!W^60b zX3p^EG{8ZFB80#2%VVS)iwgG<28ipG0?fJG&;1|0a3{g=&&YX~f+-$Efk;VwES%C3 zgR_{CN&{AeFmk1IZFqEy^PuVgkcgjs(6b}fGxTfiQ9SHig_*rw^BH!n)-Dffmy0Rn zzH_luhBjHkOe8ff*Hh^H81HF0ug`p25SW8b2L@=h5;?-qkN z*ibxdE~8&85s`MzNX4asvt}ae8fTv9`8;ggyEOr&+L!-X(IUBc6J8FFgZvZi9yJst zBicX5#0O>SUM13Qo-K8^59ce%q?wYa*Amex+da3}Cm~53tSl4e`xTxNQ`;Uy3T22W zd(jkW)KL>pub{2E1HXw9oJ1M`!V2fCBY(CA{YViq5-upPzsFv+#B`0*W$d=ywakgJ z9nPMxm6n)r+3XG-uN(Aho>Dzno*1*=-wzYBlp>x#S2L)lwf|;xHDx?{=IexuA0!Vb z(F}?|z0h$BV$E)dBtf_$F={BhiEF7(gnIGo7HukOO-oBOCS*mX6MKg&g57#OiO;$J zg?|t)`l-j&{^w6-xWazsn&9NX9_=lzG$OFcgS>Y6A)|2;_0pQSCxt}*_&q)+0uM}p zZ4O4$hH*qx-P99*w1iR;-9tsq?Gl7bQqgeBp-XBT^KK57CgNcaU|nTf^O+qUs_~^j z6PkyeNC~`9QlV-`HiGMWyWR+|st3X2Vd7m_4KELUzYB2eTDxjHm<>De;(H6iNvY@~ zHnpZVU4IsG#vumXFAOdtGqnhjKeun5AS>Y(L`F0a`+F_{3k*ohV7?l2u0lb+#}x@lf+`(BDFSyg&*Z(uGJ!S#e#1in`zdIFfh z3kIr|7rV&u7nZn^isJRin0_N+f14lpO2N%&tizQ{$7tj@Z2j3TRFvuN=r6Z4Ovo^0 z!;X9acZ&S}rLEpe?g#P5ufT!>DcsCG@7YD{KJuYKz2D zv`0E9{;Q=Q=>S&KViBvTuOA>4xRp~VwSNW#f8cJswjMsbpVYVB%CqWQPMw2TuZbo) zbvS_ToI*d{k{+;!v-jBGU7+4ho=oQ%tcggjT~2)V=vttmm2EjErzPG}4zHz?)EzVY zr-I1NKI=VG*YyLdxLy7lY)d95c*>Clg1c{IK}-+%aF8ySPl7>#SxaU+R1-vcyLvCgCU{fL@Eb z{k;M{_F+X|;QZEFaXh~x)1Z0BN(PRK6`l(f27up684l1yGs3LK^zJ{_{1xK&mtVy> zIzb83c{B3N2>ArFe^*F&`%%Xz<$_8KL~i}r7szVYzf+UtXxxzDIb!A%qDGnugcE;55PyQ_Y$ZnXfyliU);O^@bz@IO_Z-d zPXR&6ILFIQLrMZL!|7mzktgAH)L_fh(`FSyJC2SOe28>{wig2_mWp_u!A-m1dYCTe zVdS245E&-f&s>&hl>s?Z_nY5KmDq=lH1y^|!+EdA!Cr0z8RC@BvXD$5S*0DYF{G^N3{i3Rvh}0MCA9(zJV`IMj|k& zqfqfrjjJk?^jMaH1HaBsgO#}GFr6OwBy~8CY;1+ALs4Z$+O2(b+|`Q*S_uz{*$abd z5WWLEcp@6NBZ@chk#gzg);8w7in9WPjV%fzGPp>bu%iH&C1Mp1?aywI<>hiIlZpwb zBvd(x_BTQL8yUSAcr=J_C6H) zm!smV))qlb>IM;hXoC}C)dOX<8WvMz6nl>-a7*G%C* z#@0d=`_kN$X$M&>jNB7VMFeA;ia^m($7Ru28&AAhp7O{nDpM00KlL~K;eob7U42r1 zR-TC2sAjmato4!#)3c}5(jc+$)_^gKA`t;YA;f}Ta8u{r(7Iw={a|dIWfDW6fNSR} z-~I!u*hd8kr&*f7bQsZw^b%U#xUpXBAj8OgvDeg{*6F|*zOHRI?xE^zu5TKdhjtDl zL&qKNtRp+gtk#i@(nz@)R?i0tuDo5G9QS=!y5eCDtxJ7+UN;RLP0{wvBJh3!SO7j9!B=(;*`Od2R1Z)U*(jU>tAUj>~LFvW(poE8_0TwMbhjD_q z(o#hWD8X@5$H>;}M0GFUT;dK4bQDxlYuL-=ozC&iE9@f$&RM84x6by?{(y7gcsy*m zD@W?aT2iALjA8LBf5m>rF>7h$UeOj@;h0qQ`1rPF8_apIXj! zt65W5EF_4(K|uHQ;$uvaYyL=;VaQ@f(UQomp75zT$xdc6SS}>#du`U zj$+4gA_EY;^nF+$q*&Q24K!$K?lY{@8h%>eu}p+4k?lcyT)`X6DEz?BXXxnaA_ual zk|m^;>}N4uJ!G<8?!2A;womep`hPkKT2$z6Xt=U(qrc65c(H@{P2f4TiJ3i!+g&2m z&mO|(TdQQ_3{)_wa87Uio2;thz+r43a0Gn;p}#JgPGyQv@&(l0!WIQ7^t4yH*?;0l zo+2px;=P|EbHMLvMLmap8daAQQxv&BJW6oZ#NAeI8}L67p-&kyE|O8v&!wpyu<06U zc_yyBUkrcF+!`~l+kKgrO!P^8F)ep7n?4@cSTSclr=A} zSKR=*avC)O1Oehzk+li5bO>#D;U5LkyEHe(7dD3)=Yl5b-L}Z-l zdTT;E|M?oJ56J6>=I}n9JVOd-LQ7C3a|b#Hr)$H!w3H%0Fi5-o3$SX(%>5lhej$Nf zsNTRrwbbDdC{DW031&M=IT2$14egF|4$%1oxfLK9At3x?R|oU}QwUlB^cK7de-&|7 z*jIM9%z8VYvvsz0U;C~qyhr9`>KYdW}q9ivE-|EXrtv(>vl`MdFPpe~1#L>XxbD8f-$c`+q&>twOug)%Byh@dO{ zZ2)rgw$OOm61}T+laC2@E7*(Ego;NNGAd~U&#GTEGB@sw7ezyM+AZ}Ne@-MrcE~?T zn8weY2Y9;Ie&FptTp&$h8EzAQcrtrvrOFRMj%(8}4k>?_zQ9EOn2^7xcqKla2x4iD z%DdxWYF8lqLd9k_@hY_!fI!%e(+J{se^=0I29LyI-|APqfYg}b!p8i1UjPXi0an~* zE+_)A|ESBrHwp#mz!2Hr zLUiv!VI*@&kx+}TVK#QNI=Y~K<>e*bI|jXagmu$6hWsI$m4zN>v6X4jX$_5QnS zjt^$6C2LhPGhl(uQ8a-KrbVx+?uH@;B}E7nv7V3LEh0&{Tuj+`add^%e6dP1hppDa zQ|;}V2X)UCFS-6WV>sqywC)`n#AkXRA^)wFw#jNOSxDiLVp=_Q#s7@*|Q^0&=e2@m_M zWw11eMkKG0DK%wZ29+x$8vfX;W)?$u+2;PPQx;hfNnPMTo~DQ!C%dy?a}O1THmKf} zLxZ07Nm!N!OJRQSQ76t*XG)Li?_q?9fYXBqooXn&1A;gSLji4Lbgnix=9C+Rr1>8K zKpz~X6Hgi56QQ3Z&re%JW)3_|D(adGn#^*7k7m%JM zuxh2)a?s0aE~EADR}~up2&V#a-p|WM0f4W0E>yziARnW<`*)d;p-M3l1_Hf$t}rPh zv0iV@_BxJQL;E6s=B4LIecjktbSCG%K002<|_MWo#jA~I#ZCARWl|#qt5Yn^$d5Cv+ zjgmc$%aZUkXN+YK|D>-wJutx~jV_fX_+e!Auuni>4lG71xeX6ol0OwNv~q(DWGAgS zkwH1_se@Rn>;) z8v|Gzm+i)n9qH*Ybo;vBlR4Gct1T6PDBTq_oi`&ep=OT12$!i+!-)XLu&aStI2;45F@^=)5T&Ys9F>wYqkeAIJ6u4E*?gIJ)Y=bO{vUhv<7V43{YB#Lo6I3(cBs46|&`EY?dMrnhNtLXHIf%Dgx z5x$}5PWlm~uOoB)cecE784{R+Qy9}{lK%BI!wDdEJ;#5$w zWBp(L<6^Hp0=0JhB7V$Xy&FF;oL@jr`$5t&SL)?|PT|mVe6X#}k8eCC%(ex-jZE?i z%};XEqMhd`0@S7un5yFu~BhyS!XDxNr^#UPV*1c3giy&!~}pdKMVb5yGF2R4cO)X~X= zz2Iio7vBf{FGp*N&lnJTOsO<)Qy6{$`R6IT?}n!(K7db$`!GdczSb9TOIUM~FWt;! zhR*$O{SRdcD0y}QWhNV3A3olU*l^ObvDz+PUfs{VX8{*6c1Wz8{<3Q0Nd+*@a+JOB z%?py7w$Tf;9gmJ_ISAtUU+%Ks`KZi_7fYn3N)mt>z(}%pHQ}Y>cGdYV?Y7bcbU(g9 zf$%@=&u!q%;}NubE5_2$dBpWrstTCY!a#@%@<>Pb10iNV)DtQJ7_{hl-Ata73LOqH8CbI{Yn-C4 zLI8?U%>0{d(U4M;XNh&NVN+vS50j>AnbN#blNb8&PlX29A>=)WW&G{l;qoSj_?q5L zk)rSML&J?_|4#QB#J$S4@pbwKFT*UEVJ*4T{~5*5Qn2}=IAuesy6E4nJO<0BZt&J8QGD?y-M=ZJJ=7Bv+ObMhMxFLOV2;6I=CRzlackQ9@wx5pDT ziRe$Vl2`ABu z%aR2L7Ubl^ki=XN%C*EV4U<&A4+vI3t&**)HJX5O&Ov)uSCo*I#gKvO8_|OVn8=Mp zV6Unhetq#d%~QH#_ox(u;@+x?tDvXe3#1nT=dS* z-Bd2mP}wdO6(RULsdwdH5!*K}#_))pWP(FRq*XnzUhU8OU=q1<2e*%WUQ zHO7zn1b4foQpLkWrlBHJQ5a4<;BcXv0luHs_H$?&I9{;) z+0d2t3Wevj@vs87J%)wBa#jEVj4#mSvXZ6P=nvgtjHx4- z4|$XkBxT^eEuMLjBeQJNHOxNv+O=m_?qKZ9UFjgRt(4PFUP-gBQ5z~go9+2n!#`}c zy|HGKr<`mw_yyhhJ{B;OdSEgq9T&^j&z#ogerx+Fu92Mge1*>&k@N_@{;1UOA`P!k zF`J8F%+Am?sSe}pTb*`Z$*>)>toHt$tm%>I%}S$JR4ieJOQWGvcQ7`|oI4&#d{tev zV}GKjSJ!(poGEG^A2~$x?lspua*QGpaj^~)tkFrn_+V2ecT&lyqNH!RdoW$!5$(uIAq( z%&yjO%{PTn>P%uZ>jb;gdn)2D=DG1$rFl-Pv^#F99!9C3T$i}XZc`m?T9v>i1b5m& zyrf<5r9Hqka!+%k9#6TSU*+t2^`2?7MpV<>;?Dt((sMN1M(#s29S8j>;_~RC?=ejr zy0I?XtwWmEJwV+jxZtHk>>-s#D&V~3{I((B&6S_#zuubdeXFlx+icbuSkM4sVbR(? zy%Zz`t`2fJ_?bKdH+Wv4D9@w64be962g+xq2;mMOi0z@W05cu*9%ec+ZT@!G*m+z1 zhyITwmT%&KDfT1k$&xs<&=h=6`Zbitg9<-WsQ7_fWh;+$e!EN!%&_0z6CoIKy0Q1& zD<-#t`?mJ$e!i>>o+#Cllj~u%Q5N1?;v|L6vJ7bdv&hck1EQEwTaKp9Iovpw71MF7 zLwut00!Jy;3RvKBc%q#UA-K70ksyoyw!KV}40H6=Y-Cwl5{UI~??iV&_ulyNsSFk! zjec==Z=p(_-MD9UIC?qZ+E(KP?7Hjf>7BHQQFtid_!~r$0Tw&k%d|vKciM)7Dt~DN z_+vR*{HATz*r3vU0@r|=CVKr-`?PdI__g|!* zrcIWv#^O_A5V_+dk@eluLn2Rf^*PI?A+&atTpjd+bMMkH+%Mau4iKO-Vumi3et*}27PrgsOk zwGx&>;C_jit*mHMvVT+Z1@dmo#%25EyqQWExF%ltMT$Q@w(-~Jb(6aOeg4A!&FNq^ z#lBc#0eS~XM^&Nyx-Zuod)ac@x&y;JWXH2%p|)f-P?0#Gu&7@@UYoZxB<{ar>OS4S zJQau?MbginTs$M=Yl?612r<+MY^%D$B~wt5KEABP=(ltM7L>?4ZEUOPG1xJmWai6h zqv$-iaNIPy!}hHA6Yaud(m_wDATAYjcT9JP}q;pH7QzpFx6IB!S7B8x{)@nxYWf7a0FC|c~Fp3EP5g2b6}N`F#eD61Y9@StzsROjs$7$dqk$7 z*sq^$MCIj&O1`!2uY1bbRyc#|CujU!)0fyip$j37bSePdLEr`uDl#@zT$^)Yenp1% zZ-s%2-ZXsI&*mTO`KGc#9V9{hU#lIDi*^4(%zI@$vkY#irpG@VA(oZlBHp;1uWU1t zq;q})C4J#~T`K47poE2}{zK3=Kn{C@HhU5%kqB*f#N-WMU&2muBv-$S&SDQs?0hpi zwgcQliOWt1r*DxqNnU^zt20YP-X!1f^QRpg#zQT*Zmp02|+h_3BMg{I9{cE4j_> z>Ei&@&VPI{IsRRLGK+SbXolbM^(did{phjm-NNk8 z-@oN6fMg8bwhPUgprQ4iR1!b9h6+&tkUW&R0LSJDCYc2rCRmqpWFAg&iK=Gg zu^0r0JjmX#Ax#1RiW8K-pJD#{Yb%+20x0#vLt+2{0Lh1Iqbp{_Hb2yZoH;_h?{56+ zcRB~Lio!Uvb^ne#q~MbD$^9O&k7P`_k`}9nvM|lT#=sQ?u$Fza0WrPs(L^0Zdj9P8~C}*{z^7baz8zpllh`|E}Jv zQQEtOYqyC~*l|hLoEiT;6nnBUF8P&vC_P+o19-8${55qKmY5F$747mXAoa;I*X5m9 zDc~h%QJo44jm3ptI_JB*9BfgQ5Sb6o+`2cz!2JVorB`i85f}NY*T}v8@)Qfd%H^E^ zRjA~;@Ln)}powAMO9?B2mH~D3QK$wJ`d(NN{|anBOaDP=8{7vW*o^xA&FkX0#`fya zviYGNh*o#AbnEWPFFpSOzyD78*43KMlM$(37kGpvYm#sm&4at&;P0#DqABj#X_@Jn zl`@cC2z{hc=wv0tn{JEvCHOeiDI0*zlWS*zb&G*i=%(-1Dt5L;?zYR%9o&Pj??|qN zq#=Ow`)*a;ceC>D#*n#R{SHVjZif>v^9g4}OY@cHNmloZx|U*}=sdpJ-l8nJ3FM%i zZLR%o@^kXUYPEUmRds5cI3}Qf{y&U;bySq!*Drz&Ie?(lkRmFAfC58|FDAl+Tk4Z_eM9Yc5CGx+_*y6e90y8pOzA zzKt4a*gfr>3w73;t=3_BgcrmJ6GfsN)~Z)x2z| zk0>F7Sx7A&7+V7v=*GU0vHb|*>>|N_G7~d?*IR-tzudT&C$Y}ZsLigHWEEvMMVIly z_41hbyUd(PmmM9L)Fp&mY++?Vxi|{nC9d(%uWyp(*I1hyla&(uX%-EAv=;f?*MaX- zbDWn=8J9_sz?LqBO|M`8aE&u)CXJ~<4u+XYY{BOe-k58kvGj7~AYX?%4n4?nT$UWu zdII`R@RFenZo7T6!D8+m4@#G^nm<$ToS$rraV{?{h4>w>(K(FICe+wX;z4re~}x;WUy<}gI=_!qUX@{r-Po1(`{ z%!LX>;uLT`zOmIZWiS~G^ndhZW`nz>-)*G8WC6Ss0dVu}!~RpThTYbJxX=Z*xhB#K zlHGQHnAw*m>bcY9Ro2qV`6uqi7E3e-0EkJb7BMLm-s;15DoIIcM3dbj*{>}fx0dDL z2k{!*BlGMKJ8J>s3yP+}UHpfiHRv!m6IAjg#Txh+K7mURBjXg`(X5h8b(!9=B-Tnd z-i}l8eNX7xNf#Mb8*s(2zD!cgX+rB|DdpuOp~qwB$QPNiR0EroB$vYA*#uW&bF$EV z^8FyUA)yz#*=!O3lC7WiSeuKXN4)hXk6oV6*Tf6-93%tvX+o1#10kcy9(bTLAiszu z&Hkc_W~<%t%29;zQqxC3d-)b6*y_qIg5py%XSSQseu;L%2U5@2erwTI6{f}KAxG4I zo*x`74O-v^X+4H9@`0;)jA8!vD)vP}ubqs{&4-dgnr^L)LMj7nv(HH`8JuX$tbl

6hAoU`BN}!{m0YWp->k!k?#OjENFWm28hg5#P?8Ab%E<)xlml}mf4(^!; zbD9q(8#N?XfUQ|S^|oyKo&#QgSC9jQTg6ev4>c>|a&mz`ucqfd$)@}PZ#6l#u(2sz zB$ZAkcrJVy`WpJik}8hC7=^JAT<`Zcvwmoif%~hhW?Vju##)AL%WtX1i4zqcMoGhp z0(_{|enBRIGKl{xR~U z9oUE3Xd-@fcY{H?M+qCli)!EKE2_g*e9~l}xK>+-^uFy23d$BOGX-Auwk%hjb-cWF z!f9+_%w#b-1SVVDP19l(_Z4w3%XetZp$9jD<^DCvW9=@2f)0lX==Z9{_#8siCU|%8-3S+)qp; zDOvA?y5*le?kQSy?)%GUV3~m_BLT9*qS+$H1|UHIH`jYQbwX@jWI7sI9prgyB%##8 zke56JmRajp4pMO67&W%91nvui`@lDa?YO|m3jiUnR%(zxhCj64_X1fEV3hyf-olJd zX_^~7NpN?VPx~}1+C2wyze|P| zUz5N8A(pRy(~UiorAR|;r<8d8Z?&j2jcD#gf1!s%q( z^x4gN;f2cNX>}Mw0@&4G?hCk}$M6HgUS~+`6*4Z|pEmcLXMP#lSNr_sx&Xta_W(>0 zk-g%oHS^H=x|F9yr$zXV;d#u^Mo!i4sMsm>e?%bP{2-`=`@_B=Bb}G;u|Vt5&JxMN zsnNm9QrcsI|7<;O>0K6}6x|mrDRa)3E7>^p2mebqvA*BbQzuqd-&4{U;}j?jA3Hy3 z^but!JukiPaS-=AmJ4vb=~tNkthik4&N`fDx6amZd~HETo+q~ICinpiHCw}7tJHaq zIi7I-ZD>RS+cwH@W`?lV&0tvQqwtX5#r#F3hwhHu{Jbf{a`0AX)8bVmS4@D%Ki5)u(k9nfsCC z-p1KJ=dteT=B!63xkPBoKDa^O3!w_3HQy(+h+3r?WmN9d{!;pl1+!}tV&j*UUk;Oc zA;~Yd#4d&}BAz}CZHX}s>AMr#x6j?xRrh(wMtk!MQ`w_FsSnR(z@f(2@R#@YOu72m z2r2oy?U*^VH{?!U@Q;RgjZU{3xltUCN7%5tZj^dhP5s_czn44ea;*GOcwgmkyEu3p zN+e8qTqJ18E%O6 zrJ>B?E?d-{w+7c#_*-u-Z{waBOng|Fay5HR#;uy*S3j^d&FXGxhL>}ze(z4%BPWj3 zP%>bi!9ex!Vj80>_0@u_YjqaKqI*{uaf-zUtb`PYi8Rk;G|$7YbK6}T!)>CrrOU@2 zkZjN}O>%No2aUt_1qv<}9Z$p=TCI;5pWkiL-W@qvC`mp0TKF>WV)f$OBP^TIr^xRcNV3#>2};U7o|78_?=}U|A#rRza{%X^iA(LLDpz3_UV!sZ5(z8#wl?)f6eat@ zn$sMSJG=Dk=K`q3<89lk{+xM-``4=La}7~)d>6GNJW^(v0lNe>3Hak>&tQzp0^`3- z89Z|5T8uX)BL#5sOa>Uy5s0Z}zHkUU=$s^8l<|X$Rx#7`m@zZUL);#?)Fp*I7Yo0- zOl?0^)d(K=0Ef}HG_=3=boJu;BR#_sIu9*(#@wnitA4)9)Z?GX7#Gv!64M3m$B{91Kb`9KN-?~484HbY#0-j<;<_0<(02q2 z)VH_Et806%o3+-|KtJ;PMB$7gI0p%EzpM+bFsvP=(s73VjJBP6k%Tbyu}?T`e;@t) zRp%U0{tqGHscuDBr`jq)L39<<0s!19K;f>pk0Q9y1GT3X1N3d=MNFxqo9nsfPW>w# z85|z(;ruj|(McaWV~N7zOmX$Oe}2=DOp>*ogt)Esl9(y#-7y*{jo_s#hFVR@+rNw_ zmMWKs$d=>Qp=Op(0jQz9a`Xv<7qCVmR6lUFMjM#i{A1#Cd-a&?$Yp&` ztb+Xbz~ds)<7oIII z_^s5{4k722fb8#_ku3$+T&|7q?F_{;Nbc90PZa}UgDDS!dJX+%!`9$lU~`pF{!r5d zd*qwR_!1RsE9n6`xv)8{i5OL{s-cNe@h)+4w})5I?b*53FZj_r_R05}Uvy?$2Ay31 z`Biuef16yMe4P#jnD~=RN3ah^aA>_1!%DJ^2cH_Bn3(fW-js^>9$ zR9;|4Jeu|H(FtF!$E~BHk6wCX`_1Uc4ub9MxpnbTh3^)b`AcMKup&cmgZ%>a0*@9o z)0GXWV>{lrcS==T>mTOmOpa>S(?Xpjk6J69RIEI9Et!yI1E8?|K1qg4R`t^DNIf%UXmgm&F@FB;kxEVI)xx0kwft@C7W><*B$NI! zuWgvIj%)0_IbJRw=Iz7ncz;Uwy4gqtRkhO#w*7>fTr(i72wL*0*4-~G5a$gj`ut}l z1=?`j?D4L0LjzOWr7;5_Il{xDd_Lk}%0n#WwIv42Ls|{YEK4T=%^sw#WzpOscWf5f zi#{CYDjQP}m{bn0Ln;+LJ?F)*KGP&-%fprFSB|clvbtA9-z=GF+d^B+bL=!>RtheC zMtbZo0!PO3fczU^RwVk1XI6e^mAX=FGY3ud$~o{$=eoikf3ue{ zH^Zw5h+hSLk)UIsIoHC(vT8`1QI%ZhYI73w{>`8q;-DCU30&C0Vi&0ysnVKj<#sEE znIyG0J6uW$UN4&^b{ZcaU(@`VlA_xg^{}EKdqHaI88=TxByPoZm66@Jkd^`~C#92D ztpxER-}L=J>bI=cisJ+>ykI17(+n@H@^1atn z3yWO#Xkn)UC8eeG&iw#4ihY~|SoBT3lWmR_`jXq1p!xAox{`DHFFNdd@8MDL?dj)C zO3Z0qnP%@@g0=SB|F1^xI@<2^%+nPBMV`YLt40$g?zU+i5d63rMBlH2XJ74`GdmKh z8u>}KRd8S7$1MmkOWxGP8@DJ9ipyjur1*RI{>`8ja+&rpnkuqM$MNF0UmSQ?b&|Oy9~`7t%Yg=Gm!tit z41=}7b0Z(sK>0mH*86Ieogw1NkolmRVb!+8N;DU(!-nO7=Z}J*BV~t94Z7tnY{ITN+Jc3F{ejLHd8debi*5HdN+hmu(f*HW zV36~!#f2z&A^g4dJueaQ;)Mgyycw>GG_e8*IYz9N74l7pF=B9uz+<2(1gM_eng?*V|=5(bsd+#AkU9p^Cd))wj+R zc6*txk#l4Ot}Xyb zs}Y~kUOsDLq|Vm5w@B0W323F+xgS+kn=s1wBv~%W_LczJ8ck(}e<@=~ESOCxLoKY+ zEZTYHc#eqKkhd-R%Z1)RrB{Y^rRCnsDYhdklXUkEIy1+_%-NEQ^E`tD4CEIj?DN0c z5E?foP?5U5ALs$P=BxC!=i2NGS>jkm%}4btv>Fs)Yc<1yfkn|o@~7gR^_t>_E}OA| z-~taw0>c^sZ9g-~`ZnRWz}g|;^p6D|kDn7A^jQ3Mh6vbbx}Nd52~K^?n*3pL!Prtf zBX+h}TY%db>cR4h0q*3Yqejja64**n<9so@J#5JI4`vv}I^zYY5*D63nDFFg2bpo) z*htTD;%zCee}jFG&uzJ*La+5u4*v~rE1^E273JliOOQ(44j4_b;82~~2YFElsSk;@ zf2&hL%KV-KxtS@C&BST|=P89*UgYWC#4Ne&Zh+k6y1D;cIq4<(1Bb)-Vohjg6=a^k zySdlpV|eXL8^&UEa00&VuCUF~Da_+3%(X~d(Ziwi>KN|04df#DRfh=W$}vb;LZK!- z1V<;s4#ANJcD5BEfgMlKG*$qQy8^KEPaX@tToOWmKe(zC;AtZt@d3BC+1Vi~6k#op zK)T%*VTz|9HE3^_XtsD%l6aQ7r!_{a*Va`!!Mar0T8Qs3`23%5mtZBD5qx@~$7?vYT$##`;rB{MO4xB#_C>>h;+6Z{GY?arNn}Sq>bhLE;`3H%VWFRNtNC98-o6`M!i1z z@7|>=SdZTC%X&op3z>?Sff0Yzu8bxyj4I%-QT-b|Vo7lahgUmoo?7%lzN~(8xj5bc z;xNwT)@hChwGbDv$`e3h{?n$6MT$)vdlCq6<>up80mLpQ&AgAe1yI#=MHdp-qls^+ zflZ!!>`#ic|5zEl=wyhaw@S5|8>XJv=aLSdJ3lU2aFA5xVub7xcri>Gkv++K{P=1T z>3p&3e%0}8jdH0 z-YsMMMH+1qNYc_tsZu-vlue$AUg-LF1#P7_Qaa&AbV5mb$+Jnkyh7Ia|Mk1Ce;T=( zjuzNB`9VjG5#Jm)|I`SX!dJb`D++Ta3@EJa8zN$VrMmImmyddz9M0B>-M`SVcD)~g z1A#MMg>Q1Dj1SIysnsaRaZ(yN$6YXE5Ueio&`xuv%G5Zs?EK;V9X4OnHu1%!EO-8O zvo(7DQ^G0I-gKv2Y>ouZn0KXd;4vQZ@jb#(tGPc_Hv=qcYY8^Q{K8HIGENi6$B5>p zy<>(G)IF{sA0u#3o}}0?QkhRf@EYVm!_SmYl3kqcsRfSf>B-3x&$5DUh`2ylQrlDV zh4$wPpIIL?bFhaA8SgayI3A$naEqyNMY`>!2pQ7KqWdi{PxFG}G38xJ5)-Z5IIRm9 z&cf--$a4gr?Ffte<#@sRW@PeKdDa=jAvXQGqb0gIUAaFpiCd|rplC)e?}`@`f%62j za$Xami^)w%J{TfO5$8dw@=H;*+XpHZhl$d>U54%nK}ZqH?dtmA;_8?RQE1+kOUaX> zJhzp5=v=aTGQ$md2Xp&M=8qgCIfbub zB#e|&&ConSI8C$#P^{6OFD;z=g^T#J>$`ud3ZJX_dW99Ad|@Nxb)WsY$mzYjEAyW| z@)a39sZ zT3N@vcz^j^xdS2wAe*Em!w}q>RgGU??r%;M=4!pUDXl3L#GWe@J^DFk{OB9&ykR}$ zD%=zL!E|hfuak&+f>357{xxrDSx$0=l}%&(;y#`5=lLwOkflOIEm!#`K&X-3i zHaH72p144i1-3cA8D1I)OHj24oSyb^8tBVu2PHV3r6hDCLu(N@*swZ(EQ7;798;Yv z*Ga{i^N|V1#&-eP_N(zVDUr+Lo(~ptJb|LMhw@I?=Db~yBglZq9_lC!{T|bl(XJ6I zIsW~pLdyq=hs1*Y`E|!wtg-g9+GLpvgFIJ+uXGzVk5xFaU2B#R3s_6G?bos0aP}n% z%`Q#Kof-4m+WUSsinM}z=RF3c_SVaM7~QnK39}V${CV)Tk?5TvQhC6gZbjj+1Nayq z8!ngE2~UP>30*Q@U*PJPs~@G$vUZ+*NHhFluK~;wXs6?%T>lnP(;e-&(k`frZERyj z95~~=E6?7QPHC~c+>WKGplQg_GCR`QTe@M-j}&rtYC0vq6a!>Rb7@2tKD({Mnt!CP z_IlEg7|!_h6`J4rRV9sOJ9Cl{eUOv&9xg{}9?|$o))%#S56a8aMdU80+x&cFK^D zyf!nL-jGr@Dg3S3aDE@gHQb_2D$=`K4ejgw*!U26I1}~uyT-BErmk6leD$T@LXyTg zqkVwZ1GQBdfXX@rGF;gnOBaZajRTGR*#RBl8F$@pX5a z`=R0b_a7;&?D!c|hlkzNEu)$z!1;icZuWY|h3(mVTHUk)k4XOL%&L)MXmRcG5ncDk zIA3lsha)6*DJ-LkER{_N8_8ES)ylSjBLWVr5x6bcA>}uGe`a-9OWR|pzEZrHzyl_E zPsbUdiL~q=mplCPsz2E*e+H^c|8grUX2Hhe5ZIQDg*yQ-f2N-NB;e}x&KCSd4$I!P z|E#gH$Zorref9F~&^S%Dmll2Iu3PuMBQ1zv5V;@HPEJuJYvUiAOY4B?&k4YHsS4f{ z#BcS!6GTpV`Mj>ExcSu^==;a0-SGY&%;4p(=lcds+ZPdAm8#3$x88+be~g!QN8j#caH=1J z`PdiQ99d?S%j=H_FP^y8i>l$G4^(SngWlh6{3pcjfLaRs9bdGu}q$WO$L}PN8-QP^1Ui=At_%Gr{IT zKa(AlKa7`Mn+KduOiaAc&-uNqkuegdia#RSJ!QqCkPHvz@ zb%yI%Vdd7nJYp5}kcgXPi~r$1b#cM`_|3c-LStmuVfu~G-ce2p^M0c=TB=2i%GAr& zLcck>YC!bA-BR!^23c4nGFV+j-r)N>Eovx7*3#{XtOuVl$d=PsJo!PdaSb zhr{f;Kupj^l478n%#q4J8qggTWLUNrZyj}I^)uRJG*^O-z+)t217*2VOk!S9nLVb# z^4Sot_V*yKwEP}b0ndFAeat3eHLG`*fiBUC>@fXRW(jL0l|sc9ZqjeQc9U?vwLUB2 zRr~lZQ{+2M@WrNvP2;y;KS-fa(Z9pAe!*1hAYU6%jH*@3fi1(axc>;eyU4?RKdj4< z_?-;WeT0Jb6^H;gx8H5;>NEn?Zr6CHP!o=Q9pA-3--qKVHau~>*`GYu!*=nr?lvVx zogsNiDN5?)a*L`g$279q*=5~G>TTl(1D~J{!evV4;&K|~*KUz1O_lL2+`p;heR<}) zs1@Z;tM1TCdqnlVVv8zL4O4ydDtOE@t+)M0$tr5;^q0RTvktlJd{2ydmRRYM=7r4( zv5Y&A#*IsT1m0cjFuz23))rTi5at||9ie&Nj;6!kv^0JIQN-Je5 zD8Ck@!y>kc1HJ|Pir_Z|`Y-&;-!^xCGRJPYe_qzZLd1EOO3d9=S65dsO8n(@W9!zu zRR}y0sqJH=vmE_HBl4CPv{Vjt)&+xT>=j!Wu`v7gx*7Q$DTxMj3E{%>)PMP3o6lcb zt<2yuBA2b6;A38scws{eBf6id;esx%cxI{79V_r%MA^*DEV4&V6r+>`V(>wRa$%kG z51YC^T#b>nWG*zMx`}A;YSi>QXo`qq}g14xR`bN?+ z)oCvyiy^M`z*WgT^jK+jcITwHd|!$r$(fS=d;bTq=s< zfG?5a1sYWVNmQq9RSPYenCK|Gp?= z1)zusRzcYmF|Q-c6G1%YzzFA-EA@Vz$E1!z2+|_?G`z&m+ncX5KhMmyuIl{ei zbKej|iDho9sRsuZBr|xrRzqD_IE!+%!$Qgto9T(-GI!*^Pf$nm3`y11(cXJ4&n46X zD}}-lmjPdZw?uqutA)D}|4w%6{t3GK>WOWI4fw8aZ0O{r66U3UO?Z%VvIhVU0lkId zMZqxYL6QcAs>VL2N1ALU3IVyxe|EE^_!IO>c=)oJLJ<~>3#7z#{;_e=(g7?{lm7PP zJSlWV-1SM=Lf18T1Q9{XX~c#)EbVL<71A`zb>lG`5ooDBt&cL4_ylbZANIQX0U-g7 zO|bXK#i5(`p;V2y%$73@+rTre^smrbRgk@SEMplC%@3Nm>E?y)R^G_fQ&+CV%3lQX zm557<1(>x7z&f5Rj_`iz-@9{}yU z@8muD_{RUY4XS@^BbR39P>Hn$04OXZUW7Bc0q4pTO@QVIBNl8e*Y;CPAbE)rgVT1F zvR2wj>p8+_32+fF*hR>vwI+ps+#xd0;YdP|cngxq<`(F^(6v$SWANsbivae_=l;~;L_;;8W<%yq=>sVPy z#_zhHkX-CO7+Zdc4Z8}y?nXuw;R!8S30AMMY0fV@Kdy!~OfP(-G&gujcA=J9Q^x(< zxDv%kUu*TJ%X8ssem%Wh(ki@F%aFhLgMI;JQ12uW#vsW4zrb4nf8GCu-G*0S2gL4~ zkKiJIG+3->DZX0#{BCOEypHwke&d}3_4TUp3zziVKE7Mm6#3{ykJR#*;=e+xtYqYU z!L%K&6xVU(+!~p=Pb^_&t}G{>&`E)>{#`=!21o^K(%gy921C5VRW?6k`r6>|DD8oY zZ~kP_&!%{++se+j`nPhp9<;Ta%cH`opBJk)*yFa_asQO1mtG& zb=dd*M2ADq*0XxCxwX%O3Ms`PF!e7kss9rOtRX{e1}gUFc#8X-3Hd+^o(Yjxy#o$- zs$CQz@uyE_B0$;CNs0%PfU7t7H&2{Ep3+`?DVjAL121u4k36BcB=r66{vOn&>W5b(u~%PM z{06jF2CpjXBNP{~kmfsmJ*3;`kLWsz^)$Fq)8Wm8BO!?c8KaCdFM{SwxAN+vL)%hw zLuC;@)c9_H_JUn&M+fZnH+8kx5A0_{=Kt<1754w)5d2+RAmx-I{$Fh?vwXLRW=dl! z?zDZUmxxHO%wSLMs5W-+!k6wpzhX#hV-376aXZoHAt&W$6?ajIG^K|{Wx)~)C0*~1 z+JP%2j&oUQurTWt3u7&e!v}ld~_WjCRC`po#iM& z2)0M8KD2%AX{<`ZG$_V8#$`NV1;$(2J=w@!KdCxM z?wVJJ{nb}L^27&*m(`2e8h4SN&>v=!oVYF#jSF-ey!NY5A6d(Sdd!m<;5U@b2g;Q` z)HJ`=$DCO7g8`nO`aF5!7XN|0%G+5U+AOGPHf~FmNX5;ZqF!nw*K%;wscr@v4pJe` zWk=CvsZjagd}S_BLg#w&KSx6XBe?T3B9-Fp;4B=$T2$}@EeIF%$e&rz)(?|E&t5J$ zw)q5l5=u7`=ahq)Wa}YX#&>;GCIqen=mcM?Gb*N@p9R}#W*4OE`5F7hUa9N}C*&>+ zW3)WljXCLO6YKYvH5J-p%-^*O(GHqnlEVK2#lNE4(J$Iw@KU??PK0x%#q$dPC~qi!wD`4R)7)yMQat(2Xzshki$8w;L~ob3;pQ>j&96T^ zHV9&#ny16gtJjRK&t9Ogm@Y1S?(1;Xo>;drNpU0B$W>NB8<0HA3ki-o6Q;$u?qkO* zl9Mw~5XuPO@TcMZvsHoHf)1^~JGiQ|&jbIYDKoq@qE_#Z)bW`eKR}NumvX9?g*+mF zCvqVg0lT312E%%Q6pQMOC54HlKi{~(Y?P;O>5UmZA584K6Yx|y?`NiYlXl%}bHV&% zS_gA1EEQ7er{ZrcK(>sKc$X(`HeKgca5ie1n}z}9YAD9cyn{m*P{YKW0v2MoK@rdn z!{6VGX;h0-S_0`wOuhE~fje(nmHR2NcKxvlXj>T`MD_5An_HoeKU{$MR=RxLeHie} z1NhuVF%4u55QtPKu{A~7wIjs)XZu%S3LM&v<$Pij_PYg%4Zg{d8?ja|gx#&q^gkhA zn(z5jvuQc;c6;+jxA=Qh?TI@f|Ff8AK%+sJmvE4+*zot?a&j-w9#E{zf!w)7iP&pY zYiDNtT#9#(UVE+S9^bRo^K&|y!GL8z%?ThC-jE8DN|CH-KA0Ic)}5hMvAQf)iqsO){es zGf$;iW%(^Z9xR1u1Tq}iKCJ}D$pE;lV0r;~($YMjc{fas+^XWecEgk3>ogA6PAG=0 zh!$Z>VYr_`9SJ0{DaOgy`OEA0*mL6HFU8MZOxg~5eNcQYsm0px^xlZJ{QmNd`>{#H zlko)71EMMMw?0|PAaG=`VdgaD@(MFR9CyOw9!xktY|O+E6jZ3k7QoOvp~g)R7o<%GPNq{UW~z(*e+pd2*B zEV4t_H|KMk1exYH_$;Vw$9yO3Zw29tz31WGU_=UxSN5exdJeGE1S4-mg$9NdtlR${ zt_cm_ngSU~FZCCto4~Vx6j2(X z6Q^siC~4Nx{FxQg9OWLhSfo{U@%_BEB#^c=^F~VC;F{C28@NWImqMQ@^xir6=NAiJ zR*MYZHCir?TZgtEHd4goJmQW*!lP3#+ygha_znMvz zA$9{@`J>MgU1F5aEBe$WZe_@BhE+}6p(&rU^~9X4r#3>uF(Jn(P0g8zwcdf`10XX1 z;q01ZlY#*GGgGAhQ`4r;hVn&C zb9uV&7u&nQo(d*E);e0n!YO>^!hQ9A)$-K@j(S;wI)9>`LkvBO@&2ArxCZtto%V%ja zZhI7e5oi8nJA1Gm%f=7vj|H=r%epA$*l&Hn?81-Qoc&(hBahh{99&klq(^Pn+bG-U zm;&aGX|3@=p?U9Z!D5-fHH1Vw!iQU`4kR;l3B9k7Tujn}jN%SlMTwM%;Ar_dTYOD2 zOtDem161&*>@6FCob&Ml$L}@^oqf{mmA1=dB`SJ#{tCK2&38Und<>>nJ^9rjNAvS* z6Mq1}rXGhG7H#p|?JZu=BknI@R`nL&^3*cK9*JPB90(0iEZdJA4W;-(s|@>U2q)?% z?-`pEg;8>Qzl@w_@xla`9#o=Y+qaPwZi|Ym5m-LzoA0kP$1byBPC2KGZ6Y~edY9XG z1n{o5Er&P56lI5a7rEhFB}`L!;v&WxrS;kI1|&2?LD()T5W5337gJ#{$2sC;oVkVIFo+iG89Xl1dJAMJV>;J3(a*$xK^?U16Q=kjZBQS4nJfrQ7Aj zCBkCuhHRn6cb|Nh$S`$a&={+ygjIDQE+eRmxXef~y@>PEKY}}SFlS=5`;-$$%O76v z**>^8b$^*CLCH^%{@>V7HuVy%;}R{WrQFCl8XCU)fM)p@n$F4qGT%rN>y?nJ;`0KSTIeN>%aofx zvwxB`mkh}7C)>98TvCGAB#v{Tc|cpG+(AhMrhz2AtJ!k*9#tk^t{M`nH?TqjkXCls zENOUW?31-*ej9nlzlgx#d;*x%F+_Q7If_T_Nap2zeE-xb98Adv0{0zJ%GI1Gwa{|A z%Mw)PI719yqJoUvW3WBVUrX0A4tbqNo;xPT_$6LGs9zf&2bUO$L>3)H23o&I4&uyz zo@BgN{ba0DpZ44pfZkz^jInu30lzQa=bGdTHwMwilKgQ@ z**V)}dD1njv)^u!9%k0PguSM{vfIh;3j!Z~zQbZToJ+*DdpJ&%fSN7YyW8sJ%pooL z8jwkTU~a#B`?FwYTQjNnoNoc)X}68;KOu3lUldwR75NvWP5A`Xl$;9j0lFj0!;eZN zeUzD3J0dOwy@Azk-=p+&ORh=X=N#4$dJ|Lh0a?YIm1y%Y<$*?=F(*7T0FBuwQ1aEP zJ-*zX-x-m*H-(W5&4jS@gG3GGma*ETYEtXCbeH2C%&#w-wXX}d z$IB$=6m`xHr+wJ)?Y$e6xX2a{wrks+Z#@!|u8l9kbzg)iv<1=!DhbvTpx$G(In5OR zx>D%H3)!Ed5LVog>>dXQ{5@ZSDw0dhmbB2i!IP(Ss!tUjHf>q4jgzs{GelSv0 zu1$gp@nt1J<<6iT_KD$+4m&zN-d+j;XUPM!nIa^|n!n+9uP;tD^>GNBz8|F!V| zXd}Y}yGpI~8F3yH{y->%wFv^12zxNfIg_1*c;ZvFfHsrDhGFNBBU>NA-xDXC{`9|( zFK~N!F{BZdm_B1`aGMlR_=)7yEc_)**D1AJxOljv&qsCR>~;$skQnh|S|*~nJOcF2 zK$#06LFEklyqJ>7cpgkQntG$p+(@Axl^6#;x8i#P_7v2c2nCFaUX#tzTGPXb?1kuv zw>zUk&$sK(hxl9-1|A-2_c$2Xb14!ST_o;swXzb;2WU5YX6pLb<1NJy$=`crjY4EB z69vPW^Ws>;<_7oMiT>HD(|f3(r0gQ4xy%P9fOSbg3zaa5BYWwI_9SBSy9JL& zz`x(3EDtSo<>Ky{bC=ZfD(}+@ZIvZE3*2q1Q z;NxQhTsNh->({%5aVAB@x{UrNKBjiiEgJTi3%XH`RtuZr_8g3L~;SH}ZV#p)!3Iy3o17G3~U|EeR9%I6v zhr^9tCQ#F-UX1E16BIebUn#7Wqgi;klZJi5)E9ble_;JZ%mU$EghasYoT}q>8u8om zwa>`~vYw9ZFbl8=3O$rhSFU%U^6~VomMMz0QqcAo7``5I=hAfE5$pOGE$yndodJ)m zHxU|=4hK|C9FD;R#BSAX*i4ERHuzu*+OKrCg}nr!sXuC=4EUpkXFsAdn;ll(VJakv zCISv=juM}QtHo#w36Pd~^}@)%;9j@K1i6u7YcA%}z3f^!N4ssGoZ1PL2zV0E^7D)a zrt~`@Vtm6v>)B9-{pad~57YPi{xDG~tI_)W&Qdo0?89wPH*C21T#lh6B4j7Z%F?$C zsf0;KMtZJ^s0l^wJk74kU3^Tt!BsfoRg*tqq$u6trZX!RDD5tp)me|#`3uvGA%;|T zdHJZ-(BV3sXgj z`AUloM}#&*`aq{tD%LnpQ4wfkVHYIp|KSa=0T%rB2k4zYQbG+cEF>!NWBQ0kqo)iAfzF@oV8*hkno+hedUlo^=T}B2{%8jao;10_&)WInul< zp9JCWL1mLsKM@p(11k^oJ3^zl4T&)j3n3APO1v&p@^a&|+IvI6SfiD}?=jxo_9G4= zzZ`X8Jf56L+3w5QJiuv|&NqDtY+XRThYrbQbUpX3xTA!9$V454-7s%v?N>1G8{^)l zx0Nybh8>}o#5{6|3;v$m!hmd39%|5&s;BviKY-2RkT}U+KEs%R9+i^W#cDf*ZAg42 z(EOt$4d&QEwd;q)B$rePA(mr4pnvCb4>C6<1e9yBL3ytM5*L#OTEGN_ok71-Hb2>4 zXp65c5nLM`9hxW`$_f;1yY+b7ItUjUqpt@}ts)1ne4 zzJXF%NVHQE(Ss#lotk0V@vr>q ztTQl&44Nb?EDNd6kh*`_%A4FbZUU*_%@;2=UmO8Me!sWXPF}%@!5dD^KEUY})>!3k zIQR44#;6e}yQ8poD5B$pI>0z_fD~^M0HcHM7t692ZiplcVYs zWy&vW(o7t1*ByWH8q{W7{J|*Gi;5kG6EUE$Ae24_eR^6|N&35MKLNwN&zZfZq(Fdq z&t-=o5`k>=(D5Pue7>z*u~dsu_3aUMGF&*q$s782Nt>W)1rLe1llG1(Ooeo`9?}TG zBxJ;PTxXX@IvoO%yRUgki+O3=v)|%{{=KNA6cmWdrQNvd61;tlYQHiF# zrRlP+Es;8rFcX5?VpgVvS#vL$B_(dEA=S`W;`>RKc<_h_xB^D{DI4E z4@%jB^i|KVwl$BAj@G!Hte9_$m#mf=%+`6~z+f=6uD)(0hlY2x87Exo)^@J{>if0; z0h9`>UxZF1(VG z%@6LKF~M&}!O{-o&Ydf@Zj5yfN)yAW?sJLB^naDuow{6(wnlX06@7jf49uw~@ZA7-|ka@uE8xRZBdOjKVIOjDM&8_X{%T6ccmpuxgffb`_ zZ!xW;tj-4d5<~gmL#n2(pC0a=2P&?wrmQ}189u;%+>c`HE_GyG2qUY9xS8eVDwq`p z2L{}$*M*S@$Z))SITx#O@UTVjYBC+`K8aPHc(ssWrbGbdgdP>gR=%!EdKN#)5TtVR z6*8|Br5oPBHOq;?1F=YqmAlTSrQO)8%)Pa$DCEvsBTx;EZh{=GLBAVO!d{Hm4tHib z>=g=qgnppae^Tz+wF{4Oyo>(Y`xRYUO$@(^^Z1q+HL|sajZ_{9dIr#>kN+)W#LN~C zhx)PYbmM9oBj}4Il(6t|FlXRo0xcsi?)jc!^K4D}Pa`sjcHy_FsM0eTCu6u>N9rN^ zpB)<&$dB4EQNkAr(F2n-bg5GDWT=ZXm@O$(cIljRzmJfHP4k#-i@OZH=KuNVA8;e! z2~7@^%aszZFg7v`q_89mN9FiANO{_P-C$wyhOVF;an7nwY;BPe-jX8| zcxeCkvL?rDvH2Y!kFMSF?)m%jUisQ^?`)B`V0whzuH8DAH}0yg5y3MP5T~P_`0qPk1(DdG zVonF0B$ux$MLB(p4aF*$aGa?K4rD2?spMv5ar~-T?m)ntJ76)H<$R^B9&&~*sBI(G z7<}TPixD&y3BeNF1mkiyG|Us9%Esk%n5NaI#iz?O z3$k{lmwS4?(!@oKh!US%X+}k+az5S*+Z{6%E1fQl{XolN9(>eJ#Brcm9v8!xI$mk+ zGebUQ2P3;YvtChnR7UF&A3dDE(U#~}%%iwN9y3-I!`q)wi90(K=w`~`u=f4tJn>Nk z#-Y7?BODlEqkQ~X^?PFq=raU+$Xqo(ePvvqCRaMll1X)`9^Plie3MNaTi$dA|GhF1=FMg{l*E7VY9wlSeKXd%K-`jq$6U|USO`x zaO+n}>a#H&6xU^E6u#Tpn8}0s{Fj-Qzcx=tj&3eGsQr!m?E!ZjC%sVaGN2 zdIe@}h?Ka6LNtUR<+)~TF%K@c7Ry4`(r!z!G{TZoM^<&HMT}=S@|fIEn-k~3t>#+i zGL)Cr^BVRub(Z!iXl~@x8i>LZ{tF6hDPS+MLzib{Xko-^SvO65!$5^%py*l7IHxM? z|J3ysP*rtZ)Ub$j3P^Yfk&sYO5s;RUlrCwIhD&#+AWC;jcc(N6NOxVhgwow1{qL*K z^M3F9jsF|Nfp@^U`|Pu0?YZWfYn>zPA1obUWa*dx6IKFD_2$450L4V}rH;Tr3m#Ca~;R8T&+>)9$b39Mdl! z>ZX3-5K8WMXQpp3>(}u**eJp_KU;G*YoR@B24Lyr#qBDNADB10GQqCr_EhQ!0hs4G zb9q`9A}};PZ)Z^L-V7o*^+}<2-z>gc^4OfKa%clt9xQk4xYMA4-Z0CwSM(ex2#lx6 zpsk1Gkc<_8>wuLy%^mNrGBgp)ojn|M-{hg5`Sn_{fTCsQXaqe*8aa1u=BYAj!Bp**wWnK7zYO@%_Fg`NH=kSmYUQFT{?nNgEs6Z~2 z+iSq*gtba@M^di2!0JCA0SIxLVzsaxP12i57iaby#;X3 zyY`0|&*txck=tZ5TVZZFCk5IVM-*7IClCqcthKeF!Y^yJ+?S4-ec}hvVsa+II85u* z!1xGoq3itfz#BqLC*Z+mU}@BQ><-e=x#Is)fe9kor3C^McA{8cIGg;&d?Lb|FPWFLiu{bx@KL^&cz{15VO3^pL#l3H#P$IJx9IK?Jcav4+S1I)q^-%j7ALDnDmd$)5v) z?*0CTM5`v8$2ismNL#oh(6(%#cgJSHDE7@ugv6_Hr@wFY;Y*`>Nl~kRBkqHCrXFwy#yE#%U z7oBfGz7N!sj`}OhwS5DpoNoAzYuc^W6?m|1(c$5!J#ofoDR_2QZ(y3*JNRW<=czP> zO9NTakAS>qxR>&@+lazvC*`rk=nJ2BZ4AK00v-a6mwhEsXUvw<@S;9rZ9zywmOW0Q z5;Ax@C6I!v2*>!7uiK&P3HUwtTMqpleW}ipZT(Jas^PP7Nv9zm3Y)mLzx8RBco95} zvd;Ag6Z^-KEH32T^GK)fDr`m<0O)5RpnJq zo$_%RF`@g-Ll1%IBnJ#|NQ&CC>@ASNp)1VvFF9xH^;KHL>pm^GP zk@ZeLN?~H?=lICO;^QN+1Pw->Bl-Qi(cuQL=+S z|4^`O674{pZP_0+ETiuH2YR9rp#}+`7b=U5a+VGvW)OX2{)~7?yX#nz4Cmcwor)W- z#>1HdY+Yf=V<18HIA_-C|LaU5vIo=|Lja0y9q3drVV>F><}BM_sB#IxDFCN6*x}t{ zm+dbKt!FDU_%l^{uj4e=`!x%LhKjQ)D}E$@NBitm{gEtow6K$>`8}HYnmW!}qlB)o zS;NEcWB~4a<4_03#g4*2`c;712gWL%AEn|8>w+M$AydW5Z3Dzln)eN0~9ztI4jYWyW4?+Ny;Z#Lo=}QOLhkkwnzmL;60JX zVF4+2N{1pbR^0Q(KfN6$YoJ~-V(di)0x3BJSR85Yfq@su zBsnaWk42tU*RRa4*s22KPQ|5*U`DZ_-C3AkWJ%1Gf0?RZzduO8f#MvOv_W%COIl}v zALczwf=GQ-R2BmnYV5%N`O#0@AqbM%MM$%xlbIkQ4vJL;ej3Fb&KH1Nt6$Yv@ zJ@i3)+Nx5rkZxDJ=^Rk?gC3Da`8O~N!)GamyG-`u0bS<*&^N4G5^I$h!jfcpGvB0o z+kuBR)1GEmY-H=&?AjiXj~)K z1&Ksi45l>&a&IX~l!q-RS)$Qo!;0@9>=dxQamw zd{W#lcW{3zuN1z<(7((oR=2e@O=w|*~Rw44NWo(Ul(bx>9LO} z!*mml3{iMaW=Y-l)32RVc&XdUctIp#2C~rxPEH+wof||#rj`+p+(|e#ez| z0sbmoo(HU(;XekaZO@xz+fcU!67+s{Yz|GGYRs5#Px2FLAQ`7nO~4dH7)LU^QU$7@?Czg0rpwhMYp;Kay;7B`#`J+MG4%(2jk*b>n*HDhg_~0nfp{LJw1<)=(of_T^Hvy)x>g1Co1~iRH5PgM& zBYpysJawvz{OpyeMp#~SD{2A3@z+EJ&r^Y$tJ|i_wy)nF%oc(m^g?!88!Dnv{4%;tf)fnOd=368<{lL>Z@tu%D#d=fusLzEr#H6TxD|0v05Vq|8?!H zs^hSjDz*0Zwd@V=Vh1ie#76pjBsSlO$N!M zDbKx(v*!nH5B35~dK1usK}GH;Eu&?>tEAoC2y#-mw@LboGQq8(9WgJG(%NauZ?Y{1 z<=PtFfx6lpTn!1QGv*YoYZD{H(>E9t7v-3c8qN$2XwYC|?ktQ$gT@e^$$U%DH5mexIK>v)@ek3*z_X(UjPQhrbM;yJ0%b1lO8 z)O%}flOFEn)YT*lmWi%(r;xj4)bm!`!%cq@vwVm#zYue*GdsRma7MC;un-#VRe^tW z-YvCh_5j~uw|i_lL$NAx^`4ajrjccHEEK)*z-B(XcMubg%$%+b^{KFOP=$|G_D}yJ zQrVHq*IXsJ{PTLPs8&w*VEB8Sj_cZgkjfjZk8iOc!42CuH8#GE?+hEj;+c8%n|q<6 z#XXx3S*;6vK}5_8`kW*Fo^-o0w}!h;*9}4d@}cdHp+d zI4&IhnJ{^%oPm?sJsg%-LybFAGuOGzFXUI}yzNpjJ_z&HzOUV)+hE^%V?l_fw7;MW3J0Vc4MQ&85QM-J%|0YQ%M-zX%&1aa)mA^GchH zS&gI>+>7VnQf)MkP1!-0w{m7c&~0G-o0=-`;mnP!_J_8~Gcg$TNgXx8NDH%K(^X)lF*N<%Ch^_brTb*DlwNJy>; zI{d(6r|dheDsU1{3gtn|r1V4eT zpiggx=n2Z$weQFJ_jsY$g^QA+Z?@Dvu2w{ zx!{JmMQXQLYq^mV6Cs`w)mS(;E!tUyLo|OX)yzEP9*D|!1Lo98ylO7ZoF+re1yUNC zA>R1t6Rl^_9^mYxd-;buY*4x|jExv+%aHmsl|Ou%b%us|ZJ!V|;ni)FVmlsC*tND} zS6OTG0uAUv>?4!2RJ7kkGE{kc$JK)aS*UN6ji{P2Qonr@$Te-BS)MYjZ(f z?hp7Sl0tXCACXOulv%tN+!#f~HTKn+S;I=-po^x%?x1Pa-XuvJ?OM0io1!zoxsRRp zKp**Tddi(8ZyQ7=Vfd1A(9%%8*Y@+OB}VR{I(~uGbm_<9JqZH?aJrfFS4}AoC@2Vu z@96TJ4R)6~FHvnaTg7p1_6=j?x z?{L7BgZ3a;gpow<%0WsJ&0p3X&>@ixsu&;qqQtGq!d+*BjmvQUPT*Ie>AkE)b|e`? zbE=GDuSOemih_iJW75H`EZl6e(sters;#*UfoV0aUNUNmz43$uTYPBiOZ6C7W^&U_ zd1) z{)P6=85M9~8_s&+Sic}+3F20MN0VJ~q${dPr+$y<{+yYNaeTegJl7I$3=6G}Q*bx4 z$^|uENDoZc37h`ddMbzynHqL=;*+KOq9wDmzAY>J3dN$d!>>m_IYyxn}e-&H&- zUVt-BmR}O22jjCjLh&6HKBk;{Fpr;WK4BBxMA$^6-eS<}ucR)lX zOlGmmwbt3#YgF-;U1qts=H@^s7hzMoRq0kis8b+x%`egT#}?TWADmNv86)~^Z`F;1 zdF`$wd1|15_a2cPI1e#;>NCv}S6ouV)u2Y)p08riphb0_I-{g8C=|2l=;kIc04)yE z2Rn20@vrgKoX<|7qmn9~`RRA3#}brOWsOTE)1_qB2M%PkI${5In#_r$6l4ElU`Dji z#aM8gfdghop3kZmc*jNY6DPCln?M(1&mybay4q=Wwt~w+lgRQC5OeI4QT`B1vG2jN z3yIRdOGvT6N6F!w%Qq1ysj~*J4%ldZ#frL!0$YD-wHo8nNcJGI9TgIiypYE!vgchF z(Bk@?DulDN?|wYW41t5~g#_e?5r=vSuh2oyiR+-%e)tHr|h|AFZrIj!d(I zAT#kBOB=eyn7Hv7p*(MbAgLLB&6{(J`Ps=6Q{;N(by8$%;lxV%CMGkP4rQR5m|{5% zN0xU`BFpU|^i9<;*zS#zJg>zkY*5|T&Wn8y0ojI(+O8%>>a!~Ynz71fSWv-t^l!?Gz%pkKl6}NKuIAZO zq`dgV3+mql$g5_#?fxFF;R&z<8&Y!bc|~yNPhugaE!Pa%^Y$L+vistSyup6{An6M$5D!~<0PKH7on{{ zx=EkIXoh&c_^En>Dj?5ZfxAEY^T&JC1^THvpYQ$i3u=ht*l>1vfkCf4C5C@RCZpI2 zSz~z`k?I|Q{1XB4f5<5BLBG59OGqMbNcb}Q3Olut658zqIThboQ|{qU#q_UGq>v3( z?i$TQRGDcVHIP;6*i4vTsyVPur?ubuEy^fRDR~M=EKAu^mz$%4EFa*Q6s^Y&73!Og z|Jl8!6?|f>9j@$wO2@$G93t5?iTiyPSQ37y*m6q_3*STd+v4);>Sa|6S!*sF_`PLW z7%es?A9?-$y{EDM8Z<&^!fx5M8_D4lnI&blyyPHogl-SxZtA2uV-9OTMXT4mdNEAmdGqA7V@sK z6>R5S&+xde?131+Z0Kf305!NU`olGGEI{uMqCrq3*a-gSpI-q6>V45dyz-*vjrFMB)pl}Xf|COD!600;G|gWh zLF<5TGL}(~nRT>mv)QngILb)J@!PZ*Yzr|?;=Ev z-S)@oC=RRSE{FgI=&6;hBxz)E-?Vuo*;Ly}H2wH7dEntXa1_07Jrktr$y~>_9Wets z+)DATcsaH=#G~L)ZY!ZSsyh)eImd>Wn3XxK^Ct(nUY|KQ+%dMkUCZ9~-P-Kjo>Y2m z^PGJ3hje@vvv|_8iVR z*6TlT6L@=2xUkEW$n=8kLZeqokowG;ao36Mx#mUZ+K&Ksjf~*Eu{0R_I}#chA_ny)tNdU_(x`p z^1YpS_RWtmc2=RT+}6#i`H9NHDW&`*tcoXMmdoZUO=YB3_NlgGI1ib2F}K2T6r)a6 zu9!9~?&la9hnz#k_;`$gSiId6WP;!bsrr?ho!7H<>0X|?aR%$_WXe_Sdgi~!N62_H z^9~uRKhT@aHBeoCubZv1Ft*-xcg#K!J7bOG+tZM1+@RalhS9mu?wCHMw@^Coiqio8 zvrKe)edIQ}-L8S?36H+^sx-~iFYC1cOUegHO0`DjGy~Fk+_00K{^%7YKeCDb>KAK= zXzjf$Ehit|pbjt=On9QkQwxpq2lgCI`Qa#~Fc3P>P2WF^eX1|J5`sdfg%$@moO@q+ zNFGOH#!7Cut}V)|C+~}AzCjyGJMHrg;G?u-=^9igWOb7H%A2)B_DTA4EK?Zq2{~oo zEJ@NCAOunvb`VXj&i1$`6C5$FbdXDGv@4c`Q@rvT+yCHdUzy=x@wPTNv?-tK_)2>L zo2fLEkNu;pU1`P>9OXovW-@5nrpQJyb5Ce^twF;0M?0})$@-hdc7xb6{iw7t z5EFAe2_~jnqXOG}axujA1>fGB_YuV}d7MmhhXR(wBso*q_(UY@;)2|Uq14Ky{@_X& z)%#ybg2%M_iy2CxBE0UuS4W#p z&C@rPY3pz9_qERtJ%9bf*#Yh}+A;h;w>D4@k#49SO7G$`2Y7n$#V~iOU0NE%4&Jd_aU0SWDXRX7uOA{bG&ByfSLqa)iJBX`+G0@)kc6Nv29cjfA*r?OmIVW<)eu?p;h2mR^jmIS$k|^Me8#AdL-KVJyW%kuW4laX-7I z7Lgei5`VQc0SZdcFS_O1BH5CyzCS+;+6-(B5ZTpkZ2aVeEZtn#)1p9{oWg#;M{wad zn>1d3r4nlM5>W=o_8#Q$C?5;L(b0!e=i}J-%T1M{2e&?VZ*ELwjALO^p70=5e3V=X zrt|Q*UC}nQPZvd4b{Oa!T zP42%lTkrvTd|T0zOLaf}K>E0!4Vjv)s2);}s}r=sB(w@}R2na&ne@&j%}viCc#v(C zex>wNQL7cJ__qA^m6wavExN+qAY*7!RMDz=4~yN3JF(>y>$O$D!@ajRGo|xY`&m~X zAA&-HemHe!;~%L&v3t?o)G^y`z5@e5jtr=qMJ@u;#D6D)Tk%_}<3 z3?VRl2MSX@&&%U)u(JI87!Ci7P@Gli&sMw&jrB@8!zPv4-4W;<@k}$#cXAKoqN{UG zJoegQ0kq_#105hgfBeb83A6jy$k~S+iesa^4Y^)RUIN&gi5|r`Cw<6bHM#8&GIv)K zr!>-=nyr*G4*zCWc-2ZJYwH)Bdb*Xp`qqH(!W9F!tkJ8>5A9=H8ruABSFB&HcIg83>~u8ehSk57sWo3r%;>x6m|V8+$yk@l5ySZ@zO6WXJ9!X1 zsWp!&*Mfsyd7OQBF3+?ea}S67q!V?{q{Yi-b6z*Nr*IyXXDRtof2P@yg499%-EN0l z`l@tSV$_J;3n= z$XBtrUR?~L4!fn`iiVnvl+Jsd8H^oSgcY0I_lz%FhRyt#JX#C0>ylHM;kQWLj+d}# z2~MKiGxT}`$%;wWf|&1^Z3?qx^h5D}N2`;<(--ASpTdf^Qo{0KwAb*zEL9aD{);4`Ew*3o^%y`tsW9vi) zWBP1oySp_IEf7vjzu9jfJbU&jqMahFnIRm%Y;8sANez`rlG^<(-*`>iA|vCiEs}NL zH>Rb~YN}RG8k(;=rd$fXID=RZ7kmbDX6)(d&YH0|*LgA<9}?`?Q@I$U;tle%iHWy{ zOYu;+eZ=8n`gYk3uRx@guwVzR=3}*ouZOM*5x{=hV@^NIOTls-vKXU#NkA4&5MZql zt#y5HP3VgRCQ-uLEB(t-E?knMIyioccllt|*i1dNit=_W&|WajUb&_Qz9Rxd)fIkY zxK-tp6QybPmWEBOh9WreC!BbpR{(p@#wqp z^>?N9F@eqE`uKN{K$jYx1q%62w_($iS4w0-c1n)!xj6%3UjJH1S2&(d=C)2Xa)aA> zt(eeZsG7fi8wNI~EHh6{e!g;zwSeiR0&@ea>Xrlqqwzu7q{D#`4|}Cxd>m_{5%1BD zmkvabs(U**9V zLB_QjQg%{&hdrKcp7!Sq(CN{9sdbJxg~D>BfLfDI93q*8gIqAvn==ExBd@-XG7%-@gHf z8)T-0AjP|oL$lBvY3br9sSjHCY|QFl=`^@wc&6=0wLK+L58_ge-E)mouXBkbXJ?L0 z+_~_jpT|o1nSe~F!!044O3Q8>T%EODRFi-Q)BO?hyB-rMG|)-?SuPGvJSwLknkZ&~ zQ9bPn5oO(W|5F&kDL5QAT+Hv|<*zal5e(2rf9Q|E`QJC&zeAKp` zN>J>x{FF0LRbohQR{_lBX{OErc3>= z#1y#D`Zs^^=tuf7=a@e>g_a4Y_a8r)k;`#ENZ!}?b2(peTT7{Xuk>B(VAV3HmO$PX zH<*|*ie25gUxbD%$qgUipXGe1OT{=Bs5mW2^0oAsVa`4qXRl0~(~m4?^HBN_92tga zwrpK9V=^?zq2}5Ul}>HuNqWY6k`8@lbw^65+pU%*mW58Bar(ZB{Y;5Vt&|7zgZzBk z>KC@!5hibUMAlphIjyX#j4aPq;wCqnm22fb&%KtU`+69p)*gm~n&H0JSSK(T{B-AK z(vgs~@hoOD_JEvK;vz~=pTQL|9p5xpLtiVxx!`pe`4J$3Fbu*oLJ}P=@bTR$DaWZg z4k%J4{o=rhL7p&6>#(nTIGPmn)XZfXLveWcR$TaZEM{o<9&WMt-lL&HZzxmb%Um0hZwRm3b%%B%NBiWAS! zw4s;Fn21IH-$<2uIhT1a8Rk;9Q~sb_9zRMdbYdIoaeepy=Q;r|`@?amt~h?U?cUWY zbr`3B;+SpL$!qhT{{{VzmP`BMWS|1W9F-X>PuLQ3V<_O`;}?S(`^XklcOfRAt|9^@ zgJQMk8?scXCS21h75Ro8jYbjf;a(fQe-Qc~hvPBWR&Tm>z%h`qTQ_NHSRNE_q*4VM zc04Dzdh@?t0jmF^z2N`ZhK1|2 zQf&a(&S@|Ly*&1U!>2wt|M)w9Z!hcRe%q10x+JSyi|twTzw?+dzEvZ?au}~#E4O4Q z4Uy?!f@|!mZ6*m`?`qI5sIc2*X5>0plqbiCVgI*piEjArKPwr=@X4hxY{w&g2d^a) z>#^ZO4u@*qjcm8P)YT&K$PhjP(#O7apRjOx zW%n1a0yt0vX#T(y)u_rjFX$3HWc>c>$8hmemk z41))t*B-;U@+%|H6T{~M@B~0D?XSqoKJ4j6R?i(W4 z;BCioo%A0fTi|$AJ;auM3v(H@+T=XuA!gFUV>o(oQ>U1$_$j0M*R$jp{? z#*E4z%;;*BEVqj~Az;O@Y((g@a_lAPG@l#a)+_K($&u26ipYl|8#yAY(g;Uaer8Lu zf@b*{nUMUr6-z2?e4M-Z=_JYl>~m}i8mLXvPUDT=n+KF__(BYlTKHn>|DIeQv66uG zYj!{Vt;7Fo@Xref@P&ZE`FGz3ISBS^ctH2CEWCbGXyGH?s6Y)G@dUdl2${8pPkHVo zz?c|Pp~V(ZzB5eo9%{rp3_uf|Bj-n5Q#&RPobmnf!|{{x^M2O+r}=ff7M}96k2QaH zAq$sEW#!2Umc8JAF4$oGn(ThQeK3Jj40`zAixU@!5rJ}12-v$8w~CGP8l4ie^XZ~h zQ^PI}_UfC}$5($|BO!ziEcQQ^Sk=;^$x86(lgj`Ydv%$b5fmRF0L1TQZ*o1gKBO`sYPK+M09Pi$=zFGF7`-jRS{yO#T0UBl+W-4zh{cOA z0dgtOElU7~PTfQ6Ami3lLw}M9>LR0% z`rx?u<7A}!p*j1-`O-v#4r5u7uB1!RHdjP@EtDF#nedq&{I*(mXyR|QjW|@RDdImg z@C`&12jr5wnGxWa_dpa4liA#;-%zM`ottO>GL>d{18Ae~b|9?MP1h-m8AKHGDw{P( zYJ#Fp3j*=@DV5hO_#}$<#0)?b^QPGu87$P*5AyJ!qy5{Vg1*-Z;E8Dciw^ z#7`LAI7-bhqUUB-lx-%X_QOX%nptD$KK!UWgjh-)3uSh2d zUOh-sU8zL1Md!K~ErD=48jYgE?98OjpXZf%EjCpk#0z4uGB_B3b^6LDuOXxUPwL%RA5y~C5{Ew4+lDIiq@@qfF4=c2CxvL8uc5=e`QVMMy$53fn zx!7!IM!!#^xh9~2`Ii8t&r4Cm&7Kb@W)!yKhviMwjp$AO=&InOmF_wo@01eb-@-jC zR;Zv}D5+VFl2vq?6J(lGGI#RdL4lp--44cZ-x{lJ9Phwo{Z zUHAa+srH2~@{qV# zId!}$$V@h7XyN8;>){Sndc3jDW3=~~d9$a}uH~3vuYIK>WW6QAQ!&YkuuO7(S`igq z3T?FVb+=ncaOq(bm&}ss58EKFJhK@+h`j~dy%f=@({dan8%YrcYCu;dL~lEZKTJ2^ zZGvVMB2$iqHnqB2mk#t&mI(C$KDR=^7# z7CRY%A;4p$=)e#Kn^`XSaX_8KYS;Sm?{z=0XxH_i+ln5H#W<*gS;vYUfqJ;pM@{= zXYPhhu-r#`22PWR!Tzje3dik}A9p_+KHhESS9~lnz!M|AxM80IO4s=a>k2P#p)v1v zllg>`b94y%ihPzXaD^OZ&4OAm-%$y}3>KsNW2McBev7t^8w8vkLRGc&#u~cAw5XF% zBo>QXhtp3)4|BnsCbXlbqxfOc3-vf{nD~Rj>XG48*l-b?m*#zAv0VkfG=?v`g=F zN?d}L26z}-IqtwIh?=L1Pa2Ohy0qssWoXg3%SBHw){Uy!J(dWq>cJZsVBzf0-}|G2 zihbroetUPVL5fk(tGAAvoZuk)2S!mll?lGG-@oIg&H@-Ff9oJ_qLyDgpK$>f>?{g| z-1snj7wGdpWnuUkScmxXQ9M} z=nl9w0JhuahgT-_TYBC_%$79Rb44>rc*NVs^*HZ2g}j>*vby#(O1Zf`p23bg0@BXX zcjjpC_K`UtX}XkW!scb-Edi)pW~Xa5sci9+S3jy8TSfSFE0Hia>}P}N3q_4%JuC4l zL*FLNwAt49|${>h@G$JvAB7%f~Ln}xMC=DY$fPhkx5>hhKEhQ~Dlypn? z&>d2O^l#6A_jBLR^BnK@dynrszQ2H(>)QLe_Fj9fbDis4_$tavlMvDno;h=dMCOr% z@|iQ|n9rQSIZJR3d{QZ?!g}V6sj`fOm?~muxqRUR?M(R3j=0-y-%+1R-j`kyB&dF~ zQfjs0bM>9kg^t?VnDy4ft2k1S?>GkDU#``>Dt%6Tg)`Vwy_SW6Do-|>`M-xgKQ6ii)^3TJ$d=GcMft>I6wb(T&vUK)^3kuF)G8IOq{?@7pjDt z7!R*=ct_?A^?fR=iP)U?N*lYsu2AWE_>no4!|Q%kuNCUHv9&V1?YdMUg0x2!n=~A?k)mAoJ$`OQHi@*v_&22u zpk8)xiMnh%-*x!8JN{T$ZMgw8SIXG$dQ^YsI2b2BuEKUhRs;Z14g zn`Es727B+hm6rSV#|BV#KVvlQSDbc8^Z1Kp;vKijo8}wjID>u8z{g2YZ=oJZUbd_F zq$}TCmR4O`4K#{|U5~a`hIRHlFEEKK7+NGah^#_UVh`%v5egxr@WEo5#1RXQdKt z#@koE>F&+TRm0#u1}G~?9~13-F$!X8!B}}!70s$WZRB~oN>B^>r6!D3mU^8^Xuy8R z+wuL8vdOfo(-rWN&;-W2cnMSqRCw+bh`jEcAuCJ9I6z|6|+M_eI^+D_yO#OZIE;xp-bX zzO2A+d<#v#1fSmTJ&fq)pM+Vwg&~sC=9!bvBXHo86K%SpU*Q9L=FtJ4Dr{PE%sX|> z)R%79&=jTht`ZBp0gDq0^&@GqjxJ0aJZtC3C_lO9>(6Rd>IEiz_a#GB=WsgnZt+hq zem9Bs;z-xhodV@Z8(OID1p%v`Q8ote^>Z~fkd;jb(gI$_StiR5(HA)g)>D=FDC-FG z==s<1&|91Z8Pg)i+i@ZaavJGRR{ES{kuop)f<1kjZ_YEj#v!|efdz{cI@*v3UuM8kuZ;D-NSvkt&yHT-Zmy6x;E~e ztw=0x#pdZJbus=T%b2!t(Bw^3pIND;jd~Hz^S2P)_syHd*1DvP;KM_^A?I}Ex$w;x zFV()+`qUkhFH#z1NBTj;I=TGyWK6DjTJ1=3@vju=ZP$pM=B>#>F6t{A3TC3>FNY5! z`;K27!ut_=c@M;8Sm%4ZaiFzXEy$s`8VwedjE1$!j*%Ga@DCpD!iEvXTF9Yq0XJNn zE}ds7loVaq7iB*NA1ilU;usxoJEEY#yFB_7J#sk0JIbRNQlo_)_*SNJQJwmp^?_{r z5*6Hj`FMgyr-@4L37YK85X{n4v)l|h9(caZZJ^H^4?559r^0|f*ohXu8hZ4`3)-YK z%2`Zx#ya4&Rf34U{^oX}#$ZXVJUQH8=s7Tw^_FVU18X;Egqyu1<1_zM0YW;QfLG#Z zYsaZc>GwTa(ibVx)r*V=bNU5|BsmmggzSwDN~IX0-VC$!F;!k*ma*qT6eJwf zbKoAE&8=$wbW6%aUDCJ$U(O9>sfC#NbQh)yR_0BS+|q7?e}0I!>f|IeM=d8-I;X&? z{)l=`jnJc$kbY8nRB@8!p&)xk=W!{L!7HD2CE)^FEmHASo^I`73o<3Z!GcYcX~kqa z$Msi{GiQQHCBqkFT6L?`_i|qK8g%NNvYs~jYxc@gy}zQ3bl5??NK3ip@rIPv z%ydeM*d%OJs{hB&D?;@Z&z8>FRvrefNoh+SBwyGbhuNZ4nF3smhKZ2$hyw7=bn3@} zlhWI)Z^co0o#$m4rvg9aKrCImDbTbBn{J0~-#=5g1iuACreEUhq3OHF|Mg+eqB0Y| zJ?jlPF`wmww@?|IsIsYql@`Jx+uqed0yw8YP$x57&g5As4LvJ{FzZe{o z9!<^c_UgYsNF8Mf`9Z3@zq0Eu;1%7@&%LbqVYso+=Pb>|=pQLU@T~A$ncBBd0<>)a zG^oPKwwvndVisI{@>}e^!Y_+6ektfVs7;I4+4-}5ai8q&9*>rYSKheHv{Y=^bFG>- z1{$7A8oXkLPVTB(P>nr90uOCM7OkJt+4bijLaw@AEbO6=E4JHdiPL%f@?Pre8=m8^ zeN@Q&Gfv!=(#6RiNc!hi^THmumK94MiMliWpXDm9RO%646emCz`qSpB%FoGF4r~r` z@n;Ckqdsb|XH6d_($}2BAzGMx)0X~Vv|F|>NrVK=6a@|U(a@sbJ(C; z$s5wFhEHTXM{?8(497yGI{f;R@{EGykp%*VQwO}BS;Qx?p{30ma~c z9Wx>soV}OwrY2`o?r)r%4L=9UkWU4!MQkrS&*dab`3$RP0kf4EWSGta}vMaPfWnOfoyw?bsKtR?JWW2L4y5XGCePY>kw% zo0(_{_TweB_wWjMzlEsiEpr#a5{prnF}`;^?X$_`vt7cRT+fF{z>?dN3H9Q;Q1#*yUU7ecPwc`6`0rVAN`T8eNkvS##qeo#*Wo7P1tU zI8X~|PmA2uRvJT$oteW$d5eE{kD*Ey&~xxX!NyESwA1lYXzSs;S}y(lyDlc&H|Y$BN=)9&0CpYLxo(xZ3d=(nFwoOwGxo9$e&`@yK9#O7zFG>`7rh-)#Kf=MQZHU>q7 zQJP)jBmg`ZK6gwa)#KQkd7L0D?&MT@t0MS=?x9gySEcjMk>g#rcSnl}kzOKWzt=x# z=ij9}dXVKjli8H^d+hjEp9+3QKtO7{Zi|kF*~1T{--6e>b{CWGeK-R_c#M;jnS2qA z70hz%wX>9!d*;Ti{Yis-ae8L%xNb0O`s`f)a^}ZYHNL_3!)_=S$t(!-*p~owXw$>IL7&V8DHqm!!O$h2a}n}uFTse@L1+?Rzl|7kwm zCO~!cCE3}`!Y>o#ixoAR_CwEdzCi6hf!n9}#eJL+Z&-=^`Pj!UX?m$xIZRdRO2L;! zF2i!$3Z@6yp{bN3kIdFyd6J=g-wKzVd0YG?+~3tsBmIlf6HZ;(xkK<;g7QhGP~0wBk7^!NaZ~GAHfM!~4WE*q4U!DAR^QC^q4WwqO;}@eyEfh$k7%V>InuyFCKatf@44 z{BT*a@m&H2M0XC8x1Y=-3;uF?iVu5i;W*iubR03iOcWko3g-%AF;?(^UYLbl51~W@ zFy^kS^H4tb?L*RA-!;eE-aHaF?&PUK+Bp_zuwFil->E(IrjHDw4-7k;*9=|IoG)E6 z(oOvyp2zGnGQv^iEmX;|fB?J6h7VB}*w}tO)dr(Og_5+N`087Gb zKh_Y)#K?ddtj(6C5T!iN=FhVuy?;OUy|sGMhQl&FgdLq+aIf>c#1*Zh*?0`t^M9=d1$58(y6=B*|BJ&cN|LLM<&54xwe*$g##2)?FAQ zx(8-90w9)-zti4_+`Qm*69Ql>z`t7+keIbtONW`%sBdIO*u zUm1SrSd!ht*#CL>Fj{u{(y$2Xi>n&o-+XMJ2 z`Z8ZB1TrG5izayK2Bry9IKaYms&2JR6@aKL^Ey*QQN~Zi6(P$hv|}@>FKaP>RtkI} zHX6F&?Sw@(z`=rpiXZ}~#+$%>jSAz7O`bf9HFm$@k8xzxz>8o`6oV(&DzQ>=-<#3# zKJ0rhpNe93tB}p<%_a0Xa1YiE{A(}*G&q51cW{qP#D*j$M6e@fHb0nv6AlasYbw{l z*?J4D$x74(E9J);gq;mpED3BSr>^$~cGUl{4Xjf^$G=~gG+$lYWiDFD4fGvsvFUy| zdfapXq12Amt+?d{d_s@vx$vK&R>e8j=#7qO08WZ;H8~yNgK2y2f=M9o{>r5Cskv`ijmi*T;_+(^M}O<~U{P>&F`F z=WL{nITD*SIn9cKH{>s;xjWGMC%h|26mXSsebf}+vL8@jZSIv&~oDXIUsIm1@j z=}p^{acKx@A@Fz}@%D9I7@68x_BKa~P7b_x&<(vAYJSwSNNA>)awn;i!l&tgJGa%| z(p#*hLXSR>p`$X-gwLXU=P%=YhwKK6_oMLPeRFNfAfNkubR~nB5w7*u#plsqbIz$o zZ?Yt+5fj3Jb7zNBz54{cj3{70b6zC<^T~Ut7%m!Qx$ILSYzqM&szTGL-?3Qm3x*jF%BAnzSQ*bk4%PgQ2dRD4F=os-R*7ALkJcTw@}T6n^WE+gLMf zL`*RofL&W4LWg-=-^N%FCV)^4(}P2pla3^tbhbsq+EfInyu-UrS`8%J-} zSz>`8?f@gowI1Tg*=$v~81Ha-mLp4mcz}t11Yvae|C6+&t^kRYti--6kqgUdkq-HJ1yrdpX|wfk&F z=MV;!y~q$~P9zvcD^5KVyjlXDHB#BsI&oTtkX-0-rIk?U#bRO^Qi^VrtPGWG>^STO zBI(SRdj6@v3F+dQC{|RbNP_jE&ZC{BXX4jhhN6~x-tE1Z-b|XK9(|Nxf1od`pEqF3 z4v(QPOH3(nd#?mUiP#mF)azgu{Z+J>Tf65W0O_hJ;R#l^1U67*Kn*?>! zcF3rTru-<;f~%0E4P&Y2_l&7NzT=M?jTdT|R^|iad|a$88MYEUh3C?qb_-Q{974%= zF7q)|vAR;y`K8RFI%`Z@GMpJkbHnl}3DHdc(7xnUEi0h}lXv1b2;r1hh6W90Q|~gM zzm~oq&gvIIfBO10{n$=z&PF4J<5|by@yPF^j{fLkZrv8!jDxa$Ge;GRgR7eIDgN4% zfr1%qYSSrJ;>i9mVI@RT)t7d9@>O(jgT>KEq z4d<-9kRnj5H>2s=opOX6+76~`JqUW~xumAnz1nb4Gm!5Yl=EIeMVwU)ka<351}OlU zb1Wqo0F4;)?4lWdwMo|kFB^61#yMUnFCn=7Z8X-3}JpNcB2*tc2^t#Au1vCOrW8tsYa?Lq-*PWi`~fTC(9t}JAB3W zf>E98=VYUMKaC;Rf7D-&g!XY5JhoQI%aWwHHU;jPy`UUj&Y!$6kJDn8bvG??3K!!% zwj-{mzy4i^vfHpTLA_z9_VR4OPL)@U8xi>xWi=LR;cW7#Tc4}n>YL3tEFZx~ya~6x zw}kIDzlWGdZ%Q>hgqS$pqH`jc8v`D}N%S~%_lG0PAn;h-3Y#MSB5sLIvVAr(IPg8= z3ZtO8u~shXXay2HcHpko?zxkc5*~~@p1-7xn|=z6F)$e86?0oQTk=FZ&!e~cH{s2B zWki@SQY-u4y?3b7MbzwpNOs~D|K%`=(a-<+;cU=`oEVt13VAdG%bsNFJKDO`{mvUK%Rsz$kCA)g-V3~Hh5*eC9m&Y8a^tsW0l zyDx0L{7Aph=I5NgGFK zNi8Bsq)7FOZevjUjMUu5`cMr%ORauoASB|0X-ISF>QxaqjRF}wbdLS-xyY}$+1)a+eiKr##rOZjaMu)6wSClDVA2IXzV*eNo;Az_Wg?C&8v4wbzsVk`t55oQOXq zw^qs|XKuay)#sM{YCR%qZfu-AX4~)VM4<3Hi9++d!mwX+YUQQ2R@^IfW|hLWPdK-S zzv@Y5P-T2F&sz>}u7362TmEzAmIq1FF}U-W-`UAFjg6)7b23Y{qW_8aY66i=WwN>h zWP7AJUC(mAnpAyyct3yIHpRM*2S0Dvfc~*B^Mrg)vPN?+i#x*IOUuEQR=w*&Mz$9NQf`5*Qn?>mBuYmbyvO;uP0*aezMo(G$|?r z63$H95e~dSs4oT@K4O6@hK94Eg{Q$bV{-s^C|46t-LV8k50C8k18hQ!$p8Rw z1Td=#i3s-u5b^#-guhCr>jgLl!4+~ly-~_U=YQ2mW9I6FA14FigUq z?EfU6@VSm1-9tDD5H>Y)kv+wgf-HtS9WW#BQbUkTYIJ#JJeeH>Sn=^+SW!Vm6d-XA z;nbMip#JZ(u`WqH#2D}hQf($E$QX-~u_;G-AmzL1RB>!dO!DN12jyJr3vc0*OgMfu z^-jK+#R>d{^{aehpvQxqAnfu-024kIKK8zPnKcn}6co(>1_ikd2@CvvjIhgjfxdN> zG>@W$ruq5255FH~hRQ<3kA;M-Kjl_@R12UDn!oH(1KBOq-PL^aDA|)QHL9=XP7y47Jg~;G=D}gja8- z;SXq?f-ePeRGk)XI{zFDoGDr~;IwofVy?}il9d#l7qJShf!JLB-H8Wxni9RRPGxgB zzUve8Qn~&E1S7rjeDuzE+aBs!^PaL&O04LB5O1aW@jUxl5(#>%-Ys;TE9VcC^!Sb> zMEN!&>lo%>xM*`9sDDk(=_d(OFh#%;AU-rBo^%kfi*>khvFJ&8Eu9S03gS&Fk&Y0< zADjs)j?);DfE+Uq7n<1rxC;3cF;xR0{>z(Oy^m&^@MT#`)kW~xbItx6G;{@_9>cEu zJ0$$$`-myvhLJ?2;=uZmb^9jR@0PBWUxm5bR%Z0?t|4?r)^ z{H90m_|dW%HElmsa50~Yz3sHp|+m8HsG|#ZFTr85$AsZ0ENb35#)FLw_Ld`D7e4ssT2L%z?YN@uLobeqj zYiPW-c-DH@iQyXsqFWDb++#^O^3e9eiqgQmd|g0T5+q-G&4A3W9a2g^7`y?g?sy-9 zqcJlW9Q2N=s}cT!H&S?IJyqrvX(w}`v|bW?L7uHa#FZ^ZjX-j)?e|u``6HpgaifO$ zUd_qDSMT3Zq0=+Jf(L~7E(f|ha{>P1#Z>J_r5f;%kTR7c8qdVd`gmn(S8Hu972d0t zg4a^7p;<4Fj9XstLq7ca81N|aLh269-(=m(P!}#I3i(mqfDi_0pdSf6ORWRg=8)1TU~(&#&^#?md&;8D5!JK%)W4ns#dr_!~4x0+SYo85kh#ucZgQt)&HG>mav`U zLhJ7h02WKb-TTnuWvp)p%qz_HrQ6dguIR@8?6p$}bmj87VmDpD^AZ(-FnH5RmaC_2 zP+q&vvJ3Np?se6Lf0tUAG-R^BfctQCn_mQ43vmdd;z;S`8Y|CZ-4^{h)Gv2@Nv-o< z68_Qd`rxjH+NH%$aT>6>1J*+*RmJ67QbctRlMX-y(b*)Wm*qzD8IDqJ_=wFzR7hfg zUIfmdraglf$u6v+p2&DA3i)Hc#Rrwq1`oiG@Hf^;j3i*@Pl)UjruKr`wZOZ?jkmi+ zbf?-{m37P%j@CzxYs^Lmd8osWCpx4fbABzB-IS&_^Y9s1$eU3u8>mN|HKVn0VF}AE z3>&*b%E_i=qd7q{1AY3465SIqW_mYvU}x2}H1fz`3fE~o4l)<0B$4FEIxjs9W3B9* z=V?$6@{gu9d{p4c5;msJpoExGmd*WYNyLEit%bCiaMo&WOwj%CfevxbvdFA@7o|Nr zy0pmq898JA&Qya5??_ZZCvZH z4}bBkSfp(uXoxNe@OCqS!8O~BV|JU660a{$(8O!M3rUL8o*DO%!Ee1Ph$}-WC4L1= z+%;2$%oSr^I(}1y0{QYzM>_Kq@kvd02y|F{%M}e$T146Ata2uWCeopvv z7x4(m?BQ5LXtyV{2;5PI>Xff|3a)n@7j!EfWst?C7LNe4$oXh;lV`a}>JBmUN1ArU z8pg;BNj!~&+P|~>a2>Vq!dZipDlf@v7kX_vFvO5?D#4&o(V1owURH~oeK<#PcZazr zwjN8s_EjXs_bc#!l%LV=szO#E-54vCoTk`8g3*?SR|7ny8*0Mwys!1;KBDJGFbOri zOK1P-YE_a3;*8J1_k5tBfFxoD7-tZ_iD}^K^fc(gX|C>!dw)ZbAmdm2;+{2rfP}NU_7cYaD7_WSh9k&woY12r}PmP*L zP1%csXcw^(;z6OGH&$;acR5+ZQ0-pEjSSX|95l|&OPg@=1$LL`B0F&{c^#Etlobp~ zV|THV@`Zm&N|tElVq1#8jR}v=es4l1W(X1v*`h}?FZ^HfL@WdB3x`M@gS(b4tsJ~2vo*4yy6SP7QI$VfsR%88=-fvUo}RMt27BfmKdu!y1`~Z%8{s#ulz0VxcK{*&qumP;fq$YC;&!d)bSwZ1Gkt>jREGHls>p^`U% z4m^RE|D{3z3aHu`%GB;9cMFEL`{$^oESRFh(&Fp)C*-7H9pWsdb^tX7n4XlaFcxzH zW>3iL9$xKFZP)HsCKn$T@$x!5S_<<`hx0W9M*Ib~E@Q`}xO+rlv^2E7&i@NbLmCY2 z?jg9$R|lc8ZPx+Gy6EKh&{_pR7XpBt(}w{-3|yQl*lb!jd*5k!8stIAUGB2X1WxO? zfFqdLc`b!F9h-m)9Gb>(fkT<8ceIaE!C6wvr#lu{!;^#ofE&u<8@gu5hT~A~Yc3rgXsHbL*#PEQHZAjJn%ng=w;vkA^*M#KfjRj4urV+L2x9_0x#H0gL zcMSB)X?0aIneKHabHnS?B3~W@jHCt81L(^YF~*V4g+H&C)}gB@JNNCEV9+C;^ei?M;L1HoO7c2C@LYre!V`rqbw#y(M-1WHcD&tG(O(fkq%Y`Xi z&d*qK^vV-JqzcXxV1P4tvtLB;=->xR$zqk%p|`P6`_7%q3Jc&P3g1R!Z6P&5jSk)oeeMy~tIKWKqJxaIg;7QC9fZ&H@hhnO|;Y z$xlSm-Efi(5Z6a@pa1X~V@>%{Gm^>rXiI|nLYeNi&%(OX<-uacnOtqT?Ipd9uJ>8E z0p{u^_EGx@jqqsc6TqI-9KV)&4xYGScnK{r6^Q)ym0=iRz%Wcx!AU{rwGY4vGtoV9 zRHqz=9WiNib9z&8UYnoYE_HL4ZKbo4qscC;cG_?raZ=8^V~Z-iB=JVp23>onf)zNW zzNx@EE9mB{vlPsgo!i{bC4$Fa4pNJcrFI~fO*fH>JC7OBtk+4LxvyC;iHGjPbK2)7 zW89`r>0Tuu$Y6jU=s`NlRuO0SdwGVb8b$}QtM`6{bSfSPBC9>UJxiI*g!OAWIQuhT zJONOroVV4ll%3;X8<4v?)l;s@xTfiwY)UAZFpzKjI!Oj3n&I9*DAn*vho0U!i9ZVl zr)h!UzVH3wZ;?lQ;mvi!dxRM8kNHkt3Ks?HH-8I0r(wYZijhOErN(0Ng6P#7U^r8d z7*HSH1|Mrrw-v;-8@pwg&&N(pnK*vr4lBF1^Gm$E^rQnxBwvhJ;#|@!nRwgIWM5r1zCB zJKPh0@8NT&QdS->nfwH2&bvyAgCY9g$+@I2Mp$n>zgy3Jt=XKjyDR2tG&(>>68_*B z^RT@T0xW^n;tQgbvK5nJ!e^{XulSHS5vx#}}Pi2py@5-piJ-s+c zr|Df)Zc(1YRh)Xh%S(Fnbqm#2mbRd+F-RTK%4V$$(8lBTd=NQZ@zRzu)Zlg__h4`( z3<1bK-LhT32+p)&ivf|w_Mzdv%tpDv9|fEt`6^r4iuSm0!CFY*cs`ey*5ik$m7aN? z!XIRCn4a~U8?~^fp7{FpTwb0xB(^oFX3k0J88SCkTPGsNdS(KtRt*i6mT!LJp}TLj z&@+?5H`QWv^XcqULJeo4g~apv1-m&bqV^1SPUa>RYW*StdqvmvdqO%Y!qx$0sS>Ox zr)um7VH6uZsP_s6KsJJAz5Xd~Zv*{Te`}hHGukcA%ib%lpaM{6-qfk+niN+jXG za_rb&p|jVq+f>+Ix$xG_^|gIP-;+NKvyyW(#DA0^hbbL7_LYnf;BS!s69m4f)Opn0 znK_^to!Tg0&I~om-?ws1y4kGDCX3t{(JWHo{FzbC0py@?N<5m$aA-YF3ts?j1SuOF zeRSicqqlQTmw3sq#-VNAlJk6}Kgv*6>r{uEN46dP2)+Vamxaf>4K~N5xpo%E_(ro* z?P>p>9?Wk@x&4M}bW47C^TYb%rQvQ>#8QFf&vh9z>5QF{%mAWgU4)47$?!4P}CP=|7Nd$H-Z+J?7H_-V(?Gf_Fvp|G_ zZC+Mg8(cgsw*?~dfV5AusH72dhAld~1}qMteKH2w7C`u%_D#BP8~A-$0=^Os)*hS} zBxYqR_Ka8IBQ4d~^uc)Q@e1PYkEF8!P(ky@Nsh*)kC&cVO(@;HpUsS(XEraFr-no@ zNzMg|T)(*$g>xuTkBo>Yyox{@-_#9TKW7PlCuJjdal~5y`ndmE990aI`;7R&7bZ4g zcou!5WYTEmda59f2h=y#ZAv*C-(YwgWTjHkQd0@<`V#MrIUx|;ujdb5$!Fzl^Vg^S zB7xh+Yjo5r-+W!(j;VLa&zMoa_JkgOM`mu8f|L-V7Gfq4M?(x`9&T&izi`Qy*t4js z4v;=M-){g}&fhV8s?-UkeF>hb;uw3A1nb6wfOsc0*U@I9i+l;N(!f*W`9TFazpgsH z6eJ$%3&>Nd1ETbKj5##}f^`o$a_6^Frdn%ApDS_$(O;+*8JJtI3!INEO?r>dax5Gy(P zw3C6{S}geUpKq=D8MUc(6h4WwV0QnJh!Zi!|E!I(7NY6jT`nT>7@dE40Pi{KK?jDB z1dn`$boASSRE>*;{PVNgVu?K$vcEiYu=^77k8fUb`|rX{d_W~%5N>0=B959PcG6cRS0e9dQ3Z|T=kefFC{81TN3xIoKQWxa5002Puk5j+LC*8j~b|ck@Hwlm(VWYF@lD@y#YGA%tRTvN$S4vZ=$8^iLmpD0=s9aKK?ec<$a zjG^vPV%qXnFFb}$6f+p%9kB-sMi*R-`JD-xV@UN;>22cTkg`sI(;Fx&5WiUik&8zY z(jZNqUM$e=pl2ao`NFw-^gzQi6ke;ydm#gx<0y-!SjXG-I`bx-E1Kp4i7T>pgC+P8 zA-rz}DC~0?ZsLvqzzIl{)4~PG;DvC{ABnmcnTKJKBKw{gCsqSqg%mS>{9$a_krbWP zflSHbx%>oX)rb|_rM^U~j>A;ZoET*z8ETLW?hXj}@29EPRxCIVVx7!6pooLu`;8KM zCCH3>ksE&S6$o_Pp*Sr_qJq-rE84sXKFc!HviT}w;TF#QB4z-tHDCmB70i(B$7dbc zj0Q`e_5g*1{g>q)199l{nSpgDxmA0KZs!jaqd{2B7K=REc)tJZ&kZR-PY%2*jGj_% z7v^cYAHG&Du)qnAf23Q6%JZkmOkUHQB>@{~%a!a87JWeuZA|eI*Eq00;?=-6sf+## z%@=l3)}_Ys3uV9^ol|CKyM3S+Y`yOScAS}NqJBmvy+=riXRT=2!o1_5ZL6=ds0B@q+XU_SHVoxX|bSrKp6 z6YW>|cp$DVOgDNCT2BnMH{0qzWI)gR%Eka`Oz4<;P)NiAI+^bJ-6E1(J+ZSaQcki- z_JSvOj<&&DImyga!e=PTEbdqtl!;4H_>jS~-nQhEMM8%XXST=q>3N=Kgd@j15#9Gd zOGwlSlb}BvIGp&h;fkad+W2dKfvKZ`$2n6+3Yv399=HJLRXs&|4pv7TdhWr)Eb8lC zY#17bfO=axMvk|@hc0|Uv!l&^>lmZgg3UQj38tP1xJD=2eq?s#}*)70lHi){e>-}X`KkK_^MEOGWYEIg^98`z(!(~m9|mPga+E$yJ%q@ zbSoEM(mBcA16e&`jOYr{9R@9KOzo1~M3z)O>eXfsT>k;eX+Q%Aki|xoHp`m>jEHR< z_RcX$ZqzeE%mdn*{(#GoC_5MUslq0RgP34F(e=Wd5^P-zoM7s(@q-yvw~~?`?icCAq7l;Ot<=Kh>&%gbq~d zFavU+KyB?m>dhD}vLVh%T&lMHAL3FBbmq*-lP&#k1JZ1SW8wurb`VC95{wNzxP$s8 zY)c)vPBsgZT0{Q*u6FaEG0MUkKaBQoP=C;$`5UJDQOxxJg+5Sl;1<}depxE89KP@; z1r34?mO=Ef^RxrqF+i`8a_S z2Rh6?HO%rNu^Qc(kHr6zln)3}?SQ`q&(()fasdwyEEoL5+Ksmsu#e90_C1UXUQ2}m zv8yCCM$(0`#DCO~Pj$a`kN+(yv=ckdaOP}al-U@qsBwARTKC6OVc`E*?7a-$gsS`{ zyQDJ>N{lP@Brqt+p*NaJalv~7#tejqtBWTpRuC-yAq>>J!jE~AKhYuLHh2xCqR?M} zDZ@~giJ0L)!$%ZK$bNC_QjdCrLd-?>@at8Zm&DgnwPlDee+V8jb`oV_`K7{+uc1~> z4c1%^Ee_f>WH{mHe3MTLxir@LXD*6VVTeMH>lYFvD~UneXfsVv-SSZP!Kyk@S3T?b zciUqBRif>sd`AFenV^Wj`G*U_oP{=T1O9!Z z^lz(m?CJfpIe1=})7uFY<7-sljGyfH1cpw;(6^^r-oNRwff^L1#;N}8Q}pU!o?Gjv zjhr=eV?J(v%bEi7)bqG3fGSni!V2&A2oW%OX?*#ztG&4m<#mh5DGYT zD2r=`APlh#N6dr7EO0q;N`U0Hev>zC*4>#i*yy#ED(}h&;aZmpDpV=-oM<}rdri2Q z&L0tY4--g#E_p%Abaw#lbRvp<3tgFpTK@F^HP$GViRvT);{d}QZxi-t4x?XsuVD5a zveLg$tuAoldt7QDvtxfmu7EP4Afz}*M2&=+CbPNCQ^fIKMI5Ca_1I3tVgg{pll^kfXaqUIQQO|Yh zptds~s?}jcI#0uZNT-RaMTc_`vs%Q;AEMO=H*}t*e_*SH2US4XB0TRZVT3#(?B_5l z=>nzcN7uRV&&B>n6@nxvuNo*T(wX5C3sY+>3)!Y(%xv4gC)o0)M>_2Md5RM7uKe4PqoJ%6uUl!Azym^mMb{RZnZF=wdyKPn)gy={Vv09_mZ zZ)z4&=ee7F>=;v3Z1}${E?^*Ur)Is8qXzlEd>cl_eFAz9(r;pW-r~8_{-I<6B?1bp zs2iwSKzE56Hg>n{%18lm8l_MjL#Y@+LiKc8o=RF!d_9KlSIjtnHZ};rh80=;^eE3B zsqTGV-i$ar41?4U~*f7s-bR-ojJFpEIf%NA%J^( zLAlurWwN>9J)Saw083tN4!3hmVkUm!Oe0bSG*wO1a;mtftFO^tt;VijTCD6$6?EVi zvjNS!HW3v)Gi?uMv3?6U{zYi2Ni+FkYk&J?hu1@Z;v4QBS-qM!dk7r@U=NF?0F#1| zJDn^Y0H-ARwVFWEa~1Fbf1KJMXUPCp0EIlibZatfWvc40Ob~cD2{O!he{-0p=Zn*7 z3KzWHjnAqVPeRej0sGS~B7|}Nr!k60;v}#9YcvxtD5&aQlL@e2J=9u$l*n(*8NQB* zj|6D*H_(~ubK%TU@?4kesW*~rN;^wmqqf)HUdS7OPkGNIYb0CeY^Ktl*n&w62%EI3 zgszT4a~(O9x!hDa$%JZDK#$0Xe-ooeT#8_SRMeV-P?l6yQr0fVzj$(L@y`GM<{hQD zMT9@RwPQ^z(TdiYNxOuSvHfR*$mITU3jP(0|FM$p7{)f`tUw4szlH zE6SoHDuJE+8*F=u0S3&L?%2vJ=Jc?Z)hb|b#3DSb=I_rr!axNqRPqOruFO5&+Lauf zihm0K6v21Eub1AzWElX2lAoN%e>Iu>g-=g_D+}I#slwI-5PE{!dw4IXRvgz3mf63) z2Rp=8T%+tO?&}aCowoy(`7rXoGHeeX#zE~+Rbuav1qpo;fU`x5T>hDopUQs)stz8N%b-Lm`(OG(vJR~!z{K6I+gvORMSpAm(BFLzZca3_W$^&6@Wnsfq_>;F z31-I=BNxZiZ9%slwr-n81~492Za#uQlMSTE&uZi^$AYk5DT%UHS?njcaKY{Wi5dWj z*~0f8b`0)->2B5s`D3Clh8x8OFTMvT5Jf;2CP3zYAkE1UJ8i?poNG)N1Gk*)N$Llx zEN#iQS0Y`@nAqg#I`&3zP2iw~9C~4K&i74YIDY@0$s%P%ZH2O@1Zxz^^OP@;mSn07rk@ zGiBNTJ&_Tyd`uU+_jBi_!?k;TDUY~_Z)vErGnV?y3UBm>#+IRYbNFS$3xgGLM#tAr z@B>>{EFQd!YoejD0+B}oy8pI)bGAz$#D$qsI)qAvxQ`#d1#E(aeYZuM!N^61nZOwZ zoRL^5tY?9dJ2FOm+U9qVcw=csgbb~rX&6CA&+Y;awpb6J_?7F)`oD!PMGcQmuI5GX z?qm`uUv0yul)h5r?Cng73{Xa zm;i?)**_p~n%L+3bsdOMCkfME`q)!Z1v6Gw2!P4y#$h-1)M-{BeZUF#<2E$IZs8F1 zzePZn+wk`QSGq?V|IdKZu{H1iuAPo%G660-SGtT|Tv%J%+6Es6rO82;@>um**?qRH^#T0(fJ_C+9%})>^6yn$?;q zI0EOa0uWBCH(~_S-VJy3fIH|3Et&Rb1}Kmz1UmGYO7%-Bm6_@0>RbVk9~~nw!P%t) zB5~Rshj$5J9}Eb;fhGPR{I|;Z%cD5}J%?RBAb!R$Etnoi&>M+48XPvyuzS&y`e!SA zP8;k_xAf1@tk25seK>hrEW*c_FShadh9AZyvS7zo#B{u3v#aYT1gO{_Vw4OsTzVYB z#!ArP_d)2;c7J{C@=WOhv2O2kpA(F+E*HOXc(c8)2o$F)*f9-#f9poBxQY2dTLJhb zJQ*yelZyb2*4+g__F-5R_K9vhsX?Ajj7yfCD_zz7`8*02$d$#}+CR!j5mq5D%6(6X zlIRdUY&TGsV+nr>^3}I%c)vv8Bb3sDzrDv{)Ch`4KRls8Kni-(f+>i7OXAPY1*QN7 z)f+k*EYX5tG*{M77)`hjCXWmPt<1=`Ju@F$P1}P?cww%wb0Uat7I;K{MURd^-PLn& zv4_==Ci6#@?&<dhV5zq$t7{lK%iff{FWy6d%U4!3|(meMLw|(9A zel58jH)cAR?;e8xO!DF0c-L>F3O*)$w0Luls;g9tkn0Kh{AEP9;AwaA?Ryx4 z=+l`2^PWl2pqICv>c^**hH=kX&Wtw6iq!$PW|5+fd)pSym3CvXu)8|Lg$Bp7_~?qm zY6mB{wRUM))JW4Tm$T*WLc!Q@sdERuQCI0?{buZdkt)DYKsvkZHlGm$sT+L0B9RBw zz_Lb+zZW+9Bf1=ii-{K6P;Ta}+l{bdjjv(mDJDu~D%^!<(Z5Be+In}jTG7^wf=8#i zmIkSrwqFy%7+H(({oB%h!nW3`8yCRyu~3ys`U_XBrT?Aom-K=%V(s_ z&tqB$c?F+38r0Zf)E~C?FWSY0cRb#0k5)ymt8f{X8yh{E94M+Q+7h}# zjOGuTt#n&@%$glSmbDu!@oEsh`|es6NZ@l>l}5~yBA^=at3CQDobV<<>fm|HRl zyD5p>VF z`jyHMlE~BkCxR44*dCnn5rbe)ahex7+qYpwSBk|--m0EiXi>R95tN=9KKYBP{|RQB zz@n|CGNaAsMPcVQvHyx|e(LZ4ifcrz+ivka^_RF^Dj%SDWi8>Rh=i_clK)sqsdEb4 zDARUGe&(Z-P;s^7gRbLvs-op=@*IHrL0Nb2x4}wj1P;AciyKff?@zQh4pC72_SEU| zYx@mbGhTxuAmSf2x7#MXc-K_CEObBCey33nLcF6Kk32H_xN0|C0J;UOL{&>1H~UFf z%`!R+ndb(#DSo~dD2*C*(-+U-cC)Bl4RNptqMfZ+UTj>rTe93tby(zG6tCdOcZ+Hg z);~K&ECA;}>LK|Cv@reWR81X=@Zaii+pg7g*g1n%$>|vt9=a|_aAcY8#rf?+TQ4Yi z*v#{U_Z2-BBzyT>Z->8^EHB&vvXU!nK$B|SoEi7pu3@{J3wMhrErNtgn!CNJIBHy? z^<^k66%qV%KaeYb@wNjUrS?diKP(3-F5lq<6J19_rX5p^-NY z>umRd{C)80Vxvp5+&815`%{5YO#J#(sa!3c64JWtc+qQ8yG*HfFB_N=^0~6Z!;Oul14Dv@+LOwIu3q$u=!PZ;m`>Pok*UvqhbWc#N(U)rn`RGzo`(KXW+O6-mDHD}~me zF!=V%%Gj3;OI}-zL)PMIJ)tux8}*i5I@`?fLYcN(29SJR6_UVTKo2A1OD;#+=Mc!u z&9ucHh)5bPR`IhYqV{8L)iP%5ou(8~?pV1Gcb_AT!5n`JCNgpVZ*g~1wRq9eI5;lpmjBYPADOf~0HCDDXve6T%7W;IsCk!enB}|?GC9vTapv(NB1zPn{g+iIuGkZSx|Y88^tSA z1n@4jsF`ZEE*7U<#a$6EYk(m~R_QJ9Y$=LBEAEX~Lg@#+mH(%)GY^NlebjhwT4+y& z*MwKvg|wKmmZB_ULc$EjzQh<=vXhY4G6@-F2w@OI_HAs*ZtVLql6~Jt3^V7M)bIS> zbIx_n`P1dP%y_Qn`z-hUx$kdT2gM44mJcfnI3|EKyr;Pudsdj^)$0NESv^#ED@w1Mre(vhx@pxZ&M zIaF%99z>FbtOZC}_S&|m(MPcR z94lWe$*)^BXb52jN>B868NEGhjln7{A7eYST#e{YJLYQf{{7m#eE^g(gb7}78n*vi zoc%?^ubQ`_{5ff7p5w>9V{?N$$FTkPjQVl>Q%Y4q%kt~y4M<3y#f(z$?Dp)YPsX=k z(aD{lipGhUTc(dsl9oaAr5To1(2+8R#X_DZZFlo%3}Dy9Ey;xEMe(}^e9Z=)^+*-O zjFVDmLhFND_>J(FZaxRqQ-zs}k`1yE7++-F*^_cFC0t;=vF>7E54xO$(|fK9sGf`6 zHKZvo-&gAEfZ!d*Mk?{3m5Ueh7bv8)aATEtAV>7&!6c}RMa~T4z;n_1X`+*$hoVXa zrT02>ZMMUFO-yIHV_Dw2xO%m3Nms1X(_2vR0o1VxORj%>x=2uA#s|;k9H!WqKj1~k zjLY(O)xR*mB#Pw2UBfLF-jM2XeGX{=RtUSJvF_^*dCfc$@tKplzN#&?! zGBeWb__3poL(u^sOcN8(VVHTMl52{k{pC}KPR)zI%L@qN;JTbd4JeB8B0e7x?zOOd zxc&j!ja$ADx+>&&zee~)pb9Svc=Y(UjLc0 z@zO{g=cRbj++&y^@r9T|YRP`;fC~e{l1aEz$WXn1=Is<h=%^};QQrHsCGSHXe)BsLYvV4lkb{>F|Tmj_4RLVBF z8!$Pxim3|&Uv2FuR?hSeaahMR+Ql2kcLoI%Y) z<%F(@mzLq6oz*eS#K`0_K_Okg_Z87j9elC5XPU*&oQ-B`dZwQiEh3VmTDHM~LhrOL z5|I*ik>XQ2rs9q-S;fJdnwYVKj5!P0Nbe-VHQ!LU=!##a2^(J=HK(PrOLiuyGcTz#-F`~Cy^$BH-we0>ikBbj zksF*pQ?g$vZ`9go7#2^>5q3{1S>?EU9znx>HKjt)MdJAK_p!9=(bYlUbyq zWn4Y@N5)9Dx04@I^-FGRZ|!XLjJmFqUS&%kgVuFQn~(ewdrtA4#e@R-Jn5>!Z(5zyQVkhJc-l_zEUx@ya*6} zZjt96AF{_t+W%f?$bL&IxA_bp8mc53!yk>W*^4>6QOCBl`YP|8)m=+k8T1Kq|cM#oSWhf zhavfUB-E5X3*6Mm>WwWj^%63T-@rzj2y%nP162eaA(-b~!=LJ}AwA=~@_Dc6fEnLp z(`(5Wu{ETSTI9dF^PGyaNtxkL2OjP*n7Ik}y8pgBcCU0}qrih!ZlBA+j$mit;vhP6 z>eDvV--FH##1+UW8Gx>UJ5b7(f*Gh6A4n=Ly(5H?mAfQ+(lqW=3fh7NiN6DV`iGIo z99O(W@*Sm)rz_dukU_X6UZdX1j@Tu%YU3sCQkryM??2o5qRrJ(`#%r>F)Ak;Ed^lN z;!jwjXL|_s#@z4HzOtqhjTuc7>^~$euDmC`R~!qaN?Pc;5;k0-$tw_~mr%}u37lUH zG{7hF%b|Udu?4C3XFh;#0>M{ZxFbu|d4m&q7DtkF(tLIJ)`zqZ>Y$g1cW_F$wF^p0 zdHj>T5>aNhNIHfdSbYWM59qnvI#`PlV_0=d#K3ism(s`GF(q9&yuko2+b)&152C06 z)ukirR=+t2kt|pzN5%4T2UK9E|Q=7R$SylWv#9dwfoq zNcbzIc>V}!N}B;YnzqrBC1y3EbibHnTx#~xSv`ettJhHB+KZijL)Q`FQw41?^vt~3 zkc8v8@EFt@SO-x@0HS&Q{hURd#fMxHo16_kTO0i6$?{&tfBHuoo-3Gf>XYi}P<7SR z6t>}0)^8Xt$VaE9car^r2=n6NE~-dXd)?3qy!03>Ui8SK>EbeeI(hPYU$WQxvF{_8 z=prLp>D_PS*Ae;K^OX%Ng;ORl>z6H!czKZL6Jwk|gSql|xA2icA1L)&#~0IfI+_Pw zdB-*Th;GIf**Y;{P zgEiLZl1eV;g%OxA$Gpq(VA-VIs1=32TqgP4#vT+Gn(>b)P&v*ODl9vhAO0FwojSR} z3@kioJ#mvW1%2Qkads*lZuCHY7)zv2am-&+o-#c8BNIL>tWNAEB3Xj`UID8n!zr61 zU|a3YrMKgnCH{};-5IBc+=kNoJv?IhXjaz!MYK}0Bd92H-TwDVGoN$*8g91+>ZC*S z4TOx)p0oW&Ky|UO<#>8bmk$(#2O~59;v3JU^Z1ZFs1F5-sl|j0jBiz22XgCbvD({* z+trzwtuMXdoA8|?YzLM z;V9Yua!k$!h&W8KP_$AJ6{*ihA10KB*2i!mx27bU zZqGN{bX2VAJB5$}L0+bGn9{w5zN_dzEf)slSRGp{C>KtPU10T#AtHS3`haF@WeF2-lf2Y8C<^zU4`hEcz*3+#GoarVHCO(nP zBYOw5gowU4pi3G6Yya1qXGPTNq?sAxsT ze2E=ng2A(y>Ziv+bsMRHS6ka&V9?4aF4N!MhqQKVSoSJeqRnk9L7!{%dMZ5r>2a}B zU7Y&vULK?5)(}wPBrRck1Ly$?5NBIGZIyS3(4L40zR&+~%~PwjQ=(+jJxR}Gg!k(? zMC04kx?+?#iQ^(orsw=_m6@W*#-)*U)y998>@R!|tlZX(r-zk=Pn{)(KydxSd3%|H z`DPHbE)dI>-DNle>kAet(}=L^^q5Tz^c76`67CBusM?C37F5x1#Z)y;+_yAq>6w<= z3%8qeM1SO2aV2ed^7ZU1YcVko$HoLnk})TcD+^Au%Wi98qa$!(j8=5)A<78YnMlN zL&|0!S=q%5i9DWOyxmvD79dVTX~GyIdoPfft9chPjEq0Fj{Si^}5gzmF7n$NA1U6LXk5$OVfw8k*X+m_QJ~Z|p zq3O-RNe3SiN%w(5(-)O*xC1fozdyGPnuYw);$t`471x-mgQ&6;A+t-djBOebo=M z$4nrViE@fNTln+pGmR@J?_VSrQ@jTJ4b*8RLqzZK^lGmA&9JJvpTDdd!}?79@dA71 z#05K$XaYpvPXka|$s1S;%;4mX;S(FF-6&$R!uFyj9Lbf$8~VC1-J!d>3Lx=#P3^@`qszM}>U-_J+`BtcJ&>}w zephb%l(l6eRmMQ|bq5Qx!Sc=J$=6LP#DKknCx>_dadH+hWi?EW=ltM7`zo`&xmM;m z+9{E@MTf|EWR)q;Z!FMPP8Dtpl{##7g1*rNyO#Z6P}twru$uaa4sF%7=VSV5L>kqq zZ>f*KLxX}-{oK*gcGUUxD~`hFV+>btQu$k}yn60iXvAfa#muH%;5$;@tBwgM-2UU1QZhoU`MNPst%xs(Nm+mF80zo8@8SGek57 zlx7Dmd>}>T80=+Q2IU}2M;7GsT$`IKPLsVpwGTtztZ>I}TAiI%5jMT&S{j9z zmoGroId`hiZn}bIc;n`fKsz21?j*!ybQQd6!6cB5sN`;Bf{rQ`1U2Wiu#EYh(tL#= zj-R#e?kT$_Sy>Xad;=OFC2wXUX8Pp%zdaeWi(e!JM4?5tZ5PZE_l(|J5!~?)|9sO( z2wmUm_oTXo;coaB(BR5k`e)xBJhYnl`GMW>-ZwvlF;k+;=}~703w;&4xf*nhlW5jL z7e<{#i*pFlE^L=-0zyZs2GVLNq3vt*&Y|{QZUQm|M-@X52v;K=>H*755iA`%w$3D}EFFXFlU2`~& z&95TJFbR!8Er17T?79cYONF-c&CIhUKwAu7M8T~!T44auadFfO(VlG_4}k^KcSt6+wH<4 zzwbaV1oxh|-ro{~n<#k>n6IL`9AlO=%)l+{cbRm^xd%d+)m0GGbPZ5CIcO1^B`|kB z*YSZ;dsAG|Hni0_dq*9*vJh@GTgAkW>X4>P;wh}7I)~;#n^=3FZd*r?oC}aBK_`}QN zt(w8seOa88j+^{Tx^P~E)|zdVn$89}H<84}aJm=(Zoy!sQ}_$hRejKDOeFn^RS~U_ z%lQNX*{-|y0q6G|mM)}0_Q8?%ym^m}_P~@N&V{#d=97n^JY2nkdpV}#@N5zc70*G; z0GLGj_DdGJPwqsdvk7hXHdO2ebD`09syvw}c{yn%5jDFpi{lkb zDeSS~3|B4cLEMV$EpWA;YvOgJC<~o>vh2|sjP~;KwGY`@$K0Fnid9UCdE?6}7+KE? zG80C1n4CY!PsFkv#0KRE;HQ7w>qJVsazJ=x2b^1V{V#X3>y(0n=6zZCJoaQ-IxsVW zO=j{2v*tQIx7HvhQrsLqzj*!7AT~fR&z5u^s41^?|-JIMu{p~Kjc6KvT|K9mN z`@8e~VOZprZ8L|`vLL;@Zb>3Nu}>8MG&u95`2Ydg9?9JIkQ{ zD6~_xwJKMY<$6O^&5$^71>7r3)5`yOpD8esb3^#xSUAY%0S&N-6++~-`*TJ;D-?ojOqof)Ad7M&a0_)q3;DLE z*DB4DM95>K-YDcH;fXD`G^1EuK&~>$1Sf5kwFx(nP#N9c=zNN58rv8sPP)L@Xw7HT zlu0@C<2W&tPjKN|Jqtl0aQdB`tkZC~zi~PC zU8s5|hNr99oA$qs`5I)5%SpcU_m8kysON(6mM8j)@|F`@b5hU&h)h|p-Ie8y`deo5 zhVVymbQEQpIG%WwZz1szX^Az1W79OrZA9iv*JNJWoJ_({whOPO)3m3~XoMrY#w>sT z1x=e~dh13ki^k~>dZ+=(0l4PK(WO~a^NV7_8p3l)k~9H`EUSBV_K%9ltcihlk0+Z+ z+6kXue;r{MUuxMOq#N|b_GG{x@>AWxvgaF~a%;Df5^wf#p9~Cz)W13=J7lGPyT>*c zPmF6-@O|m3?tR>bjc1UuyU1s6x^Tb6vFbjQxOcB^YkU{KPib$u z?dkMZ3j-cid~V0&uJ3AczKC?9$Cor-y);P9H5+A}x!x=W`6sC1~Ts#~}$k+c3H?C7ltoWuttp zZuCx=>tkVlpJPq!to%MLP=GnGy5D2vPtbH@@t|~ZPkp>=170$TMe!8sw%l`lo CIUfZ8 literal 0 HcmV?d00001 diff --git a/doc/developer-guides/hld/images/dm-image83.png b/doc/developer-guides/hld/images/dm-image83.png new file mode 100644 index 0000000000000000000000000000000000000000..68614655558e25fd16d11b4941eb128e69e6948c GIT binary patch literal 81532 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 R7ih4rfxG#*K5;pf`Uf4=Om+YO literal 0 HcmV?d00001 diff --git a/doc/developer-guides/hld/images/dm-image96.png b/doc/developer-guides/hld/images/dm-image96.png new file mode 100644 index 0000000000000000000000000000000000000000..a5fd9952bc20d3b7b18946c46b97efbd0d058d69 GIT binary patch literal 23369 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 RkW;%s|G1G(?y-wE{|)%4%(DOh literal 0 HcmV?d00001 diff --git a/doc/developer-guides/hld/images/dm-image99.png b/doc/developer-guides/hld/images/dm-image99.png new file mode 100644 index 0000000000000000000000000000000000000000..c8084e1076c46ec222120ec81aff5b65cc032469 GIT binary patch literal 14051 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