From 851416c977099b3ef694b7ab4cc4e7cc11a62591 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Wed, 26 Apr 2023 16:01:24 +0000 Subject: [PATCH 1/2] tslib: drop unused package --- .../addons/addon-depends/tslib/package.mk | 41 - ...2-add-additional-eGalax-touchscreens.patch | 25 - .../tslib-06-linear-print-coordinates.patch | 17 - .../tslib-10-ts_uinput_touch-daemon.patch | 2411 ----------------- .../tslib-20-fbutils_fix_x64_execution.patch | 24 - .../tslib-30-support-time-bits-64.patch | 56 - .../tslib/patches/tslib-40-fix-gcc-14-1.patch | 10 - 7 files changed, 2584 deletions(-) delete mode 100644 packages/addons/addon-depends/tslib/package.mk delete mode 100644 packages/addons/addon-depends/tslib/patches/tslib-02-add-additional-eGalax-touchscreens.patch delete mode 100644 packages/addons/addon-depends/tslib/patches/tslib-06-linear-print-coordinates.patch delete mode 100644 packages/addons/addon-depends/tslib/patches/tslib-10-ts_uinput_touch-daemon.patch delete mode 100644 packages/addons/addon-depends/tslib/patches/tslib-20-fbutils_fix_x64_execution.patch delete mode 100644 packages/addons/addon-depends/tslib/patches/tslib-30-support-time-bits-64.patch delete mode 100644 packages/addons/addon-depends/tslib/patches/tslib-40-fix-gcc-14-1.patch diff --git a/packages/addons/addon-depends/tslib/package.mk b/packages/addons/addon-depends/tslib/package.mk deleted file mode 100644 index 36f74ff91c..0000000000 --- a/packages/addons/addon-depends/tslib/package.mk +++ /dev/null @@ -1,41 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) - -PKG_NAME="tslib" -PKG_VERSION="1.1" -PKG_SHA256="fe35e5f710ea933b118f710e2ce4403ac076fe69926b570333867d4de082a51c" -PKG_LICENSE="GPL" -PKG_SITE="https://github.com/kergoth/tslib" -PKG_URL="https://github.com/kergoth/tslib/releases/download/1.1/${PKG_NAME}-${PKG_VERSION}.tar.xz" -PKG_DEPENDS_TARGET="toolchain evtest" -PKG_LONGDESC="Touchscreen access library with ts_uinput_touch daemon." -PKG_TOOLCHAIN="autotools" - -TSLIB_MODULES_ENABLED="linear dejitter variance pthres ucb1x00 tatung input galax dmc touchkit st1232 waveshare" -TSLIB_MODULES_DISABLED="arctic2 corgi collie h3600 linear_h2200 mk712 cy8mrln_palmpre" -TSLIB_BUILD_STATIC="yes" # no .so files (easy to manage) - -pre_configure_target() { - local OPTS_MODULES="" - - if [ "${TSLIB_BUILD_STATIC}" = "yes" ]; then - OPTS_MODULES="--enable-static --disable-shared" - for module in ${TSLIB_MODULES_ENABLED}; do - OPTS_MODULES+=" --enable-${module}=static" - done - fi - - for module in ${TSLIB_MODULES_DISABLED}; do - OPTS_MODULES+=" --disable-${module}" - done - - PKG_CONFIGURE_OPTS_TARGET="${OPTS_MODULES} \ - --sysconfdir=/storage/.kodi/userdata/addon_data/service.touchscreen" -} - -post_makeinstall_target() { - rm -fr ${INSTALL}/etc - rm -fr ${INSTALL}/storage - - debug_strip ${INSTALL}/usr/bin -} diff --git a/packages/addons/addon-depends/tslib/patches/tslib-02-add-additional-eGalax-touchscreens.patch b/packages/addons/addon-depends/tslib/patches/tslib-02-add-additional-eGalax-touchscreens.patch deleted file mode 100644 index b2c78d061a..0000000000 --- a/packages/addons/addon-depends/tslib/patches/tslib-02-add-additional-eGalax-touchscreens.patch +++ /dev/null @@ -1,25 +0,0 @@ -From f60540a1e0c120dfb6a7452470b3e56bee91c7d7 Mon Sep 17 00:00:00 2001 -From: Dirk Gerdes -Date: Mon, 22 Dec 2014 11:07:13 +0100 -Subject: [PATCH] Added support for additional model of eGalax Touchscreen - ---- - plugins/galax-raw.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/plugins/galax-raw.c b/plugins/galax-raw.c -index c8689e2..6cacc56 100644 ---- a/plugins/galax-raw.c -+++ b/plugins/galax-raw.c -@@ -93,8 +93,9 @@ static int ts_galax_check_fd (struct tslib_galax *i) - - if ((ioctl(ts->fd, EVIOCGID, &infos) < 0)) { - fprintf (stderr, "tslib: warning, can not read device identifier\n"); -- } else if (infos.bustype != 3 || infos.vendor != 0x0EEF || infos.product != 0x0001) { -- fprintf (stderr, "tslib: this is not an eGalax touchscreen (3,0x0EEF,1,0x0112)\n" -+ } else if (infos.bustype != 3 || infos.vendor != 0x0EEF -+ || (infos.product != 0x0001 && infos.product != 0x7200 && infos.product != 0x7201 && infos.product != 0xC000)) { -+ fprintf (stderr, "tslib: this is not an eGalax touchscreen (3,0x0EEF,1/7200/7201/C000,0x0112)\n" - "Your device: bus=%d, vendor=0x%X, product=0x%X, version=0x%X\n",infos.bustype, infos.vendor, infos.product, infos.version); - return -1; - } diff --git a/packages/addons/addon-depends/tslib/patches/tslib-06-linear-print-coordinates.patch b/packages/addons/addon-depends/tslib/patches/tslib-06-linear-print-coordinates.patch deleted file mode 100644 index bdda5856e1..0000000000 --- a/packages/addons/addon-depends/tslib/patches/tslib-06-linear-print-coordinates.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -aurN a/plugins/linear.c b/plugins/linear.c ---- a/plugins/linear.c 2013-08-08 02:23:04.000000000 +0200 -+++ b/plugins/linear.c 2015-09-04 20:21:50.376205701 +0200 -@@ -187,11 +187,11 @@ - for (index = 0; index < 7; index++) - if (fscanf(pcal_fd, "%d", &lin->a[index]) != 1) break; - fscanf(pcal_fd, "%d %d", &lin->cal_res_x, &lin->cal_res_y); --#ifdef DEBUG -+/*#ifdef DEBUG*/ - printf("Linear calibration constants: "); - for(index=0;index<7;index++) printf("%d ",lin->a[index]); - printf("\n"); --#endif /*DEBUG*/ -+/*#endif*/ /*DEBUG*/ - fclose(pcal_fd); - } - diff --git a/packages/addons/addon-depends/tslib/patches/tslib-10-ts_uinput_touch-daemon.patch b/packages/addons/addon-depends/tslib/patches/tslib-10-ts_uinput_touch-daemon.patch deleted file mode 100644 index 21b586e5ae..0000000000 --- a/packages/addons/addon-depends/tslib/patches/tslib-10-ts_uinput_touch-daemon.patch +++ /dev/null @@ -1,2411 +0,0 @@ -From 2ae91258548c3682ad5df16ee22bdf28d9769bfe Mon Sep 17 00:00:00 2001 -From: vpeter4 -Date: Mon, 29 Jun 2015 17:08:17 +0200 -Subject: [PATCH 01/11] ts_uinput_touch: daemon translates tslib events to - uinput - -On one side it gets events from touchscreen using tslib library. On the other end it creates one new virtual device using uinput kernel module that allows to handle the input subsystem from user land. Inside application data from tslib is translated to uinput events. For now only ABS_X, ABS_Y, ABS_PRESSURE and BTN_TOUCH. It behaves in a similar way than touchpad. Short tap sends button press event and long slide sends only xy coordinates. Currently using it in OpenELEC distribution and Kodi application. - -I think something like this was proposed in TODO. - -Also ST1232 raw input plugin is included for "st1232-touchscreen" (found on 7" display for Udoo board with i.MX6 SoC). ---- - configure.ac | 1 + - plugins/Makefile.am | 13 +- - plugins/plugins.h | 1 + - plugins/st1232-raw.c | 303 +++++++++++++++++++++++ - src/Makefile.am | 4 + - src/ts_load_module.c | 3 + - tests/Makefile.am | 5 +- - tests/testutils.c | 7 + - tests/ts_calibrate.c | 4 + - tests/ts_uinput_touch.c | 624 ++++++++++++++++++++++++++++++++++++++++++++++++ - 10 files changed, 963 insertions(+), 2 deletions(-) - create mode 100644 plugins/st1232-raw.c - create mode 100644 tests/ts_uinput_touch.c - -diff --git a/configure.ac b/configure.ac -index dfdf269..6984002 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -69,6 +69,7 @@ TSLIB_CHECK_MODULE([dmc], [yes], [Enable building of dmc raw module (HP iPaq DMC - TSLIB_CHECK_MODULE([input], [yes], [Enable building of generic input raw module (Linux /dev/input/eventN support)]) - TSLIB_CHECK_MODULE([touchkit], [yes], [Enable building of serial TouchKit raw module (Linux /dev/ttySX support)]) - TSLIB_CHECK_MODULE([galax], [yes], [Enable building of HID USB eGalax raw module (Linux /dev/hiddevN support)]) -+TSLIB_CHECK_MODULE([st1232], [yes], [Enable building of ST1232 raw module (Linux /dev/input/eventN support)]) - - - -diff --git a/plugins/Makefile.am b/plugins/Makefile.am -index e938e17..e8e89e0 100644 ---- a/plugins/Makefile.am -+++ b/plugins/Makefile.am -@@ -121,6 +121,12 @@ else - CY8MRLN_PALMPRE_MODULE = - endif - -+if ENABLE_ST1232_MODULE -+ST1232_MODULE = st1232.la -+else -+ST1232_MODULE = -+endif -+ - pluginexec_LTLIBRARIES = \ - $(LINEAR_MODULE) \ - $(DEJITTER_MODULE) \ -@@ -138,7 +144,8 @@ pluginexec_LTLIBRARIES = \ - $(INPUT_MODULE) \ - $(GALAX_MODULE) \ - $(TOUCHKIT_MODULE) \ -- $(CY8MRLN_PALMPRE_MODULE) -+ $(CY8MRLN_PALMPRE_MODULE) \ -+ $(ST1232_MODULE) - - variance_la_SOURCES = variance.c - variance_la_LDFLAGS = -module $(LTVSN) -@@ -197,3 +204,7 @@ linear_h2200_la_LDFLAGS = -module $(LTVSN) - - cy8mrln_palmpre_la_SOURCES = cy8mrln-palmpre.c - cy8mrln_palmpre_la_LDFLAGS = -module $(LTVSN) -+ -+st1232_la_SOURCES = st1232-raw.c -+st1232_la_LDFLAGS = -module $(LTVSN) -+st1232_la_LIBADD = $(top_builddir)/src/libts.la -diff --git a/plugins/plugins.h b/plugins/plugins.h -index 873aba5..d78877e 100644 ---- a/plugins/plugins.h -+++ b/plugins/plugins.h -@@ -16,3 +16,4 @@ TSLIB_DECLARE_MODULE(arctic2); - TSLIB_DECLARE_MODULE(tatung); - TSLIB_DECLARE_MODULE(input); - TSLIB_DECLARE_MODULE(cy8mrln_palmpre); -+TSLIB_DECLARE_MODULE(st1232); -diff --git a/plugins/st1232-raw.c b/plugins/st1232-raw.c -new file mode 100644 -index 0000000..f05d21d ---- /dev/null -+++ b/plugins/st1232-raw.c -@@ -0,0 +1,303 @@ -+/* -+ * tslib/plugins/st1232-raw.c -+ * -+ * based on input-raw.c -+ * 2015.06 Peter Vicman -+ * -+ * Original version: -+ * Copyright (C) 2001 Russell King. -+ * -+ * Rewritten for the Linux input device API: -+ * Copyright (C) 2002 Nicolas Pitre -+ * -+ * This file is placed under the LGPL. Please see the file -+ * COPYING for more details. -+ * -+ * -+ * Plugin for "st1232-touchscreen" (found on 7" display for Udoo board with i.MX6 SoC) -+ * -+ * Read raw x, y, and timestamp from a touchscreen device. -+ * Only first mt report is taken and send upstream. -+ * ST1232 driver doesn't report ABS_X/Y events - only MT - and -+ * doesn't report BTN_TOUCH event. -+ * -+ * In memory of my mom and dad ... -+ */ -+#include "config.h" -+ -+#include -+#include -+#include -+ -+#include -+#ifdef HAVE_UNISTD_H -+#include -+#endif -+#include -+#include -+ -+#include -+#ifndef EV_SYN /* 2.4 kernel headers */ -+# define EV_SYN 0x00 -+#endif -+#ifndef EV_CNT -+# define EV_CNT (EV_MAX+1) -+#endif -+#ifndef ABS_CNT -+# define ABS_CNT (ABS_MAX+1) -+#endif -+#ifndef KEY_CNT -+# define KEY_CNT (KEY_MAX+1) -+#endif -+ -+#ifndef ABS_MT_POSITION_X -+# define ABS_MT_POSITION_X 0x35 /* Center X ellipse position */ -+# define ABS_MT_POSITION_Y 0x36 /* Center Y ellipse position */ -+#endif -+ -+#define SYN_MT_REPORT 2 -+ -+#include "tslib-private.h" -+ -+#define GRAB_EVENTS_WANTED 1 -+#define GRAB_EVENTS_ACTIVE 2 -+ -+struct tslib_input { -+ struct tslib_module_info module; -+ -+ int current_x; -+ int current_y; -+ int current_p; -+ -+ int sane_fd; -+ int using_syn; -+ int grab_events; -+ int invert_y; -+}; -+ -+#define DIV_ROUND_UP(n,d) (((n) + (d) - 1) / (d)) -+#define BIT(nr) (1UL << (nr)) -+#define BIT_MASK(nr) (1UL << ((nr) % BITS_PER_LONG)) -+#define BIT_WORD(nr) ((nr) / BITS_PER_LONG) -+#define BITS_PER_BYTE 8 -+#define BITS_PER_LONG (sizeof(long) * BITS_PER_BYTE) -+#define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long)) -+ -+static int check_fd(struct tslib_input *i) -+{ -+ struct tsdev *ts = i->module.dev; -+ int version; -+ long evbit[BITS_TO_LONGS(EV_CNT)]; -+ long absbit[BITS_TO_LONGS(ABS_CNT)]; -+ -+ if (ioctl(ts->fd, EVIOCGVERSION, &version) < 0) { -+ fprintf(stderr, "tslib: Selected device is not a Linux input event device\n"); -+ return -1; -+ } -+ -+ if (version < EV_VERSION) { -+ fprintf(stderr, "tslib: Selected device uses a different version of the event protocol than tslib was compiled for\n"); -+ return -1; -+ } -+ -+ if ( (ioctl(ts->fd, EVIOCGBIT(0, sizeof(evbit)), evbit) < 0) || -+ !(evbit[BIT_WORD(EV_ABS)] & BIT_MASK(EV_ABS)) || -+ !(evbit[BIT_WORD(EV_KEY)] & BIT_MASK(EV_KEY)) ) { -+ fprintf(stderr, "tslib: Selected device is not a touchscreen (must support ABS and KEY event types)\n"); -+ return -1; -+ } -+ -+ if ((ioctl(ts->fd, EVIOCGBIT(EV_ABS, sizeof(absbit)), absbit)) < 0 || -+ !(absbit[BIT_WORD(ABS_MT_POSITION_X)] & BIT_MASK(ABS_MT_POSITION_X)) || -+ !(absbit[BIT_WORD(ABS_MT_POSITION_Y)] & BIT_MASK(ABS_MT_POSITION_Y))) { -+ fprintf(stderr, "tslib: Selected device is not a touchscreen (must support ABS_MT_POSITION_X and ABS_MT_POSITION_Y events)\n"); -+ return -1; -+ } -+ -+ if (evbit[BIT_WORD(EV_SYN)] & BIT_MASK(EV_SYN)) -+ i->using_syn = 1; -+ -+ if (i->grab_events == GRAB_EVENTS_WANTED) { -+ if (ioctl(ts->fd, EVIOCGRAB, (void *)1)) { -+ fprintf(stderr, "tslib: Unable to grab selected input device\n"); -+ return -1; -+ } -+ i->grab_events = GRAB_EVENTS_ACTIVE; -+ } -+ -+ return 0; -+} -+ -+static int ts_st1232_read(struct tslib_module_info *inf, -+ struct ts_sample *samp, int nr) -+{ -+ struct tslib_input *i = (struct tslib_input *)inf; -+ struct tsdev *ts = inf->dev; -+ struct input_event ev; -+ int ret = nr; -+ int total = 0; -+ int mt_cnt = 0; /* data for first finger */ -+ -+ if (i->sane_fd == -1) -+ i->sane_fd = check_fd(i); -+ -+ if (i->sane_fd == -1) -+ return 0; -+ -+ if (i->using_syn) { -+ while (total < nr) { -+ ret = read(ts->fd, &ev, sizeof(struct input_event)); -+ if (ret < (int) sizeof(struct input_event)) { -+ total = -1; -+ break; -+ } -+ -+ switch (ev.type) { -+ case EV_SYN: -+ if (ev.code == SYN_MT_REPORT) { -+ mt_cnt++; /* data for next finger will come */ -+ } else if (ev.code == SYN_REPORT) { -+ /* fill out a new complete event */ -+ /* always send coordinate (last one on finger released) */ -+ samp->x = i->current_x; -+ samp->y = i->current_y; -+ samp->pressure = i->current_p; /* is 0 on finger released */ -+ samp->tv = ev.time; -+ -+ i->current_p = 0; /* will be set again when getting xy cordinate */ -+ samp++; -+ total++; -+ mt_cnt = 0; -+ } -+ break; -+ case EV_ABS: -+ if (mt_cnt > 0) -+ break; /* save data only for first finger */ -+ -+ switch (ev.code) { -+ case ABS_MT_POSITION_X: -+ i->current_x = ev.value; -+ i->current_p = 255; /* touched */ -+ break; -+ case ABS_MT_POSITION_Y: -+ i->current_y = ev.value; -+ i->current_p = 255; /* touched */ -+ -+ if (i->invert_y > 0) -+ i->current_y = i->invert_y - i->current_y; -+ break; -+ } -+ break; -+ } -+ } -+ -+ ret = total; -+ } else { -+ fprintf(stderr, "tslib: st1232 and not using syn\n"); -+ sleep(1); -+ } -+ -+ return ret; -+} -+ -+static int ts_st1232_fini(struct tslib_module_info *inf) -+{ -+ struct tslib_input *i = (struct tslib_input *)inf; -+ struct tsdev *ts = inf->dev; -+ -+ if (i->grab_events == GRAB_EVENTS_ACTIVE) { -+ if (ioctl(ts->fd, EVIOCGRAB, (void *)0)) { -+ fprintf(stderr, "tslib: Unable to un-grab selected input device\n"); -+ } -+ } -+ -+ free(inf); -+ return 0; -+} -+ -+static const struct tslib_ops __ts_st1232_ops = { -+ .read = ts_st1232_read, -+ .fini = ts_st1232_fini, -+}; -+ -+static int parse_raw_grab(struct tslib_module_info *inf, char *str, void *data) -+{ -+ struct tslib_input *i = (struct tslib_input *)inf; -+ unsigned long v; -+ int err = errno; -+ -+ v = strtoul(str, NULL, 0); -+ -+ if (v == ULONG_MAX && errno == ERANGE) -+ return -1; -+ -+ errno = err; -+ switch ((int)data) { -+ case 1: -+ if (v) -+ i->grab_events = GRAB_EVENTS_WANTED; -+ break; -+ default: -+ return -1; -+ } -+ return 0; -+} -+ -+static int parse_invert_y(struct tslib_module_info *inf, char *str, void *data) -+{ -+ struct tslib_input *i = (struct tslib_input *)inf; -+ int v; -+ int err = errno; -+ -+ v = atoi(str); -+ -+ if (v < 0) -+ return -1; -+ -+ errno = err; -+ switch ((int)data) { -+ case 1: -+ i->invert_y = v; -+ break; -+ default: -+ return -1; -+ } -+ return 0; -+} -+ -+static const struct tslib_vars raw_vars[] = -+{ -+ { "grab_events", (void *)1, parse_raw_grab }, -+ { "invert_y", (void *)1, parse_invert_y }, -+}; -+ -+#define NR_VARS (sizeof(raw_vars) / sizeof(raw_vars[0])) -+ -+TSAPI struct tslib_module_info *st1232_mod_init(struct tsdev *dev, const char *params) -+{ -+ struct tslib_input *i; -+ -+ i = malloc(sizeof(struct tslib_input)); -+ if (i == NULL) -+ return NULL; -+ -+ i->module.ops = &__ts_st1232_ops; -+ i->current_x = 0; -+ i->current_y = 0; -+ i->current_p = 0; -+ i->sane_fd = -1; -+ i->using_syn = 0; -+ i->grab_events = 0; -+ i->invert_y = 0; -+ -+ if (tslib_parse_vars(&i->module, raw_vars, NR_VARS, params)) { -+ free(i); -+ return NULL; -+ } -+ -+ return &(i->module); -+} -+ -+#ifndef TSLIB_STATIC_ST1232_MODULE -+ TSLIB_MODULE_INIT(st1232_mod_init); -+#endif -diff --git a/src/Makefile.am b/src/Makefile.am -index 5278d82..b561aa8 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -71,6 +71,10 @@ if ENABLE_STATIC_INPUT_MODULE - libts_la_SOURCES += $(top_srcdir)/plugins/input-raw.c - endif - -+if ENABLE_STATIC_ST1232_MODULE -+libts_la_SOURCES += $(top_srcdir)/plugins/st1232-raw.c -+endif -+ - libts_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ - -release $(LT_RELEASE) -export-dynamic - libts_la_LIBADD = -ldl -diff --git a/src/ts_load_module.c b/src/ts_load_module.c -index 00486be..886ca0a 100644 ---- a/src/ts_load_module.c -+++ b/src/ts_load_module.c -@@ -73,6 +73,9 @@ static const struct { - #ifdef TSLIB_STATIC_VARIANCE_MODULE - { "variance", variance_mod_init }, - #endif -+#ifdef TSLIB_STATIC_ST1232_MODULE -+ { "st1232", st1232_mod_init }, -+#endif - }; - - #define countof(arr) (sizeof(arr) / sizeof((arr)[0])) -diff --git a/tests/Makefile.am b/tests/Makefile.am -index b76522d..2e80c18 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -11,7 +11,7 @@ - AM_CFLAGS = -DTS_POINTERCAL=\"@TS_POINTERCAL@\" $(DEBUGFLAGS) - INCLUDES = -I$(top_srcdir)/src - --bin_PROGRAMS = ts_test ts_calibrate ts_print ts_print_raw ts_harvest -+bin_PROGRAMS = ts_test ts_calibrate ts_print ts_print_raw ts_harvest ts_uinput_touch - - ts_test_SOURCES = ts_test.c fbutils.c fbutils.h font_8x8.c font_8x16.c font.h - ts_test_LDADD = $(top_builddir)/src/libts.la -@@ -27,3 +27,6 @@ ts_calibrate_LDADD = $(top_builddir)/src/libts.la - - ts_harvest_SOURCES = ts_harvest.c fbutils.c fbutils.h testutils.c testutils.h font_8x8.c font_8x16.c font.h - ts_harvest_LDADD = $(top_builddir)/src/libts.la -+ -+ts_uinput_touch_SOURCES = ts_uinput_touch.c testutils.c testutils.h -+ts_uinput_touch_LDADD = $(top_builddir)/src/libts.la -diff --git a/tests/testutils.c b/tests/testutils.c -index dbd5b41..bc3756f 100644 ---- a/tests/testutils.c -+++ b/tests/testutils.c -@@ -15,6 +15,7 @@ - #include - #include - #include -+#include - #include - #include "tslib.h" - #include "fbutils.h" -@@ -37,6 +38,9 @@ void getxy(struct tsdev *ts, int *x, int *y) - - do { - if (ts_read_raw(ts, &samp[0], 1) < 0) { -+ if (errno == EINTR) -+ return; -+ - perror("ts_read"); - close_framebuffer (); - exit(1); -@@ -50,6 +54,9 @@ void getxy(struct tsdev *ts, int *x, int *y) - if (index < MAX_SAMPLES-1) - index++; - if (ts_read_raw(ts, &samp[index], 1) < 0) { -+ if (errno == EINTR) -+ return; -+ - perror("ts_read"); - close_framebuffer (); - exit(1); -diff --git a/tests/ts_calibrate.c b/tests/ts_calibrate.c -index eb0aca3..522fa7c 100644 ---- a/tests/ts_calibrate.c -+++ b/tests/ts_calibrate.c -@@ -237,12 +237,16 @@ int main() - - get_sample (ts, &cal, 0, 50, 50, "Top left"); - clearbuf(ts); -+ usleep(500000); - get_sample (ts, &cal, 1, xres - 50, 50, "Top right"); - clearbuf(ts); -+ usleep(500000); - get_sample (ts, &cal, 2, xres - 50, yres - 50, "Bot right"); - clearbuf(ts); -+ usleep(500000); - get_sample (ts, &cal, 3, 50, yres - 50, "Bot left"); - clearbuf(ts); -+ usleep(500000); - get_sample (ts, &cal, 4, xres / 2, yres / 2, "Center"); - - if (perform_calibration (&cal)) { -diff --git a/tests/ts_uinput_touch.c b/tests/ts_uinput_touch.c -new file mode 100644 -index 0000000..60efc46 ---- /dev/null -+++ b/tests/ts_uinput_touch.c -@@ -0,0 +1,624 @@ -+/* -+ * tslib/src/ts_uinput_touch.c -+ * -+ * Copyright (C) 2001 Russell King. -+ * Copyright (C) 2015 Peter Vicman. -+ * -+ * This file is placed under the GPL. Please see the file -+ * COPYING for more details. -+ * -+ * -+ * Takes tslib events and send them to uinput as -+ * BTN_TOUCH, ABS_X, ABS_Y and ABS_PRESSURE values. -+ * Short tap send button event and longer tap send only coordinates. -+ * Tested only with Kodi application. -+ * -+ * code based on -+ * tslib/src/ts_test.c -+ * tslib/src/ts_calibrate.c -+ * http://thiemonge.org/getting-started-with-uinput -+ * http://lkcl.net/software/uinput/ -+ * -+ * In memory of my mom and dad ... -+ */ -+ -+#include "config.h" -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "tslib.h" -+#include "testutils.h" -+ -+#define die(str, args...) do { \ -+ perror(str); \ -+ exit(EXIT_FAILURE); \ -+ } while(0); -+ -+#define SET_ABS_MINMAX(dev, arg, min, max) do { \ -+ (dev).absmin[arg] = min; \ -+ (dev).absmax[arg] = max; \ -+ } while(0); -+ -+#define CANCEL_CALIBRATION if (! calibration_mode) return; else {} -+ -+#define SOCK_PATH "/tmp/ts_calibrate.socket" -+ -+#define CROSSHAIR_STR1 "Top left" -+#define CROSSHAIR_STR2 "Top right" -+#define CROSSHAIR_STR3 "Bottom right" -+#define CROSSHAIR_STR4 "Bottom left" -+#define CROSSHAIR_STR5 "Center" -+ -+typedef struct { -+ int x[5], xfb[5]; -+ int y[5], yfb[5]; -+ int a[7]; -+} calibration; -+ -+char *uinput_names[] = {"/dev/uinput", "/dev/input/uinput", "/dev/misc/uinput"}; -+#define UINPUT_NAMES_NUM ((int) (sizeof(uinput_names)/sizeof(char *))) -+ -+__u32 xres = 0, yres = 0; -+struct timeval tv_short_tap = {0, 300}; /* sec, msec */ -+bool calibration_mode = false; -+int sock = -1; -+ -+static void daemonize() { -+ pid_t pid; -+ -+ pid = fork(); -+ if (pid == -1) { -+ die("failed to fork while daemonising (errno=%d)", errno) -+ } else if (pid != 0) { -+ exit(0); -+ } -+ -+ umask(0); -+ -+ if (setsid() == -1) { -+ die("failed to become a session leader while daemonising(errno=%d)", errno) -+ } -+ -+ signal(SIGHUP,SIG_IGN); -+ pid=fork(); -+ if (pid == -1) { -+ die("failed to fork while daemonizing (errno=%d)", errno) -+ } else if (pid != 0) { -+ exit(0); -+ } -+ -+ if (chdir("/") == -1) { -+ die("failed to change working directory while daemonizing (errno=%d)", errno) -+ } -+ -+ umask(0); -+ close(STDIN_FILENO); -+ close(STDOUT_FILENO); -+ close(STDERR_FILENO); -+ -+ if (open("/dev/null", O_RDONLY) == -1) { -+ die("failed to reopen stdin while daemonizing (errno=%d)", errno) -+ } -+ -+ if (open("/dev/null", O_WRONLY) == -1) { -+ die("failed to reopen stdout while daemonizing (errno=%d)", errno) -+ } -+ -+ if (open("/dev/null", O_RDWR) == -1) { -+ die("failed to reopen stderr while daemonizing (errno=%d)", errno) -+ } -+} -+ -+static void sig(int sig) -+{ -+ fflush(stderr); -+ printf("signal %d caught\n", sig); -+ fflush(stdout); -+ exit(1); -+} -+ -+static void set_ioctl(int fd, unsigned int cmd, __u16 value) -+{ -+ if (ioctl(fd, cmd, value) < 0) -+ die("error: ioctl") -+} -+ -+static int send_event(int fd, __u16 type, __u16 code, __s32 value) -+{ -+ struct input_event event; -+ int ret; -+ -+ memset(&event, 0, sizeof(event)); -+ event.type = type; -+ event.code = code; -+ event.value = value; -+ -+ ret = write(fd, &event, sizeof(event)); -+ if (ret != sizeof(event)) { -+ fprintf(stderr, "Error on send_event"); -+ return -1; -+ } -+ -+ return 0; -+} -+ -+static void signal_handler(int signal_number) { -+ if (signal_number == SIGUSR1) -+ calibration_mode = true; -+ else if (signal_number == SIGUSR2) -+ calibration_mode = false; -+ else -+ return; -+ -+ printf("signal handler %d, current calibration_mode=%d\n", signal_number, calibration_mode == true ? 1 : 0); -+ if (calibration_mode) { -+ tv_short_tap.tv_sec += 600; /* little more time */ -+ } else { -+ tv_short_tap.tv_sec -= 600; -+ } -+} -+ -+static int perform_calibration(calibration *cal) { -+ int j; -+ float n, x, y, x2, y2, xy, z, zx, zy; -+ float det, a, b, c, e, f, i; -+ float scaling = 65536.0; -+ -+// Get sums for matrix -+ n = x = y = x2 = y2 = xy = 0; -+ for(j=0;j<5;j++) { -+ n += 1.0; -+ x += (float)cal->x[j]; -+ y += (float)cal->y[j]; -+ x2 += (float)(cal->x[j]*cal->x[j]); -+ y2 += (float)(cal->y[j]*cal->y[j]); -+ xy += (float)(cal->x[j]*cal->y[j]); -+ } -+ -+// Get determinant of matrix -- check if determinant is too small -+ det = n*(x2*y2 - xy*xy) + x*(xy*y - x*y2) + y*(x*xy - y*x2); -+ if(det < 0.1 && det > -0.1) { -+ printf("ts_calibrate: determinant is too small -- %f\n",det); -+ return 0; -+ } -+ -+// Get elements of inverse matrix -+ a = (x2*y2 - xy*xy)/det; -+ b = (xy*y - x*y2)/det; -+ c = (x*xy - y*x2)/det; -+ e = (n*y2 - y*y)/det; -+ f = (x*y - n*xy)/det; -+ i = (n*x2 - x*x)/det; -+ -+// Get sums for x calibration -+ z = zx = zy = 0; -+ for(j=0;j<5;j++) { -+ z += (float)cal->xfb[j]; -+ zx += (float)(cal->xfb[j]*cal->x[j]); -+ zy += (float)(cal->xfb[j]*cal->y[j]); -+ } -+ -+// Now multiply out to get the calibration for framebuffer x coord -+ cal->a[0] = (int)((a*z + b*zx + c*zy)*(scaling)); -+ cal->a[1] = (int)((b*z + e*zx + f*zy)*(scaling)); -+ cal->a[2] = (int)((c*z + f*zx + i*zy)*(scaling)); -+ -+ printf("%f %f %f\n",(a*z + b*zx + c*zy), -+ (b*z + e*zx + f*zy), -+ (c*z + f*zx + i*zy)); -+ -+// Get sums for y calibration -+ z = zx = zy = 0; -+ for(j=0;j<5;j++) { -+ z += (float)cal->yfb[j]; -+ zx += (float)(cal->yfb[j]*cal->x[j]); -+ zy += (float)(cal->yfb[j]*cal->y[j]); -+ } -+ -+// Now multiply out to get the calibration for framebuffer y coord -+ cal->a[3] = (int)((a*z + b*zx + c*zy)*(scaling)); -+ cal->a[4] = (int)((b*z + e*zx + f*zy)*(scaling)); -+ cal->a[5] = (int)((c*z + f*zx + i*zy)*(scaling)); -+ -+ printf("%f %f %f\n",(a*z + b*zx + c*zy), -+ (b*z + e*zx + f*zy), -+ (c*z + f*zx + i*zy)); -+ -+// If we got here, we're OK, so assign scaling to a[6] and return -+ cal->a[6] = (int)scaling; -+ return 1; -+/* -+// This code was here originally to just insert default values -+ for(j=0;j<7;j++) { -+ c->a[j]=0; -+ } -+ c->a[1] = c->a[5] = c->a[6] = 1; -+ return 1; -+*/ -+} -+ -+static void get_sample(struct tsdev *ts, calibration *cal, -+ int index, int x, int y, char *name) -+{ -+ printf("getting sample for: %s\n", name); -+ getxy(ts, &cal->x[index], &cal->y[index]); -+ cal->xfb[index] = x; -+ cal->yfb[index] = y; -+ printf("%s: X = %4d Y = %4d\n", name, cal->x[index], cal->y[index]); -+} -+ -+static void clearbuf(struct tsdev *ts) -+{ -+ int fd = ts_fd(ts); -+ fd_set fdset; -+ struct timeval tv; -+ int nfds; -+ struct ts_sample sample; -+ -+ while (1) { -+ FD_ZERO(&fdset); -+ FD_SET(fd, &fdset); -+ -+ tv.tv_sec = 0; -+ tv.tv_usec = 0; -+ -+ nfds = select(fd + 1, &fdset, NULL, NULL, &tv); -+ if (nfds == 0) break; -+ -+ if (ts_read_raw(ts, &sample, 1) < 0) { -+ perror("ts_read"); -+ exit(1); -+ } -+ } -+} -+ -+/* we don't use fb but this function is called in case of an error */ -+void close_framebuffer(void) {} -+ -+static void send_socket_crosshair_str(char *str) -+{ -+ if (send(sock, str, strlen(str), 0) == -1) { -+ printf("send error\n"); -+ } -+} -+ -+static void run_calibration(struct tsdev *ts) -+{ -+ calibration cal; -+ int cal_fd; -+ char cal_buffer[256]; -+ char *calfile; -+ unsigned int i, len; -+ -+ send_socket_crosshair_str(CROSSHAIR_STR1); /* show first touch point */ -+ clearbuf(ts); -+ get_sample(ts, &cal, 0, 50, 50, CROSSHAIR_STR1); -+ CANCEL_CALIBRATION -+ send_socket_crosshair_str(CROSSHAIR_STR2); -+ clearbuf(ts); -+ get_sample(ts, &cal, 1, xres - 50, 50, CROSSHAIR_STR2); -+ CANCEL_CALIBRATION -+ send_socket_crosshair_str(CROSSHAIR_STR3); -+ clearbuf(ts); -+ get_sample(ts, &cal, 2, xres - 50, yres - 50, CROSSHAIR_STR3); -+ CANCEL_CALIBRATION -+ send_socket_crosshair_str(CROSSHAIR_STR4); -+ clearbuf(ts); -+ get_sample(ts, &cal, 3, 50, yres - 50, CROSSHAIR_STR4); -+ CANCEL_CALIBRATION -+ send_socket_crosshair_str(CROSSHAIR_STR5); -+ clearbuf(ts); -+ get_sample(ts, &cal, 4, xres / 2, yres / 2, CROSSHAIR_STR5); -+ CANCEL_CALIBRATION -+ send_socket_crosshair_str("done"); -+ clearbuf(ts); -+ -+ if (perform_calibration(&cal)) { -+ printf ("Calibration constants: "); -+ for (i = 0; i < 7; i++) -+ printf("%d ", cal.a[i]); -+ -+ printf("\n"); -+ calfile = getenv("TSLIB_CALIBFILE"); -+ if (calfile != NULL) { -+ cal_fd = open(calfile, O_CREAT | O_TRUNC | O_RDWR, -+ S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); -+ -+ if (cal_fd == -1) { -+ printf("Calibration failed - can't open calibration file %s.\n", calfile); -+ return; -+ } -+ } else { -+ cal_fd = open(TS_POINTERCAL, O_CREAT | O_TRUNC | O_RDWR, -+ S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); -+ -+ if (cal_fd == -1) { -+ printf("Calibration failed - can't open calibration file %s.\n", TS_POINTERCAL); -+ return; -+ } -+ } -+ -+ len = sprintf(cal_buffer, "%d %d %d %d %d %d %d %d %d", -+ cal.a[1], cal.a[2], cal.a[0], -+ cal.a[4], cal.a[5], cal.a[3], cal.a[6], -+ xres, yres); -+ write(cal_fd, cal_buffer, len); -+ close(cal_fd); -+ } else { -+ printf("Calibration failed - wrong data.\n"); -+ } -+} -+ -+int get_resolution(void) -+{ -+ static char *fbdevice; -+ int fd; -+ static struct fb_var_screeninfo var; -+ -+ fbdevice = getenv("TSLIB_FBDEVICE"); -+ if (fbdevice == NULL) -+ return -1; -+ -+ printf("using fb device: %s\n", fbdevice); -+ fd = open(fbdevice, O_RDWR); -+ if (fd == -1) { -+ perror("open fbdevice"); -+ return -1; -+ } -+ -+ if (ioctl(fd, FBIOGET_VSCREENINFO, &var) < 0) { -+ perror("ioctl FBIOGET_VSCREENINFO"); -+ close(fd); -+ return -1; -+ } -+ -+ xres = var.xres; -+ yres = var.yres; -+ -+ close(fd); -+ return 0; -+} -+ -+int main(int argc, char *argv[]) -+{ -+ int c; -+ char *tsdevice; -+ struct tsdev *ts; -+ int ret; -+ struct ts_sample samp; -+ int uinput_fd; -+ struct uinput_user_dev uidev; -+ int daemon = 0; -+ struct timeval tv_last; -+ struct timeval tv_sub; -+ char *touch_str; -+ int val; -+ struct sigaction sa; -+ struct sockaddr_un remote_addr; -+ -+ touch_str = getenv("TSLIB_TAP_TIME"); -+ if (touch_str != NULL) { -+ val = atoi(touch_str); -+ if (val < 1000) { -+ tv_short_tap.tv_sec = 0; -+ tv_short_tap.tv_usec = val; -+ } else { -+ tv_short_tap.tv_sec = val / 1000; -+ tv_short_tap.tv_usec = val % 1000; -+ } -+ } -+ -+ get_resolution(); -+ -+ while ((c = getopt(argc, argv, "?dt:x:y:")) != -1) { -+ switch (c) { -+ case 'd': -+ daemon = 1; -+ break; -+ case 't': -+ val = atoi(optarg); -+ if (val < 1000) { -+ tv_short_tap.tv_sec = 0; -+ tv_short_tap.tv_usec = val; -+ } else { -+ tv_short_tap.tv_sec = val / 1000; -+ tv_short_tap.tv_usec = val % 1000; -+ } -+ -+ break; -+ case 'x': -+ xres = atoi(optarg); -+ break; -+ case 'y': -+ yres = atoi(optarg); -+ break; -+ case '?': -+ if (isprint(optopt)) -+ fprintf (stderr, "Unknown option '-%c'.\n", optopt); -+ else -+ fprintf (stderr, "Unknown option character '\\x%x'.\n", optopt); -+ return 1; -+ default: -+ die("getopt") -+ } -+ } -+ -+ printf("resolution: %dx%d\n", xres, yres); -+ -+ signal(SIGSEGV, sig); -+ signal(SIGINT, sig); -+ signal(SIGTERM, sig); -+ -+ tsdevice = getenv("TSLIB_TSDEVICE"); -+ -+ if (tsdevice == NULL) { -+ errno = ENOENT; -+ die("error: TSLIB_TSDEVICE") -+ } -+ -+ printf("using touch device: %s\n", tsdevice); -+ -+ ts = ts_open(tsdevice, 0); // 0 nonblock -+ if (!ts) { -+ die("ts_open") -+ } -+ -+ if (ts_config(ts)) { -+ die("ts_config") -+ } -+ -+ system("modprobe uinput"); -+ -+ for (c=0; c < UINPUT_NAMES_NUM; c++) { -+ uinput_fd = open(uinput_names[c], O_WRONLY | O_NONBLOCK); -+ if (uinput_fd >= 0) -+ break; -+ } -+ -+ if (uinput_fd < 0) -+ die("error: opening uinput") -+ -+ if (tv_short_tap.tv_sec == 0) -+ printf("Short tap time: %li msec\n", tv_short_tap.tv_usec); -+ else -+ printf("Short tap time: %li.%li sec\n", tv_short_tap.tv_sec, tv_short_tap.tv_usec); -+ -+ memset (&sa, 0, sizeof (sa)); -+ sa.sa_handler = &signal_handler; -+ sigaction(SIGUSR1, &sa, NULL); -+ sigaction(SIGUSR2, &sa, NULL); -+ -+ if (daemon == 1) { -+ printf("daemonizing...\n"); -+ daemonize(); -+ } -+ -+ set_ioctl(uinput_fd, UI_SET_EVBIT, EV_SYN); -+ set_ioctl(uinput_fd, UI_SET_EVBIT, EV_KEY); -+ set_ioctl(uinput_fd, UI_SET_KEYBIT, BTN_TOUCH); -+ set_ioctl(uinput_fd, UI_SET_EVBIT, EV_ABS); -+ set_ioctl(uinput_fd, UI_SET_ABSBIT, ABS_X); -+ set_ioctl(uinput_fd, UI_SET_ABSBIT, ABS_Y); -+ set_ioctl(uinput_fd, UI_SET_ABSBIT, ABS_PRESSURE); -+ -+ memset(&uidev, 0, sizeof(uidev)); -+ -+ snprintf(uidev.name, UINPUT_MAX_NAME_SIZE, "tslib to uinput daemon"); -+ SET_ABS_MINMAX(uidev, ABS_X, 0, xres) -+ SET_ABS_MINMAX(uidev, ABS_Y, 0, yres) -+ SET_ABS_MINMAX(uidev, ABS_PRESSURE, 0, 255) -+ -+ uidev.id.bustype = BUS_USB; -+ uidev.id.vendor = 0x34a5; -+ uidev.id.product = 0x67b8; -+ uidev.id.version = 1; -+ -+ if (write(uinput_fd, &uidev, sizeof(uidev)) < 0) -+ die("error: write") -+ -+ if (ioctl(uinput_fd, UI_DEV_CREATE) < 0) -+ die("error: ioctl UI_DEV_CREATE") -+ -+ tv_short_tap.tv_usec *= 1000; /* msec to usec */ -+ timerclear(&tv_last); -+ while (1) { -+ touch_str = ""; -+ if (calibration_mode) { -+ usleep(250000); /* app become ready */ -+ printf("calibration mode started\n"); -+ -+ sock = socket(AF_UNIX, SOCK_STREAM, 0); -+ if (sock == -1) { -+ die("socket"); -+ } -+ -+ printf("trying to connect\n"); -+ -+ remote_addr.sun_family = AF_UNIX; -+ strcpy(remote_addr.sun_path, SOCK_PATH); -+ val = strlen(remote_addr.sun_path) + sizeof(remote_addr.sun_family); -+ if (connect(sock, (struct sockaddr *) &remote_addr, val) == -1) { -+ calibration_mode = false; -+ close(sock); -+ printf("connect error, skip calibration\n"); -+ usleep(200000); -+ continue; -+ } -+ -+ printf("connected\n"); -+ run_calibration(ts); -+ calibration_mode = false; -+ close(sock); -+ printf("calibration mode finished\n"); -+ } -+ -+ ret = ts_read(ts, &samp, 1); -+ if (ret < 0) { -+ usleep(200000); -+ continue; -+ } else if (ret == 0) { -+ /* can't grab ts device */ -+ usleep(400000); -+ } else if (ret != 1) -+ continue; -+ -+ send_event(uinput_fd, EV_ABS, ABS_X, samp.x); -+ send_event(uinput_fd, EV_ABS, ABS_Y, samp.y); -+ -+ if (samp.pressure > 0) { /* touched */ -+ send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 255); -+ send_event(uinput_fd, EV_SYN, 0, 0); -+ -+ if (timerisset(&tv_last) == false) { -+ memcpy(&tv_last, &samp.tv, sizeof(struct timeval)); /* touched first time */ -+ touch_str = "touched first"; -+ } -+ } else { /* released */ -+ timersub(&samp.tv, &tv_last, &tv_sub); -+ if (timercmp(&tv_sub, &tv_short_tap, <=)) { -+ send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 255); -+ send_event(uinput_fd, EV_KEY, BTN_TOUCH, 1); -+ send_event(uinput_fd, EV_SYN, 0, 0); -+ send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); -+ send_event(uinput_fd, EV_KEY, BTN_TOUCH, 0); -+ send_event(uinput_fd, EV_SYN, 0, 0); -+ -+ touch_str = "released and send button"; -+ } else { -+ send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); -+ send_event(uinput_fd, EV_SYN, 0, 0); -+ touch_str = "released"; -+ } -+ -+ timerclear(&tv_last); -+ } -+ -+ printf("%ld.%06ld: %6d %6d %6d %s\n", samp.tv.tv_sec, samp.tv.tv_usec, -+ samp.x, samp.y, samp.pressure, touch_str); -+ } -+ -+ if (ioctl(uinput_fd, UI_DEV_DESTROY) < 0) -+ die("error: ioctl UI_DEV_DESTROY") -+ -+ close(uinput_fd); -+ -+ return 0; -+} - -From b64b63ac2fc791cad6e79cf9236c47b928960c2e Mon Sep 17 00:00:00 2001 -From: vpeter4 -Date: Sat, 4 Jul 2015 13:46:56 +0200 -Subject: [PATCH 03/11] ts_uinput_touch: add BTN_RIGHT event if tapped for more - than 300 ms and less than a second BTN_RIGHT event is send - ---- - tests/ts_uinput_touch.c | 38 ++++++++++++++++++++++++++------------ - 1 file changed, 26 insertions(+), 12 deletions(-) - mode change 100644 => 100755 tests/ts_uinput_touch.c - -diff --git a/tests/ts_uinput_touch.c b/tests/ts_uinput_touch.c -old mode 100644 -new mode 100755 -index 60efc46..489a22f ---- a/tests/ts_uinput_touch.c -+++ b/tests/ts_uinput_touch.c -@@ -9,8 +9,9 @@ - * - * - * Takes tslib events and send them to uinput as -- * BTN_TOUCH, ABS_X, ABS_Y and ABS_PRESSURE values. -- * Short tap send button event and longer tap send only coordinates. -+ * BTN_TOUCH, BTN_RIGHT, ABS_X, ABS_Y and ABS_PRESSURE values. -+ * Short tap send button touch event, little longer tap send button right event -+ * and longer tap send only coordinates. - * Tested only with Kodi application. - * - * code based on -@@ -77,7 +78,8 @@ char *uinput_names[] = {"/dev/uinput", "/dev/input/uinput", "/dev/misc/uinput"}; - #define UINPUT_NAMES_NUM ((int) (sizeof(uinput_names)/sizeof(char *))) - - __u32 xres = 0, yres = 0; --struct timeval tv_short_tap = {0, 300}; /* sec, msec */ -+struct timeval tv_short_tap = {0, 300}; /* sec, msec, short tap sends BTN_TOUCH */ -+struct timeval tv_right_tap = {1, 0}; /* sec, msec, longer tap sends BTN_RIGHT */ - bool calibration_mode = false; - int sock = -1; - -@@ -169,11 +171,6 @@ static void signal_handler(int signal_number) { - return; - - printf("signal handler %d, current calibration_mode=%d\n", signal_number, calibration_mode == true ? 1 : 0); -- if (calibration_mode) { -- tv_short_tap.tv_sec += 600; /* little more time */ -- } else { -- tv_short_tap.tv_sec -= 600; -- } - } - - static int perform_calibration(calibration *cal) { -@@ -501,6 +498,11 @@ int main(int argc, char *argv[]) - else - printf("Short tap time: %li.%li sec\n", tv_short_tap.tv_sec, tv_short_tap.tv_usec); - -+ if (tv_right_tap.tv_sec == 0) -+ printf("Right tap time: %li msec\n", tv_right_tap.tv_usec); -+ else -+ printf("Right tap time: %li.%li sec\n", tv_right_tap.tv_sec, tv_right_tap.tv_usec); -+ - memset (&sa, 0, sizeof (sa)); - sa.sa_handler = &signal_handler; - sigaction(SIGUSR1, &sa, NULL); -@@ -511,10 +513,11 @@ int main(int argc, char *argv[]) - daemonize(); - } - -- set_ioctl(uinput_fd, UI_SET_EVBIT, EV_SYN); -- set_ioctl(uinput_fd, UI_SET_EVBIT, EV_KEY); -+ set_ioctl(uinput_fd, UI_SET_EVBIT, EV_SYN); -+ set_ioctl(uinput_fd, UI_SET_EVBIT, EV_KEY); - set_ioctl(uinput_fd, UI_SET_KEYBIT, BTN_TOUCH); -- set_ioctl(uinput_fd, UI_SET_EVBIT, EV_ABS); -+ set_ioctl(uinput_fd, UI_SET_KEYBIT, BTN_RIGHT); -+ set_ioctl(uinput_fd, UI_SET_EVBIT, EV_ABS); - set_ioctl(uinput_fd, UI_SET_ABSBIT, ABS_X); - set_ioctl(uinput_fd, UI_SET_ABSBIT, ABS_Y); - set_ioctl(uinput_fd, UI_SET_ABSBIT, ABS_PRESSURE); -@@ -538,6 +541,8 @@ int main(int argc, char *argv[]) - die("error: ioctl UI_DEV_CREATE") - - tv_short_tap.tv_usec *= 1000; /* msec to usec */ -+ tv_right_tap.tv_usec *= 1000; /* msec to usec */ -+ - timerclear(&tv_last); - while (1) { - touch_str = ""; -@@ -601,7 +606,16 @@ int main(int argc, char *argv[]) - send_event(uinput_fd, EV_KEY, BTN_TOUCH, 0); - send_event(uinput_fd, EV_SYN, 0, 0); - -- touch_str = "released and send button"; -+ touch_str = "released and send tap"; -+ } else if (timercmp(&tv_sub, &tv_right_tap, <=)) { -+ send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 255); -+ send_event(uinput_fd, EV_KEY, BTN_RIGHT, 1); -+ send_event(uinput_fd, EV_SYN, 0, 0); -+ send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); -+ send_event(uinput_fd, EV_KEY, BTN_RIGHT, 0); -+ send_event(uinput_fd, EV_SYN, 0, 0); -+ -+ touch_str = "released and send right"; - } else { - send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); - send_event(uinput_fd, EV_SYN, 0, 0); - -From 0c95545167711eb2e906c8ef885956f3395e945a Mon Sep 17 00:00:00 2001 -From: Peter Vicman -Date: Mon, 31 Aug 2015 10:52:51 +0200 -Subject: [PATCH 04/11] Add Waveshare touchscreen raw module inspiration from - derekhe: https://github.com/derekhe/wavesahre-7inch-touchscreen-driver - ---- - configure.ac | 1 + - plugins/Makefile.am | 13 +++- - plugins/plugins.h | 1 + - plugins/waveshare-raw.c | 202 ++++++++++++++++++++++++++++++++++++++++++++++++ - src/Makefile.am | 4 + - 5 files changed, 220 insertions(+), 1 deletion(-) - create mode 100644 plugins/waveshare-raw.c - -diff --git a/configure.ac b/configure.ac -index 6984002..598ede7 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -70,6 +70,7 @@ TSLIB_CHECK_MODULE([input], [yes], [Enable building of generic input raw module - TSLIB_CHECK_MODULE([touchkit], [yes], [Enable building of serial TouchKit raw module (Linux /dev/ttySX support)]) - TSLIB_CHECK_MODULE([galax], [yes], [Enable building of HID USB eGalax raw module (Linux /dev/hiddevN support)]) - TSLIB_CHECK_MODULE([st1232], [yes], [Enable building of ST1232 raw module (Linux /dev/input/eventN support)]) -+TSLIB_CHECK_MODULE([waveshare], [yes], [Enable building of WaveShare raw module (Linux /dev/hidrawN support)]) - - - -diff --git a/plugins/Makefile.am b/plugins/Makefile.am -index e8e89e0..98881b3 100644 ---- a/plugins/Makefile.am -+++ b/plugins/Makefile.am -@@ -127,6 +127,12 @@ else - ST1232_MODULE = - endif - -+if ENABLE_WAVESHARE_MODULE -+WAVESHARE_MODULE = waveshare.la -+else -+WAVESHARE_MODULE = -+endif -+ - pluginexec_LTLIBRARIES = \ - $(LINEAR_MODULE) \ - $(DEJITTER_MODULE) \ -@@ -145,7 +151,8 @@ pluginexec_LTLIBRARIES = \ - $(GALAX_MODULE) \ - $(TOUCHKIT_MODULE) \ - $(CY8MRLN_PALMPRE_MODULE) \ -- $(ST1232_MODULE) -+ $(ST1232_MODULE) \ -+ $(WAVESHARE_MODULE) - - variance_la_SOURCES = variance.c - variance_la_LDFLAGS = -module $(LTVSN) -@@ -208,3 +215,7 @@ cy8mrln_palmpre_la_LDFLAGS = -module $(LTVSN) - st1232_la_SOURCES = st1232-raw.c - st1232_la_LDFLAGS = -module $(LTVSN) - st1232_la_LIBADD = $(top_builddir)/src/libts.la -+ -+waveshare_la_SOURCES = waveshare-raw.c -+waveshare_la_LDFLAGS = -module $(LTVSN) -+waveshare_la_LIBADD = $(top_builddir)/src/libts.la -diff --git a/plugins/plugins.h b/plugins/plugins.h -index d78877e..f347e25 100644 ---- a/plugins/plugins.h -+++ b/plugins/plugins.h -@@ -17,3 +17,4 @@ TSLIB_DECLARE_MODULE(tatung); - TSLIB_DECLARE_MODULE(input); - TSLIB_DECLARE_MODULE(cy8mrln_palmpre); - TSLIB_DECLARE_MODULE(st1232); -+TSLIB_DECLARE_MODULE(waveshare); -diff --git a/plugins/waveshare-raw.c b/plugins/waveshare-raw.c -new file mode 100644 -index 0000000..ff13055 ---- /dev/null -+++ b/plugins/waveshare-raw.c -@@ -0,0 +1,202 @@ -+/* -+ * tslib driver for WaveShare touchscreens -+ * Copyright (C) 2015 Peter Vicman -+ * inspiration from derekhe: https://github.com/derekhe/wavesahre-7inch-touchscreen-driver -+ * -+ * This file is placed under the LGPL. Please see the file COPYING for more -+ * details. -+ */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include "config.h" -+#include "tslib-private.h" -+ -+struct tslib_input { -+ struct tslib_module_info module; -+ int vendor; -+ int product; -+ int len; -+}; -+ -+static int waveshare_read(struct tslib_module_info *inf, struct ts_sample *samp, int nr) -+{ -+ static bool reopen = true; -+ struct stat devstat; -+ struct hidraw_devinfo info; -+ char name_buf[512]; -+ int cnt; -+ bool found = false; -+ struct tslib_input *i = (struct tslib_input *) inf; -+ struct tsdev *ts = inf->dev; -+ struct tsdev *ts_tmp; -+ char *buf; -+ int ret; -+ -+ if (reopen == true) { -+ reopen = false; -+ -+ if (i->vendor > 0 && i->product > 0) { -+ fprintf(stderr, "waveshare: searching for device using hidraw....\n"); -+ for (cnt=0; cntfd, HIDIOCGRAWINFO, &info); -+ if (ret < 0) { -+ ts_close(ts_tmp); -+ continue; -+ } -+ -+ info.vendor &= 0xFFFF; -+ info.product &= 0xFFFF; -+ fprintf(stderr, " vid=%04X, pid=%04X\n", info.vendor, info.product); -+ -+ if (i->vendor == info.vendor && i->product == info.product) { -+ if (ts->fd > 0) -+ close(ts->fd); -+ -+ ts->fd = ts_tmp->fd; -+ free(ts_tmp); -+ found = true; -+ fprintf(stderr, " correct device\n"); -+ break; -+ } -+ -+ ts_close(ts_tmp); -+ } /* for HIDRAW_MAX_DEVICES */ -+ -+ if (found == false) { -+ return -1; -+ } -+ } /* vid/pid set */ -+ } /* reopen */ -+ -+ buf = alloca(i->len * nr); -+ -+ ret = read(ts->fd, buf, i->len * nr); -+ if(ret > 0) { -+ while(ret >= (int) i->len) { -+ /* -+ 0000271: aa01 00e4 0139 bb01 01e0 0320 01e0 0320 01e0 0320 01e0 0320 cc .....9..... ... ... ... . -+ -+ "aa" is start of the command, "01" means clicked while "00" means unclicked. -+ "00e4" and "0139" is the X,Y position (HEX). -+ "bb" is start of multi-touch, and the following bytes are the position of each point. -+ */ -+ samp->pressure = buf[1] & 0xff; -+ samp->x = ((buf[2] & 0xff) << 8) | (buf[3] & 0xff); -+ samp->y = ((buf[4] & 0xff) << 8) | (buf[5] & 0xff); -+ gettimeofday(&samp->tv, NULL); -+#ifdef DEBUG -+ fprintf(stderr, "waveshare raw: %d %d %d\n", samp->x, samp->y, samp->pressure); -+ fprintf(stderr, "%x %x %x %x %x %x\n", buf[0], buf[1], buf[2], buf[3], buf[4], buf[5]); -+#endif -+ samp++; -+ buf += i->len; -+ ret -= i->len; -+ } -+ } else { -+ return -1; -+ } -+ -+ return nr; -+} -+ -+static const struct tslib_ops waveshare_ops = -+{ -+ .read = waveshare_read, -+}; -+ -+static int parse_vid_pid(struct tslib_module_info *inf, char *str, void *data) -+{ -+ struct tslib_input *i = (struct tslib_input *)inf; -+ -+ if (strlen(str) < 9 || (int) data != 1) -+ return 0; /* -1 */ -+ -+ str[4] = str[9] = '\0'; -+ i->vendor = strtol(&str[0], NULL, 16); -+ i->product = strtol(&str[5], NULL, 16); -+//#ifdef DEBUG -+ fprintf(stderr, "waveshare vid:pid - %04X:%04X\n", i->vendor, i->product); -+//#endif /*DEBUG*/ -+ return 0; -+} -+ -+static int parse_len(struct tslib_module_info *inf, char *str, void *data) -+{ -+ struct tslib_input *i = (struct tslib_input *)inf; -+ int v; -+ int err = errno; -+ -+ v = atoi(str); -+ -+ if (v < 0) -+ return -1; -+ -+ errno = err; -+ switch ((int) data) { -+ case 1: -+ i->len = v; -+ fprintf(stderr, "waveshare raw data len: %d bytes\n", i->len); -+ break; -+ default: -+ return -1; -+ } -+ return 0; -+} -+ -+static const struct tslib_vars raw_vars[] = -+{ -+ { "vid_pid", (void *) 1, parse_vid_pid }, -+ { "len", (void *) 1, parse_len }, -+}; -+ -+#define NR_VARS (sizeof(raw_vars) / sizeof(raw_vars[0])) -+ -+TSAPI struct tslib_module_info *waveshare_mod_init(struct tsdev *dev, const char *params) -+{ -+ struct tslib_input *i; -+ -+ (void) dev; -+ -+ i = malloc(sizeof(struct tslib_input)); -+ if (i == NULL) -+ return NULL; -+ -+ i->module.ops = &waveshare_ops; -+ i->vendor = 0; -+ i->product = 0; -+ i->len = 25; -+ -+ if (tslib_parse_vars(&i->module, raw_vars, NR_VARS, params)) { -+ free(i); -+ return NULL; -+ } -+ -+ return &(i->module); -+} -+ -+#ifndef TSLIB_STATIC_WAVESHARE_MODULE -+ TSLIB_MODULE_INIT(waveshare_mod_init); -+#endif -diff --git a/src/Makefile.am b/src/Makefile.am -index b561aa8..a8fded9 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -75,6 +75,10 @@ if ENABLE_STATIC_ST1232_MODULE - libts_la_SOURCES += $(top_srcdir)/plugins/st1232-raw.c - endif - -+if ENABLE_STATIC_WAVESHARE_MODULE -+libts_la_SOURCES += $(top_srcdir)/plugins/waveshare-raw.c -+endif -+ - libts_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ - -release $(LT_RELEASE) -export-dynamic - libts_la_LIBADD = -ldl - -From 72128c5f16db89d7b644dd184c1b1c6dbe6ef79e Mon Sep 17 00:00:00 2001 -From: Peter Vicman -Date: Sun, 20 Sep 2015 10:30:33 +0200 -Subject: [PATCH 05/11] waveshare: remove reopening device based on vid/pid - ---- - plugins/waveshare-raw.c | 76 ------------------------------------------------- - 1 file changed, 76 deletions(-) - -diff --git a/plugins/waveshare-raw.c b/plugins/waveshare-raw.c -index ff13055..0839af0 100644 ---- a/plugins/waveshare-raw.c -+++ b/plugins/waveshare-raw.c -@@ -24,73 +24,16 @@ - - struct tslib_input { - struct tslib_module_info module; -- int vendor; -- int product; - int len; - }; - - static int waveshare_read(struct tslib_module_info *inf, struct ts_sample *samp, int nr) - { -- static bool reopen = true; -- struct stat devstat; -- struct hidraw_devinfo info; -- char name_buf[512]; -- int cnt; -- bool found = false; - struct tslib_input *i = (struct tslib_input *) inf; - struct tsdev *ts = inf->dev; -- struct tsdev *ts_tmp; - char *buf; - int ret; - -- if (reopen == true) { -- reopen = false; -- -- if (i->vendor > 0 && i->product > 0) { -- fprintf(stderr, "waveshare: searching for device using hidraw....\n"); -- for (cnt=0; cntfd, HIDIOCGRAWINFO, &info); -- if (ret < 0) { -- ts_close(ts_tmp); -- continue; -- } -- -- info.vendor &= 0xFFFF; -- info.product &= 0xFFFF; -- fprintf(stderr, " vid=%04X, pid=%04X\n", info.vendor, info.product); -- -- if (i->vendor == info.vendor && i->product == info.product) { -- if (ts->fd > 0) -- close(ts->fd); -- -- ts->fd = ts_tmp->fd; -- free(ts_tmp); -- found = true; -- fprintf(stderr, " correct device\n"); -- break; -- } -- -- ts_close(ts_tmp); -- } /* for HIDRAW_MAX_DEVICES */ -- -- if (found == false) { -- return -1; -- } -- } /* vid/pid set */ -- } /* reopen */ -- - buf = alloca(i->len * nr); - - ret = read(ts->fd, buf, i->len * nr); -@@ -127,22 +70,6 @@ static const struct tslib_ops waveshare_ops = - .read = waveshare_read, - }; - --static int parse_vid_pid(struct tslib_module_info *inf, char *str, void *data) --{ -- struct tslib_input *i = (struct tslib_input *)inf; -- -- if (strlen(str) < 9 || (int) data != 1) -- return 0; /* -1 */ -- -- str[4] = str[9] = '\0'; -- i->vendor = strtol(&str[0], NULL, 16); -- i->product = strtol(&str[5], NULL, 16); --//#ifdef DEBUG -- fprintf(stderr, "waveshare vid:pid - %04X:%04X\n", i->vendor, i->product); --//#endif /*DEBUG*/ -- return 0; --} -- - static int parse_len(struct tslib_module_info *inf, char *str, void *data) - { - struct tslib_input *i = (struct tslib_input *)inf; -@@ -168,7 +95,6 @@ static int parse_len(struct tslib_module_info *inf, char *str, void *data) - - static const struct tslib_vars raw_vars[] = - { -- { "vid_pid", (void *) 1, parse_vid_pid }, - { "len", (void *) 1, parse_len }, - }; - -@@ -185,8 +111,6 @@ TSAPI struct tslib_module_info *waveshare_mod_init(struct tsdev *dev, const char - return NULL; - - i->module.ops = &waveshare_ops; -- i->vendor = 0; -- i->product = 0; - i->len = 25; - - if (tslib_parse_vars(&i->module, raw_vars, NR_VARS, params)) { - -From 8b6a678e507211d5d51081655af244561a931d8f Mon Sep 17 00:00:00 2001 -From: Peter Vicman -Date: Sun, 20 Sep 2015 10:42:31 +0200 -Subject: [PATCH 06/11] ts_reconfig: reload all modules useful to reload - calibration data without closing and opening device - ---- - src/Makefile.am | 2 +- - src/ts_reconfig.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ - src/tslib.h | 5 +++++ - 3 files changed, 54 insertions(+), 1 deletion(-) - create mode 100644 src/ts_reconfig.c - -diff --git a/src/Makefile.am b/src/Makefile.am -index a8fded9..606a5ae 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -17,7 +17,7 @@ include_HEADERS = tslib.h - lib_LTLIBRARIES = libts.la - libts_la_SOURCES = ts_attach.c ts_close.c ts_config.c ts_error.c \ - ts_fd.c ts_load_module.c ts_open.c ts_parse_vars.c \ -- ts_read.c ts_read_raw.c ts_option.c -+ ts_read.c ts_read_raw.c ts_option.c ts_reconfig.c - - if ENABLE_STATIC_LINEAR_MODULE - libts_la_SOURCES += $(top_srcdir)/plugins/linear.c -diff --git a/src/ts_reconfig.c b/src/ts_reconfig.c -new file mode 100644 -index 0000000..c94ec3e ---- /dev/null -+++ b/src/ts_reconfig.c -@@ -0,0 +1,48 @@ -+/* -+ * tslib/src/ts_reconfig.c -+ * based on tslib/src/ts_close.c -+ * -+ * Copyright (C) 2001 Russell King. -+ * -+ * This file is placed under the LGPL. Please see the file -+ * COPYING for more details. -+ * -+ * -+ * Reloads all modules - useful to reload calibration data. -+ */ -+#include "config.h" -+#include -+#ifdef HAVE_UNISTD_H -+#include -+#endif -+#include -+ -+#include "tslib-private.h" -+ -+int ts_reconfig(struct tsdev *ts) -+{ -+ void *handle; -+ int ret; -+ struct tslib_module_info *info, *next; -+ int fd; -+ -+ info = ts->list; -+ while(info) { -+ /* Save the "next" pointer now because info will be freed */ -+ next = info->next; -+ -+ handle = info->handle; -+ info->ops->fini(info); -+ if (handle) -+ dlclose(handle); -+ -+ info = next; -+ } -+ -+ fd = ts->fd; /* save temp */ -+ memset(ts, 0, sizeof(struct tsdev)); -+ ts->fd = fd; -+ -+ ret = ts_config(ts); -+ return ret; -+} -diff --git a/src/tslib.h b/src/tslib.h -index df8e284..28156ba 100644 ---- a/src/tslib.h -+++ b/src/tslib.h -@@ -57,6 +57,11 @@ enum ts_param { - TSAPI int ts_close(struct tsdev *); - - /* -+ * Reloads all modules - useful to reload calibration data. -+ */ -+TSAPI int ts_reconfig(struct tsdev *); -+ -+/* - * Configure the touchscreen device. - */ - TSAPI int ts_config(struct tsdev *); - -From df81ed55ed9c99a8636f0b8524e0c5da0d00d33d Mon Sep 17 00:00:00 2001 -From: Peter Vicman -Date: Sun, 20 Sep 2015 10:45:55 +0200 -Subject: [PATCH 07/11] ts_uinput_touch: reload modules (and calibration data) - automatically after calibration and on SIGHUP signal - ---- - tests/ts_uinput_touch.c | 67 +++++++++++++++++++++++++++++++++++-------------- - 1 file changed, 48 insertions(+), 19 deletions(-) - -diff --git a/tests/ts_uinput_touch.c b/tests/ts_uinput_touch.c -index 489a22f..871c5e4 100755 ---- a/tests/ts_uinput_touch.c -+++ b/tests/ts_uinput_touch.c -@@ -74,6 +74,7 @@ typedef struct { - int a[7]; - } calibration; - -+struct tsdev *ts = NULL; - char *uinput_names[] = {"/dev/uinput", "/dev/input/uinput", "/dev/misc/uinput"}; - #define UINPUT_NAMES_NUM ((int) (sizeof(uinput_names)/sizeof(char *))) - -@@ -99,7 +100,7 @@ static void daemonize() { - die("failed to become a session leader while daemonising(errno=%d)", errno) - } - -- signal(SIGHUP,SIG_IGN); -+ /* signal(SIGHUP,SIG_IGN); */ - pid=fork(); - if (pid == -1) { - die("failed to fork while daemonizing (errno=%d)", errno) -@@ -129,7 +130,7 @@ static void daemonize() { - } - } - --static void sig(int sig) -+static void signal_end(int sig) - { - fflush(stderr); - printf("signal %d caught\n", sig); -@@ -163,7 +164,15 @@ static int send_event(int fd, __u16 type, __u16 code, __s32 value) - } - - static void signal_handler(int signal_number) { -- if (signal_number == SIGUSR1) -+ if (signal_number == SIGHUP) { -+ /* reload modules (and calibration data) */ -+ printf("signal handler %d, reconfig ts\n", signal_number); -+ if (ts_reconfig(ts)) { -+ die("ts_reconfig") -+ } -+ -+ return; -+ } else if (signal_number == SIGUSR1) - calibration_mode = true; - else if (signal_number == SIGUSR2) - calibration_mode = false; -@@ -366,25 +375,25 @@ static void run_calibration(struct tsdev *ts) - - int get_resolution(void) - { -- static char *fbdevice; -+ char *env_str; - int fd; - static struct fb_var_screeninfo var; - -- fbdevice = getenv("TSLIB_FBDEVICE"); -- if (fbdevice == NULL) -- return -1; -+ env_str = getenv("TSLIB_FBDEVICE"); -+ if (env_str == NULL) -+ goto not_found; - -- printf("using fb device: %s\n", fbdevice); -- fd = open(fbdevice, O_RDWR); -+ printf("using fb device: %s\n", env_str); -+ fd = open(env_str, O_RDWR); - if (fd == -1) { - perror("open fbdevice"); -- return -1; -+ goto not_found; - } - - if (ioctl(fd, FBIOGET_VSCREENINFO, &var) < 0) { - perror("ioctl FBIOGET_VSCREENINFO"); - close(fd); -- return -1; -+ goto not_found; - } - - xres = var.xres; -@@ -392,13 +401,28 @@ int get_resolution(void) - - close(fd); - return 0; -+ -+not_found: -+ env_str = getenv("TSLIB_RES_X"); -+ if (env_str != NULL) -+ xres = atoi(env_str); -+ -+ env_str = getenv("TSLIB_RES_Y"); -+ if (env_str != NULL) -+ yres = atoi(env_str); -+ -+ if (xres == 0 || yres == 0) { -+ xres = yres = 0; -+ return -1; -+ } -+ -+ return 0; - } - - int main(int argc, char *argv[]) - { - int c; - char *tsdevice; -- struct tsdev *ts; - int ret; - struct ts_sample samp; - int uinput_fd; -@@ -423,7 +447,7 @@ int main(int argc, char *argv[]) - } - } - -- get_resolution(); -+ ret = get_resolution(); - - while ((c = getopt(argc, argv, "?dt:x:y:")) != -1) { - switch (c) { -@@ -460,12 +484,11 @@ int main(int argc, char *argv[]) - - printf("resolution: %dx%d\n", xres, yres); - -- signal(SIGSEGV, sig); -- signal(SIGINT, sig); -- signal(SIGTERM, sig); -+ signal(SIGSEGV, signal_end); -+ signal(SIGINT, signal_end); -+ signal(SIGTERM, signal_end); - - tsdevice = getenv("TSLIB_TSDEVICE"); -- - if (tsdevice == NULL) { - errno = ENOENT; - die("error: TSLIB_TSDEVICE") -@@ -482,7 +505,7 @@ int main(int argc, char *argv[]) - die("ts_config") - } - -- system("modprobe uinput"); -+ ret = system("modprobe uinput"); - - for (c=0; c < UINPUT_NAMES_NUM; c++) { - uinput_fd = open(uinput_names[c], O_WRONLY | O_NONBLOCK); -@@ -505,6 +528,7 @@ int main(int argc, char *argv[]) - - memset (&sa, 0, sizeof (sa)); - sa.sa_handler = &signal_handler; -+ sigaction(SIGHUP, &sa, NULL); - sigaction(SIGUSR1, &sa, NULL); - sigaction(SIGUSR2, &sa, NULL); - -@@ -572,7 +596,12 @@ int main(int argc, char *argv[]) - run_calibration(ts); - calibration_mode = false; - close(sock); -- printf("calibration mode finished\n"); -+ printf("calibration mode finished, reload plugins\n"); -+ -+ clearbuf(ts); -+ if (ts_reconfig(ts)) { -+ die("ts_reconfig") -+ } - } - - ret = ts_read(ts, &samp, 1); - -From dbf1c882dbc239065df422f9e16da955c0b7653f Mon Sep 17 00:00:00 2001 -From: Peter Vicman -Date: Sun, 20 Sep 2015 10:47:44 +0200 -Subject: [PATCH 08/11] plugins: compile statically - ---- - plugins/Makefile.am | 2 ++ - plugins/dmc-raw.c | 6 +++++- - plugins/plugins.h | 5 ++++- - plugins/touchkit-raw.c | 6 +++++- - src/Makefile.am | 12 ++++++++++++ - src/ts_load_module.c | 12 ++++++++++++ - 6 files changed, 40 insertions(+), 3 deletions(-) - -diff --git a/plugins/Makefile.am b/plugins/Makefile.am -index 98881b3..87fa18b 100644 ---- a/plugins/Makefile.am -+++ b/plugins/Makefile.am -@@ -194,6 +194,7 @@ tatung_la_LDFLAGS = -module $(LTVSN) - - dmc_la_SOURCES = dmc-raw.c - dmc_la_LDFLAGS = -module $(LTVSN) -+dmc_la_LIBADD = $(top_builddir)/src/libts.la - - input_la_SOURCES = input-raw.c - input_la_LDFLAGS = -module $(LTVSN) -@@ -205,6 +206,7 @@ galax_la_LIBADD = $(top_builddir)/src/libts.la - - touchkit_la_SOURCES = touchkit-raw.c - touchkit_la_LDFLAGS = -module $(LTVSN) -+touchkit_la_LIBADD = $(top_builddir)/src/libts.la - - linear_h2200_la_SOURCES = linear-h2200.c - linear_h2200_la_LDFLAGS = -module $(LTVSN) -diff --git a/plugins/dmc-raw.c b/plugins/dmc-raw.c -index f9f5381..59980cc 100644 ---- a/plugins/dmc-raw.c -+++ b/plugins/dmc-raw.c -@@ -123,7 +123,7 @@ static const struct tslib_ops dmc_ops = - .read = dmc_read, - }; - --TSAPI struct tslib_module_info *mod_init(struct tsdev *dev, const char *params) -+TSAPI struct tslib_module_info *dmc_mod_init(struct tsdev *dev, const char *params) - { - struct tslib_dmc *m; - -@@ -137,3 +137,7 @@ TSAPI struct tslib_module_info *mod_init(struct tsdev *dev, const char *params) - m->module.ops = &dmc_ops; - return (struct tslib_module_info*)m; - } -+ -+#ifndef TSLIB_STATIC_DMC_MODULE -+ TSLIB_MODULE_INIT(dmc_mod_init); -+#endif -diff --git a/plugins/plugins.h b/plugins/plugins.h -index f347e25..798f9b3 100644 ---- a/plugins/plugins.h -+++ b/plugins/plugins.h -@@ -6,7 +6,6 @@ TSLIB_DECLARE_MODULE(dejitter); - TSLIB_DECLARE_MODULE(linear_h2200); - TSLIB_DECLARE_MODULE(variance); - TSLIB_DECLARE_MODULE(pthres); -- - TSLIB_DECLARE_MODULE(ucb1x00); - TSLIB_DECLARE_MODULE(corgi); - TSLIB_DECLARE_MODULE(collie); -@@ -16,5 +15,9 @@ TSLIB_DECLARE_MODULE(arctic2); - TSLIB_DECLARE_MODULE(tatung); - TSLIB_DECLARE_MODULE(input); - TSLIB_DECLARE_MODULE(cy8mrln_palmpre); -+TSLIB_DECLARE_MODULE(galax); -+TSLIB_DECLARE_MODULE(dmc); -+TSLIB_DECLARE_MODULE(touchkit); - TSLIB_DECLARE_MODULE(st1232); - TSLIB_DECLARE_MODULE(waveshare); -+ -diff --git a/plugins/touchkit-raw.c b/plugins/touchkit-raw.c -index e072f21..68179a3 100644 ---- a/plugins/touchkit-raw.c -+++ b/plugins/touchkit-raw.c -@@ -144,7 +144,7 @@ static const struct tslib_ops touchkit_ops = { - .read = touchkit_read, - }; - --TSAPI struct tslib_module_info *mod_init(struct tsdev *dev, const char *params) -+TSAPI struct tslib_module_info *touchkit_mod_init(struct tsdev *dev, const char *params) - { - struct tslib_module_info *m; - -@@ -155,3 +155,7 @@ TSAPI struct tslib_module_info *mod_init(struct tsdev *dev, const char *params) - m->ops = &touchkit_ops; - return m; - } -+ -+#ifndef TSLIB_STATIC_TOUCHKIT_MODULE -+ TSLIB_MODULE_INIT(touchkit_mod_init); -+#endif -diff --git a/src/Makefile.am b/src/Makefile.am -index 606a5ae..2f31519 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -71,6 +71,18 @@ if ENABLE_STATIC_INPUT_MODULE - libts_la_SOURCES += $(top_srcdir)/plugins/input-raw.c - endif - -+if ENABLE_STATIC_DMC_MODULE -+libts_la_SOURCES += $(top_srcdir)/plugins/dmc-raw.c -+endif -+ -+if ENABLE_STATIC_GALAX_MODULE -+libts_la_SOURCES += $(top_srcdir)/plugins/galax-raw.c -+endif -+ -+if ENABLE_STATIC_TOUCHKIT_MODULE -+libts_la_SOURCES += $(top_srcdir)/plugins/touchkit-raw.c -+endif -+ - if ENABLE_STATIC_ST1232_MODULE - libts_la_SOURCES += $(top_srcdir)/plugins/st1232-raw.c - endif -diff --git a/src/ts_load_module.c b/src/ts_load_module.c -index 886ca0a..903c921 100644 ---- a/src/ts_load_module.c -+++ b/src/ts_load_module.c -@@ -76,6 +76,18 @@ static const struct { - #ifdef TSLIB_STATIC_ST1232_MODULE - { "st1232", st1232_mod_init }, - #endif -+#ifdef TSLIB_STATIC_CY8MRLN_PALMPRE_MODULE -+ { "cy8mrln-palmpre", cy8mrln_palmpre_mod_init }, -+#endif -+#ifdef TSLIB_STATIC_DMC_MODULE -+ { "dmc", dmc_mod_init }, -+#endif -+#ifdef TSLIB_STATIC_TOUCHKIT_MODULE -+ { "touchkit", touchkit_mod_init }, -+#endif -+#ifdef TSLIB_STATIC_WAVESHARE_MODULE -+ { "waveshare", waveshare_mod_init }, -+#endif - }; - - #define countof(arr) (sizeof(arr) / sizeof((arr)[0])) - -From 72d2fe9e2ff18a9589510fd28e485b238a7bcbff Mon Sep 17 00:00:00 2001 -From: Peter Vicman -Date: Mon, 21 Sep 2015 09:36:38 +0200 -Subject: [PATCH 09/11] file permission, tabs - ---- - plugins/Makefile.am | 2 +- - tests/ts_uinput_touch.c | 0 - 2 files changed, 1 insertion(+), 1 deletion(-) - mode change 100755 => 100644 tests/ts_uinput_touch.c - -diff --git a/plugins/Makefile.am b/plugins/Makefile.am -index 87fa18b..4ed04c1 100644 ---- a/plugins/Makefile.am -+++ b/plugins/Makefile.am -@@ -194,7 +194,7 @@ tatung_la_LDFLAGS = -module $(LTVSN) - - dmc_la_SOURCES = dmc-raw.c - dmc_la_LDFLAGS = -module $(LTVSN) --dmc_la_LIBADD = $(top_builddir)/src/libts.la -+dmc_la_LIBADD = $(top_builddir)/src/libts.la - - input_la_SOURCES = input-raw.c - input_la_LDFLAGS = -module $(LTVSN) -diff --git a/tests/ts_uinput_touch.c b/tests/ts_uinput_touch.c -old mode 100755 -new mode 100644 - -From aff635ded1b41ade1b2cf2203cdf30f7fcd61127 Mon Sep 17 00:00:00 2001 -From: Peter Vicman -Date: Sat, 10 Oct 2015 21:24:53 +0200 -Subject: [PATCH 10/11] ts_uinput_touch: remove button right event because it - breaks scrollbar, context menu is open on few seconds tap - ---- - tests/ts_uinput_touch.c | 141 ++++++++++++------------------------------------ - 1 file changed, 35 insertions(+), 106 deletions(-) - -diff --git a/tests/ts_uinput_touch.c b/tests/ts_uinput_touch.c -index 871c5e4..92db9ce 100644 ---- a/tests/ts_uinput_touch.c -+++ b/tests/ts_uinput_touch.c -@@ -9,9 +9,7 @@ - * - * - * Takes tslib events and send them to uinput as -- * BTN_TOUCH, BTN_RIGHT, ABS_X, ABS_Y and ABS_PRESSURE values. -- * Short tap send button touch event, little longer tap send button right event -- * and longer tap send only coordinates. -+ * ABS_X, ABS_Y, BTN_TOUCH and ABS_PRESSURE values. - * Tested only with Kodi application. - * - * code based on -@@ -79,8 +77,6 @@ char *uinput_names[] = {"/dev/uinput", "/dev/input/uinput", "/dev/misc/uinput"}; - #define UINPUT_NAMES_NUM ((int) (sizeof(uinput_names)/sizeof(char *))) - - __u32 xres = 0, yres = 0; --struct timeval tv_short_tap = {0, 300}; /* sec, msec, short tap sends BTN_TOUCH */ --struct timeval tv_right_tap = {1, 0}; /* sec, msec, longer tap sends BTN_RIGHT */ - bool calibration_mode = false; - int sock = -1; - -@@ -164,15 +160,15 @@ static int send_event(int fd, __u16 type, __u16 code, __s32 value) - } - - static void signal_handler(int signal_number) { -- if (signal_number == SIGHUP) { -- /* reload modules (and calibration data) */ -- printf("signal handler %d, reconfig ts\n", signal_number); -- if (ts_reconfig(ts)) { -- die("ts_reconfig") -- } -- -- return; -- } else if (signal_number == SIGUSR1) -+ if (signal_number == SIGHUP) { -+ /* reload modules (and calibration data) */ -+ printf("signal handler %d, reconfig ts\n", signal_number); -+ if (ts_reconfig(ts)) { -+ die("ts_reconfig") -+ } -+ -+ return; -+ } else if (signal_number == SIGUSR1) - calibration_mode = true; - else if (signal_number == SIGUSR2) - calibration_mode = false; -@@ -403,20 +399,20 @@ int get_resolution(void) - return 0; - - not_found: -- env_str = getenv("TSLIB_RES_X"); -- if (env_str != NULL) -- xres = atoi(env_str); -- -- env_str = getenv("TSLIB_RES_Y"); -- if (env_str != NULL) -- yres = atoi(env_str); -- -- if (xres == 0 || yres == 0) { -- xres = yres = 0; -- return -1; -- } -- -- return 0; -+ env_str = getenv("TSLIB_RES_X"); -+ if (env_str != NULL) -+ xres = atoi(env_str); -+ -+ env_str = getenv("TSLIB_RES_Y"); -+ if (env_str != NULL) -+ yres = atoi(env_str); -+ -+ if (xres == 0 || yres == 0) { -+ xres = yres = 0; -+ return -1; -+ } -+ -+ return 0; - } - - int main(int argc, char *argv[]) -@@ -428,43 +424,18 @@ int main(int argc, char *argv[]) - int uinput_fd; - struct uinput_user_dev uidev; - int daemon = 0; -- struct timeval tv_last; -- struct timeval tv_sub; - char *touch_str; - int val; - struct sigaction sa; - struct sockaddr_un remote_addr; - -- touch_str = getenv("TSLIB_TAP_TIME"); -- if (touch_str != NULL) { -- val = atoi(touch_str); -- if (val < 1000) { -- tv_short_tap.tv_sec = 0; -- tv_short_tap.tv_usec = val; -- } else { -- tv_short_tap.tv_sec = val / 1000; -- tv_short_tap.tv_usec = val % 1000; -- } -- } -- - ret = get_resolution(); - -- while ((c = getopt(argc, argv, "?dt:x:y:")) != -1) { -+ while ((c = getopt(argc, argv, "?dx:y:")) != -1) { - switch (c) { - case 'd': - daemon = 1; - break; -- case 't': -- val = atoi(optarg); -- if (val < 1000) { -- tv_short_tap.tv_sec = 0; -- tv_short_tap.tv_usec = val; -- } else { -- tv_short_tap.tv_sec = val / 1000; -- tv_short_tap.tv_usec = val % 1000; -- } -- -- break; - case 'x': - xres = atoi(optarg); - break; -@@ -516,16 +487,6 @@ int main(int argc, char *argv[]) - if (uinput_fd < 0) - die("error: opening uinput") - -- if (tv_short_tap.tv_sec == 0) -- printf("Short tap time: %li msec\n", tv_short_tap.tv_usec); -- else -- printf("Short tap time: %li.%li sec\n", tv_short_tap.tv_sec, tv_short_tap.tv_usec); -- -- if (tv_right_tap.tv_sec == 0) -- printf("Right tap time: %li msec\n", tv_right_tap.tv_usec); -- else -- printf("Right tap time: %li.%li sec\n", tv_right_tap.tv_sec, tv_right_tap.tv_usec); -- - memset (&sa, 0, sizeof (sa)); - sa.sa_handler = &signal_handler; - sigaction(SIGHUP, &sa, NULL); -@@ -540,7 +501,6 @@ int main(int argc, char *argv[]) - set_ioctl(uinput_fd, UI_SET_EVBIT, EV_SYN); - set_ioctl(uinput_fd, UI_SET_EVBIT, EV_KEY); - set_ioctl(uinput_fd, UI_SET_KEYBIT, BTN_TOUCH); -- set_ioctl(uinput_fd, UI_SET_KEYBIT, BTN_RIGHT); - set_ioctl(uinput_fd, UI_SET_EVBIT, EV_ABS); - set_ioctl(uinput_fd, UI_SET_ABSBIT, ABS_X); - set_ioctl(uinput_fd, UI_SET_ABSBIT, ABS_Y); -@@ -564,12 +524,7 @@ int main(int argc, char *argv[]) - if (ioctl(uinput_fd, UI_DEV_CREATE) < 0) - die("error: ioctl UI_DEV_CREATE") - -- tv_short_tap.tv_usec *= 1000; /* msec to usec */ -- tv_right_tap.tv_usec *= 1000; /* msec to usec */ -- -- timerclear(&tv_last); - while (1) { -- touch_str = ""; - if (calibration_mode) { - usleep(250000); /* app become ready */ - printf("calibration mode started\n"); -@@ -614,44 +569,18 @@ int main(int argc, char *argv[]) - } else if (ret != 1) - continue; - -- send_event(uinput_fd, EV_ABS, ABS_X, samp.x); -- send_event(uinput_fd, EV_ABS, ABS_Y, samp.y); -- -- if (samp.pressure > 0) { /* touched */ -+ if (samp.pressure > 0) { -+ touch_str = "touched"; -+ send_event(uinput_fd, EV_ABS, ABS_X, samp.x); -+ send_event(uinput_fd, EV_ABS, ABS_Y, samp.y); - send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 255); -+ send_event(uinput_fd, EV_KEY, BTN_TOUCH, 1); -+ send_event(uinput_fd, EV_SYN, 0, 0); -+ } else { -+ touch_str = "released"; -+ send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); -+ send_event(uinput_fd, EV_KEY, BTN_TOUCH, 0); - send_event(uinput_fd, EV_SYN, 0, 0); -- -- if (timerisset(&tv_last) == false) { -- memcpy(&tv_last, &samp.tv, sizeof(struct timeval)); /* touched first time */ -- touch_str = "touched first"; -- } -- } else { /* released */ -- timersub(&samp.tv, &tv_last, &tv_sub); -- if (timercmp(&tv_sub, &tv_short_tap, <=)) { -- send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 255); -- send_event(uinput_fd, EV_KEY, BTN_TOUCH, 1); -- send_event(uinput_fd, EV_SYN, 0, 0); -- send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); -- send_event(uinput_fd, EV_KEY, BTN_TOUCH, 0); -- send_event(uinput_fd, EV_SYN, 0, 0); -- -- touch_str = "released and send tap"; -- } else if (timercmp(&tv_sub, &tv_right_tap, <=)) { -- send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 255); -- send_event(uinput_fd, EV_KEY, BTN_RIGHT, 1); -- send_event(uinput_fd, EV_SYN, 0, 0); -- send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); -- send_event(uinput_fd, EV_KEY, BTN_RIGHT, 0); -- send_event(uinput_fd, EV_SYN, 0, 0); -- -- touch_str = "released and send right"; -- } else { -- send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); -- send_event(uinput_fd, EV_SYN, 0, 0); -- touch_str = "released"; -- } -- -- timerclear(&tv_last); - } - - printf("%ld.%06ld: %6d %6d %6d %s\n", samp.tv.tv_sec, samp.tv.tv_usec, - -From a5f00518cfe38002c47895424eda26746711a0da Mon Sep 17 00:00:00 2001 -From: Peter Vicman -Date: Tue, 24 Nov 2015 13:28:51 +0100 -Subject: [PATCH 11/11] ts_uinput_touch: move cursor out of display after - touched - ---- - tests/ts_uinput_touch.c | 37 +++++++++++++++++++++++++++++++++++++ - 1 file changed, 37 insertions(+) - -diff --git a/tests/ts_uinput_touch.c b/tests/ts_uinput_touch.c -index 92db9ce..8280b18 100644 ---- a/tests/ts_uinput_touch.c -+++ b/tests/ts_uinput_touch.c -@@ -415,6 +415,22 @@ int get_resolution(void) - return 0; - } - -+int get_touch_home_time(void) -+{ -+ char *env_str; -+ int touch_home_time = 0; -+ -+ env_str = getenv("TSLIB_TOUCH_HOME_TIME"); -+ if (env_str != NULL) { -+ touch_home_time = atoi(env_str); -+ if (touch_home_time < 0 || touch_home_time > 5000) -+ touch_home_time = 100; /* 100 msec */ -+ } -+ -+ touch_home_time *= 1000; /* msec to usec */ -+ return touch_home_time; -+} -+ - int main(int argc, char *argv[]) - { - int c; -@@ -424,11 +440,25 @@ int main(int argc, char *argv[]) - int uinput_fd; - struct uinput_user_dev uidev; - int daemon = 0; -+ int touch_home_time = 0; - char *touch_str; - int val; - struct sigaction sa; - struct sockaddr_un remote_addr; - -+ printf("\nts_uinput_touch environment variables:\n"); -+ printf(" TSLIB_TSDEVICE: '%s'\n", getenv("TSLIB_TSDEVICE")); -+ printf(" TSLIB_PLUGINDIR: '%s'\n", getenv("TSLIB_PLUGINDIR")); -+ printf(" TSLIB_CONSOLEDEVICE: '%s'\n", getenv("TSLIB_CONSOLEDEVICE")); -+ printf(" TSLIB_FBDEVICE: '%s'\n", getenv("TSLIB_FBDEVICE")); -+ printf(" TSLIB_CALIBFILE: '%s'\n", getenv("TSLIB_CALIBFILE")); -+ printf(" TSLIB_CONFFILE: '%s'\n", getenv("TSLIB_CONFFILE")); -+ printf(" TSLIB_RES_X: '%s'\n", getenv("TSLIB_RES_X")); -+ printf(" TSLIB_RES_Y: '%s'\n", getenv("TSLIB_RES_Y")); -+ printf("TSLIB_TOUCH_HOME_TIME: '%s'\n", getenv("TSLIB_TOUCH_HOME_TIME")); -+ printf("\n"); -+ -+ touch_home_time = get_touch_home_time(); - ret = get_resolution(); - - while ((c = getopt(argc, argv, "?dx:y:")) != -1) { -@@ -581,6 +611,13 @@ int main(int argc, char *argv[]) - send_event(uinput_fd, EV_ABS, ABS_PRESSURE, 0); - send_event(uinput_fd, EV_KEY, BTN_TOUCH, 0); - send_event(uinput_fd, EV_SYN, 0, 0); -+ -+ if (touch_home_time > 0) { -+ usleep(touch_home_time); /* short delay for kodi */ -+ send_event(uinput_fd, EV_ABS, ABS_X, -50); /* hide cursor */ -+ send_event(uinput_fd, EV_ABS, ABS_Y, -50); -+ send_event(uinput_fd, EV_SYN, 0, 0); -+ } - } - - printf("%ld.%06ld: %6d %6d %6d %s\n", samp.tv.tv_sec, samp.tv.tv_usec, diff --git a/packages/addons/addon-depends/tslib/patches/tslib-20-fbutils_fix_x64_execution.patch b/packages/addons/addon-depends/tslib/patches/tslib-20-fbutils_fix_x64_execution.patch deleted file mode 100644 index 9284e159ca..0000000000 --- a/packages/addons/addon-depends/tslib/patches/tslib-20-fbutils_fix_x64_execution.patch +++ /dev/null @@ -1,24 +0,0 @@ -From c4c59790f3191c1a233fc1a61f8fedad85de1aeb Mon Sep 17 00:00:00 2001 -From: Peter Fink -Date: Wed, 8 Feb 2017 14:04:45 +0100 -Subject: [PATCH] fbutils: Fix x64 execution. Call malloc not with a hardcoded - sizeof(__u32). This caused the application to crash with segfaults on x64 - machines. - ---- - tests/fbutils.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/fbutils.c b/tests/fbutils.c -index 8ee494bc..fd7fbfe9 100644 ---- a/tests/fbutils.c -+++ b/tests/fbutils.c -@@ -138,7 +138,7 @@ int open_framebuffer(void) - memset(fbuffer,0,fix.smem_len); - - bytes_per_pixel = (var.bits_per_pixel + 7) / 8; -- line_addr = malloc (sizeof (__u32) * var.yres_virtual); -+ line_addr = malloc (sizeof (line_addr) * var.yres_virtual); - addr = 0; - for (y = 0; y < var.yres_virtual; y++, addr += fix.line_length) - line_addr [y] = fbuffer + addr; diff --git a/packages/addons/addon-depends/tslib/patches/tslib-30-support-time-bits-64.patch b/packages/addons/addon-depends/tslib/patches/tslib-30-support-time-bits-64.patch deleted file mode 100644 index bc8bb0262f..0000000000 --- a/packages/addons/addon-depends/tslib/patches/tslib-30-support-time-bits-64.patch +++ /dev/null @@ -1,56 +0,0 @@ ---- a/plugins/galax-raw.c 2022-07-21 15:46:14.666220340 +0000 -+++ b/plugins/galax-raw.c 2022-07-22 01:11:26.708402821 +0000 -@@ -198,7 +198,8 @@ - samp->x = i->current_x; - samp->y = i->current_y; - samp->pressure = i->current_p; -- samp->tv = ev.time; -+ samp->tv.tv_sec = ev.input_event_sec; -+ samp->tv.tv_usec = ev.input_event_usec; - samp++; - total++; - break; ---- a/plugins/input-raw.c 2013-08-08 00:23:04.000000000 +0000 -+++ b/plugins/input-raw.c 2022-07-22 01:30:41.417546206 +0000 -@@ -179,7 +179,8 @@ - samp->y = i->current_y; - samp->pressure = i->current_p; - } -- samp->tv = ev.time; -+ samp->tv.tv_sec = ev.input_event_sec; -+ samp->tv.tv_usec = ev.input_event_usec; - #ifdef DEBUG - fprintf(stderr, "RAW---------------------> %d %d %d %d.%d\n", - samp->x, samp->y, samp->pressure, samp->tv.tv_sec, -@@ -262,7 +263,8 @@ - samp->pressure = i->current_p = ev.value; - break; - } -- samp->tv = ev.time; -+ samp->tv.tv_sec = ev.input_event_sec; -+ samp->tv.tv_usec = ev.input_event_usec; - #ifdef DEBUG - fprintf(stderr, "RAW---------------------------> %d %d %d\n", - samp->x, samp->y, samp->pressure); -@@ -278,7 +280,8 @@ - samp->x = 0; - samp->y = 0; - samp->pressure = 0; -- samp->tv = ev.time; -+ samp->tv.tv_sec = ev.input_event_sec; -+ samp->tv.tv_usec = ev.input_event_usec; - samp++; - total++; - } ---- a/plugins/st1232-raw.c 2022-07-22 01:31:02.757483058 +0000 -+++ b/plugins/st1232-raw.c 2022-07-22 01:27:40.174757983 +0000 -@@ -162,7 +162,8 @@ - samp->x = i->current_x; - samp->y = i->current_y; - samp->pressure = i->current_p; /* is 0 on finger released */ -- samp->tv = ev.time; -+ samp->tv.tv_sec = ev.input_event_sec; -+ samp->tv.tv_usec = ev.input_event_usec; - - i->current_p = 0; /* will be set again when getting xy cordinate */ - samp++; diff --git a/packages/addons/addon-depends/tslib/patches/tslib-40-fix-gcc-14-1.patch b/packages/addons/addon-depends/tslib/patches/tslib-40-fix-gcc-14-1.patch deleted file mode 100644 index ebe66e28c9..0000000000 --- a/packages/addons/addon-depends/tslib/patches/tslib-40-fix-gcc-14-1.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/src/ts_reconfig.c 2024-05-23 07:01:59.264165839 +0000 -+++ b/src/ts_reconfig.c 2024-05-23 07:01:54.034129359 +0000 -@@ -16,6 +16,7 @@ - #include - #endif - #include -+#include - - #include "tslib-private.h" - From 2f76ddef9591767df1913458fd079a401d5bcb71 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Sun, 2 Mar 2025 11:43:14 +0000 Subject: [PATCH 2/2] touchscreen: add-on removed drop obsolete add-on --- packages/addons/service/touchscreen/addon.xml | 34 ----- .../addons/service/touchscreen/changelog.txt | 1 - .../addons/service/touchscreen/icon/icon.png | Bin 30106 -> 0 bytes .../addons/service/touchscreen/package.mk | 25 +-- .../touchscreen/source/bin/ts_calibrate.sh | 65 -------- .../service/touchscreen/source/bin/ts_env.sh | 85 ----------- .../touchscreen/source/bin/ts_uinput_touch.sh | 41 ----- .../service/touchscreen/source/calibrate.py | 142 ------------------ .../touchscreen/source/config/ts.conf-generic | 8 - .../source/config/ts.conf-udoo_15_6 | 6 - .../touchscreen/source/config/ts.conf-udoo_7 | 3 - .../source/config/ts.conf-waveshare | 6 - .../source/config/ts_env.sh-sample | 28 ---- .../source/config/ts_env.sh-waveshare | 48 ------ .../service/touchscreen/source/lock-screen.py | 33 ---- .../resources/language/English/strings.xml | 10 -- .../resources/language/German/strings.xml | 10 -- .../source/resources/media/background.jpg | Bin 53844 -> 0 bytes .../source/resources/media/crosshair.png | Bin 168 -> 0 bytes .../source/resources/screenshot-001.png | Bin 145216 -> 0 bytes .../source/resources/screenshot-002.png | Bin 45584 -> 0 bytes .../source/resources/screenshot-003.png | Bin 22235 -> 0 bytes .../source/resources/screenshot-004.png | Bin 70343 -> 0 bytes .../touchscreen/source/resources/settings.xml | 8 - .../service/touchscreen/source/service.py | 2 - .../system.d/service.touchscreen.service | 14 -- 26 files changed, 8 insertions(+), 561 deletions(-) delete mode 100644 packages/addons/service/touchscreen/addon.xml delete mode 100644 packages/addons/service/touchscreen/changelog.txt delete mode 100644 packages/addons/service/touchscreen/icon/icon.png delete mode 100644 packages/addons/service/touchscreen/source/bin/ts_calibrate.sh delete mode 100644 packages/addons/service/touchscreen/source/bin/ts_env.sh delete mode 100644 packages/addons/service/touchscreen/source/bin/ts_uinput_touch.sh delete mode 100644 packages/addons/service/touchscreen/source/calibrate.py delete mode 100644 packages/addons/service/touchscreen/source/config/ts.conf-generic delete mode 100644 packages/addons/service/touchscreen/source/config/ts.conf-udoo_15_6 delete mode 100644 packages/addons/service/touchscreen/source/config/ts.conf-udoo_7 delete mode 100644 packages/addons/service/touchscreen/source/config/ts.conf-waveshare delete mode 100644 packages/addons/service/touchscreen/source/config/ts_env.sh-sample delete mode 100644 packages/addons/service/touchscreen/source/config/ts_env.sh-waveshare delete mode 100644 packages/addons/service/touchscreen/source/lock-screen.py delete mode 100644 packages/addons/service/touchscreen/source/resources/language/English/strings.xml delete mode 100644 packages/addons/service/touchscreen/source/resources/language/German/strings.xml delete mode 100644 packages/addons/service/touchscreen/source/resources/media/background.jpg delete mode 100644 packages/addons/service/touchscreen/source/resources/media/crosshair.png delete mode 100644 packages/addons/service/touchscreen/source/resources/screenshot-001.png delete mode 100644 packages/addons/service/touchscreen/source/resources/screenshot-002.png delete mode 100644 packages/addons/service/touchscreen/source/resources/screenshot-003.png delete mode 100644 packages/addons/service/touchscreen/source/resources/screenshot-004.png delete mode 100644 packages/addons/service/touchscreen/source/resources/settings.xml delete mode 100644 packages/addons/service/touchscreen/source/service.py delete mode 100644 packages/addons/service/touchscreen/source/system.d/service.touchscreen.service diff --git a/packages/addons/service/touchscreen/addon.xml b/packages/addons/service/touchscreen/addon.xml deleted file mode 100644 index 78f0e7d878..0000000000 --- a/packages/addons/service/touchscreen/addon.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - -@REQUIRES@ - - - - - - executable - - - @PKG_SHORTDESC@ - -@PKG_LONGDESC@ - - -@PKG_DISCLAIMER@ - - all - -@PKG_ADDON_NEWS@ - - - resources/icon.png - resources/fanart.png -@PKG_ADDON_SCREENSHOT@ - - - diff --git a/packages/addons/service/touchscreen/changelog.txt b/packages/addons/service/touchscreen/changelog.txt deleted file mode 100644 index 927b2407d4..0000000000 --- a/packages/addons/service/touchscreen/changelog.txt +++ /dev/null @@ -1 +0,0 @@ -initial release diff --git a/packages/addons/service/touchscreen/icon/icon.png b/packages/addons/service/touchscreen/icon/icon.png deleted file mode 100644 index df5358d5f2d595726abd743aa40d010897137f48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30106 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 diff --git a/packages/addons/service/touchscreen/package.mk b/packages/addons/service/touchscreen/package.mk index c4f84be812..9153235b37 100644 --- a/packages/addons/service/touchscreen/package.mk +++ b/packages/addons/service/touchscreen/package.mk @@ -3,33 +3,24 @@ PKG_NAME="touchscreen" PKG_VERSION="1.0" -PKG_REV="0" +PKG_REV="1" PKG_ARCH="any" PKG_ADDON_PROJECTS="Generic RPi ARM" PKG_LICENSE="GPL" PKG_SITE="" PKG_URL="" -PKG_DEPENDS_TARGET="toolchain tslib evtest" +PKG_DEPENDS_TARGET="toolchain" PKG_SECTION="service" -PKG_SHORTDESC="Touchscreen: support addon for Touchscreens" -PKG_LONGDESC="Touchscreen: addon creates new virtual input device and \ -converts data from touchscreen to Kodi. Short tap sends button press event \ -and long tap sends only xy coordinates. Also includes calibration program." +PKG_SHORTDESC="Add-on removed" +PKG_LONGDESC="Add-on removed" PKG_TOOLCHAIN="manual" +PKG_ADDON_BROKEN="Touchscreen no longer required thus removed." + PKG_IS_ADDON="yes" PKG_ADDON_NAME="Touchscreen" -PKG_ADDON_TYPE="xbmc.service" +PKG_ADDON_TYPE="xbmc.broken" addon() { - mkdir -p ${ADDON_BUILD}/${PKG_ADDON_ID}/bin - - cp ${PKG_DIR}/addon.xml ${ADDON_BUILD}/${PKG_ADDON_ID} - - # set only version (revision will be added by buildsystem) - sed -e "s|@ADDON_VERSION@|${ADDON_VERSION}|g" \ - -i ${ADDON_BUILD}/${PKG_ADDON_ID}/addon.xml - - cp $(get_install_dir tslib)/usr/bin/* ${ADDON_BUILD}/${PKG_ADDON_ID}/bin - cp $(get_install_dir evtest)/usr/bin/evtest ${ADDON_BUILD}/${PKG_ADDON_ID}/bin + : } diff --git a/packages/addons/service/touchscreen/source/bin/ts_calibrate.sh b/packages/addons/service/touchscreen/source/bin/ts_calibrate.sh deleted file mode 100644 index 8b7394b0b2..0000000000 --- a/packages/addons/service/touchscreen/source/bin/ts_calibrate.sh +++ /dev/null @@ -1,65 +0,0 @@ -#!/bin/sh - -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) - -. /etc/profile - -oe_setup_addon service.touchscreen - -if [ -d /usr/share/kodi/addons/service.touchscreen ]; then - # addon included in image - ADDON_DIR="/usr/share/kodi/addons/service.touchscreen" -fi - -. $ADDON_DIR/bin/ts_env.sh - -echo "touchscreen device: $TSLIB_TSDEVICE" - -if [ "$1" = "service" ]; then - # recalibrate from service if required - SETTINGS_XML="$ADDON_HOME/settings.xml" - if [ -f "$SETTINGS_XML" ]; then - mkdir -p /var/config - - # check settings version - XML_SETTINGS_VER="$(xmlstarlet sel -t -m settings -v @version $SETTINGS_XML)" - if [ "$XML_SETTINGS_VER" = "2" ]; then - xmlstarlet sel -t -m settings/setting -v @id -o "=\"" -v . -o "\"" -n "$SETTINGS_XML" > /var/config/ts_calibration_addon.conf - else - xmlstarlet sel -t -m settings -m setting -v @id -o "=\"" -v @value -o "\"" -n "$SETTINGS_XML" > /var/config/ts_calibration_addon.conf - fi - - . /var/config/ts_calibration_addon.conf - - if [ "$TS_RECALIBRATE" = "true" ]; then - sed -i 's|id="TS_RECALIBRATE"[ ]*value="true"|id="TS_RECALIBRATE" value="false"|g' "$SETTINGS_XML" - touch $ADDON_HOME/recalibrate - fi - fi - - if [ -f $ADDON_HOME/recalibrate ]; then - echo "recalibrating..." - rm -f $ADDON_HOME/recalibrate - ts_calibrate - fi -else - echo "Stopping Kodi and touchscreen daemon..." - systemctl stop kodi - systemctl stop ts_uinput_touch - - while pidof kodi.bin &>/dev/null; do - sleep 0.5 - done - - killall ts_uinput_touch &>/dev/null - - ts_calibrate - - # restart both if argument was set - if [ "$1" = "run" ]; then - echo "Starting touchscreen daemon and Kodi..." - systemctl start ts_uinput_touch - systemctl start kodi - fi -fi diff --git a/packages/addons/service/touchscreen/source/bin/ts_env.sh b/packages/addons/service/touchscreen/source/bin/ts_env.sh deleted file mode 100644 index cef201ca19..0000000000 --- a/packages/addons/service/touchscreen/source/bin/ts_env.sh +++ /dev/null @@ -1,85 +0,0 @@ -#!/bin/sh - -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) - -. /etc/profile - -oe_setup_addon service.touchscreen - -if [ -d /usr/share/kodi/addons/service.touchscreen ]; then - # addon included in image - ADDON_DIR=/usr/share/kodi/addons/service.touchscreen -fi - -if [ ! -f $ADDON_HOME/ts.conf-generic ]; then - cp $ADDON_DIR/config/* $ADDON_HOME -fi - -if [ -f $ADDON_HOME/ts_env.sh ]; then - # use user supplied script - if [ ! -x $ADDON_HOME/ts_env.sh ]; then - chmod +x $ADDON_HOME/ts_env.sh - fi - - dos2unix $ADDON_HOME/ts_env.sh - dos2unix $ADDON_HOME/ts.conf - - . $ADDON_HOME/ts_env.sh -else - # automatic start only on Udoo dual/quad for ldb screen - LDB="" - if grep -iq ":dev=ldb" /proc/cmdline; then - LDB="yes" - # maybe 7" LVDS display - modprobe st1232 >/dev/null 2>&1 - fi - - if [ -n "$LDB" ]; then - # find event# with command - # ls -l /dev/input/by-id - # or using evtest program - - # st1232 module is always loaded so check for 3M first - TS_DEVICE_1="3M 3M USB Touchscreen - EX II" - TS_DEVICE_2="st1232-touchscreen" - TS_DEVICE_CONF_1="ts.conf-udoo_15_6" - TS_DEVICE_CONF_2="ts.conf-udoo_7" - TS_DEVICE_CONF_GENERIC="ts.conf-generic" - - #TS_DEVICE="$TS_DEVICE_1" # use specified one, should exist ts.conf for it - TS_DEVICE="" # find one automatically - #echo "device: $TS_DEVICE" - - TS_DEVICE_CONF="" - if [ -n "$TS_DEVICE" ]; then - TSLIB_TSDEVICE=$(echo 999 | evtest 2>&1 >/dev/null | awk -F':' -v TS_DEVICE="$TS_DEVICE" '$0 ~ TS_DEVICE {print $1}') - TS_DEVICE_CONF="$TS_DEVICE_CONF_GENERIC" - else - TSLIB_TSDEVICE=$(echo 999 | evtest 2>&1 >/dev/null | awk -F':' -v TS_DEVICE="$TS_DEVICE_1" '$0 ~ TS_DEVICE {print $1}') - if [ -n "$TSLIB_TSDEVICE" ]; then - TS_DEVICE_CONF="$TS_DEVICE_CONF_1" - rmmod st1232 >/dev/null 2>&1 # it's not - else - TSLIB_TSDEVICE=$(echo 999 | evtest 2>&1 >/dev/null | awk -F':' -v TS_DEVICE="$TS_DEVICE_2" '$0 ~ TS_DEVICE {print $1}') - if [ -n "$TSLIB_TSDEVICE" ]; then - TS_DEVICE_CONF="$TS_DEVICE_CONF_2" - fi - fi - fi - - if [ ! -f $ADDON_HOME/ts.conf -a -n "$TS_DEVICE_CONF" ]; then - cp "$ADDON_HOME/$TS_DEVICE_CONF" $ADDON_HOME/ts.conf - fi - - export TSLIB_TSDEVICE="$TSLIB_TSDEVICE" - export TSLIB_PLUGINDIR=$ADDON_DIR/lib - export TSLIB_CONSOLEDEVICE=none - export TSLIB_FBDEVICE=/dev/fb0 - export TSLIB_CALIBFILE=$ADDON_HOME/pointercal - export TSLIB_CONFFILE=$ADDON_HOME/ts.conf - - #export TSLIB_RES_X=800 - #export TSLIB_RES_Y=480 - fi -fi diff --git a/packages/addons/service/touchscreen/source/bin/ts_uinput_touch.sh b/packages/addons/service/touchscreen/source/bin/ts_uinput_touch.sh deleted file mode 100644 index ad378d509b..0000000000 --- a/packages/addons/service/touchscreen/source/bin/ts_uinput_touch.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/sh - -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) - -. /etc/profile - -oe_setup_addon service.touchscreen - -if [ -d /usr/share/kodi/addons/service.touchscreen ]; then - # addon included in image - ADDON_DIR="/usr/share/kodi/addons/service.touchscreen" -fi - -. $ADDON_DIR/bin/ts_env.sh - -params=$* - -if [ "$1" = "service" ]; then - # skip service parameter and daemonize - params="-d" -else - # started from command line - systemctl stop ts_uinput_touch >/dev/null 2>&1 - killall ts_uinput_touch >/dev/null 2>&1 -fi - -echo " touchscreen device: '$TSLIB_TSDEVICE'" - -if [ -n "$TSLIB_RES_X" -a -n "$TSLIB_RES_Y" ]; then - echo "touchscreen resolution: '${TSLIB_RES_X}x${TSLIB_RES_Y}'" - params="-x $TSLIB_RES_X -y $TSLIB_RES_Y $params" -fi - -echo "params: .$params." -if [ ! -x $ADDON_HOME/ts_uinput_touch ]; then - ts_uinput_touch $params -else - echo "Using $ADDON_HOME/ts_uinput_touch" - $ADDON_HOME/ts_uinput_touch $params -fi diff --git a/packages/addons/service/touchscreen/source/calibrate.py b/packages/addons/service/touchscreen/source/calibrate.py deleted file mode 100644 index 8dc6bd6629..0000000000 --- a/packages/addons/service/touchscreen/source/calibrate.py +++ /dev/null @@ -1,142 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) - -import os -import socket -import sys -from threading import Thread -import xbmc -import xbmcgui -import xbmcaddon - -TEXT_ALIGN_LEFT = 0 -TEXT_ALIGN_RIGHT = 1 -TEXT_ALIGN_CENTER_X = 2 -TEXT_ALIGN_CENTER_Y = 4 -TEXT_ALIGN_RIGHT_CENTER_Y = 5 -TEXT_ALIGN_LEFT_CENTER_X_CENTER_Y = 6 -ACTION_PREVIOUS_MENU = 10 -ACTION_BACKSPACE = 92 - -SOCK_PATH = "/tmp/ts_calibrate.socket" -TSLIB_EDGE_OFFEST = 50 -CROSSHAIR_IMAGE_SIZE = 23 -CROSSHAIR_IMAGE_OFFSET = 11 -SKIN_WIDTH = 1280 # we are using 720p skin -SKIN_HEIGHT = 720 - -class coordinates: - var_x = 0 - var_y = 0 - -def server_thread(conn, self): - while True: - data = conn.recv(128) - if not data: - break - - self.currentTarget = self.currentTarget + 1 - if self.currentTarget > 0: - self.removeControl(self.targetImage) - - if self.currentTarget == 5: - xbmcgui.Dialog().ok("Calibration", "Calibration done.") - break - - self.info.setLabel("Touch '" + data + "' crosshair") - self.targetImage = xbmcgui.ControlImage( - self.touch_points[self.currentTarget].var_x - CROSSHAIR_IMAGE_OFFSET, - self.touch_points[self.currentTarget].var_y - CROSSHAIR_IMAGE_OFFSET, - CROSSHAIR_IMAGE_SIZE, CROSSHAIR_IMAGE_SIZE, - self.crosshair_path, colorDiffuse='0x00000000') - self.addControl(self.targetImage) - - # out of loop, close connection - conn.close() - os.remove(SOCK_PATH) - self.retval = 0 - self.close() - -class ts_calibrate(xbmcgui.WindowDialog): - def __init__(self): - self.retval = 0 - self.media_path=os.path.join(addon.getAddonInfo('path'), 'resources','media') + '/' - self.crosshair_path = self.media_path + 'crosshair.png' - self.currentTarget = -1 - - self.edge_offset_x = TSLIB_EDGE_OFFEST * SKIN_WIDTH / self.getWidth() - self.edge_offset_y = TSLIB_EDGE_OFFEST * SKIN_HEIGHT / self.getHeight() - - self.touch_points = [coordinates() for i in range(5)] - self.touch_points[0].var_x = self.edge_offset_x - self.touch_points[0].var_y = self.edge_offset_y - self.touch_points[1].var_x = SKIN_WIDTH - self.edge_offset_x - self.touch_points[1].var_y = self.edge_offset_y - self.touch_points[2].var_x = SKIN_WIDTH - self.edge_offset_x - self.touch_points[2].var_y = SKIN_HEIGHT - self.edge_offset_y - self.touch_points[3].var_x = self.edge_offset_x - self.touch_points[3].var_y = SKIN_HEIGHT - self.edge_offset_y - self.touch_points[4].var_x = SKIN_WIDTH / 2 - self.touch_points[4].var_y = SKIN_HEIGHT / 2 - - self.background = xbmcgui.ControlImage(0, 0, SKIN_WIDTH, SKIN_HEIGHT, - self.media_path + 'background.jpg', colorDiffuse = '0xffffffff') - self.addControl(self.background) - - tmp_str = "Tslib/Kodi calibration utility\n\nTouch crosshair to calibrate" - tmp_str += "\n\nresolution: " + str(self.getWidth()) + "x" + str(self.getHeight()) - tmp_str += "\nskin: " + str(SKIN_WIDTH) + "x" + str(SKIN_HEIGHT) - - self.about = xbmcgui.ControlLabel( - 10, 80, SKIN_WIDTH, 400, - "", textColor = '0xffffffff', font = 'font25', alignment = TEXT_ALIGN_CENTER_X) - self.addControl(self.about) - self.about.setLabel(tmp_str) - - self.info = xbmcgui.ControlLabel( - 20, SKIN_HEIGHT/2 - 40, - 1000, 400, - "", textColor = '0xffffffff', font = 'font30', alignment = TEXT_ALIGN_LEFT) - self.addControl(self.info) - self.info.setLabel("") - - if os.path.exists(SOCK_PATH): - os.remove(SOCK_PATH) - - sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) - sock.bind(SOCK_PATH) - sock.listen(1) - - # enter calibration mode - os.system("killall -SIGUSR1 ts_uinput_touch") - - print 'Waiting for calibration connection' - conn, addr = sock.accept() - print 'Calibration connection accepted' - - self.t = Thread(target=server_thread, args=(conn, self,)) - self.t.start() - - def onAction(self, action): - if action == ACTION_PREVIOUS_MENU or action == ACTION_BACKSPACE: - self.retval = 0 - self.close() - -addon = xbmcaddon.Addon(id = 'service.touchscreen') -finished = False - -while finished == False: - dialog = ts_calibrate() - dialog.doModal() - - if dialog.retval == 0: - finished = True - del dialog - -del addon -# exit calibration mode -os.system("killall -SIGUSR2 ts_uinput_touch") - -if os.path.exists(SOCK_PATH): - os.remove(SOCK_PATH) - \ No newline at end of file diff --git a/packages/addons/service/touchscreen/source/config/ts.conf-generic b/packages/addons/service/touchscreen/source/config/ts.conf-generic deleted file mode 100644 index a3aeb4d74b..0000000000 --- a/packages/addons/service/touchscreen/source/config/ts.conf-generic +++ /dev/null @@ -1,8 +0,0 @@ -module_raw input grab_events=1 -module pthres pmin=1 -module variance delta=30 -module dejitter delta=100 - -module linear -# or use swap_xy parameter to swap axes -#module linear swap_xy=1 diff --git a/packages/addons/service/touchscreen/source/config/ts.conf-udoo_15_6 b/packages/addons/service/touchscreen/source/config/ts.conf-udoo_15_6 deleted file mode 100644 index d71e4cf123..0000000000 --- a/packages/addons/service/touchscreen/source/config/ts.conf-udoo_15_6 +++ /dev/null @@ -1,6 +0,0 @@ -# Udoo with 15.6" 1366x768 display with 3M USB Touchscreen - EX II -module_raw input grab_events=1 -module pthres pmin=1 -module variance delta=30 -module dejitter delta=100 -module linear diff --git a/packages/addons/service/touchscreen/source/config/ts.conf-udoo_7 b/packages/addons/service/touchscreen/source/config/ts.conf-udoo_7 deleted file mode 100644 index 6dedf89a97..0000000000 --- a/packages/addons/service/touchscreen/source/config/ts.conf-udoo_7 +++ /dev/null @@ -1,3 +0,0 @@ -# Udoo with 7" 800x480 display with ST1232 touch controler -# only st1232 raw input module is used -module_raw st1232 grab_events=1 invert_y=480 diff --git a/packages/addons/service/touchscreen/source/config/ts.conf-waveshare b/packages/addons/service/touchscreen/source/config/ts.conf-waveshare deleted file mode 100644 index 1cfd5ab95b..0000000000 --- a/packages/addons/service/touchscreen/source/config/ts.conf-waveshare +++ /dev/null @@ -1,6 +0,0 @@ -# len is hidraw data size -module_raw waveshare len=22 -module pthres pmin=1 -module variance delta=30 -module dejitter delta=100 -module linear diff --git a/packages/addons/service/touchscreen/source/config/ts_env.sh-sample b/packages/addons/service/touchscreen/source/config/ts_env.sh-sample deleted file mode 100644 index 586e702c02..0000000000 --- a/packages/addons/service/touchscreen/source/config/ts_env.sh-sample +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) - -# find touchscreen device by name (substring) using evtest program - -# $ evtest -# No device specified, trying to scan all of /dev/input/event* -# Available devices: -# /dev/input/event0: Video Bus -# /dev/input/event1: Goodix Capacitive TouchScreen -# Select the device event number [0-1]: - -TOUCHSCREEN_NAME="Goodix Capacitive TouchScreen" - -TSLIB_TSDEVICE=$(echo 999 | evtest 2>&1 >/dev/null | awk -F':' -v TS_NAME="$TOUCHSCREEN_NAME" '$0 ~ TS_NAME {print $1; exit}') -export TSLIB_TSDEVICE - -export TSLIB_PLUGINDIR=$ADDON_DIR/lib -export TSLIB_CONSOLEDEVICE=none -export TSLIB_FBDEVICE=/dev/fb0 -export TSLIB_CALIBFILE=/storage/.kodi/userdata/addon_data/service.touchscreen/pointercal -export TSLIB_CONFFILE=/storage/.kodi/userdata/addon_data/service.touchscreen/ts.conf - -# sometimes needed -#export TSLIB_RES_X=800 -#export TSLIB_RES_Y=480 diff --git a/packages/addons/service/touchscreen/source/config/ts_env.sh-waveshare b/packages/addons/service/touchscreen/source/config/ts_env.sh-waveshare deleted file mode 100644 index 347ce70dc6..0000000000 --- a/packages/addons/service/touchscreen/source/config/ts_env.sh-waveshare +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) - -# change vid/pid for waveshare touchscreen device -PRODUCT_VID=0EEF -PRODUCT_PID=0005 - -# device set directly or find automaticaly at the end of this script -export TSLIB_TSDEVICE="" -#export TSLIB_TSDEVICE="/dev/hidrawN" - -export TSLIB_PLUGINDIR=$ADDON_DIR/lib -export TSLIB_CONSOLEDEVICE=none -export TSLIB_FBDEVICE=/dev/fb0 -export TSLIB_CALIBFILE=/storage/.kodi/userdata/addon_data/service.touchscreen/pointercal -export TSLIB_CONFFILE=/storage/.kodi/userdata/addon_data/service.touchscreen/ts.conf - -export TSLIB_RES_X=800 -export TSLIB_RES_Y=480 - - -# find touchscreen device -if [ "$TSLIB_TSDEVICE" = "" ]; then - PRODUCT_VID_PID="0000${PRODUCT_VID}:0000${PRODUCT_PID}" - echo "PRODUCT_VID_PID: $PRODUCT_VID_PID" - - hidrawN="" - for dev in /sys/class/hidraw/hidraw*/device/uevent; do - echo - echo "device: $dev" - - HID_ID=$(cat $dev | grep HID_ID | grep "$PRODUCT_VID_PID") - if [ -n "$HID_ID" ]; then - hidrawN=$(echo $dev | awk -F "/" '{print $5}') - hidrawN="/dev/$hidrawN" - echo "OK HID_ID: $HID_ID" - echo "OK hidrawN: $hidrawN" - break - fi - done - - if [ -n "$hidrawN" ]; then - echo "found hidrawN: $hidrawN" - export TSLIB_TSDEVICE=$hidrawN - fi -fi diff --git a/packages/addons/service/touchscreen/source/lock-screen.py b/packages/addons/service/touchscreen/source/lock-screen.py deleted file mode 100644 index 37849b578d..0000000000 --- a/packages/addons/service/touchscreen/source/lock-screen.py +++ /dev/null @@ -1,33 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) - -import xbmc -import xbmcgui -import xbmcaddon - -__scriptid__ = 'service.touchscreen' -__addon__ = xbmcaddon.Addon(id=__scriptid__) -_ = __addon__.getLocalizedString - -# http://forum.kodi.tv/showthread.php?tid=230766 -def handle_wait(time_to_wait, title, text): - dialog = xbmcgui.DialogProgress() - ret = dialog.create(' ' + title) - secs = 0 - percent = 0 - increment = int(100 / time_to_wait) - - while secs < time_to_wait: - secs += 1 - percent = increment*secs - secs_left = time_to_wait - secs - remaining_display = (_(2030).encode('utf-8')) % secs_left - dialog.update(percent, text, "", remaining_display) - xbmc.sleep(1000) - - dialog.close() - return False - -# how long to lock the screen -lock_secs = 30 -handle_wait(lock_secs, _(2010).encode('utf-8'), _(2020).encode('utf-8')) diff --git a/packages/addons/service/touchscreen/source/resources/language/English/strings.xml b/packages/addons/service/touchscreen/source/resources/language/English/strings.xml deleted file mode 100644 index b4a33ff2cd..0000000000 --- a/packages/addons/service/touchscreen/source/resources/language/English/strings.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - General - Recalibrate after reboot - Clean screen - - Touchscreen - Now you can safely clean the screen. - Still %d seconds left. - diff --git a/packages/addons/service/touchscreen/source/resources/language/German/strings.xml b/packages/addons/service/touchscreen/source/resources/language/German/strings.xml deleted file mode 100644 index 80feb80aa0..0000000000 --- a/packages/addons/service/touchscreen/source/resources/language/German/strings.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - Allgemein - Nach einem Neustart neu kalibrieren - Touchscreen reinigen - - Touchscreen - Sie können jetzt den Touchscreen sicher reinigen. - Noch %d Sekunden übrig. - diff --git a/packages/addons/service/touchscreen/source/resources/media/background.jpg b/packages/addons/service/touchscreen/source/resources/media/background.jpg deleted file mode 100644 index 914a97130899d91671acc70dd3d745901cad6d39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53844 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

vk&g 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 O89ZJ6T-G@yGywqWAv!Yv diff --git a/packages/addons/service/touchscreen/source/resources/screenshot-001.png b/packages/addons/service/touchscreen/source/resources/screenshot-001.png deleted file mode 100644 index b1df8b518f77e0e854b6a8dcbf4b1c417b56a785..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 145216 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

CRR;5odYmepV1)R-(Hut8 zDI~v?mDzV8?ld`eaZWahGYNXft5B*D$c6N&mY9^YyD?1O`(cCoEJ#SjIHup~sNTA2 zQ08a7=k1Fd*OI3|}4E7DX;Z(I%u~b_AWx(Gzu&JSVwgRWT8%@eN z37-UrGW(hu>u-r_sp7V0pTC<9DrqKu2AbET-`=Fi6n?X*uU5Y*8SDcwSe?Dlb9$5v zDKmMtX=Lx{5RZF0>QImR3nVzEJ~M|3y1=&8f6HRN%d7tW=d?il-<+p@nv(iJCu*xV#LDRLh57I9k!GSeS0)GQrN&f;>R$3jVc*95_2WlzZQ?Bqp9l-9d5u06n zGOd3>`l;`hnX&uT9(d58p2tEIq+_i)D_-r3Ap{t472tjcQUz40sJkwyp97UP+`TqP zH}ZQ^}jt^yL^o_Cax=`8nOK-w`0#{|AdUy!9Lusx+Vr*^*#Nctl=D!D2^lMX512Pc}V zq6wp4A^o{>!uli8iv^teMX>8oel>a@NL^98EtZ;HH^X>JgktA|ky6}-T10lcW~i*@ z@7SI1%LY)zcKFP)8<_&<*`atHJ^s*98|`w`g2o1ex*Y;Cwg z&|j~{SW9JCO;DL^w@2j<^Nc z3eaTnN|%@YkqGt0cJ>-bUaH;%idjhdD@>}AaasEj+Lx+ITq|R$OYA>_q)aZ0@}-tV z;M}7!qko5&9{EUGjG$Uj`g8l-=cqkWZ?EX6yW!KF!fAiEWcPG^s2j&9MjDf1h9la^ zvz}U?>qH`0|HyY(0FC=*j@d`BO`6FSqj4%Lon+} z&p7Iy)t{_XIV$Yt$l+*}qq@gml~V%hV?gQ^(GSW0oW@!^{du^*mHwGSsh=8Y`X@&{ z49j!?TeUloR?MQPiK#Oej-%l!n4Y+bYWL96G(Fnq<46Oan+7@K#ct-S&8jj4YN=J8 z0rz%Ecm`Kx@rnDUR5&V}Ch5F3H>I7=AZZAAKdTCCHkB>1NF@}*l&$-up&CO?7wY91 zN8Pge#Zd=;h;ptUIqC?eYSfOKI_hQ5rg|Ny%j$<#v{ZuCM_xCRpP}N~_s!3NQ+A^m z{Aa${kw46VWN6*WNdECy`E#V(qKD~&GE)YlLT2x3! zU54d-aqkqoRR`w&`=N_Z&HTQK^4al_RL1!y^uJ>3n6NOdNZ(E2~tu3foxWCx1D6m4*o zkE*B-bUC|Uxd%Wu8godN?X|Gd@F834U9}p6_ZekQN?!m`=GL70-p+AtM}Sw~ z%(kh=9(8K$?T-z>Sv@JG`v!-Vw5sgbCrS>JQ4NzgfxJ~l zb;h-0j`zuKKT$$8luno3DYT<-TY`>tXqeeCU{26yrc)smRhv}cR0AMQGHwOAIUM29 zH%7&q(!phG>@hMM1w~RB-_-^+RtPgovWejkJ_dXN$#+0>p~toA{yEhC8{11yXBp=z zD|x15z43kBXVkuL^&d(O7>_znZc&lvKQihud9L^0Flsxn{Npu?=kkv#8h<>Sr-nW1 zB!ywbN;bvuY%)L<9}FPMJ%9rK3l4HuGGQsyvMn4$!inOS&w!NV(+dODu^JI3SzZil z(Oxp(f}FvnKrP<)f&*jx)p$xXi7_^Q9r4Z74ppxF3$=?@oJpXU5R;w&tf*sm04dKN zANG2zF$b%EsD_)R?`@rPTov-Ic!b%XY19JhFXo^Ls9T7hjzYuXA47ZL#!*GWr)26~ zjQa4GsQo>t>QL1@M2Mh@1dWpKr^KN^tdo~!-uO_wh@LK2hBUA8`+p2G8x6$c?ley6 z)>5)y+V>@OfKggQEpKB^WLC9fn(Mdth>ZL*AbB#_0Xb?9kM^m3H4dtYy` zjKYL67o78HxY@bYLq2?f3CC|_gS^*(7Otb0wfou@(a7dsU~^OuEPML zw1?1-L9-q;Rc9-GWA%eU+d-NiNBpBKDbi9Rhw8buZ}py9zl~H?>~C}XwgNvHh6+Y% z&PJ-v=nq?`-jQ}5jGCEgCrCco;!0#4XeTges;#Ke81lL@H z6+hF>%808N743Qu*2i_Y0X{e!+8!aJ?=O`AVR7$ykQCsMK zN72f04BzR8H(34Blp{vzP#qc70L$zp@9xw7QK_APTGaf@3Z}Xkbr9R0{&_@fR|(?m za8PCL#;Co`HAU6VVo0hlkwU$7rpnZ}C#O-R>U4={B`5m;lxS0STPh%dET>oQUH$Zv z_>(gfiB-U<>R9|qv!4Ubfn|F?P8cRsuS(jl_0O7J%J1PZYgXBPRTGlV=36Po6wDm7 zz!7B`zaH!UYW4S;#ObPI^%E>N4&(ZfFI-sbqf1D1T`G3+C;B zWPwos2OJ7|y*Os=WWj->BIx2R>0XIT-13#qCffWz7C88FD!-w%)z~IXsr5NnB=*=9 z{3;EPp3ze#5KMrn@=;}`*pYcDWYqp*M!g?+E2>*cw_Eo%1NiEAey*mu@kp5;Fco{W z`tMdjC1XlS)GA7qe|u3eCRtXg8_uQYXwSg;lTMy+hx*M0P~|LD<^^!(qr#rAGi76(&_O>PP(ghyN&l`sQC5j)MkFiBj763<#%*FO+`#5T_I3dq_r8vB@kRk zG2i%klbW_b?Ss{SI*WAMR0pvx>h7LwyBPjrCC@%Hol-Lu$}c=Lg$b^Y9kzQ%!{@ncBkq6%Nf^ zKHnEdF$Ey=1-I3m@5)*eM)-kS(yBew4+Z7Ws)mYlW$>eDK^~~@i7co%D0+&RirE3D zlXQ1mJ>h7C$6hT8Pxh>SZz#6So0fE!bcQwC8zR+TKxMe}7mRvr1G3F~1*-F?2^tP{ zG>IMm;+iEkMFG#$``n@-qQlo=3eo(@t&EN8L9UCURBHPRU46NcSN#zt_zk1QY+#&r<|42FcC%9I+{HMBQiP{}Y|cP8mNGmay9bl+t8Y*}se`MN=90_mzWi z!KBHk*D{cVA$}a-8Th~*y18IfIaD2(rt3Yt<-xFpp#|lkYO3BcBtKz$?MK8*)s62* zn^R8hjIRAa(3@1hW%z}~zi#$=6{oEWsMYEh(`3w4qWv&SU0rBzN7Lzhd&-Xroc=tI$*Q@yT_E4&I}n;J!rQg)!$jC@`w!8!0r5I3s4HA+U2n%1Ig&WD3t2Jh>d3k z{(TMaJDK##F@Q;a(9%n|PvaDCz>%vA{o{8&FGi)yl_^<%s^n7+Q=Bi-pOQp}hHB^Md{6jW_2$tXSK6yi`-sc{D{=@QzkW(wEVyTK! zt^nFp5W^jyr&gqRygM9uT-0x;Y!}$Z{GB0$thNqzhG7POz)euUfxn$$*{M%Kv}IAk zNgO#~U%t0}uwvXn6_rRa8HMH)QKW8={S+HSHhGZTWlPD{C!_YA4F3s_IrYD!HM#v^ z_Md$HCr~Oz-Qe`sHT{9h6S+T7*vIVY77zX*5%Q(7=+gWW@T;5s7NLqrl}xHEotg_y z1yu$fIiyw*^o&-w5WN8$?6N%ue=u`__y2BVhAcoZf3EP} z{8Jo~%;C={usj&K?3?ujB>A(xL@-Bxc}MBlL25J*Vu1Uz3aF!KqOFX6GAgZp@)R{c z>H2L9{x?z+wZF4eOq_6wNvkmlbH0S)HQPBsE*oUP^b9+snlL1r| zz}^r-sPiMPwdHVtvusPL3{+>bHKe8uvCeS==j`1HgWo&Qm6lV;W)3i}JG(*z0qz1S zrERSKkw&>Z{2)IhNR%d(05US_LEHYH164LtFWyl3$RuP`aPL!@VF;+UcnGEboNcky z3{-bfxsXw(i7r*i7PoMctLLo?z5c*k&iB)pr>mwmsi{7GjEo8f4y3;Ox*!(oc(vED zef{v){yfFVB~`i>?U(38-ilR$VK)0uTxUNhU)M<^r`?5ad{EArTOEf<>qj` zLHqx?WXIr`YK`gaU{p3l5hXJ}N|Uo$Q7SL$K4!W90U+&w`*B{9%{9E+qw!)n&VF3i zJ)o}l{lHXjF*cmc2u4NqkgvR!P;F8iEZsvv{r+qM>M?cxf>DVr2c0ioe!6AUjF+}L z|0RA6pvC>fst@-Gmmeyo@qm@<%a%rU3S}Bw0xn`z?n8OaabzX|BLGVO1jEJxe=BV) zBmxAj;{DziSWsY8{Hm>ROT|IS-_r1GYPyS2N1&9utsqaJl?vyC7ITCtJ5J3?M|qkY zL4%V+wgD<+L$SST%8aLq`=)_WYkEqvL_fBn5>QRnmwNld6L%u!ay*eQ3jT9)-#A4Z z;O19b&Hx-9_J$drnoW4f8Pxk4pDL6&NT{Wv(BY30nNTr36%V3~Qhchu&|?pB#(Nlb z+Q9vru_?x#1cJ-VXsZ77qB41wSfyueD-&1fd2~7V^P>BC?idb$a=+@46>whf)PRR- z^nTRUug3bv6hC#f%A=$=N+cNe=sz_w>Prb#jM~BDvGnICbU`QsBi9e_IxmuhupJM*`vPk|38WBKroEye>;rYwpRbF zXN9grdsH&2h5KL1sH#bng+>nSOmDD-Q7RX;Q)$?a%Iw0IQjs;9RCe-=_ie23vv_~D z_18Q~85dO+`Kd~)-@m$1nFPIMX=*~)uep~L!oZ0%{e?QkV2x4Hj^zXKD?0s=cTrTkYXRIZ!bJf-v<(4ggzefbpU}s+*t5 zebV^$fLxBzn*0f;9dx~i@>9pNGFnrSrn7}k(84b$f;j!ja1k*oZKJwF)p}IxPb72) zM}JKz%KZqa{Vz`_`obVNdMHwXeaOh^iQJk)3&Ks387tfXu&gmkQlc82F2Ptgks68m z{m`P$`e{(6lI(+DaUUzLA-KU=Wuq@(DPFF4du2v(QDHPps`T|6owC|{)2!gYFXiY% z`#50LFZrT_*_3_oZZ`0+x(P-&dwd380o7-P?E#e*F%VFpIv1F3d9_;oJ`z=o`gL9Z z`qS)waHzwTj49k!M$P0C70jHF5~xwIupm1N#vy&`kF+Q?fqT0W%vDV) z=>7$J(X--36ag@stl@5Ew9rMM6j#2jSL@lzgn={XTvZpU+VzZaQf>hbb4+E*1FEsQ z-H*ku3rcOVd5JwNa{35?jxSB<`wpX0_4^rdDX>n5jM}nuuxF&cwz%)UDTpHN$7+`nZ{+_7&gQBex*xc$!U#W{f>9@W zyj7xnC^3X-mr-E_AI$ALZt){RrNbXhs07sYC?Wd(WA7Bd7NOH+^}8i0)jv3UJ5;@W zlR7P}kOpd1A4K%{?-N{AuKpu!4RNX9m3cla#(1ayKkyJJjf2}mP~<=tx1mh(b4KKB z5pGl=0bb&nWX#*uzORm2lnyZJ0F@7XQq)&^lnDp=Ocfa|X%K)UVY)06mpfJeShZzQ8B}Fdl%;n5u#7!eNgmp0 znyrOjZG=AxQW--vH`P4PpbYXy*bjGt8X1y9mkB+(sNn$ zo*8sXM5W+IJG*%*YF3uZ$7)Y>3j9kj;!ytDZK!@0M|6iq>tbY!I}`3HBV%}2doI4Q zm5OZiO5?#;W9UM$4yIyCiidjmyl=>2Gv}Sq+>JCn{W?dfup0yh5I~%;PBxb>gasM1 z1|eXnM?Z-{kVX`vp?L&yC4|MdhwM-zI56rppXMO{$E>8ff;xrx6QgUi<|;r;?f(YU zPv!M_+6&Z9KoqmS_#D8fier%gG>pxHPw8@%E4GCnM>}$B-S1E&`fG*A7F;W}zuNOP%+Fb0Qpj8f@L zsJtN6(w@3+A|*2g5X-gH%&9|uitU{-MFE9E3JF(0MjtiG9TPpEI;3Lhr;vn6(=fG| zTaZ*#_AGmZ zgpz_3xiBAL)DXE1=(CmKc(-6Sh!HL_X5H-ZExyt0C|Hr|UE^J68I!fv=dOqr)Xj-7YCtg=p^y}R^`<2uC!^<3~naE>78ZOfKy!1(gR`7$s1c19Bd2*p(02 z{IJ)IOu>7j2BQ0{j<`k({PpiZg=!Dy)wa3Ye~<>#Uqm~k#}_ACW>ZnXR$db)w`x|a zJ}f98bZFzeWA1m$iVgH>v&TDjm|VM?P+;dIJJ1X*8Tnnv;9E-_s+|CQoKI-z1Df%` zRm3T*{%9`sGf?G4AXK+mpsKlta?nxf^-om$Pcr0~l42qLkgpFiY8IfB(y=8bMbf2i z_7BZ9(I^Xys<#1Eil&aaoBrOer_%WMn6@>SMy?!drZbBg^rt5bT7YN(5AVQvsI9!@ z&W-y@amYdfzmvYp5N^;sic8Io)4E{PFrk`)v_aU@d~dKa<4O$3sGNUY_x!q$i%R~8 z98z{%&HWrr!uM=v{|AhEewI$lhgkZ59On(1zd| zA~d%P0V)7fefq3V{*;q`7!p;1oJk4wz_*{DS(%m>l2&o#?acpH=n`f0m<~#G;H|YK z8!KB|VzFBugcURv<8 z03?D<{2qzTQn6}Ya*sOft- zU9OeXHKX>^oRBa}$SJcmg$+dE%`{|p_iv(v0I2V}QJwtGFwo0VI#kpY9F@7(w3+}a zkt!jp%ngKt3SiY|D|NFP|4>!I8?mOEbUF&BRi{kZW6I6FMY&w+PrOECK~b2jW8mPw$ggULDQYJqcTD#Kf&q>jXU)$Ztn;rHJtI`qLlu>W^ zK9bFV9ICN;2;~pgerN$vwN$*)uL&&cl?3a|v;Z0v0YWqoj~D6Q$G}TtEu}7E7b}l2VZK1Is7xDGHvRyw5Ez+VQ3mcq}sC%-Oz!At^!6q z2OagTnV$lfg7Rk}jdBRAW=0*QY#xv6x;g_L>sER*ygrK)YVsh;5u@Ffmerm8rZX6I zhXGK;)|9LV2)ObsyE84XhY-iORK-(a0O`OssG3qkaiQpa37isyhQU% z(w=m}KdF!njQUz!3K_KwR{uI~x=}?9#xfnXpI)1UKz)N!hrp?g_R%a%@t12;AFSMZ z^IVA}TqQdA>7pHOaZ6#4NZ81&f}k2PdUI1&{>*rC$m`s9{aDRz0JCVAR)iBbDCp~{|-{Qxx!s<1&U#g_hIPW9BGyUEBIRUWpQ zDw6o4d3T@7Bx;2D={ArBj>N!Cp1>%3tnGkfxB`1kz|<@j6Bl0)*5>!%j1XW;;Q83r1;k5DJV$PY`dWnj1A%-MaEw z_NtGz!w*n)*_2y-)@Rq^2&sPW`7Th)x9t8EX*I8TTPP7~r+YQcp`kvG5vY&Xftp(m zWM}_ccm>l`sL6N;>b9yAknacAzM-WSWz-JSHI}wH$>r~N5|9^lN4BJ7*KtQz;MDjq zX7PaP-~+u=`%JaW0eh6fqQw?H_SeOsv#N^Rd}Bz%sbLldRP)HaC%SPL221aHN@gIo zd?c5Y^HYqvWURWP*I)eU2tsxpb<05gP)@&2l)-R;Rhbo?zE&BOR(m4UPcZ6e^)G7p zPH63s*-u72ol(C&2vq!(%=YVI7+eT0J*lVIY-Qa%-O6&wi0o{Pu^D$@dBt*5Xa*}% z8Ir1J)~p&U_;lL;hJp&B)YmXF2os{d-pR7od$4fe^p2~8R@q9JWrf#Sre4#ud4@g% zZ&UhyHU8WbmbDl2F8iNlFY?bi%mky>gqO^x$9cRC)N89h#iF9p6$MdBAXfC4>HzAI zf%HDP%8j z(~0M*gHiReA#e&JTHTwB3f5XfwXQQ!ka~Pt)4UT?|JOH0J>JMe*-i#SD}L6Jb=1Dr z3uad;+i!gx2b}+@WttL5EnHp!dBEcL-OeEDwX4d&O5bOipS_b)MkT-(AP(hI_l{{C z7%{V)AXwQy@Q+^XC>}uyp#kM3dYYYJMrkzw$ljV9mMW@|y@H#z?B;cLM$L#pDe{ox zl{z`sR)0uaYOJ_0N|v0zwlw)4$D33CnSl!U^_lJ`f>*15{Sxf^r98fbQNy162KHKR zNd5srl~s&(7)!L{F)DqW+W}6jw%?ud>?NDKMW}1C-TGV&iZ<8Xk6eFs6OCQ3*=J~4 zi!$nj9wYy_z{KFw3RQHwDf~9ge}E?+amwbps$I!cHnnCHZRG`^LVmFNhhWb(C-_tP z=4b_@$_83U2I_IV1yqli>E%kus54B-s7p$HD4`m2mt2op6*4+KD&lmcrV@kxeb(e- zk~{II$cd1Wz!6PyPV-C{@lKBpIl5>4bFqaM3iwB0EZtR*F)=C+8@$5|<*$mvhCm$+ zEZ@MfvWr~ZCmD5&v_JdHKz+Pu^*8z%C?lg<{pnw1)bmq}iVP>J&p&9XvR_{S9d(jJ zTwz~2_fzREXUZ7wY`kH!U27%fWnQ*S11SbXsRF=7HR`a@jhuZS{up|R`)M7NktU#U zLppv8u9(CSiL6=?#PzkIeoqAqHmiAbyKS{gnl2ett}o>ljN0mVS~I`pYj*$R%IeRN z!;`eR%`^-7TS!Vjx6cC=w*v2?mCy{DUn2hx5Y;WrJuenGR^n(K3eVFFUav?+P6Zvw zxoOoOs^b*9m!0t{95}34YYiu6@fD{q#{%H{_kdU3PdEiuO=?1}>=+KElvz6N)3OyM zPE0RKu2mNRf>FJce#jP#y1g~`)9PP>piR%FyIX_I}`83OkCmRj$iH&ZWzNRJ;eu0yO~$ zhhWd}mU@$d%9_P~JC>#Z6`!*8;^?4K-PLZ3RAf~AkqQN+o?i2$t{K&%I0gx??$WKw zwSI(7$@bI66xP3fmTkMbGDn#mX&?|qQBJ6-UZI)@uT;=mw29?-=v4m5hq0c+v<*m$E^;VgD;u|3$yFGo&zTs^@#tjgq*JqPzeXfE+3I`G%69{mk`fW7G= zz+x)xE((ZKB?9$aHB|t!D%@TRNK~MDL*E#mV5?E7Gb-HtvZY{A@H31Gdt?zOeM_V| z{CwUqCy_b>_4RN+lAZ%+;>x)S=CvBTH2S|D0O}VAHj1Zrep!w_`=8 z&WM72gJCcnmiUR!j7J?q*Tj{tbk4m8ZPWR>Y_=EGA|nBeWnh^srIolu2USLWZd4gzv*3|iuANBaF|76eI%dQ1iu7$NZvw+xj%XAbtmH9K9 zBlT9wj!yrz*tAFwIg{b1ev}d5%;0@D(vx=}Vw{OC9R7_&RCJQ7LK9d3{vU5wlI6Az z1BnIq@IpuOo_fzdU~c-KF%>wul|=bWEYY&tQoBn95Mx3r>rr*|d!0VzO(8OBjI2`K zAKa)MbT(sD?SF8L9C9P0B6nk5DrE=NX2S@zT?Z;avbRm3o@u?JqxzILFHfR>JY_4| z?bkpLq;fgko=Sxjsm`xR+JMoYbgN(ikWfL__cM>`J7+4qN~(%ifYhT15g8Sgd6hVA zM8!TNF|a$ODhmi9-pbkefU4=J#ol}eqdqr`+O7JT08O9p3aK?9fPy|dpk4><`xz$G z_uzqu{cPP`6Dr|#y|e2EsmiF@M8&gMp#YeoiY9TfI%XLiiWqaW#tHAfJz1Dr5z7yE zKHzHlBVQ%h?O@vwofffR8}>jOWQdDru2A&~hm|KPGa@aA8v^zV+4|>(R7-_Jm&vyH zQ&U^jOP7Oa-Pqn(O%5~6)N;&B)dR(X%8s)$y}LwZa7t?W;w?_@Jaqi%(MpH~-^d;!$IwoZ9s=pKyMU(wIn%l_xb z1R%Amg~jW5-dOchWA#*7BBuY*A@)6%8t@A`MPons=s}#__%-B>(p4_a-Gl}rUe>T#T9aFkE7pH>W3!KxBC-EIZyKCT}( zZr#C@3&$Q`*~aIrMt@;cOMZ!FRQhu)>j@&a6`EaJXqDi{fr>f}G@!EQyWrLDBzi?_ z#T_uem2yugpz_hXqtGK#0z5zesT5!q-+Z(BQWd52{tZx@Ss?qkj~sl;jtE{z+mu#! zKcmho`F!>RsJt*V!E^;w=*UkmPh^bRng{9}YUrFB@*tu6;AqfsD~c2J%$PrawKt9Zs7`-dln`)_!ZR;g6V!RQGo)GTnS9O%kFLv{zWNLlPWC#Cv_>Q#L1e9L_g6|e{HC9k5Oi~9pSmRAH6yt+FhR}A2Ee+ zkbH(JS*Nu!zD4i4pM=@D&=6avb^S3=F|g3sB=%uXD?%+L0;t+OjEeg0eSioJP{pA= zRPi?JI`M8>Mzya)fQm8}VM`Tu2@93Z3JRwYjHrMs26WLs8kQIe(|kS+{mzFNwI(_5 zvs{qB*p}K+N+nnFqhS;5?wU;2h$aV2M#&98tu+P7U2~msZxnJ?zKv0HKJyNbbZH$$ zV<_PM`^p7W$~)TnX6>UEuB-`|r;rHRPa9fI>PJ^wA1>Fi|4lv(hY|-oIqmtvr?6cZ z0#1aVart<~6j>8nmAx$oI2B#VG9esJ5Ef_rEAK zy|}*YNSkgy0ksKGYw;+?zHX|R60IX0vvy1kQVMxL^J=z6?J-JUp(+6Ka^*B&6lo;; zp$hbg@O>G^qkhaDLX>VcJ`Q8Z)csceLp9`15gWsY?_yMx<;_T7o6!W5IkZk0^)AtG zvVV~w&2bg9r`2---l(6lGx$g6Z2_wFQLU0ry(pBR+ z%98=7cQI;FxQwUgZx_bBZaNfpYlA6ueO|A_Sq-A752QBKQyBG7M&$=vD96F3Kg!7N zesh`X?!tf`3Yez8PR^bKHXX#gM>|J7f`BBZsH~+dKnO|Fj$&w_BL@;-sPXRv1ifC@ zoIz_HRW4>bc!^dMkJ=XHZqeU%jGDQf*Vj59FpivoiV;l?tPX&!`(ZMyT$<1|Ym~c3 z$3N2O8A2$5Qqb(cLB9y`4OPk2X}QUegf+26Zx;Td=1)t z_~21VR10c{eDbtjj^_3Rs5(;rY#8|63YG%#^ab6=ZZ@780aFSy#bw*E+&6;VpE0aQ zOwdHhZzt)Pt;bvUtCA%1(YDi?R~ zs8$K2GP)_S?pQ*HdwHmX>2;LSMr@Oe?D7Qq%*%u>ZEy&rPl;NY-KrmsD4oZ1r_{n6 z_VR*8$H2=3>AKQUZ(&rV#&sss{>cWzZbk)H-3HXs+8U>PS@4h7zGqaN`3X6rNmS7} z9e)YVtte0>>?AtrK_{ILeiReN81pjfiXl{S6OtLuPZ@UDCSY*}7Zclo+;`9DwJ^#` z78qC6G4-%-I5Z#;FW#993G-X~DGuGms0RDJS&X*gHrj}xj_*A#)GYX^?2HdYYpBkw z8oy({y;lZ@mw3j|)i(<`1PmQq&dCuuci#9b3L-3ol?nggvEO9NN(qH zT3xn_wD-br%4&u(%{7e=mcnJi+OPV-TN6Mkq5!6% z!0TP7+7M}w^^2IWD9Ql=BtV^sL-&JT_Q z$F_|6x-3~|9d#d2#};}(Tc=Nh1NDAJ9YM?Jre9a;wxs{r$e~8QY|8LhoY1J}Ilna*1G(M}}KSa=@3pHeaX!&{~y7L8ol+ zWzwEejMgVsgO|i9g{s|Xh3raeo#g9^QEvfiiqmfmescB+=xd)d)mk>9zMpph6#&VU z$TH)RQF)i@#jB**Yd~$K4ko*7H#|Hi1uasEbk2uU6U6$~C&ftxVCpIZ!e^==Dx6|pic<>wKe`W zMy>8d4Z6zoHNuley-(}3-ovQC>7wsd$CX5Og`2W&c;{XU?Jfa9kfN-ji{)@GOYfr; z)afEP@W;DA>0GPY6^2e909=WZb)k#Svl{xqseX){8~2J{TUJ0#t+ghFvDVkA$bEU7 zPM^>|-&pVWYfX^sIEF$g*ZYiOG=yz^$&F(?`j^o1K52dc>J5^A7rl1|NVz1Aox*Ae z&rHX<@Rda)Zu1p_j4@7qFmvKmrqd;?fmLz3Z$*}ys>_C1XRvzO)+#&;ip;LWREhu` z(%%tkACIY1K5|avbG&OL`n^XN&0+&B=5*a$J*T`c|5&qi^?snHAgH}(2WV)^{*EFc z?*-~qzmEuWW=kWZRlQ*@7(8EY4xRo<=sa6%>Y@UjqHGIQY8s|uve-Zav-vmU6FcK2 zk0}MdB4p6-04g@)0PI7^RDqSys;7lV)d(I+LvXTOIy1$FS6C{lB_#0R*bST7Z9sh)qnhdtaEz=@*sZ+1G$v1><={opuT@iZEivE7 z&B}zF!fFpI@9(Sy-;v^VS3lo$RGT3VKfLoHu?;)w6%&xjQK$o;R8vOu$I-bZK#e#) zE%!=#tCi2Y%+UV;J>?GG)x)Pm0ni#d|C~{=ma3alew=0hN*mP6_5lBzfU0!XUl8>! zTyjjZ?O{5_wns5R0E~>f=hW9n{1+EDZSsL=b!FxPCS!SUE|kN2-zYh$!UzR?e-1;W zN7lR&szQ@AxH%QSHolBVDc783z;CKBHSQs!0G*Mdw=m(>c1LKdx*+k$R5|ef=%{`T z@>mWYr*lZEkzm);VBR(X%E2(7WvS-?kb1SX5j*s{zDxpzE>)!>I6tQ;GG9EZn zlVtzmhu##k9WiQ+yc-;?USs$99-Lz5vv^ri#G~-hLnFjfIDR z5ncc)2KqgWQ%UlO04xlQDn#5VN|1_mo~KD+mYvYGg~%aVZ;fbAx1 zSBnEnu^M@NvFF1p%WM=4#BZorWYDV+kAQmk$y(QUnIyv;zBImY3^cxWt-j8v(MvTtwzO>aH&)IudLqY_>w&ls^F^aS zHOP|Si-O$*E8Wuva?Ab%eIGxRlc0Lk#DY#4^P$K-kq}5ls?^Dw9h<%> z=xij#2R$OuA}?6|Qi1yCBSxjxZszs!O`b|j@oV%oMh&1Yi8#!4X?0oES5?_{PW2;s z1*pdZUSZXkVLC`Q?^vvOin!QNd5V3HD*Q^Tz^$>aH(2Z8?`L+BrA_(LpV1x1j%lrM z<|>9aN_uWy#6YP1-xeBvaRgBbwv`r2xe+3s=%|Exq}iO3%ck$F{`MwNk9$U?YdYmP z1`K8*8_mn*i$JZ6dQPD0*~()l%zjD#)x(NM(t(Qm^0-)r8vln4&Y~ESUOO7~lR8vn z&$!D2sC#Mb8|l>ShIsN*0jHqE;^H6u1pYHJVHLPf4abi`SR9?(I62COyUYDhQMiY_ zK(DipJ0oi%jpor}oBFWwAruWv+M8DY<7b>6H$X+I-d(K`C6)UUwzk;k$3TS~MMW*8 zhLv2o8u&nLto4pl<^HDCJStODRqS^mBqc|PX~#g{l$pvsJXMN5$0p;DI5k)onD$O4 zoHR+Mj+d!)rp=6c zTmuzQeYn5Oaq6rJfGAE8+5sVs!>FWk$rU6(X{eJqV84Zj)ZKB6Xa@#g6E~86wyy6W zOpp^*yB&%KV90cko;bnOH#(bs;ORO&i4?Dnz=de&o5$p|tHi(DO6i40+G{UY4rp$v=9*2qpNGG#B_+M@WT4%h9u>{*jzXZ65Hz!!=aAHMVc9W6 z3!l61EXJr}n+WXwHjK;m%v>j}_)+PeQQtA9=9_=RsBLka7u%Vq3KjV#qaH;??RShC zz4UO~FZ&R!>HbaSrL8}j42(4y&WlFR4V3P4rx+3QxDpwA(M&DMN^tOyEiO=LyYr>lAsJLO|^WuTD(y;s|9Tn(! z4XEIZdq%A~Y9-XufA=-(0f$Iw_&DcI;twKGF+;B!l1&3)uie) zD3sytXCc`cw~mGOJs36n$y?xbZUx{dKHo0^H7fhA zM+PGQOu@R9?mqX7iZ|B|RQVBJ&3?R#s6PV#lI97a)iPS9b|SAyCf*z{^GG)lm3&hKt3?0Fr-qWwzD6#B9=45u2z3$)IZ1PKyB34e~9B10x_;| z<=_=l6_x|-REq-TFQpG0MT47W?IK#QbgdKQ_jgGp%nrFp*$A63;DdkrnR33=X z>VnZsT5s`o5dWO2(+fygbR!+roqPoT=RjRT#=SD?)(M=_my9lUN2_gio#Q`2p4!T&t33Ru zWu)($g8JD5PpjGr#WvwN4vlKLkuU zQrgdTKSoF**76NTl}Sm(5f&;NJ#YpwOL4BoyAXDB>J@eA;YjtVl!D-Piv}tkq^iEh zZ6q?m`w+BY-tv?jWxJD9Lu4^?Fly^e7=MG!)o_|Sns$e(*8;K|>7;LU?i3hbgdY0lk=7=S>ai(cZ!N8rD!zn!NcXR+jG-S2#2rRd&ll5fSb)8HkJj>vM~TCN?db21a2}GYu?&D7s?LZ81=*eQ;v*YL1>Hg zNAZ0?P11&r>i)U}ArX>mt6#1O_2EE$9Pa}4>Hfh>>3&!wm(>VGzR{nLfhuy>qCHYD z2^PXUkE5o0yCaL!WB(qbE*=?ZRkc`1*4{{e9NlGE4+=r7*K8; zWj}wLxY>C4cDqCzf5TdwQM)s0>*h*ruA};p=%Ld)#?->pV;)@dQx&RE0qRRQh0H*u zHoH+(dO|^mhd2R(D@#!tHu2~2>DDiKIe9vG?5=^gO+KS~9U zlLyF0jp^Y!HSne`e?9X25>h*02)!2Gq-F`_ua5lZl|+-3#cTO zO3}3sTdK=tPjtib)^q%dT;68X1OBNaYXC?Zi(fODUbitv5SN`Jhl(0;Rc}T{#*(3i1MuO?t=%iCu>(9B@E;yrxNz!abe;!_*Qy@fH z!s@Rze+y6{k6$vX(2aCvMeE!+hbyCg6{w4Je`JP%zmu0qx=@! z8lrqEeRoEMy5!Z654R^L?Qt!`SaeiscR)Rk-!ST2q{KUQ`4&*ulBw2{ zQN$*loy}^T)PA{%QHgIlcf49|cp!Z-AvUVaU}c|#{&+67i+fI}TUI!tF3RgbP=)8Y z{6VOk{OQI2gQJxC%7D9#rOB;NkF|USsBn5L3DC@u;2ROa^@-^~DyVn(D)_pu>^qBk%z^GG;$|;{ zMeZofy&TE!TWb4gJAZ1Psa5(O{B*BDD)*&^1otRovRJO)D+%=siB+^)fM1_##PmAfWuc`TH0K7V#E@-6 zIfzNxw1HKTr%#%1AW_m2lEJiM7Ozkj{r1>Xpg;qsgI?|S4P4>*4vQ5`)WVtLu&VB< zS;}-hJzN46pnscD=iqw9Y8=;?e`MEw5vU~TvG7<6T&NJR*IJFxISSukSx>wFdq52b zcSR~m(VkP#wlmXCJ4LwN7!@_A@bOdUq|Zd)lYvsWj@Nz!AgnU#F;0cWe5PW&D*H|& zc&~p%$S#C*iD+JJkzD&1;4>`w64Ey}Q^{k~e?LIodY%MU3zh`lvx7mha&+kZ7_K_3}o$c_&zSgpC`7@)6$O71KvaG4FI_3`qe9;%}1-{?8y+1>8v6;(9# z-2XjJtxxh0M^9+dwYg^L=}*v7kxRqoJxqqSJ1d(PayPF7al5{w<>qciz97T;Vn~OD z_;ID*-KrI+GiuruVlRMt9Jco#uLAYCTK$l;10Z64&!}PDeFoH6TUx;!V(LI`lmNM9 zh3F;u{28y6Yg^jdfQy zDIBW`b#OA9mZ^KzG$U4^{H3`%xpH^+XF(O##n`9$m?J)@=t=eryx6=TofImo)!%pD&BRdST955#4I-wWSrcr@BDxL;ycgfj!FLz8CdopwT<-Nw1L-Xo|Sv&6#u^6Uh}>IF_X_5QhtxZ-CpAiOIrA(g4Q zFB$1jSZ!~A>)6DFelG9RwZDJW0$MO?K%>fc88xiysua{^eG8};kGU%zkbze)Y7eW) zP5^>TcKlmL#j;ir@WymE)ZQM3b1XGCg;rGt3sfwXre}oSdidEd9^Yhbn zL^*N8*l-)65ggzptcrDd!Ob(p=^I{dlQt)^rMJaL@rYEP;d_j-O`(69W_V$-(;=IsFFenYcEH4 zquj_EnAETH5m0?CFyY}JU-y2{C(=OBt_I+ZU}Oyh8~6YD45$#A1Zzp@Gqn)Zv{V(3 zOW@qM1h!X7dzQ~c1mB{e`#{!@>ajXe%&P!`w18Sopu4eKyR<Vi2n^ng?g+) z?hN<7$+M;8^vgu-lzL(He-Ee>QXFVlt4fMT4Kjtmf5hqAjO!eMVDYY=s~`>mX(|-r z-r5^RO?90oV&N{KULGS0bpmQ@_k;4PYW+E*iVrfs5#%d5gWfOgdyGnxY{S(QZJ0M2 zW56kigL=A3RlWsOto2^J%LMy${EdDm?fHTTy)9B-)PIpOP>%(uuYBrvfGUyJcrV5Y e^pi*h>VE-83wRDjE7tq~00009kuOO_EL`%cC%w%HKEHzgTKVG!A)3?U5J$JjnIwkTw87qY|* zWi7IeWF7nR>-X1v?)~RJ=iKwW&bjY%5)pPVK5j8?CMG66D@$_}6B9dviHVhojrHHj zWqxGi{}+S}2FfZR$tEZzD=W*yCC1Dv&H?=nP!g0@5qVN0>iR%W-#}hfbNTOT zLG%02M-lulol2OP>hi42O);VFU-Mnl>n%^mUwqI0mQ`ubIa=@yvm_v4vO@fRd~3d2 zwz!x{Vn0BP$0R&|WFR9Oax&g|Qar+6_-M%B#ITe8AZp6U5jj*1WQE~yJ7Mj5LVPtw zgU=!pI#yXz4oqM-F2@&g{;^ZyQ~NA6WD0+zHX!2qMm4Pj3f`^Hh`ErVE)sUmA4tfBj3KxiVew;GxK70AusRvZ^m&)Rr7VU6e zA$-YoQFhOX`wORG*X=J)6op{^(_{N1Iy|@@ZLj98Qj$4~cJq=Y3e|{D+|g%a9Lq~M zRDnv3M5$5J%vg3m9f)Kft@l|3+bTS|C>A~T+i;n+rhxG2;g8dw69>P*XVZRLO5Rk- zzb2!ve73^6lQhUvy&HISpst*gBz|1%Vp+W_UpdZ#k#3k^WiUH#emusPXnm!t0I4Se z*gCU@D=_e_NmSfj*3_p#$+yo^k#TRi@1_#W1yd+*g@Q{s7-|=dem^h?PCM&$9`@~m zC{yI7wuD3MDJi@_UHN*AlYGjU!xQ3Ab(I_<2@LR(A6Gr ze2kg!Dzg$uuT2zQ@lp5Gi*y#Qt=Q2k_-_)p=nP6~O37O>nH7%9e5j>Jp%ax?kgvlM zooOX-m;Sg?eG-4USTYK!{D49aes4@4t0&s_BTOE#gI{)>IXG9c(;7%^F44-%KlVWM z;uaUaz7|%x2DwnqxLaN?aLI(eZuB#F3hD55{Op_y>S_b2N5bJe+c!b$6Q$`Tidq-> zPb_c5;+mD0-9c@Ni^Jfj(rqm*o3~$KgAB>0j;BSs`=}O6G>(p~jux zI{_47SoL@0as;B6i@I?Y79V*YGk`2|Mo2ov!BrJbyID<2^TymuR=H%(pNzgm@z;es zc`$>TZO^oFRAF|jEVBr~$kuT^WIlV_uCv0~>*1$d%wwTu9}#mBzgZ`IUoJewg-Dmb zlyno}A0>#OG~-)F0g7y zn}W5JxmtOWGx>sRYF6WGMzt%qo%8nso}-s0^GbpxaJgrKvrPNDEzwGLITq_^Qw`A) zVJ(cMxDnZ z1b5FFxaP4k_H=9Wd20hC#Zy+_1*pRf#X^R)AIY`EL0qdrLM#P3Y}re2#suxWeuZ>l6K_}#QMxl*EG zg7-+Gx4e{IRuVgUW6=cQhD8QkdY7r8UT3N0tgv4&szb2#`FNel(9=}GPOVR`DDCJ1 z*V7MgHalB|>%{{xA0u@r6c0VD!vf`)3uDC5s)Ue=4qF6PjDYIFvFo`d{l3RV!5DEJ zvZLJhd}`JF%CyY;p7UP5n8U}{9&gGPQqpCjl?0|v>j!`=>LM=Rh@T#?*_^+n3t=%1 zz>MLn(bZNC4j~7`nKzjaBr!v?{xRIl)Tr#Zp8OiChAHZ2c&5r*q`r?RiGG459g(*{ zS3g#@>tivF1hkR%W+{yO%D24&sl0T3dS5rv;WUjeXmqss_9M`>snUeKB4IJ9;H_0d4w>JPTZH!G1FPQbSo2Td z6yrjAe|xV0s;(@jgx|B{wcm5SQbI{bJOtj@pgwYUGV+k|BITxC9ZP`9S?msJg;0Co zzc!NhXX)$0{wO)DB5A&MVL9^pwYLd?R#3ac>9LB3 zsc6j5+0zSBeO4K_%lZ{le*+slN#X=ajtS!ss?Lw4-M<>xQ};2wks2E^*0F!eek)?e z_)X@vGhcg?xs|*dgw z*6g#_ESh=ce`Dcw@*B~b*az{R8+IRG;Ha4!S5BmMb1@!2S6`ghrNnWI z0&icBu@Sbu#P$$>OMqL1s0mFYrtMlA*>m$6#?SFiA>^qJuNWG@1mb+6gy0oT?JoV| zdHlP4N;Jaf#KKFUWbT3T8`ay@(F8q+!UyhmcK}be@TqTx_o;8171$#%uF&#VM>mig zf#(PuzX4H9FS)+m_8-bf6C|oh`}7rJV}A)mCe zHn2UT{*9%o;YFt2hb)d}dZE}XFZynt8IR)-YfweLC6v$GLW#rAFa}Nj9vnzr6uID` zc)LbSBgdo4M$i>1saZ?@W$)v29y4mUXw1fV=%?0jO{;(vcQ5@!5~D*8>keAWF1&_A z+3Qd=bVO3bI72YnwsN-5X*302*rzO{_*Tfv;Z)8GK`>jvB2fCCp_SD?ds|y@-nG4l z6<*ChgQP;JXyOo4xH21RLMt;6b4QZ8JvJyH5gk@mGLp^+Q8Hf18DPSl$r^jEd!lN`dM5%ekKGTQYFh}U+jSpaF< zUD3Dx zkVt)efv{S_0%vV_SzM2$09vN)tGe|3d|V0~HkuHre{ZonSKCy1N4!Cy35|i5R@t_v zeSeHau!nvz{VB4O3}HAaEffr^u{bQOv%&}`mO|cO$Jrs|+^t)IuNg{z0S)yZI76pb? z(vqDUQ>4DqPufU>L@CMOgrP}3!hptZoX5m^Oo<(j3&~}J%55$Cy>bp9_DMM8oqh;o zU-E^~Kw!yn_tGTkxKEKdYRgn0=EiUzCIxBZW!nA@8Fh|ovD4}SeK@gWq8vbU9H+N* zBcc5e>D(`lyqtzTJZa`}x6b|o9?gG*@>)GHsOU?vmeXfC1QCH#Zix)fFFwnfxe zJxBoiCn}Or1(RQl1wLpElf`lT*mW>fot2)VWr7P;4Z(1N!-kPcznLmb35uW)YMAr3 z3^cw(z2Y)e#ttTS`y>q{3C|RMhkSV77mAYgisaW4`J~`w_B$> zex1Iw;SHv&PMnfV6)=f!nh|u0+keD~Io-mECE%zv=@%6%2UBaW zt$m5H3%ciqN^d(ItO1ujZyIm^$9GmkYGWZY=xetG*wA5+8z%Ammh{`yFX`DSloJ;w ziG>p((QF6fD$LE3(-$r!uO*zgrr=vTU&bFJgsHQ3*jH>|r$}b%cuGmYvJNMWMR(-99aYJu1*l<|{)6)rT~+vh3!OCvX1B{gNK9D!(F(5u*e<%T zLT|+QUlj1V+?Jqcd4W4YF4p91@TlqsX-dn}T;3xD_4Ydo=guGduL_i%Jyq)}`e0Gq z{@z{0rVz&bDIX>_IF6*%H0ZmpBJaT2a?@ogHnw;}+~NEBZLe=v0-Ql#JEqHleb*Hc z)aw|cEYF?bdI*p6K)BP*HK zj+c<%UY`~yw30KkplE&mnDH3X{fHW`XoCVfh8}&{%B$1+id>ckH1dVp$eWC2VvQ;t zHmJRi36A)yqw{EYe9 z>$k^cp*s=(%#-Ua=_pyz7-i%Q_yD9Q@{h>0+tGjF#VumMLZvY?^*?(yMmrn!g8-gr zhRnktE(ZDa-&I<%Z>DWPpcf@p)HpvSt0CBzufRjjff`m<4DOu2PzX=<@ZnF}vGO-D z=_&f&Vp>)9=qYK+wc&L}lsK&YXqZ^2DXG;YikQP|{+0&rmlJ{e2ZYhak~~MPjB6D@ z0md{bq6_cR_&}s&-?9+!ic)oTGJ@4$w28C!YuHZ4mUZ` zL`a4nsZR{!&QnDb*O}n;ayWd ze%kE}-1SILcI0cu!>?;)*T*_Wp9NA^i0|P<_o7qSdMS8`OsBjcv4fdv!9u|`5CM7L zg=g*i*Tl{`)LdURlg|rh9yV>Ydi!okU~Okdfiids+Hjs_wr9=IV=2bf9zcz4)GPnh?A}+V?^AO9%boTt&#xp#!oG z5Ph6rroV(Z?+J zKF3HXNtZ?rqW)}QtvD`_i(T+N4*B((_7Sv_(Ze|tfuPn)kbu!_CQbW7lp+|B_yuk< z=bp!1XWZv;Cd#AmE4iCQl^=>Ij2Ff$ zMvyRMH1|6Hxe#Oyt!0A!Ya^I$Fp+v_a=FiII7;R0<_1mf)|1#S#xqYQ7Og+d3=YCWljlX0j=gaapPz<0|qpA>E=*z#(ne@D=eUyC{Y zblSVwdujS^ zT@$4W$ZjA;w#foFOi%c{@h*Mi+0VJ{Rs+7l75(eW+u_JgNk#hC`VQ9c|6Ua8362=N z?J4?52`BOuG`zpX5MPW91}85L_Q{oBP?M%W+kg19YsV*I+x-`x7z$7aj)+4t-(x9L zVud9xTG(?VdwZ7{V1qV7Aky#EQ7lO=NOxiF&SO$P|H@PTQ?yyBm+C1BS?eJ~lIN;= z%qZeM$3c}hqWadn;dRAr5bP^wy(ehtWcDBU+jZ~9rCdfDz zp$3D7c_=K;-f4tjbp!FZFRol8RG-*rGvpb?Pp~>t&)k3K(wwWGF>$(mG*QRN0d8NO zT86Bv*%bq@SZaA?J9#9L1Ps_AClWGZ($ESnPe zxh`+57oX9}LD;(8^{;jAVMmFYW-CEngVM~d*}@r~Ea5Ns!W!=_R{`}2H+(Uc)>dD0 zB^J4@N&%NE4KSpV-e}ST>W)z5D2Q5VU~n=c4kk(qHT)}(0>@nRxQo7IgW+DnmpgZI z{?1SQ8fXnb z{UH+j1Kjj=P4t2?k={eSjqrIWP~h!sG3%bejcru`WDP9yU3~h>@L2Z~HmL1QOv*|q zG(LVs)f}n+=ahL<7If0P9i=-XuyAs|mNEV_O6MO1aYWB1>NE>M?g~=_*(nZx3&Ueu z{JiMD9wHt#=g02=&SNf+a1;gMlEH-YXS28}NW_h_564gFkXWo#F^9y7CJz&qJB}1= z(9rZUO3bo(1x0;7*lB?@_C$CIt+^5%nHpmJ*7yB?usQ7StPlFfFHfAkr6>{q&`k>9 zEx!^+O5g$>@fzF&Hg)NtAo4Z4m0N!n@M895)i%XGaG^CPkKuprYZ3henmDn|_p~p1 z7)PpMWrP`tVZOsXAYYMrehIpCE*|vM%gT!1HOtaBoZe=FaIZ@BM3g8TOuv~YWo3*d zHtx(MK`8qC!?M3xvz?iS$W>|kQWW*)O{ys>iKHnl`O+-Y_RO~9h3GK1<*iX$w-siv z^^tQDXs`UolTQh79yG=RS5WAA*1H!>)0G1;6jhusGS1(FtG;z9Le5Qok^5KsWJryl znEuLS+Y*8r-cW1!aq~sV{PwXU3*!<|+5q~+h=*#;Pq}5Ksc%|VA9!HrdhW;pQ@w@R zAzV_#s;(3|krh5~+93UIbqzd2V47`?VRHL#n`QEtiOWPmr5D(|5Q!b+i`YYQjV83+ z`lD>puA~5c?&K8Z<5Z)K{qy9ot3I{mBy4O^C%l-w2u`Sw@SDAMSJ_8;>8lNLj*D5R zr5i+Z&IN(MA~6n@h8W~G!T-`GpnN`eIy@RzGPiYS{J(l)unL>wvo_3B`T}uismZju zGQmGMI!q=*#mdrxt3xTrZ|CR@MIdjzR$|W?bhG#|slMZLNBZrJrSQlrduOibsdaJM zp%2nhq(ARmW_CDHxzV@;YB%GA+}c}3Q!neVP$%Y1+y8ZLmRrm+6Yi=4>A$lZS7~42 zdZ7W3^A6*q z*bakF9;d^P=I!V3Et1rghNID+HU;seoxF4y5?P%pDJ^!+^hgNmmC6kab#EL#rp7BD zgk2>Z%w_x8py0!rXzAyOTgCY=)!CsEhNKjO8lPO7u&X)5b5VFjb?nx8_o&~NOA!=6 zS>n&y&9x_|CK~yVm~fG^#~UeVUb-`gkUDE>=rNj5!A6CA3cLzpWc?Ye-9#@>`y0L; zGrRdZCdBwC!4HLb?AQrIQxo6X4DDH2Ry^>85)>g^l@LglM^rSV9w-Lx%9gwArdDBE zdkm&#fS}Jti{HDwuK=17Oqxvt>7syS)EVkP*VPj*e(LSib*Ei|MxnG_$<&z;zOo^l z@UYRJOEiBZ^_!I!*HbU4g0uEgBFzrmuhtBn6NO%_?b|v%OmA&%=MDhB?@-ZmYEZen zcV2O5=!uF14c*wd9=WAoAHY+;)Q0{OlS(TR`pzWy=`}); z@@%L{!06~>M|y@LWzkDv8(mPadqzGTpQ)52@JCB_*HuLN`Dp)iLWiPZFg(tAH$~p& z)P7f^W+XRaVFks;*i0m5Edc(1to;H>(OAozyCp|uL5D*fXXtyXp+^DElMZ2+3?2GM zCuyX2;ns!6i04mc3|`ok1NWrQIk+n$-i{qyK@ICtrqqd8^~m4thwTx2uIU)JCkds0 zy9-@5_J7%em&^OrP?GlSjH3u)YST(hra3a>{>da87>SvGT~I=WBebek&%I1}A^x!6 zO5nx!?)99|it8Ss5ut1?t@gN#^g~ouu6sR0VSjy)lm8 z+^-Cz;zg^sA#|skVPU?SVA|)%6!?;_6_V_5<)L_Q{>;%SuQ{YUi16Pt5Do=}#^cW* z3U0mtqfc~E%v(=(QV;K}B!vG+9irTQ_{Uxt>3Y?nLm_2PW>5e++4bML&DOJnJHF9F-^9w7RsN z$$Faui}0X=6tEqU~@kwnP!|Uafdik{{Uz3wzWvwNb zQZ>l8M&lpk zyJ?;MUCa2EKgb!gzi}B+K)pT`R$pq63sFiW=kJ3E=&7AC5pN`Lso|fD64(030!nm}0OswM zDyQZvz~>pfd+(LkMNMegGxEyd7k|Owsh;A3_M+cwgx8NfwG}rkiGmS+(1zD!CSm65 zb=m}tY*w@b5-mWx>)ARFXl$_N2%CfBOU|daEAr)UyJ1vU)&&vS5kw=^4tAjSDlsgH z91hYfaVqpZ_j*FsA&ccJM6hK^inja|K9oTF^Z?GN`W1SqqBN#QO#DByBGF05J2k-F z_d%zj%5#2FC``uvvPbLMv#jlN4e8@dSi3Je#$_8Pjro zx*FJPv83$6FVHQnU%F2aZjX3AJZ63imK>~zz0>gg=dXe~8FOcQ36v8???C!1S8xw& z2!5tvh5w73V0^b$M zkaI*<2TJZ>#*bv|Y~cs_=!w)EtnIe`k?l`eWk@Dl?xk@hB(=w?I{*8d{vv}jdU0(? zM@(@s(03mz;GQ!<)a$mCvV7NugnRz!R?_juSCFk9ZUORR6PJvA+uCyVts6Xt1vnT> zQpECncu?nGnrL~ z(dTqXpt9}DKbzZ|;)HR%m4gX%xfgTw%&V{$*WpKr5ipSTpbrI5X*Y+|d02Hu88oS1 zYd`9FWUXDH^PHjx3?+VW*}0d8=gyjDrD)Zy)@13i(1){QTkazoJXY`8fzdji86B_w zOQr{Rd9?eI3qld^#u~o0RW!?>>U5Jpc+dRLcro3hm@C1zrAGV7cby2kh@n5{cbO?RjjjH8$d94jF@CS2 zo++6$y=#G^(sr6eYOomraiHRWNj~ODe`L0rVTjS^X)P_=pXnS0)3{xx1K`-R%YmRiBPPg?2)vm8mN5%v8B62Pbl$2BWyLi_-@L7E{1X0jru!LP z{$24xU%zHUAGvfZn^XKifAp{)KPirD{9&Hn7X>m$dg;Bz=XR)W*EqIqHOV?!_p~@& z+Zpi-O$97?qLSc-=2tKYG@-+f$xaSW9%!IlA>`g4__4(K;f2_JDkq)9NnOfXQe;g! zSNyBj$cx!g7^MR+AP^Dk-M@_9WMt0z_2ZkK6}{`h@n^=z8Q)(HH@CROqh8~uBa@~r z@!Y9*vQD>Mi&uI1er4Jtdt-a`j}_hBpPI^D#a(AsnXer7#P0*r(1-7YT)G|8a$HW_ zKI;eDEvG(0TtQNk!J2(pSvK50P}bWWf83#ST=cicWc5nhy|fOol}p4CZ=Jg2sTBX+ z*CQ+6qW^7))PzSrx2uB@bFk5yzyPy<^;j*!`N-9=DT;}@U$mj|1U*nhB9NSH>U5&K z91!5mizgP_sO!juF}$hQK^Ad)ES9H4ACPpy%J4ds3Dx<^RpUI8phLHeyIgBOLqLvRDAM#FrNky3tldv&r?DdeFiLRL0)cV0; zOS1HNi@iFsDM-kL$7&tj>!(JDI7Qvd0j4=I7eEyiCd&rBw#Z>;`pABm)qZNiOFjtY zcYDL+QOu7Z?@l&2b3g;%QGm3tDx1$rKq7Ih#)Rno@eT!`bq{Wv|4Da679Pj^)2m`8 zZ`-03hY}RPXAlips#E*vMO~3vd#8t!mjod6dU=Vt)>v-bbs;D_$~y}tlkNTv56Qpx z^-4UaG-Z=E8T~w8oit?id+;X}hgpR%Vn*)s@l$%_WA}q^_+g+99B#-|2|Ty(ZrP3F zkBW+reAUnnLWr3BWtW>8NrjH6Cik9B%OQl@sd{}Y_GNak)1|5wO~G>Po$R&>J(7kxAR z_1~kj1CiXwP4pZ)f;rlw}e;DRFFrJR$llIR0p_A&Y;g9pi$qsPkqwtV z1V&|U_VWosGji+*z|%jEmO2hy>GVK4O^Z{D&|qB4oFBAr$joRB4kB2tOfPm-_9J)r z%v>igeE8O6e+Kc(T<859pN0S4H}(N}4)DDn*v%4(wu4E$|Jvc_&Pz{8ji&8yKQxmm zPwGLaAO3gihQsO`6RLp!xD~^JpRw;ROOAN4(Kila_BEL3fo(B8#D4Xuxq+Xb98h1{ zpq;IVZuY^}PySZ-E*VTVAQKUNt#Ma_ZE>`yRvqBW*iv$KQ&PYLJKfgQ>-HoWd>T`z z_jqPyCI8wxVBn{|2k0x4|ITb zj-%RDPR)`G1xkh0HM{_Y*+Z)a$SVYQCbR|)28od0>HobScPcS~g-7$?=qBQU@~0%S zJHj7V5DOVNjpSsUB5o@{%y_gvE^VbiCa`0|=yD*8@WM@mTFSvL`Nqevi0Z{lr>C-L z)@i03ztY7)=TZePnz)Z!A{)N{ZgfTNLFdo3P}A{eG$!a4QK#4X)qo}$_n$OQ`bvOb zbkBedQi4i>A$yymu-q?mv(lxdsQG8*ZsU^9T~v5uSy3;B4C^G-WJw~Z*%kh*konCh z8|16`K@Sj}{=_$GLoqdCKEn)Z%S_XyJh{ZI=fd>~v~i30-r3ZU77>Vf7#SfztnF$%Ef*)$mJ>XKw0%cD_AqySt5{UmPZ-kdrReVz$xz* zy1cp|+!1raW%wcdNYgBWJ=Fcfx#%zpsG%D0;>e{a=i6niKdwrhtV-DCD^Nxw(DB#% z$*Z|yxo6><;b7dmZ2wdA;agA~V!_$8CbI3bq1-j3AS!89DFI?<6?a)lVJgvQX2&?o z#TBxMU2-GJjLIW=@!T#}_t3W(N7BTOcdW# zPV!asLuw{ejdg&~PmP(}Q8jO@5WqeYW*vmI%#f%wGFSD7RKa4ue^`A`n%Uvc!9svc3JC42Dc5-)rLO@in8pSe0rsg5)NW$`vg-572mP6;ha+8A)9smu zJoTxsIYR^mG*~YyPp*zHEBNvh<0&t;UsRYcT}($w?xJ5Af56k(j}z_Mpt9?J*Ap4f z%7OF}^`0eD{{~WR{EQ{GNUVBysmkH zo(hAK_qBZDY!vGHvUP?^!>v5Lty^4sqWN~IJ(p{FMhq`K*gRyi~e33iA?k;h^*?9 zd;DI_4cXoM%L)Jho4ewAee%wXWfri2o82e;eiS=BtdMm3E&$9g4P zvU39Y_e2UY(2E$u`?>b{$Ojdqn&-p+z%n3(D9R(Mj0XDJ|IUF>MD>wAb@s%K!Rf)l z-7Et%rzGP5k}f4qfR+T;Yw`NcsT}j`@C{@d^k01$486rfK z2L%FYIWz`S?NA;DVvKV!dIjhQ@ORpJ=P$C$>we<|6Vz4~w%&S5Gh2McS|fkZ>_mqy zruUdF{2koG>)pmfPM|Z#_QKcMD2kLPQpvUZrj}5o-(*o^?(chN{>xXhm48+BB`8I2 z__h*de889+BTrK=`!~aw+jX@w)5gr;S3M1GWLOH%3U`foM5|5jiAD(cIJM=JI^Ma_ z)8;6~)IxGZI{QYWK@E7YX7T~j8nWOW4v@<3hRNXZrkGDDIyejsXV_Fffbvh62cnFC z=E5tX?;Iu$%K@XU*4MF5gqLuj2mckcW7It?(tiV;i9sknQZP;yy)A_#p9;t@%(fC{s3WOUR z3O3)B%-_l`AMUq>To{y{e$~%op#C1z2i7dA1+0TMZ1PI<$oA8mR5iPH2Yb6>!Sk02 z7LW~Ac`QFGp81X*4;_J4+chJv9D%B3*pQ(7Kivvvbq6##Z#?Wev2 z5gd_iH>z;Jcim5eVadktu(%!||HbUL2yK%FsUMN{jnuvNgpos=H^^IG~i zPQv_-b8Sk{qUtr|s*;HnvBsP4$m0|}@En!KW_QJUerGG=dd-;a5Pt8QL1hNo$hYsf z{?B_5zj9*FO(P}9X5ybnZc@b!yCZ4t^NJAhb#YDJzl_$a4&`OP_jiUOA7h7Zhm}0L zRdt*kzxPcmDY&@6FVHk%Pl9-y|2oSPA#!GX%SwS;5hBs7T3&Tp?+S(H^K%hRjq@Bc z#Uh~4_4I2(=MN-u?O!f4kxi}mB=BM`fz(KpKnH!t)29Y_WMzmE&w`wZ4*g*-xmQ3` z>68HMYlp$$-$D2P3TBiYZ0;xckFzmgZ@-(MIs^a-iV=T$J1%YnT^FJqd&OCJlv z2Slw9h}qX;rGCo%vUD8;hDoy0=(d4Mpq!GK*rHWInjN&P) z2t`-yS?Z-tU94Sum^db6d)C@z8&OEjDk%>KIp|DgPvU!Adg7GcNgYQv2b6ShF5W4^ zK_IF-kjoug^2IH$>$7Db%d>*FKKr2L8rIGmh5m}KQp6gK&vss~$y#nE#u{={N4tp| zF84J{OIvWc!|XM6B;lO@umr=?$Pv~gxQ`M&a=HQ#PUH19(VP)9g73%5=!e8)>>$pR| z{UjFd?H4)ai0S{32EPB}a$mMFh2%&`bA~@!?9w&-flGJTPW|8vMWvSgctfJY@!x+t zblTXX$L~lM6^s_BAx1^HD*28#&mfmxi#^y4@0=Q~Wo2k`;0#%?g@P5$BbHJIlP7n> z@M#-KOkfKrQb4d`f5_&zJW*ca!NoEmzBwnayxe<|6%6bsv-N?~#=8O)ze2qsaD3SI za(Sn0sY1;`LYIf|asIbuKIDU+T^S9l5wgJI%pn}nj<4n2o5jO3S*ptcNO{mkaS;ft z^54W0e&gMHP~}AGHi|M+GV`_cZN4M8U5|5qx(UGch5~JiTlX>C=TtAmBb^aeF|19` z_EEZZCmG=X*B%wMYz$bNvL-iH&h?N4yy*7N&u#Tk3cF#Z=UpE6(0C~#T)E+cR2>ZE zfJ_aY=L_iwebhNV3p=4wwJ$E~gCZLR?R;Q(Fm3=s-yD8D@Ormmt<2$hlVglD3S;n> z9cRdnF<(kDiLe6^%7G8W`ur9WsSsXq6O9ooD1F8m!~OXi`X(M?Dwg=LCBJH4>GG!! zSlcL}@=^VWDnIC)uW?lmy|AXWRD#~|e7Y+?U5Y}l$f{P{DY?B2Q-Yi=JkLk(eG!6f zo^ikPp-k@XMZ#=Iyh{xp+l*p|KvYQAkxeY#?|rPusE(Owc`QX)4uQZ~+&P2Z`#b#k zAj3H4++$l2r+<9jx$g*tW^<-dT2X&tww0v;D)i4zN8&ne|JCc=)EigOFYNGKE(f{a z5nyBZoTa|0+X~ZUft&)qGAU#mZ@PJRggqfYQ-F9Eovv_yr!9>eP|Xn4YjS~y*KzUp zc3lmbuH>|_U)W=6^KG%W>rz56<)h+C?aU$a7}ncGFKoK#5DTW95p zXzs4j*p{cJZi7ypbEQCi$S4`ubsoD8zk+DgccN06(L*l+9A-U4xhS2p-Q#LY0m5g{QrbB2npJt2(O* z`ae`Q=Z@cy0t_IR#T@bzR4r&Wy0r5~3QY3?UuB?f)5SpLDnF&RJpE}VEsU2+ss`>k zms_DomHK{h=_5H)<9t4fms_r=-W=BkzrBY1q{}YS{%$lov;t+EX$dM>6&&$3dMJ>M{B5>>gB0sf~_PcTDFxGQK)%nfnFl5F(UvzYG~*BT2jp+G8L z0U}`BELE8gR~4wyjd?OG`kW#)JjUMF_o1v|%-qMYn`V4*NbgpY;I>`%VsM&+|3-$( z@6b~>>PhOPndR?^+60}sobX(oPch!-pQ)HCE*1ws+dnv#mZMD~j`R>kORqyyNae7k zoxq%%2GPixamke}^nLos zrm^AQS?R8m`w>n^%#`NrAUW~jQ8*v$qDg}dq~Oz~#IA(MUzs*N@&}&Sj%tPPwa>LC zi!L)ZHZBs=fqh=Es06#_z(XFw%@7PSDS-t4<^1fAy&mzQ*-LFha3{tUbMbcnEh@Od z(~h-`?TvNB!_G)chrPldaZ?ts~#Wkz}Of1Rqms9fu^QVwSu!HPd- zG*UY+FtO`G-!!RSh^Ak}g#HOpldxZVHFH^GG4BcYJ6kZpjr@LbWD*^(gxy9UqKphf z7bOvxJJe|=oZ1jSyHl?E1`qJ|j!+`~)3={L?=SU7pc?_DYtvt9*9$-+U9_Me2^tyD z_7TSE%^n@BZ>I>{5ek1dj~1beLk-K<1f%gGuoZjUOcBld;rR2YUal$GB*jPaodSiw zzP^YQ(GSY#Bl9B}1=`NAZV78eIlFb?QxRl8jc9oG;r(a9<)u*`!KtKxd(%QAM`yr{ z8w8YlVIdo}LJOEL2tbIGlnwIamI!4%EPpVs4tv&)&W(q-&|k`_iHNKI`Bb*E@(E*- zab2+n@A(2ku8Er{Of@YF|Ck)p>h`k0KjPiFd$V1s*rTk==JRX%K0i3iSKCejCiI-C zt^pO3^||)#nW*O^{)`@A!xgqxKXKhOy1_KZe%cBP-tzDMKcMJc;EJ6}Y&8?uIRQzm^ zeRtQ4PnAWJ%lAH&-m9JlNz-l1y@uxS`~M-H4|m1wzhb3IDgsAG1BTK~Oft}mGElI2 z0g7*Z98_==211i{pNH-b+eHxS@D{SyCOHirZo>X`11(HG#VwGsr4V~};<%d>0s7nO z&tRILq$1?eO?*#{;+w?mqpf(r#S)Sq*+hyp6rvVOP@%l^%&Bze|EmG%`TOED?R}mp zBirE;*YKkm;*XVZEQ!)u!Ak;i9RwDFYpCLgRBd-vE+AC@6utUhTv(+jrikeH?iI4@ zncPB_Y#(bU1pA?Mjx82`pxC{y>ES#4JKUteMeOJsvEvjl=~i|VabSqfad$u_y?*e> z8ihnQ_XLFuper)BTSNMNhFNkP`@lY4s4{0~Ng(?MBJ~ZE-ef;7r0T^z7J35@b$o7& ziBQM|^eax;qA)^(lkf6KVkJT*xI11u|7M-Gw6XhO(I<7a3+HP0vzG^$8B14*+szfi zia_N*(B6Gqrbv-9|NXB)Ql_>mQAYVzsuSF$naT)|S6mb=NML1cJ$+}>%CziEw6N;J zI$43mgQ6!EDlQ+~r_}{<&LG7uv+1;QCS9bDanvzZ3w9O9I2)&(wc1F{0Bpdv`$=YO;>Ny=1%i38lN8Y}HMs8Mo9z5Z2 zw=V@vY&@zZp8w{-9r7q{m8mXl= z&pBCpGdH@kbSIc8{e4Rfq=Tj-t*&t?oL=>w4UIoc+qEr$tyq8GzG{gGk_)}B*5G{U z_Ttm(Uzv!iD+%(TxhO`mHysDEZeZW` z>$5KgOv^4qMA^*<@>LACt4mqoq1hqB5~`nGaDfyPsb4P1H=D5c<}_=sh-TD1)gmQoly#1kL!9ge9t+$`QkCB zV;V?2E@&Qji87D548CcsF-pQ44Nr=nv%szap%@S`^x+jWJ$g?SyV|5-f}`BkL8B4kQjPimUCf*@N7O3~Ct zl5dRJ2UMSGzk&*}rdL6IiHB z+1#_S+WVypRg6{6)HvH9W22CiO>3+?Sf=_J$aM5PLy^0q3nU#oZF_IBs%%KJ{`b)~ zVq$S!$YTeI!|byQ)u5~BH$QB2qwq? zp13ofIn${JpJ}6usqng1O{fzN_(K1)qJI9Sl5*duDBWO5^!y3)*f*U32xUk7+iTx1e?}K$C{{k!``42W z*6k%O?9(t4bLt}PwUxXT-{xI4URTO6Vas4NJ zKezp?x&Y8jo3?;1_xmJ`a=g($;WpC|!M*FljQ#uIbgFgm%Hlz*89q3griE>9a-|pu z#$tCHL?i^CKe1NBPkm+z>IPbGzjj#bxNH51=aHzyS7Yu`kW0Tv(a z>5Mo2Dzy^#wsb^-E_hi~soXC@JD+t3Xe8d5_|n8Ye2DkKr<$k4p(N>@K5s;h%iUk^ zI{_)sYi8{V)ToZ_4BZ5#tlC9`VYr%|y2z8`9Y`O z;}^a}qQ{y~#1!>S)G1X7k6oQyZxs`f;7LSA?C(RRf9%&LDYg!Mqx&y($3XdLid7@` z@PfPueLac~*IJ7OooebZF&nIn@rbc{c~;Q$r{h>g^fgh5Df_bzU+GG`ZmN48z|l=I zYH+{7Tsgti&~UtQ*7YdrYrxDzJd1y_TWVNdUne>!6wnotN%S18ffw?x|& zpmJBB5WH3?rv0C9a|wu%?6Svl*;gLz*SC-1SEe~t{gNoTI$lUc$o3O{`zUTf>pVq& zx!4YD2le!?b)|#0#}JGXbgJ)L#H+nY60d&uRT|!_XudpZnX=aZZk>yuKY<|flx?Qa-!O~migWPCP$z+ z)n?p@&!F5~4efJb(M@w=OHg}tL7m%hLv^BKQ7zNw)}#eCzOsJLXg|yHdVkJbBJXu< zvp@!HcjDl79`m0eU%MkVXpsH)qV;spdPIxw2~i^CS!!GMv{p&WA^gen;hNLSMQ<+S z|30%3mfAe&OAc)@JM%a5$jASD+M6GXNC;gcnM>%~y;S__G3ZV`$081MI^8(fx}7<2 z@zgQesq^yf;3z&6=gLBA~d*&^&?&Mvq+(hXQdLr%X# zad+!mZ)pH8rD}a;4*+^qZZ1eIvh4|`>|fA;YH665@PSj>hGm|r^cQ}_8>YAJ9lh@f znZFZ77#7*_?y9Fbxt994;CW(SpU+>_uKFR+ilA4l@;}Z2Plgk|{pwo9NP`MY3v1=} z%{@mk#{8W1^p5q?1M4wq@4t|dTLxOpRrM)CglM?o3pwi=?d6$<>f9UA9`F#cEa(vQ zp1-rJY|{oOhKD`wvmKLknaIn4>!W&0#g*v)wSpo*42!h3YgL(P@qPgu`zzM*siN`p zN8gzE&o6u)CSfx7qFE{ARu!GzItT0_QtiE(jlGpN#h(E}HG+dK&3dx$#8isoMmOZ# zgH(e=ky0x*br%(J#JUi4<>vHe!@$*8N{BVRYnR@0Lyi&Fidn&1Ej2t7Ba5d`&c{JI zuMtNo)Nmy=Un5J+WV4g%uz~mV*|R*_kx}LyU9SgKXLOTV7@2D4y}h*Khxmo|oz6?L z*a>5P>O&{XH+U=1PWt^|!%6Ke~_kAL(;m=v&fWaC0xu zIJUA`UH#1m(L#)D-L6bf#wiSOx!@148pDK|jw!>dlRjUWvBY-Yyh8Cd%bSdfPQ3)v z|Jr}4aA;ZQae8K>d7VnMF+J^RMLI0+j+5j0&S!rRVoZUCDg8y-BNq*u^TwvWXHl6d zwI=i8nppaO#D8@trndDnOVITg{s}>FEQ4|WHY|ZLkF=`3C~ugxROaH_)YSY86wi3& zWIwn*FeQR^vhSKx1XNY%4mQBNrUlZwhX0*DtRR~W$LQ3?*o>uW_g6i6PEKeVq|!{p z7W~w>&G050t{K?IqLDBwyf8c0=9%eGN&GXy%$5M7&Jk;Q^Gb^2*x9^-l#H^64`=0B3o=LaX42+cd=75kDwt|wek2-W?Rk=p3P9Pm! zyy>^|6JF{k(y+*L9&hTJ14WAob(dYLBU(+iLyzNc)&=g{;qpKeQ$nI_;OQXN7LEJ; z(ByNwRaYl}B?365gt%Ck?#Yc1vZb1S^T4H7UuSZ^jaR~(-GY^2f8IOw>51)0?hLqt zzWrYZeT{xFTV1)@<+P)D>3Vj60%B=9y!IB+X^z_%TrT;XXgy}?DgtaRpYO;9w`MG` zf0}=lk6+%Y>^YOdf4KcyIn4cK7zZb%h&SO&pO6S~8%({UCc|(Q#eun~fo@{5=Zr`53+)LB93(}!lJ}{xM=&^4v<|iiOdH%JSdT^w` z1-av5==YO!*2$MpXnazVSPPKflwfLJobeg|9V)93ROHt~){H!}ZA6H!A%C3eQW>yWi&g5Ug||aW$8j zR4of5%Q}wU|7>`c>+GV7XGCG_m?B2GxLJSC*{Uz=$*T|SH?Wm8s*#$1szTzOmR3cq zT66!Qpn{62kbo_DIVH<+m zaoXd;rVZClT4R*Rg?-5(RL3^W!+g6p_JO(Rq72nknI75kI`>m} zJ$Ss4^6Fvp`ZyXg6(bxt3n0gLKV(AXogEn4TiMj{&RP_9%|6Hsu_~VKDaXVq*?;JM z9`~G6VduI5i@w`!)GP5Nb~o|K!~CjUuu`i#d-zG7Ve~<^HmTUeyl$bo> z?%s$K?X$0(GF+4~0w!#&np&myN?7@)Zi+IZY$!rMDL=T!NX_buMD8MI397-~rloat zQCuozghZ;%vR?_%ct4aEHSgSA=~`FjFk`+XF@1XWW5BZNV~4RDb@8gWNS`%HheDz# z6O=yZxz0M3c8J+f)s}5m&^tcXP)zOE$voy#1;MIu(pB#k3{8C$iXZYYP(eD{y$p`i zNT+uT{4>FG*Q%Co%zH&VvRXWI&{F#By!!FgYaSqUw>ZSa5SqR{lX6`kW@k#O;x>A^ zYHfUw>#AUlgBIPE5+Zxxv#MtLv4!z5j2&5KTP=6dD=GsMwUtnfnK~Cw{?HV4$Eq>7 z=*Rmo2_P`?)aOg~b*1@~;Gxmy3m1;__Zqh6ZD+sf!t)IB-D$no`Bz`YC_&lsRI|o^?z- zd^Hukr{v_^{D*b~cD6)&n*_d@eh!U`r%>x9GZ~+C~xra`I((kEBTv}FcC5x1JQE^+<7) z%g>YN3Sc2mGCC%5Pf|u7Vqmh5emoB$(G@9HP*41B9cs@9fz4qWiV})ds-LQ&_PSPD z=d;UVVygVi1gpE1Le9OkRi@yx_9rixm;SEY?p?&0(SMwYNIKrNuN_d%!IzHbNQ!oM zfR>E0KVMw3ZM*c7+8^7af+2`AvYZ;dj$x(O6W(t?D9ZAWN_lR)yk{s4g)JdlH5x?1 zgYoquI9(SNB8RQ>*sb{1VUCg77-6oc+|+)J>xXD24^tt{reBf` zm3}*ah}L6QWFGl0nl+tzcV|YN1x_IzU@*lDn=!epiTp;9Q*z96q@WHtW|%nY0Ad>c z#cnG;Yv+q>T_nFw>k*k^Mo&|Vq zx^w|zaAGtXN^5Xnw;HNg-qzA^?fNheyp{y=lj86#Zw30NoAmT7*IN{! zbnFQe`|sElvGx?cr=7@3GjDsyRJ2{u#Xv5N=i!+YFvBRzjGo~KK0J;0jEVyKm|Htu z-NNRU-y~u?WGHhjZM1=pDoXUg?z<(4NJ#&*6v z;!3%a9Z@SKD78#=au>tR{=$HpcAHWB?T%1LPF_F1`j-pgG7qdx-yDyB0JasDi>F=w ztSqr3QFG`1Rq;BeG~$EBq{_PLz@%e*VY#+~qhWI;{&T{ApU6_YupNR=g6bvn=lf?< zX*W_a@|o7byI|WNhjkT4iX7`yg^qZa4%VWY*HfGSeVTjqF49b+@m(vI35yfuXtO>t zS!uOCRFF(q}e2p1<44!b^{fvKJaau1gdN`*WuC(zW7ArxY z)?^tzH1Ux1adXG@-qcgVv=Nqo-VK)kWtzdC0lu`SCF=TtRW2QOFqH_xLExk#-hPwR zPxTkOL4u{50LNbu?DsvA5vTG@(7)PD!(Cu>>^u-^1Daccd1Iitr}@C9`P)Bch-|m? zx|{gS)&8KpoLf-wRl@{-f5f>p9h&19n0c~XP+P>srcH(K2d-H~v#8+BCHNEK*%}?d zrfhUFes6I*-6X#0p4MgRsyNNShO-4ORk{jmn)g=X zYShLq`KP;IRu$vUctBzW*~Sr!Z5L(4uY;RA-~k+vsKbbNJ=67X4B{t<_jtGLrUhG@ zy8QxFm(z76AwLSg({v7LvugXrg)Zz!UA2oN*TgZpKDTw5!E%`iI}m}Dy~t7~@Y}1l zo{p=<$jcjwFWL5I??rDVo_ri2jyLW!SD>HyYTNE?7k&Mc1fC_&i7hn>6vL^b1F;g6aLdS(?}vW3CES2n zXf6D=Tq`n z^^`PPcg=90bT8c4;ixo7_uK%gweaJcfVz~I4OD!$21%KG`-Lw5NX<|(_-QTI6^aUv zx{7?L)+v~Q&1ieK@U790OEqq_?m0Df)Tv*RC*BYZCD?$@oAU??P0$Ma z^^@@FU@;uxgkeUe0r8*hahxMEw%8^{^G>-0-LG#e>&9A7%v-%4*)Q>?>+&pKi(?A- z{C+eyz-yF!4Cj5=VX4O%YQo43kes1*w5cp|y#)=G^f0eHk&_)BD2V*Cmw3(eOYzpD zQserA;;>q0=X|HC0K^1mL#pB0jgb}GW*1>x28^g*(`X%MeC2xdu`(fVXyzco8b{oZ z?I-{jzMWhj4lavMJ>oQg2rNx6tv9TbJ^O;!Uw%w2(BA5spA}7CP4u5*|L}oLVB(7Q zi=L_0QMFj{rWYD>Q;j6cj?eOkaYt$mSnf_$?nV9L=vM2vs)(T9J?EXV9-E-`-t$$5 zx4u0EApWFs2?DrxTM`P4@T?eAX$6{W^6InjV&ZkB_(kFiAO^;jBQ;8Vz>IjVtKns zUqlKx+42n1GCB9eJ%j#7gnujowIkN!(QM%*N;7>|rP1X^dAts&p8gPF0cn~cu&d4l z#L<1Xnw~sx>*g1vUafqO8|d7V1Kv+YcdPHz_rfR!kuWpaPf{@wl)r%=Z{K_B_-swg zA;K0xia#;4^Sn6av8S+aboV*$f-ynH*U(8}6hzI~Vzow4AR z<-*DT>|(ze4!nqRW48lkzK$O09$$6TR(R}bOz(kgO?80Ls=_2VB_G?YO7CqHYj5Qd zd>rI!UTdojl;xQi5c*v-MG2JanF2pq6n2xb$1#+1$rZV4b$R{Pd)f^)mor6J=ejk-I%oK zvih``0gF@B#f>C_FAcC2U_BB3u}&EZaECK@LdEdTZW44gYgt=GIxW)-`?!YXtq5h9 zynXM|5r{=<0L0rKmz$Qk_^?4$F60eP@Kb@2?XTjUXMiWs!Y2L8Ig8R9wrpE z$A>>-nd3MJOFR9&*=7W8hCdHRJyC-U0M|$1!@`tc4P5XkAVMaKiE2R+E`;&LLjpNr6}!iS9nR@m1TY8y}r*p7G{9fbs8CpFRRwl&7r!(~ zO0w;^H>XSK&`_NawB|0a(NyJ;Vj|V6-ybHVU|7R?5&!R8CBh>i1v6$lJsyX3us@m( z{;X;`hNo7^k4xQhba-a>`!W>vM%-K}wZFCkrhQocpzC%$YPV4hz4&0aHXXbsoxyx% z?KsYSwyZSOXH6W~%dN?TyF8_I^&T=W}F9iMLRe@Sj0J-7T zE@dK>s{Z9{`;(h5i_*NOuaY(xhUKH@U9L>o5(k%yMRCM_370JErCk;vn`?%OH=(i-erSd%elGeQeCH~lt%6~>G_UAU^3!hm-jYs#NJxaKnpYYK6(*n`D zonyPG@*pe~Q&B*yV}(g17HHtXTy^=3PeI^q9OE?O6`$7kks%lUiIOAdgQiA=DAv_U zJ|>Rmm(We@!;)-^(-G6$B{M9huRpi9qCmHlRO#9%VO6-5@S+Q6Fj(%KL2U){;%6j^i zRVvy{?c?t5uMKGS358v{r1?Bde}2LdGeM zV9e`e_Zzx}fj!>fsojBtE^C503&6c0=egLl3%@oFTBF|Bg-l_jcmg8XC@&NWZj4op zX5VB#@>38j(O-zTZJK<#_0M?f=pv7OzGBD^`xlM6mz0a9P5O=a6BF34+pr(A0Y;j( z+dKmU-A4@NzjDeY`L9Uz{wZvE;nkBj6nnC6B8gnU1{!iEk&G-IlgTinz+uoh-rnjv zuJzN51f=85ZP|_<7_Je@dzu3mvbr>(=2;wl~w4iJQQ{b z&Lt&5)D#oAMADGQZd)rL@`#=IruYzoKLu`pIPzef1XR0bDP)`6`B--tk)7F4uQMx5 zy}?er`}+&oX(|PNDjR;^cEGV!J{+4As6z&Pa!?Xx?N2B&z2MJ(IXemTq_HN56@2kc&J5veSQZktyRh)0&vlqoAy1&Z<&NLI*p& zfuH^lA{Uf!LQSYXMQ>AE+5f;xkmT-n7gzaX9Vze_OGhm>=$tf0uj3N7!X3BA?+_zR z$j+Go@i8Y&bv}z>H?|dIP+iwCM^gY(vY&`^!i5_8N+6_z-XG*dWYbh#c9YQ*K63e6 zaQ%hOZ#~_T_D1IDA@Z^_8|*=ypFX{en)}i?Dk-xpcKy$z(q!}ShZCl@Il#X~yt(4? zo4~s!;$VgVc7y{f65Yf}HhEIkhDvo#L(=PujUGh%#3Z~mPMAm1IjXcQXu01lWj}yT z_w%(-)n6Ctp2r*XFJ!|!R($#&L|;D|f*}I=lphn4(C=qSaN}$`J90{gen|#KmpV*0 ztA?Yi`5au)J${*Ln0I=-$oKa%vzbFyntvyE;!-oel5@%7&49qPXTC&Sb~LNND6UU@ zaGAd>m4r8oOLP2vPv}uPjW8(nMaJcYGfU+S`1x zJCGK$7Bi9F!d&pQY>e$I)WKKc9*u*64^A)|Q0*+j4E4$n<*V4NYvr1rQiS6@neu|* z^N!$T=9+h`|4OqcmX9zSSn5Vb*F|TOMx4lRY7Gz+J@6-n`b#mA^3&uJZ3h?oWwjAW z@0Fwe4J}fh@s_O);>M@Wsn-GnPU_EC^7lLl(=6c8Z8{IZ>c1*>d|MFq&DABT4gG34 zDg_oC015i=U-}BiykBZz$E#a-#lPy)fN5E#VvM)o60Ik4hI8r^EY_0UDaWrt57_VQ z$CF=yC)f}?v5vHN0H=oQbCmL7LSi%_tk!~cO~SkZt*Q2lG0mJ#extGzA;q{rb}G0n zGXOqAB1CH+0%!NVA25buGC=0es{_xXv8dQ;t@kSn#fGuf2cv0%2lMdTFpL6ra1VuC z0-qhXT@s-0h&?Ze?=$Yv+>z|Y6$^rYo43I3?zkN*ZjgAc zJpAa`mph(+WSP6t#0yQpJ4+NdneWTEya8SI07f?Z_kISC+1V60II(u&``k%s?O?c;z=-4^;FCIph7llNNrTZWPtDfdejYm~@BIyzWX&aFF9z1afk;6{Q&<5Y- zTb6M`TIgwR;#fAUvgX6Bj>u{7FK~ODY0j^>G<r;k`yk4nl17JaS_; zeCP73gG>v-89kgGR-}BFna08Rn?oAWU(e4}&8B|I~)Lb;{!BTSqxtkm@zSxqQmSf-}c4UVIMs>-e?<%YRfkXbHkQC1L|G(Ue zSr`JAj9qhnU&JQDD?WmwXR_f-$!Pxo`Lj0U!YUz5BM`ABC(UHA6R`O9jpWS7;$PBP zGt?@{Mz4|pu}6u4)c*Y2+}WNomyXZqY)=Z%NCEu83$rU5$MboR%N+DbR{H6yp{)(+ z9_^?8fXkcv)Md$wq)(8-oqZh=D%FW`VJ!zZH{Q;4`Zzs^pJQ5!ov>W+^>FM zY5S6sjd3bqOZ5|mr2*%psr|)SJjjwZeT1t*eZ16|`z94hSfwR!NxZ#jRo9tMlRu)1 zzm}b8o=l#Ul7c2)8YA8pdLFgOrJs=?{O14veZs{f+8k@6CGr)&kVoXm-i5$IE^xH# zFf|wD^}Bull|Q!MGlgj$GoLqQB-H17beR2vl_aKqqAFeZ;){+%*c#6U`>0S0r-S)< z2WdN=5uUH?BRu6N>g0(Im%D5yjxD zaqG9><~Q|zP=zVN5DT#mp@YmOvIHCu>WX%Uvv>l4gh70Q>mThhs z;@_pv4xeA?!)ha%?967sWNv~1Y9Q^XgrNg0pYH)R^Kv5KxXq1}lCUw?Ny{v|Uz`XZ zGPZ4J#6#+}uoIh4P>!O8)h^LZ%oO14DIJ^Znbo5|o6KSaGIzR-Ccp>huzOj~WP`h} zK$|3)_HRVI9T9zt6PcL#FhavW^aV({p4=}*Kwu1S1Ls_LrHBMC7h)=MtupC=6PwB5Hd?iIVDqFlCoQsI;m2N*#D^(7| z9UQTmYq}qq0xyHn-&|Yid~g_Ikl1lD(zrwV_!#%JDC!+r!g(~pel7=Lg7PZmqJ5-a z$VPO0+}Pu{BQ%_~9PeS2QhBK8Kjw2ymRlTjw4t5>Eh870@S|;XMI(NKAoHXSK2i>> zeJHol3{N^ zzeJ$g9uOJvg?isFIT@M`jZ&XZaAQPZtTSIAW-Z}OVh7nWM;+rHZ&7X3E?pCG1Zn~_ zo0nxIwkj2)vzc>IxSlqPuaFl)Z*OrwgSDVI^}35#o8(Nz`%k&X*d~+V17cVyTr2Et zr$sP-dn2`|pc;SD8i&n|2I;i@5X*t`PV(1%htZxD-XwT9_6?Y-c9p6%$c?NJhwhss zzY00CFfZY2?da)w}O zdhFoC=2(_yjrW#`m{DxK_lMRg8f_Wb`DEAAFfR=jYL4wef<5&$Y25 zBNWxLJ6-7%x)|+aXwvwV<~3?Iu{8sQj=d)) zLCuM}0xm*AsAcMfCA~!2`J9G*jeShDAgjDPrEAw^;i(&@`c^*gb}PzjpP%mchWr`r+BeDSQFcUcy}Bx_B1CbTwyT)$F!PT4A7f>dcOL!0%0`aV60z+&jv4; z%zhH*gK zG8lJni&P*&4r^wsd0~AI%`tkMYW64Fxs^H8B(GUch`=T?_e^d3cJn*D9|4c>BptkB zf1qXASMc9430nMjH1NLh+6b0#T8}}xvODfYYWF(0#}e%NRbtuJ$Ye+SP36Vzv32ek zkBU7U4}wJB|NHMSzb`hM+Cu&nVL-o*2_p(Ws4800M{mx1uU;C30=Nb3zh8rVtQIE7F-s^SlKTnz9X%?_h z&hEI9)A4i|T&*hz%0pDLWcEz|?0Sh7rz9?m0u)#UMl*UG@9dni9RkEng?zpB(kixXT`NfXN?oXi` z&_d28<5DdT8g2iNc-Xy6WA#)XBnL$aT!YA>rA?KP+VUc^*w5mat)^)7sm#B4=puIA zvbCxs0!pVdFS+ZCWlg@Z9qXxSKI4U2ZjwhSTWVHsMC(VhjY$!o3N}hz#D3RB2-9ir zC*DYcVcA8zW5HNUr8@Zlr()KFaqe5^qNRvz#LRz}sZHUbsDVJtaYL3*VU>tj3hZ{V zKk1e5ACLp+*LSgeTb43!Y>O$>AYjI+IUO(Me1W3J1&|NDK(~#-~J%Z zrfkvm0@M(o|4LTJvgS8Vp3a83_XafK`nY~pwqvw75tl1~*QN;_qUaja78udD@oD|` z4uC`7p_-Z{p%c?{zX*nAps~f0Yz3SHzmDinmiz1eIcoVG_?-qN2-C+ z&E%$Ovepn1@dhA_VqKO0LXpq;$lX4g)91Icl9BWgK}0b%TAxmjq#6*uAET;p)fo{y z(d&Qxpz9=`DS~WLzZ4SAgOI!p>?M=LjPXA?By6ikON%y9EDY}tvlK-2;lx(eO-~b7 zSzDNplKCwsdW}|?&PDL;NK3sWi1X`4|FNs2@3)jJzr9X#u+3qu&yLFz$||Za8hW2S zc`mKvFCTr9o2F4vrR`K5q~7_Vc?Ukkg6G(p&r7`*GxM>A;Bpx2V<+2^WfGTk6U0I4 zJm~v<TijCxoncN0D{6z zh=X>8MG)Dfjpo(2ljT?Hf4bG_SO~5qEqsave`>MJ(^IEOc6TzZCAGEJzD`S3>?ZpGex(p_7)Fywb>p#cf~gXb3@16jb>0 zQjB?4PzMhjVtuQNkiVA%XNfLfr;a@Mr{wpVW-f($1)|d;-S(2X2n+fw1TpNj*vso$ z-wFPa{$pFqh)-SSIbd+?`$_UyR5my_ZB$+YSR9}@$9gF8^@>1rhZeYc0UqRO{MYR>xWHfhXBr-2Gg$3HeTn!#%j1#4b_k&w@B6`Bs z_7RYdrQjexIKy810ZO}HchC}v9Y4$4-eku(cLJOQ&fR`^WyF;D-mLTNkh^`r-de6_ zVGsm)(k~=VzCO5qxD?CqvA}q75r$p9qn=agVh3Ed{`t{n=o@|5WzhG`^u3~G@IV8T zmQ~m1bokG!2A+1bd;{8Dv`>Q%|Ix;|eSWX|W~FUY+BprMfj!Uo=TzMz{`26iG5L`m z?T=>#ABH)Tj@eBYmLy!m1l4jeG}!;~X0Hl+yBT|j_+BZpn0^IX26HEUvy_LBiCfzX zuPyC`KCuzL9Z}DjagZq@FJ`Egj~scCZyz1OvCUKF$YA9U#jIoOUx=IuW=DBaQG#KG zmu}o(tPoW=jV6FNvA109(L5OY1u~578&Z(2YkR8NLCjLq_Zqj$*5edJt{~{n#*ncL z_O;fV#*&NF$a$G@Ne)`K(7G|;z4F-3j<;^=x?WA0bV4-ZQTy2DZ zUR^F=+a>UCOZRzuF1n_x# zQ9C^Gae&gdo5G$Z=Q#G!yQoNv|Hlb9K^qK}jjHCKiW z!>q3wQ1`dWl8$&AM7A6v3`u@DpS+cgyf5VN;fK6TT%nsPfH zVyb~P?dF`ejiv0^?en=op8#JUIf~Y+$CS}zd`E4KaeRxqN0hZBuYXgf`n<_oKe}i` zCx^lF?xtR`qc|6nC0*$3!(NPruA0HQlJ{Y4@07v(|Ja}l%!w8$W)Q@Mnc$<=9!IJ< zNI~aU-3AX5q-?9Rc_e0bySW+X^&*o8RN}RHgK=%EdQIVT;NX=}LS|bW;%Pv8oj3Ti z^vea!mpMn6D5zP8hot-frR=0nXZ1OT;79>hxmhSZY zHgaKI5hmMg#D&-S3Uo!QCCXrV1Zat~Gj7V@i4Q{1KR0pIl&gIZc7@AUv;Qou!f6s1 z%WMmuN~Y-%Q++W5BKY>hg%2L(X4ZcMFs2`6*a&YLfHlvV)LYB}j5b;8qt(T8N&PKs zNcY}EM9{vr1J~HrtOcPD1>XZcB<$^V?Av6Lr-P#qwlgpKk)o%O+Im07 zA6AjAMf=Y5d}^RaUIY~QdG*2)NZkbs+jc=NdMO7njtkNEK^DnNtcjlk10B_86FmvZ z7e~m;e@P}KhzL)<;lx2&G?mQ5(b4+Sl)b`-hbxk{B?1mj|L~_=Zwjz%S9PsEQ+8s# z~q4*#5|}Jz#I;H{(I^v8V6; zrIX#vcnH8url=7|t`F?yWy>x$$FRf&!~5|re^T&6%u_II+^3$rwca6)&zY?B>YhoE z?SSDw>OP!UeN`Ot>!9M#XgVCmPMH$2ei+uo(4@1I;nz3<&qq18^U92IC&t-U6RDnc z<%lxsVbM2{Y?yS?Y$e*fxm&6m7}2u~7T#oYB*i z!JA>?5Wc;G`^9*jJc0Y$&FeXt{N9mYkPecvbD&$yiJsa3C*Z3) z)rVw}lA^Q^k>7l;W^6H9r7#EnD_=sC+>^8qiLyVHLx@JP**S7BECL>?9vmJltmMsk zmX|Yqd~Ib?ZfO+1v5@iufj{aGML!-4-4ur@6sT5(I;NUy=J=#~gu8Ex9a9Ol`#$vg z&&}-idThN-RKdd*zu5p~OsqY9H=1zzs}G&(x36!m z0MEgjeFWcH+8h&lgNl1LKf{kIyJdX(*@H=4J%0rOdKlG=Hwj;WLNYb1N(@2tidM;{ zdAQO~SAE)ER4x$kIL1Ftozc<^2k%~G*1Li=1E2~oeHM!`o|GO-g4=8+b{v&Z@WsZI z0|5=MC&;)MDzK-x*lrx1mIT)hVC&zz1W+EoSr)PkP;tG za5AZnfyP#AG42LoA2jzejH-85@c6@m4#(3u` z%v=|$ET(4rU&${syef#E34+qz+4NLkRdIGA7ToIO3yj{Y)WK`TiXKzfu%D9s4XD?G+HL>-I`qYG7B)uZKDa;wwGq$vw8M|ID) zF!NQB{r=880 zua`9s>C&?`sz^C#K%Q{!^$e1xp42aL!8XqH9LD&mvBXP7mk$ez+0XV%mULeWQLVTT zd}}XJai<+*82cvGZ+cxriOi1)Jh+Yo`!~`O$Ene7s#o5w`=Lr)qN<$7KrZv+l{~ax z_lvkNI}_hyR6yq2JQG3MDmj^RjQW6ILGhSkj&wN*wHK;K)0A$Hj2kkeJ%8OS51q|J8a3VfhXWNHpoyntSfuXNIWU_1iiZ&uq>zlf6bOiw zB*uB_;d#cYZ#Gx`c!N`qPz8Cj5kFg!JiCXB+1Poc32??-jwj3*lg|{gbM-=br6rOy zcNbA}cH8XuE6@R)I>_qavfS;?jm^rj!Z8K$9_~@{U^Qe(Y+)2cTFda!Wo#K)HD_(i zljhsxp_rWhTM!dOUEjW!ey9QtUcL{zf z!gBM`b|Hk~v0-h@{DlN3<|aoh$_;d60TvJKXWqg z8{pZo64$p`n8S{p=Ak|914qGXGx}Du?86xlb>CT=_PtgR8z+M`pjD4rmfdn@%;%sV z07+8N54VNSVBFDBTS5N>5%)bFoD3K7L}H(YWf@9Pvxoa)m!h%?)1L=>DK~`~Nj4KQ z*pvH+05hkOE|p>1tU0qyW+k@+&iu^Iyqtg773JlJ$vI+W>zHs*u0Awjas*1yDR zt7Y6{sdgLCD*irD3#?6nPmdzsEfjFJ>n$#kVeY%~9Aig`s6>+-lJK8wcoKr;p)kV8 zW)A0LxoBY@-myHX_TNaVH{C z2qRf1W#6+6i78oUjOEUVQm7PCp$K6nA!(D(h?Iux-`qd%bMJl5eV_Bb=Q-#7Eq&Li zhO`{@s!{HPfGuIOSQhQ zsTw4j5xu_3%nbUli8lmr2T-_<35aH|JJM*)X3rV`otT9H&X4)Fo8&t!KPucBO^WRZ z6QdV$WY?4R1aXSdBG9eFqcn6S?E;IK>lYc@{r$mVN1(Hu5lL<4xKHnmv(z9VP8^Aw zczr}MTmg6Zm*!>LR_!(`1LzB)`*$z+`gfGbjn5aTuGA^cFjJn2Ls&k*w!{c;M0NyB z8&W&2M8yd)&L=X?u#dsnhqhelXS=F)uF!@_I|oHs{++zwur*ML2~p!jxdrqoUMpyq6a?QkA5zS1$A?qy;;|&d8T8J8J$cxYKBrcj z-;vD+ZSQi*mQLLwnsj4uk`u!B*zA4zWjr{v{hseHYE%trw=Y=JCO`oU2VaGvD$#Rl z4^9cMp<#Ma;f!!Q+`J54uTT*MiwAIG_!)@H-@1}q^G(JyoMYZoci=l}>4cUR4;!Rf zI)}GfWt)}keGFeZhN$FaIiHeb);rGSsty~lqV=KBYu?E_T{3f@Iwqm)tC^hHXdusg zw83WpO@~U-g*O(-W|?$x%%hE8<~XX?v*(;R|1&{&-8Z0#Mg+hag~qJaM^u`V;!f9; z%dcg&?pv2p7`l>t(+I)UaVxo+U-rfgV|=%Zl?*5mi&4P9?(H2)6S;Nx9LRP9niMN+ zoKr>AOaOa6e7Gv%h^+gFw>9z_5GVz%pp~cox&g=JK3@cRVxz1~(&!~D6V_EgwObHZ zZVc53A*9Wy(xWKO1Z@h$=6r1C-YODOJgvv;f;g|%NTK{6}7F6I~BGFJi5s`4uvW(*cSo&$V$90_`vuh zw4YO1RKIDL^WhF$wh=#Kl|1#JIo(?PqNM~~wnGa1ke_=iSdH_PA60{g+biw($N#il zSALy+Kav}tbR3G4yleyo2v0)PvRz@0AyUc(`EMg>h@|@Nx%tx@hJdOd5nhboPkE~d zy5Jua2fTt86!*?GI~K-OA)@?RNzwyFA-D@#Ldzi5L3;ow86q&m2RskN1n zMlZctjRRDFM8t^E-@;)6Z~~n4@91Mojyaok?WU%+@&&Ny7$P6ZiH^Eg>kUB|pT|zD zB0CANKYtAIBAAn}(oebmkoDAF@eEQf;ODecI(DT1<~bVa6n39L8fOiuxTt9Y@LTUTkC6P zHpJa_Mj2s8!7C1Mv!~C$hbHbZzm!3d$wZV_r3J;qINXlRSyY4lY;uWSw+9o-oA>PKzrRJ{Ub$2m|RP14)+H5}s1`AG?;$v^hx1EGm zH7S_3E5x#_+(9yY6u5VYb8q`Fb5&?OHX9ET<^gpXt%sQ8Lhbm(cuS?e`TuT`kG5iv z56$dt_;dX@xG0X7j!l>;Ja?rdSXPfMF7X#B3E8ONnIxEy{xBU(-rF92D&%m6*UF|#uqBEiJ zUfS>`A;@+ViI9YK8LozlvAIdA`P+FTzhj;}^Mv{hk{m+Z_bg|iK?*!toQakIkK&T3 zW>nY4OuRXgM5#ywyDgbAsZJ+F&U1s~CZ?43a_h`7@>&QqAGE%0^^ExKX>B67WU1M7 zrVhHX&(V-UpB$heLRmpCYzRcN>}ysC!p|?d(rOfq3*`4pt)+)P?kav{T~|z?)msLye+eaxm*?Wy@!}y*mfS2ZKRL*u2$-%VzTWCCN5} zbuJ`Qo~>lJE1^K7XA8YM2YXvp2cJJ+#lVY0Pn8OH`{y^GUZv7sU$0BJ@-zf!{7J;0 zPV<@%X7rnHn=4L0Jvx7ZkT)B&qvIa|MNvWv1FrUO+e3$szKv$S;wPmKz*u?~E9Hh{ zLuXYW&}D~0w)#)-2S^vV@62!Q<4Q_*N}~)+Ifx6$V3hFQ4HOf56v15b5QzV$Mu>+B z(MuoD_Uk8k`K=q0?gkfE#<>IDLg82`dK1MGj$2IZH$h16QG#{Lp52B{$bgKlFEGJP#l=l)rkxMA=2I;Km`hJc_(012LdiNsF1rlCSZAf%TH@f< z*ukS!#uk>~wd4F|PiIDw#OVj|Q`hlx)sAjkr*^h)lRG2;7=G#))0I*F<{o}&U++~Q zRUDC?@k{ibBUB$-!-Bf`nZm%12qBl5H6VW&L+dMA;DJKgp6mxRJKmb-;PZ{D;+$Uj;BtY%F zU}jlevsQKC#k&t3lF|(=L0O9IOY+O7JDY`@Z41>C>~Xrgoa%eeYj3S~`t0iBYsOZK zc*T@F+3Vwl);P$Xr7=u4EB9!zIthviz%&?K1Cw!l^j{JU?NSI?KNnI#1V*$G zSg9RJNBWfrDjABy@N`_Fe2FRx&@O&DVmd_>A!;k+g09pz6*Pi3Y zg%Zl7+aiP9%I-wfPyYRtzp(| zG7J)4hyYCQX!3|wGVDs6(yRBwo@E|cHW1;apRf;HVgpD_xMWU8wmG);PoO@bHE&84 zA>{l<#fZ)pLIyzpWbnH224K_P_sW^D#pCrCGQ^4^Gm(Nn;?G$weI@@-?dR3 z=6K-OrbepK{R3zZi6~#`8s@NG#cC;dhi-_4t zDCLHYP>xG%JU&I~2?j&!0w=s0A2~hJ`geW0>G!f;M9pujL9Guf!+l3~ZYz3)Jz3FZ z(PzGZ>;!@J>`Fw2l_X5B`K|L_&0Vhp>{OblV%VrIG5X;wV&s}xnLcSRD9Fa3&oyi z4l|$Izj`))J(8S#?zLTe{au#t)__i?w7XM$ZQ7VJVDKSvnXu&>F%~Q1{=n9e;OD~& zn?`rST`+FCh(60zM=Q&_-1R*?fRt ze%a^T6PH0t@@;YIP5CzAnrA&E^28Z_zg*VPA1=P^Hs>#Apelvn*uwob&(0RQu$?04 zz-I3KKRHoFCo{+DITCfEvy9{^iOj#-`>n;LtwZEMJ3+>xKGa}9{ZS#pFpz1(_tVen z#D%t`DxMq(7HMdH{r4~qF1~VEr_ChjLn%R>Is^Z#^`Kex0;&4k3mOvp^$H^AN)#x- zZWTn>Zn_iUZcFw%R-*Wr_0cMB_V?<~Etu$w)F0QJo(mCZELu_0^Ksnn|h1j7DHmyI6r6eWohs@0? zH>w)V0m+KEBsBuLV$+{0BIn0b(x#6P;?P`z>O_NWo*-^#1b&W`?xI`3&+jHZ`31DJ902-kmwe*q5Ip12~X8+8< zv^CoVrdOUEeQ&w}pIVE(mJZDV(Puj2U220|Y$&r18m?-4&N+C8fGNwR%* zpE0lOUv}%ZLR*OiVAWo2e62laT!L0TYn(YHS!uA8M$hBdMiIM`3q8>?=sB{1D-*&M zgEv*Wy@J`2d)%M>=piS6prUw6a@}DON}6RcJ5|+aCk*pF9~Hlpv3+hRZmm4Fw&>&6 z+X}c)Rm)V1Pxd#JjgglkJ}qzV-lr9N5zo@*;9r9N^Kse4QhrqYexqNZO#P!XC&8-`}}!sTic-hlI~EIx_;W(kr~~B~}XHTQRY;xJsTjRntcB_7Aa!v;pa# zPCTU_{IH|S9a{&LPXyal-@A4|@DVp9gPQOQ>NokTL+r;Q;6?0PvTAJ5| z(M+Q$55gIP{gzPv!UOL2s^N@pRuoBk6IiM6NAmU>(TVocb9$ z2gr^D#qVNWB@xomQ?2-nm7}#HjY1V)ZHDKs%&o_Z?3BHhL=WK^mD<$0W=wp=?)TS+fR5=exswPqBx{O|?OHqt+)Ie`Gf+8qmUd zA7qG?E)&fLLWXTiU(|S`XZYC9A<;TbG_1Un8;TnOXOqpu;W#7x{K#=Gnq`OHt+PC| z18IP})c!sX7jVT`1c?ygeSB|jB3jV}Q^XSnf(>Ud8pjZ0^4>LViM$9T#sHwL)Vo zki!B{{CDx{iZ5VoOLkXMbiGmH5-?+V?!)sVx^o=BhSU%L*`wY2xkLw8;LTa1P{s>u z&}=4o)Br>*m^xTIUXO{sIuJI+3;QiVW*td(Cnr@1949zy=Zl;;o%mz{GwMEsmZn*~ zu970i72gvQ!Y&qL6jhnf^M{!DRE+BCZ>5RP{8L0!uN#^BThb;C!J8)c*{6-mhA4>QmgjDMI4WW-_r!UtD(a6*=%G8g zz*Cs+o2L2^^o;P*^Qxe_iqTmPM8hTV2qd()jbYvD!6hTyUt~q3ynxDXA&SOs-FCvA zC))FT%vHj@Ue9cJ?b=9obfpICux7+m|Gm?XO7ZUM%EtKN%Z$I5z~^H6c?!rN1AJ9duH?myWC~_)$xe=u)b4ek zsQ1ZFbqp>W5y+K3e*Gu7k?EM)BzM}iq50;EJK0{U!~yT`P$k!u3k)UnP_CwZiSq@p z2kY1tCd)7?T$LQ#WUG)h;>cYCkUY(+CLD~Vq3A@ln}3tI=0}adj7i+B2OXxBlR%Rw zDWMLWfaaPN(1G$r)dziMOKHGpbVgeDcNw(Hf+W$*(`hFO&_3g%h!j_B!#|V_)Ew%zpVIX*}s(ij}3?935D){W_ZTP zF&?&=I4dO0{R4Pf@FBst!yRn**i^}Px^)XJn_|>Few=5j|Ebr$gcqtY))yI{F6cgu zR=0v9?F-5>-q~So>zx(Qz2e)Z1Y$0p^^J>R;B4^sUnq*>iborK;8KJ@4}m(8&Bn`$ zqzqtkQuOa1{;SuV_DPBed1j84pS>2E)fUtnbBV!o`X!`rSXz;kKCqty_V0x7B+iOd9ZETLTh}tY$cDMPqgH@b7<71 zr;zWCS5OD2Gjxc05LM1zC~6WL5*mdZx$v?>}fd{*FYg}GzCP(b>Pz@_DgW$~+_(82Fx)XmD(3t^2 z$N8z6k%@}HwB3{QrE2QwU9!r`SR4w4G&@&TgbKNk_ri57eqyP)>hp7`8{9u zJRYnT%fy67%8@*9`#7fmaL1M8o_&p4gSmOhF8%b(Ack8r1;nP-6ZyEl$SRwEK4Aa%Jn8ck z#!fRwiee`yms9DTyL?c$Dr4|KgYI?AAYVgk5M%!GRP~b} zn>yJZG<&+1;^9l)31Gaxn2)#?qNnCgEPIdUCl#VCvd8tHvw!xS0BcsltZFQE*rBJO z-iBKY?XeMhcrDa2#=Z|SBG!nU_F;NGL=Rni30*`>=&JZ*XCI{MlAO1Y*z=UvclyP}=1u7t1Bo4-le4hmxFf)I9^lwXqV8*=57Ro) z(`9?m5m|?S3tefr)AHoFH5ACRRZ)hyv$Q@TaMKfOaWUj8!*$goB2Eif%1GX!&q{y! zphuFGONYaL&#Cxa5qV8&I;~Yn#1oG8qWRIN_VjBupYu#z_Ej^eG2=`3(xwXSon{1( zFGk5(X9agJfr%m%Ji{It`UEpXdC|yATd{+Xn#svXU`rNYatlULB1;BAJEx1rzG z5Du+;RG9Ucm$f7esrUMqPGuc1z&|6J9YU^)J*YV}l*IAjwv|Xd6_8n`W)bD3%@9p9 zV=CJvzKx{r?*3CGL}F+4htM;UL;hCBYwxSs2Y8hwJ=1_*>OqzjB8_h|;A?|E-Ky7y zq8T<$Z?4pR62yBa&N4VzGpf=ox<|o5zxUDN9%s*RmU#W9sVe#nuK`4j6%AueRJ5qi zGpgcZt=#Hl$O4+ETtT7;3hrBH31_+r$oA%MCcoxq+~>x>6l1D_nuNc7ZBmT-7FDi0 z!mj#w1=`>J*B*;9QMg9E=tYFSvMUck>H7KOkCO1$$7RUs8PN&Efk|ji?hjx>Pu4iu zD^pwlV)s0Jgo}N9tVMNX>A!g)`qD{6ZPI;_Ta(b)a~~Ws{;5z8&ipD|33%h15t^Kf zi8o*g9zxdc^UmMgpIrB#m&0*-a4tCibJcxe))7T^v^9)Upk0lQr)4(-x3zMVnuym?Z(oCb$m+l$8c7gWAiWL7g|_NOFFuJ2R)duqHokU_D!&A2a# z4=%x*Af%GPY@zR8B=ISaMeytXBFU6ZMW!!pmuy&y=`^so04||FOVX7~atnRI` z9rE2hX}8-Gtd%#Ff$%_bmI*fX6{N~@s3=LAyEA>vh4Nm3@bjn`-j|0pbnUMkwPx(M z!J^KEl-LNk`v?5zW6Zj4W5|{Rrcea8OxU*h`0hUM-1>`7>K0AtjkGCABH62qC_;P8)8;m?rf(!5dE3f(Cq{a^7SQM|^T5u$3l`NUp2d z^&??MN1>B^yLWVb_Ty(>TkVPi(u_J0i;b!NEM8-zYSwe@?h zT2efzX=Jw95oJrAXDiG6w#GjN&pQmoAyn($#iI>am+F;OJl zU_x#dIr&r4@BFuL<*S-s<55K27hdkI^n5u%!W41l*^wiOkM{q%LMyn=m6}>o(rJpI zD3JcOasPNE&%XVx=@8J7rN9cz!)9rKq9hR)b(9TPYPbh!61oQ>=%YL9Tg5ygU)I|w zVmQNdDva|=xfN!x$SE{J>c*>lC%2fKY*FghK|t%l)7TTmZdE9;!fT)ZisF3*@Tpji zawhD{B}UzmH#LNsO?p80TWGUddh^~tD$FIbH6CDzvW!XTtnS}#vRp=`H#fCa%zoVIGX(%N;MlP zi79}~j&}cxW%_oS2YOHm%jhB3K(rQkZnYOIofCZJhemdt;}EJ(dEJUdJ5q zffRPigYAtFi`Nx!a&ATg&z(;io-9si{pDWNM9JomzqJ|w@aPVITXn899)*ll64t=? zSQ+ip%g;UW%Tr3<(UT+3eEnqIoT5%s*O@aJKVm3e&`Sa;OdBb57fJ4u<#giIT28!$ zQeG!mnXB!iVoeZ^|NMkdM3JT(x4k>d7gq}x%JMh)*|PP`joe5*QW-s86xtH6y(oWKYyTERFghpn!6S z>y?%AJby6Y$7$+tu~3G`(K_rxi~Ar0XB)@HB`?o;m%2K#&+X)4ihkA~ERk<{ewZ;} zdrruDq2!Bi)PHMu^~$@wwc3zwI(~J$Z)P{?aTn%@`?brsX^_JIz7Erqk5^B4JglqO zww6sUD&V>h9PF4C->42@a zBI;jZ=ffew+035%MbEfasfSYe)xL;-+zJ0NjJh#xT%A?>Cc`5-YRtKCnBxV}Ya(#z z6wovFpF)7bfh?t(f)-9`AbE!VS*dNUkAQP03q0PO0fd1^2XRk8 zZ@iC}D-r455~2~Mbgx+5$lSEo?8&*6>Sid*g)E&zx-lx)sL=0>f8W5qb*#Qy_hZA^a%_bF0;O!qszn!+1yBD6-OCR#{QPGc zf#R2s78wuezVpra=dvw(ValK3gzb6vPSx(>K-Inz6QlV`@pRyO8)2P>h-zw{K=`|sa6m2t1&Vcz97e-(-*ZA%P_EjwRT zM07kBW+lft)JcDSoi!TpIwisH)LbH8qeybAkqx21U$AWeYj2t?U+lDW{z!qBtb3=4 z@!#%}0t9*B`de~R2DwD&la32!;9>ke=-erU(cL^57cP+;>c#H?bo`Ijwh}v>DI)uO zCMA;3?!Nu&XW>;=A{p^0cFxK_HQ<^iBydua{t4q=t8PgaI!c*}Jas@2ALSE*EyEUo#F|RGt zEgt4D^r#mzep{A-aD{n0J1G3F7N!Gn$qulvNU#ysCW%p)nA-RddQ)dZSbev-V3QYk zqjHzvz!bh4GNPMd?>b3h=`L;-jEQ%rvo<2hhB`4;4*WXAgMBv9P5pH&R)`Y$Z=oQP zOXn*i-V{+6h^*rl5o_y}xoSGEdey&y2f3$Yr2=*#pi>2O&w3Au>nZQO^4)y?)@{FO zR)A_8QagNQKgSl(&xY~{M&_z#oWWA_hWpRjFw)C3&lY|AcNk!A$dHCL;%hk=U5=`< zntz;F<6wGH2|m^c&~%tr6`@Cssk#!tPT6Uvzg|{+S{-pfgG@CaUC7vQ9)({t&^qp# zPtSqkfN#py?6VEe&48Xy)-M(eazNA%*mR>H^0aGo&yqOq1qi$AaZ6@hl8^AlU5hy} zxY|nVa7Y^<7h5=Nwx~+LG>i@tx6<4Nnb9}5a_Xc{L^I@U#n0;&#+R+k(^6Vi!k&v{1-I5XM8fz5E8oj^U6)j;Xdf+ zS6*vo!%p8h&xrfCrt7{DP)h|O@6+lQN1f)yc3x|n;{}n>^`w+TX>rC4uPgLc|0pv; zYu$P1>i$)-HBo}NaN2OC3%vyT&+&_{px%P6Y zHlq9+dKNkrVmO91?$Uz$(^tNZ^t$AmV1PXB`^I41uGr~QqGhX6xGwFrO*3u-o7osZa}R6j>`?t2B;ev#Qv;~(o(#|tu((^;f<@5?I#-MC-X5w4~=!D*hx4S7-WzJIH@CvYa7}+6)@JP#r-Ld-6!gaY%mkcgG;1P?^_$uo#C&AL7jc)W{ zDy^n5;zvN^pp*`Qy5l(uf`vLq6(Yq)C0I3ox}T=74hVS&eVGBD#C6Bq=kwF!p?8J) zGOU@QA8u<(?&xVQG7ECU25A9q`-_r1x-zSF?h7*h`>GK3d$dPk0B^|d7Kr?)o%9s`kEsUqLqHPI)TyOPkU9s17 zR+9e_v9g8sr}rFP{ox}{sc3G68`E!Gcp1gCNf+X(lJFrJ0pJN7RJb|U!cof#mn8oV zRa0(w&M}BAF&AZAbpz&-qe?~~He(;i+>=hiwhVu-IVE^Q_U+-hVtbI|)WtC39iW(NA?nSU5v;{4c_~cbYCC5BM_J*mco&QihV+S0mx@1e&LUK zA2rNV5c6s0UP!HDOTz&^5fhW1>Nre}j85EzZ>r7{z>YHb*bE%a!1dUFo&dh(vnCxi z=C8g?criF!+eH*OvdfJWysZ@2kH-`1cA@F$)Gb)l-fq$4_JYC=cUxGLR_(&YltY*y z8*NCkX}o^6^T^H2o}E5%8aJ+UMT9hc*>yejY`NJAd!Ak2gl*A36=g zn0L1o?n_43Uj1YP>(*x|9ql|$;DvlCHe8~qmZA)9oKMLQY~kI@Z4P0r8!s_jp0zds zsHK1>$)X;EF#}mceQWW0fFNVgaRuQ$P6I?xf{92 zh&UriL~XHW{ik=tm4g=?b*Q2Ag7JJjZG3H|G&AOK-{l$zAryV#>7iY0F`#cL~#fZPI052is{i#AeX5e?<2j``ECYLRWHqHovrxQfBLv z=5?H2@>&NI`9v3l{T`}R?bwokSIG#8Ju60^$aEUf!taDPjVt1sJ*(2dp_q(b|HfnK zBIow-YN$fD`iLX-C|l^01$g|Et%t^GI6mWo>$I&h;3IKeqvZj>y=FvAkOhCq(e+U5 zhGc8lGYjx=mf@SDNkZxmsQTg+Dicp_2$9^}a*2{`sqmw)#<9lMZ=G8ajnYi15J4Ch z=PX4gVXb`g94)CdL>*E}5y{yU6#pBZE)qu8d)3Lq(8y_j5gwESUpmIz6||W{03;>P zG?Ay24zA%IzE4sjQq#h)X?IN!&YE4eA&GKhz_}&xhN#d{d1?)-Q?A-AY8)}f71Fq z#FH|}x^7pyTU$baYLYA&^N+bKt#-CUqzGXGu)IOQpQo+jpCWXx-0PLRu1XLuxH1Kt zQL>r41XX?ce2?9Y6r3tUr@OG2JpK`A@;7Uo>ecn|}}rR*2SI{y7` zeUmT0!Dp!8wO0DN{X^+Wp^p>61qHcjUbRSg`7=u-{@p?RQ;oJ$y5dFVaAx3dvd~pA z5?e}`y?i&jefhfNQ&qf$jT`mW(zTuU4tqy^TRIQV0CKl`d;8JH($d;vOGWq2eLXIQ zz=*d}zFGi_kqb+&$M6B=+^&m^3&{&leN*=c?wj60y0L?GbJ^yisuDOZ?%-9%$KCyK zaV9e1gQl4vU6s$ot8Ky{op*-hP1T!wbEQ7ebo1OMRd2^La5azp#S55r{jUrIY?-&2 zupSW*PtR0qsevarog~0QozWFz#-2@7pBt&_th?HG!s2MQ2#%ZFoOT{ql)vAN^+0+h zbqlTJkDdYuj!>9#*xUDaNF6fq?132CmH8N_yMO*ua!;p7dxl)HS}@>fz;qI?D?9r< z+n%M=F_K5%$jdD&%7~^_%9IEnlS-+1h#8avpOzT5oVKt!BqYc*vcdh5&**ess^d60 zYcGSBUh(+wTKAAQ%YcO$@U~aophs>)-lax<91L;Q1+r0g(KJ*{eE#s$ysuNDP8AY= z@A}6k8_6uEW6_OIjsw%CQgok$t?AtguX1m78ylt~<&O@ud>!#YV11|ozID4Hz>6Z1 zFU$+Ii|8!ZOCG78Y9&vqNO8W#REL0xcn9HV8 z3_o9wdB^k2$;JgTu&ULh?3QP6*z;TOclRUoxJVdEngl7M44D44Hh8U@IOMsnnTy$A zJ9OIKe0{bT1%#FW`{_+9fQ1z!i6+c^Z^GC;z}T%Fmj_nIRJ*bElRP6?xlQuC(H};B zFOqwmHlGJCJB5|z3y^qeV^$(Ul3A>gl#T-oBSoH8b_?(j1CvGsWt9OGDo0wQ7R^?J zPD0-P4T0tNE#gkFy8ep#UodzVkZWmKCd)Ey+!x0t#~lK9W$0)db_67h`)PrPF_70i*=!`w?7OsRLB92!*oQ50HRace-s-h>ER!Fk~Ki zfH7K!=va?MAF5n*xU2^*T(^3nC(3L$_=8iZ|c)_s<>Yp65Kz`J88b?#WFm!pfMHNq~uhf`Zl51ZG1)L5rZEpr)XqCbwK> z1KR&PAuNz^US3{G8d^$vMoCFYzT`#4vp-U_(zXwdWYRT zJui4XICL|hr=YO&F@@5%Q^LRDvy8aDl&rNrsv$;9)I8YDFyY6uYo2i>iN50m(_@QZ*S5j z&zHc)S+)o7A4=*!bIiMP%}b%AFEZ8)ab0K|Yi7FbOyHm{(h|6sa=|Xwpo3+QgNm_@ zdYjefIpdq*4<<1qB`l8oC84-OnZHZooJCK>CMaY>g(uneYzYeanAiD{>pb7a&4Jv{ z^RXJEIPuGznI;!9P0S^5XHu79@<@JG3U@ACY5eA8$B7PGNUln>~*!1 zG^+^sO`2gyoyWo=@R^`lnW$L)?jy0B_~l7W=}h8$fH=`K!Xv{>w+-oFAi4^&aa!k3d^TLy1DZI&76x9u z;wph>nQXJ^59OyFIEC{@o}||es@wAT=Zhb2n%~a&a)EKx@CI_rPx?)WyTN#|g#_$I zW~g3idz2a_qm42C`av_V^_4p!c}B_;2*drV^U2DP7jHxH`lm;`5el!RLg^??63>R7 zZmCSaqmvU5w`7IiDDfYZBVMPlcp-M|VzP91DPEniZPUwp=6#_FWKivA5aQQy#D>#? za>vZ@Bk;MqYCDoX4?QiX9>pL7Dy&YB!$Oye}yo@HDf4RB<|K;bb&f#@uR!Ss^-LsLXy> z4E9fEkkw+=vA|wrVF0$&h!pxE+bJ$Vmi3Qh$o6FqQk%!RU}rGt5et*%Q2%nrK}u8J zMaZ~YvI5S|DyL}Mo??ElrYf2n;eOy=eJo~7TU@JdaiuN0A*s#D+v{zTzt{6w&Y)$I z&-)kcN8u$*gWRvxpP3Y9*rsitGIlmS4KxPN>kB$;G3+8I{hY{QHFIHqlFch<5~CQM zIuWbmY$B#c!4jaernJBs{2_Sek=bLq_YC7i3yRX=BbI-?s7`D821;|m^`cox* zM3}m`f`xrO>Jj80CjhPEDnsWfykM|0qq&RJzy${CtziCY4Sevg_fENnywa4DD2Ilu z8w%}zm{O}fd7^pgA77nCms0O-pTefoC%M0eDL#h`H|V<9=LCQb0qTFGG;ivBPik9A zAAR8}^jZY6A$Hl)HSo>K^2Yr(PfiPBG}5V2rByqTA;G;YttoARYvnWZ>6{?qW8t{L zgpEFH#Jhhb2~7S2Z*7`029m$Em0{WwkjV>WmSVOA0 zCC>>bOC)MFo>V3;r6t{FD{_{koB4H8Rc-hiH81eTi<)Hb9?4&LKl*dj>&sVNKXc>xy0xIK6UP$I+N5OjpNEh%rM*H*FTG&JqjZH< za&4lDs7hrI)<07c2z+#;XY%3esp-2;lzf{Mq$0yAO=x;gsy$P3OfMxVeUnPf-mv>; z^vi=oO-4fBxL=^#t1CD{q^3#OvR@y*qCvd7K3jy!3jaaEn| zmVka4(Tde7zPmnUJ{isUvW@#xVf>-bv5FZCs`w!+kzDPFzhGyL_cR#&;_u!RZ$Cdmv^Y{3(nr`a4W+{3^ zdhO#$8bY!ApdPXEyx!gIsFeoCc4W^kKxGoO2q?MJB2@|Xk8QXK0oA_^#%JV11GCTt zTBHdeQO{1dk-j`Lq4u_#@eu;ggG_niJPA zfs|6r4pWn-hvQ1857!L~jLr}bA5NPR4U_*1zX?PrfBg@zP#~paGev^QT@&ha78#s1 zYNgkx#N1g@9p4~7QR-CBPDyVAyMawJza+zvncR5|?tgW_&UaTkUw{!D&sF0=o)H6x z^h>k`GE=$x1f}|%^F&&tsoS|3M%qw~tVF>YlU7-BU(43-RlQIssUji+kN`~^zsl~< zzU`*-m42n+YvbV%t{a8U>!^3s`s*=;=bI>2Q<}KJN(jlKAcZ=9l1B7)pVeWYtuZh4 zqj=b(GLoRUgbrmSd}hyDH!X{_T5pY=!LpwjmFkAO{dNNVtk#NF?YO7cp(>R;W2<=+}4o{{o7yemE}^Y@S`Uq z%Srs10jPA*@u_*g9{x8k$icld4|O`R?a7D)hP2`$oZ})K^P)7N!79>}StvG3I7bS8 zmd&P7>1&>a`!U@#Kt1E{q!VhmMtFod+)JE1h9Jjp`a+wk1i;)48t4epT^}F9jTGFI zd*)TuEGUKO#%MjUp(Q2uTAn%OooeFJh^W-3%Cn!!aAzMZ8*8U-wbNQ`)mx0=BdQRXaGb75O3z2d5cP#!#|C)PLLFI zS^U$#D%lUZ=TO+=4vYMB@$hQ8`Q48dq!d6+B{SQ+w7UK9cy7I_Wc|~SN`6J@wy2>S0fq$6_s9XG!<0-XrUW~!26#1)cv^gqk@Pi z#SBD-oU@qV#Dbu~-_`pXucAeZLTamQI9>{&#xMm{0=2Wn&*Yr5Y{O>|K(#O*8_%+z zgo>5pED-oJ#;>ue#C-ZIneW1#DA;rP z{Jsh7eTg*k-G<_<%i^X6{_r?A`l!F(f9#*@g_Bc;ENOI2n9HTj&DAUXl?InePO*>U zUt01k(ILX`XlpEM1e0IZc@jG2z1wV^q7&Vq=iI}*9kPc z>MvC5^t=;Me{wGc>*Rm%#*rCW;wN?IWc+&Z@Zv(2Ks3|NMhO9}NMH&jsA!r#q#2s5 z3QIT+oEwbd#kf5{`M;?9(VpyE0n0kPdNdqZFmBIFV)eK}xVcx9UUFd(phf+GhwzZHTnSZHHc_7}axlSf1JBY^&f@Zivcc zdWhq#SI@ZO8gAod*V-Q|)II&H?AvqmD3()nr|jbe_MV=yjH{9B*C<0(sOH|D&BeT! z@vT{oXj)MVRd2t3jr&4v`VgyQCuwra?)Ra#tmRhGd*K+HON&Ev#ML+JD|hg1=c=uT z6!|@PncUZTG=;e_@(_YoP9o{=vCnUwhxk=YS6MR$*`|_ZA%Hm8+kA_=(ra1EN1Kr{-|}2PGM%`mXfBEJT-4>xL9JQ!}YT#7{Gt5a#~-ng7ClINS<~8vhJ@ zxj1UhGd_bi>TLbpaAEh>YP?`0t~l%!I?y)l!(RSh9x8TweCnos zZ{9^W2A-=Ml?}@1p2^vdcPD`6S$T|^-A^hPpXJD-*zeJ7iVssS92p2hs1EiO6npL> z|CHKv=%4;5N;0E@e!Ma&LRyrIm0uZ=OE9qw|Is_cX?Wx9b6=Y$(8$&S`z&Y}6r=dB z#5`TI4(X&yjcTD{UWZG!3YKQB(I)QA`98;q9m!GN5`Q}q%dafy%m%SjQT=DE8Kg-%wd`3J=YbC;j31X~b-b9rI&BZzH6DKv zrdwF8WQV}F1$@7DSHb-BvTHGNuya zl%e&Rg4EsIShbAq!(HE~ULGqCugfaoyD!w1k`%G=XyU}VTX+8VzQRyuQny~{irXhZ zzxr{qWPIAo!A^}@r1PzEw%MnDF7E!xg*)c{?i!!9hd+ORxvGKzY~7DBmHZjnC{t;^ zSnQN1-+C7QN@4Q2;@M|Y;eD)&{9E+1fo%(Pi#7b8vxC$trfOg*_B|!(2MhzBh4r zocv+;H|6nQr06SQW%n50p2Cu?{e(S6;vYm>x_X%otd@qTpULx$;l%oBoVNT+#R&SE zih-RSZie0##?rwp8ex%CLvg8-F6IxBzZY@R!OEAOJW1^^wz!W*z#-uL*9VFR`1q^4 z!~UAWxC(GMR8aExH z8XueeBiXh2gVaT{ulgD~O$<#uh`@Xw|h+lm4Gubdw~ zk4F6+W>?^GhR|z?fZrRQcQFKKZxLj7Cgi^767I8{(ktoZQZj7yL#rHXf@nOl-dGnncux5Hb*zQYcL?B!-V+z^NGDfoIn2NW!?9r ztSu{-raiXRI8Aqjk$==7^o`$!T@=4Q8RvTSL4<)%#NpmZhE%*mQ1+Ym1%E&6ycp&3 zF?n+|I(z;5xryoxAv(_sX=fwp!Epp;6ltf9xp0iLl+O?uO9jn_!B$p)FDZ#_r$P5K zLum2^c&QR$H4Rg2B;+3bZKIE(gL#%TJqRcW}ZN#K2g~0a>0_XpUFnuyB9zkiUY=?Vr+@#r2s5XYy_%?iQ7guC#S-a=+_z`+AZ*3$&QM-;OMN7Jd6?<$6Yl(6FaiL?P|Ni_|C$ z*|YD_S}RsCu3N)aGGW-AVgskjn}?GIin=*1zW>}@em13CO*f6-s%5U!uH^3NF#n>TzTQEhmWewSg6M{T_M9 z`~S+pJOHwe}&s2(F?OJUj;WOOZTy<}m z>)vu7c@T>%ehbpN7Z<4INE?KzL7r0f!yXTNE}0t9#_Cd@Jxl}pTFT?=c5WEF{wuM2 zCGLF^NW+rHd1aA{_ym0VxU78GtuAxw#jk~Hn-Qf<4nOV`KyAe;rOOlesQex&7dzE7 zc3BC%IILL%9pXOESBDT%3O3b{YYMo;$`B;H|8LIWK8GTuZH*(sIfv1xU6 zMnhU*VKYxfnriDt|8iCyS2W+FL+y{5#1_Ardjozt7BO7J+cH<4ep5QQ|6o2E`^8t_ z$)Uaq{GSJD{US8?h|6ze5OHz_Pv12gVTz6Y0M!DkiB7}!dmQdM~AkE5hFI2 z1TNFlWGP!oKu5tIl9DN5y0dA)E7z#--8j$Vn;y%rut3=T;NhF$0oTWBHip85{X2u| z?0a{!+8ZN9eXG^}b&4NR0k%)>$2VQ*m;x?Qnw0zpT&ZQ@{AVR>`4e@R_p0hkWl5?> z>5}6#DjU-F&nksLq5b#uwPn}*4gF?g+O5S&pIxNQavOCFN+?(Tp4T5QVg0R@lMl*Lj-^|9YpLA`=N{`#`kt|0mpYWPkYC~HaxSjBnJ41zn>k}ui-T`5 zXrD>3&h5WnSj>MX0cDy!b$a7uxXym{J}6OS=2Do2fN_ATdEQsz}V_ zaoUx9No|xR@B{*^5bs7Fl+_=Hf5&fJxn->mt_v1HL^z2^o7opu6HZI%pa()W{K^dI z5NzQZL^b<-;|t8SN#XRSCJKMIGSg4Y!;AN{`WlwkQgfBu6*Fuh+*Mz1msEUtF}Htf%HYN(Ec z<)4Bb`@Zx8JyX+8cRJ6+=Uko^s7T}w>pV`S5PSdZQ;u1)!D71h*AX6dXAq9`t$SI! z?TB;rU}Q=+yQj~!=BCEI<&2FuG&5Up8~E6RXts(WeJvENZ1;4f9bnxhQn2wnw zx?X=2meE1enDYJi2pCepy8>9`XpVXlwvCs^`z>w-=VibNnN@?& zIA~Kx$Ly!}H}_|hwLE{g8@=dd!*sO6T<^F+ouQx^*WN|h$7TjL+se9YI&PSI+e~2krH1M z+XTv+?NXvh&yUmtb+eImbTmadH)!$@u*5u6viklx4|aV;*R=7HU6+Ib>NocjqrQ&M z@gNPqWaCTAA}H2sJ{{fMtK%wh8aOqZwX-{)hve9I@Uep__{YXSLaTlAQyr|L&oKE1 z0-NryVyQ#hi>M@zg_*9Z0J+s)dq4eQ6Y9h>+P%8%eAXQYE}dxq>m_$oktid)pG$8~$I^!G`Y#S7;@8C0tg2UioXG*9Y3KzJopfNL^?y`67oh=nsJqr4r>X~uLUbx8FkhgE<-cbd-PgYd+7oMawDmR{ykmGnUp&|S^CzO; z&wt!z@GsEUk7lyQ7td;cL z`Et`_3ydx>qfft9+(Uh@{d@0YMsHWTf@5job-bzHx_4S$mxb28V6#Sjg20sR4WmC*XKVo4a)+ecv{JbzO;W0Fgse$H8yXvN9S`iut|%78Fgfibq*CssECD z;vDzvVsf4x;}3C z#6*0){LZRpk6IJmT2|T1`Q{R>&A4Cme2T_ zLZ>A%i%%mkR6jh0@lDqdrg!z!-agG#KBvoK`W}H5qxy{N;%H*5aN;0nMUSn0`12s? za{}Zg71Y{V(~K)O>DXX~5Lab(OIgY;pT+La;QVS6@1=r>c=ULroN?eA_Z!RY%6qDy zXtN|JbI5$*?v^H0<457V8C8uiWM{7NoDsTy6(6CHGb!d^vQI5bJZ+E{B2PQ2?r*}# z5wadDE=Eg9l_F-XVbQ70byu8$U?z7;O_i8HF>sMm)+m>OGLS_RJp6i)hA^WGU;p=-4G$H*qX-By5ThybM*OWdEQ;I67w!XZ-P0+irPL$yy zwoR1t^5uI1i*FO=Nm!LnKyAccWpKO`UlLp!ocl+Akkt!oWFEvip=&+$erUb7QeYXx zhV5Bq9=2uT4}{2)jnvlG!kT+`aE1Q~5xEJK2hYx* zPtqN{${;Iw-8jmy+jFetgXxli_k}nL4FHf>kkh}wyKfMXK6+V`=7A+wC{2^G@~!ti z@4&U;$9#TseGFClcVVFzkp24IR{hn(b3Xjj+R%4c>rSQ}P$cJ85~wLZ@i~8C^{%*J zc*swQz=02$;qptbdP?EmkBkS#5yCtrVmSHxnad4p-&k^})jB?!mOkd!PClusI#cA$ z&v8O7A>w>ev`TBEbrsPugL`d4*pLHALdV&vLT zwB`+bMS{0KV7>uJI|k*hMak}TPj^}&1=s$x@TB4BqC$G#?CajP_t?s<$I}Gq5{3eW z2U`|}j0Aw>s_s#vbTcm59KAxN(MSB^abX{@%SRqf-@eMY^ZfZc)V!YR_sk|0hWcDZ z^!}C!QsveYZCgGaX#_DI!q&}-`jUecH@_GRKbPO8aUfu_(|l4FblLw><)_IX1;EN` zo|X=auchgH`n)jqM*^Vj80m*u5`tQbT7K2{Q2|A=6=Jpz9fu*d1??Icjc}r!SYJRF zxcA-m(`d2qzans;TXIa@=ON>RN^m9z)I3D~EHpx@UB+_p3inmZdZsCDKA6m_4rI%% z@0264s&Ns`oRHMKccsi<#DQ$FrlTf*Y_go}4twF&iogH zv))d)xjc>Pc?XuIk9x?LzcWKxaRnxuytW4ET7fV~3aonEUe=h=_7luEIc1cg`CvRR zb}@tX+%x3%O8-(OJioQD`SF(vB5&X*&v+WQydga#>LORZUsIQjb&-4Bs|1+$t*I+B zViAlfPBPbu1T4I5e^mZ`_KK>@drgZKdZB>YGHz-NTlkCUVH`U*FKQ=uFq+$}(tBWcFkFmjj z*kW%F#w?_iF#iU~LduHJ!6}O&)B2Dz=DCc6Yi^QqX6wpUcgG8H*`v zlO_!u8Y7Lf1-&1yRT1B2%Cc10*)u)yKjiFU_+IAGEYyC&(%84lVKqI>{z5Od7E#!R8T?vtCfqn7}PqD9& zIl4=S%mqWKi8Gk!pVv+k&mKDe_cUS?Lq~&qX+n73ygxTw5{JIYg^Hqfq9lB^Cii`} z1uVi5sRRu=;yX#)OB&)#F8s$KE7)9UO3*aANTEw@ZV^U-E0jSOs)JX)H?71Tql;nM z@HZxLBrgXwkTS=K0>8K;fH-fqz&eRXlzh$5v%E1Mh^2G<7)%2i%?jCHIqkfO)w)W} zvB8BD%pKL=x8o*C*zvi?)#yjP+yIT_T7H;piYUt$f{_+%2@dh37U3(l<+a>u!L=n6 zxM^Q>R7jb}R-q}J?<3#rq{K6nmr%=?H+*OzWtRI(L108 z2E~~f&2H+I4V)Ava(};cWNyx5cF;a-d&Q0kXK#V5#yDGIMVOwRE#lpfYy`VDN+^%s z(j^3c&b}6+%IFrrjr$jX?|p8HZ`b^3%|M{6XF%?*!S)FV04u@>``3OA5!ml@Me=sS zh*!2*=GJL*h7i4SlI=qZIb&EKX9a$3IgJqn6vTDD3imM@>C6i$p%xb?5WZoYgfA~X z%$^$rdbW(gq>R?8woy+&?S~I|JE@5L17ZbAC8F63EJj{@=)55~{PZ!m zMEO03^W1iqw_FqgL~$=Ig9=3pKW#d9hn3_*MS8=i0|qDmI@m<8*~M@5%T>IcXYG7Q z8fc-s$ac-1d)NaiaT@)E;G;fO#EskH94|3XPia0~eC4}`j=f9AQcy7F2N!6C`}A?& z2ctFfZ0q@}bw8O9?m0A{013n+CoJ7Ii7OO1*!X+)Kv7)>2Y)8OPz@vlXR%<5ct^9JaH zv4n_6_8+q&A8t(tsg){sai!R==|!z_KL<#r7emDn2}~@HnuVxBV^fqV<~2Y)qTOuh z2%wn; z*4CrjKpDf9NzYpv-m6=w%?V~%RQp;dsy~ytX>si#2!BpLaS-PH>%r*Tk;5F&^$W5i zKd!{<>05d^&ySt&d@QD&d666!Z zXPozDFZHIkc69rWMrr~?eklJE+AN0sMpg~irDR;d(tEbishOIx9@!Fcn z?`M=3^)9)^;u?jJ-3%2Y%#A5E{$9#{u`Vo)c)i3t{cSE{pfAy*6vS)p(p?(1jn(kv zR$VJy5HQb6O-+{oTpNlK!uuOyBgU<3mP4; zDh@RT9GS|AT*Qgk1Y(xtwBL=cs)=6nzj-=H-v7AFGI;rlZg-0QA%D`+IkZ)xuwm>l zg;LJ+>w8|4a0WrAh+|)FJ>g3&FU;hmK`J%LGTQv(Fr*Tqu&P5ZP)rk=J?5OOYE1hL zRFE{5dbY!IgA#UK9K`8LtbrR+#&8fZBq(|B`8Sy!Dt!7kklR#@&ka)|NRl8t*3(v6 z1NADkR&ov;G9|AVS;1TMw#87VMbtFJw`a6?Mnct-s)(>jQ#t+2k@26C`r$E%=34>3 zI!=}iuA|Df?+opCJu5rVey)4?yE8c;_(bH-SwU8s(6>E0qJb4c*;<2of5jR={{ZzS zS_#QgV1Bt%`yVe=`%X{~qT`2?hY8MF=&-0FZUSUIL6*W|QVcwUK=0KRqtvXMf z;gN_?h5pY`tT+P=z4)>dx}yK?b{G`i`l_GlR=$P@l1F?u7(Qr zmTCSbLF9LDJPu>#RaMeO#lu6;slr6KQYFh}>Z?7)A`p?;0uXeS*QirjWq$8N9SGrtx{#h(( zi;It)2T4m5&5PB>+KiW@nUd8avw^U6LnibOdN&3JP=><8TR*QaH zd{D(zh1dsfRK2yfuBIj-IV|arw4tjUzrHEzsj*fGB&i%?nx3d-IV)6&s8$Y7xeLqC z;z}Fz6z=RC){i}5%C5|h3;E1@ubNX)Wzm&~!1wnT%kX_aVz;uzw$%* zt|bU$pkcL^h>PmzYo_sODUv9d{+-V!^$^hHGnY?iT71MRyG_M#VRN#bSy(w|bC@&2 zn;5(cERL}7urq@UmQK=q;V+8(QOnEGI&KEz1S zXkznCBw;U8t4u?$`U}+ew-g;dvWoOUNweDnq15E2+LgD&W?NaNl&UuoP&LqqshRy* z@rN%#%l|^YQV=bU+vv~-sclhqQC+|L^$}hH{P_~Fyot=M4JQ2Mg(?dB;~VZ*hQ)s> zZ@DsTpVz`(g^nb7#OgL(2cv(81}~P!KR=i=$}ETu?}(8AljY)^j+1R3#)xjWg-BW?(qeFNPMIO!uZ~nJpw|&hmWvVyDS8-qYngo?+%`y_6m@<&xiq; z`V$aBH(c~jedZ|Ki|qBY3a3?uw4uGzy~U%Z)d43U6FM6}7zQ)FsSU6?eVU08kpm-B z1R(K%=Hg1R4dPmMJQ{as(o7rbZR@~JGSOf1C4fE&0ClbQk^u?(Oo45RmLy9E;S7sOqW{aI03X^rs;wF+3@_np94a$ST90)~yq~Q_61o>Il0gKcBJa=!|Exv1^XehXhdCRCd zOjA@g#Yj7DmGfOs?UbV?gRVuSXoGVaM@4DaY%?F8)WFIb=Qw1M+_yFU*taOMnklSg z)_SB7cj5p08*@TB$RA{X z+3_TJRfBRumEur%Bm1$v`!O?Yn>Wo#w_7y5!-n8Bb0gY6or#ACdm{`SvciR9YzaTw zD#3VASPv+5Kc0Yb;A!WNTlOU61C6#nT^t!k%&haUd8#|Nk>QAfc7DcjHdfmgmm zimIfs5IdGpP3#VTngIP&WGQmm0y*Iu6ykQ!dkye>|GQrHP~*&h`Z*}$?fxddX{7>u zUjv2$)FS@JrgFz2HR6g&8z~*WvgoKR_rHpVKyou|$-sd#AKQKrH+Mw=t>czbl27ho zFN=N{F?t_@`n~Z*5u4I+UzXICf>l(;A=0s4^u&)q7Y4q;&g46H&SLtnue0QyC>` z5?yQ56o?a-#^SsvMgCNQ0kEjk_J>g~iU4}z_i}JoU>v+}Iw3F#LZy8~yy4_|?tF-G zMiFfYo@$-k`#`AX!pXLra}nAIkR!eICLJslD(O!x|Lo{cLhruB^=CM3wE6Yym!^Sf zbXFYs*rp!seXZjQu&Aj0H9=r-C?){tR&T2Vq0n}{e5?%tuklaRH8VOD-pwXR+*&{V zWk7H@&Nj|o4pKr(F8*k6e*?=j*M%?Ld!)tE`*k)ZGTe2dsW}J>>e>efHwWo#k-@2p z#HE-48rSoF*Bo0vSNr#8W`FC|@dIvHluOk0o{tg50({r_i1KGeMKAVu1HlW|FKlW1=ID^cl@i>o)01SGf6RwvFnkC2#SA!PhcBTBVBKrtRrr$XICw4H zN$E_0GtCUJg%HP=CdP?spRrW%%p!R`!l?n!>Lml5vfuu(qQn#0Q3_(EYtTONpn@Jy z%l>N58ODhx$5?wOSc6;Vys^0=`tZ`|V6Zj(dOUa%9}EwF0H7x1e|a;>;!=&sz)36M zI?`xi9HHkwC!&U^eUbVEb@E;@2N5-+1bx2WnL>_72354(mP%Dg5!5;68iL@p;cbTG z>eZ&bbxKm4wk1cyNIDMpUv5CXfm4$qnjxd0^hvu^N*;2(y zJnhRMnWi(1gEfjJ9b`SOdtxx!$>VMEaoHd=_YIuZ2MK6W0CD_8I5~xgyi@T`IkwjW z9BX15-CeGP0&&()jgV=_+No(E4}?7atQd*95=>#@*%w4w+3-MQaVPr!9qD0~HoTA` zpb+%`jipk>MUszjZ=-53Spw(ZLB2+50PGH5$hj2fCPB8SOEv#2gPezF_{hSYrvLRu zX-waP(War3|LyT0kh(?e7z!P^AvOc#>dnz?Ha+BO!}-1P7V;#bOx5|N6v$XaR0?E~ zt*%kPnccj7bEHR=mWO!iU;a_GRGok%#jCM%}7A zEhwGOO*MB8tt#@X`k#_LI}a|rC*xc7#uteJ|1=au#DT(wKxi&l`}xDl6er$U7B_P2 zjXpd4_3a-78^)@Nt9#YRv+o$rn-)Phtrjf;=F%gO7N-qD`4a8XX$yGp_XautwT7sd zKV>x+<^5z#u1e`nJwNpw5B{7{0G+Yeg*jcAeR{-zV~jY0kdLL?W5h~Rs^We)0sEpy zTkghj`Xkl7s587>rd6{SrZr#U@^&Fu)y)ErIjfr{hu^*EZ_MEJIb{v4^>6qM<5+BJ&wqI+B9&fZv=Ud;N1#hQx<4>P&;r4kei5A zoM@%Ps#LYJ!yDamRi-nsv$9z74c^Jtmiz?;^F0NeV)hX$V4KwFPIx#bcsA-7<9l0l z-)e>qzV@T8y%JouK;F3zCmd9QUgGVIpjPOi9JZa!Ip!YnCGUR48ndQSjF(X$Bn|3b zQKY^kk4t-6;H}B18$}Mo#&iMT7NkbOa|-K6)sd2$OS8VVS#6YLpXCA z;o5RzJtkdyt>lJ7z&mw86gF{&By?rev{>Mo;cB6bx7-PTRNkj|SUFJua=38Vvm6j# zm!qtT9{V|olmJc!TZ9tNRbhe5K1k(Iz9ljAK_(a;bM^3HnAZ6jEb+Yc{!T~WHv|RV z{wEb_JmA&5Vj)%fy*n8^fA~0AA$5Fm2f=OEZuj>tnP*<$ciPOKue!9QDZr>7OCiU` zHo`wSUJOJ1Q7qTmD?B@?RmyD^#@Zm~uwm5|^17k4z;FVVBm(@Y$Bwq;wKTZHggMio zwY>Z7&Z!Hn6T#PI(Q7ckkYqv7F@_0Kr$G-`1-@)z*P}EJEelSsGhnkQ;raXa>^y24 zfk48yh7>I-9{f_Q%|}N9!NtMbf$~}Es@%xS!lnil@ArgjR*^doDd zPQz_i%5Jl`AP}poBi)J%&2n&9Cb+C&Yp`^ntIGKxs|$)ABEn+#3V9 z-WLH`C91my+A=&Swlo1g&F&6S{Kb^xWdxE{AhR3$7K*;2D@Qu=$P(}Z^@(NJlBzo? z{_XBCZT4|s?J+%+M+sO`l+=D;(fqR)n#fasn&-X%TOv2>O%r*S)i}ba>QK%ves~nbO~9r3mw@+O`t? zI9()LTFF;)lpNGzQVe}vl63jEanc###j$jhEqvc+wmBu)y)fS*BZlg%jZoOacQ0QGlEE#byyvBO!1Q#(RJt7Wm}lxfGe zyTI2=Ukf=xZ^@DjIkXK3d8HsfK;Ksd`uID|=j2AY@gLIyD}rePS-ff`HNS>j!IoFA zUmq>KdL14j2EA+?D9<~sV@Y7I?(am%;Y5J|b9&1;?6P*UTI+HqIl{#9V&{mtG*>|_(U zB1CYht^0M!k{X)NLylLCksd^MH9V$=hZtSH{vj$%9QvFTd@CI~6B9J1itV|^gCZM> zkJD8H;JfDM_KqD~kgM4XL1zBg<)~sv)qM%*Z4rEGNyzve1=8?`{4@!2A*^X%Q3|xO zX1yNH331q0N@7Hx8glQyZV113kzAQ>Mz?#$v=%uXb3x{_OWYccTZNtN|6a4kQf&aG zpfb|tsQ*nm*q2`y#;ewjO*)x~Stuh<{3|BvvMw^a{g0?{LdbVEWRQPF^i(lWWL88+j+W-VIJ`cPdCY{UNv76OC`a$_shb?EdsW z1~PA4TAxLR5`R(u{{w0CvT-PsypHMzg30HSG;6IMj#1RVULdm=Z$x7{& zd>4pA_0BeLVyW&|rX6aMTLbk`D_E-CVkZfGVKQX{q%NGnq|uixJ_{01csC7D7|mzfCxmA` zjXM0k|48>aY3}x7KBOYJ!}uIa6f^nvy^{a>zZsyn{a)`B9DH>m`@qX=t)pAI<#5{atAP(^1@k_1;FjUElT{sxWc&>0dP!u3 zx;Pr|tcdG8`IVxw&}<`m^78$ENTE2V{f7Hkfd31a6=&*y7K%zyfuc$f@1g=lO^eF+ z4SzZm6)5TkCv#MwsE7&_6;UZFq5?%lR6x}IASy*gRG_GcN>LFNC@P`?MMYGKil{(Q z5fu;>Q7I~-0z3Sji3$`|5fu=1KZr_E5fvyZqEb{u1&WHOKv5Buq9Q6#R78b;*|%d9 z27xGwq6Djy(aKU%S&AE#O!amf%nkyQ{DE`VaCpNn2GnmG{*k(ay0#OlR2%A;fT|7_ z^%AI(MHQ$^2a76D$6@(E-76KCY6d8h()N|y3a1?n?-l!q!%=d>Q63e@95s1m61^xs=`sB-oH;wy@@z1caN9oKOq z3S*YDi!_);c98%sW*H2!xNngVC<1u^>3K4_$l|_j>gQAy)w1liTj_2ieJqhhO7L~J zzdj_3_I(qmfBEqvGpc_e8fOU2-+%w%`u+RGd$7qR`geAWg|Abc3C$n9CVq-xoJQJf zLFM7HEUh)tg4Sjt4%fC&16fNgjih3@nsNdO6Pxw#@>sQ|NKZfwn*Bup>%*=n2E!iGav4naFRQX$; zSw|y(lfw;_Fz~~>Knz5SqLzFyxr(eiDlQnH5Vv5SE4&qwXnSLV8B>77R4b|FfWfNT z+a>_D&Qi&c#057_1a(k{kT+;}9#DUQ2Qp!Q96~t$^A(`}CXD{_(sjin>XD=JInt3D z-fWEX3T(O>YME8qr5L@n#F-;`jQp6(I;z&9wE=X$j{qoG)h7k7B5(>e`2jbTiug2k zMY!z&l_G{J1;t;`7EGEWgg=NpH9_ftib5Bw@mkwQAKOFRvz7}amP<q_JhVoZ0zGKEMBkRO2m%JXv{fL=jpgL2K!1%Xr8C^@5s zDU9|(8!dctEtE>T&gW_3bHsZ;%JD3q!Yxh1^%eb3!=J9+^D9XI?Z-d1_rOs@c~$D?Mlq><|?z&LUOk2{e_tGMF*aD4kDR4!XLyH-z zld2a9#%e~}9$!i63aY?L&y}oU`2?lU1S-->KOI1buJ3$)o37mR%XiNs{I$QQ5bKqo zwk|{=JSG%AIZR?GNVAHlxnQYldMQf2k{okntyR2m!4yM#aw_bcYRvMG{AFQE+6XWA z(X~`HS>{yQ^XZy2E6CN8feKIkj`k6#&^1uOX9PL)mxG~y930fWn&+wd0oENBu)yh( zsD@r}YrURC_0>Gl>dDu1RT!;8%qE1BKkCRUs2% zSM(;I5R5e)6@J>yPPyzzeb`co%uq``+fU`ZPhX%Oulh5e+QOO^w=F&?$XrrJ3~=h$ zTAW4$cd-tvv!we)ighLUX2<|EkSP{Vi`lB32(c7=qoGnQis{Lk6jU4gUu;Qzfm*1{ zbU&yKgMLdmyQMdrEQkLTIa$b*HW;X!2B@+LNF(>E4csAzY4^ljtv*u@uZ4?BSJ>*K zi>YFo&j)qX-F?YQT?X~bQ5n|zK}}fAN}~cLphizo1UV_NNhtVp^HjsLhW9GLO&9xn zQSYh>X(k}dXVJpnQ>LXB6c1^pLIUf2ss=$dK)okD^)>X5R~!|lsv=K4a!g1LR(LHj;DoNh^U)^0>IfoB)p%4yN7%&yXuT}qp z_t1f`mKGtCjznhXs}wvXQi%I*?%k3|2`n~DQ@8?wO;i?kj_Roh^lX;6L`~vkOjU{8Yq$GEsJn%I%v3W$h0RjE z8!s+4BeeN|3TvLLaa#P(yS_OqC45d&KY;+Mo~iL8Xyt>5N;ql-s>gzBnza(_E;!Y2 z=`)%+bxjD3RBNC!gDtCR#c}G>qvi;YpcJ!!-cpV8dk{qkP*2h{BH7Quvw#Xa{cuo; z4^fpGq?SWc`?nh#>COAoQJ2j6=NDBs+F%%95*p|LzA?IkQ)7Sg`93e>AH-*7ozcfs zZPaI2sh%}A)$gPWr0P>o0V?$Ipo*&0w;gpsiFY4FfJ5grmpOox8;PHZmcD&?iy*JB z-7}|$N(?f!t(7&X^`v_7y5yA0{$j~Nt!Jh9GkbF{s9&HWFiN3v$xb0)+Tf^7Lj$NU z`gE0*&SGQufNx%fwu}byOV*pMDL3!VgEbC9EucN6^(M0b^{j834oRzNeqK?ZhR;@rX>{AYqX&nLb4%5S* zv4pCCYPr)>IMqayeGC;s^o(=VfzS7sz9FUJjk@frh!fL2yD-guuL#}-oK$G7h<8!~ zlhGbbR&*e8LRpc&B`wlY2|=oW)OvG^s$!{6XBg@<4x?1zr}I;-`lUU77^pA}KB!jz zyildBYIf}03VTC=B*k7)EQ8QQpNaOvd`A0GALwTX=D)GG4@U*1ecse)zWM_tzZH>w zH<}Dj!udu`T8z{D9Civ&k?f77-z@qVP^n_%r#l2vefV$D7py5OIW$`XZ1oCMfoblO zX4bU(;7NebRVHy+v_Uq>Z97aWKO(hJwxrgGL;$tEolsfj1Jn_qPR|1BJjZ9eVm+uq zSHHuo)y8~(Kh#s}O=>egseHt~P@1ipC{B>N#vW48o2z_u^a<5IYidVizA)%}t|7U! zCjQy$Ds|6k5z%bS;#cxEPT@ZJ77x!OfSOCdG2Qe-_Wp@TlQ8pk5DZ;NTeVF#)oKj% z1|m$wvaDZcoe!+$cn{Xb9j zsWs5k4OPQ%Rv5b;%fWQC@{vCo>RKe4C7P@BVXwKeIGoE{FrBuXj>Gf>piau?FiL#@ zs!n3xL#6r%x3?C+S@7Yvb}$V9Be4_3?btku%+f9oYNiW>(Llim`e3=Jj8OkaTKIVP zO@6C!>4NI@?bGYpGV@Fd=lmpgg~O)?{E3qBHF8{pDLIA4_LLBy&kh;Z%m8PG9L4*dQHT?)=y{k{l=4V|f9W_WzSQk9ap`~so-bl>V zA_uvt>MyR?kgu>7j?jFqw@$ilW->W6shcXN5<`lvRG$-6tnEX{xAE~xP^YZNM6{1e z@+n7|bGqfIlC_LSBev#XNEMu3mN{rtm_3H068KH{Iw;W>m%-(RQ+o<$5^x9ISV;j< zjQ-&EK$bEt6>BLlTTmghtQ854#Yio1)S>|>t*zY!d88TK_WBUO!*%wzyz;KEIM7fYg&o`N`<2tCW;upP0*T3 zyBMWNF_|*dk1X|2Mb;kD#R8%TK9!@Y@vBCu$CR|;t-}sSZ<*#Xbxd~ksyLGp8>cz? zx+*9*JgLE8=}F1 z9FPRJ%oH+g=Nl?LzqMlUCw&uWu0=#*B$Z1(kp{OGm77}t07s#OiJF5(DnEq_+cxcQ z!WAeIt~sr}Uqw$Pv{p-(3aESyJ9XXvfqPns2FKtWU3yjslyN7z3IN`zE3SPNk?^ z6oa|a-C8cw-L^NuCr?pHBmrQl_LESx$Q-rKITJ8+D>6|uW5me?zX4oL?pPnbMzzt*%`*GlW!7CZ32?z^Pf ztn&W6@;TJj#R>%Z`mEjbid3{N9MM8@g;rR4Bp4)&6(BvPLd7*#JF17a;qst#0M>x( zi$|~jwr_7a3L{$-MDG-0&tS*=2YEjzJB5*Xspzg2Csf5rWAV3SQo^RUe*kNBDF5TX zU92{Ws`zh~M<*&43G!0Ye;H~DDH;@efSQMb`mDP=X*2t*dr{P?4Ho&52I?w+TF_Pv z*?mNN>q%QbQQ~bjN`z>m<*OQ~t0=Ji8IKFQy<{EccwvoimdEGG231nNsex(%pkPfm zcgaH81+lJv$LYFW#|II$6hipE=8769(L#!H;8XWnvsmq;ugZ*j)t)h}t8%G)X#-V( zSj9#KHF~Zv=Q#5e+`N2lqz%+UEGcQ4LXumg)!V~&Nw(gLn=3Zto3E$?wSn?eO2Oh@ zPe@hc%SE-1Rd=oU832SYZJ@eA4XE0*w-gmuc~)vwdrPtAuGHdn19hN+5Q*80v}n`& zntah|H15Sa6)kq44%9=1@>6VX@1~7waj7RXSGC&S;o0-Ae{u`8d~*YJ6)h1$4!g=V z?>K#-9t77_u@L17>NHSOK)8%3#;U1xE1DzAn775AN<{zz5M@=qxq*rn0icZ%RShTV z`rJ)VeFbjU0%-(@Wg4hkDIx%>tS#xe)W_AHeKwxgAYutx$}~{-&6`LSb4m!1KZH_9}h`E;89@ustE22P19hOjR1i=_(FUMZIq2*W>q~d`r)Z-V@G@6n8mRYb1dAxx zY|>KI#}Kxgr`=c3xH+>!I8}ae7|t^4qSm~IW1UJ1+*YZ`3SiV`mxmf{?(bX| zR2vJ*WeCbNP~R?q77ElDA!f-VMU7b?Piv~gXdwd7jM9Pn3pIrnB1T9-s}}L6XmfwJ zN~02u{Lb!l8mKO)SlLPe1O?O$Yq__1&Ce_tWg4izTv#cp0M>$9qQ<>89v=`WRh!NB z2b%_JS`r1dbh#AcBBfv8auZ&FBtQWt%DRVW!hSZGc7#KvA_(5F$hcyPeQl zEJBPOr~~!$1t=?3jS3J;8o{fI1&At?&o&LzUXg{Q=sHx1VB<=$042&l*+8ANkdi_q zR&9({#Y_Jn&1s;f9E)pdiPaLpV$nwXH=qvGsbC>0z_MzCrKJ3U2I^!9*|;k4QY~c~ zsDEi=5WoWLQ27%L)G2&Z19h4P>Re<8>Xh=@`^{&@IO+NZ#E}R8PE@Hm{?0%Os<%g~Vmdi=nK0sL$X{rfnbxLd(wccE^+>Z^P zY%gU89B)ah`oTbU`k1z)?UR4vrj8cklSH1$C!g+fz@_q$!lgJ??NO-JkmLAKnA!nK z?VE%sC1WRcGIdA>%@#v;qgTC}KOU6fg%de8t;j5CL#O1l2N?B2$!qjZf{t0S2pU%6 z3E|0E)d)*S*VtG4v-2G913F1MBP#KNn@C1FTXjOw~FlsRFB|vpPQZTmppD6H)BArKRwj+(TWZ5kR-%M+YNn2vF zvQbedS_c}ll4Nl+%-Fdk@4eGPO!m&K(F>DqdnP*(l2ROn-ryx*#YZs3yS$618Hd`O zFtwM;K3cCx{*-LBS`z}s#z;>QiWl9rTqX?q0V6pRJ;tcoY7;bTrYWhwrU2W0u79Ky=uH{$gP=5GGWkU=6U_BSKfvjQj5>nWG93CU5dcg?R>NFiQPne86-uhM zT>w<@r9QanqXu7&TtDw$g4WdWfHwxWfSqW?wyujR#cs)zJf>PSg%Nj2L7+NgW<}DL z{Ef?jXe|!ribB=~msyf6?evp zu$c=xi&~DpCMpWR)OwH zg)X-GjXE*s1Fc#Iu!l7-hchZzG_nd?>oxHOgo@9V;}QBOv4~@o*|mhTR)0Rrw}8r| zXdt)pCzc#65qAJ+!ONx%2B>1xcxM%#+%PH+G&VGVk)yoZ`n_q#ZI%NMMm9Z5LGyO zBE8l|z8>BfygEu9(Ew8C|H2$r6oWx6C;3q>W76zritH3FN8>5p&rU|9)H8+RDg_w) z;Z<^P=4@xhXM&ZU3I$`rmzwp7$r`er(uqEhwaIl9CcEJjDrr{gwyRQ@`;)Px+wk~g z&HBI$GC8RhKvV>I`v50YLI#SRKapLHheTFWV=XWnISp)ffB)S8)4?}SXl)YYIav5a z23tLVT7G!yA722s7ZJWHt!J%b&$VWz^L(04RYHnWP*w^(74+C>6UttZbMVlX5;Waj z&(nUG)ScS2d)6ddp)>OUij>2fngQutc3kAVB~vwd9Xi;#?XE3QvTYVnjX5|lfK4L>@Sx>8^M0P-9b7AM;RzT>?dSXZKTfd=*Ax#ez$}b zP}uZVow6LcbNi=R0gFKZ4eptZ2Dw{UZ}4L<#S6nLo2A5(wW$Cqs$C)*uTI+2;SW7E zpXW^Q?82$U50z z5hYEQq`}pjy@1$ha-wZdC`=pH=>4X zz<$Y*dr&wcJrVYntmff6HTxLvGvZKcf-~Mp}>t3>ncaK05=eO$<)sSqgv4p>X$WuADPDg=9!vsO=dt)PF>ha6Q-RcF#V$q z{Q$#4n8>3A4%RGy(B$;}c2`yQ&MrA;Am7M3+7dp}p>|>*y(4u8!qtRr(AGQAsb`tt zKehfDjS!SBg(&{VC`Blzw;jls_Qd2Dn1WIrOC^72#hmo?_W7Qz{Nlxn!T~V2PA6VR z{h_j2a{!kwU{rpXQL!jR5+bedWJWe!q8tGZQbsJ@f;vp0qRytz@!nikb2tll4;tl2 zc@M|FK@Y$S&>2`$2|7(H!_N(^v|2zl!yyGNShHmMX0}r!aln|&yl1$4)(fZFfaQdh zG4na>rAztr>GI4nH^-LpVOfsfmf4!VUJ@g`_Uf1W`#%%n{R5-^bZ^4FCAGPe9NjL* z+OS=!JZG(6M2>sO-!3~COh6?3RTF!2*#2~(4>cII5ZQTUN|Do^SDqnG*yL!+PJ%!w zNO5v77;o;BqY%!Y)Z}*q8&Q3EBq3(TWgW>lqz|H$%^iv)8RzB+J^53!b06-Lx!8|g`O#pQ{S}Hd<2zXv@mpiH2 zEUA=GEVSP8~gWIv#@K!DP4%A9@ zmXa{)@x`0vedRsHt}&|lhwoj|V~o1%rv3n`5UQYcIbK(A?i!=k3S(43QPX1_NOW0-xm}OeReTK;?k8IlK zM|rYr6sWv89yK*at@+Je1?pa~yQCI({6V-CLz*j3hQ6rVOzCXG(TGz zI0+S!ec~P&h6lq9IE@v5t*Qar$!so^*2tusOLKBg22S4F#bji-sf}D~YBGmAxC(`~ zJ;QWiyJCw@@IaM$2%TQE82xZpfqHmW=H<4r0&Ubxu(xXsi^Wp8WGI$ zz^W4DuDLdvhTYrpIZS^T`Qa0`*WlNPMwYVsC9pLB>%AmRgR(k+_(PJHs|wWRuEO!j zv3Lrg8nZ6ReK$g=FV&*DzyC+r%^gtxB0zOQ{Y4V<^*d0D5^7$K*7;`nb(*~JbXmff zBH+;UQ^{EY+f<6A7cnaN+>aUG8CA1H+IUX#MU6}yRDAs@cu;E4YYy#>tUzWU_babb zMj#Yvj%>!vUo%zY3BajzjZ_cLF*>Nn942{gpA-`c(;u4Yw3mXjDX!smmUT-;s(wY@ zKk7G07gE9Z$5Mg1d0*4pW67G9!ZG!Kzob{o+a-nX<`eD|3s79!> zq=8gYpuSc@eX_i_-d{=GMuEzFSa!8#7gN0-Pync{R#nt`zLN)G8g>#ZGBHJ=xvUmX zJtD~ukOLy#yI?&^1(c1g>#+ohg-LFX$qqJH|Ll&sXs<%Cgx5TFL3+G%C=KULjydM&i-E`VTErrS!d zV)X|g5siXhiZv}*pZX|J2`l=@QEN1+$|-RAaZ9J*bx9uaRiOVR zY$n0dsf-)ZYCr1iz|&KsPxw!h`}x7BQpk2aRa7N$#}iyZ$**sne{iiNe5 zLp!Z9!Ho)`&MlnAW&4(1?BJi5y#Q5IRe`9bQdEagMd;?;;ci}%+p^!>|4{^}lGM3B zLXaTT`+EVZQt4KSwVV218z>Kp0gP+KcfzO&&3Sn*Ix41kJz5d#{23wCix`!|Eu{zz z8f7f1ZSHI7I0_aapOYN|N`$P?PzZZ4Y8MMr8GDuB5yFYpZ%)Qlxl;gwO+lX!gDG^> zXx!ztY#}ZSLqGW^3a?lSjMwGN*J> zqXLn7L{am0C{&$gFJM%bgkm2pM<%u{1Wu(e;&iC%2x64Plp+pgyjloqsaVXulv5Lg zol0_=lA;l<_OSSS5F*ron6IIbhKib7bzA?59e_#AJ-w`7$!X9lW^j87W1gXd&oHOt zlD^@~PNq@7-4Vo}@jtV%jkD4vavMP1C`2t)9aT(|c}d%4*$GgMlzzES0n~i|2cKH~ zU)?LChKAZx>hkVp0P5GZLV&6k{&FWeYR!UC+x{syS1l9G7cgqu-PL@-pjOs8;`KJ_ zfhr%};g3QJ#?d48@$Y;9h~rP|b^Xa>;qXJ6OZJp+lHm;#Kj!{EuoKnV7x+%N8A#cl zO`u-xBD36asTFn{pAnX_k*aI17@m^rrGUiRgLATZMp;37FvX`eSA7hb513>46>)fQQM;qy^qvL5tF2R1}JAXr7u-yEa1hjn{Df6;1=& zNu-{@s1Dlf^v2;(h31%iJPp({aPJh$q)TUg_!A;#H3L$G``@nHlWRJI&`ZUveuXGS z$_=P|ct`alB@%D~s1>yKR)bN0F-FyeQ}-?{I%TTG&a_n%(Mg-tUo%oR4BFAWQq5U~ zbtwj1$S_qqXF4>=n3Dp))b^n2fr)>Ve5RaGncT{7d|-7_2no6R>WJ;s^bAb-5R6*VXORA{?Rr>NyPNEIHqWr`l}F0MnkA!ITepU zg=;^8s&4;F#d#+x5yK%B>-$*Kz-e={o|T03+=?{Q_|R>NTf-<;C3UtN+nM(UMatuQ zIP8N*ZOVvD1$~Bd3|+OX^}Zt2T?}l^b9QAo&Z+s8BDx0m@Pv{Y`g5^Wn@%8QOBtFdjl#_&!}XK`d82QOQ;t0PaW4fDuppcRFCC1(NQt62QDQc z7dZT-aFMs4M6gp@QU;^S;cVN<#kT9PC%LMn7S^Y%x)$%^9ezpf-8p~6K(MD1~kttw~aET;w&Y3jD|o(XJZIx0zm6;nW@-eFgI-_F7*ThcRlhvupB_lYd3MF(>(4mI*EmkpO6@U03dKDEPRos05>{-d50Nh^O z{%DMvWl2h}qe4s7)Ao0#RK+YJQx%E7nN!MSvk1Rx2Y#~rYO($RCbeU2SG8qTCydHv z5DrFVO!k@*>?>*Vzq4D-Pyi(R)pDqJqSAEPm<>{l3@R$($ScQ!sV5i9=aVk>O9zW?B|vpw z^9)8c`Q}e-m;S~G)!}47rDfsi>jfiej02w{;2}gCjXb} zM;+IrzI8*&C^aHbOkwNG+&{;n6t%6az`R*lr+!CgTR8*1z`0lkWoB`l!Tp$CaRKA?x^30l4fc`_v`E82G6c`n|^nGvN zb`RDwpb8Z41g*~$TN_ndk2*C=gIoO+^a)yBSyAjq%=~34nuv^yiU1T*b5prSfUPKG zr*ndUP%onn(ELR+zR_eJx~4oV9Y91hX;)Ki14IcZcEoyrq#`8+PGMbT=TUbw0P@Is z0aRq$Lf%N13$USatOfC)>= zQ0lmi8@MByPf&_bRCDbk=nqD9PCYM=Z~e(ZA86`UMG=6Z9YL<~)P#Fj2lgwE%l@z# z%6FhzY63rM82-WD?%BoKzqM{1mf7Ip+|sTY_NqDnmYY8fZCRPK&Z2&0-Xr@2TbvV55aP5zzjZa z`CWTCQB5BF!L$!g4*H?aAT@(`?fD2nfmvZS*^_NHhrcRYAtLeGt-C4KY;}YQz5df(99X@5UtR%$A7Ip*cZE04qT9%*a+RBBnplZyNs_YJ?6osHDLvKo zsP3WyKM#azl#2cQZuJY&o-D_L=q*ec(H$u@6PLRHX+h=6KKY z38O~4O8-1aEX+)g{vHCt?_iT$7+*4NT}CSnU%-p{r1~t!y|x5kNn9aIaLnVi#4=QJUinAH>(s0*q&Xx_MdA_s+V#3`XTO zQ1|sh^-{M6)LkvzTvfns?+$wfZefo%{=8b@Z@zN?6)q|h2Bog1eiFrWdZRe~PU}s+ zt=-s-DK72H`V{P)_q1*IgPVU;P$LdSflA<1D;ZEeBTgFW!njHrU_0BFPIv4VY!!$a z-LeUrP`MC;ZSk#ro{usZ6vgWboyqAnRDRo8$MjTRo+6JS_XNU5-VbV2Hn| zK)upD)zaZ*nctP~1gM7{bHSde`~PIpJyV8-5AW-@635s0z1>@R`?dm=w%6Cs6>|JW z<`c1>}$8f z^TWHck>v30n`iY2Mda|ZGU{ssYN3Ome0x``_a!fzyI@qY`(1vwGLJz03fra4o8$s? zaraH>*vc1(BrjSOOn=R{o(-tAx}USHG~g68>Nq9(wBJ9;XW9@+#47eU0yd5|ytD8k zWqie6&b%Le0^OBLO2cnUq16B#ARIy!BcG?>WdDne{nI>Hj`D!+4AeU*>ltnUwfgT$ zsxYgFQbxTKZQ#d!F5BO#(y0)AWk8hzSE4)$a+jJ&?%nNgMday`ZtwDDZ(LMMn^Lb< zxL)@5__o%E0sR#F`U&yYUVOFaI7VGUQvVgLPR z*$1OOt7T!->&mo8N8wS?y1i3I-3Cyvw|6{E*5%cPYx)<#wU;XOR+zH_wLE#xjG^dv zPeplTRPxOz1P#?20NV*Rk^^+YM$@Qn6Mu9gFsuHp_H%|9G&vYmEBrw4U+V*~4XGoe z!g4@5z;v*e11)$DJva8nJ#t64JF5-I@3bl#nY!)dMMU)7zoezr64lmY=U3u3^@AYs zvT}!DFUH1FI34n-F$e`c1HmV9^Y`O^VAPxE`L1kgwpsnZ4U8(eF!U9oH*QPaz9S)3 z;ZX&u=2*lTN#Ar60JW#o-N`SYAP+^L1@+^Yu<(S@hO$wuuT^z6^#c-7QNY&vP?Z?J zNa1KH^jWJWFl~m#Gnyq(XE&3EQny)qs3s(gLbwr|2%9vC%*bk{Uv1HR*wBRrw%DM8jgx0~4Y+sy$6b08-%$et7Nv;dou=^jDioq5I9>4+7NNyT6Dg@V)JP zK3Zhzx}G=B-#n|`)aqZVS3ukV?{96%^!4>#XjM>drCfanrM#$K0?GZ=u!voiAl zR9N$bLPx3WDFvlk%AR7Sbi=Nk1H!F!Tq^Cb4Fwdx;^tUoA3b}XwfS>ow1Q4GK%lmF zr3Od<47~l0Rq(P^LGoEmxhLq(F926O1PF~bXet0ERFlr37Ag2VdY~=T$)y@T#~=5% z@=X!n3Q%kDrWXJGPL)h0Rg3jM5x1%PQLiPbx$hLHH_NhA++K0{`d2SWte=YRQ2krY zA>dfEPz7Di{8Y~<2v&8!7!3}!FllS6LIGbGRLlWXO+k`GK1$6O4!nYJO&rQ}jwC@h zXFXH>o{ww=czV35!|Ew#K?MNu<Z*{J-Z9O zqDG3l_|t|528y9!e?N2wuyPL=L;IjuW4Cs%%Qk1L75m`sWr9fRw;#7W`Zl46cNhEL zt02llVARXSs8dg{=Yulkk3p!#=+}X3a0cMrURsY9L>XU&#(gJ16I%D@O3dT<%YbBt zDY9m?glEDTDPpbTS4$_oZ2yCj1gXSjTVGAy}n*MI{*AUarYoCUlC2Pb6PB7{xNsuML2fN9bl}u0vY6i_i9H)$suN1V1mxQcS>=zNm zNgn_LUI6dt(3|z)=Z_F;=a__dV0<_m;;P*zBZbk`d*dJ7e}lR-{^3)K>!tF=1V6+# zFlu{C2?lf9dh|&^#Z>Ry=m_o2DPizaDFALq`6|(a@l$;RqcS5~{;ATy0#rFvkqx}a z0ieK=0qGcKZ(*Fh z!2t1jjLHPUY=#%g{utDF0O@~{8K(2 z=T32{lfL*O=lUp`eNl5F-ta;yG;8Jb0#b_)N%W~_dqz~)1+7QU-TiU4lM8g-Z2H5; zZ(1HDwx>J)F^4Z6;(_)aXaqsyr^)}yR8pnwp`oUxAPmunq8q9J%nSu# zAR-5hf>8kADM`7TeMe<%iJT8#eCs^)(mu>x0Pl2&xJClk70@KM1T~m?(&p)>v zj3X663$tBjtX1)Vq2>vQSIk863l?fk8nGm}8Psh2i{=n5xLrrLa;)#bw)cpxG=>`Q zW9Vn}(h;rx=8rdg!iT^*c{ZhHN@Fvn*(8fd8C*a@RxuMX*)Pu9{`(Yq8zAaEP78ao&Lcg9v2L4`^5&Uc84y_P`8_q1=(=$hf#zN=&b*eI|3guAxDGsJKcVuiF;rA_*1x+#N93*O|Dzlp+%>-6^e9}xwp|9FF zfpHuK)LU@wQdGG8?WUxPBmRy$VH6Rn&l^YJ#B4N0#CnFV@Wj(^yk|e!l@|jc zWnZ&%Pq^#-627icZ}pn_4Gg$PR^z7M5Vei6MNviIxC)rX{k=d@GerHCqT-;@rX@X0 zQfEa?xVddNq_iliA>>pm#=rccsMjzW=mQ?WT86D)2&{f0Uq`(&pzkPtpFiq8s?UEW z|4>wcqHT`TH@#~HQ?JU%lOMYTx-A|8dJO1no>Py;#t z%;P=R-!T?Hu)O9Wg@@hyvx(&fyKob}|6}lJl~7c*L^Anj$f#g6i)0TIHCZUCX!R9E z#cnp)Sqk5YnHBXIhbwB+UrNLyANDBUfE6hyYRvIjVIAxAy4bx02D9t8H$G*6k8fxF zVDXfx?NPDcP5fn%V`X5PX{#UzNJciRSwULpJ#ty0Nm0%EUW`habHj zU;GkNQ+Nt@ENZ5#3MLjY>S>IQdd8>?NH0n(OwD9Qb1zaoljW7}#ri`3#QKzYzvvYj z-~yZJt0>GY;i(hU6&8xhMpe=4n?%)Q>AA_hicxon$*6aD>K3Cr7nsE=YEaa`lcoq; zudGOo@Vaxb+Nf8G^8QO1z2q;DuUEz(P)cJQ>u!pjjy@>$HR#F z$dfy66+&((FQ!seahY?EN}97a5mN+y-pcydjI9|>n}Mw??5OtBu6Ud}ZvYYRU~z~3 z-;Pl^DsFa3?>J(vn_45atLLJx6cK>)c?}z;M{lIl6g1!n~Gu3%1|9J`}nKMa_ zd*-v+33%I={2LUNgSKCB{aBhJigl?36-2u%rd|O@tct@ZtadpCku%DeX;`NKHp0P{ zz_f!=OQ0XICCE75UGN{EbfIgXHu=HpHtujY4x7vh>%Ee)YE;cNDjyLYDYT&*rY_uS zj4Di`FZq<~$AiBGRF+VG;vg_RD8p0$WZi@CTbrh$Ae#ZAMmk;O`%;PaqNt1%>mJ5C zuDe4I!AtKx{_*2r6CnpgzkI=%)wf^s`@G_>??px71dVKJR#fI_Gqw|pq6SGnl=bIH z@yGha6ggYN@msl8R4oo6f9w>liVDga5TUlDYqqb4s2#PVvZQBf(~Ia?Io?=8+DrN& zzd##rCGs7HzAnM3So3`=8+hu%`l_e`MHMdvhuom3VlT6p? zlp1efJLTIMO&t1KDXKOa6AL&BMXk~P8Ln1V_WAbyQu_KPsJ-5`-`$T|MXR_81L*au zFN2H8?wpL6RwPNGsL4_>fPk~2hLj55jZy1=y&OeBG_5})RISxqp61`}W7-91nwAbc~aEeKGpI*QB_UxxNs$^Ci`UDr+DHlj!A6=Z>*q78f*1mD{8X|z^ebGs2)Xu zu=ju*2=vXC^JjS3L7g4ff3V)aoAnPfqNv}6Khw2Tik*!UQc;tqYKYinR4t0i;%Lz( z@+K1$)$pm)Q}z@&c)CqQ&8**rlJS|x?zqNrAhH`rivRTNb&D(dn1 z)5$RxYwWuI!>xYMx4Qmgu^gZC{IZbLXt47XPohNd3W$^_wNZ0Ez9=e*JN}GOZ!4-( zG^$tUPg-t{Pq+qaCf=wxfhfO3x<@jz(Vc?T%s9?)+0=}j*vVN=?-EsXL zJ@~fiRt0qa3S>ED;kvLSm5-{;;0V6*89w2LGsMx!`1O83QNdF)UqG9(Rq;UH|65&n z|q~6qSB~GyR$J zld%<`x6^*9NuX2`b2|T~C7yO*QLrR%G=g)rCRH8I7K!o7!K<){)P}BgCR|w+x6N+jaMJ{EwQPW*Mmh;p5xLZ~JQOwF3IPQ83dhAQF|KWSy)y;gD4;ibZZgR3fgPGD3&($Wl|s+;*^L(5^s zf+)3=Diiqtq#llk8I>z*ahqdysK&=kzvv_?E&W&t$9N!v)8KP8)i2i9jH+M02pYG+ zWXhh}$_F`ei7|Weq7qUi8#*1CCo)P+=vp!A08!&WRg8KE{F=FRIS-?TnBw(7FDT$1TRyxg(suxCqyLuu( z;AH9GO4VOl{rdf}D*iw>Ycc(a@=*Yr9~&3k(th+9QcaeXlFrImKsA$3Em(0FKM2w( zoD88Rpmsc{2arg!Od9~FFltk0RPEfzN+TVyxQzCwRYpzEOw8vm^*3;#4!w^Buw0d_ zPXd`Mv0QPdI{5D-3~$YxtnvaM`)CLvxbxw$5y3sGv=?sx4AX&%(hwF4N@YS-10?() zwU)hzQ}|y7n(%aUH2q82N>FtJteUqu8>RE{BTgz|)M*JRZd|PfL9$#}oi8XVRsUv0 z^@~3>Sm+1(@<1IzIAM$0b!Pk|op~r=4XCSfY8x8<-3NlvC|n^mb$%wG+WGuN7h$oi z^gyYDKyAQak{Oqc#}CbIDdj@-@KLVQ;Vdyc+4{>?V3I4fv`8Eg>4@sL{i5WtP__Dl z8;kYV8Qq=B!&RXUcQTLAvL!w?KDYZcMqS>qX7$hteKtl-=&M21IHF|qsh69{hT;c` zS^S7wCenoTI-@RiY883=IWKoZF20gcr}pv@Zm)^5^RcF*B zn2Q2Rf1OjNtBfki{&_VarGK;wul>g9=)Ztimp0e^Ug4nTuN77YSUNGz;HG`S!RjQ{ zFC&3gYL50Oqi)aHqiWSp4+W{goG z(!9D;OcSJa+h+H z$Q&RU03-WUVbl>hjZv41QT^PE3ck@&^*0)lG6jAA$!^h!DP%RvsEO*YqjY7xSj!I? zHH$DR0AWT(U3jF`QuSNZ0?8KCTaMpjzZB3cNBh6WEUN>Inhv=Qy22<&@hqd#>NFw^ z)%!|OYv2UQMNvq03dR7{{Q|3c|Fsghl`?@6=z0}S&O)h8*OUsRqg4Nj5V$#+Q2_|E zGinJy14`ghQ2%>=*J9?LClept6OG3>K#Z{;KCe|q-J~3c+-TA;Dv+jlO>w=MAll1m z>8jd%TJl!v4p(jTgfmpXX@>4fd(IWP-m)AQ2B(NDkKdzWKE+Xt%0QJ6rEjJJ)rhY! zs#&ogm4Mpeg-|`a&hTF2DOQzFk1;;yZEDG=o22oVcTjVp_o$Xpm&~X~i?blBL^xex z>=)JxETz`pX~i6vZHrJqq4}$-KNS0tnZ!Er%W>DP=(E>js&n3ule2tW(J0p6twqk`iU>lahaSiz{UoXV(HcM3YShG%Z0 zZYV;I_>6hQ8HnragVU!pYTe;5nVZ}P9gKd9k51%Rpu#WvR7M3Xv@!N`0rjGdHv~Eh z&CA|0YGbpj4W;@{4L5J_4&aoOKT_#qe6x&-?cbzT%$;V`jb&5-@zkPI(cD!JfL+y^ zlAGdt_yo>d8F%>C;|I2+#k!@Ofczwp&JEozqP!muRH&6tj9OUz+gC8Y) ze}*ptK#}HCZ}`<4W6Jvu(x(Ke-V8B2DV}YpTZQ1%GAJXjK39sgDNuoFn4op9EBN3#vPh zK+fZg+C9Yh5@S9*&j8ef#-=_;|Dj(Lx?eFWK^Qe;2ZQNs2oJUA) zHz-g#oNduLcA=Y4DphIU?8cn~^`sR!8O7|5iS-9Ql-RFtM`h(sR{dZ~9Szin_IUtm z`-_cCEiI#NW4!5Z34X$;7O2f1k>!6g02TDRHztx`*cwyTmg-RJGdAI>X)L39+_XN% zYtkE*QP)chpdz2D$r2<|J;6O`ri-OlY24%RXjOFC?@xeUOBWn1>o;K6Ki$x=qu~FU z!=y0>O*}0^Ciaj9}n?| z+|52h{n+=I4XL&tWztff&x663dzFqe5Dt@u0Dc+JU z8TCY_=|gz!8rib?kv(e4nBpcA*uQsEXVi2x3!{cHud9%o_@?9rF2sZiMXmM6R=*q7 z=;b%z+*m(a?s1Ttrw@R7-^SOx{p=qIS}S@?Tm8Ep@wyuGqh3ZO&vRJ)iA68sw?+Hq zKfk1%z%Ksy_WgZv@z>=*vb#4irzHHJZT*BB90e31}>#*4J)U&e3 z0D8{dVrOOaiHD; zL}P~QS6#7Uv!~FEx{s?dMg^DHGyK3g+*8{&_CD=YKfk3_T^;UG0r}3^+mo^$mggd%>t{WlUXy%D<0Ot$vc` zDSr7pVE+C!Ee4ao%QKm{8Q;;Q>IPV35e`_6{Bk49^x1yQ*Hd)02N!J0I`Zx z{HSLTsZG-l&8UAOf6oTgMYDT<%ua;GLmLsO--g?XQSaY%iy!JYK`(QONdpcl zE|QYkXmM6OX5;UB8SBR`u!zR}3Tf$t#;57x#F`>PWH5_|-)RsT1IYCCbDH_`+G*8a zi}jly8f*zmg^}HqSikYqj{^06Q22R!`l}9eqfS#meLcXa*6M!}8oyc10n~)X&+nTM ze)~_ndJ&*5E)Anfaf)9wdnG6xAeHJ*=+l7YOYm1*CCy@0Ka4Dd16**x6i${=C)6P$ zc4S4MDA~>_Wy~-vb_(){fq6MBz?k;75-W_h>z|aQBI$iyvZIoBbTJ58Kl_BvU*21bqKzQz^sk=&@6j9*ulSoQVXgcA|LGnc%EALOe%l8UUt>^Q{!`E$VJfEo4c97s+Cs|MwE)|kxhZXEx+oW3_V>GINZAALa>pd#VIkS4o{8MXr2Ll^|ougym+W|O} zF^<;)R##E@&Rp_84Xg8QhwFODY;j|5M(u9%Q<(v;jq11AQns5h!?3OS<_X=9&^jY9QntKUO`T+`jp1k~m>_Se~)db8--{<&S`T&kzo z=j4XH?U~2dbo}4C%92suf7Fhu^saNz1PE z&eW6m*eiKe%;0& z+t@GLYtw*2{HU@=xVex0m@#!5+lbP~ud@L);SmAJiBjM>^#-f*c-J5z8}jlqEWK#{ zCLeI8+QHFM>gKK_)HfzRrcixe$>7#vZvPjj2dGbcdgxi!e2wV;}uG+XZU+z)H#7l zJ$+$)P-<3PFsRA0wk+y z(`C2X89;De<4sqz4K#p;7xPyWRR0Ny)8IkfB~Y(S2vw~9l2S{c%GW5@a{?7Hi4>~T zJ|Yx8(3-j%&S2bU6rvHul_#8t;*nbuP7ewNqtcNLC}C9m>NHMuRqNU~^yP+>eln3d zmFmy1gsx*(VFi#jFH78KJ%NBszKdZh~n1tC?DfM{-sGo_(-)03W z08(c43=c59l1!B4QbJlTPgJpU$YE^zT~|75;L>W?;A1 z>r^lf5G+h}w^V%4X6_54%05``96wFMO#|xD<p`?f>!Hl@>C$O z*c!k_c4kH;KHazXxs_kjV3jmtkNr->pVmbsQPqM^i#_U$j9M>24z9Rl1O(@pQG+Un zlFOjN_e{;A&ZX!{evH6BkcnpeutKjo(r@`cjIipgK$Yyg+h=f|keV^mg?K@dU?@FP}U;F zNOm%|pWlD?xqsc~oco;5Iq!Kt@7q*ah!PXUj(Gbgh?=kNe?1FjHdz}nzFVr@eSbcO zDjzq3;4y(oc1bLo3rj3on~T*wj-Qz;zj^l>t`%SQHK}y?hh)^tUew_CYc>T#|8bZ< zqsgIBMDyWmmCl**Uablx6js6?a`tdo;D~l)hb_&q+1R~Y@wyJI6OFY=T@bAcUfeF7St_@y${IljXs66Q51Q(LM zL21B2*StQH=|i67s9=l^VqsWA`gM!E(V|i)l#b|1N^&AKo}T#H_4FkB`$r6KEoq;9 zpBhj6>7)JGkeS#MSK*fW&{B^03V-eJ&L}r^PK>7D2|{luSV!*C{`n`ntG;-dYn=(b z_EfP~WmF!h^LlP}rWd7N>~aUS^EgjfOw~Pie;LYtEkKgAG9H$xXSFnyUcXjbW}oGn z>d>d6XuBLMxrTFi;9JrJy`jy?lp1Z@su?P5yG#|bPznSDhwdK$OGEU0*Q-Vq*cI#q zHq_a6Hcdkx%xtZNmif5T4%5g9!4?XYKb;urB595yaF+DYT*75nj|?k#i!Zd{Ril9T zmnfDwlJ+B(!=^rsPHLi!K3qJ*ELC2DSeH%d`p^`#Qc&>ww|@6VT_bOggdmVH{8eGv zJ*y%CHw=yCiW8&ap2%$ftVNrHJQzgGiZz~@OM>6LDY^TxhlY8GH*Xu+o)FLtuO*hS z^0paP(_N15CFWyp;8 zG;Y$-UGa7NC12&hVt&@cMG`ZoY6dLgcR z8HEq<)c$N%NxU0scg2aK@RD*woNhDQB`rDP(g|BcX&j6p%aF*Nd2I+-^|b*_iif#Q z#E0Nv!9PqW!A6#xnpUb??P9tC@3S+9=FdKTe5@vMuX+SH@YZ;d%hkbxpKAID z`Il08^N#qH#l_53hPq(>tW9=o|B=U>RMIT%B~b0{m?a(z@%t23pzg_EzD&HCrSm(P-C@JwL_YhPhQBAgU-x00`S0?^m zT6KN-)KTXsu5$~=FS(RtK zk0JbS70y|#1ANwbt{wN3CDH=vMocB5iH8#4jLmx`pG|KKe2BncwqMxn44~CKpg73z@J`O#%S{my{zS9~aprrCIrkB=? z*b~zpJc~A5<~)@9@As}}sBg{rwH|1oq{xK%BdWBaHLIdPzwz)wG8QMAaz`t+ML#7K zH{B%7`Tfp4@;@8s19P!GHr+7vRNXhW-JKu16{ST6M>XfHKfh@xvEX6KG~*g968Dgr z-MaT0aXjb|w`0G1Jp+efd0V<(??oS+ZjkA=ukv*w5M3LP$V5#cQFtlgb*s@~=J8^R zj_xhL#JnHgb(lOKLyIchlmcB)^>KO=hp^l8PSd)OfpQDuh0g0`_0(_A*?&4JTOpwj zT<8i%NqZ-6zD^07PJX_TX4~g?ZKz>So$F{36ky4l@X9GPG7NBHS(xL*y;ITYKY~V`ZF7=yPTt9V2tY6WX&jL+lHi^VgWNU zN0C==68M4w$YL#?3gnwvsKd>|6$fTAz?20i=eNuANS8Gn{RLUgc^kQ*j77Rt1!J6D0^f+JI zozpq4g+cqgy(t z8NVLy<-gTqXFfRXY|_7b-lAYr`v;_qngHI5S8fcr8(5e&i?MM?08`c%U4l!Cc&#soYbxGy`{F*sgAtrx8K_D?){cKi_7)Q*ZZM1iISe zkVx5v#H1tJe;Tpqhv63N!jor25BHT^mf?t7NA(h5E8GDM;LD7(7qiBMe+$#2PPzY? zFsV5bs=#93`ykAvl&#rJ6cEM*a6uJ*V(CRc$gga=kCJ8fZHs5WX+{7$wbNCv5QX?C zz`b4oiB7ekDfg`Gauj@_TwMpvJ=leX;NX@Is@|JjI}>TY0o_cYLD^(I22B}H(wnXY zYP{f+C=|~EL*_U4*J-q_qj_JUMHptbDXgcvDI&zmFN~cUj_`RJKLl(exH{CKoShJz zB}^pgkMR$*^O7NH@|T{rvR`6tlvYI?VjIH;^=PgWon< zpOJ8e*!2tCDEXU)s^LZ-rM>x=>VH=o0VQ)mCnPHX-nW0o{C@$}^Sj%7>VBkBcGN!% zh>I1OiK@8*JxZ>fQ_ek8#O#00B`}n7Tx}#W$~7*P$SHGr_qN#NJ!}5Tar3y~tn#8v z$lR116KO^Ec7jeNcgub2NkE(ZYBW!I) zj3=;7M)^hoeqT$zbr`|mf>84e;@_vqaqZ~U-_`69Y?tZDk-n@19o!!$fSzc?_J{|SM8u0r%jOo3mDWJ8!uB;O&Z~i-3K<*ah zkQsFIC;*R8jb_vd#QZFNBp2XSF>Hs6%J#%jHbvk@uZoNj+KaRgJ`dPGbf-?F0_X`ex9^Y}B6B`*x2Ymfgf#zOJL+1yMpuF3djU2wQ8W+81v3jW6nnUrt2 zijdkoj2~#-+57KEqWLweg2RI1xQm$`DKp?8A@AK~V@I*WAIRVv$N`&27sI1C)Z6px z-S??`25GU_&wsJl1t;T?)zUfi;`kF!&eqnsmq!h$mEL(>dgLhISGh^>0NieMvVGlocaD|UoU>>*l&k{~ zO@mBTb+FV}mkO?mFVkfo7vHAz^`GU^X;lG6%S!bP>2 z3#P6Z8S2l45O>lBl;`ykrU4JIIXQPHxY3|98YrXJK%mhqw-E6^OVaw?{P)Xf!5M03 z_ZVClb?%bCz*kqC?76IGo-dH_7$Xd?-D0o5fe)jeaC4w;W+#RhEp&L3GU{{z>Be5Y z=ys`V(cr^Q3x~Jm?$XR)6=&O;@#2|?hAXDiA(vq53^=Dr_T?tN$Tc2MX~k;e{Xq*m z$eV%7QfDy|P=z`Eyvyu<2sP#6N6RWiF@$r{%{$3v#p~C*jve`270_Y_JIzmc%N2)% z#phlxFM3!8gv8D;LN^Z?K@btM28%la4g!d_7x4o`-*_XRODa3mSC5~3;S;PNwPYIN zZZEGKLnGt@+(u-ohc2f}J3KdvP%%OvsuGeiDz|yD{DqmRIO7C{2x-#&<29$!r9bbV z>{gmw^hRZfZSb^SSBPi|D>5u>mK*E2_9!)%`0Hgf(T~K*Iv7=1^mkPHFw&yNVB=*W zeqbbZ>HDr$X2(KC)bs74dklwaqNp0kWYWn#FxZul!SJB1o5I>rHd-h^KNCsYGd9ngFL-P5ztruXcO;c zB|jGO_x+I~x>8lhAT;|Sw>Gr1G2dTzCJ92JJxa}|E_&!3 z>SNhkzKxvo(U_+L1zWkI;0VkY_I$=!5%OAjXcLbE1i>}^U^6D~T;46;2k(bCe(`J} zr$q{3BRBb+dD1o!vx^THDyFsi;U?0|kmnS0E~ta%*H`F!v-93Nn^t>c^NF7=yQG({ z8LvL5bcX&X$BTIKxSEREy>g8Z8GNH_(?9xhD#wGrB)R|WfGF-#vX_)-1Ah2_RxTZ z-@ZxZ7ZN8Y8}X`|Ccw{YNC?TP<7)$Lu^{Q}y-nV?L85n69_iWG3>$XoQ9v&$s_0SC z-znn_9sKjkPknJj32Uy)jsJ%BWG@eA+l44FW)+sjVU9SN8I4)?ueD9U;%B0OG%VDF zUms_8u9(8nVk=2%k#T6KN)mC|c6oi~^?;7n*0Ir{95OjUk>Sqa`e*CVu1S2s)t~PF z;yKMW_S`6*=i2D~E=_0a_`p-(w=h)l?a7)9S(e3Q#UVzvKAm#gsqi-WxxbUg3r`&J zbpQr?k`%|-C>>II_S^F5lnYbJ>1eUTdHB(Vz=KjRTu)-~vw7cb(kSo#>$W@LFBUh% z!CY9KvDi_fImss`>WviX=r}sh{^0c_)G>ZpUF**(;f`U2KpQMvsE{JWxfeL$Hs~)suL@ zYF0`K4YI_gd^?=34kGg@wt>j4RteL?=?7*q#B}y-{&3CxieQWiIWl&iFcBVGv3RO| zyd$EXgpJjD&NyMfM05d0Qz)lKh%-<0EignAo?F32*oi!qgY1Lvki$vG5x|LV#W^cP z*ViB}&;45;(0L}K)Zhwkg`9qrx5}>$YBCM%Wep1w!f`0sIjh3S@nau@Ql58F!<_wl zZ2lD7#=XD5^awkq>|E&+l6JAbT}J9ZcOlUHBRB)%-NC~+@YY9F(sOYA&38msr+&$E zH|4o$_nIFGW2iiUzRBrJHr>I1w;j&+eAR|6gk(0W6OajnUgqgAV)Szi{w%dGskPvOedS}3C{gwbj;jcDUg<%6MPg&&3yh_Yq; zeD4z^bl|{XL5t19xmn?WZost_$2t9 zRz6KO>-f*Uo$dEu252eiaj3(6=iTvuiRp#VhI6F&)qTqLNX(b}o6{@z+ew-Wvtf7p z7x=XiZKKooa9|c}hX(X_rT!63Egy7H3T9}VZq|qn)}GWNg21mW z{&LIcA1ywg{%N}XZq0wSHA|h#5g_HIKj3GJkf_L7jfSXuvPO7|Ki-4hq-pqB7xM4% z>RmI+AgU`Q$B?8P!3r@Ic6?#{6XcY|1nKnwLe(oZm;}HF+dA*147@^dM!yXt=Lb5M zA)us%fCGhzMs6XL<-_`Pxyb;gvawmE+bFBhjjuefK!D4fcI8lxh7Wp)7Ym49PFgfz zEHo}zwsbFFOR)R)e3*IaG)w^Mx~gwEz+B9EPMk`^X9MT`4!ddt_oe>lS_hn##BDP!q_NpDdiD|ZlpcYiyHtZXY$*A@PK%f4kmn) zhq~Tr?yXox&ND!frIoCpmSW(}AS799*@q8u8sHi~VC0Hxc%1M#_R5*v3s*SQntyB2 zzvUY(1p5eln`&MjJ|a%Cm;YzUV7$$)bG{R-G&?jksBnBD2f3mqbSDaMx%~zi+Awfq zmgeA_(R6vkjx?hFTmT2t>GX(nSYbw1Rv(1m%*qYfKpo^6m_g11pjcc@Boc8O%+M0_ zMFYyHAQm-1CZO|&oZa)gXezZ4q|FsRbu;VyVUxn?65G(4>snz8Paf(v+@SietE45k*Mxys#PLY3TDrL$9R)~PV#OaxWJzzP-QK-8(ZY8L9Zslp;2Rd z>I>rVk{>e0=q)w0ts8-`s)zz!ZaBxxWZ5zI-c>*@0H`oq-7j&{UN_gic9?mkNL6IT|?gO#Hg zeu~`w9P4)PCY`{a>HgbQ!4bhV{?nfk==5}eTT+2l(>;;;==U^oa?-Br>^z0D6>~D- zD6DrFsC20&up@X1x;**j9+}29PlPzzs{~}&9~V+wGDyZCbJsX9Z3;W}!4z}30`E^- z56?T@H%nBF%H^b!-4;Pjc?l(X9<5F5Y+&2IE6bwwPJ8~t0`zOtFmj^`AqW#cP>CFv zVu4OK#t(#v>_A)z--UFwR>IYTAZ$AME3NNc@7`2baMDM6AA{CU00 z>W1FK2LF4{PClD8)Ngm*5T)n36OeX8gL5%3q<8m7jnn~&ao_Iie9jn;lHPu#E(sm# z?9&_9dq<716#E3PwoGhz2sB)87e~TiCJ42};bL$KF$1Fhu6q6wwA*yUGX9ck{$d%8 zgqU)rdfmOg&*S| zG<>q2;{bVJettSFivd1CL!#^U-`cfVFc7-B1{HQzLJ+Zhpz<$U7Lo>kRqZZIlW_yp znZ~3fb40_NM)}bRA@Fg>%)yTozR41>;h8rN&w6Tt$SqJ!sCatB3jRK2>p1rL*=Rgs5HEg(iz)Xp26LL| z(|5iEvE$c86f7}?lEAl#ESrB|Bm&Uo6NhPpJ(^76Oh5h%80q=7N!{BXfne7V_9}Mv zslcK1mS4~wK70$R9-}LJC1>Y#z2x7u?|+!Twx7cWRsZ(F1#rHu99eD-c|a3M{x`lB z7a*?I+!Y_M`m*i}j|&$>#pA<0a69(luuKYnUQvjD?AZcq zK&qKrkU|hv;wfQ1qMThpQQ|f`F8#n~70t~L^7_ePPkTC2uZ}iBD36Gu7W8}7Pn&fR z@_)yTcc^oxT$YL`tS*HV^Fie`&1ZGB+CYj4=>hIcuvr^xV!%_&&3tVT{~r5`>eZod zT>Q+pO`3oKCsQ`;=ED-N)fCVK3)KBf>1{Kyc%u<^-P6Z$=2BA4^rqGf;Jc#NN}npL zQ|`yKY#O8JEgoHkE&~ox_!f7Ih9kjDWx7r+g{Dg8K73d#*kIniVa7WhpdNoq zL#8F=6s&7zREbY8@HfL|)E?t1tQIOwB+I{3#oH*i^M^ma_SY*fU+hU{p@LOwE0V_Q zU-4?iy^&{GWJ|(2E0~@>zMbkv4E}8ytbdmMY0p@U_wm*iGnTO>$cEWb7r40WPxl@$ zWeaFD49vDc3PP<5E!*AQO&cLK{-rl{`H24jjtt&E*^bM6pZG*h2;#)(1Xhiwumqxt z>q_3hiyYYgJ?Q!1NwnXoj=m0BTJT*y{&LA(n;>qkj+PQQ0(Db`@PK6A*IRqnz#$Gm zjF0$=^jlVq>aXlR(o`@-l&1kn`UtKAm9T*fL^9OMFx@kLUgUBiCe+o(sJ4ooYWB{* zmsl3^ffzH0gwcLh2%rU258f|-yTmqYL3}0MO(&llx72#op$_|H$f~Qyb_DRN zPmD(7n;31^>NB>gW-2sIv%3}i)cqE)cGy|DLRypMNd z!+qsCUO7CTZC{)+BL}6!t!ZnQ6~JBx`4Q+8 zk3gj!YJ0|0=PEO})Rp)FmUFiPU^jbLNd-4UUkUyaGxg53y*3p%dZ7q{Zn-Q;ChM}Zz3QNudIr}M>M};A0hXF}z0w2o zec)L!83J1OuQv{EIKRRQDjVplN={(Dak^CIC2hT`^nj#AB;^;!v}L)FLI>H9H+A#! zwew%%VgJQpQo!r@?ngMAk3tGRhM2K)Wrf4QwEk#`>es&1>dU#LF`5>J!1iJgk9<}*r`GTuGT%$8}_u8 zZ++&qXD;u_4`m5t{Z3rz`D{w-1iwn*>Aiyx?qQSt52Od|t1d9kQW)Lz9cHFUrjzmo zZ)O7KA`P>~zfPZGq*e^Or?|&YSBRZr-`EddwH=2(~eFn2$S)n3& zxDO6am2-(EvmhyZ_i4?8D;WfdVcTjN#GV_S7V4AYRU-o;;3&i|i?O9WHYFu@Twg9p z`OCnjX1Rl@-l;7!`Kl!L^;tIs_(2L|(hrms!d*6cX{Mtd&C!~h&ex6foh~`TYu1V@ zyv_l}%f#%bK11fU)G^E;GtShDwAlDOgz%w2%+2B(@$1JmYfabydqT;Q>aR+pKT3B7 z3JbKu9A91qo!yzlAHY~eXqBF6k*2OT((YL}m$fWNWl_ET)~4r0tS%_>=En7XlY}Yi zooOT;PWrvi;H^ak0Q1&g43NHSDX z81;i;vM^_yw)w}_jnA2r&F_Xj!bLhG*V)Js(DOH|ZP8`>tL+BjNbNhcs6>+TElKU9 zE9lHsKNcikB#O=SqB=gA*0-}0NE~1V?P+zhZjvt$&lwo+b-`)gBtFg5YO-(5j>3 zGM6}_ln$s?{mx_BNgExMr8w!8^UK%O<&$6=!TV;v6V+bLN&i=XSgz{eHvIQO`VNUN z+Q{V-z~A+E&odd2oi-OlFBseX2|*vTe+nY`w09uF&c&h7YDw85S>3W&==nQ;bPe4L4whrQ9u&XOhzR@Kvb;5%{IFtMjN<7P8VIGsMW#Y#9U99I3Fm|772DQaGNG z0nt<;V|74a#>S9?0CVlI6z#AVqkRkffH)7uWTpCNSfy@$lDWlu_|6{Q(n@LX@Es%8 zzm<#s--?bFh)F?@$Zi!p1+j}7y-RWqQP{wThyYIop+ADW7(k5DriibP)4wo+nl2i> zXkxakBr=p@3w@ZC7q0#?P~$2y3Kd-$ea^tqn)9btBnKCQc%i%afk1j^W?T10GX;@G zv{hDzm~@WjW$xEQ0&M;vU`b@QfUK2xVrZ$2U);>kxC?UnUM~Qm7@qB1T#MlOJ7Jk} zh=mE-fi`slTp=QNZ$s(c@zK5&w*8qlgL$2&OPmJ3J&X@I;y#}wi{pG5$gy(p2si{_ z#=auT1*k6JG2M^Q6DG_^e;YIf7vLyQ+~2uQZi)Xp#NP?7UZg_m$auehu4O`LjwT69okN z`ti^D3KR0R7nC!aq+%;bnMLyJ%PV(IfKrcv)=G68HJW7aH*cWnIKQf?l)J z_4p9CK8OBV;JNz6B=M~n=?rP^vdNSpCM?JYT9TzG--zydU&w6`70K_E(P_}05{$NL*Uv7FLbyB z4kOY2Bm$UZfw-3DrGQX1=p(0nddMkezWlnTX3k(2@1D1}*Fmw@BD&YA;b!x9KT>kB z_UZ8VkNBrgeVdFvp9|b3N9+Sv7@NFHzY5n)9IS<~1OZ2Dgl>nsx4e0U0|-;?+>oK+ z{fU0>8GS6g+H?TFH2-A|F|LmU1^U65wF`|%thjK$(5}}Hjiy_++b#gHDM||6Y30bK zCOT;M$JKW`q7NtI6t9R`mQTP7@5`-7Zuo=-jdX^oY2@(yp^IZQD&#%lyq{KW;2RQx zGGI5OQ{8Y=DsYPX6^}uN{bG~KQM`O3j&X5t3Xk)}#u}?@lT?LKo-sC=TBLCZOo?vJ zq``y9K^K@(2s_{Zn1AT-N9dSQv_e+x*^&pNItdoX^O681opbdEoPFnKYpw+N$KhA~ zxCADPrwPUgALy<@(mcs6`;A##ySg9u0EG+Z7P#|jbWw;b1t5#sUH( z0B2sXQT+upt;qzfS2g?{Z!^8$-K_m&b==_!wB}BBaU^h{rM>dlh(C+?O}e@HRqcA2 z!R{<&{-%??C9^Fk9sS|?_6;q@X|}ertP#t{pM{W_ z-+qSF^?zS1G(*HKSH|;LnmXSGiJ(Rxh&SJCO+G_na2g2RBB1=%-#eJBy2Iyv*t3?i zPmog!=bgbH*Z)fGcX&Mnl6-8@auhqhFZ1@(g~7V6l1~Rx{;qtn+C$^sh{vprt;FYX zEZU|@U|Q&xQj=t&N-Qqe(a}*Ax!=~@r!by zdQaTHHx*4+luOpLEDf)G%3k=_xqD$gX5FyYOoS`|I_q3)tsG)Hg^)7Rz<#G|Mw->e z>dt#~G8f_OXK@AQNNrk(xN<&|PKoQY1WBOl$kz#TTqb@7}W&1na7YI?ZG5nf7MM zRaktq2Tmb3nni%WCEK6Q`C=}3QZr(4m~B!&G;`G-D@1(yy2vIHGj`_3hWr8|a^P?b z&}}rSE;AR$nsIpor~6>tBIu^k7sjtw{7Z<&lzG)iv$ic))Om8>`FL@z(JyGFBiC%J zs{pzFW9KG*=Sybv@hdtKFSKJm-eBX!vIba%;2r~Kds1QP%Sn4&f|N35!3`HF53wkG zvMIeO3ZAx=*wRmGlRWWIk=PWt-fF&KUN9uGjhGf%Kg*NJTk4=#u3P0mn|;ocASdGw zkGM)TM1#Q7#z*DQTs_E;zb=cbXdI*a)1Q8s+2EVCd#wAPrylt2Ez_ZWOkDFb;f2~ybCtI}@_@ELgHq+*vWdV2A!Y#p!jqK%FTVq<^c05HC zLIb7{pJr6=7TgdbdcAxK#k?Bhf8m~T_M)2|Jc(br!wxfL320SkA$;`81a8H^-Ca+n z6UUITz`q~zn!_s@ktlWCaEquh;?~1$Ve{wa@xa`}8C~#NQ}h-3#)J3)0fo9~U@LGu zhfudF{iieiG10jxu&wkw&9B(WTgUNlSK8CA;uU<^Vo|My{;-e9>L z?dg3<=?+- zcCi3_%LIlXz{B_kn@B(${!(0gEjnC6K}9k*>+#R}o!nQa@iYJn{3d~52|>gkq@+-2 zfW-=j0-Imc#w4c7z`f597%eak3Q)~fCF3!dpf8$km*20v!dU!iZfM-9zGf^3XtF`I zC_Lc9`Y=+4Seq|Ev-->|^-vVUf!#S=%~Ip0b9v8^Fnp<+R_82h_%r16pN9E=a&a^F zJ1t%=@VVY|tl=)WRURlN*j%-vx`OJGQ!M>5jUTvU=qFSTfRazN5ds?*l}*wNS{@H( zIA^_Yh_^8QB{sl*V*XB-t&kDg7KsMG%wu?y84`k93OE(JcKT9tZgFw`PImfrWd?$G zVQE(-(6xBWQ}pNJQ^ETIvalE+xTeSk+klB1NOwu=yI;2D>(NKhLA31u$<6=TwHuWmeAEQMDiu=Ju!gXYzMzZl&^ZSDmZ_d7^Fx|L|5X1{!1+|l`Jn(w zZUU}_sPD}TxS6Ay{@=N9nPtbl^`I-{BZ!?y99T~T5O^pERx5VI1oJRYR+I+a5I032 zRUj*NW5$xChR2aO8<8X%yh=U$g25O#q1#5xJa z-WJhJVvKF4F4(!gl~u3$?DqG*{M?z?HVNl*w@pg0ute=YUNYNSq*YN)1#>+oM`f69 z-Ca9*p?|cus+*o9ZDx&yUDEEko|?GwL62u+DEz81WSIW$8{H3%Nu%lCc(q@zpDz9- zYfj5`>e*0+`~#311^(UUT_Ky3$M8Q=cn_U5Bf3o4Ql5uc5vi+$tzF@+Ic?m;!b$_xdFg6r6}L9$NcY-k-lJ&^vt| z4}H*n0{F`5@*z@%yO{|)NgjI4D+=!h_83!6cFM=d+si*|F{gkWp@qtuE8)k5gg&j9 zM0McH0f89k$w?2;ai|ecn*}X=;*Q`-f?7Y0bqv)?iPB__z+a27`IqjoVL!#u!tDLx zR8)=|b2B3idS_)ZdL*=S!(H$C1kbl5Xd#{lxRZz}98H2kqpc!2A~j+p9@GjpcgFIA zuh|+X@J;Rv~6}k%zTR(WS zozZRm6@1*pub`#q>p>lU{{NfW7wE?T`tB9x)%BS|NP8+34DybkPhwC(=z zd4KyxNaci7xwOfxFaNgJc&YV5U%d+mTAiQ!S)+sYmoMgTJ6Zj2XyPNUm)HX45ug;j zmtxt)in7ZNAHYT_-IJ1fL36<@zHz%u3fq+r9n|JKjSnh*Zv8AywE5*jxfqaXUhnk3 ziiS3<;fvSl?OyeqSGeJL`6H+#V}!2mScJpAF+*~zZ26-vfJSwHQMh$gmlUl*Lm4U! zGy78=3(^QHfMte)4Vo{rbIhS9{u0ulG?fGsdd!w%!BU`+X=osLZWDC^P?NG-DAwt` z4jciD#j1L}-m%`-i-}7lY^a3~u4`B1JCR>uIQwo$zqnN=7nZ;th&3}doM2IFZ6t7_kx;X3QPjM{dlUz@Cik9B@pl*4GAjOpvC*qzqU;Tc6& zlC+<@8tFz77)Fkr6~>_xZY33W->;{ns`gL5T8xH^z;Zm2Q810!d|^~JIV^KJW%Jdm zB2}_@{$%_A{Y#Acu{M3bYn639+KI`S=x?6@v)d=P^-P;8n~o^?TnZzJ20xOj8s0vX zoa}X6>d}cNhpw%P-NJUAat8>LKo%%EJlSJNSTZT3yeMVH{JtE~&s9%^{Z~>VMmeUw zKL-bYR|t*w5iwa8qOEhP{sHD)b=Qvux0sT-kQtFoE(QA<6n$+Pqm9Q1Ho=Lv zw;0uAO0K~_x^wAa%QS)-y!1dhZXpygkyIX&s`L-xSudF;I;fEDYvZ(2-#GNo#Xr-N z0@(0*z8GgyLxhi|p-R^eBU6QYDD{V8TeGy9#LEha(eH$xXcM_DF}}!%_JAzl!0nWf-GvL4F4)eQO!SE&kI$InY$I z{&`n;cs=Fpcd=fH<;ouSMI1uaL0S)8NirlKi4Jq0YtsL22=)O4B|X=d9ZGmnT2k4K zN}p?>2b2EPAMNs8{3O#Z3%LqG^ff;=PciJezEimzpmQNq&Q!>Ve-C#=AmDg=bv?pc z9$Xvb6VRe_opLOPTB;oERckA1FCJsG7jBWYLW@4G9a>eg9l+LA7I@J5=*at-4e6B} zY?a=&DBjvfaN@xx#=R$*u!;2EE=?|c4ft7#W@zWq!DK?P<*rQXo1p~lgp?&ObXSJJ*Yb=K>3CUrckK5NZ(|NCOF zcb{}hcj2FLp9+z&#_#wO+!dlZ>i_q+y*DkWhLy{}d4gH~^Ec7DL~ zKy(mm1$rfE@UegQAD_tOHSoLlZ8gyttuWj){8l0ghMU@Y_+9=#ujXSrIXu|FPE*gc zUCEP{>%3hZ(4Fcd1)kn(C_la zL&t8_qL-y+=fkkzcj2LwM~YL6XP*1d>W_X=f1a3J(NyI8-I`&+0%!r|Yazr!XpFh! zZ81%g*#FX5HIf1l-FoB@G7zblp=Mmcy1UVeu*ikm)84YDiC;^vp zCZ8#f)-eDwYIl>ZHd!njq3oAlIfjQG8A7-EC_c)6HKmfJH7f6&e5~C1Z7Xih0+{~^ zA-;khu3w0}QB_7+N33rp5-m($t^yugn#v!S0B>oo%KrfOs|aW%J&8e9{Cg(fk=+vs zeyh&?;;*E%-p$VGSPy!$tA|gX*q? zOuLKH_O?_OOxbm57qcyiI`%Fdag6x8o5k%?OF_(lN3$2(X(VIcr>=lk5&g?+&uGaE zmjZM$Db+({Z-QJB*UHI+pbYuaGlj$f{c!Ip&0LdB=`2tZa|yP}?8+sQ_nSAo7tXsJ(xx{eYLd@z|33ao81cVyPQCn$4&`%V;#-j% zX<^GfxkSMooLHhlQol+#RN+;rz@oUfe2F}l6rg%xXoi~Mw%dho1e+cmxBmP#5=Z`||P*fW)ri6+~b!i?U7l3t4-suwrl!U`?|CWr7o&*QIYY{#D7|y`zr8_L=1jGuN(gv zO}vY~BNqlw%zM4hVRlT^H`8~_{mO0J$=w`7j)IR85NoD%05(^ z0r(I2w#P!XpUS21pRB&K5o<+*GK0u4q!}ysC*~Vhz%5>rB|&oF5_J{#P_y@o`+`WjpgyI_U=VNHru}E9x&f%3>iBDZG zz+G0GR9|@Y&EtW+i_^Pts;B$G z&~y+9y8Xn2Hii2TEA{;$Y%u86^m zA^>DwX2=UBF$gu*e9s&{&61?$9Ad%RbF?H~AN#X99SiiD$r@GT8~R7!Y<{JA-efnf zN%6_UQE0i8YIBxwDj09H^FF%dzr57EQN<*m4L*mP_eAoGY!ACXCK}lt|9Ovou6K(Y zi88ex(F7T5UPp@|u^qTS)%oqTdI4)KiFqHi#>C4qc<{3FHIKV~uyZ1}Pdu6RDkZzE zPXT56@*AH3{BvP&q=I6ZxRwnUlB2^{LYu?|(*G~jX#elU(e00Tv;5IOP2#Z&V1wuL zk|4x#{P`}+;oyc0EfBo8KIgyL_NT0Q(~+MnbKziGE{u|LSzFI#k_)0ez>m)cUoZ4k z=f=(+h?4!B3U1riP`4kEgR>x`)gUWl0zH&xOH#iJO14N;Wz5d5-XchqNid4-`W^e_ z^^Q;EfY$*}zQ9nT$J!8(I{jM9w3a46lkM;t!NWr$b|W0j;qdv*^gIlMAS&A#{aJo- zFFG-i*eePu6OA^nRbp7yQi4BL#d1$Rm?BUGNZ!KUIx5TQ$rc+2UjMLlLUem`h~)Xd zK2lj&DU;a7_hhpj$6k1uK$rQ%+hz2@bU4MrlMXr5-xe1{)w1OOI64nUw!Zg|+iKN} z`9ZCgsM>1NmZ&WRr8R0+YSgY36h&&(Zf$~Gv1+#zwUyclEwyV!ZK=&K-`^jQbM8I4 z=iK|epXYhKkz(hC4VpEAshsA|bN6?762#DVS_LPI(QQ6r?k~b%;wru7W>@|5jg@`g z9v(3r27O_O__w$2n$Fx_8R&Pio+2Be7H-F!ruF?UIC?!ViA+sxw0-(QQC{14LPUYj%2*t!J} z6XARjP#uVx)I<3O{9iNPP$c!&owv}fyH-xvXLpX8pTpKntxgl=mJ+m*ttuUM* zd#t1j(E8$ko2l47$?`Vx7ba=0erGW(HVP-dYm-$HqhwA5a>toH?LYgd(7Toem|>}K zx5OCb>$3N7Ha)8&qPU}oPe+IO`X)rs3RIM?afa5$OH3KnkdAP;06`j^JF1f4hESp0 z+roW7D6jJA#<@f5!<1X!TuHri_@yQ{^Vi3E3{eTdP1^m2%)rN5TvpbHa8y*jp9$d(VW=MK>lVK&E zVaLC{$)mCRu*dVsOX93Uvyn6=k1$01)y#5DF}+@;HJ0Q}gFO0KUJ_FJ$|Awqa?3zM z;FargTkP%xM1@J&&^0KSVmT>^Z`kC5*%rMiRG?lwRIIAK}?kYe>{c%01pqFt&7niKh~e z^|Jd?_{?v~P`Aenk3?1@M@j~`*Yo-;)!SE2XO%Gp-veE`gQJ>eT9cIVKv`bqSAg~j z(@%d0rp6JQTcU!p{w{Wvk$d^y(X{1a%k2QX_?@PU^B13;t~AX|Da!_k$#jC4ySoWt zRfl*KmU3%0{!rhV)0f7Qa>{4qZcb?qQvlYNKOW-{6AI+o6{c0W8m-KiP?8bd&J* z$V-7q<#$P7Zj+DRrsIw{ya(l85{SUV=56^z1Gr7ue!9Z0NK~*(jOcaS0G43BD283Ln z(MiGEQsHzR$|jW613;e71)j^?pgceTwu$3dKa?dKdb}#XkZXn^Nl%BR>FFPRJ{#r8 zIcfdK3>QM(8x1A_M_t;In%l$s5O>ShiU8U%wV_e@E#U5U1oAlT^;wXbk^K9?79 z*0`@C(~QMKHNEV@BNi58Z?$gWa@$FEzoJ+}OYBY${!m5PnG9BATd1zi1M?!+UUK11 zJvHYZ79PAhT%4@o;S-S*4uu;iOK#; z*S$5C0Cd6o=jh#qutnn4J?_aW7+Iwo3Ov$3dfa}ns{7Gc#2?Hz9L}_DcF|C|9XOnT zx0(0YT;F+dnttohy3qO^460vMK+7wR2fSo3`7uV5dUf+JQ)#n`-CeMUvAawu)9b8? zR#Aq2BZU-4U%$*eU5Y0I+0Eo#@H_~;Od-U0jodM7A(u0_OaH0u4S%*^(;m@9@T8;b z^xhTYr{-+d=zWhX2E>iP#W|($=cm-yENT-qq28uHa+cLnMa9eBKy6loPW#i^h0MN{ z*+e1_UMwG6fBb5%2J^#;GTzen%P)|@tXVkU&pLd$l}{gX(u!OaiJz4GBFoJLXGIxJ z`<9F-*|RNv4%A)$6d+{3M4BsVLT*3xnkJAGxZ^`z*uRluXSZFwA@G1py7}!TO_5nR zja|mVSnSXj#B-74_5ZC?ukJt|CL_*L`)N#?(G*M#wKf+ySaIsUgHGx;`vJt#rS7gP z4K6=+moPLOx5iq(Z<%q&Sar3V?;pJ6jf52mn%*aJotR1L9#%%UoDTD&{nR@{G(SXW zM@_TvGueZHkP3}IH|@7_LOl=&UXlW``O!&9|{xx7%5zSW1xM5N-Huk+c=Jc2gL&IAS7OZfBTR!)q z0_BIiGfA*I+ZMgp>XbBQLTMuOKsa}NsJPd`7oYv1{H z^j!SR<1BBJ)^qfZmt>~A=4!0N>v4`n-YXHrk%%lD7Y6q=abL>%A@=>uQ8xrh5HC2J zCBey)`nTNhDd7euJ-(!tx;y`!as6?@nkGX6Ez7a0>|VzB)^HmBG#*WNMKBw+Hm2B3P-GY9OttF zQPhFtK1vb18ew{dn4i&hzlg1}{r9ib6h+M4c3_Q?^&Puy)ABL(V^#<`~xZxs@-!3{p zl9$U#y)}7)VmV35=x`ul^Zp~6dna_ee{wE1=v=UZ78y{Qf~l_sRTopa zNf&WpL}DW4^%GCcYv00N5zZ({514&ErThJ$P;lZ7KM8OY<-l%3YSMXcR*l?wary>u zhYS`R7r3Umenk1XzoRGlM7%XT)J?PTL;5e{H_sl3dnUln{63xX>cv369AQ`8sChxM zrbx|3?hXkua8l+7Oh|KbLHY7PfZfvn{QSf7IdUN@hN3!Y=fv|!-5gGT9|;6ZQ$+D& zW{>x)ShXVbr|VII^(Ek1!B{{Kc-_;ex&4YdQqQYKRHpH^>1{9I1UlMrdbz+sg>A## zA@1rpt;^Fh;%Rt%l6AryzPf}Tnu1a`iV57$mMndMP=xQmj4d>lWpV$N-b_I1;Z@@~ z<;@IOP%g5c%Ix)zs)NrRA&oBU+TIzaZrezROW_7Ee*sX9m;DuEU?SaJnyDTv(uzaa zTwUc0nN=inz6&0`weorbv{3Yl-PY!%1Dmbg4<#A@c&{r5&Ae*KkI+ql*w6P)>CSd- z_l2$o=Qla*?s-5oo}MZ+p??nV7CP6#{`=_gCd1(hY;wt~T$&zh8e?AXZkX7^ zo?ab#CbXDSVJwPhQMU^VQuDLNZ6J6TUYxvhX|!hgv>*6pY0Fn>8Gn@2mnP7dE9$C4MAp4vQyb)1h2`G4_9)G5x$h!r7?wpLrj=7&X>~ zksOVIE(vLy1v+90U-btU>}+Y>t&Mb{%B2#pW3J8lxkszw32?E=IZpZS%z!QlyenbQ zLgT5~3w>{Kd5D`V%3}LYn(J9lBta4xeE}-7|=T$~wcy{`#HymeFFQ zz#Wdu`pV@sUaIE28{O1?C;Bw-1>*FVY;s)~7NUcvQknI;KZYUfd}1^cLlefeSEqh5 zvE5zFEW~}BuprU&@nHtEehtdner55Ndc{)G3I9h*2EQi&)BmTx1eWN5GGgE0$9yNI ztuE(X_h4Plb83L~lHjfNJGXok3A zq4>0m5v*|&9t%-DS$gAp-k3|o_{p+AHjZ0Abwx3@*#>U7ci%#?4|E|60$>>x*ueP!l=NXZVxIL zKY((2>P~E0)c%#U=V~%k7h`obyU43qd!q93_puKXgx4QCc$e+x&&B2))@LHP7-(1_ z)Dippoi2{mq{7SuaM9RFgy=lS(o+~I#J{|W@%e)tDk0&SIbWE7>Qrcez(i}OF=6L| z(WgjBS#WF#NrM`xc|{Rd)Ms&eHP?i$@dc+g z5Ka?5W&A~xGbJ<`P5;F%Z*gU~i=i+#S3*8-mlPSHPH7)+W!{U`ih?z>xW>Mh>eWf+ zr>c^H%gf+e6B6J;qqs#&?Z&q6yWIY;p9U?fD8X|0f~<>Sv8l3|OGZu~@Kx4ZFE`k^ z`1orCcE4O1*5+c|spCw%>8h)AW54q7Tz0q#DcYvn6hzEw7;Bc+PUPAu;D_O^QsDO943Jhlq8U2 z=`#@&aKYNp@5m`xHr2O#<<`$m(mmY=wvOeyLvlg-oe%cUfF3|t2=y;J8D1C7Go_^JNE69aLT-=5ZXMWNRJUAo(dRi!3@#StCECttcd zIm*PK^y?pS+kKk62IG&_)|Wx^71AQvZe@ICZZnQu-(n2i5$fsF!Kd$fA71DIf-LLP z-@_is;$IMCEAVxEZ-6PG7_ZdZW89cN09@T)s=+#%_Sd5?J^o8o0#tu_#Y{ilR9be> z`;S~xdrva$tcf!IgBl2HruQg@cV4QbOBZc4=_Y{+?k?Z$#G}1gSriTZ;C5CwzJ_A+ z#hO{sTkVJAhF6moFyfp8K#GL}oAQu~6%_TqCEngBcLnUSJXf%Cw zQ=OcIVW$IH-0E=){3gvTOcH4isWp@GaXG@I%@*Riuk;sDNuNF)F%A%g3hT^*AY)L~ z%x&!kT$4Vc4Yzwv26wh`F|QN6hhubam>hLi@YT8XiM6(ZqrUF-Z_|?(WR7@~SDXBA zp*rOj`F#c0^r?Sblfwx!Io$;V>2M?W>IPv`OG7Zj$?TtovI8@(*z7@8hW#OE=GAjf zf3}xNZ)4eNCgPwT2F5Dq-@n(2O)c=4xT#HG%d#f{nz+!M9Xor6v=q^usvW zO~_m1?5I)cD%v9Fp7xE>8iqjt#RfjV`43c)VD@rxc7ArD2T1B1<2RwpR9l8|{9{mz z*)BU0v-8#CY?ST7G(h;1pgNA=KgZ~EYRYg8FVnx&u4*#i#)H~+Agm!TJ;k*T5SD+8 zgOMbjEtE!ur>c1L^eq9eU)A{Oapgn%TM#_2^+FQ!-hSN-Fm;AO+>-Uf^L2SK46F6R z>Bu?wPi9eYN7Ws~1tK8TOeh+Q=Jo zXiir+aics0%Wb2Tf#uNkP-~#v<=WbBa+4I9WrVgM!IohS5F`fW zgg)b%y%W*0E1J4PS}XAB=z;Q?hmihq}@s6P7) zdc@FjD_2GJ)gny`v$HXGJ>4Ub|FWt0g@+cRpSE5rG^+Xr)eP6}%|nWBiqK7}v2Szq5Zq zoI`T*>Ewcu#^UZABdIYMCen=3kC!%C10h~si>kr27cJ(WhFkWBxYVW?DQ;|^2+8@n~N&5cF&@< zpK;Ziyr%r6uTs|YG2fo5grceMW1r9*H-HOvQi84j;k!xz_8LnDNcf;Zh0YLvH)(Xo z=m2)=-NUzR+dMti<#LQ4BFenxi?|xZ$H@-7YQo{B+&h^!AyJydGgUqK)W-cPXW5c+eg5-TOt#)sehmrbW@qC|422v90#(yCNTse9B10 z)M+d_;+Om#>OyMC@aO*iAX0)F=kB^w*R}p+#Xr#u{3KpTr;GxaB;d0GFWx}Ps!4#e zkZ`x>_skVC_R3$7Z6eP77ieNKxj^1}PtA4xc_Yto4$=iA6+5ceZo%}Na*#YRlgPl1 zn3s=;^>NiKGhR(qJ|AOT%Eda9t%m?&YQ%7t5e`=@5x7&D#)(oM{(Ib}a#7yI7(x3g zGEV~$On)nZ3q*L+L7G~2xEr*29Uy((>Yx7=%J%M~Xt{t!?^JkmBvfTcv^Y0A7{kw0 zd#a*U3QoY2)L6t!czG{azS~Bv*LU}hI3*>3uP$o1fExD6m?692J9K1tcj=GqN!_Ff z+2$N^^HIOsNDu{)!z+Z!o~v0k71&tt{?Je%g;|kbSbao7IN$z`;+=vrm%%t<5@l|Gg*S)_Wy-p?3P`GdxiG z5mOLcTZy1X=D%Z;twIF{=B~L37COFT$>YFTW`y$Gh<63urzQpIqn9)(dG-{CXuFT-KUe=-<$i%V0~hE z08z_uXLM<8vOr#j^1qz0z|a*o>`zH&%g!Vpq~)*S&mR{^5|okJC;Ggm?o@*aV`VT4 z6K(Dys+~(->6t1SBuoH-O-LasFiY}d>!Ir)GIK7RK)27@;C2;4e=jNzO!5|XUlEn0 z9}c8WX<`aNp3PeD|4A`a7M|lVH22KP4xWS6ZKVSs@yiA9WH78xoFx{P#OfkL{HWo9$B0bjdV_+jGt-mCIe;speop@H(%IospB6&nSVC%-w2HS5m+mFc5%LjE+j@{SS?XOc@UB;i1791I57=gbsdc*7<0?iuorTNgvh&Qaq>I!WT4gBIM z;P&iYDyACgS~ZJOOcz8g<27K}{1R6Sp1v6y(a-hbocKjPB>74;%?QfwD zE}9(Gm5Zj0R)&;O{n#_kF#Rr4%GSD2uA!F!Ee*T2PXPO0THOxe@x3W%`NlXeRqt`N zj#FB;9u&4tg#2l6zlZ9iIAKjjC5OUZ=2~~bv~>vX2CHE5^x_x#h#Vw@nyIBrgDuFA zkHzA$s_x=7V;%1+AoPanX-$NAT*Mk>nGU;drV^=ob?`y;DQhUh=%& z1Y~oJLE5Z~rwYIP<4FUUD>r^DL0JYY1iLF*rLhSMx2{2v8N|b=DKJx-@6-q7p@UVc zn~3-q)j0D7a}Tllno4$@A1vUC6?Kz!i=Pr|J)os4qJ)m+L&CW(`yxCmfbS9YaVkFl~8Q63Yz-9{;&Et`@_T82#agcravq3xDvmQh&3KAkn;y7 z@Iz_V9GaNt;C#e74Q$@ZY@{l1+CU*n;RNv8skq>OYa)N(ADyjhKy{s9=M zMoEK7GoHxgkF)X^M|ym8=K9fW{g1MV_IYH3{6T-BKeh;CqEq_@p<2t5?zs&mz6^c! zkCq~`DRRV^$M@UF%%-4A_EDD&w2SwatK#`@Y{x$r@eaNP;S~X|F&dt?-fE18dVBoG z1bk=T%Co|<;!H#XGDdQy%;M|jJ2#Rcg>PA4bk#RUiQAG^(RmD}1F330qp6OPhBs+z zeTjjJf*xXW>rN%9c~g__6j#raR?VlPS68Trf{&ax*y*S_kPxDVJ%#qh;Hey8IWM_o zG0tZKnuKo&Gw9c3J9m$=|K>n-1VZ~h0+qnODwOiRVd^sfwhGm83T!6%*m60#y$irhFj&g=K6aRJ`tFtf1AZ=J#8QczFAEnC0+!oKs_)sG zKzOqdFW1mPfX)9hkfv@L`W=~!9~7-NcfsmF_Pk2qpS=b_9loAZu8Y#Wk$Rnaikmw5 z!hsE|e)vK*=l?B{)1khD9d(KF8CDkjAC(Kt-lPFt48Z!5Em% zYMQ2-P;#m0FrQoGO?l;Yn+*7QRFT6kMK7yl#8I#&i|!GAXRk&e2*{ya3F z_w zEAFSqFcv6%9v8p6AhM+Fy|joj{+7k{hR)m_-bS-hm@LYtLu>&Ae0PBi%RaqWIeL+< zTymRsjiD=_R$q(RWQ65SnV}Y|C5X%He-l!e{&p*c%~rZmn~nmnmkuJUuA<2S-AHK8 zD^5#OueWaI&k1G1ifSoZpyZq3iH3w~R8j(FWyE=0VbHVT3E0knF zL+n1~Y-jf+u1v3Mmbq^mvh6xomdZTlDpmGLn+{D62N#5c(V;cOKfs+rGT`vtIch`I&l%h4hpo*i2rm1n zi=(O=PB^>%o7d_2TY*W_ISWz)4In4`;ym=tm0Uh})d=$Q2@!V&@E5J!M1{Zv%#jOZJRXa zt7RX$IL$eQcy2y^{!P~NbFjEQ1f`b;md9@`+)MH=k%oU35vf>L5>n^x^-FX~yW9z?fx;#g(M#9_e!qowBAoam&EZ{i< zyb89vNf!x*sOjLo(_qQ;NSQ09#L#fV8QEsrL~CIPuKz^3j9LG~OL>Mt@uPgo?ce>6 zG}aQ&_R;IflDx36j)E_HqdXwFmDo8MI*o2+H<-`^xYdwVx?Wu=$x_BqmR4wCVpVP3 zwv87yFjFCJ_&8HLL}&Z@tBauLIXR~mg6Np*Xd}YbKQqmVdzUJHYfRFy{tVq~oUJ^rRAO zI*sStfTnmHI4!I$q(!$@)}uY=ft!lApL~)lg(Pkw5}<}l64K@NuFK-H3G4Z(E*>MC=1-3#=`h^p-7tsPjQnG>9RHzqX3c{1$|Mw?YGD|Yq1jR&VVyzM{z7&=oQ(@h z*N@)gCm=RiS6^q(HHWFvAUKe8xHv{PaYn;?^LTz&w?ANv3TGl=U^-mLr%XyHy31?4 zz#KJ5Vx}fG>1|PZBgAH3M;fjeGni|ufbTCTP(xTHa%USjX`{=bygPEq)}o0Als6M; z3v(eT_A-E{*wR?zTil@LSAiZR)Au4vU!O6(Kd*y%H7SSKlN{S2pkw1+PIL920PTyP zsV!4b4hs2|&?CUg*a4>b1pMoM_U`!$7@s3C(}Vlj;x-;&t|Enxe2t|CTa)@PNFNNC z-6(`pQN_JCQP!^EceOTJPole$g$z^s+no6uUw1)p^`R=iB}n08ZgOB@h`e#KM_^7C z-$_AD+d0Utlp>gibC`+5M|E{a_K2emH=Uf9eLONOMC-@q>^{@9v4K4(hS z-FN-H&M!#_7f(kB6321*W9m5tTtr8q-{)=fkb+oIN%dF70>w!MWBWf|JwrkwRF^?G zP*HQ96g_MuFj)=2HNOt&dFN#|r!@4W>VXs@!sqTr-=68?&A;c-eDG9d@hr-dc{-J)#6eM*a z;2z+ZIGCo*gW=Eg{^}6_xWAJ&zn8MgVgJ1WtI&;X0Z8x@Jm9~ynEyQMAiWLl_VOjs z4|E!Onb`htj(hmb?vhxh`DcK+%Y?mM)03$&G-h7t54qN$Zr#A;%4oeRt$7t62vts* z3@+TTRabNWw#J*R@hiJ{@JGf6!M3X>DC^*^@RftU&6MK0fg3^@HLQ(1(DO>b9y~kS z(%>0`xVSv5XTGP-?C}%={dlicHE`Oj?q2GZT)D7#LUT(uozyisJIPms1kxTZh6lSB zR};?W=%&s(-`y-?nb(DOTEP=Z*5*Y8k1MsB$xcN_&DK}LEQYvV^XcYK48X)x)kX2F zJLv(QHNaCSF9b{ZjDgvm8i}c5zsZ9eYv?)CoD+4k33V9OTYRBg%O?3PR+#t8Ao46r z*vywm7Ci~MHF$|KX)Zo^)KGt09_e?W+j`7_oEbnC>l*Btz)YhtdfErn#?qMOux15_x7zjAUF3aF6wW{7UG^7z|R`ct+TU-=XQw%ri_*Fsg$YLtZ&%qBGdj`?`% z@!8!1St*O4@%J2U?yv<7!|Cht;WiI!6)^Clq37{7!v{9=$Qk3)-hb&TwjWk`r$WE# z%Je8~TZrPJ`QMjIGL&#$yaqAFE~107Q>K<+d|!-5IR_HCpsi!cl#%2CQ@m_cT}{Pn z8CpM772`{T1yuo|nd5=T-FNvzV0V~UP58{m79ye8xve;8L44Z1YR6}b&(&iI-n zN5(Yy!eQ+Wz6>Y?|1}OT0`@7FXWpA&JavhHrQl^l>HP14TR{E^LfRRz z3e15m!XJ&%|M>rO-kY(9=jV5Q^%C}od)WC@7J(OEa;1jsDfQ>mi#JXbv^_V5i^V1) zGs;b|vopZ#)_RfQ;E1!F8*2i4ze_%C|=iB<@~f@ZAlT=i}_u z#jg#=SGLy{uu2p{1iCa}NOyJS=k@(%3cD=gSAlc-8eave!6m)o^G83XD|mnwSWe$ zf407vYf8MO*Ua+=&LI{(Z|#80<-u-b*jB!;cv-QhLGhTUmH9^4oA6ul^m6J?saHdS zH>kB@*DP+S_so3^!n!=D7HLiw;YJi@VwJT*Un5jxRa6d#U&m~4LvuV}Pk;(D*ro-S zIQS$!i8aPCpPetmo=TgN9x=u}_C->wEWP|?J+$NWWy}*Es8_p^bDB47i&MN2y85I; zh>9(PmDF4Z%Fyi-o|SPSO(4M}XJ{Ki9>eJ@M(N zJ{|s--~WO&x(Vp%&^i+i)mAN}oW^XfR5E>Y?MW#gc+1<>x z({Xb-u_=ynR8xQZ%aQ3QB1_Ksl7%Ub#%vl~)|niA3En?bW{)SU0J$gg%8V zZXYIzVmx55hP6ft9 zJhm$n{vgp!%&o z@C})kCy;1VE*O5U8uj1x6QW;)p$XQE>zh=N+94&#}WM*vY+DzPSo*r(b80@Vpqx zG25En*rXP0ExP5BJzUxVCMqU#F^;F^%OHRMYoQYG z&-rGXw(FHqLWU%}`gR8Lm*@0<1daE}F@;$jkwa&VwJARp-C{8cDgoY`xnK&XsLW%d zi?gYMXEuy*numeke+ZE_@z?rIwp|_mI&z%6NO0B3OG1(9)`Z*s7xRqgeNU<~Y~*JK zk`3ey3zv4L^u7z)G}TUf*DGWfVMqzxC-2%dp+6yu*F7_!!RpPu(#|uyohA&O+=wfd zVX^I~XPJ#&Y=|nhf@{Ut-w&&f0b76m8c_ISX*enV>a*_{m(@w4qjy_ilKx)-5M!yrYWZNb3_gte4D&c zgx9%EI~`qSm1|W#Te>OOuBhYe+_w<7NC;VU*P!sPLMmf^BBkvQY#DHjEA{Vw`Key{ zA3VPp)S%D~%X@toH0=SS>1?%#$ERwEaD-fDq~cdQ6j&S8X+9>_U;Rx?1uD=)P<4Sn z7(9^C^GAptm+YFh`RDQre_z(*FYV*3tA<3(eQD^XLL8h%E2D0zL<<+qc5>aBW&I6C zf(uJ6ANT&nmPhMS#a+%8gT8tH_f~jm5|&s9@~*y|f8MBnJs-6`+3JZRLbm-q6fb)P zwVnG7=^5&Netei0PSPMx`2!pGUY-rFzps{&#u7{RSPiiy>FQqS#ZPo)hxTp`ADxZf zd9B#07_uJg%Aq%}yWWOqO(+KcC2m6>IGw&I?$P?;9cts7s`>wgisM9Ogm#|HXjK(# z-Pg^YdU_207erfnc~)CUd*V$Vk1W+-A{@N=zU9rqhP!8q&7Bc~r`(29R@^}s0gQu6 zO^wgMvhr!f<{0)pSao6EeKBQiHs=%a)}{6otr%HCfWm1mU}&{P!{dR}O=D6&9UFg(Bc_HW~C#AujtZ`2jc*ObxYDJrS8iFVX!f zH7(wG#j(IQqmzSlmp((@b@f2 z76|gPe?qAiPga)Np$7+h|2B?74`}o|qS5(=E_-LJHU7F#u_7R{=tv_FmGIOQ+GwR| zg0=l35s455^AqvsE>Blgr$@2z+*trc^{&zjR8v~7ChLXGle5~{Wbddn(|c%3J?#D+ z1?wQpmcB;kmX`_a;S?SbV; zkqG5(Eq!8v<%~1)-}wRS&l5X%EDCoXYt+L!Fhif;rP7{LSqn^RvVszrh!w1dp6eRv z{eG~_{@>NdOS?N8g@IkZBVoV9`AdhO6wal=HM)E016^CmipV@{HFIMW`@{lA@xP(G`Jvsxyqb@Iu^KdFHU7t!f~3GP zr8f3b!BF>y2HllC(AquJ5k+-~cH8zItP3I{@h7dh>4-z02{cdyXcuX1w}qPI4@`I^ zc-I}dLR#}Q_+0G%y0%>!a2JLYXHp-X2+t}9v|S3;;Ljy2eN)#)DRg6sA;3v+4bTjM z6*m+YUy6-c7=M>@2#ocq^Z7i=ies}&?@t~o0)t26rx$j0n-Axkj&}J!>p^3$W`)-E zEK_}bdCWa~rU}$$?v)j6vp{Rh(ZZSSbz8BiHPqLT(Z8bE*pbIv=OD}JpI6(@GkDFB zqKkG_-6j9QkM{e|43#2e8!34RDdL0tm-K|UP%|X=gS1;=)ZZo~vmTfKR_KScS;D?Q zFPmyQ@h&5hK#SjNx@bWQGTTxGkjO(b#-aI62EuHmo>4cGMCkphm*=Q4odQe}C+?vZTW*=e(RaFioFE9GO*4v-ki}~U7s!YaG zlsL}L18CUIp(1g_y;w?%>z^rgo2FMXha}I5Zn9gkh1EI0F%tRk_0KeT?N6+X*08)x zsdxC)sQYdSMZoLLerE7ZW9NH^m3OHbkQi>OzZo~`+4WCN<0v))doaaqSBr+*)!~~R zmN3;%I){=W({)>)86Nr4jZm|Br1&$CT}J%dq0Bsuc;KS$5U|pFt3!j`j{Ty=s8F$< ziT79CSK3#vMAfyXip|6pn(-Wu;JdC0A(ckPLtM zW0O50+v1zvVT=!hkhk(5@QOL+dUo;;2Nl?%xeJ)jFKD&?750@5@Mc~AAWY~WT%kv- z2ssC%7`tMUy-~(1yG6bGYxN}ZHT#zBGKmSahfS9i-x34N6ypto$js#(G3L4R?7tmg z_fO*~CCn?1yQ)jrG>k>jXPfK?ry+0db^$)2a1#9N_VHgdK1BU^-Ij|m`DyC#Rhk;+ z*u+XjCQnr#o2_)=rqceM>StO+eY{>Fo?NM+pGd~l_6nud=bPez%ui|P; z0MkJVGF+*V2D{|GpL(zhx7;y2j~x6vH}=(|BjC|Aon}NJ*yoIPhhi_u?YqkPJt3bR z%)>I7d%eOKyNv6ak~1C@%i$Al%3sl#^<$6zv-%RY_zB(HBzL50r#5UC&>Kq?bETC> z(LX@n_EN^ZPI_pfEn(M_ku#j;(($JX&1b8I(3w?eecb4k8h9q@K_RX3AhC;toNf-j zMcds-|HzfE@CWTb(oE&!k%DpAJWgFsf3e={FO;I(Ch-bfjjG|MwS98GI{|?Wc~d_{ z1AkVgf}dL^WCME*>Yr%Xtgc>lAZ{fRo@T{AG7ooz^+asSpag%psXJksblP};yG$8N ztlD?jZYUJKSz#hEIHz_=e6s3X1p!MNR-B$j-^N_Gm0zKFujHIzw271RMIg0ReBD4+xs8*8PXsl9|I`z-cmCn+%JSTZAL@M>!*kvtHrG5 z6g$q?Pscj1!0#T)<<}{8-ROMr&Q=Cf=;wJ{)5TtXS2HZ09k}Lu{keuT<3&(1=3(aN zXXT>S!O>8)aBu(`%B`m1Y%ai48aAY$PJgx|>HNs=$!$~XxTCbEW{Q@V(~oW*%R{tN z;VLFrXjww^+K4*Riwl7%+^)XX| zMjDjI#G4UCtN9Z2fhs9<^E?9i+xz6K^S{ei+=TGDUNV4o^l|Dxs;fe5`xjm9FHS5& z!i>xBHZC=a>R|B>t7*$%qB};<38#KnW%K~W>P!p~N*n4q= zKchXLbapx7PhFdiXc+|l=AA+zA}V^CN40k&Air2ITmkcqnTi{t<=Hr*)f)Ow%pKA` zHN5)QV%vIkGiuD0i-EJ>y}q+r;H|ZE>#j6Jdu_bes|Zm#DXr-2&M?I?0LW=qE@0b= zr&-Gth(P$E5NyOI!CccL0WSVKWp>Vn;e!te0UFyuOH$&*Mz?cG%^JX%{`;rn<#z_r z$BvA6wPijSZ`O<7E12ueurh9waZY~`nV6pcw9ikqH5pV!5)k2kT*2Go`)0KWR};hV z!L;We8b=lGs}ENM-mt#mZyUDUi0P09v-*~{u)e?R-jn>~GJTx8NK_lsYeLYo@4A!x z*!$xEzoLZJ-OBS-hq20*! zKlkzs+mh2{sl$L{OP_o?cMQ12Kh*Z5f~*6m)Ax6oQ_1d=Cq_kBF4Wr-u(%i2Rb zcB^7KD;v&><>kYjiPeQyLjDo-;?XDZeIsEO!|Nm!9i-+=@x;n|UCr&!nG__GQ3=XL zhH<drOZRq}MS z`qfSAH6&j;HYJj>w4H#Bo0m~?IBL==={n`glMmRSJ6iB9XnCDtst4;o0?|Yi%H%C6 z`oFUKZ1Ue64Yu0ohtxw++sf9yT}b52n@^8GE#++2**Vth^5ZqnhDW)4Jdl$XX!P+ce%A`GukeHdthM7x_=D!VI~y0{Q7_C5n9%+<&q^9zr=t4#&kE)G1%g?)Hah+` zA)4nrnp=lm>TSCTg?@Wn&#`;2+dZqJH~&c&_G!dR;Zi4mwO$IN*ad=7N78xRtu0LG zmhI7fsX4pt0D8tpJoncr8l*07*X-rZQwNiC+?2%%8U@a?(w`>3>g2}=#qzUh;kPFi z6SuQg?mt}D*N}3`c^<*jHzJ=n`!}2LN#xh>WSAq?yTT5tZ1+TO(2#h?ew!Q#gZP5G z7i{F>$PW&`GeJw%Z>>G7`8OX_A-bIgO{0e>dMA{a)gDW{;Y2ZQ9@(eU@{Zn1?q9WP zZ~S`kV=2*Y1w<>2VdaiV`p#zk-vsJFjP<^q_ znB|>ev*YNYD|cx5KY>Dv@5Y#oWzB&24I$9$`@V%|K4R{G>6$u zeJP}*oSpVeJ_i?l=Dg+Alb}}^Jzd&nb?_2VBCXNyb5qRR?>Sm8{(khtlWU3^4JpIo zMEdL#?eKJh9UIw3?#lqfddi0)R$kLv>r!CD$Eq*X_)Qp!13k6HWH6Lx;`u%NRX<;b z#6X|6lo7C@O*dGv-hag?@IxPqXH>G( zQ_l#O55x%H_R7>{D{hpNJ!VH&AzgFqI_%!x4s*XpuX3aJ=0I7(uSh!~qrj&VCg0!B zRG+r!uw^KrXdy4llj}xmPj46;CriOy2wPpFIe;e>Mj8_XlU=LSk;O0rd^HC2borjF zyI;Kf0J%sL`G?L9a^$os0?_WQNF8eV4#4smPp+Y%`E7=cXJ2pr9{{dEQNQwU1@HSr zjD5QLqZUN+qqgGll zCHUHOc^}#0SM;O$g5@IaA6@y?v+8-y<1q123Hl6z3fzQag;LFHWt3}->W`|UCd!CD zsLk(hG5UwlJ5}V~9+!O>HO{$a1F{7XnBIredYVybP^*3lqd6R?k1zfEI>Whm{M(VG ze?KJ`q*8Morb?*DsAch?_Y`jzTU&xtV^lC2@QRB+iARIqp>{fmDa9J9%DjwP@7d}XjMj6}>7zPo26cp} zX8GCVwb+zy_}8^RvHa_s9sYS?AMFAPwWXJFY9@^`sv#w^hz@}odgf03s$xDJ%>DmH zFSRi%p6n%A_p#IJ*h;9R%3i0_Z@R`~KO~-inLw{U(er@f#e>Qu3N82Z>Zto$k2&u? zy72EGWYi3)0@D`6{Qc2rJkoE@sVXPYx}5uR*^1(fBk?jxpLFFl%u45|G4D_WR=ABI z^@Rb^W^;s^@IM1v?M2L{6ZO>5RhB{9+@@*-!z4X@3mKMVvmHc3MX;)h3jN0*T2C@6 zC!(z3GpDo<1GU@dK(+LK5!r;Q>4a5V#;KK{%A!+aNBGxr<&0_$(wJK>7L3P_QCeu? zj7BfjQA&;It#mDEl7pzKA();Txc_~$`kM&9s)9V}>o-^mndX7i{`D)sRB+lf4qa0N z{ucqM+l?agUIoAiG-XtEO06w0HS^M6-Os3tl$fPpN|i&n#jn9#+;A#p6m`^3Nteb~ z8K~xwEExSb@Bxj+F)4-#Bh{Q#X0@v=ANiclF}vDVcz&r?mkGm=sM``}Bo0A1Jqn-u zkA_ZFUccx7K7>@jsN0}+swO|&4=Sljt1+YQJM3%dX54&l0YH?}q63%98Ki8S8g zv)g4DGuP7@dW5I4X9Q`rxbl~VRAJQcuhAesk*>czZE8qZ_7x^EcG|zf8$l{ybP!Hm zKQ5Rpoib{N7!|0_N2pRee+Hm(Wa@pf`uvkNx@YR;eF0LPzW?!cfwKCp)%;72Qh{l> z;XgaFzn-@G%l4DcmwplNrB|z8LG3e2EuwBIxLsP<)RY13thMNrMEoNcs#5vwARWrj z7DhE4bvF!tv)#=B({5d6RLVi^WX@>xQQ`a$XdY%%Qc2&d)907>Y6Z=H1!PL{>4cQ} za%xvU7APkKYQ=n7j`>$rz^L3$OU)Nq{bf2WMJk-7{;7lKPH~ZbzvQnHBJ=F{*7R7!9CWL5f%bsKa3=jY*$ss3}?MM5?+P zP87^WslJ@9e~|votg3YB7fkb*=L1G%s5<+{!DN3MNDY)SYPjVTzn5O|Dye=*sCezz z*B_bt+xtOkjM|}au?gLS!X;5>WYon>jM|<~E5InVtCN=a0ZjmYRr%JSa_z$SoCqm+<)1}A{ zVieKJvR{1{0}k&(l+@0dZ1uTnr%gw*{reGn-zK9ao*&rG#?E+`8=u56E!5AwtpC&) zIG5C$S0Id8ndsgr7bkZ)k`hdBPN90~SvzfDq&Rl2LBVw&WFC;_Ix38)g)37~=dt?R z$F2Sr$g&N9dMTFn(>wDh9NkwPPX7r@|9`AbUl;ps1xNT{`?VBB#ikWkRe4XJOwAh*HmF!qCsw(tzoq$=@fSoZH8;gu-lrM=ycDa5v#11`v-V^qF&+<>2$ZpJ zCN@VVlQF6#O|!G#UB{@&kfis&GNr1~?>*+B0-?qcsk?KgyHQ5PwSOF#cO_3#46{|B z&XPS9Gpf`@t&mNDRS~Ga{{=6;{|qX^>hsS?vOn6@YrD=%3{j)i{;J}xsU$Yl+0tJY z1E8(6iPOr3_@v8{?Tj_UrGIHly~xtSSWBHfNS5kbw)T@EtWhbZR}=~Iy9ub8Vb860 z4PDv~y#4ejX{fyJZ#Q=%wHAxM%&6p?VxVGVYQ_Vl_U-c+6;LYKs4GC|4+JWXs?~Qy z?LYp67Vz7i>fFR5cv`i;cJd!&m!8+3+x*4dbED!yh9gQXq^0WK6Z5Pt)t8Dr;}sti zooZvHNF^rMy?*$V{oAQ8Upr(BXr zuaI?yUCz6cJU{FeIFUh>XHp-`^pCz55)KMtx)_-z1|-hF?d~(;1~zFLJ$OG;Q$aW}sXi7Y#*$Z>}%Xn$HRinzpv69LS#CZB|s%c{cGp_ z-+uW4M1E>pNDU|~{@h{Tjyk09lkjRku9>=gwk%FBuijKrCPQa_;?-ZWDsVn<|7LI{ zG1$h!RIQBaFS&&`uKPo2qB-=sL0SRrK^(^T!HtS^Izw9jgw;=lCSXWiJ(CBuoeii| zTvB3Cr_b7PchXMMi( z+klsRXw5;8Q>qfG4KgvGsyR=Wg%oRpDu`tk`aAObhIk-*`UdQrr?mcIr?%8%Fr8pj z-F?D^QRb2esMS1-8p^`T`ma{No@7h`l22$%fxNu)4KpK3s+3uk*#9k3_ft&CO}O;C z2(5g_O0H)SN;Q;;W_k#!P#naFI!F7ZQ{6TpS4X@2EX%ZRS8=(|$G*7j&y)oV z7RA=Snfc}(C49yyD#oD`X{p|D%7s*}+fimf#j}k$0tl%bEUE1sD?VN85~HFs z3d^C9kpFpnjbb&&<}24(Uusssvuqp%m2@-)3RNBf)MJW`gVH%TM?(^ z?*99+~nZg~%+G+JdIs*^5vmPym@kBpRou#KwPCJTL>&yJue9=GO*E9P3E*^IMy=7*=l5hkbuhD@*E2P@)xUxaKW(I3w_ol}78Lj;dpfMoHyf=w=fD%$$sh z^2Z4gdZPA!gEGFldCHETMp0X9kF&Xws!6F;B}po`xKuwudeDd{IH#9>Y$8gfcDz^_ zr}Y<>dGlhKZFSakDicDcBiT{!dFBIYQwmml(NjUxra5|eq|zwc9hp+Pm;YW{YJ^cy zKP91qPv(}n8I?e(=qJv!J=2wW|9PMk)$OCn4&!F=*yXzl(#f z8sm(znd7*qj%@w6!K7GqAK5v5O*_r`G%MfxMJ8V9nb&=2#gbazg;XQauFDv;#;KWD z^!ZEwzEsOk*LqF$4`IufRj8;koVLcOt;VWEri`g+BK1M3KYQuvwxLFebjJHMGc`7k zaxYXKI(;*MM?!qcoa*s`o<4$B9Z(5BS^mHEue|UhpK^L1a_W7h(5%!{uA@?weo5>5 zw*YDlxU&PI1c!pmwhhq9gXmdy`6oh*DtS~o$gL?0PjwoZ+U!0iKGFe{P1D@!>HW)j zC`xPnT7e4aGULje{yU#4sJGiwL#hc3`W|FApa4v17ytGlM}JXAy_7|H5?TQwb2DnN z_P2Yop@0rU1%L&gQFsR0yrw^Erc9))oYIv`W=u`wL1iPyx3&?(dYkq^YKlv7d8W|Q zG7RjWg*@>}?WpY0c~VooBhkbuKLO7nEiK(dFME9dO5klIv46K_LcN<$K@A;e)HPZC zlrTk<^$bp(H`d<@rMA$Jv^X-Gs^V6Ser8m)t?aKddrH#$X*NP?H8KIBHqnMuR8CP`BO9gGa6N%hJKlJL z5h+SWnKdRQ+m+k77&Sfupt|U(%AiK2!Nlb_fB1HRQK6A>mPa+dxo?wu`CaZ-ohU`& zBSgb&SQNsSc`@>+9)d3zs~UpS0ohT|l6UI1O6ZxZf51-NQ^!|fS4V4qv*SYOoBOT( zI%Cuhh2QcRAUZdr8a2(ysKl1k5?ak~8kU|`um*}M&Xx-Nu#caF9;m&e>|~bKpG&^< z8+`RyDb*V=`952s^x2p-7-?^>xi?!XxNq9imxuXHUNOus6e~#G;D>_zcY0B~GNWqA zNf{RyWS;81PqX@Ih1ZeLr+Q9lOmlp(GFv((rNxiYYnywhqECmPlEdFkW$>H*B{d?mw?rxjsmGl zkxHp}Yjli2bJw^{n%lWw&aJ5 ziijlS(zvVFyz;M~e5ll16{it`8kMqxruf1;3sN72QH-CHrRnUm z4PJ9GD$5?Oj-G@^DJ^9lp*YaoK;1Jig-ZF1K6=8Q+AwMws0Bu{T8XN)G8Br;O8ryU z8I>@)DInE{or`AN$evY8v-a4R_oP^HG->mdA8(sT1d&NWu%oHK{`NTkH&R%8;oA#N z;iA3#ez$43jL*GW`ogSJkkF4>llQcy_`U#j&SRvx;PdQ^DpFZ1`KaQ4VnO&>^pu?W z9Kyo9Lwt&|`Cx{GBC1-8auTn-to+nX>Z>jTr;m{A@^b%{f?wpxG><R+__dF8j5 zg7??XZsPW?C6;we!)l{=62XC@QCBUu84LrHnFh#Hc2I zdfz@@;?^&pe)f%VdK^4^`~NmjIn+mBI?AZ5tM0|BnmMaqf%Ys$MF5(IpCAe-yjNPf zR4VPGSw2{GQJIdqxiIN=IzVMAX!-P1W>FbiWvD`8>YKD8OT5oFXHWS+R0X~<$Dd$n z&j%QBZ4^I9Vn13^D0dY`xyGoRGCg~UpKw|&9+sj)F&2Wa@v3t{qp=_ujHCYre4r+) z=lr1>T+ri}@S%QPulug+VHO(teLc7g1)(2IPci5gg|{_jl$uke9F>+i`p01FV@{=W zQa_UBC-TY%pMv$@bJ2dXq&BGkpxn==R~VIRC^JwEtaBdIH@_d%R((r&QN47LO5nGm z-)P<`TmAC_e}w}mx~QICpP+M_;BZV_`IIzU`lZ*zky5nZKx=ckoatk9DmdNQ>8H22 z`UfM_mp(k`oO7m*f>TYK3jL>ZGU}dziZVA))!ARoZuQIN66&BAr@xL8k(g?DQ0kss zsp>o(Deza(VA_~659+pD*Ux%g;fuk4Z%-nYnCf#r%}+zMB&u=Ih5x9&S^}`2I88$H zPtrpD2b$^Wn|wU))^F^1-aBQAQL(|P{p^BRU^nXgj2eo#QJGOWJtdPC#Lo2-lp{>b zl-jlzs1m(qe5%#_rj33B=S}atftOc)wRxgFc*2qA&_lX3J1VS{T3-0&NXy)!GB_TZ z61{%GMq~Wq>*uHxJNkzKQ7RVyyjH)a_IJ?lXWq!qi);H79W|uW%1nM+-V>=T;2#Fb ziYR4sf0|9>&3&6K_SeP7p8sU~pGzo~W)d)!%llhte{Rl2`enG2s7t|$vAS@PPqR>s zTotAA@JjflBT%%~lx6pA?sE1Q85PGc$!662VScNI_7p~K&3_tTQ&}^o)DXl{xCM)? zm60k%sJWj4szG#9cKti+%dfnRU6OJwr0OTv{&Nc3vN*Ud>HW}%rABl9s**~#DycF@ zuc2`bGb-mxBTQ#!R2g>lGk}WA>XU%FH)yuTr)F2>qG74vwPL-9(|}P8s>#A%V^Ruz z;JQs*&}Bp0{3r3$fKh!8&vGJ_MpP$u_OZrnHPT!$tKX!dM)IaudNTVpX=loA7xZBrqJA{dp;K`cZ=sSs&T5?Q1)b!9q6C_X1sIGG#z!6PCHxr<2b7JA1R>b zs4YO(^N!S{3Uw5C;)f+YO^cJdlkibZl~eu;uGB``CiI}%J7m@#$9(!(P-b#YM%`ar zR?HFIoKDo%hKuI_wNtCV;x58#S;UZPlSu+z|2a_7PTDGmh#`Is)LdNU8p>3RYm!qvMzqYd)5R`gp=LN_PRQ z+WSvYP}|voYK)!Y(BepCX}KJA0^S7zwJmz6Y~8P}7*iXxrY6PT>J0EvLKQKpX{lFa zIi;fd%UM(ExD{TtB5A%rs!4&VSDm4853To_*gshDzS$VH*0WFcjAZ82c_j@<&YwM{ ziF?o_QT>8w`d>E3KwXq@+CnGUsneBGHrVBsl$+d=nyUf62`si)Y*)?Ra#dz^L?G zNvJnhQmtZY`P^OxDu=gO1(2&OzKm91a<7_k6_qhHF~H^_(@{qCBrdEX?43vypK7wb zd~(idpBy56^jr_s15PO&t+tYl zP!6NEl9-xEEuH#NKPoOoughQiU|L;NlWTuYs%hN`Bvd1C7nYs&-WPYGSPJS(uWZYq z(^q!&Bb~ZUv(`eB_hJ;FSYp(Dha=Qb=a28JyXUz;T_~j*WT!Ramg4=HHee3_l9I|p zlB$$X{s}$YyxyCR3gj}q&yO2_RWUGUry+G(&Q}urK!mOnE!72EP9|l*CI3~5q5+h- zV*lWIi}ZtQe$J@ty~O&T5|d(DdoEB_+YIa|^Y>3!Q+Z0Yp)gZYE4*-&T2$tql5$|! z@pxx)Gu>LIs%5c+VmNj8+EeaQYdTOt+{Vf8CPsA$R4w{shQCQemX?-69V8}oCswRdXlu6e| z`~8jgj693BRMCT~ICYsm?2J-f=9(I`dFg3jtjf-QWK`Es;*{h}ZSP$7#~8J~fb(f3 z(Vh)dBh;V&BG6r1{n7p^=>vOc%DH|Z>hi~7AeN6xNHymaJ;Nu0t^1gd)#o8A7BhHq zNM4KgYgtrmP4|_=Sa=!#_QrNaMM3_T23P(Uc1Dm$gtyY-+h)Oi_I9jDMg1E>gy z=P&&#zno-43Uxo7rGVo^mE;M5)qluVK>q ziQv`LCa3G#fY-$SQX!YdLjI}8G#Uq9fSzAz!t@Rpl`^L9m9EUF6hP%;`D$Cto=>Rr zCr-oFAAf6(za9R0p;I`lM~?HO^ZQKx@qLj3Rq|9umDCp7@F1!frp%}t<4<}L(Yf2j zjh(6L!dR!t`DXRheEmtJ79YbBlwQzSK4Ge19UwUYW!M3u%GT3a8I`nCoSmCWjf`X? zfBP?3`d6p--%sy<|7=MrCm6qA^V56uC;V{%YTJgsRcuQ*4RTY8#i)!?(dRE6$5Y{& zG^oN|C{xIds#d#v?{w}$oveoD zGg5QgiS>ZZ7_YkY!AEwKPCGl6!du1EV%>>xYu|kRUMSnN6eQHfX$4Ab2IEfzV_J4n z-YTOyJo40Sc2XSWp-SilM&*;wx+j(F|3B`oWw&i)i8^yBWNYUp&^BR<@HT0IxLbyx zk!^;|z`qfBZ0PrIy{p@#BvUaJASJQcY$<^Tb8@;~UFD@wmS)uE6E;P8*zeOV{r(ZI z8!)hLAG2f5&>2k`mD$w8RbywWM^77>7E|G=m2qaUTR64z57Rc*aO6p#$}(Mw;`l)+ z4xZ)`k}TMN61wh3UC*l|f{FvJR^&#lK=`E8FZ7d|X4De-fSmEMk)%$+^AUJK%x}OgBYnQZ9G?hcBY(_;_ zPh}VzR>xgY)9d-}tRS85N~N?Ds?y52up>GX-xzFCd*#@EKx{G3Z;o|nSDs>4!GJ`dxD)OjA&EE)WO zwEl%rGiRgcan){1RcMjUJky-#(y8_2o0LE3Cjr??E$=)%$(_(GL4JWKb1jPbwo- z!&CZ|-0ByzUmzMMH~w0$nOUoT;&0Gu6tj@(W&6jzsi+Prz%dN0rwSM+x=wuP9kM;; zwpJ(@m*c{{^Mwi3;-!XH9FZ2ZN=fckaM^0eN6)x^{W-KTG!pcCq9&$~Z4 zscwH3Yc{6d{wu5Z|B}DoT2Ns`ZPJtK@zZ9KQEBt%5S3GEoR^g{=F~BS2QhkPAr+zL zjGAFJ@Kr^MfypsH)ljR1LYWyN%<(Va9Yz)d*^cvo@IG6q30w3at`=8DHYzp0;^QAp) zDxAxxDASAz1Nx-kT0#I-7h_Zh>Qkx`uYY0(^e6OA(Wjpaa9}B;!UwW?f9+i#_)`dC1nuGa2LoxkztR#cR?3&rf~TA-QtK>2}w{&$2= zm~m4nZOlK!DunYR~8m)TkNMCUFL9j=NChGg2hI2;XV3^U;zq~ z<|B1;P)9|ic5oq^zN(JeWH$e0tbP{29t<4ix2=CgPW?4n`{1=I{`qTroOa^8Miq_#}r<5 zsyM5k!Xjy`9#C-}jYiQxLQ^d{Mf0lW{=8M#p6Qv|9AnfLVY)~z3O5=7{7}|(afz*; zx$^cJ2CY1y@v29(w17Ry;SWC54}Swt?{_-@Y6C!}RRF5>Q4wmDu4uWE$~Vsk5I2BX z{c29(5H&qDx1s_g_IRF37Uh>K=U+`79o3^adHf{LM#0}Ya;1iCUvJTt&*S<(pn%^G zo@(13Dd7WGjFnWEj%U^HIn1c&LuE2;Umd8&51lU36$PxRkL!mwq;kT71@PC`aDThQ z`KSHvJACcKo1dT&{Fi~stGx9yR%Pg#k;mV4Q|ph~;CgQLt1XqMsMs`TQCAFdOrFdD z7&PF?Jo&<%U$gt_R3%lVIk=~4K&v0#eeY1MWGb^eTEjBv@a~5QSUtPl`Q`|tZm7f* zIsCiV7RjK$7*JIk{l0#Jfl#XhOJm^msUE9pB!h~3rZ`d?)K>}R>}1eE z_xw?WD%#oNBEgMB zkDk6FqoRIFbc(NqGNy{|qCj2UG+*BT=O$|qK`hC$BF~Wa#{Hdi^JS27WQtc(p!(Es z`W(nBInghT6`53nvMEgz3ohYBsVdWtPO0^bK)33kR3=Yd&x=%0tW-^WY2sga@n2cV zqonv$c-}OAMDxP8e#w?*JrynkuIs5|n4U2A2Y(!QqLltn>>@pW?9`m7ZuIN#^C2X* zKf3)X>NME7sh+469_X|btEgPCe@o^2N{LB@v)uiYj7sIC&6wIO160ZEUmmC`h25M| z4X63xD2J%G_7yc%aNN;S-gYvzs!TP|^;K~AMF*&Ft)B2F*#Ii|G*fCG9IB^<99f1@ zySZ)>qy4^~tp0wG)O}AtN#qV06~Dtmiuw6{C2~f!M*QaIe`S=8tLt?aiS^6ou0&e! zOKP*pRq#4W!@^sB(!pOywlmA>Su0zH#y>m7PxDP+m}1n9yYaW} z5;VoUtQJ9v>QL0bYQ@WCtQgy7V z?XQ)YbVh9x9aXAJcMGVeX^->bLfKPFm9C?w4 z;QC?o&38_&iud->1F4=veHg7Uv)#s3`3 zUsX|Cxf3`^C?eG^qoc}Bd`Y0@s;PHC_l}c=z_&4tba3abzsLgq zUW}r_1^skYqN$IHY9w;f%|9lYA0XpoWd-Y4;t3@{yrNouZ#bMa#e`}S^e5SmWW*Aq z;*DHX@Fo+#W=73b05qiJgfz)nNL3!)*o^L7n|M(d5{aBPm*4uE-0F9yls*?UbN{}F z_hIz76ird+gNC3e{rqw6jLN{Z1eFyrXb9qtboW1v;gBAh>#fr$9VVgcjH=uJaKJMK zqezC+%#o@v)laJshn|oMY%DnKd(G&lJXHLgQdoL9DfJqRO3A0KFzRw*0KFto9if>| z$_J-fbEKLPB@}9#K0n~P%nEIis?jJK@tH?tR%X+MY_miHJVql8`!IIknbj8KY`k z3Z?y1fU5jSgYEG$acXy)N|RMBT8cNft29zYGn9gn*pRr@uT4@5zBQ|ocTeR|SNLd* z*$L{X*Rjx4$e1=veJH*6^!QXps`4l$dbWyHKOvI`QT3k`&eimn%^z{9TnZD>Sutgr zC4{+2Q>`C9$r)9%q+2cAL&GA8Q_XK;R7GLp;n%zroH^~v)bW~uROnTgs5v@_xl+yg z*UUc+rUFm_q$P2wD5R1>9dn13ZnTM2#p3Xe^TMg*?muwOzosfu08`~t50|1a^%JqW z-5;eIMNdeq>x5Aavf84LKpMB@d_t9B<4g*&;V@KbA^v6Rp&5sDmu1v3Yo4~~Jf*+0 zG!?0Uu7Cw0uP_ZvsWN&BwKbvuhd&jwv92hdI2~hTC>TOnf|IIq?^xpaD0Q?Ism5!E zQXH!~XF9Fx%ANf|*VskPdYnyOZRpHVA(ATp!al*OJ7F=`7O3IY#eNG$@? ztKX=jX7*HZ+M>&{{~Ct4it7M|6$Wtc4{ny+%z@JRqQri4+q!K`TEDnCIT@D&)v204vgI@c!tf>Tkd zLF%UDk<`J8OXE6zDcB#AAA>J3>fAepH?{vO65wKoCrHm}Qy`q#Kf8v{=CF>6=!7W& zl`>J5%SE|7Pysaun?7&wt@k#0wl@f_<8+2_p)UTrK!j15UXsMVAOMx!A0_3`yhQaB zTZU7vfPr4x%y*PUo#50BevLNJR5HBH`HMmiB0Z=KY*5v;RG1{l4g*K|LpUoaCHTx4 zbwk4jA=@oi7lnxC_cN;hh8dj74plE)VbX{v0q){X&86_!3Q+3d{*rc46!8T({OB9} zVu@}-`C4lB`**@5Zfk4hpD3v?=Or=tS)8cV3RQu7Xx*6CcJnx}3tQeg~AqCBb_04*i9{E1PyAR7MtVo3>11*dbt z`rPW@v{qrF<@jj_^5<;*k>~IHmK&VO!y1jWdeTLx>aB))M|V8f9lRK$x$4J!uum9vCRccaRC>50aA1St1Qyf zlQ5g6p=a3|G>HvR(@mwnJX?}5>4$ZwZLg@MD6z=(qi%|zwp)Y!uiHWWeT&Z_**2!~ z`VmTZ#x@hQim2k+z^9@?Oe^{GRu78B5d2jlpa#0169A#83`!}quslxu((p1e`OGZ! z;#3uTfLZ?^;`##Tf-l2Jm%mDJf4WSnmq=;fO2adGd8*u(;D2e0U_XI<1gJDGf|xPA z*ROm#!>VGM;qil0c~dNjnEfNGbgu)u;E(-R)qufq^zW$kev2do@oNh^1FfD%iv9m#{rRZ8sJLsUqY3Z^7A%BH%R1glTrPwB*{bKNSH zRf|qwztrEKnB*5h#RH|TkqR*5-V=j!ZeaCBMSblTMtK~ltw2p#5+QxVB>#I-Yh|x$ znyIT6J++9c8KXZqnu%&y?s`hy?p{{zh1K`K$N5{*RGBqN9ma*r_EJrKjw%OuW$Z`B zE}*Dzr_|RUMN-{{AFbGLV^-@FRX{}mQCFL|rxfM!pw9ZyShQK*nAxkM;&q5?^E~-=fS966Pc|1jl3BC z+G%a{0p~XCzX55g>+AZBrv>j`QP*wcqLQ@poz@Nc4;}iO4nR#XEeWVLY0eoI2&=$! zJNwHXos4+8i7e^s@=!eL=k~fA!2a8v8ZB#zW}iK^SOk$|=2R)g98$AeONi~Z8^-(qJv=1<$20gLiWN6pVQ6t!w^hC@THc$mZ@omtJWl+$%m zjnz$M3cT5w*3umnsILI^^-xeb;3U*RCP11(QQIj=mBwl`V2&woO{pLiyln&TKFrrW zv}D|&?<6=lm#OH;H6tdPMu7=GD-DfI1^^6Ky(;Yza3!khIgJ&B0#`v-T>hNv1w;vE zf{0@1qSr5GnBD~HUyo5#$>$&Q+7c(I=)NN~Mb-F9%fiw!Xds3x^Pr8;pjYEg<_mT?Ecm$h0 z>{F~pNn+pAfCOv&Qb81XmAp(%F>ulQCYxGAiHx!7tlwp{=+STk)xV0;PdViS5qpg z7shxP6@3j;Qn6vttSKS-pO=LT_Fp8m94IOu(Q}s}eEJAb+x*?#;!sqb+gl?Yq5$X2 z0^lk($oo@LLs7}8XESXRF!r2=z?x-m32cYt)_tRc!zYp0^8Ra-awb-nlyLPg?$$Hw{Rc)VNX zSKdCSG*)@EeptAI`{0x=6pB&e(HAU|rqYYCXdo;hf8TjjN@}j+PmN2emMl(}t)!2N z>iMX0o5w#t5!CDan(dFHm98{my1v109W$r}P@uxy{*Y0U^f>{r->dy*=1$lfBfr#( z(zcmX(pfh@DT)!S_zS#NX*m>(X;E4wStWMWiE13>ue(f#yK&mA8FM}B#f5WNg{2{6?zAGR`1TUlCpFALFT>&sb zMc@^y1BiJls)p3axt!6_kW$ck`6)!viP}=2H}%Hl&g%*K=}%x(@xzFdMfKD103Cb| z0Muq!nxj7}n^J20W4XzFa%qP3oK|z!l>BK_^dY@d2h%na#3*a2Ixh0%jstt@`0p^H zFaxziP^#dwpQN_Zd21%iaw$C`D%PA3zW0m5woxGp;(~)nTVY(Cn;q z`0T2mw4tq5FASiN1Tca;72Y0ywcFc`DSAyJqY8nV$ap6sN|U8(f@(hiP&X|7!w}o0 zlTpzb$)>YwYLJlZr&Q!CshJ|6A}>k-KLI;B0)Ya;B{7d#O*44x*>`OsKq(h|gZJE4 zLL$9Oa?gMAIxvB@+;_+(dHlfkJb_U~@DtlFWvU%K$lt*1|L99U^_bY*uO*{8CCDUM zU6z6BWQuS<=m{n^y5-09nz%FpivqbJO_haD2*?uO6QO;E02GOse;Pi=g_PQPCb(tr z!=iF+AQ7pX8FeJ1V(3xpQARt7Qq$Ct`tg^3XVaz?!JK8()&i)rOTX)HT_Q{+ zAqgZJv*`+jcGL!(b%9}UU-S{wz5bZ&Iwx?Qf>B|>F*pWB?IE`CyEiygf*~V(8&1zW z6PsYv(d2^SlRf>X4dufCbpxZKF}i61WYn|ksHXM^P}>DYRR(eoPp4g|VNfX|o!!8W z7!sTMl!PC51rUotA{ zPtq>iNzjhGf$bwql!~g1s_l|z6qbg1T(>;OOelVa8@6PdN=}-c| zs2)rm@j+zNb_S@7Rdqn9IwK*9H9sM_nwe5WBNJ9SV3?Ri3?4J8dX?xwKy07l>M6dl zkke0iB0d$C2`xLd@t-xN5=^OxT8RVds(;?IjQ`^Sl`jsfjB5UVJx&-E*K^;;q}Ja8 z{#ZyuhN{D~WhGH=S26|)GzsEC;Qgv~HD zd@ksysQ%p{uPlcqeWEEqZ=%#<>=BrXG?mP@(0(bVU`t9s6Wu9fp8 zHTrj{jvhd!mjeQ|&G}uRwkts8rYX6ptp0PwsDrTbWz9W>n17#WH>;FBkDyABCu^%} zMt$S#WNlzy7?pT;s|kXC2rvy^euFQ=`;6)vsUpB;*Lqb5Hf>Co9%J9W(zI940$TtT z#?)>h{v$GK&YKu@Sev7anup5ak5$Wh6{9;$Ex;)lhrfOq)o5^{BjoTR_eu+`_IelN zNg|xK6g~m;Y{G2U;xwhdfj|wuQ}iM>SQb1oV7gt<8|hpzYVuw*D3G4ZK^=b%p$-+7 zwjYa8KfNlWercYc7UtNFD4+6E+YD1bs;NA#`Yh_GN~UOU+gEU<>oTDxBzDk)1B(6h z^$ej~pl)qqC+0yz5H6i`1Ptz}kSA?m)oOw$~ghdzX>hBar)2IQn{ZemUbYJnks85 z_DQjaeHmgwd!)k1sEm)g&<{rV;wDs7a%ufnBsfHnl!ydae3pddZYwiBW}9uL9J-sQAfa84VTl+V>qVh zu__w?B4AZ{Ub{s`HF<0GJHX{>vk1}3OA5nJacTz_s5CNVwdce*zsoroRTqAhbFiVt zoqG2HqzBVcAM$qr>O=lE15`|*e4m?xfYeoPM@AjT6s-Q=PC4h>KOg`7$KyZHi6WnN zFsYE(X`ry=PvWYFn-c(w>oaQuLmeJ{O|gh%j!}Eo2(Xouvn!-Z>u3El)4zfvgBNmd zvn?e9e^~z>?}MuKX-ObDVb*bn9_U8`YR<0))Vv7PYo@%+&B5kq&-qoxZy0q}swcz^}4 zWnKc6_S=oAno+s%V{ZwG^p86!sRJDS!y5qonY#jf3meL zkin>BvTjc~=kV`QORQu{XL%~tKM@8tWrlR@sIFhNuQWirYQj=;tWU->4gphAJ)mj^ zlnpzBs*7B2vi`@|3aw&PtDZE#?y8{HQJup${K=M20@OC=+oIL4OZG*MuZwfqR(087 z2rnfUL+96%d_q3u(=FffKW0LxO!QBBc4}g83hq1_D(p&p)vYd!m=I{t=26c6j=-K> z2&tAAr~&8+=wyahQqE5}2u_jT=i~m*#!VTFvgYS@rE&f}f!bQaaMKjF@(su!%O2iF|s1#=jgn$DR56?rL)rNZv_#Ll8AmP(`$opSGyUDb>V@^sgz2pgUf ze_&-hv-AW>D3F5HN-HT3_XDS*xo$I}>ZX!p)FdbDBZbX*_K*P2%i$tZcj|C*zI<5% z>a&1YvHaQ&^Tt$;@`Zj>WrK~3N~EUZEmxdIm5^u&y;FK7><6!_${M4}9GGEbWf$0M z_^e5YALrC59PyAlK1@LBb{S1%R2cOlM|Di?Cv_yMJseQKDn|8iS_10dM710ojkhoF zc?PH-Sc7>o>IR^Ki%O3Q5t6H&YpHrfpsN~fC+-9Zg&;6$U(shw#L^dR5PDAb6o)LJ z*yH=|CpnAy+}>9jky9|LYNi@e-Ph3{fqFdm)I+`jsJ|=$^`SWWfx>y#g#?4k{eaHi z8r5H zqtI`ojD=B0GOG4N(es|-8`mEfsILI(!xB)hSk3PhU`tm2DVs25upQGF7*ztO|Ih!^ zubiJ|f!e{Ag2TtkH<|c>5ER9bM)j28s0pJYOCT_6VO8j>EQCfnmPUEV-UpQFuqh=GnaF5@CU)Fl8rTb4E{(Zf8%7Ix* zF&PAc;-$EwADyjr!KzOnqav{CIMr7>q?G`sfzbJH+tJxowG^!L2vfoO-(*Yq%8&dL zGOFx`h=l&#&8T)b^wR$N@(B7IR)i{UR< zHbQX{1*%Cfv6&V%D{5wg*E~ssD zWT1XxKGbp?|M4+H9&gJb)GJJWh~`PiPkPRUCHel%EKp%iA@#V_cH*Ey9}z7c#!aiD zQwE`sxXLv=XSAfAah6dnovck!_zPwQQpco!<+FquCEqe)2f0EQ}JCwM+hw0=)(hC(?miWNu)<(-?aqFt$7qm8Xr4JH|t6d|t0hJJH@7lI&VwN4%RRrbb3!*4Y+^SN~T=9X?@_tH{B?XWw z)g!D=Z50tzVsmqwNtB!D0Ao{&=$YDU>Ay(ddU-&O22`@8$!a5CaS41{opbL_BJD7keU2X1ZY0DA@q zCva;2RVZF)@Bgy{pou0US)<83)nq0@EDE9=zZbjR1V9k1%8`EbP!z0WhI{3;L+Euz zg{B!f6_)I~GmOeTdA~1E$*KR_zE~fXK>ZJu@j0q$$FHy~?`_mqdCqI)&k-f5pc&&v zJC057iTb#=i3>=ztlbqdgLQu0Xu-E$WIkxSAUty=?JVn-AaNQ_l+I45YMpP+@i5A@^t1$`(e8JVUrTq!at*CCAF z{-uz=9x!TjHj%rNrTG#5aG)-~2UI`ad;Kd;Ohs~>`r&Bc%qlZPcQK{eH>$E!alyPk zBAsxj(7neP@68-Em6=hm&zlA)DP&Z`uAcWxM5nfgQBADL+3PS5bC4;ygDJ?~(vt}W zLrbg@b#$ga?e!ErtWq%vZj7v57KVUc3$FvALPsb7$0=TwS_&D}8g}ZrUzQ$5eHgVh zI|b@_Z5!tOB{spN*%q8AMXQB6=}y(evb$oZ1^7AIwF0U@DU)a&}nlRcw0 zKTPEQQGcr5_YD1Sr7a_~;DD@Ey;Q{fYT`l zz>j`Kozz*OQH=kSS3mjosbVqg$}bRur;s(Tg?+C}DgEBqz^K_YR7R6_>y{GBhILX8 zqlW0I9eXnJzdk4aRWe-wA~D2#l^xplG7ak!^$Ks#zL^Mr1tJ5@`xV2z(0J)$r#tb^ zjH+Ty@k`Ba=%k{FvL>>@SMAs%}X`tS{K>7jdwdd^Ps3#=!;`q-w)pBn@fYfj` zs`Jz+dq}8Ly-VPISX02<6#g&9gm0X$3Sepzqe_Eys&W@lW6Y1l^%(i{*nYB&dgXPv z$LEMpougD#WeQ=EH~padLl81`Rnj`8eBg;6#H@@=T5F=`B2wG~TZWWW++ijyMQ3#O z9_8QGl7$hd;3sY*^L%^w%b^_op4Dn(6yaiM;E z#*1qX)b=fb`j?5uVQQjI5TZ#Tq)~46sq)rV1r&&0mdgQB3%Q@YD#^3=easf@3p^?x z^KcIZfR&*T%FLTZoV-I>FSz_WMpaWd`ZpBnO&E|-iH--T6g9m4tx&3}74kNGc6I<# zfN}*^xXaI+Y){Z(vUNu60L-D#N#>*o`IpA(u&IPFN4oFF&mn%={A@k5x0M}Ovp+Lx z6E(kEUvc}zD^QMsx;;RBV*tn}Miotk?y&9oi5R7UN_==f2#{H-gd=P30>uM-rAQcX z1zNehWN`aa!%S85RX=1swNERkKLx1h@;6PK8n9}5i-8(u0HOK-btl%Exg0Vo@rsth zp%>#WITH*EZY@Wv9Qj@L-*9L2w{Sy37p^K~d3F|+bODv0TBUl(tRzt~Di92y-Y5j> zGxVQG%wW5?3PyDivqGxq`T8j!5fV6^TpKO{C@8x^ct%&LyyFszREz+`n#ir76li(3 zIUlv-NLzg|j~O*beQ7Fpu8v+>&PTQL?fD*{x~QKI7*+KwjtVvfu`$SB!6M@7Rc0y) zb-*j5Rx)P^;#GyvXVpGI#Fqb$5v26)dLN;95S%iXnNj0r2ddtd(np}4$pcg>hm4x7 z9YS?Q3$(K6PtR8^*fILgS^tSb=Z$u0pc45~TbyJEpo$T{;!-eWuUA5|XpR{bKy7m4 zPW%p3MED<|o=SWg+V(c8s@P0H$4(U%@)IF29SgnXKULT@ul@HXunH^j<|$a4$x`^I zl38&H#w1SP4f~45>TDBUZRhoiNybj~&Xp$)RLBF=bBPbcbjPUZmngIE8&Ng7m{OuJtX_A~orYNQuEzFJ>)epG(avM;uQRxHJ zP8v-Q8C7vLipg%%#)4*?VLt+=xI0he&mNO-77Ez{$*A1i5(l#jz^eSBV9>|oP&5zx zSwN(X2~(oLZLW<@cnXeNgn`rL+>LsGDvFW+h*7O)WGYIAy>+SpPXHz_0Lp2)3gGR4 z9Wqxq(@(1w(b1KxnrJM_tVz{9S3_~TG%FaeraBCCE z0mo9BhF|54>eqqljboJv#l-_u%t5JYqBMUTtlI5V5vPuVBg)sB8BIFxIFgkhW$+Sx zJ&!65Zd4r#!lZLeQHrPBHB;4qsfA-@ zE#ATCu&<8$OKZ!&wr#4_*M2%st%Yk~^|x5TO}n2NGiNc7PiQO3z-2Nu`? zToDo~5>POU1O@hLiO9I2DW!7w{U#J)YyroK7>?P}<{!Z&4X(Ea^HgHu&K#dE)-1rs<06#u29^MOQr-l`QiI(Kyr*tRMDpN6-b?61fl8g2N z3lYdF*m_qygj1yQ(Zg0HHRb9JMeuuIYrvB8Qh1&7#imxlU>evQ`&BEhs^$+VQdK}O zDO6j3>sp!vFrL1Uh_d;*=-S_UtxI!sCX>1rC)fVYjJo}y6n?&Ovc~yOtCJm)Le344y3zdTBqF4__s;<@ADI0x^vYwYiF(xb? zj0>h*dSl@~S-b(wa?A%pafXiW?oRP^>66^tmGZ{|T*i5+IKcL;fVypq%XSf|%SBF2 zQG!;%s4$`wVi>$&8lV8EnFtVSoofWX)tRhlVM;PelSs6i#f-hyzZcgP+;M z*EkiMlBWWiR*Y(v(K-ClP4LdRn2X=l>QWd@7?he4y(bLA4h-|#5=wv)jGF3qnxX>i zwzm1>W@~ja_j$*q+pAjUn2M=+Yd|ZKsNi$FPo<^+YQP!N5i^^!;rNX&o%e2W$|AdQS_aulF2zv+R#K|-sWkG2i!@7d-2hE!E7gjE_3| zlUXsx@0Sg-EG=GPSsV!dG63>lAc~pvj02^@_+I?5aF@y*QvB2t>`L7W_cF)ErFY7I zf6?o_hIXBLXCa@H!SjI(0$M9y5C;1=zcs1NkZ5W59LfLNvzHvlkst`7w(x`b z!tQ^j0VI+M_NdVHkxH6TyagixZVd<~2ymRjS@@3$C()`=e0^4IBnTk?TcaFOV(|iB z7;4o98`*?6F%pPc;->NC5Fy%V({~DWq-<1()>joJZlOxbg}j9c)$S*JbyY2b$lHWE zBn2Q)q6LfA`hp4?1Ss!kC=jc70luK7l(#ivOOzCwMlkWkKnhR@?`Jf$Y%B#|P$8~H z!*ulvXpl=qD3zH3O6dGu|VvEdKf7p0KNdMC_zh+%@}gk zSf36kq)JNJj3K)ScvYXHq?ktJqKt8F;c2193!;UXBArlAh5#i5uo{0&SEx3s#HPsA zggR_i3MGKQt#MIIffTu6j1mA3_-J)mYu^HUsAFV30g9H$g<7;cu+OE4s!i6~N91e_ z_hD5_ao1Rjk5U8>m6WoPo5l!)Xd|8xKM=nyswqahhYApYvWx+7ZzEVxMbU=FhlyH< zs*u16^=u4c%2gv+M2U?j&4WTc`t)z1j!`H;id9jg=0Tx0s-hM&0r{&jQV9gr5-;+Q zOttX}FA_dwi~>azfM_&s@NRG^DEU&TV-&DJiV`*68>&^yk^+=Z7^6TSwM1eY?}^jy zUu}}|31jpWDxi(kM}%64QKejXo#k`Jgu1E$+qj88RZCog-O2-IS;@Zn7s-V`E zo7b!A?TVYOPKgRuerk*m4zXl~3aA$NIMilMEo=j#HgXqZl#3KCX$oprppaXklAEEf zQukSYWQ?9eO-TV1RMgYZU34l7gvVo4*O^=MOta*(?iqbwl1 zKp++c!d@Z~|AYl7QFw5uV}dP<7E&T8evGQsLbPR-UG8X%>~$@Xoh#IM)+p}EF}b%f zpL@iJvShUenawJ^5;_=2PC$WU=x#~8wmI5e1WR2f2hO1dDK#mh}*YHGRWPdJE z%Yx-qjFEm6YIs#+q@M`2{E9K+dAsL)STB)X^NXR5e*mpz^h-YiBm4jW002ovPDHLk FV1nHmpF{uv diff --git a/packages/addons/service/touchscreen/source/resources/settings.xml b/packages/addons/service/touchscreen/source/resources/settings.xml deleted file mode 100644 index da8fd60acb..0000000000 --- a/packages/addons/service/touchscreen/source/resources/settings.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/packages/addons/service/touchscreen/source/service.py b/packages/addons/service/touchscreen/source/service.py deleted file mode 100644 index c1e44fbba6..0000000000 --- a/packages/addons/service/touchscreen/source/service.py +++ /dev/null @@ -1,2 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0 -# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) diff --git a/packages/addons/service/touchscreen/source/system.d/service.touchscreen.service b/packages/addons/service/touchscreen/source/system.d/service.touchscreen.service deleted file mode 100644 index 4d8a8c6064..0000000000 --- a/packages/addons/service/touchscreen/source/system.d/service.touchscreen.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=Touchscreen support daemon -After=graphical.target -Before=kodi.target - -[Service] -Type=oneshot -Environment=HOME=/storage -ExecStartPre=-/bin/sh -c "exec /bin/sh /storage/.kodi/addons/service.touchscreen/bin/ts_calibrate.sh service" -ExecStart=-/bin/sh -c "exec /bin/sh /storage/.kodi/addons/service.touchscreen/bin/ts_uinput_touch.sh service" -RemainAfterExit=yes - -[Install] -WantedBy=kodi.target