From fb4b1540370c1bc151323fbf6c961ae2c65058ba Mon Sep 17 00:00:00 2001 From: rdb Date: Mon, 3 Jan 2022 10:17:58 +0100 Subject: [PATCH 01/15] makepackage: Only add python-pmw as Recommends for deb for Python 2 There is no Pmw for Python 3 in the Ubuntu repositories --- makepanda/makepackage.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/makepanda/makepackage.py b/makepanda/makepackage.py index 6671b38eba..208a127ae2 100755 --- a/makepanda/makepackage.py +++ b/makepanda/makepackage.py @@ -394,12 +394,10 @@ def MakeInstallerLinux(version, debversion=None, rpmversion=None, rpmrelease=1, recommends = ReadFile("targetroot/debian/substvars_rec").replace("shlibs:Depends=", "").strip() provides = "panda3d" - if python2_ver or python3_ver: - recommends += ", python-pmw" - if python2_ver: depends += ", python%s" % (python2_ver) recommends += ", python-wxversion" + recommends += ", python-pmw" recommends += ", python-tk (>= %s)" % (python2_ver) provides += ", python2-panda3d" From c76ddd99584997b3e441fff908bd4c1e5c33a76a Mon Sep 17 00:00:00 2001 From: rdb Date: Mon, 3 Jan 2022 10:33:14 +0100 Subject: [PATCH 02/15] makepackage: Support building deb with more than one Python 3 version Ubuntu Hirsute, Impish, and presumably Jammy ship with both Python 3.9 and 3.10. Also, change the dependency specifications so that only one Python version is strictly required. --- makepanda/makepackage.py | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/makepanda/makepackage.py b/makepanda/makepackage.py index 208a127ae2..33ed1593c5 100755 --- a/makepanda/makepackage.py +++ b/makepanda/makepackage.py @@ -298,6 +298,8 @@ def MakeInstallerLinux(version, debversion=None, rpmversion=None, rpmrelease=1, elif version_info["version"] == sys_python3_ver: python3_ver = sys_python3_ver install_python_versions.append(version_info) + elif os.path.isdir("/usr/lib/python" + version_info["version"]): + install_python_versions.append(version_info) major_version = '.'.join(version.split('.')[:2]) if not debversion: @@ -394,17 +396,21 @@ def MakeInstallerLinux(version, debversion=None, rpmversion=None, rpmrelease=1, recommends = ReadFile("targetroot/debian/substvars_rec").replace("shlibs:Depends=", "").strip() provides = "panda3d" - if python2_ver: - depends += ", python%s" % (python2_ver) + # Require at least one of the Python versions we built for. + depends += ", " + " | ".join("python" + version_info["version"] for version_info in install_python_versions) + + # But recommend the system version of Python 3. + if python3_ver: + recommends += ", python3 (>= %s)" % (python3_ver) + recommends += ", python3-tk (>= %s)" % (python3_ver) + provides += ", python3-panda3d" + elif python2_ver: recommends += ", python-wxversion" recommends += ", python-pmw" recommends += ", python-tk (>= %s)" % (python2_ver) - provides += ", python2-panda3d" - if python3_ver: - depends += ", python%s" % (python3_ver) - recommends += ", python3-tk (>= %s)" % (python3_ver) - provides += ", python3-panda3d" + if python2_ver: + provides += ", python2-panda3d" if not PkgSkip("NVIDIACG"): depends += ", nvidia-cg-toolkit" From 822d8ce4c4fbc6dc2cab22fdca93bcc0d2fa4be7 Mon Sep 17 00:00:00 2001 From: rdb Date: Mon, 3 Jan 2022 11:31:54 +0100 Subject: [PATCH 03/15] Revert "pgraph: Don't dupe shared GeomVertexData when premunging Geom" This reverts commit f058bad802aa881a5604209afe5ef5bfd3d8fe35. Reverting because I realised the current behaviour is happening due to different mungers, which my fix ignores. Unfixes #1185 --- panda/src/pgraph/geomNode.cxx | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/panda/src/pgraph/geomNode.cxx b/panda/src/pgraph/geomNode.cxx index 367533dd46..a485851448 100644 --- a/panda/src/pgraph/geomNode.cxx +++ b/panda/src/pgraph/geomNode.cxx @@ -876,36 +876,17 @@ do_premunge(GraphicsStateGuardianBase *gsg, GeomTransformer &transformer) { Thread *current_thread = Thread::get_current_thread(); - // Cache munged vertex data, so that we don't duplicate vertex data - // unnecessarily. - std::map munged_vdata; - OPEN_ITERATE_CURRENT_AND_UPSTREAM(_cycler, current_thread) { CDStageWriter cdata(_cycler, pipeline_stage, current_thread); + GeomList::iterator gi; PT(GeomList) geoms = cdata->modify_geoms(); - for (GeomEntry &entry : *geoms) { + for (gi = geoms->begin(); gi != geoms->end(); ++gi) { + GeomEntry &entry = (*gi); CPT(RenderState) geom_state = node_state->compose(entry._state); CPT(Geom) geom = entry._geom.get_read_pointer(); PT(GeomMunger) munger = gsg->get_geom_munger(geom_state, current_thread); - - CPT(GeomVertexData) vdata = geom->get_vertex_data(); - - auto it = munged_vdata.find(vdata); - if (it != munged_vdata.end()) { - vdata = it->second; - } else { - CPT(GeomVertexData) old_vdata = std::move(vdata); - vdata = munger->premunge_data(old_vdata); - munged_vdata[std::move(old_vdata)] = vdata; - } - - CPT(Geom) pgeom = geom; - munger->premunge_geom(pgeom, vdata); - - PT(Geom) geom_copy = pgeom->make_copy(); - geom_copy->set_vertex_data(vdata); - entry._geom = std::move(geom_copy); + entry._geom = transformer.premunge_geom(geom, munger); } } CLOSE_ITERATE_CURRENT_AND_UPSTREAM(_cycler); From 524e2977ffaad96f6ebdc67ac37728bf8beb156a Mon Sep 17 00:00:00 2001 From: rdb Date: Mon, 3 Jan 2022 12:11:56 +0100 Subject: [PATCH 04/15] makepackage: Force use of xz compression for .deb files Impish defaults to zstd, which the version of reprepro on the hosting server doesn't support yet [skip ci] --- makepanda/makepackage.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makepanda/makepackage.py b/makepanda/makepackage.py index 33ed1593c5..e8dfbecbfb 100755 --- a/makepanda/makepackage.py +++ b/makepanda/makepackage.py @@ -427,7 +427,7 @@ def MakeInstallerLinux(version, debversion=None, rpmversion=None, rpmrelease=1, oscmd("chmod 644 targetroot/DEBIAN/control targetroot/DEBIAN/md5sums") if not runtime: oscmd("chmod 644 targetroot/DEBIAN/conffiles targetroot/DEBIAN/symbols") - oscmd("fakeroot dpkg-deb -b targetroot %s_%s_%s.deb" % (pkg_name, pkg_version, pkg_arch)) + oscmd("fakeroot dpkg-deb -Zxz -b targetroot %s_%s_%s.deb" % (pkg_name, pkg_version, pkg_arch)) elif rpmbuild_present: # Invoke installpanda.py to install it into a temporary dir From e3a49050a03a6ea79248184d98787d58b926c8f4 Mon Sep 17 00:00:00 2001 From: "Stephen A. Imhoff" Date: Mon, 3 Jan 2022 22:57:03 +0000 Subject: [PATCH 05/15] Correct location searched for 64-bit libc-2.24 --- makepanda/makepanda.py | 2 +- makepanda/makewheel.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/makepanda/makepanda.py b/makepanda/makepanda.py index 86011cb217..94215cba14 100755 --- a/makepanda/makepanda.py +++ b/makepanda/makepanda.py @@ -497,7 +497,7 @@ elif target == 'linux' and (os.path.isfile("/lib/libc-2.17.so") or os.path.isfil else: PLATFORM = 'manylinux2014-i686' -elif target == 'linux' and (os.path.isfile("/lib/i386-linux-gnu/libc-2.24.so") or os.path.isfile("/lib/x86_64/libc-2.24.so")) and os.path.isdir("/opt/python"): +elif target == 'linux' and (os.path.isfile("/lib/i386-linux-gnu/libc-2.24.so") or os.path.isfile("/lib/x86_64-linux-gnu/libc-2.24.so")) and os.path.isdir("/opt/python"): # Same sloppy check for manylinux_2_24. if GetTargetArch() in ('x86_64', 'amd64'): PLATFORM = 'manylinux_2_24-x86_64' diff --git a/makepanda/makewheel.py b/makepanda/makewheel.py index 124c44a713..f0cb5cda5d 100644 --- a/makepanda/makewheel.py +++ b/makepanda/makewheel.py @@ -558,7 +558,7 @@ def makewheel(version, output_dir, platform=None): platform = platform.replace("linux", "manylinux2010") elif os.path.isfile("/lib/libc-2.17.so") or os.path.isfile("/lib64/libc-2.17.so"): platform = platform.replace("linux", "manylinux2014") - elif os.path.isfile("/lib/i386-linux-gnu/libc-2.24.so") or os.path.isfile("/lib/x86_64/libc-2.24.so"): + elif os.path.isfile("/lib/i386-linux-gnu/libc-2.24.so") or os.path.isfile("/lib/x86_64-linux-gnu/libc-2.24.so"): platform = platform.replace("linux", "manylinux_2_24") platform = platform.replace('-', '_').replace('.', '_') From 08628dc97e49f10d4bef276aa41426ab1ae8b06c Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 10:09:36 +0100 Subject: [PATCH 06/15] windisplay: Support horizontal scroll wheel --- panda/src/windisplay/winGraphicsWindow.cxx | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/panda/src/windisplay/winGraphicsWindow.cxx b/panda/src/windisplay/winGraphicsWindow.cxx index 624c354781..992acbc2fb 100644 --- a/panda/src/windisplay/winGraphicsWindow.cxx +++ b/panda/src/windisplay/winGraphicsWindow.cxx @@ -33,6 +33,10 @@ #define WM_TOUCH 0x0240 #endif +#ifndef WM_MOUSEHWHEEL +#define WM_MOUSEHWHEEL 0x020E +#endif + #if WINVER < 0x0601 // Not used on Windows XP, but we still need to define it. #define TOUCH_COORD_TO_PIXEL(l) ((l) / 100) @@ -1725,6 +1729,31 @@ window_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { } break; + case WM_MOUSEHWHEEL: + { + int delta = GET_WHEEL_DELTA_WPARAM(wparam); + + POINT point; + GetCursorPos(&point); + ScreenToClient(hwnd, &point); + double time = get_message_time(); + + if (delta >= 0) { + while (delta > 0) { + handle_keypress(MouseButton::wheel_right(), point.x, point.y, time); + handle_keyrelease(MouseButton::wheel_right(), time); + delta -= WHEEL_DELTA; + } + } else { + while (delta < 0) { + handle_keypress(MouseButton::wheel_left(), point.x, point.y, time); + handle_keyrelease(MouseButton::wheel_left(), time); + delta += WHEEL_DELTA; + } + } + return 0; + } + break; case WM_IME_SETCONTEXT: if (!ime_hide) From c358f09f85e46d2dbbd848053762c1ae94ae391a Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 10:10:27 +0100 Subject: [PATCH 07/15] windisplay: Support lmeta, rmeta, and menu keys --- panda/src/windisplay/winGraphicsWindow.cxx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/panda/src/windisplay/winGraphicsWindow.cxx b/panda/src/windisplay/winGraphicsWindow.cxx index 992acbc2fb..ec366e4ec9 100644 --- a/panda/src/windisplay/winGraphicsWindow.cxx +++ b/panda/src/windisplay/winGraphicsWindow.cxx @@ -2575,6 +2575,10 @@ lookup_key(WPARAM wparam) const { case VK_LMENU: return KeyboardButton::lalt(); case VK_RMENU: return KeyboardButton::ralt(); + case VK_LWIN: return KeyboardButton::lmeta(); + case VK_RWIN: return KeyboardButton::rmeta(); + case VK_APPS: return KeyboardButton::menu(); + default: int key = MapVirtualKey(wparam, 2); if (isascii(key) && key != 0) { @@ -2742,7 +2746,7 @@ get_keyboard_map() const { unsigned short ex_vsc[] = {0x57, 0x58, 0x011c, 0x011d, 0x0135, 0x0137, 0x0138, 0x0145, 0x0147, 0x0148, 0x0149, 0x014b, 0x014d, 0x014f, 0x0150, 0x0151, 0x0152, 0x0153, 0x015b, 0x015c, 0x015d}; - for (int k = 1; k < 84 + 17; ++k) { + for (int k = 1; k < 84 + sizeof(ex_vsc) / sizeof(short); ++k) { if (k >= 84) { vsc = ex_vsc[k - 84]; } else { From d1c756713dfbb28034af493025e702405571a789 Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 10:10:58 +0100 Subject: [PATCH 08/15] display: Handle raw event for key between Shift and Z on ISO keyboards This key is called raw-< for lack of anything better, it's usually mapped as backslash on US keyboards but that would not allow distinguishing between the backslash key near the enter key. --- panda/src/cocoadisplay/cocoaGraphicsWindow.mm | 1 + panda/src/device/evdevInputDevice.cxx | 2 +- panda/src/windisplay/winGraphicsWindow.cxx | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/panda/src/cocoadisplay/cocoaGraphicsWindow.mm b/panda/src/cocoadisplay/cocoaGraphicsWindow.mm index df80308b62..87a3c96777 100644 --- a/panda/src/cocoadisplay/cocoaGraphicsWindow.mm +++ b/panda/src/cocoadisplay/cocoaGraphicsWindow.mm @@ -2261,6 +2261,7 @@ map_raw_key(unsigned short keycode) const { case 0x07: return KeyboardButton::ascii_key('x'); case 0x08: return KeyboardButton::ascii_key('c'); case 0x09: return KeyboardButton::ascii_key('v'); + case 0x0A: return KeyboardButton::ascii_key('<'); case 0x0B: return KeyboardButton::ascii_key('b'); case 0x0C: return KeyboardButton::ascii_key('q'); case 0x0D: return KeyboardButton::ascii_key('w'); diff --git a/panda/src/device/evdevInputDevice.cxx b/panda/src/device/evdevInputDevice.cxx index c4d293eb91..05507086b1 100644 --- a/panda/src/device/evdevInputDevice.cxx +++ b/panda/src/device/evdevInputDevice.cxx @@ -962,7 +962,7 @@ map_button(int code, DeviceClass device_class, int quirks) { KeyboardButton::ascii_key('.'), ButtonHandle::none(), ButtonHandle::none(), - ButtonHandle::none(), + KeyboardButton::ascii_key('<'), KeyboardButton::f11(), KeyboardButton::f12(), ButtonHandle::none(), diff --git a/panda/src/windisplay/winGraphicsWindow.cxx b/panda/src/windisplay/winGraphicsWindow.cxx index ec366e4ec9..4bc914e976 100644 --- a/panda/src/windisplay/winGraphicsWindow.cxx +++ b/panda/src/windisplay/winGraphicsWindow.cxx @@ -2724,6 +2724,7 @@ lookup_raw_key(LPARAM lparam) const { // A few additional keys don't fit well in the above table. switch (vsc) { + case 86: return KeyboardButton::ascii_key('<'); // Between lshift and z case 87: return KeyboardButton::f11(); case 88: return KeyboardButton::f12(); default: return ButtonHandle::none(); @@ -2743,7 +2744,7 @@ get_keyboard_map() const { wchar_t text[256]; UINT vsc = 0; - unsigned short ex_vsc[] = {0x57, 0x58, + unsigned short ex_vsc[] = {0x56, 0x57, 0x58, 0x011c, 0x011d, 0x0135, 0x0137, 0x0138, 0x0145, 0x0147, 0x0148, 0x0149, 0x014b, 0x014d, 0x014f, 0x0150, 0x0151, 0x0152, 0x0153, 0x015b, 0x015c, 0x015d}; for (int k = 1; k < 84 + sizeof(ex_vsc) / sizeof(short); ++k) { From 210f7aecfb8bf109eee989b975162a896ff3a6cf Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 11:06:25 +0100 Subject: [PATCH 09/15] x11: Support mouse buttons 4 and 5 --- panda/src/x11display/x11GraphicsWindow.cxx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/panda/src/x11display/x11GraphicsWindow.cxx b/panda/src/x11display/x11GraphicsWindow.cxx index 25d18a96cf..8548d05eea 100644 --- a/panda/src/x11display/x11GraphicsWindow.cxx +++ b/panda/src/x11display/x11GraphicsWindow.cxx @@ -1990,6 +1990,8 @@ get_mouse_button(XButtonEvent &button_event) { return MouseButton::wheel_left(); } else if (index == x_wheel_right_button) { return MouseButton::wheel_right(); + } else if (index >= 8) { + return MouseButton::button(index - 5); } else { return MouseButton::button(index - 1); } From 6935d2badc3a748f05e5f98f1e73ffc360fa4801 Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 15:20:28 +0100 Subject: [PATCH 10/15] dist: Add support for tkinter Requires adding `tkinter` to `requirements.txt`. For now, wheels are only provided for Python 3.6 and up. Fixes #780 --- direct/src/dist/FreezeTool.py | 8 ++++- direct/src/dist/commands.py | 57 +++++++++++++++++++++++------------ 2 files changed, 45 insertions(+), 20 deletions(-) diff --git a/direct/src/dist/FreezeTool.py b/direct/src/dist/FreezeTool.py index c8b42263fe..79fc0f5133 100644 --- a/direct/src/dist/FreezeTool.py +++ b/direct/src/dist/FreezeTool.py @@ -2332,7 +2332,13 @@ class PandaModuleFinder(modulefinder.ModuleFinder): return None try: - fp = zip.open(fn.replace(os.path.sep, '/'), 'r') + zip_fn = fn.replace(os.path.sep, '/') + if zip_fn.startswith('deploy_libs/_tkinter.'): + # If we have a tkinter wheel on the path, ignore the + # _tkinter extension in deploy-libs. + if any(entry.endswith(".whl") and os.path.basename(entry).startswith("tkinter-") for entry in self.path): + return None + fp = zip.open(zip_fn, 'r') except KeyError: return None diff --git a/direct/src/dist/commands.py b/direct/src/dist/commands.py index 061f641e67..609707a916 100644 --- a/direct/src/dist/commands.py +++ b/direct/src/dist/commands.py @@ -114,6 +114,7 @@ PACKAGE_DATA_DIRS = { ], 'pytz': [('pytz/zoneinfo/*', 'zoneinfo', ())], 'certifi': [('certifi/cacert.pem', '', {})], + '_tkinter_ext': [('_tkinter_ext/tcl/**', 'tcl', {})], } # Some dependencies have extra directories that need to be scanned for DLLs. @@ -147,21 +148,6 @@ import __builtin__ __builtin__.__import__ = __import__ __builtin__.__file__ = sys.executable del __builtin__ - -# Set the TCL_LIBRARY directory to the location of the Tcl/Tk/Tix files. -import os -tcl_dir = os.path.join(os.path.dirname(sys.executable), 'tcl') -if os.path.isdir(tcl_dir): - for dir in os.listdir(tcl_dir): - sub_dir = os.path.join(tcl_dir, dir) - if os.path.isdir(sub_dir): - if dir.startswith('tcl'): - os.environ['TCL_LIBRARY'] = sub_dir - if dir.startswith('tk'): - os.environ['TK_LIBRARY'] = sub_dir - if dir.startswith('tix'): - os.environ['TIX_LIBRARY'] = sub_dir -del os """ # site.py for Python 3. @@ -196,7 +182,11 @@ def get_data(path): FrozenImporter.find_spec = find_spec FrozenImporter.get_data = get_data +""" +# This addendum is only needed for legacy tkinter handling, since the new +# tkinter package already contains this logic. +SITE_PY_TKINTER_ADDENDUM = """ # Set the TCL_LIBRARY directory to the location of the Tcl/Tk/Tix files. import os tcl_dir = os.path.join(os.path.dirname(sys.executable), 'tcl') @@ -204,7 +194,7 @@ if os.path.isdir(tcl_dir): for dir in os.listdir(tcl_dir): sub_dir = os.path.join(tcl_dir, dir) if os.path.isdir(sub_dir): - if dir.startswith('tcl'): + if dir.startswith('tcl') and os.path.isfile(os.path.join(sub_dir, 'init.tcl')): os.environ['TCL_LIBRARY'] = sub_dir if dir.startswith('tk'): os.environ['TK_LIBRARY'] = sub_dir @@ -592,6 +582,7 @@ class build_apps(setuptools.Command): path = sys.path[:] p3dwhl = None wheelpaths = [] + has_tkinter_wheel = False if use_wheels: wheelpaths = self.download_wheels(platform) @@ -601,6 +592,8 @@ class build_apps(setuptools.Command): p3dwhlfn = whl p3dwhl = self._get_zip_file(p3dwhlfn) break + elif os.path.basename(whl).startswith('tkinter-'): + has_tkinter_wheel = True else: raise RuntimeError("Missing panda3d wheel for platform: {}".format(platform)) @@ -613,6 +606,11 @@ class build_apps(setuptools.Command): distutils.log.WARN ) + for whl in wheelpaths: + if os.path.basename(whl).startswith('tkinter-'): + has_tkinter_wheel = True + break + #whlfiles = {whl: self._get_zip_file(whl) for whl in wheelpaths} # Add whl files to the path so they are picked up by modulefinder @@ -756,9 +754,14 @@ class build_apps(setuptools.Command): return search_path def create_runtime(appname, mainscript, use_console): + site_py = SITE_PY + if not has_tkinter_wheel: + # Legacy handling for Tcl data files + site_py += SITE_PY_TKINTER_ADDENDUM + freezer = FreezeTool.Freezer(platform=platform, path=path) freezer.addModule('__main__', filename=mainscript) - freezer.addModule('site', filename='site.py', text=SITE_PY) + freezer.addModule('site', filename='site.py', text=site_py) for incmod in self.include_modules.get(appname, []) + self.include_modules.get('*', []): freezer.addModule(incmod) for exmod in self.exclude_modules.get(appname, []) + self.exclude_modules.get('*', []): @@ -835,6 +838,12 @@ class build_apps(setuptools.Command): for appname, scriptname in self.console_apps.items(): create_runtime(appname, scriptname, True) + # Warn if tkinter is used but hasn't been added to requirements.txt + if not has_tkinter_wheel and '_tkinter' in freezer_modules: + # The on-windows-for-windows case is handled as legacy below + if sys.platform != "win32" or not platform.startswith('win'): + self.warn("Detected use of tkinter, but tkinter is not specified in requirements.txt!") + # Copy extension modules whl_modules = [] whl_modules_ext = '' @@ -849,6 +858,11 @@ class build_apps(setuptools.Command): if not any(i.endswith(suffix) for suffix in ext_suffixes): continue + if has_tkinter_wheel and i.startswith('deploy_libs/_tkinter.'): + # Ignore this one, we have a separate tkinter package + # nowadays that contains all the dependencies. + continue + base = os.path.basename(i) module, _, ext = base.partition('.') whl_modules.append(module) @@ -917,8 +931,8 @@ class build_apps(setuptools.Command): self.copy_with_dependencies(source_path, target_path, search_path) # Copy over the tcl directory. - #TODO: get this to work on non-Windows platforms. - if sys.platform == "win32" and platform.startswith('win'): + # This is legacy, we nowadays recommend the separate tkinter wheel. + if sys.platform == "win32" and platform.startswith('win') and not has_tkinter_wheel: tcl_dir = os.path.join(sys.prefix, 'tcl') tkinter_name = 'tkinter' if sys.version_info >= (3, 0) else 'Tkinter' @@ -952,9 +966,14 @@ class build_apps(setuptools.Command): target_dir = os.path.join(builddir, target_dir) for wf in filenames: + if wf.endswith('/'): + # Skip directories. + continue + if wf.lower().startswith(source_dir.lower() + '/'): if not srcglob.matches(wf.lower()): continue + wf = wf.replace('/', os.sep) relpath = wf[len(source_dir) + 1:] source_path = os.path.join(whl, wf) From 67b89983acef147d04aa55d10ea7bd71c26030eb Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 15:25:19 +0100 Subject: [PATCH 11/15] dist: Also accept manylinux wheels when requesting generic linux tag --- direct/src/dist/commands.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/direct/src/dist/commands.py b/direct/src/dist/commands.py index 609707a916..cb3fbc34df 100644 --- a/direct/src/dist/commands.py +++ b/direct/src/dist/commands.py @@ -476,10 +476,18 @@ class build_apps(setuptools.Command): '-d', whldir, '-r', self.requirements_path, '--only-binary', ':all:', - '--platform', platform, '--abi', abi_tag, + '--platform', platform, ] + if platform.startswith('linux_'): + # Also accept manylinux. + arch = platform[6:] + if sys.version_info >= (3, 10): + pip_args += ['--platform', 'manylinux2010_' + arch] + else: + pip_args += ['--platform', 'manylinux1_' + arch] + if self.use_optimized_wheels: pip_args += [ '--extra-index-url', self.optimized_wheel_index From 4ce5efb0449b36c77c6d015d89378cc4dcefbcd4 Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 15:29:47 +0100 Subject: [PATCH 12/15] makewheel: Remove _tkinter.so from Panda3D wheels It is nowadays supplied in a separate wheel, see also #780 Keep it in the Windows wheel for now since that's the only platform where deploying without a separate tkinter wheel is currently supported, but will remove it on master branch --- makepanda/makewheel.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/makepanda/makewheel.py b/makepanda/makewheel.py index f0cb5cda5d..2e1b18ec45 100644 --- a/makepanda/makewheel.py +++ b/makepanda/makewheel.py @@ -673,6 +673,10 @@ __version__ = '{0}' for file in os.listdir(ext_mod_dir): if file.endswith(ext_suffix): + if file.startswith('_tkinter.') and sys.platform not in ('win32', 'cygwin'): + # Tkinter is supplied in a separate wheel. + continue + source_path = os.path.join(ext_mod_dir, file) if file.endswith('.pyd') and platform.startswith('cygwin'): From b2aa5beb96c266533fb6b93fc45babc74ea31cb5 Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 15:33:31 +0100 Subject: [PATCH 13/15] Use 1.10.11 thirdparty tools --- .github/workflows/ci.yml | 12 ++++++------ README.md | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 104acdde0c..bdc640961a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,16 +20,16 @@ jobs: shell: powershell run: | $wc = New-Object System.Net.WebClient - $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-win64.zip", "thirdparty-tools.zip") + $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.11/panda3d-1.10.11-tools-win64.zip", "thirdparty-tools.zip") Expand-Archive -Path thirdparty-tools.zip - Move-Item -Path thirdparty-tools/panda3d-1.10.10/thirdparty -Destination . + Move-Item -Path thirdparty-tools/panda3d-1.10.11/thirdparty -Destination . - name: Get thirdparty packages (macOS) if: runner.os == 'macOS' run: | - curl -O https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-mac.tar.gz - tar -xf panda3d-1.10.10-tools-mac.tar.gz - mv panda3d-1.10.10/thirdparty thirdparty - rmdir panda3d-1.10.10 + curl -O https://www.panda3d.org/download/panda3d-1.10.11/panda3d-1.10.11-tools-mac.tar.gz + tar -xf panda3d-1.10.11-tools-mac.tar.gz + mv panda3d-1.10.11/thirdparty thirdparty + rmdir panda3d-1.10.11 (cd thirdparty/darwin-libs-a && rm -rf rocket) - name: Set up Python 3.9 uses: actions/setup-python@v2 diff --git a/README.md b/README.md index 1b3cd3d1bf..1fb6d99fb3 100644 --- a/README.md +++ b/README.md @@ -64,8 +64,8 @@ depending on whether you are on a 32-bit or 64-bit system, or you can [click here](https://github.com/rdb/panda3d-thirdparty) for instructions on building them from source. -- https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-win64.zip -- https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-win32.zip +- https://www.panda3d.org/download/panda3d-1.10.11/panda3d-1.10.11-tools-win64.zip +- https://www.panda3d.org/download/panda3d-1.10.11/panda3d-1.10.11-tools-win32.zip After acquiring these dependencies, you can build Panda3D from the command prompt using the following command. Change the `--msvc-version` option based @@ -136,7 +136,7 @@ macOS ----- On macOS, you will need to download a set of precompiled thirdparty packages in order to -compile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.10/panda3d-1.10.10-tools-mac.tar.gz). +compile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.11/panda3d-1.10.11-tools-mac.tar.gz). After placing the thirdparty directory inside the panda3d source directory, you may build Panda3D using a command like the following: From 28b566726a509acfb85920848222234df8b87b80 Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 15:14:16 +0100 Subject: [PATCH 14/15] dist: Suppress spurious warnings about missing tkinter modules [skip ci] --- direct/src/dist/FreezeTool.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/direct/src/dist/FreezeTool.py b/direct/src/dist/FreezeTool.py index 79fc0f5133..1e5554afa9 100644 --- a/direct/src/dist/FreezeTool.py +++ b/direct/src/dist/FreezeTool.py @@ -123,12 +123,16 @@ if sys.version_info < (3, 0): 'direct.showbase.PythonUtil': ['builtins'] + ignoreImports['direct.showbase.PythonUtil'], 'direct.showbase.ShowBase': ['builtins'], 'direct.showbase.ShowBaseGlobal': ['builtins'], + 'direct.showbase.TkGlobal': ['tkinter'], + 'direct.tkpanels.TaskManagerPanel': ['tkinter'], + 'direct.tkwidgets.WidgetPropertiesDialog': ['tkinter'], 'py._builtin': ['builtins'], }) else: # And ignore attempts to conditionally import __builtin__ in Python 3, # suppressing a warning message. ignoreImports.update({ + 'direct.directtools.DirectSession': ['tkSimpleDialog'], 'direct.p3d.AppRunner': ['__builtin__'], 'direct.showbase.ContainerLeakDetector': ['__builtin__'], 'direct.showbase.LeakDetectors': ['__builtin__'], @@ -138,6 +142,17 @@ else: 'direct.showbase.PythonUtil': ['__builtin__'] + ignoreImports['direct.showbase.PythonUtil'], 'direct.showbase.ShowBase': ['__builtin__'], 'direct.showbase.ShowBaseGlobal': ['__builtin__'], + 'direct.showbase.TkGlobal': ['Tkinter'], + 'direct.tkpanels.AnimPanel': ['tkFileDialog', 'tkSimpleDialog'], + 'direct.tkpanels.FSMInspector': ['tkSimpleDialog'], + 'direct.tkpanels.MopathRecorder': ['tkFileDialog'], + 'direct.tkpanels.ParticlePanel': ['tkFileDialog', 'tkSimpleDialog'], + 'direct.tkpanels.TaskManagerPanel': ['Tkinter'], + 'direct.tkwidgets.AppShell': ['tkFileDialog'], + 'direct.tkwidgets.EntryScale': ['tkColorChooser', 'tkSimpleDialog'], + 'direct.tkwidgets.Valuator': ['tkColorChooser'], + 'direct.tkwidgets.VectorWidgets': ['tkColorChooser'], + 'direct.tkwidgets.WidgetPropertiesDialog': ['Tkinter'], 'py._builtin': ['__builtin__'], }) From e759e4a15283e8c20fd123de0d98051c16b10238 Mon Sep 17 00:00:00 2001 From: rdb Date: Tue, 4 Jan 2022 17:31:02 +0100 Subject: [PATCH 15/15] models: Remove obsolete and unused plugin_images folder [skip ci] --- models/plugin_images/auth_click.png | Bin 5444 -> 0 bytes models/plugin_images/auth_ready.png | Bin 5826 -> 0 bytes models/plugin_images/auth_rollover.png | Bin 5949 -> 0 bytes models/plugin_images/download.png | Bin 19140 -> 0 bytes models/plugin_images/failed.png | Bin 22640 -> 0 bytes models/plugin_images/installer.bmp | Bin 154542 -> 0 bytes models/plugin_images/panda3d.icns | Bin 75623 -> 0 bytes models/plugin_images/play_click.png | Bin 5327 -> 0 bytes models/plugin_images/play_ready.png | Bin 5681 -> 0 bytes models/plugin_images/play_rollover.png | Bin 5909 -> 0 bytes 10 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 models/plugin_images/auth_click.png delete mode 100644 models/plugin_images/auth_ready.png delete mode 100644 models/plugin_images/auth_rollover.png delete mode 100644 models/plugin_images/download.png delete mode 100644 models/plugin_images/failed.png delete mode 100644 models/plugin_images/installer.bmp delete mode 100644 models/plugin_images/panda3d.icns delete mode 100644 models/plugin_images/play_click.png delete mode 100644 models/plugin_images/play_ready.png delete mode 100644 models/plugin_images/play_rollover.png diff --git a/models/plugin_images/auth_click.png b/models/plugin_images/auth_click.png deleted file mode 100644 index 29645ea984e0ce7b9aa356aeedc7e36df7597f87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5444 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 diff --git a/models/plugin_images/download.png b/models/plugin_images/download.png deleted file mode 100644 index 3f330920b9ca0d561371940969f95a2226173bac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19140 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 diff --git a/models/plugin_images/failed.png b/models/plugin_images/failed.png deleted file mode 100644 index eee6342ec4bf847f39b609ed40548ddde0b9fd9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22640 zcmb@uWmuGL7d1SDFd!`;-AYP{fOMC%prDe9ib{8PDASLanl;qGMB_$G) z@1FblzTfYk_dd}35QdrSI?sLXz1G@mUlF?6s>FnJga`zJSY1s?AA!Jnr@6ebE%VhboNEG#8cgm;frRWBH>cUZ)GVjMcVt;$EO2wz;3*og63 zVpOF$TGS{hq^Jn)r+3+ri#p1j2CpZESyedY)h_StM<0>;Tue*H`x{0^M*dupG&D4F zW@gO(kydJaEh_NQp%&%U)xrDwE*umD?{7Q(`k3Uqgjoow;L?qH?|;IT6MT61_(Fn$ zh)|2HA|5`}h)0t#T0v%L=>`omGhAp; zzV(2JO@GYV;R%)j-yQWhDQof}33P>Z?0Ys29xxv^FrX4ptXWDWvx z{rdIT{uLoHF*h=l4KL>U8KX-#j%E&9@J+@X7CH&wQ+q3khDAu1cBzyDSdcXI^c@Qe zIq_Bpgg+Te;WJ?oxROz@Ac90V`PN?qiFTy6pA0MM1;cA;X#6?UOH4)cE)Tje_RE~` zY2;Dl=jW3V;jyCr)JDWK%YA(zoI><S329-L~Y0Mc~rm1CGwl88<%C$>Zvg;eITN92qf$ zOAQFXA|fGS`of##%&U6CKiFIlX=qqcSsCcG^26iH;+h8ePZ8qb;bE>s4KiG;v$HeU zxdE56wv3=faZX>gz&=di>FD$aNaN>8retKOWb3y5{7ESutypLvQMvNVgGs8NJ?;CK zS{qF*Eyf8aW@?kGS2XkV>s>eL5G)iC=I-t^p%%ZJ60)c}1R;)%lDc+w1Pu(kzI`LY zm2c~d=VXms2#{gUldN~&WrOcWT;W8_sa+!b=w0d~!>pvIbUps|(25LS<5!B$J}0$z z&twDz{q4m++kD$*u`s3%WMPT#Gq=!+}_H9zhGRtbDrF9)bTT|2D;$4yN3sny?)Lv)A z71-O^e?Q!$7VqhjWN2Ow;>`4>n75}13JMw!Dape|8u0MAXN0jJ;b7k|LCMekdpB3} za;&_zHgsmjl!%C^TDhjl20b7`4EM9KvGFb=qx(4#D@6| zKsNi*+pC7Yh=&x%p$^HTXL6E`>I?s`lxG?8{K<;KDM~D4{yAJXB22cO-{r4Wuk^3% zmH46$LO7M};RFP-%)xR(SlV1soggtzO7A45`m(iz$wfs)kRNbRl{OpA^}8o$2Ds=q zE17;X5haYySbr^Yxd;Q>S-N|ADjFL#Ldv69nh`xcJy==Gv~y2cx|KOUxkySS(ioeV zbS*5f!OIxqn};C>z$PgwDjGd_@a6RM^9ug7v!ssnKBeYx=lD2{v&r_mCqY)m8EVn) zD!48tJ#Xm6$fCO5zj{!h&!3FRq{@2si`~RKQabd4?g<5%zI2f}=8ld-6E7yX-{lh| zS+xsl7AIEKqhm1;a+B zrun<=Br8LCcaR|pt7~g(tK&8ISKaUI9BiV)mDtRUYuVSa+@fsIkhp1>m_qwkI$+r( z&eQ7B8ldutXes*nwQ{ypHT$7Z9OaFTk%@^^n3Lpb zoM0k&^CnL8A{j{-Iwx&VesE38P;!(4J_}ADTq9%M%_n8B&hzsY$Uy&;l$3h{VU?FP zhm|DKRm{vXS7gd$GRsEpj9+Es4V-vIEtA* ztJ@)i({KWiVI8noKeTBjJ{9`F&*uI`OOB)}jO|A=Gou|SGBonq_N2UJGC4P})0Fin ziAYI1D*3+k_t$yePO#CX?E1HGK=I`M-2y)>xA#cwL_X_+g5^U%F_5AwjEF8@zFcBT zVnq*SQz1KcMJaYse7yFJ9LvCZ-tVaB%0Z_F20$qND;p2)kH3NA$iSc^nwE!Nn`98^ zE~5<%C@NwU2xPP(cv@v_lypg+OzJRT@-h@cD`TjF>lAgj(`TH@m^gT+#>U1L5`V`; zQ^+GSctxfKB6G6J%1A>L0+LYG+<`1vkNE36Y4J&V95Ti)ri9qup_a|ju8F*wF&gHR z+lTBlL_>}#qSu&Wat(M~yt&nH)Y`at>*KDnkn>Rz{?No(C%m6)O=np_Gdeo@pqWyG zkwe|_!Jrobs#0qHm)lQ2WkbV$pI8!XlQHtBE~)ucciJ)^4^-vUt~z;Ekdm&UA;63V z;h-P@a&RB&ae`uEW9!Sh>wqoZet#-$aT_bqJqtDiFQ~-yYs(sv{M)i)Ip1Z7nnkgf z%+#S4EDR)flk2tCwzpNYb$67Ah(A7Qx}_C_!7K3kaEW$>?76;oU*&T)B(MVz!YPm? z6bb?tL?gR{uYWR)ZyIKO#6V?%VJnTH9U(e5`a-gR3QV$ zQZp38)O;837_qYXy?=0l6)i2%6%`fI$(|$k@MBTyXUI(hFVsH*VNSHqhCzaZX%7Ov2bgz);}f2 zuS`m}Oj?qvwn1OH$1=dm_M9e^Q!I;F1a6iL$&%TBm;9BYr7jrjC=?XSjOi5O}DDEeN;hb~W_0EI%q#ztQ=>W?dawp{avW#us!<%|7?9xT<( z$RQK5rl4269~8!C{_gM3mo{xFh^8q+-VkTNE4L09srrk=x7ysi1ZR6g0y2sSo%Ej- zS)xf(Ty<`&?<8U|EXY`^h7nZO@3xA^J%Yl*fdCeqCEloUV24`Jjh@zM9K8@C!jbCt z%HK)Di{VP37QTI(05V`@B{sTtaCSE4mFULr*Dvq~o!F6q!wtQ>a8b1nV_QxC$>);3 zxXC>Cl;?ncI(mWl$NSrhM9(-C;OtCR%5wDY#ac}`%r?t;aceR{p>#IE@88ok-0#hB zYqC+39C>=HQA^sj2<2!t`pxya#xuvQsoR=5I+BW$XhS4%hrb0)hI%A|ktI+rFZ8P* z5vQr+!0&3}KA*Hn7sl%~4g*g+%crL}HTK?1dr^zo&2*+qx37J7+iZ*UOkSX!ov7Kt}R;ad2!i~_Rv@-iz2`ab(xHPom*jkD6OiJhH5 zWEY#}@KlAgoNpl9dOm_mWwh0nFshVKFst{_y zaDO~1vm}~KJ}d4PYS|HBD_|6DqSxVO(s#(lc_?k?i<^DLeve&~QA?gYdzWvWQ&8~i z{$XylEC9IdFs8twq93>I4bY=%ni&=}ItPWnX~=)Ct;vfssPH5zG(1v)%N^Gt{%E(q zX?XNtjbi(tfi`qkGm2f~7QDgF!n**?{&_RCoA0P;WJAp<-H7GryLl2a?fe>v-F9|3 zOB!kcSs7nhkBl&+NQrDbb?M{ER-^S8&7AAchq?VLK{;F**3RmMIwEu!ZUKZ>BQI`| ziV?#cl2HLG9y*O*nE*k(RqI^K9eX{pqO7LRk)l}( ztd89rKpudvd~1pM?4VGi0EQk`iU{{1Dm)2Y+<+IXk4#OwkB=qT-iBXcUc0`FGbfTP z{@SB9;lRq#kpd`)AsK$U5D6|eMh!3?9X2avjnrgtw zSRp3~Ybwf({EvSCKYF>Z&!zgBLtWhWRQ&65!&DH?%gkF*};D2`FoIb5l86SFX@tvWg5ZNS-oE z`FSc{#)^=PjPFjA%}s#R2tjf2aIdWfd{|$Im8hsFz;+onyw{M}K>EF9m?!nD)zUu&T3OM4y#dzw&H#9OaZM6`)$ z@$vCNhQ-Ckf*RC#iPw(!_2w?+I^f*WM-ABWWSBbfN)+wd@$w)Lprx^K`_d8zx%~fc?LH`v$+y*`8fgH2iJ^14MD*;yAA`kc2rL{5J0I8Jc!C#l?cipKn;n2%6pQ zX={@kc{HXCHv$-{y^>Grbf*KbU*4O(Wk>h(e=Cr-+XaED%L&pz96`nfZYq~>qjO z0P@rX?2n&ZK137{cLLWDo4Y}93;Lw&kfQy+?z$UY_v zKoCB5adDYV+*c*&aez>3ctqkh>mznXc9#oZX$%g(rlw}w${uUFw%fNOxj14b28Iut zd)x^)A9$6?5KuvJw1(m06tZ=TldEoUkkBA;?bm-60$otpr8MCUl*uH8*m6u&sV(-R zMdHTxJ%O6H)qFVf-zym46$s#q1H;2m;)&Jc+A25qU60OufqLi{DlPg`eq|jredcrd z-TU{>MZaCPJc?%|Kxy5XjIo4+jMVFo^LAqfg5UYPf=F-xnZ9 zRzDUAaSV5EMq*P9rlh7S0KKj-dS!jW0tFW9!$}}_LPuES93F@RG>nX0z{5qfBpt`z zSU}CJlf+hQ>d@s1)46Yx_A-?BeyO>K2kovq15o0IM?YwP`x*f|(&Y;N_s_#9 zN!i4la2c7+W)!xzW(`ym06mZ`2q;F4lN&<|YI>BPN=p^UaHn9~O$NUwD_CFsh!mY$ zA1O9^^avx@(a~Y+TG!i?*}@o0Twjy!@=j2pn(VybxgR{O+W0dgQV-* znwiw7%f*QJpY%Oo;{lP+PcF87NfUb0 z?wG5buXx_8ZO?neg`vkVA_uBf{|XMGoNptTMoCX<$U z1uRH&nr@F9d?1NE>P)p0fPFfqhvF!LW<%ug0N& z?UhpX3*~2J73!A8TcML<4JP6cQn=Uwp@%Mtm4D=xeRvZ!5D4QWR+KOw>dW!5XQD0z zE5}8cx!~&Uv9w5*MI@K_Sxl< zpqBR<4s%;d7&C^)^*BH*rsm&fD=2y~9e<04DA0liihNJ%qIjuBC*2uImi5&`mdJ)Q zAEL_cr?#!}Mpx>_p^8uvjx-ZH>>C;?R~W%Lhjjyp0eM?a`CU(UcM)#=T~LY=6uW9| zo~MT9{qy*|8|I5d)!E_HzG?mUE5`CU(%%^S6>a&GHvQeZvJO}J%?z=Uy6*TL7woo? zo+3g+L!px3sK>EHvMK3((s&O6@&2?%_7J5PIV~@G09bOS&Xd=0ovU%^J| zy1jD@2gyWPZ|7UQ&Vm#3G1)8B7hU1V9@7h!w$;)Od_igi{h{nsQ1Zo`M9aaU$Hx%t zmeaQ}bDXn(uLJeBXIQCkuyu6`9BaDK@NLs|^nqNH2MNVX^rplVGH|ZGbbo4oy1v)T zqN(Q=Q4k#B1W#ZGkNCqZD}csja}fflmD%~>rof%Z(-%AIdF_K5jbIca*9MtIP)==b zsQvr09c|axxi1}J=UZ}1@Kvc}t}pXD(drapHDhChw6`N}Y2hFMpY;?aSWS3H18(no z<4OIr+2tppQf`fCrBQ^}c1wmxvi-&8xiC~D!~VNXXqC7Rjr}!O2}2Y*+$}kwfmZp< z*+lhvygUR#4jkvpQvHgQ$`C_;4-OU{UTpZyueY9FHb>WAyygCUO0|Mjj1c@1ilCz+ z556Rr81MW1T|2$61I_kX=4HWK#D0h8hl}HWXJxS*1dxpwdPZ(&71pe-o2=v;@macd zD7!^z+JFc(y;+&FCCs#t)MUMsKi2f=;5^^jR((7c9h(`Vki9N+Gv##^Q(QXdHOZ}D ziVi_YML&F|Eoq~=)>}p&@!xmJ)DDYe$+Lc93`hEk#6Q>fAyCAoZ(tvmWD>SCYV z`a8j}RBQazeTlm|G}AdFYT+-Lhb#G16X<>9X+rf3k=mU>QcH>ZBI zP-j6J; zv9T*~f?tU2jmlfp@_ROmtjaT+)+YI>?K{%#FP8|n6MnLe&f1RZZK%X&E?s_2sTyzZ zZ-X|xG+ILwDt|*hQcOszswh42;a?RM6&7TmljD{4;*j@hb(wxlnHM`@ywvwOf_rBF zG!l;`&%PiCtnXAp&>*feo$Zo)pR!+eKi9zew`?`#@r(8~gcXLOz_v4Y=}pyo1aU1Rqc>92^`79Yao6`fxk-|KAI6lb@M8;$M~9 zXPgHOj~s&h4z*(0$nW#T_B74xam?&z*kRWav-z6+8$Vq9ZGfO6e}Xk$zcbpj8=86i zY&2i5DMUb`lI-$w-nRtADR@+ZYT8GN2Dulk`cVoGB+VMkGGz zI}@PkMEN~Onw|WisCJ|^J6l!VwVOFofouh9*)y`}fq|26)eK6aPJK5)~Ud~8cQ(^Ou&{$L1xE!-=Fk0%`|fR&WZZ|`G{n! z%J!r0@3W_8Q{!uoYW7pEF;OyP571a?0y(d>O66j@VEgRX44oue(*x z_&svgG-O*4*Qu@sG&eEL7Ou#^h=_$pm>;1aLre5i#VZ|IMHamo^mi+*@c8Pj@pBXLqTv?Kq>CY)7Ko1^YlFV-AZ zejJShr-tcC)ynQJsi}N+*5kE*D-Qc>1+3~6AeO=xkQFGpp6N@s5;U$sCdY6~PtVB; zyqC}do3JEi`fyZ}_VCfRlbl9$<25FvF8ObFHDfg(Y!oekWL)C5mVPyE^oCm{_pj)2 zQL>EeEjb>(|IDi^W>6V$rX{9v=1HtFWwC4bLdufa(V=Ks64EA7Qg5_-g0(45@T{ zmwD@tm*NrrCuRqhQpdv=4!PH3r|o^FWpBS)n{G!$t4+SHO0HK}ZizWxy6t@$)Ib04 z4);=0^6uZ{*4H~R7vj*h(a6*9U?i#J%Z0Kd*R|Q~yhb6S<#h0?5&9`TU%!4$lBl01 zob&x8Gc5A9e+8>;Ekw<-jHB9t=EkS>uDjE{mA^SMKI2lgljP`ffk&XLZ~frlfQ{~r z#I!+e)zP}KS7eTO*8m_qVnQfHjPfo~rp>`Ypa`uv9-(IcrE7Q();i3SX3AO7Plc}D z#_lyVt8I`#9E6%v+!|Hd8zt_N`kK7CR(L89Ds zJ9#o-{tPe6lfeH24Sa8z7<=*GotiNUr?6&NQvG(;NgAo$MMZ?@TGG$vDSvHVQSR;O zuh57=TbqGmh4(*-3&*4H$xwu~OP6Thji+JXZnf_StFFTRfhd;;Wf zB8Qm&q}F-Kl3-Vc+#o}~>XUF{0LTsX5E`298D&l9XIUGbCJxtVAD2;S;J_UvfpBKP za|!xwNL)b?k)@yI4IyPSN#zgbowl)AM`z~dvi3@}CkO4sZj?}0-h6U!?Bc!4&Roc$ z$VS2BhZbnMukRzMgft#oz9l3-PCvQgtM!RDn{96MVsUofko1h-U!(8aQj}@17n5i2 z#Qr?fx1S#m1b}0^x>Co-$Gen0eDDAxkBHEfpvkfin#H-o(@gt|IPaBmMV8ypFFSgm zX*s>xMZPzVX55cwLr}HXeyQZc=&PCil8SZ^B^y7QKi}#N`GCnZG~Wz6?}rXw7Y3NPOVB9iX;pRzgN0^a2jl zGtJe{38Iu^tNn0LF}PR3ce!;o23p3B4c=Kcm72rO3k9~o>Np>)jpddo?SPsA{)@v8 zea(!Z-4+^r<=(S@=+pM2B>NRwrNYR$va_g&jSQJpP=F6|2_NcSLj$^ES{vW(85Q7n z;3V{qPPW{z5Tu{~`br%)G8daH|LT7r^oip3eND38`3|d7ZXJxS8qdY0&dp3i`h6DE zDgOxHgWk_RV84L@UBjju6svZBJ?I!1Izdj=PM4@zmeBW%M=cLP|JOeAuY8X6gS+<_ ztwXLw=CEs@luR#*lQfn}-spS*0*4Fg>1Vlz5p!TVxp(iLJ+!0xZN3+Vp_kt%vB7P* z9c*Af)Tw+h4-8P7Y*s|8AdjjqZi^CK?9z~0K^Q?*-&h^o>ap!*VaK63bL!Rlx@6&= z4hK&iEp4fr!blaa*wnLb!)Hhm{hu*C7pT_ui<2}zER@LZGO0J>nb{8ZGfmF_nz85y z0-%Y3fLUBz>{6BS`0?X<&wU;!2Z8P8BUgJZMow?>J_V^~#RCezW5eg|;7fo@L~I@= zk3}sD$)!cGq?p<7E-1g3^_!_uc&CvUJ2P&Gkv755@OR$n(6@NyPZDam=+8TI!SM5Q zUodrX1{w8#FQFQpKB!_(j__u=M7qv_#$$U#VtO*q$R~hf*N8r zRh-~xnwnzZH*0~Oji8WFMadEQ{4mHza9oFVWZ!_`3Sbss0@#-*!2Jb)u=;3fl&QhH zPE}e>D=Xjn=(qr0hDydl#6RoVP0hS;5HIDKAW*;^yxt_U&M4U?NUY>gY;|;Scsl!I znjb>0-s7L}uV23qZEFdi8G$>%F#?I!rHpfwjaJE*20e=GT(%vpx#nbYFienUWn6%0 zWvb*8o3{LP#afb_i~;-;(f#a2z|)clB_3vB0GIL!XaajZJ03`I>} z>Ptjk?v$tJ!Uq@|&0o0@v0 zTHn>VX-Ju;aq3@k%eQkqEhVKLv*-ZKzxuo`4r(@{j=DrA$Dnl?|a=h@tWUL1cifO0|Y_u>`H4@YeF z6H!)=TD)mzPi785y##{g54QrYh}$@*mnF#$cG;6RyC>06*VN)zZzl84_X&7gu+vhs zg>ag-a(f#p)DMb`h>8Ude5$||!yPD%Pp?gLPTZ*P)#nHl`@FB^Z`1M9#e3y$rXyXS z=u2YgcmjdB|C+A)@xYPIMRQ*os zvTYMArOr3XLMh)^IvK?^If+CNr;aGB*5VEJQgC2fH{lNYG^HLU6jFDLecpX0C?X2W z_V%G^cb&}P?E<}ZZLe$ss1_jRWSH zd;;6aBJFZh`(z@&wav}0?`dKV{nCfk=2qV^0$g5Ro(-D#ZJ}u#$L*AEPutgM3MaGL z;cc`@?ey|K%e}cV*?sPBX3d0nZ6+(-n3GwdHD4^vz-#|FsoaD&bjhubY|?!Yhkg7T z8+vJhcpA;0t#6Wc6iwPfA9FDmgPjyo=JWe;{Ystybn#pzbmKRj(LzE(0bn}Ks;hI0 zqT+~T!-#>hvfCo>$&@Ryn~c!eo}9f`Nhf4~hdznk_|9}a`E9`N_fqJ+a77LYGCfcI z70r$>kzPyDJ{g|@dJi5Rp8e+Jt#|q0DQZ4BK91EcNM}UW%>IBD_lSYSNtIOwMbBJ>XO%~u`tNAgb3 zE&Gzh`az>as9lx9^rbD}BmcCEuev%59qF-L=YGqaB9t zv8i=)jasJW5C2&MXyqdNZWFAoNN86XyRFlLPn_X?nW;-;#u`be1o~fg?P68}oXtv6ljOndjP&8c5H3<_#XOA8OyRPlbD*)DsG{HL~<^STQ>AI0~~ey9x=WiL@& z-A@h?CJN6J#X<&d_}}u&l%9yu@!Ofjsjc;3q%B=C3iQA0{JmbohQ{(%qgzhBS<{=# zen%%q$ImYCLLM=_-fb`Za?WH&Gn6tNh)i+8Ju# z>p8g-6O{1HdtQ3G{rI@Cs;quOI03*IXszFV{E%=mY>Wu9ou7@aPDfJQ`7i^fq@2O$ z50k%=fxW;Y^*R_R>1Lin0Rh_#49lE|1$1w1TNwLo^$2TSY0$*;+b?x9WI_X7KAc&i zkaD<7#8~IvK~Y`vy~FXWC0)?6X^DVbZfv_IWbEMqXFLaC&{*r{n4ri#>yN1>55CBH z|A}wnPr>4`t@zKy1eYlBb=h$k{Zoziw3*>#g0Rj^ZH1<+2PZ((Ijk-yfjxHp$W>s0 z0s7gS=sK`%-9Pk9vJwKR4IJ*0#?qBHpK@YJslf)TPR(6xn`{R@;xd?g(!7;ee~~8; z+|=x&{P$5{Z=`?8mMOx9(dqI=xEfy$MNH(S`rSqvyz<*)+ogZ#^79YMU%X@@{{pNs z#I2dw?z~UzKc>HLwiv*C+HR8k4S^Yl$S)`W;#RC-pcXV7l=YTt`(U>Ywc036ap*A+7YoivDMJQ=TE%r#HY;Wc}r41Jfs(iF#3F|dO<3+Q;EO(Q!FD; zpKsxg-}wrSJL(}gsNQp^-y|l7!3>|nX}5AaPvZY?o(9r>apmXlTN<#6 zk+IJb(QBKP3#Kc+nMY=3+u`}e9UUDo`SGB`m|8CH(=W)5Ki>6hO3*MTA>uYY{dPOA z2#OFB`9oQM6Px4kN>ue@1+H<0WBN5aqd+CZOFvsGg*pVb==r*nn4l+LxR|W3>!NVJ zrO)J&8+ExyGSw<|#{-Kgn!|>{@4vnPxn}Ze*MWqHnmxT?!@4{LYSYX$h9j}2qgMwUCm7O(I^Peaf;?I-II|Kg*aAdh5G&Lyi$JSa+1v=BlBq{ z)%;^Ir5GgZzjSiM9jsS*Y~D$g+~G-R3g^qYcaXgOTc!j#7EB{4OOp~E53oLc=WFU5 zp#5cfoBwpCjD;Z)f$pBlyW@WFaMtmcfEe297uR^1|J!=g0vdu%xt<7?3DGfvlA0;a zSHt-PA1T{Oh=}9>BBGXWC|8Cp&Ys&OR2qXDeEXu}{`~p&iM&670g31w zMJEFB^e&==7^`|jOMc4nXJaRw>BZ#m6Dk(VqxJhFW8|$8NfwDL6uZU$(4rN$v!ja> zzMXz)y@Ytz7%k9pab~2I=V~JCG#-n`;MLW9CwPc~ku$LEso1o3V6}B>db*8!8n9wW zSHLk5X;`}*61UZbm)6}{qx}9gwc;Rx9}AtXUmPvI*nJ#+NsaGT9tFNLpL~}U0Z(aA zeJ8*CR5`^(rkQk%SnIinsk0fg>24*K_qvX$KeMl~Kv6t*&8^U_X)cxT+Z^{+CsS3Q z#=YtkF}p~*2!5QKNK2QpY<0T$Otz^YE~P_hY~RPOCii!AG^IR(@fiVjqNo;#i1EK( zu%gSwqb2{!*me?rdscO{#C*=GX@ZY4S7Ud4iRcYc78?id%Z~JG3!F{CIy02g=w&9! zF#T)3+MfqTcYb9`2IyR@bsX(%XY{Zis=Gj+fNZoIxzTl**x--vR=Xx2|LG5UQPVi+ zlC0l-*W^-c^Qm2zYl%p6viO$T>mXac-!r^6+=2V4UZbMNzkmLq28wTFYHGVm9roXV z7zozAmEO;(1+3%uzxVr6JKZn!#}X7z?Oe3;xofqNcCE>`ku>kY-`X0y5s7ArvYxg_VQ$&oiA@ zNVA3tvPt?LFx_O_TCKz`0Y5;G#FS>%Pp7ClboBjx1rfcGGfzb#0jXW5M6M4ui$i0r z(e%mutjVa`Z}cBp5nqp22i@hB=w)*|bqYGtDQWoZ?{a}X>Blx=LPA)|dUTClzOA#| z?@i6jWWmN&-=3O3e{qp3t6<^N97p6af^xWs>bE6iB$q>93wC`&Guqfw6S&Hu^@w(f zNAG8ma>c>NN}`R1-dpJH7mJ~SqFwz~RNCp10r#5^to&^hZzS*Lk^0eKa(JI6Z;1Vi z7hh>dM~E38O$I=iWG#rg{;4w+PU##P(pRjj2dNEMFerSHIX~0!o9+WE-`jekX7Hu# z{D;6#qkv_t!K#-gmT{C0*Hnu>$x|6pXB)En@4q0d>*KJiA*447Q#zWm`P^p5RBEAn zHRDJpHb=g#)?sDhnZv)rf+EYH5=(P)1a#=Y!2o_pLj|>#HnmLoLwSC?Fe0~tL1XSw z;z`!1Ix|q&K}ZHUSLpWbhGoy_MUdpeK&Am*gVUmN_8pbA(r$|Ezbi)coZoQ-8tCu9 z{MgzLg+$#p>xZOm)+Wo^Qmg*TN`0F@DB7Jy2yG+w8(yCFYLjB8+|c|~_Xdyn6H*RW zT)&RSnUU51vY~IK{xXZ-L#sAEoO=Z2cM@l9Xh}aGiL@Mq6j;#VwVY;?&QD!7#TYr% zl-8f(dU<+gaS?(wQI97P zT#jk{exTP%^-E6c|8Hm%EOw@U*6*{|l>1M8jVunZ4w1erXL$1`&RiCAf5^>?u3AN{0U7rH{Yf+Mv4CS$BIut;IX~EJ!(IWBO7`&Fv{lR z!w6Al$WPzD7u}`$3s*ouKv9pfhX?u-m_cPON*Ig<(!SHW6G9{HLGjOfhMUw{WR(XR zw1zORx|OiWFdFge@C0n9*&Ci6)KBmssetz%`puw5!EHm!*=9sjgzgP^3_0&jyuR92 z`RcxNungCvK5m*r&*ZYAr!IypV35_bY3xLYjMRJ!Yij~fj|QLrB$$cELxRy*n=?+1 z#Xmcn6?_7(xGPvWWjX|-zZx(iu@!0Ek|$De^v!iFB* zV{aMo=VF?^XXmx(xD+)G7%$m)Rrs>o((ceSZBxnXtgeYhJ??!2$G%FWBg2Y_5$qFq zo}rPwc=dL)q9BbD3_rq5ZEcFykjFbKUVuYo z3Wk2!l2NzbyYM2hVOA636vQzY2?L`griB}!lv+C!eo1NSk>xJA9>=`}y{Br*dP)^W zppr-c*mHo7WA~VulsDSsVgtwzwsG~C&2k%b#VY_+6>Q`D?HfTDIsl`dFU2?RQ7Xfv zIo_no5a~~9YXstIIp(4UR145pK@H8GJCLvB?}|hU|fYr;nd0afNd0}#t~@1Q?t0~Yy!q9lOb2O`ZU_c zbW^_Ra3j7@=*Xv}(89JljvbDU3GluD4x z3x{jKJxaK&4^V)g0K@|rB1tz*-Picwo}t?CsB}YKmu?t7f&TMn>E~ee2MM4HdL40n zOSN@1d?@u7vHDl_C}A?|y-{}miXzNDfR1KnHXGeU$cK6{-u;Q``?pYs4nZOq)ksQ8 zf(Z<89S@TSRXre>5YUM;t^xA`Ol*;aJuGkhk@r|R)*GqT%U0KcB-oat8;sbO8C#4Aj5zubJ zbTJ7$GTge=8jZo&3sJ1ZW_XW_NCwKWoQz>Bq5yp@xh@y1L#s}-!mf% zF1pBNL4tMn2aTS_UUeRF>lZHSX;lW5d=>?>0p%socp+Ipa}<1?FzZq1@Uol2)YMdk zi_#JIhs}P&9Ra$o;{!I&C7Bvy?~D~lm#i?m{r+~bTpMbx|TJP4Lo1P$wLR=wxO1mOTi?GdD23O=>ydvS9*Ilr-faq z?Ud_;VFYV3ik1;IN#@e5QlE0H|FeW{*b;vbfd@czg5Mv806mE^#2o@_`zP5MUlL%? ztP1*2Vvd9*qNt>`qxN(Pyyb98K!DKcafk_oXA3~a0xz2q+uKGh4>-U{Y~#QCzzj|G zyAX~xHH*UPnufB%Cv!YvK zli&Is-WSkwGvGo@Rq`?abLAOokxfRiQb*~*^(0}!h#I1@tE=mtK&}nw?O<5_L0y~+ z&Q#cvcli-86~OLgN@yhp6WpLPK5Twnn+GUNF0c5no)+t6Tx{4EAY9_b{~uSv*}yK0K;nUC$~sk2lyLJY zJnRCrn#iu4o5q`hEIvfZ$;sgOwn^5p_L4BgB><;33>KD{syuZ1v!o7?e95svF{Nzd z@B|v_&|-jjomkE5Z`C+R{@&(F2q|GF=T^{1rlC4VK+fUNZo7J;-V6%0pr~jl*bV^EmGedEa#gSF<^{5dM zH{du1dG{x!tS}h^0?wN*c=^zxfV&D2`VxdX;Vio33JVl>$){2t_e8V4RhxrZ6Q}&2 z1egb`L_QZ;|I6rnHD^z1o5*3vg%R9<6U1y#rBqblN=LukSI+*;)GhN>+CWlJT6*&} z)zppuo|XYh8NGn_{AFtu$Ez>|^r+RB5qNc|1#C1jQ1{m72oVc7pQ-unB3l2=91qOS z#=xZ?XWW&DtF6L4Eb4;?hrmP(C1!?RKkCUSg)*Qt z0oDK*Q}RGG#E}IP>+qZs@F|v;m&+;J$H3sugHeSw9;vsC*TLhi9tZoqDFi8GR&^}Bxi$2WL<&s>uOb zvdS@rc`O*!tHI-@{95a-kE_o6&t6=!1fFJ7c_RaO1O@$Xm?h><&P}m|2i%bLN3x`- zGejtXs9uAaHOa2#hD2&UO!w1;5e99n_Z_(?HRu6D-HtW)zUiKJ<$vs`J zeawg=7-F+^!RBVzOb5e>ATV0f*R$vIDh<@ytgtYCd5)=Zk@mpeE{Q? zZ?!QBokeQ?%?X|V45pAGS88FnLPQJn1Q>!*G&Fqu`ZaVtD?`e%BzN8;MJd2h4a=6p z1Mo-s}B(JzuZ)^Z7(9(dE0J15uw_o1F&!Ah2DN1T~p| z6AMFY{I(_3z4IG63~EJXg(VR$FoMn&lIe;8H$cWj1x%7eTI-p&(YE$nqVPKxWX+s1 ztL#|gE!6}-CzIKLXriqygGLxsBv^$%|NEL9o_l&du{$U@7*rM?0rNtU?TR@2XDfdq z?_*?J&NVI?atH8){{CzRa;fySqywyS@-;v{@QnIf>!#8V<(I#-u$8Q^9fCLDRhk*}>X&R@^Q3wZvti6!3)qal$q$$cyR{_C7 zN7On=9BrD5ob8n9xqEoT09^$>29z%w?e*~&^LtQpV0;7B$cKGlwX~}Mh&bn_uM(a1 zXMKzx@R*aw4@mK76gX62Fi^giAjyxJi9OAl2NR>GhkF)99~wz_V;W-+i=#}@e<>RF zdvl%7S{KC6mh4OxEH?3{987pOFPCSU-&Zq7eW_JSWQdhg8$4I5K3cwtOxpR!J>DQX z&!l@-qVe+=FTk?Eq27mXkTssX_+fuTyUVHAT)$iD@pTg4QBP6SN6O`g0$Hm(ISEFg zi+Ae>HN(yE2{$UDK8!2b;8Ymkj>2?Yfx%!B?PF`4)_ z;+^zkX5HaJ;veCEB0ZU@3*T2|OYXQ=w#JEe8~v^vb;eo2e`f9m1-tfFsZCWN(<6PN zCYRB10rjD7_SQ4m?rm63bB%axU*732qoXDK&wB-N+B!Oc;o(YE?w8oFFQ50tK>Z6b z+km3_pOITCzjza7qLYy;w&D6#w0Z`m*`l52W1X(%H&;<-cu|?_z*tXjXy>BI7~zAC~GlcB(bkS z)b4NE0+gcodvBzZ_uMO=s7E;s1f8`-zkRR}snmSr}Xl`eQ85<9r1KF$a*a8iYZ2j?>u-?mx2zd_{4;SOQIj#(4QRl{*c{_Ho zNt!vmXr!iE+NGv{({+EVfH?y^5Ga6tdPQJW7)NOd6iODPSa7lcgA1iWT$+>&|3^Da zwCjHsF26z>2cj9omt?}qdbS^K%aR2+<-gzCU(>umEio7;Mj5S$);y{XS^@i`m)qAE zakJj*qn4{XELE^aC(9xy_cT(b71`CLy%Bc&C--9!>)C^FF(g~qu@J5>Oltc6NsE2| zsr_5p9Rm0G+3$-2rw7V=oT29j0S|YFc1QiA`m=kYbBde+2@}NnmVXxV>+5t4dDl%IFB>|RFVr5BR_44?ikTsTe&Esvaw{#cTFr?%Vi(8=5aYR?c znJ^%nTEafQ8Ni`JDKD(2L!KwoHh z)tq8cDFEJ|lWM>TK%OlzxYrY=o^sjq61og=+cod>I1v|j%U8h6qtk*i+XA;MzH%v( zS)Xc3TC(XeP^{nqQO_C)V-3|nQh+UgTm*&8A^Ib9z*V&I^urts5<;ug1FL# z&VU=cz8G8H>SPKhKEbxbk&;@XtzH4-c9(-694tw*`i{a)M%FQ_usAHI!X0@M;K$z2*V(*B@I5D?FhM5Ge7Wv}WuU}P1;&)rO8KsP5 z^yrL#zNr|sm)Rj1is%pCkqI&Z*k)=%L7x{**X>t1#+3yF>%VDEj{>1qbF%ul?k zn2FnEY;d1~_q01Q>45`5$rTk;i4|B*goLS*iTO&c0QY$3|Bq>V^do$GZfw!?}h?pS)Ew3rui=h%HHkUze1O=iaXAs_C4oqiJH?xD9) z_vBx)X^>aI4g(Xbak)5E(sl`R+_GhJaKQryl&S@k5{@bKSzy)$ftxZnVtKoupo$%u z(WiA>4{PkP>B|Q2r^uV`3DW?F5*Sol5s9EZtc=vriwzomva41nNxUD8gt5y3uvD0) zKpLs@S_7HH(n41^E^9~KVwF^KJMc79s=Le9>#k3=a0{S+=pY0d%5JcpxjO{uRZ zfFVaw&`ScITRpQzmF-ze0)#X>Pf954`1Z{rLf8)Z5~}(d;ZqM0(XKpj2l5R?>DhxC zfeZr0!^0zC^3xj89=vm)F;cRH)oG`(NeKAJ-*oTYV_;Xdm&GsE)n9s(RdwiYi}&GD z9ts*Bm=Ih)SS*nB4-NfBy<$qMM_b606iWge`q4pTM-Nf17f5ya)TZM ztK6!KDyM6${6N|1q6R$;K(uPvz<=BuRyH<%agR{}CP)q^6;Yvp11?QTW)JisGc#B~ zag~vpz0pw1qZ>Kf-O_V%mo~2tkY!mcmK6+~;vT2f;>+z!eXijOb9PsGYcEo?SN2oDDh@!#2}9Vb0Lh^Xl!zKG z!UOl3I@A0~MLGEQFkqHOyJO+yF{Cx6;ZTd=W|I~93FuM6BmxC?Zks1L^J`~cIrO6KF zs063>0qTT`NY!nDLjO~^0J-;Hp|Bx_fB6an65H~Y{(impBNo7A0=(fPxU1Wz3n(J@ z4TybVRN=}>hivI^6z=<|p`l?Ie|3Mx8?-VN0f`<$8fp+k|5g0}Q*4WTzMG1^(}==p z0i6A5u9ha#p@!ZZPsYK#4+5L%7}Qp!pR+7i59PC}AKVjRzzN2qOQV<0GsP9dOc%}3 zV;WuQyv1y0TZ}fC80w;+n1~`RXHSCEh#v~$G(h`qme(I_J+lvLfl79E_MK3#C-p!e zE*d#;`+z=a&QmNOdtvUOEm_>GWwg-uDk@`sihsB=M1_pZU)u`lH{_X+_jIKHRoHnK zH1fAi$61>RJvlZD&xi3>%ZMT|64!ZkU+({8#piGvSMAa?v4by!)ev) zigkA+&>c>zURSKUBZ2O4TJ^eO-5m*ZhtsOp73=OupgWvay{=eyM*`j9wCZ)mx;ql+ z4yRSGE7skSKzBH;dR?*Zjs&{HY1QkBb$2At9ZsuWSFF1uf$nfx^}1r+9SL-Y)2i1M z>+VRPJDgU%u2^?R0^Q-X>UG7sI}+#)r&X^j*4>dncQ~zjU9s+t1iHg%)$59NcO=jq zPODy5th*zD?r>W5x?xy-EB+wmBt6o>EyCZ?_a9Z`cV%;4HbcfTb*A?sTNT55M zR=uuRcSi!<;k4>?#kxBZ=nkhc>zURSKU zBZ2O4TJ^eO-5m*ZhtsOp73=OupgWvay{=eyM*`j9wCZ)mx;ql+4yRSGE7skSKzBH; zdR?*Zjs&{HY1QkBb$2At9ZsuWSFF1uf$nfx^}1r+9SL-Y)2i1M>+VRPJDgU%u2^?R z0^Q-X>UG7sI}+#)r&X^j*4>dncQ~zjU9s+t1iHg%)$59NcO=jqPODy5th*zD?r>W5 zx?xy-EB+wmBt6o>EyCZ?_a9Z`cV%;4HbcfTb*A?sTNT55MR=uuRcSi!<;k4>? z#kxBZ=nkhc>zURSKUBZ2O4TJ^eO-5m*Z zhtsOp73=OupgWvay{=eyM*`j9wCZ)mx;ql+4yRSGE7pYsp8Vt|Kj}$NivLe}%2S^C z%x4w}ipM;?jL&$+GX`Yw)6<{+^e8_vKJ}?j6)Bg1Ks~{jAaR<0mz5oe4|M|}kDE<1N2R%q#Sa{jXUbf2OkAN)8FTebXE3T;6T%>Kt zzW2TFjkSX8p0uUNC1MTP7ryX?-}~P8e*W{H|LkW!^Z%4nP9fWVtqTFNTy)VzkzN*` z_r33Z1lv{J@ioN-}bh*rAUE84mpIxNG}mDK#W-U zYfe4&)YVsCT>?UrK3E$}_Se4lwIhx=;zJ+$P_!Qc$=gXToFc52BBpo*>&h#y9OT9S z>#n;FF<2;4#-pm03F|z|SHJqzeido|M7?0af;|0hyX_|ZM?UhAJo2*3E)&Vxr+V@D z(1$+sv5$T1KmYm9o++i*4Dz3PhA+STa;he=qC((w?LF^#Po7v6;GmeP_7p&dy!-FJ zf1du^-~P79$3On@{%bb>`q#hmUyJYo2OOZrM?B&YQM)W{$X3OB-}_#PAN8n5rFN32 zY6hfiM&>ch(TiXF;=lg&uZcW54jl$IPnL)8fB*XvT}m$?JFP)do-D#NXpJ@2$P@qJ z4}S<2CAE{Lgj38^ zV9mS})UST^tDKh&H{4KNI_}~l^5~f9|>G zo@OpF%#jY1snHKAeA{ie&6BaWBDL5i3$J_K>++P>UVANrqiuo;Sh+u-0jU^1l~KBUa zpZe6N$ON4<<$2G0-ar2FkCb5H!i89qJ<%_q$-(rn!wyTy1lVMS_*`(o1$n%-#3ziO zXtAy;|8@54*?y(kO{^2yuYK)nS&R!WyfDuwyvH7UD0Z+Vm!OGn9y0>gvg_Jl@uxri zDJSXH#h=@4Kcq*I?=`~k)X)Sr*C!X_@1WvHR`rN$y*SzL6 z;BI2wBwKUJGYY@tB`@Kv4N&b=b&hWyZeq>Dq<5M(TOFUg4~@K`+KgU7&k`TE*=8Fg z$vyyUKqG+C^($=v*4*jDGA&?@J$~s+U&@QxXPOReXfS zV1!113EXOAqu%}QcefEvO7pkB{Z01JsR3APTB^JB(o0juBG3|Rbdnnj%rNF9@HA+> z&V^g96TI`zJM&+c7~X#S?UAQsyl9i;pbG!_Zz2;G!jc_y&_Q{DZ+XjGR6Q8$AX|aP zad}>Jl7G*ULMWi>BGB)DQ?Gd!6yfV%|N1w-`Aq`<#y7s9SE38AfBox0uRvH}gyJ(t zMPEE`-n?W0nLeMKTHTrKA&q`m6QDF}uDNEOasK@ItZRyCk2S9KkLb)jrGNkX-zGX( z;HaxG^61CK?YG}9;Q!pYbEQvJ^ZH)!f)}vWAy1tVX~ahu7Q~`PAAn-S5I*HqnqLjm zmWZ{&l_puy1uzR*S3f9K*YBr@Z(^NjYX%Hd4T_bib@5vS4nO?xJQ<9%2S2gET*tzK zt-t>IvJAjl17LOWc=gp+r(#KdgAF!Fa}?r-!kWpq3w(|HM?% zQ!Mxxdz$dcu@0lB%%)Ve9BvGGYFZitHcvnO^t|L_jyWdaXoI!v5}Q=XOW0zIEl9Ol zb;LyB{eBfc6xLBM0@SGK5)>~bC+0Js`HUKaWdU7(`jwh!AwEG&PrU|;T!r0Rd+oLL zyr~?4VX;=`XFvPdyo8T^>|+2$36)go4}bW>^y@9R+yW`;g9{l8|4>Ge(Oh$>>bvDq zOHA1rj2lCxG6jD6)1PVsTC%)tuvU1p_MLXxNn~Dc9v<*hBpU&1l<%_3E=tzCc`1CA z#1x}VM9h@TO~j7M`b?=epsB8{~S|yWW*Yj)3)X#~qiK05Sqc zNtkgSWB%)U>#e6!jTw9fO6eyZf#xkfmvDsj{tSgV(v&y_gxZ{opYt|ky1AdAGO|03^kAC!{%*B>lZt1^qw9Z;zlUHg+QQyS3QNHm) z{u6tP7x5>ZbW$GAk)uILBbr#BefHUMefPWH&2yQ{5{aHXas;f+KIJ8>yY9MyH6Z}> zMK5|$KK*jqX{V_acEwE2fd?KaJ~h`|=CEc8dd>#WXurysJh%2(7qXpnz2=M|%!i@& ziLl0;w{UX%_{Tr)CvElRFMoM1Mm?i=&h||=-IU^Qyzxe3-drP^SnJ$h{pwezECT18 zbB>}I+Yf*E!+HF$SmOeGc?rA@4KIPE7Ap=Zfk_qqxk%uqNCC5F1|um~9$>?nXoJw- z{qA=bcbcG^%T*w_7$C ze$!8;7vT8jH@`W>2<*J`&XVOC(Zt#)l?tR>CSi03+LDwL!CH?@LyHld`Fws?NF%%; zeq*XyAQl|}mmz$}p8<(9I#y&N=z7c*QF$ho$TS#!%5z+F%`>OW|g)Z+R0f zCBSXB?n&KyHTKY+e4XYWk7*?mMn^>px5l{l+H8WLD z1Z(b)+AX-G@=b+_;Z!7IG%BN^e4x$Agj&iXkY<5WE{z2H`m!|R#BebPit<7HN-M3D z&%tWUB4aRBEZO99DN(-Kb@4`gISmA>$4LYffl0wS+E`QItSe@5r@@0^Gcu#`}UB~%+0DH%I#PAom@&GqT5bS_?n zYe=S0IBfCJgu+ToCd_pF`q#fsg>Yg`q-YyU)axLdi(txqms(W4YjJdh*5a7gkp6dCo+cQLt!23`yscXur@J*Dr8fiP%aGSo&&;~ zYnN!#Zr}g@_vd8iVJkbqY!aaI8RR|p+|!6VCY>zetC6gf=0gQQlY8cdV_J(g(8M|? zTLN|I1voi54cl$Eo%p;TOvFT>ps@JWV-stX%jHAJB)~))Kyk(MdWAVET4@xBsW-gg z4Ml=@H07o7)6k;o0eT&ao+0FqIoUreI|NB^DbyN8fpf9?lqK8cx zdk(9WW9*R92m~C;q0xRdvy_jr*}CZQn^-5ZC7@`gDD#OvC2J>8(0&TC^G7x2kIirs zYhEa?)nq<*7cbV=?4`*$61F^)mrQghK~Is)k;`(PwrYTx5=Q{bHeaQZBf!4tRc-$;ZO&22f3-Lg zLTh53$To`U+1|o$@xP!Uf6Nid<5ReabxvN-@L&G&7uhx41P7C)qGB)@c};_WRf1Gw z1o~keW0Rbzp|I{ra75ZB1R8Yah38Z;urSI8+L7^dpZlC#O%|8}YFJDNM3#J7HDU;j zH^{`Pv59r0>G$8_F9MqFGbdhHnj)rn46N_I`|f@f74ejpdx={9Ltd1@QL%4LM$gcIhPn~RMTFDjbnTE*J z(bFlc%@vpgFh0e#c`Bn+F~!(+>O{TNOYR8P00pZ#A3&QfGdF9;l=%(po6qsnQU_uh z2pD^;17%B8IE87xp~7VNMjLGuQ&{FV#vbwU#u|LFZ`q8ZEn7WT>wfg3AK5cN4(5R= z*MOPrX;8f>tzulUhH~uHv8w3Ee6fAKx!z}Pjlhphc%;3H!W@O zzMQCS?!>n7*pZXsC|RIyzl|j%GO=PZekOgKu#T=dwsKhywQgAGuMN8P#f2Y^aW@w= zH;q_OcH+j0vji-|I3YeZSTnq_ot0u1heHE#CkkEOgFU7Ss(%XM) zBQfJ(i--lO@#w_I0Bfk(X@C*qWrL}^?z*c`XTG;16%x=^iK%~dlqsXF0=5klhrt!% zFo**nGLAtU%Cnsw0TMw+{<-AduQ5(#WMgEIJrmANX+nJdAbL$hkd zIU1n5%+OJB30Rf9_aC;R=}(X5>92Hz8YvNf7`1$35IB2Mm|1tpI{7XEyInv4bUOgW zH+5W$ZW?NZv#o?U?Zw}7yIoP2M*})mMRj&dHj5pB!D+}c^RW(789RG9T20gHM3{5^ z(KR*s4F)GKm;Wb+3M_K$pUfbM2yyB4mQSdMd35; zaVBFOU31Kh7&PTaVngiC#kkoOUbrZht0<-}RlG(5Wk;@@i`Nlr3^@cAK3vYMGzZgq z8vp3TV|~QNY^Mwg#2I-f!PyOUX-n$O%b!u<8H+Wc1&DO5>3|XVQAZsG2=tRP1x)%F z=!BY6*fcZ7>KdIDSaY<}4G)|;2kWAR6h{M6526GocAN9A8j@2gjKhGz-BQPW24bC5 zQa5TsoAMT_lQOo!`@tv~af7rIs8u&B>$+3Z2eyPAAgm|C4dx*GW8c#5+TFA%4MnA> zML-O+Ss3e~MUBqZnaPPJ!NTO!CbFkLFcYv&DoKXTOa6(`P&$Uyj$h@P5;C`bfeUt^ z=OOfj!U$MLUbg{+=`Lo>!m5N7;Y+5=HhIKvK_Jfb{Ho0R-rVmKNgEk9DYIYzE*1yPCKV z@69*g>@7AucMFhGjEOkgZWk%uDNvM?Ke`IQfos;I&?&<@_W6u6&d3uF4qIn&2Lid- z-K5neJq^A@`pNx@&AAtTJEze+fCR;uuApj)9@RTVCHE{ASfP>v#k(*x<^rAWSZ?lu zuu5(q>DL(S=k}_n#3nIv+OP(0G-*c66{$VPL{=x!qvMk}*B1f_HK#Alokat1(R(rx zB+q}#bubs8!oyaGEN&YfP_mzR7h7+=bxiB^8yfH^X3d)A?xvzBx0~7lg;|6lATgU0 zHtFGMz#4F&0-O^Q*TsEegz%m3e8=7FvE?B2BC!dem>Y3-fr+w0VuK$!YyqM+*3{@! zg@8&Wi00(Rv!+Kqpdy;>Rw z5#yttE7v_MO_BT%`x|3NEBBI8r%I#Y8A4)EU)J0O!4@%bYEM}vH!!7G8;2G*k9qr# zxeJx@Nys7Ri+E#0musNhIGUt4Y=8|>eqQnj5(AS@b7yHwV)RYkDH-Fh!ZPDJd{kYz zS2pC=RNAP_jbs@{Ah=DIDaBghrZK^0P4=T}W(Qog`qXl4R^SPp$yC5JQx{qa-F-G|;xdv~@*^{b?N1|lnh4d>y;rS)oAP#j- z>6x`~(G8rf|C)*%O{zt%7{HFuSqEW(b<@WvYH9iCs#_fjQSc%JlED%15uaWiYxUNA zuQ6$o&*TQC8f*9GCz-ejnORHpYr~*N02jS@r&!7|TEN~jjYlg=bqy8ZS+NYo%Ron? zByu@h#J*8s%=({v2^4Zc)2to6=Bv~9p{Q-2cqwAd%-UJheC6vzq?+;$c+JXS;jji| zq9;v7O;*5StIJWj0XnRpp(9x1S1;Dw%rjYnHJ}682xc5%#>m%Qcim)BQj}vpfh*oM zta;r%Z;vm8Guk6F&Ziy0j2jRc0*_W{n_QM|lP&FzUK@HhXBFCrt7V#4H8x$tDQfwN zxt-j{XjxbLWch)A(Z9fT!U;5IQnsaXXah}&Ff8|hn5L>3KShp0^u*uA#5A`wY zmA`Cd*y`G(uUNN{(s-n)SQj|jaN=zd2HloBdw%@XeD6k4$P_&~t?AHiPpTr)+H`YE zRU)QhokS4ffm`W{j8pySU83scT=k?XA|q0Vi@fm$v zBd}?+=f?tp8COy@geme)-J^RO>{v4>Gdk``RYam{z+8I8x&X*>0I8<=rJgfgCX-{a zIL#*)g-q@vw=IUlrgnSMlOnC|6>qxCDXCcJ(hzQgHQAaLizBi5%c+Z^ChO4z3x!=G z(5R|dlX<@OL1zbyuUleGu+|Z*r|8*-+F3em1IS-Qp7gh0pkh5mSQ9v1gSF26w%cwS z7Q{B`Ez8nqeX(AnAHI2f#d_+n4!FT#imVNGL#2uLk6WCwyC4U2K)7N(rC5`E><4fL zXDBEKCpH|=gyK}r0C0<+D%Mktbr@LC?7jEigAr``tF8W~(~Ypw)`9}levcLFsm7Y* z!5v3;T^HOE&;iL@YNzG2al8xAE7sG1HJQ^vCKpDd?Ke))n~_sU`#w5{yJ9^(SO?rj zVKypUb=6e~yP*Ox!eS+Sau8dFE7sG7HAEO*d-fnT!UCmZBQ)BK+-N|ny<$C`SQB`- z_d# zlMtN|&}h>d(}OjXk!Oik<8(rwQEIZ2Vk*{26h*+b8}14wL*r#V>99kgX}}uF#%L%+ z-l2yc>QeE7h2pVdT?nLj{NfkC7*~qLkzRV#G}k?2rW9))dz_kgTEv@QnwKsXT*PC= zx~Eu*NVf*X%^QxjwlwKehqb9W)38>-+;%(ELBEQ10c*cUvm);A4WF%zJ)a`10c~JK zuhT{J{RnQxk0sVr4=8)?xo6_H{eH8QrDs65sN^MX3S#QbgZbZbF6H2Z4_53Fn-HLF zd2$oi65qYsllTExyNTLXRVV#>_D2(s#NEUTDM}zN5{^r&@>^~u3u`iTj}XcS%yB^^ z9AiV>d+xcXr`U_gi!Z*|CV#~ec)vbEJX_%;Li0wxqO^XG1F&{UCP^Z|#>;*L6rvvL zani9Sf7>|}>kh_Z5qXtWR&k?akT-ZAX+J^b@p0r9rUk#G6t`7?%v4xQrH+yRJ(*XqKogK|vK$|4>jIpi7m6#;MGAKL=T=^p1 zgV8fr%g6$21?E^sAuLS1REW4H5%EdEnlxyECd#<#G@} zRtQKsHF985um&{0)PPv_DR7_KWE_yDz*-ZcyjZZ|xp_?x0+;{QBw7A=DyA|uO zfS&k$h6+#eA1$C4=18Qw-(6!BFG`CI9{pP5Bw{`3uuf@#{jd(msgj9rXlx8F41_A->*mc_*Dth0`3rDUu71;z<$ zJenRfShGB_EJ8K{%|_^eHl#8m(GTJjKW12)Y%y=Zpn0>r+5Qovx2$AwxyQ~s?;LZX zfNnFnJ!V*I!!bi1YZiu+L%jrTSpnJ>h*F8>2JTl_+cHKLOiAiZPK%|y8Rnb zXE@w$U-afFhRbvlUG6u9*c0w?#X6W}(&MeEaL?ZeGs6MxNuKo!%O#dGtn-4nSoi4( zZV@@&SYtM(2W>x~3tp*q(M1>al;li~v_WEY(=`_;$K%*z9c+do#2OzP zXj{%q1~;co*KA!+L+!V^*Av#Bkuwu(?xnSlw13ZT3d|1MJvI4Fow)gS?>h88qg<*p zE$n@Q@s8sWy5=VDTsSh!*FN&Mgf!E)j8SIGl>L&~wz2ZcE2p&&4oSG36K~sU#C3Gy zhAIagbkIzL7(Ev5U8-g%K@&&onsdR@k#JMZx7c!%_%%1)W(FoNsu`X*)_NsN)w!j0 z?9SGm=(Co%xS5lLQ?5AGh_P7w6rH$8q}r%+?z!hC2`t^f%{Sk?*=CzL`hhUhfO*%9 zez$MY0xY0E=doWn*o?D^Yp%Iwu{8qY>|4LQE#oJSH6j(V>86_&lJ^pDR>)80LYHXL zC5Vl_OhjBPMxFD~s9Fec#T8dn;7k~ayU5ykVZ<i)M+VW+PAivK@5Z zE$alF?KfUE9dY~*VV@M zSJ)+%2}d|o)!lJkmXT+?=9+7~Pnk^!3Uf~7ifhA_Y3^mH-TrwM!-lyc-n~x6^v;27 zlDWx&*lsFt(n%-fCC`~NhtZ4K;Jil*j&P^5(-(N@K%Pt3o>*;00xGZARM*IXkmShO zQ%1Z4I{IkMzIifY;lhR9i5%0Ra=|MayaNIQ#?d^V*mA67!cj}q7}c>A=(m7!`st?^ zf|}gNxpU{PyY9LykLrpEZCpn)=8GP3$RS=4)w61Qr?nH=DZVV&4-4Q{uI6H&&YHg` zu`U3=c{@)6A0eQ?5pwm*f-0W?)S`TId*>yWT;i>!D)nKdZ7NQKwIrgZp4uu;!m?=L zq?Bq8#6$PJY}ch#sgOwws6DPZwdM|{R69=TDK+)6m@GBJaqLe0~lv5iuaS6^%9)9=P7e;JT6#! z8`jAc9IDfI=S{kwoQI8{3ao<$)P`@#9X;{H6ANh+kF#gbb_*y6k4*?YwZp%8x>?`1 z(MB7^3!BtJvl73m3nzy^Z}WUpl0}V!A1}M?GS-!FxD#ptZeCI7o%fQbS68RfH0=HN z-#=#0k}ER!1{HZPz4TItDOA^H%#tV>HZXNqqa@mYKto{*?<>j2%cjHYjtdjQHX=;_ zsM~6u4%5N0*b+qFmw*s}coe1f(N2QQpFe-Cwbn9dQhx4ADKOb9o}sR}+57OB zv!W^LbCu@S7s{SkP65?fC6Pu)P*gW8luJxMrC3Mpp%*G*^k&VPmG^60ICstYiPg%x z!Vs+f(NDCs*{_im!75n-;DR_uTv5@$h|%5tNw9+huv1Y~S}a?rD8_m~v9}~=A+pB82l#5dyF1U*JDGq&M2}tZEeqO&+1a%$qgWHatrKNTC%aYbBaO7>be`~v)iCa zNEO-jlHqJ~*L(JT4*$j^OmP#MG6NmuGy9DHV4(Gtx>wRLm@T?yU@62;tU6;`l%x0A zeDlqlL#ietN>+#-%@E8WOBc|ruE;gHkE)y80tb`^P;%3kG0sdD`EWJG49MaqxqM>s zaMe{;)sq&|Ua(++V-caqg&Bl+v;LhZt(%gDG)RQUQ-KeZloIMPu@|=crk-7|XNU=4_i&1SUV-!9s2dzWMjn5uah`Qo90q&!#ehp`YXh*MSIY{Fde$)=7`T)o~~a; zLQ_s|2T~O?Ij}5ZO`ZTE>JYn$IMZ6&wEKNEl(frc@_I=F^KINNlv=NqxjbO9H?(TNM|n$2kSTr_d0(D7#p zq%XRF5rjNLvWyMZWO4reCvXW6(ACGy>y_buddeW64{2FLI){AxjCO(ec9_P*(p`z-oyz3)xi?03_)`_0{M|GC>8Fn9X{=k9Re+*t?B z-SOagzB_$--p+^2+vSjXyMAWgrw*O(yW3&&cRzgo9*580^N9I-9(nU#N8P;lQ8({% z^v(Mov*^3uu?zM;ZovV*$1gbWgarqku;AbmZ~62|i@t|^_Lk3l?v_J+PhNP~DGLuj zW#JL0F8UsM+QOqwUwHKCw;p}Qt;d{s>#@FP-FnP3sbr(L}0d-~_^IK%e~cbw__#XHXO{n8z0`+oV(a~6Nk s{mPxb=Y4h2_k7>4-FZQLFZsiTi@z6r{SWcI_!|}LignfNvDEAT2hrs{NB{r; diff --git a/models/plugin_images/panda3d.icns b/models/plugin_images/panda3d.icns deleted file mode 100644 index 4f9d69be2f4ed071ceb8dc891e373338278a4075..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75623 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 Xg4DB{mh>&k00000NkvXXu0mjfr&Cw? diff --git a/models/plugin_images/play_rollover.png b/models/plugin_images/play_rollover.png deleted file mode 100644 index b5292cfc80e2d6b7f88b618c84045919da4edeb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5909 zcmV+w7wYJVP)yIA_el2uNntV*O5#YD0GNUT() zDy1+A%jGIrR%DlCt7NJ~DG|k@Oj5KhQ6@!+6iM(91q%d80K`QQz+xBJ-M9O8_nkA- zoj+#YwFfRj75A%t-7{~dUw^;9->>`Ezn&5NI+H-S8Fw^QOx^0`y_?*Od%gDcX6@@? zsbmT8k}De~GILQgIv3P~ldWp&aC5%7zcJT%rCDvB!D4@XUA)>2N+HvO={>oT+{e>H z>ASV3uYC{yW5Z^6q&8jq@xtW7qqUjZ%hp(PRr`Cj8q&Tl7B?0@T^K9eqdax(iWm6; zkpesc4j_~B1_*$r#nyqw$^ws?(Xq;z$^&z!<{k(e;q2Au_j@Kl`+8tt>%ivCO}A`O4pR`9oRN-zf^Ll^FvA?M@*Y;;99uH+`a;BOzfY2-mS>)zgJC?^nGBx0@PhT$9d*Sr3J-@4{Q_=%LS zG&RBoKY!?NgNj_>2^uYR4QGsmzK26N1G#|uk!>hRPb z&7PS3&gHau$pi=`)bRU;zmy-#|L697VpJlpRk)tZr#|>eKDP6tNFguM(tAtB8XiCR z10LM>ZCcG1=4gaH)14R=CKkRr`TFD^+sKBO(%vNzARXzg|KR$E(nIOr2S9_|sSs-= zYcp&3{GFd?>%f*P!E?pwc=-f>^6Z~*zB+}SGMIx=Jd*(RnfeoFe|h%bL_yTJSUVRb zKswSJ+cWmKU-0h+AT3b46{H0l3mf>Kcil%RReFzbt}M;gXZc@0yPs2)(@?WSuSZag zO`=h0JT?Bx`0rhegbNZNlu)C$j6RZH6H8v?1ah|q7lyOLeBrM9D5i>64bYXOx%wPm z_}TrOTRaB=nEhdAfUKA6e|P4UGrw=6)n|wc&PgM?N4}h0m;LtuA}^31(BOclJ^t$* zpJOmRL}a4>uh~%!*R9#XOQ&8U5)oop!kmRBI4S2kH{+HTCl-Hv*#wlfmOe4CZQzRt z1Q~%!zyo}2=SR75WEYW*{#oR#o57I|2hSe_31W@JPFo1U%X|OAM)uu$xxRlToO-2` ze$n4Pv~%dM5ePJ>8&wDVaCVqGHr-A$Y%agi2oOCkTc3f6zUorjvz@QLGnbt1*mOJ3 zpL`)U1t;!vv@e7ZF?jvp*J{(XR~mDT!%Od5rU60n-CTLM^6jN7%Viocuzlb^xcS(_6YC^mO&7eYT&`QQgVqYtmo<$D zOgt4ez&Zw#j=%vSMVw>r;UcoMJ=)N%clvEt*Np4d?7&qnt*8Zn7?Oxli#=;_^X{I3 z?F0XD=IxokT9p8u(gUUKrTc-{!`s@gAe&2@0ca+F(9>sBU=XdI>svt0Vp0Y&2BCXM z5EmlB_TX$2&|lgMkg&P5nIqFjI>&O0BAT(#v9a%mfOGgAso74=<}(e z)bAibZdZtWe@Az&xt{g;^~*+LVTMsxoA;5wREh3O8rMTs`TNpn*&Y`ys(`+W!Hv!io3Kp3X2$kI1 z(TJ5KpVWFK-&6189<$DR*=79}YbD~e!7f_z8}k2Y=FrTawY8u_Kygd)9--s)yx1gH zHPu#_*q0EUj0F)`L`$G_tW={LM;Tr>%%OvaIdSv^#+cYFsvt5JSrSM$CITTkR*}%q zC8C!E+db|hAjua>Vw1!kj1WrXid&2KOusq(XB`5B6f(al|7jqO+6=C|ps5E9no+X@ zTnd2@GVXO~AP{JyFjxej9L4)?x`BwQg7EBO9OAu+bEQXmYwkdOrksR ztps`n0*qy@F}I2e#MsQq2<5A->9y%wtCQ8e8X!BC{doH#v1auVdZso*%e0VIB4iH% z2uuhz5Gbp$7*=9&Y~v^+qa(a^;4Kd9e}gaxA%Ny0$eh3(mdI414YGZ|?UQ~7xG_B> zBz0q%sjnU(6Ke&$3s}gGWr*tM299!&CRTqL&uc^> zm;kgj9TQk7NhR6!{#{(N{Tg0<=@*)sTu4maV^)7g0Oh*gC zC}g@ejTDjD;YO>cHu1R^Xrj9BBhLH z0xJkYg9+k*#ifMtGuaGx{i{3Kv2zD6KKCNi)3M~5XQ4I?-a3slpb%PgqQ{mt32lkT zWlVx$eBmqxgOn0$Rv8#e0v0XGSKGb3H>R?q+26^o&;9`dD}>lm!GL>*T; z_9fc>fHAQv9GZwjQ-?ZUV9eM`f)Lm#0|L>UZN8+vg10+4ADh6E)RuHR*TWiT7tS)0 z8$nu$Of;YshJ=A7!eB2+2m1bmUGLw;wjJAe@%guzgX(3#{}Y1 zNI@;Ak@s>4A+T5)lPy{caUAkD|K%O;Y0D*(&9H0tE=q$XPMthOwN@hxBAPP+&6xnB zO`L5+%d|K-_b!1Ax@+phW29&L>`P@6d!|s=%2&e(;_a%Q)Sl<1ln5!~5x;E;LK4`3 z(~D;q&5fdkq7??Tg0M3tyys0P0XN*ZlWjY;@%*zd@Z!(+5{4nnL4B@?9+K!Wn2aW9 z+GeM}R@jaS7;BNjcC@sUym)p|DK(;{BjbqXl7(@vw^5yB#c z!AgO#qMv{StJJa}5qJo?8zJiA5far6L^1Jgp>_J2WF-^=5wC$`_eJaWB19|!FZ#fXevL>P zZZ|G~%3_6Z)>6zDE_V*N4+rVqKDXW5ej>VyAJJn5LW_)ha+rs2pXjDh~2!X5Ic(k_`Ym#Mjg1Q+sd&7-QZ9+3E9hs(QBWWe@q8I!U z(-2D{JQg}rlIZ!q+!UFJ=brgFk3RA^3-b%z_H~3wH4!O`lhWw4M*AA66`tebXr}`_ z_6Xy;uuy4KAdI_Y0yC?lMs!X(a?}RhflG*9GgxX8OEp3uSx!PP8J8R31vvQTAs+h9 z!<;(V8{M&x36N=n_F~{FqtIE6OiBE-Puk1G|7dJS14!ZsZNI<f96$|KCS=?bTm)PYRIf2$?e|U!zhAozdt_3|x2u z-}A|*3i0(lQpdDi0*f)0$V72qMnF&tPU>c*bvQkehE}|hfI|YP_q*q)hZx%0aTUhA zMx((${NP9Y;}4&r)$025Dh0Y=Q7Mg1DRjm`XEi#l5S|1LDKACIFZK99ZQ#k1CCT|l zP{#x&#tJkmt;4!iY3^?e(AF%n&}+55;M>96CE7s`Ay<&Bwd{T2WxoH=-!fb7KK7$r za7z*=BT*@hlhHU?Cy}~BIAA4Y-E1HDw)A_|zMU5u3-SI%($!X_xnI}L*I!O95iA%e zs`l=G0+dA3J?DCrUc`%`D@n(W9_PCcevjivk9W>VCGblMuc**|tmbacjU}H}2v>9# zL<9aHc{krDZEKbTZ|7=Ig@w*~!Pd^#U)HVp)_B;Aj%Z))Xz!}_?_Vqj*BLC^wadgm zTb||n-+Pq3&%f01(1ZZLph*w8=#;|AIJj9CH|LY2qS3)>1isKpxyq%REMN=-g!1^oDjPw@{w z_#ur(H+bn~G`V39H|yY}9o(FYn{#n84l1P(j=)Nb!I0BAhEpR*WWSxuew&YTH`H8h zRjJHZIuBV@&n!NP#cF_sQ;Uxlwio^jfGHbnsu$(z6IsXOyGTgdTFWngv5$xU&m&Bo zpX!{~t|UL~lPY>R83!-x;^jTutcyu(iDY9!^ysSqm=aVX?@C!a(&cjJNNGF!M6pBH2kRf*{R`*^( z2ogINOQatEiD;LAu!56wCz+X;!M0+psT`kwp#8{gXAwMic#cJog@*zE_@$)Wz&L>q!kuIiV@EH%~Yor!r zoh$?HAVsGbL+FvLT_$C^GmuRn+g{HlCgZj7eS~M@C#Y;>=jRU3eY4%K4gp~;oU0tI ze64tW@xR-;A)Eyo}cYo+_sB zb3T6BBcIMw@=Fxm5}x#yNwlr%G2k}%wvG3eUFWS`J2rEalPBK6)=ez^qm{3PwXm~$ z(iaAqd87R0{Pz64Qp=&>bd%<WBYF26Z@-_ZL9|JnwY=BWnNbd{oCjI}`Nq;$~9 zu~r%_G$T7lsTEo=0j@!%4UVr#Wm05v8M1{e>1-O$_i$VXr8P=*gB86U@4#xi*`got z(t7`Wf_7{Fc7 z*h@Z1dnae#;pu%(6HLYHisoEvZ~2Y#H7YuaXlC9IA|3|m8Ix{mp#kruI#$2%uD_V z*|~e6waB+#d64R{IEG-YU6_1f@>4cizF)Rt*e0xnWgFVlnX$}Av4~)vhnbd}p7z;$90T+hXIyzZDG9h@EjeFU_@%9w->5j`ZtfSoSrq#m~& zmlpWy%U|WSpZ@|=kDZ?RWAlG8_1g58R>OJ0z+LrB^%;Ln>IS#q?6iTQR<2S>&9kYr ziHw_x!OH}ELV}ab6rH+qVh!m5(3YO+m2v`J%UC;9ANZIsM>zf9dq{{(#Q%QrE9`yt z1)^FA0;=P+$0nYexc5R)+KaB^q$|A*caJ^p55*5lD_=2k(|Ue;=WjET9gaJi>>lZ4 zK?|cVucYj^f4bv<=p4smL3?oQE!$(o(t5c*%bz~;r~GQ~KB7h}`NnkP$$6`tt43tL|-^S6wyLz4fJ8w9Uln*nRuB-Dan~cO;)oi%ZY9&si)_pZE!X^V4te?xA-vtytx)v5Ql$PJd?hjoI&B4xTHD zW%)z?_H}oTJm{9XFHJcahqYUWxoh`_xnsla6#e2d6Ie#VQjp8WhHh?z4W4=Dr#!Ux zyBvAzZGvi7z^&QV-ic=?Kh>CS9KBpDR~*k4N~nPwOZN_ZVBmhKyRXeDUz1;-=jNTa zu;-dR>{`2vyqoI*lMIfRkV6x4;QRr8cI0O~weKmWPEQdvx;r=~G}GmOD&JQ=F#9(b zdMV=9LO?s|tR5KLJ@C20b%oCg)$`&c;AUMiLs_ofcr7<5p`O4wS*Jk#YzZ@?1`}UWc zuG)@<&gx=uXYtd;>kId&)XJ~UDld-oDo>*vg-jlWGsY4H5m7TFY=lJ3m4zAAqa$;N zD&L$tIQKxf7_Ra_;N_*Ox24l=PzsseklvHqlKXgOL;7x=evdCt*TN&!)3qlTPAoiH zJ6(I_pY6-jtF$iMqC1)zN!{uXc{e#l_j)I%H|w+>P9Dr?zdqkIftd|!;kjTTJQ>Wj r4mGBmuh%E*FSq7eMn