From df9693de24059905ca0ffadf9ab91a56634649a4 Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Tue, 3 Jun 2025 09:17:33 -0500 Subject: [PATCH 1/9] test --- python/tank/authentication/invoker.py | 6 +- python/tank/authentication/login_dialog.py | 13 +- .../core/username_password_dialog.py | 4 +- .../ui/aspect_preserving_label.py | 4 +- .../tank/authentication/ui/qt_abstraction.py | 1 + python/tank/bootstrap/async_bootstrap.py | 5 +- python/tank/platform/engine.py | 18 +- python/tank/util/pyside6_patcher.py | 648 +++--------------- python/tank/util/qt_importer.py | 95 ++- .../test_interactive_authentication.py | 30 +- tests/authentication_tests/test_web_login.py | 4 +- tests/platform_tests/test_engine.py | 22 +- 12 files changed, 212 insertions(+), 638 deletions(-) diff --git a/python/tank/authentication/invoker.py b/python/tank/authentication/invoker.py index 09b2f85323..f28bb921e6 100644 --- a/python/tank/authentication/invoker.py +++ b/python/tank/authentication/invoker.py @@ -29,7 +29,7 @@ # in the context of a DCC, but occur too early for the Toolkit logging to be # fully in place to record it. try: - from .ui.qt_abstraction import QtCore, QtGui + from .ui.qt_abstraction import QtCore, QtGui, QtWidgets except Exception: QtCore, QtGui = None, None @@ -59,7 +59,7 @@ def show_ui(): thread will be produced. """ # If we are already in the main thread, no need for an invoker, invoke directly in this thread. - if QtCore.QThread.currentThread() == QtGui.QApplication.instance().thread(): + if QtCore.QThread.currentThread() == QtWidgets.QApplication.instance().thread(): return lambda fn, *args, **kwargs: fn(*args, **kwargs) class MainThreadInvoker(QtCore.QObject): @@ -80,7 +80,7 @@ def __init__(self): self._res = None self._exception = None # Make sure that the invoker is bound to the main thread - self.moveToThread(QtGui.QApplication.instance().thread()) + self.moveToThread(QtWidgets.QApplication.instance().thread()) def __call__(self, fn, *args, **kwargs): """ diff --git a/python/tank/authentication/login_dialog.py b/python/tank/authentication/login_dialog.py index 23eabec683..c886c4a22f 100644 --- a/python/tank/authentication/login_dialog.py +++ b/python/tank/authentication/login_dialog.py @@ -38,6 +38,7 @@ QtNetwork, QtWebKit, QtWebEngineWidgets, + QtWidgets, qt_version_tuple, ) from . import app_session_launcher @@ -746,7 +747,7 @@ def _ok_pressed(self): Validate the values, accepting if login is successful and display an error message if not. """ # Wait for any ongoing Site Configuration check thread. - QtGui.QApplication.setOverrideCursor(QtCore.Qt.WaitCursor) + QtWidgets.QApplication.setOverrideCursor(QtCore.Qt.WaitCursor) try: if not self._query_task.wait(THREAD_WAIT_TIMEOUT_MS): logger.warning( @@ -754,7 +755,7 @@ def _ok_pressed(self): % self._get_current_site() ) finally: - QtGui.QApplication.restoreOverrideCursor() + QtWidgets.QApplication.restoreOverrideCursor() # pull values from the gui site = self._get_current_site() @@ -836,8 +837,8 @@ def _authenticate(self, error_label, site, login, password, auth_code=None): return else: # set the wait cursor - QtGui.QApplication.setOverrideCursor(QtCore.Qt.WaitCursor) - QtGui.QApplication.processEvents() + QtWidgets.QApplication.setOverrideCursor(QtCore.Qt.WaitCursor) + QtWidgets.QApplication.processEvents() # try and authenticate self._new_session_token = session_cache.generate_session_token( @@ -850,9 +851,9 @@ def _authenticate(self, error_label, site, login, password, auth_code=None): success = True finally: # restore the cursor - QtGui.QApplication.restoreOverrideCursor() + QtWidgets.QApplication.restoreOverrideCursor() # dialog is done - QtGui.QApplication.processEvents() + QtWidgets.QApplication.processEvents() # Do not accept while the cursor is overriden, if freezes the dialog. if success: diff --git a/python/tank/authentication/sso_saml2/core/username_password_dialog.py b/python/tank/authentication/sso_saml2/core/username_password_dialog.py index ef2856942f..2bec65057f 100644 --- a/python/tank/authentication/sso_saml2/core/username_password_dialog.py +++ b/python/tank/authentication/sso_saml2/core/username_password_dialog.py @@ -14,14 +14,14 @@ from __future__ import print_function # pylint: disable=import-error -from ...ui.qt_abstraction import QtCore, QtGui +from ...ui.qt_abstraction import QtCore, QtGui, QtWidgets # No point in proceeding if QtGui is None. if QtGui is None: raise ImportError("Unable to import QtGui") -class UsernamePasswordDialog(QtGui.QDialog): +class UsernamePasswordDialog(QtWidgets.QDialog): """Simple dialog to request a username and password from the user.""" def __init__(self, window_title=None, message=None): diff --git a/python/tank/authentication/ui/aspect_preserving_label.py b/python/tank/authentication/ui/aspect_preserving_label.py index 5e6db3483c..ed08b410f0 100644 --- a/python/tank/authentication/ui/aspect_preserving_label.py +++ b/python/tank/authentication/ui/aspect_preserving_label.py @@ -8,7 +8,7 @@ # agreement to the Shotgun Pipeline Toolkit Source Code License. All rights # not expressly granted therein are reserved by Shotgun Software Inc. -from .qt_abstraction import QtGui +from .qt_abstraction import QtGui, QtWidgets from .qt_abstraction import QtCore @@ -69,4 +69,4 @@ def resizeEvent(self, e): scaled_pixmap = self._pix.scaled( self.size(), QtCore.Qt.KeepAspectRatio, QtCore.Qt.SmoothTransformation) QtGui.QLabel.setPixmap(self, scaled_pixmap) - QtGui.QApplication.instance().processEvents() + QtWidgets.QApplication.instance().processEvents() diff --git a/python/tank/authentication/ui/qt_abstraction.py b/python/tank/authentication/ui/qt_abstraction.py index e70aabe22c..1a07d44602 100644 --- a/python/tank/authentication/ui/qt_abstraction.py +++ b/python/tank/authentication/ui/qt_abstraction.py @@ -19,6 +19,7 @@ QtGui = _importer.QtGui QtWebKit = _importer.QtWebKit QtNetwork = _importer.QtNetwork +QtWidgets = _importer.QtWidgets QtWebEngineWidgets = _importer.QtWebEngineWidgets qt_version_tuple = _importer.qt_version_tuple del _importer diff --git a/python/tank/bootstrap/async_bootstrap.py b/python/tank/bootstrap/async_bootstrap.py index 39abebb9d6..e2ff06cc46 100644 --- a/python/tank/bootstrap/async_bootstrap.py +++ b/python/tank/bootstrap/async_bootstrap.py @@ -14,6 +14,7 @@ importer = QtImporter() QtCore = importer.QtCore QtGui = importer.QtGui +QtWidgets = importer.QtWidgets if QtCore is None: # Raise an exception when Qt is not available. raise ImportError @@ -273,8 +274,8 @@ def _get_thread_info_msg(caller): :return: Generated information message. """ - if QtGui.QApplication.instance(): - if QtCore.QThread.currentThread() == QtGui.QApplication.instance().thread(): + if QtWidgets.QApplication.instance(): + if QtCore.QThread.currentThread() == QtWidgets.QApplication.instance().thread(): msg = "%s is running in main Qt thread." else: msg = "%s is running in background Qt thread." diff --git a/python/tank/platform/engine.py b/python/tank/platform/engine.py index 9ea604342d..41376e00eb 100644 --- a/python/tank/platform/engine.py +++ b/python/tank/platform/engine.py @@ -1213,12 +1213,12 @@ def _execute_in_main_thread(self, invoker_id, func, *args, **kwargs): self._invoker if invoker_id == self._SYNC_INVOKER else self._async_invoker ) if invoker: - from .qt import QtGui, QtCore + from .qt import QtGui, QtCore, QtWidgets if ( - QtGui.QApplication.instance() + QtWidgets.QApplication.instance() and QtCore.QThread.currentThread() - != QtGui.QApplication.instance().thread() + != QtWidgets.QApplication.instance().thread() ): # invoke the function on the thread that the QtGui.QApplication was created on. return invoker.invoke(func, *args, **kwargs) @@ -1550,7 +1550,7 @@ def _ensure_core_fonts_loaded(self): if not self.has_ui: return - from sgtk.platform.qt import QtGui + from sgtk.platform.qt import QtGui, QtWidgets # if the fonts have been loaded, no need to do anything else if self.__fonts_loaded: @@ -1560,7 +1560,7 @@ def _ensure_core_fonts_loaded(self): # it is possible that QtGui is not available (test suite). return - if not QtGui.QApplication.instance(): + if not QtWidgets.QApplication.instance(): # there is a QApplication, so we can load fonts. return @@ -1631,9 +1631,9 @@ def _get_dialog_parent(self): :return: QT Parent window (:class:`PySide.QtGui.QWidget`) """ # By default, this will return the QApplication's active window: - from .qt import QtGui + from .qt import QtGui, QtWidgets - return QtGui.QApplication.activeWindow() + return QtWidgets.QApplication.activeWindow() def _create_dialog(self, title, bundle, widget, parent): """ @@ -2226,9 +2226,9 @@ def __initialize_dark_look_and_feel_qt5_qt6(self): at the application level, and then constructs and applies a custom palette that emulates Maya 2017's color scheme. """ - from .qt import QtGui + from .qt import QtGui, QtWidgets - app = QtGui.QApplication.instance() + app = QtWidgets.QApplication.instance() # Set the fusion style, which gives us a good base to build on. With # this, we'll be sticking largely to the style and won't need to diff --git a/python/tank/util/pyside6_patcher.py b/python/tank/util/pyside6_patcher.py index 90d4e56063..541077cca5 100644 --- a/python/tank/util/pyside6_patcher.py +++ b/python/tank/util/pyside6_patcher.py @@ -1,602 +1,142 @@ -# Copyright (c) 2016 Shotgun Software Inc. -# -# CONFIDENTIAL AND PROPRIETARY -# -# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit -# Source Code License included in this distribution package. See LICENSE. -# By accessing, using, copying or modifying this work you indicate your -# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights -# not expressly granted therein are reserved by Shotgun Software Inc. - -from .pyside2_patcher import PySide2Patcher - import imp - -class PySide6Patcher(PySide2Patcher): - """ - PySide6 backwards compatibility layer for use with PySide code. - - Patches PySide6 so it can be API compatible with PySide. This is the first step to provide - support for PySide6. The next step will be to deprecate Qt4/PySide, and make Qt6/PySide6 - the default base qt module. - - .. code-block:: python - from PySide6 import QtGui, QtCore, QtWidgets - import PySide6 - PySide6Patcher.patch(QtCore, QtGui, QtWidgets, PySide6) - """ - - # These classes have been moved from QtGui to QtOpenGL in Qt6. Move them back to QtGui to - # preserve compatibility between Qt6 and Qt4. - _opengl_to_gui = set( - [ - "QOpenGLBuffer", - "QOpenGLDebugLogger", - "QOpenGLDebugMessage", - "QOpenGLFramebufferObject", - "QOpenGLFramebufferObjectFormat", - "QOpenGLPixelTransferOptions", - "QOpenGLShader", - "QOpenGLShaderProgram", - "QOpenGLTexture", - "QOpenGLTextureBlitter", - "QOpenGLTimeMonitor", - "QOpenGLTimerQuery", - "QOpenGLVersionProfile", - "QOpenGLVertexArrayObject", - "QOpenGLWindow", - ] - ) - - @classmethod - def _patch_QApplication(cls, QtGui): - """Patch QApplication.""" - - def desktop(*args): - """ - QDesktopWidget removed along with QApplication.desktop, in favor or QScreen. - """ - return QtGui.QApplication.primaryScreen() - - # First apply the patch from PySide2 patcher - super()._patch_QApplication(QtGui) - - # Now apply any PySide6 specific patches - QtGui.QApplication.desktop = desktop - - @classmethod - def _patch_QAbstractItemView(cls, QtGui): - """Patch QAbstractItemView.""" - - def viewOptions(self): - """Patch the viewOptions method.""" - - option = QtGui.QStyleOptionViewItem() - self.initViewItemOption(option) - return option - - # First apply the patch from PySide2 patcher - super(PySide6Patcher, cls)._patch_QAbstractItemView(QtGui) - - # Now apply any PySide6 specific patches - QtGui.QAbstractItemView.viewOptions = viewOptions +import sys + +class PySide6Patcher: + _core_to_qtgui = { + "QStringListModel", + "QStringList", + "QTextStream", + "QTextStreamManipulator", + "QTextCodec", + "QTextCodecConverter", + "QTextDecoder", + "QTextEncoder", + "QTextStreamReader", + "QTextStreamWriter", + } @classmethod - def _patch_QTextCodec(cls, QtCore): + def patch(cls, QtCore, QtGui, QtWidgets, PySide2): """ - Patch QTextCodec. + Patches PySide2 to make it compatible with PySide6. - QTextCodec has been removed in Qt6. Using this class will do nothing. + :param QtCore: The QtCore module. + :param QtGui: The QtGui module. + :param QtWidgets: The QtWidgets module. + :param PySide2: The PySide2 module. """ + qt_core_shim = imp.new_module("PySide6.QtCore") + qt_gui_shim = imp.new_module("PySide6.QtGui") - class QTextCodec(): - @staticmethod - def codecForName(name): - return None - - @staticmethod - def setCodecForCStrings(codec): - pass - - QtCore.QTextCodec = QTextCodec - - @classmethod - def _patch_QPixmap(cls, QtGui): - """ - Patch QPixmap. + # Move everything from QtGui and QtWidgets to the QtGui shim since they belonged there + # in PySide6. + cls._move_attributes(qt_gui_shim, QtWidgets, dir(QtWidgets)) + cls._move_attributes(qt_gui_shim, QtGui, dir(QtGui)) - QPixmap constructor no longer can take None as the first argument, instead no argument - must be passed. - """ + # Some classes from QtGui have been moved to QtCore, so put them back into QtGui + cls._move_attributes(qt_gui_shim, QtCore, cls._core_to_qtgui) + # Move the rest of QtCore in the new core shim. + cls._move_attributes( + qt_core_shim, QtCore, set(dir(QtCore)) - cls._core_to_qtgui + ) - original_QPixmap = QtGui.QPixmap + # Move QtWebEngineWidgets to the QtGui shim + qt_webengine_widgets = imp.new_module("PySide6.QtWebEngineWidgets") + cls._move_attributes(qt_webengine_widgets, PySide2.QtWebEngineWidgets, dir(PySide2.QtWebEngineWidgets)) + sys.modules["PySide6.QtWebEngineWidgets"] = qt_webengine_widgets - class QPixmap(original_QPixmap): - def __init__(self, *args, **kwargs): - if len(args) == 1 and args[0] is None: - original_QPixmap.__init__(self) - else: - original_QPixmap.__init__(self, *args, **kwargs) + # Move QtNetwork to the QtCore shim + qt_network = imp.new_module("PySide6.QtNetwork") + cls._move_attributes(qt_network, PySide2.QtNetwork, dir(PySide2.QtNetwork)) + sys.modules["PySide6.QtNetwork"] = qt_network - @staticmethod - def grabWindow(window=0, x=0, y=0, width=-1, height=-1): - """ - Add deprecated method - https://doc.qt.io/qt-5/qpixmap-obsolete.html#grabWindow - """ - screen = QtGui.QApplication.primaryScreen() - return screen.grabWindow(window, x, y, width, height) + # Move shiboken2 to the PySide6 module + sys.modules["PySide6.shiboken2"] = PySide2.shiboken2 + # ... other necessary patches ... - QtGui.QPixmap = QPixmap + return qt_core_shim, qt_gui_shim @classmethod - def _patch_QIcon(cls, QtGui): - """ - Patch QIcon. - - QIcon.pixmap method should create object from the patched QPixmap class - """ - - original_QIcon_pixmap = QtGui.QIcon.pixmap # Returns a native QPixmap - - def pixmap(self, *args, **kwargs): - return QtGui.QPixmap(original_QIcon_pixmap(self, *args, **kwargs)) - - QtGui.QIcon.pixmap = pixmap - + def _move_attributes(cls, dst, src, attributes): + for attr in attributes: + setattr(dst, attr, getattr(src, attr)) @classmethod - def _patch_QLabel(cls, QtGui): - """ - Patch QLabel. - - Related to changes in QPixmap, None cannot be passed as null pixmap, instead an - instance QPixmap must be created with no arguments. - """ + def _patch_QModelIndex(cls, QtCore): + """Patch QModelIndex.""" - original_QLabel_setPixmap = QtGui.QLabel.setPixmap + def child(self, row, column): + """Patch the child method.""" - def setPixmap(self, *args, **kwargs): - if len(args) == 1 and args[0] is None: - return original_QLabel_setPixmap(self, QtGui.QPixmap()) - return original_QLabel_setPixmap(self, *args, **kwargs) + return self.model().index(row, column, self) - QtGui.QLabel.setPixmap = setPixmap + QtCore.QModelIndex.child = child @classmethod - def _patch_QScreen(cls, QtCore, QtGui): - """ - Patch the QScreen. - - Modify QScreen to be accessed as if it were QDesktopWidget to provide backward - compatibility for QDesktopWidget. - """ - - class QDesktopWidget_screenCountChanged(QtCore.QObject): - """Patch for QDesktopWidget screenCountChanged signal.""" - - @staticmethod - def connect(receiver): - QtGui.QApplication.instance().screenAdded.connect(receiver) - QtGui.QApplication.instance().screenRemoved.connect(receiver) - - @staticmethod - def disconnect(receiver): - QtGui.QApplication.instance().screenAdded.disconnect(receiver) - QtGui.QApplication.instance().screenRemoved.disconnect(receiver) - - @staticmethod - def emit(new_count): - num_screens = len(QtGui.QGuiApplication.screens()) - if num_screens < new_count: - # screenAdded requires one arg, the QScreen that was added. Pass None - # since we do not have this data available to us here. - QtGui.QApplication.instance().screenAdded.emit(None) - elif num_screens > new_count: - # screenRemoved requires one arg, the QScreen that was added. Pass None - # since we do not have this data available to us here. - QtGui.QApplication.instance().screenRemoved.emit(None) - - class QDesktopWidget_resized(QtCore.QObject): - """Patch for QDesktopWidget resized signal.""" - - @staticmethod - def connect(receiver): - # NOTE since we do not have the screen info, this signal will only work for - # the primary screen - screen = QtGui.QGuiApplication.primaryScreen() - screen.geometryChanged.connect(receiver) - - @staticmethod - def disconnect(receiver): - # NOTE since we do not have the screen info, this signal will only work for - # the primary screen - screen = QtGui.QGuiApplication.primaryScreen() - screen.geometryChanged.disconnect(receiver) - - @staticmethod - def emit(screen_index): - try: - screens = QtGui.QGuiApplication.screens() - screen = screens[screen_index] - screen.geometryChanged.emit() - except: - pass - - - original_QScreen_availableGeometry = QtGui.QScreen.availableGeometry - def availableGeometry(self, arg__1=None): - """ - Patch QScreen to also act as QDesktopWidget. - - :param arg__1 Union(int, QtGui.QWidget, QtCore.QPoint): A widget, screen index or point. - """ - if arg__1 is None: - return original_QScreen_availableGeometry(self) - - if isinstance(arg__1, int): - screens = QtGui.QGuiApplication.screens() - try: - screen = screens[arg__1] - except IndexError: - return QtCore.QRect() - elif isinstance(arg__1, QtCore.QPoint): - return original_QScreen_availableGeometry(self) - else: - screen = arg__1.screen() - - return screen.availableGeometry() - - def screenNumber(self, widget): - """Provide QDesktopWidget method through QScreen.""" - - try: - screen = widget.screen() - return QtGui.QGuiApplication.screens().index(screen) - except (IndexError, AttributeError): - return -1 - - def screenCount(self): - """Provide QDesktopWidget method through QScreen.""" - - return len(QtGui.QGuiApplication.screens()) - - def winId(self): - """ - Provide QDesktopWidget method through QScreen. - - For QDesktopWidget, this would have returned the window system identifier of the - desktop widget; however, QScreen is not a widget, so just return default value 0. - """ - - return 0 - - # QDesktopWidget methods patched onto QScreen - QtGui.QScreen.availableGeometry = availableGeometry - QtGui.QScreen.screenGeometry = availableGeometry - QtGui.QScreen.screenNumber = screenNumber - QtGui.QScreen.screenCount = screenCount - QtGui.QScreen.winId = winId - - # QDesktopWidget signals patched onto QScreen - # https://doc.qt.io/qt-5/qdesktopwidget-obsolete.html#resized - QtGui.QScreen.resized = QDesktopWidget_resized() - QtGui.QScreen.screenCountChanged = QDesktopWidget_screenCountChanged() + def _patch_QAbstractItemView(cls, QtGui): + """Patch QAbstractItemView.""" - @classmethod - def _patch_QOpenGLContext(cls, QtGui): - """Patch QOpenGLContext.""" + def viewOptions(self): + """Patch the viewOptions method.""" - def versionFunctions(self, version_profile=None): - if version_profile: - return QtGui.QOpenGLVersionFunctionsFactory.get(versionProfile=version_profile, context=self) - return QtGui.QOpenGLVersionFunctionsFactory.get(context=self) + option = QtGui.QStyleOptionViewItem() + self.initViewItemOption(option) + return option - QtGui.QOpenGLContext.versionFunctions = versionFunctions + QtGui.QAbstractItemView.viewOptions = viewOptions @classmethod - def _patch_QWheelEvent(cls, QtGui): - """Patch QWheelEvent.""" + def _patch_QTextCodec(cls, QtCore): + """Patch QTextCodec.""" - def delta(self): - """Patch the delta method.""" + def codecForName(name): + """Patch the codecForName method.""" - # Use the more common mouse vertical scroll as the delta. - # Horizontal scroll is ignored, use angleDelta().x() if the horizontal scroll is needed. - return self.angleDelta().y() + return QtCore.QTextCodec.codecForName(name) - QtGui.QWheelEvent.delta = delta + QtCore.QTextCodec.codecForName = codecForName - @classmethod - def _patch_QModelIndex(cls, QtCore): - """Patch QModelIndex.""" + # @classmethod + # def _patch_QApplication(cls, QtGui): + # """Patch QApplication.""" - def child(self, row, column): - """Patch the child method.""" + # def notify(self, receiver, event): + # """Patch the notify method.""" - return self.model().index(row, column, self) + # return self.notify(receiver, event) - QtCore.QModelIndex.child = child + # QtGui.QApplication.notify = notify @classmethod - def _patch_QRegularExpression(cls, QtCore): - """Patch QRegularExpression.""" - - original_QRegularExpression = QtCore.QRegularExpression - - class QRegularExpression(original_QRegularExpression): - def __init__(self, *args, **kwargs): - if not args: - original_QRegularExpression.__init__(self) - else: - nargs = len(args) - - case_sensitivity = kwargs.get("cs") - if not case_sensitivity and nargs > 1: - case_sensitivity = args[1] - - # FIXME can we port pattern syntax? - pattern_syntax = kwargs.get("syntax") - if not pattern_syntax and nargs > 2: - pattern_syntax = args[2] - - if case_sensitivity is None: - original_QRegularExpression.__init__(self, args[0]) - else: - if case_sensitivity == original_QRegularExpression.CaseInsensitiveOption: - opts = original_QRegularExpression.CaseInsensitiveOption - else: - opts = original_QRegularExpression.NoPatternOption - original_QRegularExpression.__init__(self, args[0], options=opts) - - self.isEmpty = lambda *args, **kwargs: QRegularExpression.isEmpty(self, *args, **kwargs) - self.indexIn = lambda *args, **kwargs: QRegularExpression.indexIn(self, *args, **kwargs) - self.matchedLength = lambda *args, **kwargs: QRegularExpression.matchedLength(self, *args, **kwargs) - self.setCaseSensitivity = lambda *args, **kwargs: QRegularExpression.setCaseSensitivity(self, *args, **kwargs) - self.pos = lambda *args, **kwargs: QRegularExpression.pos(self, *args, **kwargs) - self.cap = lambda *args, **kwargs: QRegularExpression.cap(self, *args, **kwargs) - - @staticmethod - def isEmpty(re): - """Patch the QRegExp isEmpty method.""" - - return not re.pattern() - - @staticmethod - def indexIn(re, subject, offset=0): - """Patch the QRegExp indexIn method.""" - - if offset < 0: - return -1 - - re_match = re.match(subject, offset) - start = re_match.capturedStart(0) - return start - - @staticmethod - def setCaseSensitivity(re, value): - """Patch QRegExp setCaseSensitivity method.""" - - options = re.patternOptions() - if value == original_QRegularExpression.CaseInsensitiveOption: - options |= original_QRegularExpression.CaseInsensitiveOption - else: - options &= ~original_QRegularExpression.CaseInsensitiveOption - re.setPatternOptions(options) - - @staticmethod - def matchedLength(re): - """ - This cannot be patched. - - Requires regular expression itself to have state, when regular expressions - now return QRegularExpressionMatch objects. - """ - return -1 - - @staticmethod - def pos(re, n): - """ - This cannot be patched. - - Requires regular expression itself to have state, when regular expressions - now return QRegularExpressionMatch objects. - """ - return -1 - - @staticmethod - def cap(re, n): - """ - This cannot be patched. - - Requires regular expression itself to have state, when regular expressions - now return QRegularExpressionMatch objects. - """ - return "" - - QtCore.QRegularExpression.isEmpty = QRegularExpression.isEmpty - QtCore.QRegularExpression.indexIn = QRegularExpression.indexIn - QtCore.QRegularExpression.matchedLength = QRegularExpression.matchedLength - QtCore.QRegularExpression.setCaseSensitivity = QRegularExpression.setCaseSensitivity - QtCore.QRegularExpression.pos = QRegularExpression.pos - - # This pattern matching flag is obsolete now. - QtCore.QRegularExpression.FixedString = None - - # Class must be set last - QtCore.QRegularExpression = QRegularExpression + def _patch_QDesktopServices(cls, QtGui, QtCore): + """Patch QDesktopServices.""" - @classmethod - def _patch_QCoreApplication_flush(cls, QtCore): - """ - Patch QCoreApplication obsolete flush method for compatibility. - """ + def openUrl(self, url): + """Patch the openUrl method.""" - def flush(): - """ - No-op function to serve as a placeholder for QCoreApplication.flush(). - """ - pass + return self.openUrl(url) - # Add the no-op flush method to QCoreApplication - QtCore.QCoreApplication.flush = flush + QtGui.QDesktopServices.openUrl = openUrl @classmethod - def patch( - cls, - QtWebEngineWidgets, - QtWebEngineCore, - ): - """ - Patch the PySide6 modules, classes and function to conform to the PySide interface. - - Note that when referring to PySide and Qt version, these are equivalent: - - PySide == Qt4, PySide2 == Qt5, Qt6 == PySide6 + def _patch_QMessageBox(cls, QtGui): + """Patch QMessageBox.""" - :param QtCore: The QtCore module for PySide6. - :param QtGui: The QtGui module for PySide6. - :param QtWidgets: The QtWidgets module for PySide6. + def information(self, parent, title, text, buttons, defaultButton): + """Patch the information method.""" - :return: The PySide6 modules QtCore and QtGui patched as PySide modules. - :rtype: tuple - """ - - import PySide6 - from PySide6 import ( - QtCore, - QtGui, - QtWidgets, - QtOpenGL, - ) + return self.information(parent, title, text, buttons, defaultButton) - # First create new modules to act as the PySide modules - qt_core_shim = imp.new_module("PySide.QtCore") - qt_gui_shim = imp.new_module("PySide.QtGui") + QtGui.QMessageBox.information = information - qt_web_engine_widgets_shim = None - if QtWebEngineWidgets: - qt_web_engine_widgets_shim = imp.new_module( - "PySide.QtWebEnginWidgets", - ) + @classmethod + def _patch_QScreen(cls, QtCore, QtGui): + """Patch QScreen.""" - # Move everything from QtGui and QtWidgets to the QtGui shim since they belonged there - # in PySide. - cls._move_attributes(qt_gui_shim, QtWidgets, dir(QtWidgets)) - cls._move_attributes(qt_gui_shim, QtGui, dir(QtGui)) + def availableGeometry(self): + """Patch the availableGeometry method.""" - # Some classes from QtGui have been moved to QtCore, so put them back into QtGui - cls._move_attributes(qt_gui_shim, QtCore, cls._core_to_qtgui) - # Move the rest of QtCore in the new core shim. - cls._move_attributes( - qt_core_shim, QtCore, set(dir(QtCore)) - cls._core_to_qtgui - ) + return self.availableGeometry() - # Some classes from QtGui have been moved to QtOpenGL, so put them back into QtGui for - # compatibility with Qt4 - # https://doc.qt.io/qt-6/gui-changes-qt6.html#opengl-classes - cls._move_attributes(qt_gui_shim, QtOpenGL, cls._opengl_to_gui) - - if qt_web_engine_widgets_shim: - # Move everything from QtWebEngineWidgets to the QtWebEngineWidgets shim - cls._move_attributes( - qt_web_engine_widgets_shim, - QtWebEngineWidgets, - dir(QtWebEngineWidgets), - ) - - # Patch classes from PySide6 to PySide, as done for PySide2 (these will call the - # PySide2 patcher methods.) - cls._patch_QCoreApplication(qt_core_shim) - cls._patch_QApplication(qt_gui_shim) - cls._patch_QStandardItemModel(qt_gui_shim) - if PySide6.__version_info__[0] < 5: - cls._patch_QMessageBox(qt_gui_shim) - cls._patch_QDesktopServices(qt_gui_shim, qt_core_shim) - - # ------------------------------------------------------------------------------------ - # Patch specific for PySide6 - # ------------------------------------------------------------------------------------ - - # QtCore - # ------------------------------------------------------------------------------------ - - # Attribute renamed - qt_core_shim.Qt.MidButton = qt_core_shim.Qt.MiddleButton - - # QTextCodec class removed - cls._patch_QTextCodec(qt_core_shim) - - # QModelIndex.child method removed - # https://doc.qt.io/qt-5/qmodelindex-obsolete.html - cls._patch_QModelIndex(qt_core_shim) - - # QRegExp replaced by QRegularExpression. - # https://doc.qt.io/qt-6/qtcore-changes-qt6.html#regular-expression-classes - # cls._patch_QRegExp(qt_core_shim) - cls._patch_QRegularExpression(qt_core_shim) - qt_core_shim.QRegExp = qt_core_shim.QRegularExpression - # Rename RegExp functions to RegularExpression - qt_gui_shim.QSortFilterProxyModel.filterRegExp = qt_gui_shim.QSortFilterProxyModel.filterRegularExpression - qt_gui_shim.QSortFilterProxyModel.setFilterRegExp = qt_gui_shim.QSortFilterProxyModel.setFilterRegularExpression - - # Patch the QCoreApplication.flush() method to ensure compatibility with code - # that expects this method, which is marked as obsolete. - # https://doc.qt.io/qt-5/qcoreapplication-obsolete.html#flush - cls._patch_QCoreApplication_flush(qt_core_shim) - - # QtGui - # ------------------------------------------------------------------------------------ - - # QLabel cannot be instantiated with None anymore - cls._patch_QPixmap(qt_gui_shim) - cls._patch_QLabel(qt_gui_shim) - - # QIcon.pixmap method should create object from the patched QPixmap class - cls._patch_QIcon(qt_gui_shim) - - # QWheelEvent delta is obsolete - # https://doc.qt.io/qt-5/qwheelevent-obsolete.html#delta - cls._patch_QWheelEvent(qt_gui_shim) - - # QOpenGLContext.versionFunctions replaced - # https://doc.qt.io/qt-6/gui-changes-qt6.html#the-qopenglcontext-class - cls._patch_QOpenGLContext(qt_gui_shim) - - # QAbstractItemView.viewOptions renamed and changed - # https://doc.qt.io/qt-6/widgets-changes-qt6.html#the-qabstractitemview-class - cls._patch_QAbstractItemView(qt_gui_shim) - - # Patch QScreen such that it can be used as if it were a QDesktopWidget instance - # https://doc.qt.io/qt-6/widgets-changes-qt6.html#qdesktopwidget-and-qapplication-desktop - cls._patch_QScreen(qt_core_shim, qt_gui_shim) - qt_gui_shim.QDesktopWidget = qt_gui_shim.QScreen - - # The default timeout parameter removed. This param, if given, will be ignored. It will - # always timeout after 100 ms - # https://doc.qt.io/qt-6/widgets-changes-qt6.html#the-qabstractbutton-class - qt_gui_shim.QAbstractButton.animateClick = lambda self, msec=0: self.animateClick() - - # Changes to QFont - # https://doc.qt.io/qt-6/gui-changes-qt6.html#the-qfont-class - qt_gui_shim.QFontMetrics.width = qt_gui_shim.QFontMetrics.horizontalAdvance - qt_gui_shim.QFont.setWeight = qt_gui_shim.QFont.setLegacyWeight - - # QHeaderView method rename - qt_gui_shim.QHeaderView.setResizeMode = qt_gui_shim.QHeaderView.setSectionResizeMode - - # QPainter HighQualityAntialiasing is obsolete. Use Antiasliasing instead. - # https://doc.qt.io/qt-5/qpainter.html#RenderHint-enum - qt_gui_shim.QPainter.HighQualityAntialiasing = qt_gui_shim.QPainter.Antialiasing - - # QPaelette Background is obsolete. Use Window instead. - # https://doc.qt.io/qt-5/qpalette.html#ColorRole-enum - qt_gui_shim.QPalette.Background = qt_gui_shim.QPalette.Window - - if qt_web_engine_widgets_shim: - # QtWwebEngineWidgets - qt_web_engine_widgets_shim.QWebEnginePage = QtWebEngineCore.QWebEnginePage - qt_web_engine_widgets_shim.QWebEngineProfile = QtWebEngineCore.QWebEngineProfile - - return qt_core_shim, qt_gui_shim, qt_web_engine_widgets_shim + QtCore.QScreen.availableGeometry \ No newline at end of file diff --git a/python/tank/util/qt_importer.py b/python/tank/util/qt_importer.py index 30df55ec11..638cefb26f 100644 --- a/python/tank/util/qt_importer.py +++ b/python/tank/util/qt_importer.py @@ -19,7 +19,11 @@ logger = LogManager.get_logger(__name__) - +def custom_logger(e): + error_log_path = f"C:/Users/chaucae/OneDrive-Autodesk/Documents/projects/tk-core/logs.log" # any path + with open(error_log_path, "a") as error_file: + error_file.write("CUSTOM DEBUG: ") + error_file.write(str(e) + "\n\n") class QtImporter(object): """ Imports different versions of Qt and makes their API compatible with PySide. @@ -34,15 +38,16 @@ class QtImporter(object): ... """ - QT4, QT5, QT6 = range(4, 7) + QT5, QT6 = range(5, 7) - def __init__(self, interface_version_requested=QT4): + def __init__(self, interface_version_requested=QT6): """ Imports the Qt modules and sets the QtCore, QtGui and wrapper attributes on this object. :param interface_version_request: Indicates which version of the Qt API is requested. """ + self.interface_version_requested = interface_version_requested ( self._binding_name, self._binding_version, @@ -70,7 +75,8 @@ def QtWebKit(self): """ :returns: QtWebKit module, if available. """ - return self._modules["QtWebKit"] if self._modules else None + logger.error(f"LALO interface_version_requested: {self.interface_version_requested}") + return self._modules.get("QtWebKit") if self._modules else None @property def QtNetwork(self): @@ -85,6 +91,13 @@ def QtWebEngineWidgets(self): :returns: QtWebEngineWidgets module, if available. """ return self._modules["QtWebEngineWidgets"] if self._modules else None + + @property + def QtWidgets(self): + """ + :returns: + """ + return self._modules["QtWidgets"] if self._modules else None @property def binding(self): @@ -313,6 +326,34 @@ def _import_pyside6_as_pyside(self): # pragma: no cover self._to_version_tuple(QtCore.qVersion()), ) + def _import_pyside2_as_pyside6(self): + import PySide2 + from PySide2 import QtCore, QtGui, QtWidgets + import shiboken2 + from .pyside6_patcher import PySide6Patcher + + # Patch PySide2 to make it compatible with PySide6 + QtCore, QtGui = PySide6Patcher.patch(QtCore, QtGui, QtWidgets, PySide2) + QtNetwork = self._import_module_by_name("PySide2", "QtNetwork") + QtWebEngineWidgets = self._import_module_by_name("PySide2.QtWebEngineWidgets", "QtWebEngineWidgets") + + # ... other necessary patches and imports ... + + return ( + "PySide2", + PySide2.__version__, + PySide2, + { + "QtCore": QtCore, + "QtGui": QtGui, + "QtNetwork": QtNetwork, + "QtWebEngineWidgets": QtWebEngineWidgets, + "QtWebKit": None, + "shiboken": shiboken2, + }, + self._to_version_tuple(QtCore.qVersion()), + ) + def _import_pyside6(self): """ Import PySide6. @@ -326,6 +367,7 @@ def _import_pyside6(self): sub_modules = pkgutil.iter_modules(PySide6.__path__) if "SHOTGUN_SKIP_QTWEBENGINEWIDGETS_IMPORT" in os.environ: + custom_logger("Skipping QtWebEngineWidgets import") sub_modules = [ m for m in sub_modules if not m.name.startswith("QtWebEngine") ] @@ -333,16 +375,21 @@ def _import_pyside6(self): modules_dict = {} # Add shiboken6 to the modules dict modules_dict["shiboken"] = shiboken6 - for module in sub_modules: - module_name = module.name + # modules_dict["QtWebKit"] = None + custom_logger(f"sub_modeules {list(sub_modules)}") + # custom_logger(f"sub_modules: {list(sub_modules)[0]}") + for module in pkgutil.iter_modules(PySide6.__path__): + custom_logger(f"module_name:") try: + module_name = module.name wrapper = __import__("PySide6", globals(), locals(), [module_name]) if hasattr(wrapper, module_name): modules_dict[module_name] = getattr(wrapper, module_name) except Exception as e: + custom_logger(f"Unable to import module '{module_name}': {e}") logger.debug("'%s' was skipped: %s", module_name, e) pass - + custom_logger(f"modules_dict: {modules_dict}") return ( PySide6.__name__, PySide6.__version__, @@ -363,10 +410,11 @@ def _to_version_tuple(self, version_str): return tuple([int(c) for c in version_str.split(".")]) def _import_modules(self, interface_version_requested): + logger.debug(f"LALO interface_version_requested: {interface_version_requested}") """ Tries to import different Qt binding implementation in the following order: - - PySide2 - PySide6 + - PySide2 PySide6 is attempted to be imported last at the moment because it is is not yet fully supported. If a DCC requires PySide6, it can run with the current level of support, @@ -377,27 +425,23 @@ def _import_modules(self, interface_version_requested): """ interface = { - self.QT4: "Qt4", self.QT5: "Qt5", self.QT6: "Qt6", }.get(interface_version_requested) logger.debug("Requesting %s-like interface", interface) - if interface_version_requested == self.QT4: - # First, try PySide 2 since Toolkit ships with PySide2. + if interface_version_requested == self.QT6: try: - pyside2 = self._import_pyside2_as_pyside() - logger.debug("Imported PySide2 as PySide.") - return pyside2 + pyside6 = self._import_pyside6() + logger.debug("Imported PySide6.") + return pyside6 except ImportError: pass - # Last attempt, try PySide6. PySide6 is not yet fully supported but allow DCCs that - # require PySide6 to run with the current support try: - pyside6 = self._import_pyside6_as_pyside() - logger.debug("Imported PySide6 as PySide.") - return pyside6 + pyside2_as_pyside6 = self._import_pyside2_as_pyside6() + logger.debug("Imported PySide2 as PySide6.") + return pyside2_as_pyside6 except ImportError: pass @@ -409,19 +453,6 @@ def _import_modules(self, interface_version_requested): except ImportError: pass - # We do not test for PyQt5 since it is supported on Python 3 only at the moment. - - elif interface_version_requested == self.QT6: - try: - pyside6 = self._import_pyside6() - logger.debug("Imported PySide6.") - return pyside6 - except ImportError: - pass - - # TODO migrate qt base from Qt4 interface to Qt6 will require patching Qt5 as Qt6 - logger.debug("Qt6 interface not implemented for Qt5") - logger.debug("No Qt matching that interface was found.") return (None, None, None, None, None) diff --git a/tests/authentication_tests/test_interactive_authentication.py b/tests/authentication_tests/test_interactive_authentication.py index 3fce6dcca4..02323a6900 100644 --- a/tests/authentication_tests/test_interactive_authentication.py +++ b/tests/authentication_tests/test_interactive_authentication.py @@ -61,20 +61,20 @@ def setUp(self, *args, **kwargs): """ Adds Qt modules to tank.platform.qt and initializes QApplication """ - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtWidgets # See if a QApplication instance exists, and if not create one. Use the # QApplication.instance() method, since qApp can contain a non-None # value even if no QApplication has been constructed on PySide2. - if not QtGui.QApplication.instance(): - self._app = QtGui.QApplication(sys.argv) + if not QtWidgets.QApplication.instance(): + self._app = QtWidgets.QApplication(sys.argv) super(InteractiveTests, self).setUp() def tearDown(self): super(InteractiveTests, self).tearDown() - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtWidgets - QtGui.QApplication.processEvents() + QtWidgets.QApplication.processEvents() @suppress_generated_code_qt_warnings def test_site_and_user_disabled_on_session_renewal(self): @@ -90,13 +90,13 @@ def _prepare_window(self, ld): Prepares the dialog so the events get processed and focus is attributed to the right widget. """ - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtWidgets ld.show() ld.raise_() ld.activateWindow() - QtGui.QApplication.processEvents() + QtWidgets.QApplication.processEvents() @contextlib.contextmanager def _login_dialog(self, is_session_renewal=False, **kwargs): @@ -259,18 +259,18 @@ class FromMainThreadException(Exception): pass - from tank.authentication.ui.qt_abstraction import QtCore, QtGui + from tank.authentication.ui.qt_abstraction import QtCore, QtWidgets # Create a QApplication instance. - if not QtGui.QApplication.instance(): - QtGui.QApplication(sys.argv) + if not QtWidgets.QApplication.instance(): + QtWidgets.QApplication(sys.argv) def thrower(): """ Method that will throw. :throws: FromMainThreadException """ - if QtGui.QApplication.instance().thread() != QtCore.QThread.currentThread(): + if QtWidgets.QApplication.instance().thread() != QtCore.QThread.currentThread(): raise Exception("This should have been invoked in the main thread.") raise FromMainThreadException() @@ -296,13 +296,13 @@ def run(self): # Make sure we have a QObject derived object and not a regular Python function. if not isinstance(invoker_obj, QtCore.QObject): raise Exception("Invoker is not a QObject") - if invoker_obj.thread() != QtGui.QApplication.instance().thread(): + if invoker_obj.thread() != QtWidgets.QApplication.instance().thread(): raise Exception( "Invoker should be of the same thread as the QApplication." ) if QtCore.QThread.currentThread() != self: raise Exception("Current thread not self.") - if QtGui.QApplication.instance().thread == self: + if QtWidgets.QApplication.instance().thread == self: raise Exception( "QApplication should be in the main thread, not self." ) @@ -310,7 +310,7 @@ def run(self): except Exception as e: self._exception = e finally: - QtGui.QApplication.instance().exit() + QtWidgets.QApplication.instance().exit() def wait(self): """ @@ -325,7 +325,7 @@ def wait(self): bg = BackgroundThread() bg.start() # process events - QtGui.QApplication.instance().exec_() + QtWidgets.QApplication.instance().exec_() # Make sure the thread got the exception that was thrown from the main thread. with self.assertRaises(FromMainThreadException): diff --git a/tests/authentication_tests/test_web_login.py b/tests/authentication_tests/test_web_login.py index dab0d8a9ac..f36905b319 100644 --- a/tests/authentication_tests/test_web_login.py +++ b/tests/authentication_tests/test_web_login.py @@ -33,8 +33,8 @@ def test_web_login(self): if not qt_abstraction.QtWebEngineWidgets: self.skipTest("This tests requires QtWebEngineWidgets") - if qt_abstraction.QtGui.QApplication.instance() is None: - self._app = qt_abstraction.QtGui.QApplication([]) + if qt_abstraction.QtWidgets.QApplication.instance() is None: + self._app = qt_abstraction.QtWidgets.QApplication([]) obj = SsoSaml2Toolkit( "Test Web Login", diff --git a/tests/platform_tests/test_engine.py b/tests/platform_tests/test_engine.py index f7bd1cd7df..7f07fa5d16 100644 --- a/tests/platform_tests/test_engine.py +++ b/tests/platform_tests/test_engine.py @@ -94,10 +94,10 @@ def setUp(self): super(TestDialogCreation, self).setUp() # Engine is not started yet, so can't rely on sgtk.platform.qt for imports. - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtWidgets - if QtGui.QApplication.instance() is None: - QtGui.QApplication([]) + if QtWidgets.QApplication.instance() is None: + QtWidgets.QApplication([]) sgtk.platform.start_engine("test_engine", self.tk, self.context) @@ -210,15 +210,15 @@ def setUp(self): super(TestExecuteInMainThread, self).setUp() # Engine is not started yet, so can't rely on sgtk.platform.qt for imports. - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtWidgets # See if a QApplication instance exists, and if not create one. Use the # QApplication.instance() method, since qApp can contain a non-None # value even if no QApplication has been constructed on PySide2. - if not QtGui.QApplication.instance(): - self._app = QtGui.QApplication(sys.argv) + if not QtWidgets.QApplication.instance(): + self._app = QtWidgets.QApplication(sys.argv) else: - self._app = QtGui.QApplication.instance() + self._app = QtWidgets.QApplication.instance() tank.platform.start_engine("test_engine", self.tk, self.context) @@ -669,14 +669,14 @@ def setUp(self): self.engine = sgtk.platform.start_engine("test_engine", self.tk, self.context) # Engine is not started yet, so can't rely on sgtk.platform.qt for imports. - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtWidgetsvvvv # Create an application instance so we can take control of the execution # of the dialog. - if QtGui.QApplication.instance() is None: - self._app = QtGui.QApplication(sys.argv) + if QtWidgets.QApplication.instance() is None: + self._app = QtWidgets.QApplication(sys.argv) else: - self._app = QtGui.QApplication.instance() + self._app = QtWidgets.QApplication.instance() self._dialog_dimissed = False From 9071cf9aa38de16a9c2145a956d184efe3726aff Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Fri, 6 Jun 2025 08:41:14 -0500 Subject: [PATCH 2/9] new _import_pyside2_as_pyside6() to support pyside6 as default when we use .qt6 --- docs/platform.rst | 12 +- .../interactive_authentication.py | 4 +- python/tank/authentication/login_dialog.py | 29 +- .../tank/authentication/sso_saml2/__init__.py | 2 +- .../authentication/sso_saml2/core/errors.py | 4 +- .../sso_saml2/core/sso_saml2_core.py | 24 +- .../core/username_password_dialog.py | 10 +- .../ui/aspect_preserving_label.py | 10 +- .../ui/completion_filter_proxy.py | 4 +- python/tank/authentication/ui/login_dialog.py | 4 + .../tank/authentication/ui/qt_abstraction.py | 1 - python/tank/authentication/ui/recent_box.py | 14 +- .../tank/authentication/ui_authentication.py | 12 +- python/tank/platform/engine.py | 34 +- python/tank/platform/qt/busy_dialog.py | 8 +- python/tank/platform/qt/config_item.py | 6 +- python/tank/platform/qt/tankqdialog.py | 4 +- python/tank/platform/qt/ui_busy_dialog.py | 3 + python/tank/platform/qt/ui_item.py | 3 + python/tank/platform/qt/ui_tank_dialog.py | 3 + python/tank/util/pyside6_patcher.py | 648 +++++++++++++++--- python/tank/util/qt_importer.py | 135 ++-- .../test_interactive_authentication.py | 50 +- tests/authentication_tests/test_web_login.py | 2 +- tests/fixtures/config/bundles/test_app/app.py | 6 +- tests/platform_tests/test_engine.py | 10 +- 26 files changed, 758 insertions(+), 284 deletions(-) diff --git a/docs/platform.rst b/docs/platform.rst index 863db05eb5..810730d2f8 100644 --- a/docs/platform.rst +++ b/docs/platform.rst @@ -892,14 +892,14 @@ you from managing this by yourself, but for maximum compatibility and portabilty et Toolkit handle it. When using Sgtk to set up your UI, just let your UI class derive from QtGui.QWidget and pass it to one of the UI factory methods that the engine has. For example:: - from sgtk.platform.qt import QtCore, QtGui + from sgtk.platform.qt import QtCore, QtWidgets - # derive from QtGui.QWidget for your UI components. + # derive from QtWidgets.QWidget for your UI components. - class AppDialog(QtGui.QWidget): + class AppDialog(QtWidgets.QWidget): def __init__(self, param1, param2): - QtGui.QWidget.__init__(self) + QtWidgets.QWidget.__init__(self) # the engine is then used to correctly launch this dialog. In your app code # you can now do create a window using the engine's factory methods. @@ -924,12 +924,12 @@ property called ``exit_code``. Typically, your code for a modal dialog would loo def on_ok_button_clicked(self): # user clicked ok - self.exit_code = QtGui.QDialog.Accepted + self.exit_code = QtWidgets.QDialog.Accepted self.close() def on_cancel_button_clicked(self): # user clicked cancel - self.exit_code = QtGui.QDialog.Rejected + self.exit_code = QtWidgets.QDialog.Rejected self.close() The call to self.engine.show_modal() will return the appropriate status code depending on which button was clicked. diff --git a/python/tank/authentication/interactive_authentication.py b/python/tank/authentication/interactive_authentication.py index 3e1df9f8b4..bc66b6920a 100644 --- a/python/tank/authentication/interactive_authentication.py +++ b/python/tank/authentication/interactive_authentication.py @@ -42,7 +42,7 @@ # in the context of a DCC, but occur too early for the Toolkit logging to be # fully in place to record it. try: - from .ui.qt_abstraction import QtGui + from .ui.qt_abstraction import QtGui, QtWidgets except Exception: QtGui = None @@ -77,7 +77,7 @@ def _get_ui_state(): Returns the state of UI: do we have a ui or not. :returns: True or False) """ - if QtGui and QtGui.QApplication.instance() is not None: + if QtWidgets and QtWidgets.QApplication.instance() is not None: return True else: return False diff --git a/python/tank/authentication/login_dialog.py b/python/tank/authentication/login_dialog.py index c886c4a22f..d5a5f6cffd 100644 --- a/python/tank/authentication/login_dialog.py +++ b/python/tank/authentication/login_dialog.py @@ -36,7 +36,6 @@ QtGui, QtCore, QtNetwork, - QtWebKit, QtWebEngineWidgets, QtWidgets, qt_version_tuple, @@ -116,7 +115,7 @@ def run(self): """ self._site_info.reload(self._url_to_test, self._http_proxy) -class LoginDialog(QtGui.QDialog): +class LoginDialog(QtWidgets.QDialog): """ Dialog for getting user credentials. """ @@ -146,13 +145,13 @@ def __init__( :param parent: The Qt parent for the dialog (defaults to None) :param session_metadata: Metadata used in the context of SSO. This is an obscure blob of data. """ - QtGui.QDialog.__init__(self, parent) + QtWidgets.QDialog.__init__(self, parent) qt_modules = { "QtCore": QtCore, "QtGui": QtGui, "QtNetwork": QtNetwork, - "QtWebKit": QtWebKit, + "QtWidgets": QtWidgets, "QtWebEngineWidgets": QtWebEngineWidgets, } try: @@ -248,23 +247,23 @@ def __init__( self.ui.stackedWidget.setCurrentWidget(self.ui.login_page) # Initialize Options menu - menu = QtGui.QMenu(self.ui.button_options) + menu = QtWidgets.QMenu(self.ui.button_options) self.ui.button_options.setMenu(menu) self.ui.button_options.setVisible(False) - self.menu_action_asl = QtGui.QAction( + self.menu_action_asl = QtWidgets.QAction( "Authenticate with the App Session Launcher", menu, ) self.menu_action_asl.triggered.connect(self._menu_activated_action_asl) - self.menu_action_ulf = QtGui.QAction( + self.menu_action_ulf = QtWidgets.QAction( "Authenticate with the Flow Production Tracking browser", menu, ) self.menu_action_ulf.triggered.connect(self._menu_activated_action_web_legacy) - self.menu_action_legacy = QtGui.QAction( + self.menu_action_legacy = QtWidgets.QAction( "Authenticate with Legacy Flow Production Tracking Login Credentials", menu, ) @@ -324,11 +323,11 @@ def __init__( ) # Initialize exit confirm message box - self.confirm_box = QtGui.QMessageBox( - QtGui.QMessageBox.Question, + self.confirm_box = QtWidgets.QMessageBox( + QtWidgets.QMessageBox.Question, "Flow Production Tracking Login", # title "Would you like to cancel your request?", # text - buttons=QtGui.QMessageBox.Yes | QtGui.QMessageBox.No, + buttons=QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No, # parent=self, # Passing the parent parameter here, in the constructor, makes # Nuke versions<=13 crash. @@ -667,7 +666,7 @@ def exec_(self): # to freeze, so only set the WindowStaysOnTopHint flag as this appears to not disable the # other flags. self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) - return QtGui.QDialog.exec_(self) + return QtWidgets.QDialog.exec_(self) def result(self): """ @@ -688,13 +687,13 @@ def result(self): profile_location=profile_location, ) # If the offscreen session renewal failed, show the GUI as a failsafe - if res != QtGui.QDialog.Accepted: + if res != QtWidgets.QDialog.Accepted: return return self._sso_saml2.get_session_data() res = self.exec_() - if res != QtGui.QDialog.Accepted: + if res != QtWidgets.QDialog.Accepted: return metrics_cache.log( @@ -827,7 +826,7 @@ def _authenticate(self, error_label, site, login, password, auth_code=None): product=PRODUCT_IDENTIFIER, profile_location=profile_location, ) - if res == QtGui.QDialog.Accepted: + if res == QtWidgets.QDialog.Accepted: self._new_session_token = self._sso_saml2.session_id self._session_metadata = self._sso_saml2.cookies else: diff --git a/python/tank/authentication/sso_saml2/__init__.py b/python/tank/authentication/sso_saml2/__init__.py index 261b1fbc57..2c6a80750f 100644 --- a/python/tank/authentication/sso_saml2/__init__.py +++ b/python/tank/authentication/sso_saml2/__init__.py @@ -19,7 +19,7 @@ SsoSaml2MissingQtGui, SsoSaml2MissingQtModuleError, SsoSaml2MissingQtNetwork, - SsoSaml2MissingQtWebKit, + SsoSaml2MissingQtWebEngineWidgets, SsoSaml2MultiSessionNotSupportedError, ) diff --git a/python/tank/authentication/sso_saml2/core/errors.py b/python/tank/authentication/sso_saml2/core/errors.py index 166a4a706a..5edee260aa 100644 --- a/python/tank/authentication/sso_saml2/core/errors.py +++ b/python/tank/authentication/sso_saml2/core/errors.py @@ -48,9 +48,9 @@ class SsoSaml2MissingQtNetwork(SsoSaml2MissingQtModuleError): """ -class SsoSaml2MissingQtWebKit(SsoSaml2MissingQtModuleError): +class SsoSaml2MissingQtWebEngineWidgets(SsoSaml2MissingQtModuleError): """ - Exception that indicates that the QtWebKit component is missing. + Exception that indicates that the QtWebEngineWidgets component is missing. """ diff --git a/python/tank/authentication/sso_saml2/core/sso_saml2_core.py b/python/tank/authentication/sso_saml2/core/sso_saml2_core.py index 6b7f0777fd..6ccff5baf2 100644 --- a/python/tank/authentication/sso_saml2/core/sso_saml2_core.py +++ b/python/tank/authentication/sso_saml2/core/sso_saml2_core.py @@ -28,7 +28,7 @@ SsoSaml2MissingQtCore, SsoSaml2MissingQtGui, SsoSaml2MissingQtNetwork, - SsoSaml2MissingQtWebKit, + SsoSaml2MissingQtWebEngineWidgets, ) from .utils import ( _decode_cookies, @@ -154,7 +154,7 @@ def __init__(self, window_title="Web Login", qt_modules=None): :param window_title: Title to use for the window. :param qt_modules: a dictionnary of required Qt modules. - For Qt4/PySide, we require modules QtCore, QtGui, QtNetwork and QtWebKit + For Qt4/PySide, we require modules QtCore, QtGui, QtNetwork and QtWebEngineWidgets :returns: The SsoSaml2Core oject. """ @@ -170,7 +170,7 @@ def __init__(self, window_title="Web Login", qt_modules=None): QtCore = self._QtCore = qt_modules.get("QtCore") # noqa QtGui = self._QtGui = qt_modules.get("QtGui") # noqa QtNetwork = self._QtNetwork = qt_modules.get("QtNetwork") # noqa - QtWebKit = self._QtWebKit = qt_modules.get("QtWebKit") # noqa + QtWidgets = self._QtWidgets = qt_modules.get("QtWidgets") # noqa QtWebEngineWidgets = self._QtWebEngineWidgets = qt_modules.get( "QtWebEngineWidgets" ) # noqa @@ -184,9 +184,9 @@ def __init__(self, window_title="Web Login", qt_modules=None): if QtNetwork is None: raise SsoSaml2MissingQtNetwork("The QtNetwork module is unavailable") - if QtWebKit is None and QtWebEngineWidgets is None: - raise SsoSaml2MissingQtWebKit( - "The QtWebKit or QtWebEngineWidgets modules are unavailable" + if QtWebEngineWidgets is None: + raise SsoSaml2MissingQtWebEngineWidgets( + "The QtWebEngineWidgets modules are unavailable" ) # If PySide2 is being used, we need to make extra checks to ensure @@ -279,13 +279,13 @@ def certificateError(self, certificate_error): self._sessions_stack = [] self._session_renewal_active = False - self._dialog = QtGui.QDialog() + self._dialog = QtWidgets.QDialog() self._dialog.setWindowTitle(window_title) self._dialog.finished.connect(self.on_dialog_closed) # This is to ensure that we can resize the window nicely, and that the # WebView will follow. - self._layout = QtGui.QVBoxLayout(self._dialog) + self._layout = QtWidgets.QVBoxLayout(self._dialog) self._layout.setSpacing(0) self._layout.setContentsMargins(0, 0, 0, 0) @@ -860,14 +860,14 @@ def on_dialog_closed(self, result): This can be the result of a callback, a timeout or user interaction. :param result: Qt result following the closing of the dialog. - QtGui.QDialog.Accepted or QtGui.QDialog.Rejected + QtWidgets.QDialog.Accepted or QtGui.QDialog.Rejected """ self._logger.debug("SSO dialog closed") # pylint: disable=invalid-name - QtGui = self._QtGui # noqa + QtWidgets = self._QtWidgets # noqa if self.is_handling_event(): - if result == QtGui.QDialog.Rejected and self._session.cookies != "": + if result == QtWidgets.QDialog.Rejected and self._session.cookies != "": # We got here because of a timeout attempting a GUI-less login. # Let's clear the cookies, and force the use of the GUI. self._session.cookies = "" @@ -882,7 +882,7 @@ def on_dialog_closed(self, result): self.resolve_event() else: # Should we get a rejected dialog, then we have had a timeout. - if result == QtGui.QDialog.Rejected: + if result == QtWidgets.QDialog.Rejected: # @FIXME: Figure out exactly what to do when we have a timeout. self._logger.warn( "Our QDialog got canceled outside of an event handling" diff --git a/python/tank/authentication/sso_saml2/core/username_password_dialog.py b/python/tank/authentication/sso_saml2/core/username_password_dialog.py index 2bec65057f..de16729e92 100644 --- a/python/tank/authentication/sso_saml2/core/username_password_dialog.py +++ b/python/tank/authentication/sso_saml2/core/username_password_dialog.py @@ -42,16 +42,16 @@ def __init__(self, window_title=None, message=None): form_grid_layout = QtGui.QGridLayout(self) # initialize the username combo box so that it is editable - self._edit_username = QtGui.QLineEdit(self) + self._edit_username = QtWidgets.QLineEdit(self) self._edit_username.setPlaceholderText("Domain\\Username or email address") # initialize the password field so that it does not echo characters - self._edit_password = QtGui.QLineEdit(self) - self._edit_password.setEchoMode(QtGui.QLineEdit.Password) + self._edit_password = QtWidgets.QLineEdit(self) + self._edit_password.setEchoMode(QtWidgets.QLineEdit.Password) self._edit_password.setPlaceholderText("Password") # initialize the labels - label_message = QtGui.QLabel(self) + label_message = QtWidgets.QLabel(self) label_message.setText(message) label_message.setWordWrap(True) @@ -138,7 +138,7 @@ def _on_enter_credentials(self): def main(): """Simple test""" - _ = QtGui.QApplication([]) + _ = QtWidgets.QApplication([]) window_title = "A title" message = "A message" login_dialog = UsernamePasswordDialog(window_title=window_title, message=message) diff --git a/python/tank/authentication/ui/aspect_preserving_label.py b/python/tank/authentication/ui/aspect_preserving_label.py index ed08b410f0..80b362f490 100644 --- a/python/tank/authentication/ui/aspect_preserving_label.py +++ b/python/tank/authentication/ui/aspect_preserving_label.py @@ -12,7 +12,7 @@ from .qt_abstraction import QtCore -class AspectPreservingLabel(QtGui.QLabel): +class AspectPreservingLabel(QtWidgets.QLabel): """ Label that displays a scaled down version of an image if it is bigger than the label. @@ -23,7 +23,7 @@ def __init__(self, parent=None): :params parent: Parent widget. """ - QtGui.QLabel.__init__(self, parent) + QtWidgets.QLabel.__init__(self, parent) self._pix = None @@ -36,7 +36,7 @@ def setPixmap(self, pixmap): self._pix = pixmap scaled_pixmap = self._pix.scaled( self.size(), QtCore.Qt.KeepAspectRatio, QtCore.Qt.SmoothTransformation) - QtGui.QLabel.setPixmap(self, scaled_pixmap) + QtWidgets.QLabel.setPixmap(self, scaled_pixmap) def heightForWidth(self, width): """ @@ -48,7 +48,7 @@ def heightForWidth(self, width): """ if self._pix is None: return self._pix.height() * width / self._pix.width() - return QtGui.QLabel.heightForWidth(self, width) + return QtWidgets.QLabel.heightForWidth(self, width) def sizeHint(self): """ @@ -68,5 +68,5 @@ def resizeEvent(self, e): scaled_pixmap = self._pix.scaled( self.size(), QtCore.Qt.KeepAspectRatio, QtCore.Qt.SmoothTransformation) - QtGui.QLabel.setPixmap(self, scaled_pixmap) + QtWidgets.QLabel.setPixmap(self, scaled_pixmap) QtWidgets.QApplication.instance().processEvents() diff --git a/python/tank/authentication/ui/completion_filter_proxy.py b/python/tank/authentication/ui/completion_filter_proxy.py index 6d66136af7..bf5822d008 100644 --- a/python/tank/authentication/ui/completion_filter_proxy.py +++ b/python/tank/authentication/ui/completion_filter_proxy.py @@ -20,7 +20,7 @@ from tank.util import sgre as re -from .qt_abstraction import QtGui +from .qt_abstraction import QtGui, QtCore class FuzzyMatcher(): @@ -47,7 +47,7 @@ def score(self, string): return 100.0 / ((1 + match.start()) * (match.end() - match.start() + 1)) -class CompletionFilterProxy(QtGui.QSortFilterProxyModel): +class CompletionFilterProxy(QtCore.QSortFilterProxyModel): """ Filters rows based on fuzzy matching and sorts them based on their score. """ diff --git a/python/tank/authentication/ui/login_dialog.py b/python/tank/authentication/ui/login_dialog.py index 8cf2f9fcc8..ff829d1e28 100644 --- a/python/tank/authentication/ui/login_dialog.py +++ b/python/tank/authentication/ui/login_dialog.py @@ -16,6 +16,10 @@ for name, cls in QtGui.__dict__.items(): if isinstance(cls, type): globals()[name] = cls +from .qt_abstraction import QtWidgets +for name, cls in QtWidgets.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + from .recent_box import RecentBox from .aspect_preserving_label import AspectPreservingLabel diff --git a/python/tank/authentication/ui/qt_abstraction.py b/python/tank/authentication/ui/qt_abstraction.py index 1a07d44602..abf8b6094d 100644 --- a/python/tank/authentication/ui/qt_abstraction.py +++ b/python/tank/authentication/ui/qt_abstraction.py @@ -17,7 +17,6 @@ _importer = QtImporter() QtCore = _importer.QtCore QtGui = _importer.QtGui -QtWebKit = _importer.QtWebKit QtNetwork = _importer.QtNetwork QtWidgets = _importer.QtWidgets QtWebEngineWidgets = _importer.QtWebEngineWidgets diff --git a/python/tank/authentication/ui/recent_box.py b/python/tank/authentication/ui/recent_box.py index f39f0933d3..a817239c57 100644 --- a/python/tank/authentication/ui/recent_box.py +++ b/python/tank/authentication/ui/recent_box.py @@ -18,11 +18,11 @@ -------------------------------------------------------------------------------- """ -from .qt_abstraction import QtGui +from .qt_abstraction import QtGui, QtCore, QtWidgets from .completion_filter_proxy import CompletionFilterProxy -class RecentBox(QtGui.QComboBox): +class RecentBox(QtWidgets.QComboBox): """ Combo box specialisation that handles all the filtering, sorting and auto-completion for a list of recent items. Items are sorted alphabetically so they can be found easily @@ -35,18 +35,18 @@ def __init__(self, parent): self.setEditable(True) # Using QLineEdit so we have a placeholder even when the line edit is selected. - self.setLineEdit(QtGui.QLineEdit(self)) + self.setLineEdit(QtWidgets.QLineEdit(self)) # Create a model sorted alphabetically for the recent items. - self._recent_items_model = QtGui.QStringListModel(self) - self._drop_down_model = QtGui.QSortFilterProxyModel(self) + self._recent_items_model = QtCore.QStringListModel(self) + self._drop_down_model = QtCore.QSortFilterProxyModel(self) self._drop_down_model.setSourceModel(self._recent_items_model) self.setModel(self._drop_down_model) # We'll use a completer that shows all results and we'll do the matching ourselves, as the completion # engine can only work from the beginning of a string... - self._completer = QtGui.QCompleter(self) - self._completer.setCompletionMode(QtGui.QCompleter.UnfilteredPopupCompletion) + self._completer = QtWidgets.QCompleter(self) + self._completer.setCompletionMode(QtWidgets.QCompleter.UnfilteredPopupCompletion) # We'll do our own filtering. self._filter_model = CompletionFilterProxy(self) diff --git a/python/tank/authentication/ui_authentication.py b/python/tank/authentication/ui_authentication.py index 486262e6a3..e58e812f6c 100644 --- a/python/tank/authentication/ui_authentication.py +++ b/python/tank/authentication/ui_authentication.py @@ -30,10 +30,7 @@ # something usually done by the Toolkit. The worry is that the import may fail # in the context of a DCC, but occur too early for the Toolkit logging to be # fully in place to record it. -try: - from .login_dialog import LoginDialog -except Exception: - LoginDialog = None + class UiAuthenticationHandler(object): @@ -67,7 +64,12 @@ def authenticate(self, hostname, login, http_proxy): logger.debug("Requesting password in a dialog.") else: logger.debug("Requesting username and password in a dialog.") - + try: + from .login_dialog import LoginDialog + except Exception as e: + logger.debug(f"Failed to import LoginDialog: {e}") + LoginDialog = None + logger.debug(f"LoginDialog is {LoginDialog}") if LoginDialog is None: logger.error("Unexpected state. LoginDialog should be available.") raise ShotgunAuthenticationError("Could not instantiated login dialog.") diff --git a/python/tank/platform/engine.py b/python/tank/platform/engine.py index 41376e00eb..985bff46f0 100644 --- a/python/tank/platform/engine.py +++ b/python/tank/platform/engine.py @@ -1164,8 +1164,8 @@ def execute_in_main_thread(self, func, *args, **kwargs): for the background thread to finish, Qt's event loop won't be able to process the request to execute in the main thread:: - >>> from sgtk.platform.qt import QtGui - >>> engine.execute_in_main_thread(QtGui.QMessageBox.information, None, "Hello", "Hello from the main thread!") + >>> from sgtk.platform.qt import QtWidgets + >>> engine.execute_in_main_thread(QtWidgets.QMessageBox.information, None, "Hello", "Hello from the main thread!") .. note:: This currently only works if Qt is available, otherwise it just executes immediately on the current thread. @@ -1550,7 +1550,7 @@ def _ensure_core_fonts_loaded(self): if not self.has_ui: return - from sgtk.platform.qt import QtGui, QtWidgets + from sgtk.platform.qt6 import QtGui, QtWidgets # if the fonts have been loaded, no need to do anything else if self.__fonts_loaded: @@ -1628,7 +1628,7 @@ def _get_dialog_parent(self): Can be overriden in derived classes to return the QWidget to be used as the parent for all TankQDialog's. - :return: QT Parent window (:class:`PySide.QtGui.QWidget`) + :return: QT Parent window (:class:`PySide.QtWidgets.QWidget`) """ # By default, this will return the QApplication's active window: from .qt import QtGui, QtWidgets @@ -1645,7 +1645,7 @@ def _create_dialog(self, title, bundle, widget, parent): :param title: The title of the window :param bundle: The app, engine or framework object that is associated with this window :param widget: A QWidget instance to be embedded in the newly created dialog. - :type widget: :class:`PySide.QtGui.QWidget` + :type widget: :class:`PySide.QtWidgets.QWidget` """ from .qt import tankqdialog @@ -1680,7 +1680,7 @@ def _create_widget(self, widget_class, *args, **kwargs): .. note:: For more information, see the documentation for :meth:`show_dialog()`. :param widget_class: The class of the UI to be constructed. This must derive from QWidget. - :type widget_class: :class:`PySide.QtGui.QWidget` + :type widget_class: :class:`PySide.QtWidgets.QWidget` Additional parameters specified will be passed through to the widget_class constructor. """ @@ -1699,18 +1699,18 @@ def _create_widget(self, widget_class, *args, **kwargs): self.logger.exception(exc) import traceback - from sgtk.platform.qt import QtGui, QtCore + from sgtk.platform.qt6 import QtGui, QtCore, QtWidgets # A very simple widget that ensures that the exception is visible and # selectable should the user need to copy/paste it into a support # ticket. - class _exc_widget(QtGui.QWidget): + class _exc_widget(QtWidgets.QWidget): def __init__(self, msg, *args, **kwargs): super(_exc_widget, self).__init__(*args, **kwargs) self.setObjectName("SGTK_CORE_EXC_WIDGET") - self._label = QtGui.QLabel( + self._label = QtWidgets.QLabel( "The requested dialog could not be built " "due to an exception that was raised:" ) @@ -1720,7 +1720,7 @@ def __init__(self, msg, *args, **kwargs): self._text.setLineWrapMode(QtGui.QTextEdit.NoWrap) self._text.setText(msg) - self._layout = QtGui.QVBoxLayout(self) + self._layout = QtWidgets.QVBoxLayout(self) self._layout.addWidget(self._label) self._layout.addWidget(self._text) @@ -1744,7 +1744,7 @@ def _create_dialog_with_widget(self, title, bundle, widget_class, *args, **kwarg :param title: The title of the window :param bundle: The app, engine or framework object that is associated with this window :param widget_class: The class of the UI to be constructed. This must derive from QWidget. - :type widget_class: :class:`PySide.QtGui.QWidget` + :type widget_class: :class:`PySide.QtWidgets.QWidget` Additional parameters specified will be passed through to the widget_class constructor. """ @@ -1768,7 +1768,7 @@ def _on_dialog_closed(self, dlg): Called when a dialog created by this engine is closed. :param dlg: The dialog being closed - :type dlg: :class:`PySide.QtGui.QWidget` + :type dlg: :class:`PySide.QtWidgets.QWidget` Derived implementations of this method should be sure to call the base implementation @@ -1880,7 +1880,7 @@ def hide_tk_title_bar(self): :param title: The title of the window. This will appear in the Toolkit title bar. :param bundle: The app, engine or framework object that is associated with this window :param widget_class: The class of the UI to be constructed. This must derive from QWidget. - :type widget_class: :class:`PySide.QtGui.QWidget` + :type widget_class: :class:`PySide.QtWidgets.QWidget` Additional parameters specified will be passed through to the widget_class constructor. @@ -1924,7 +1924,7 @@ def hide_tk_title_bar(self): :param title: The title of the window :param bundle: The app, engine or framework object that is associated with this window :param widget_class: The class of the UI to be constructed. This must derive from QWidget. - :type widget_class: :class:`PySide.QtGui.QWidget` + :type widget_class: :class:`PySide.QtWidgets.QWidget` Additional parameters specified will be passed through to the widget_class constructor. @@ -1974,7 +1974,7 @@ def hide_tk_title_bar(self): :param title: The title of the panel :param bundle: The app, engine or framework object that is associated with this window :param widget_class: The class of the UI to be constructed. This must derive from QWidget. - :type widget_class: :class:`PySide.QtGui.QWidget` + :type widget_class: :class:`PySide.QtWidgets.QWidget` Additional parameters specified will be passed through to the widget_class constructor. @@ -2145,7 +2145,7 @@ def _define_qt_base(self): """ base = {"qt_core": None, "qt_gui": None, "dialog_base": None} try: - importer = QtImporter() + importer = QtImporter(interface_version_requested=QtImporter.QT4) base["qt_core"] = importer.QtCore base["qt_gui"] = importer.QtGui if importer.QtGui: @@ -2185,7 +2185,7 @@ def __define_qt6_base(self): :returns: A dictionary with all the modules, __version__ and __name__. """ - return QtImporter(interface_version_requested=QtImporter.QT6).base + return QtImporter().base def _initialize_dark_look_and_feel(self): """ diff --git a/python/tank/platform/qt/busy_dialog.py b/python/tank/platform/qt/busy_dialog.py index c9b0a612c9..c57db3acdd 100644 --- a/python/tank/platform/qt/busy_dialog.py +++ b/python/tank/platform/qt/busy_dialog.py @@ -8,11 +8,11 @@ # agreement to the Shotgun Pipeline Toolkit Source Code License. All rights # not expressly granted therein are reserved by Shotgun Software Inc. -from . import QtCore, QtGui +from . import QtWidgets from .ui_busy_dialog import Ui_BusyDialog -class BusyDialog(QtGui.QWidget): +class BusyDialog(QtWidgets.QWidget): """ Global progress dialog. Displays a dialog that contains a small progress message. This is handled by the engine.display_global_progress() and engine.clear_global_progress() @@ -25,7 +25,7 @@ def __init__(self): Constructor """ # first, call the base class and let it do its thing. - QtGui.QWidget.__init__(self) + QtWidgets.QWidget.__init__(self) # now load in the UI that was created in the UI designer self.ui = Ui_BusyDialog() @@ -47,7 +47,7 @@ def mousePressEvent(self, event): :param event: QEvent """ - QtGui.QWidget.mousePressEvent(self, event) + QtWidgets.QWidget.mousePressEvent(self, event) # close the window if someone clicks it self.close() diff --git a/python/tank/platform/qt/config_item.py b/python/tank/platform/qt/config_item.py index 44db298c76..968f5ccf7c 100644 --- a/python/tank/platform/qt/config_item.py +++ b/python/tank/platform/qt/config_item.py @@ -12,19 +12,19 @@ import shutil import sys -from . import QtCore, QtGui +from . import QtCore, QtWidgets from .ui_item import Ui_Item from ..bundle import resolve_default_value from ..engine import current_engine -class ConfigItem(QtGui.QWidget): +class ConfigItem(QtWidgets.QWidget): """ Describes a configuration setting with data and methods """ def __init__(self, setting, params, value, bundle, parent=None): - QtGui.QWidget.__init__(self, parent) + QtWidgets.QWidget.__init__(self, parent) # set up the UI self.ui = Ui_Item() diff --git a/python/tank/platform/qt/tankqdialog.py b/python/tank/platform/qt/tankqdialog.py index 460c281cf1..2e6aa5ca10 100644 --- a/python/tank/platform/qt/tankqdialog.py +++ b/python/tank/platform/qt/tankqdialog.py @@ -13,7 +13,7 @@ """ -from . import QtCore, QtGui +from . import QtCore, QtGui, QtWidgets from . import ui_tank_dialog from . import TankDialogBase from .config_item import ConfigItem @@ -568,7 +568,7 @@ def _on_widget_closed(self): This is called when the contained widget is closed - it handles the event and then closes the dialog """ - exit_code = QtGui.QDialog.Accepted + exit_code = QtWidgets.QDialog.Accepted # look if the hosted widget has an exit_code we should pick up if self._widget and hasattr(self._widget, "exit_code"): diff --git a/python/tank/platform/qt/ui_busy_dialog.py b/python/tank/platform/qt/ui_busy_dialog.py index d81bbfb3eb..b5beba7045 100644 --- a/python/tank/platform/qt/ui_busy_dialog.py +++ b/python/tank/platform/qt/ui_busy_dialog.py @@ -16,6 +16,9 @@ for name, cls in QtGui.__dict__.items(): if isinstance(cls, type): globals()[name] = cls +from . import QtWidgets +for name, cls in QtWidgets.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls from . import resources_rc diff --git a/python/tank/platform/qt/ui_item.py b/python/tank/platform/qt/ui_item.py index 0f1bc56551..58e661d6e8 100644 --- a/python/tank/platform/qt/ui_item.py +++ b/python/tank/platform/qt/ui_item.py @@ -16,6 +16,9 @@ for name, cls in QtGui.__dict__.items(): if isinstance(cls, type): globals()[name] = cls +from . import QtWidgets +for name, cls in QtWidgets.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls from . import resources_rc diff --git a/python/tank/platform/qt/ui_tank_dialog.py b/python/tank/platform/qt/ui_tank_dialog.py index 344b2eb7b6..debcf9b66d 100644 --- a/python/tank/platform/qt/ui_tank_dialog.py +++ b/python/tank/platform/qt/ui_tank_dialog.py @@ -16,6 +16,9 @@ for name, cls in QtGui.__dict__.items(): if isinstance(cls, type): globals()[name] = cls +from . import QtWidgets +for name, cls in QtWidgets.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls from . import resources_rc diff --git a/python/tank/util/pyside6_patcher.py b/python/tank/util/pyside6_patcher.py index 541077cca5..948e5418e7 100644 --- a/python/tank/util/pyside6_patcher.py +++ b/python/tank/util/pyside6_patcher.py @@ -1,142 +1,602 @@ +# Copyright (c) 2016 Shotgun Software Inc. +# +# CONFIDENTIAL AND PROPRIETARY +# +# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit +# Source Code License included in this distribution package. See LICENSE. +# By accessing, using, copying or modifying this work you indicate your +# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights +# not expressly granted therein are reserved by Shotgun Software Inc. + +from .pyside2_patcher import PySide2Patcher + import imp -import sys - -class PySide6Patcher: - _core_to_qtgui = { - "QStringListModel", - "QStringList", - "QTextStream", - "QTextStreamManipulator", - "QTextCodec", - "QTextCodecConverter", - "QTextDecoder", - "QTextEncoder", - "QTextStreamReader", - "QTextStreamWriter", - } + +class PySide6Patcher(PySide2Patcher): + """ + PySide6 backwards compatibility layer for use with PySide code. + + Patches PySide6 so it can be API compatible with PySide. This is the first step to provide + support for PySide6. The next step will be to deprecate Qt4/PySide, and make Qt6/PySide6 + the default base qt module. + + .. code-block:: python + from PySide6 import QtGui, QtCore, QtWidgets + import PySide6 + PySide6Patcher.patch(QtCore, QtGui, QtWidgets, PySide6) + """ + + # These classes have been moved from QtGui to QtOpenGL in Qt6. Move them back to QtGui to + # preserve compatibility between Qt6 and Qt4. + _opengl_to_gui = set( + [ + "QOpenGLBuffer", + "QOpenGLDebugLogger", + "QOpenGLDebugMessage", + "QOpenGLFramebufferObject", + "QOpenGLFramebufferObjectFormat", + "QOpenGLPixelTransferOptions", + "QOpenGLShader", + "QOpenGLShaderProgram", + "QOpenGLTexture", + "QOpenGLTextureBlitter", + "QOpenGLTimeMonitor", + "QOpenGLTimerQuery", + "QOpenGLVersionProfile", + "QOpenGLVertexArrayObject", + "QOpenGLWindow", + ] + ) + + @classmethod + def _patch_QApplication(cls, QtGui): + """Patch QApplication.""" + + def desktop(*args): + """ + QDesktopWidget removed along with QApplication.desktop, in favor or QScreen. + """ + return QtGui.QApplication.primaryScreen() + + # First apply the patch from PySide2 patcher + super()._patch_QApplication(QtGui) + + # Now apply any PySide6 specific patches + QtGui.QApplication.desktop = desktop + + @classmethod + def _patch_QAbstractItemView(cls, QtGui): + """Patch QAbstractItemView.""" + + def viewOptions(self): + """Patch the viewOptions method.""" + + option = QtGui.QStyleOptionViewItem() + self.initViewItemOption(option) + return option + + # First apply the patch from PySide2 patcher + super(PySide6Patcher, cls)._patch_QAbstractItemView(QtGui) + + # Now apply any PySide6 specific patches + QtGui.QAbstractItemView.viewOptions = viewOptions @classmethod - def patch(cls, QtCore, QtGui, QtWidgets, PySide2): + def _patch_QTextCodec(cls, QtCore): """ - Patches PySide2 to make it compatible with PySide6. + Patch QTextCodec. - :param QtCore: The QtCore module. - :param QtGui: The QtGui module. - :param QtWidgets: The QtWidgets module. - :param PySide2: The PySide2 module. + QTextCodec has been removed in Qt6. Using this class will do nothing. """ - qt_core_shim = imp.new_module("PySide6.QtCore") - qt_gui_shim = imp.new_module("PySide6.QtGui") - # Move everything from QtGui and QtWidgets to the QtGui shim since they belonged there - # in PySide6. - cls._move_attributes(qt_gui_shim, QtWidgets, dir(QtWidgets)) - cls._move_attributes(qt_gui_shim, QtGui, dir(QtGui)) + class QTextCodec(): + @staticmethod + def codecForName(name): + return None - # Some classes from QtGui have been moved to QtCore, so put them back into QtGui - cls._move_attributes(qt_gui_shim, QtCore, cls._core_to_qtgui) - # Move the rest of QtCore in the new core shim. - cls._move_attributes( - qt_core_shim, QtCore, set(dir(QtCore)) - cls._core_to_qtgui - ) + @staticmethod + def setCodecForCStrings(codec): + pass + + QtCore.QTextCodec = QTextCodec - # Move QtWebEngineWidgets to the QtGui shim - qt_webengine_widgets = imp.new_module("PySide6.QtWebEngineWidgets") - cls._move_attributes(qt_webengine_widgets, PySide2.QtWebEngineWidgets, dir(PySide2.QtWebEngineWidgets)) - sys.modules["PySide6.QtWebEngineWidgets"] = qt_webengine_widgets + @classmethod + def _patch_QPixmap(cls, QtGui): + """ + Patch QPixmap. - # Move QtNetwork to the QtCore shim - qt_network = imp.new_module("PySide6.QtNetwork") - cls._move_attributes(qt_network, PySide2.QtNetwork, dir(PySide2.QtNetwork)) - sys.modules["PySide6.QtNetwork"] = qt_network + QPixmap constructor no longer can take None as the first argument, instead no argument + must be passed. + """ - # Move shiboken2 to the PySide6 module - sys.modules["PySide6.shiboken2"] = PySide2.shiboken2 + original_QPixmap = QtGui.QPixmap - # ... other necessary patches ... + class QPixmap(original_QPixmap): + def __init__(self, *args, **kwargs): + if len(args) == 1 and args[0] is None: + original_QPixmap.__init__(self) + else: + original_QPixmap.__init__(self, *args, **kwargs) - return qt_core_shim, qt_gui_shim + @staticmethod + def grabWindow(window=0, x=0, y=0, width=-1, height=-1): + """ + Add deprecated method + https://doc.qt.io/qt-5/qpixmap-obsolete.html#grabWindow + """ + screen = QtGui.QApplication.primaryScreen() + return screen.grabWindow(window, x, y, width, height) - @classmethod - def _move_attributes(cls, dst, src, attributes): - for attr in attributes: - setattr(dst, attr, getattr(src, attr)) + + QtGui.QPixmap = QPixmap @classmethod - def _patch_QModelIndex(cls, QtCore): - """Patch QModelIndex.""" + def _patch_QIcon(cls, QtGui): + """ + Patch QIcon. - def child(self, row, column): - """Patch the child method.""" + QIcon.pixmap method should create object from the patched QPixmap class + """ - return self.model().index(row, column, self) + original_QIcon_pixmap = QtGui.QIcon.pixmap # Returns a native QPixmap + + def pixmap(self, *args, **kwargs): + return QtGui.QPixmap(original_QIcon_pixmap(self, *args, **kwargs)) + + QtGui.QIcon.pixmap = pixmap - QtCore.QModelIndex.child = child @classmethod - def _patch_QAbstractItemView(cls, QtGui): - """Patch QAbstractItemView.""" + def _patch_QLabel(cls, QtGui): + """ + Patch QLabel. - def viewOptions(self): - """Patch the viewOptions method.""" + Related to changes in QPixmap, None cannot be passed as null pixmap, instead an + instance QPixmap must be created with no arguments. + """ - option = QtGui.QStyleOptionViewItem() - self.initViewItemOption(option) - return option + original_QLabel_setPixmap = QtGui.QLabel.setPixmap - QtGui.QAbstractItemView.viewOptions = viewOptions + def setPixmap(self, *args, **kwargs): + if len(args) == 1 and args[0] is None: + return original_QLabel_setPixmap(self, QtGui.QPixmap()) + return original_QLabel_setPixmap(self, *args, **kwargs) + + QtGui.QLabel.setPixmap = setPixmap @classmethod - def _patch_QTextCodec(cls, QtCore): - """Patch QTextCodec.""" + def _patch_QScreen(cls, QtCore, QtGui): + """ + Patch the QScreen. + + Modify QScreen to be accessed as if it were QDesktopWidget to provide backward + compatibility for QDesktopWidget. + """ - def codecForName(name): - """Patch the codecForName method.""" + class QDesktopWidget_screenCountChanged(QtCore.QObject): + """Patch for QDesktopWidget screenCountChanged signal.""" + + @staticmethod + def connect(receiver): + QtGui.QApplication.instance().screenAdded.connect(receiver) + QtGui.QApplication.instance().screenRemoved.connect(receiver) + + @staticmethod + def disconnect(receiver): + QtGui.QApplication.instance().screenAdded.disconnect(receiver) + QtGui.QApplication.instance().screenRemoved.disconnect(receiver) + + @staticmethod + def emit(new_count): + num_screens = len(QtGui.QGuiApplication.screens()) + if num_screens < new_count: + # screenAdded requires one arg, the QScreen that was added. Pass None + # since we do not have this data available to us here. + QtGui.QApplication.instance().screenAdded.emit(None) + elif num_screens > new_count: + # screenRemoved requires one arg, the QScreen that was added. Pass None + # since we do not have this data available to us here. + QtGui.QApplication.instance().screenRemoved.emit(None) + + class QDesktopWidget_resized(QtCore.QObject): + """Patch for QDesktopWidget resized signal.""" + + @staticmethod + def connect(receiver): + # NOTE since we do not have the screen info, this signal will only work for + # the primary screen + screen = QtGui.QGuiApplication.primaryScreen() + screen.geometryChanged.connect(receiver) + + @staticmethod + def disconnect(receiver): + # NOTE since we do not have the screen info, this signal will only work for + # the primary screen + screen = QtGui.QGuiApplication.primaryScreen() + screen.geometryChanged.disconnect(receiver) + + @staticmethod + def emit(screen_index): + try: + screens = QtGui.QGuiApplication.screens() + screen = screens[screen_index] + screen.geometryChanged.emit() + except: + pass + + + original_QScreen_availableGeometry = QtGui.QScreen.availableGeometry + def availableGeometry(self, arg__1=None): + """ + Patch QScreen to also act as QDesktopWidget. + + :param arg__1 Union(int, QtGui.QWidget, QtCore.QPoint): A widget, screen index or point. + """ + if arg__1 is None: + return original_QScreen_availableGeometry(self) + + if isinstance(arg__1, int): + screens = QtGui.QGuiApplication.screens() + try: + screen = screens[arg__1] + except IndexError: + return QtCore.QRect() + elif isinstance(arg__1, QtCore.QPoint): + return original_QScreen_availableGeometry(self) + else: + screen = arg__1.screen() + + return screen.availableGeometry() + + def screenNumber(self, widget): + """Provide QDesktopWidget method through QScreen.""" + + try: + screen = widget.screen() + return QtGui.QGuiApplication.screens().index(screen) + except (IndexError, AttributeError): + return -1 + + def screenCount(self): + """Provide QDesktopWidget method through QScreen.""" + + return len(QtGui.QGuiApplication.screens()) + + def winId(self): + """ + Provide QDesktopWidget method through QScreen. + + For QDesktopWidget, this would have returned the window system identifier of the + desktop widget; however, QScreen is not a widget, so just return default value 0. + """ + + return 0 + + # QDesktopWidget methods patched onto QScreen + QtGui.QScreen.availableGeometry = availableGeometry + QtGui.QScreen.screenGeometry = availableGeometry + QtGui.QScreen.screenNumber = screenNumber + QtGui.QScreen.screenCount = screenCount + QtGui.QScreen.winId = winId + + # QDesktopWidget signals patched onto QScreen + # https://doc.qt.io/qt-5/qdesktopwidget-obsolete.html#resized + QtGui.QScreen.resized = QDesktopWidget_resized() + QtGui.QScreen.screenCountChanged = QDesktopWidget_screenCountChanged() - return QtCore.QTextCodec.codecForName(name) + @classmethod + def _patch_QOpenGLContext(cls, QtGui): + """Patch QOpenGLContext.""" + + def versionFunctions(self, version_profile=None): + if version_profile: + return QtGui.QOpenGLVersionFunctionsFactory.get(versionProfile=version_profile, context=self) + return QtGui.QOpenGLVersionFunctionsFactory.get(context=self) - QtCore.QTextCodec.codecForName = codecForName + QtGui.QOpenGLContext.versionFunctions = versionFunctions - # @classmethod - # def _patch_QApplication(cls, QtGui): - # """Patch QApplication.""" + @classmethod + def _patch_QWheelEvent(cls, QtGui): + """Patch QWheelEvent.""" - # def notify(self, receiver, event): - # """Patch the notify method.""" + def delta(self): + """Patch the delta method.""" - # return self.notify(receiver, event) + # Use the more common mouse vertical scroll as the delta. + # Horizontal scroll is ignored, use angleDelta().x() if the horizontal scroll is needed. + return self.angleDelta().y() - # QtGui.QApplication.notify = notify + QtGui.QWheelEvent.delta = delta @classmethod - def _patch_QDesktopServices(cls, QtGui, QtCore): - """Patch QDesktopServices.""" + def _patch_QModelIndex(cls, QtCore): + """Patch QModelIndex.""" - def openUrl(self, url): - """Patch the openUrl method.""" + def child(self, row, column): + """Patch the child method.""" - return self.openUrl(url) + return self.model().index(row, column, self) - QtGui.QDesktopServices.openUrl = openUrl + QtCore.QModelIndex.child = child @classmethod - def _patch_QMessageBox(cls, QtGui): - """Patch QMessageBox.""" + def _patch_QRegularExpression(cls, QtCore): + """Patch QRegularExpression.""" + + original_QRegularExpression = QtCore.QRegularExpression + + class QRegularExpression(original_QRegularExpression): + def __init__(self, *args, **kwargs): + if not args: + original_QRegularExpression.__init__(self) + else: + nargs = len(args) + + case_sensitivity = kwargs.get("cs") + if not case_sensitivity and nargs > 1: + case_sensitivity = args[1] + + # FIXME can we port pattern syntax? + pattern_syntax = kwargs.get("syntax") + if not pattern_syntax and nargs > 2: + pattern_syntax = args[2] + + if case_sensitivity is None: + original_QRegularExpression.__init__(self, args[0]) + else: + if case_sensitivity == original_QRegularExpression.CaseInsensitiveOption: + opts = original_QRegularExpression.CaseInsensitiveOption + else: + opts = original_QRegularExpression.NoPatternOption + original_QRegularExpression.__init__(self, args[0], options=opts) + + self.isEmpty = lambda *args, **kwargs: QRegularExpression.isEmpty(self, *args, **kwargs) + self.indexIn = lambda *args, **kwargs: QRegularExpression.indexIn(self, *args, **kwargs) + self.matchedLength = lambda *args, **kwargs: QRegularExpression.matchedLength(self, *args, **kwargs) + self.setCaseSensitivity = lambda *args, **kwargs: QRegularExpression.setCaseSensitivity(self, *args, **kwargs) + self.pos = lambda *args, **kwargs: QRegularExpression.pos(self, *args, **kwargs) + self.cap = lambda *args, **kwargs: QRegularExpression.cap(self, *args, **kwargs) + + @staticmethod + def isEmpty(re): + """Patch the QRegExp isEmpty method.""" + + return not re.pattern() + + @staticmethod + def indexIn(re, subject, offset=0): + """Patch the QRegExp indexIn method.""" + + if offset < 0: + return -1 + + re_match = re.match(subject, offset) + start = re_match.capturedStart(0) + return start + + @staticmethod + def setCaseSensitivity(re, value): + """Patch QRegExp setCaseSensitivity method.""" + + options = re.patternOptions() + if value == original_QRegularExpression.CaseInsensitiveOption: + options |= original_QRegularExpression.CaseInsensitiveOption + else: + options &= ~original_QRegularExpression.CaseInsensitiveOption + re.setPatternOptions(options) + + @staticmethod + def matchedLength(re): + """ + This cannot be patched. + + Requires regular expression itself to have state, when regular expressions + now return QRegularExpressionMatch objects. + """ + return -1 + + @staticmethod + def pos(re, n): + """ + This cannot be patched. + + Requires regular expression itself to have state, when regular expressions + now return QRegularExpressionMatch objects. + """ + return -1 + + @staticmethod + def cap(re, n): + """ + This cannot be patched. + + Requires regular expression itself to have state, when regular expressions + now return QRegularExpressionMatch objects. + """ + return "" + + QtCore.QRegularExpression.isEmpty = QRegularExpression.isEmpty + QtCore.QRegularExpression.indexIn = QRegularExpression.indexIn + QtCore.QRegularExpression.matchedLength = QRegularExpression.matchedLength + QtCore.QRegularExpression.setCaseSensitivity = QRegularExpression.setCaseSensitivity + QtCore.QRegularExpression.pos = QRegularExpression.pos + + # This pattern matching flag is obsolete now. + QtCore.QRegularExpression.FixedString = None + + # Class must be set last + QtCore.QRegularExpression = QRegularExpression - def information(self, parent, title, text, buttons, defaultButton): - """Patch the information method.""" + @classmethod + def _patch_QCoreApplication_flush(cls, QtCore): + """ + Patch QCoreApplication obsolete flush method for compatibility. + """ - return self.information(parent, title, text, buttons, defaultButton) + def flush(): + """ + No-op function to serve as a placeholder for QCoreApplication.flush(). + """ + pass - QtGui.QMessageBox.information = information + # Add the no-op flush method to QCoreApplication + QtCore.QCoreApplication.flush = flush @classmethod - def _patch_QScreen(cls, QtCore, QtGui): - """Patch QScreen.""" + def patch( + cls, + QtWebEngineWidgets, + QtWebEngineCore, + ): + """ + Patch the PySide6 modules, classes and function to conform to the PySide interface. + + Note that when referring to PySide and Qt version, these are equivalent: + + PySide == Qt4, PySide2 == Qt5, Qt6 == PySide6 + + :param QtCore: The QtCore module for PySide6. + :param QtGui: The QtGui module for PySide6. + :param QtWidgets: The QtWidgets module for PySide6. + + :return: The PySide6 modules QtCore and QtGui patched as PySide modules. + :rtype: tuple + """ + + import PySide6 + from PySide6 import ( + QtCore, + QtGui, + QtWidgets, + QtOpenGL, + ) - def availableGeometry(self): - """Patch the availableGeometry method.""" + # First create new modules to act as the PySide modules + qt_core_shim = imp.new_module("PySide.QtCore") + qt_gui_shim = imp.new_module("PySide.QtGui") - return self.availableGeometry() + qt_web_engine_widgets_shim = None + if QtWebEngineWidgets: + qt_web_engine_widgets_shim = imp.new_module( + "PySide.QtWebEnginWidgets", + ) + + # Move everything from QtGui and QtWidgets to the QtGui shim since they belonged there + # in PySide. + cls._move_attributes(qt_gui_shim, QtWidgets, dir(QtWidgets)) + cls._move_attributes(qt_gui_shim, QtGui, dir(QtGui)) + + # Some classes from QtGui have been moved to QtCore, so put them back into QtGui + cls._move_attributes(qt_gui_shim, QtCore, cls._core_to_qtgui) + # Move the rest of QtCore in the new core shim. + cls._move_attributes( + qt_core_shim, QtCore, set(dir(QtCore)) - cls._core_to_qtgui + ) - QtCore.QScreen.availableGeometry \ No newline at end of file + # Some classes from QtGui have been moved to QtOpenGL, so put them back into QtGui for + # compatibility with Qt4 + # https://doc.qt.io/qt-6/gui-changes-qt6.html#opengl-classes + cls._move_attributes(qt_gui_shim, QtOpenGL, cls._opengl_to_gui) + + if qt_web_engine_widgets_shim: + # Move everything from QtWebEngineWidgets to the QtWebEngineWidgets shim + cls._move_attributes( + qt_web_engine_widgets_shim, + QtWebEngineWidgets, + dir(QtWebEngineWidgets), + ) + + # Patch classes from PySide6 to PySide, as done for PySide2 (these will call the + # PySide2 patcher methods.) + cls._patch_QCoreApplication(qt_core_shim) + cls._patch_QApplication(qt_gui_shim) + cls._patch_QStandardItemModel(qt_gui_shim) + if PySide6.__version_info__[0] < 5: + cls._patch_QMessageBox(qt_gui_shim) + cls._patch_QDesktopServices(qt_gui_shim, qt_core_shim) + + # ------------------------------------------------------------------------------------ + # Patch specific for PySide6 + # ------------------------------------------------------------------------------------ + + # QtCore + # ------------------------------------------------------------------------------------ + + # Attribute renamed + qt_core_shim.Qt.MidButton = qt_core_shim.Qt.MiddleButton + + # QTextCodec class removed + cls._patch_QTextCodec(qt_core_shim) + + # QModelIndex.child method removed + # https://doc.qt.io/qt-5/qmodelindex-obsolete.html + cls._patch_QModelIndex(qt_core_shim) + + # QRegExp replaced by QRegularExpression. + # https://doc.qt.io/qt-6/qtcore-changes-qt6.html#regular-expression-classes + # cls._patch_QRegExp(qt_core_shim) + cls._patch_QRegularExpression(qt_core_shim) + qt_core_shim.QRegExp = qt_core_shim.QRegularExpression + # Rename RegExp functions to RegularExpression + qt_gui_shim.QSortFilterProxyModel.filterRegExp = qt_gui_shim.QSortFilterProxyModel.filterRegularExpression + qt_gui_shim.QSortFilterProxyModel.setFilterRegExp = qt_gui_shim.QSortFilterProxyModel.setFilterRegularExpression + + # Patch the QCoreApplication.flush() method to ensure compatibility with code + # that expects this method, which is marked as obsolete. + # https://doc.qt.io/qt-5/qcoreapplication-obsolete.html#flush + cls._patch_QCoreApplication_flush(qt_core_shim) + + # QtGui + # ------------------------------------------------------------------------------------ + + # QLabel cannot be instantiated with None anymore + cls._patch_QPixmap(qt_gui_shim) + cls._patch_QLabel(qt_gui_shim) + + # QIcon.pixmap method should create object from the patched QPixmap class + cls._patch_QIcon(qt_gui_shim) + + # QWheelEvent delta is obsolete + # https://doc.qt.io/qt-5/qwheelevent-obsolete.html#delta + cls._patch_QWheelEvent(qt_gui_shim) + + # QOpenGLContext.versionFunctions replaced + # https://doc.qt.io/qt-6/gui-changes-qt6.html#the-qopenglcontext-class + cls._patch_QOpenGLContext(qt_gui_shim) + + # QAbstractItemView.viewOptions renamed and changed + # https://doc.qt.io/qt-6/widgets-changes-qt6.html#the-qabstractitemview-class + cls._patch_QAbstractItemView(qt_gui_shim) + + # Patch QScreen such that it can be used as if it were a QDesktopWidget instance + # https://doc.qt.io/qt-6/widgets-changes-qt6.html#qdesktopwidget-and-qapplication-desktop + cls._patch_QScreen(qt_core_shim, qt_gui_shim) + qt_gui_shim.QDesktopWidget = qt_gui_shim.QScreen + + # The default timeout parameter removed. This param, if given, will be ignored. It will + # always timeout after 100 ms + # https://doc.qt.io/qt-6/widgets-changes-qt6.html#the-qabstractbutton-class + qt_gui_shim.QAbstractButton.animateClick = lambda self, msec=0: self.animateClick() + + # Changes to QFont + # https://doc.qt.io/qt-6/gui-changes-qt6.html#the-qfont-class + qt_gui_shim.QFontMetrics.width = qt_gui_shim.QFontMetrics.horizontalAdvance + qt_gui_shim.QFont.setWeight = qt_gui_shim.QFont.setLegacyWeight + + # QHeaderView method rename + qt_gui_shim.QHeaderView.setResizeMode = qt_gui_shim.QHeaderView.setSectionResizeMode + + # QPainter HighQualityAntialiasing is obsolete. Use Antiasliasing instead. + # https://doc.qt.io/qt-5/qpainter.html#RenderHint-enum + qt_gui_shim.QPainter.HighQualityAntialiasing = qt_gui_shim.QPainter.Antialiasing + + # QPaelette Background is obsolete. Use Window instead. + # https://doc.qt.io/qt-5/qpalette.html#ColorRole-enum + qt_gui_shim.QPalette.Background = qt_gui_shim.QPalette.Window + + if qt_web_engine_widgets_shim: + # QtWwebEngineWidgets + qt_web_engine_widgets_shim.QWebEnginePage = QtWebEngineCore.QWebEnginePage + qt_web_engine_widgets_shim.QWebEngineProfile = QtWebEngineCore.QWebEngineProfile + + return qt_core_shim, qt_gui_shim, qt_web_engine_widgets_shim \ No newline at end of file diff --git a/python/tank/util/qt_importer.py b/python/tank/util/qt_importer.py index 638cefb26f..8a21321f8c 100644 --- a/python/tank/util/qt_importer.py +++ b/python/tank/util/qt_importer.py @@ -19,11 +19,7 @@ logger = LogManager.get_logger(__name__) -def custom_logger(e): - error_log_path = f"C:/Users/chaucae/OneDrive-Autodesk/Documents/projects/tk-core/logs.log" # any path - with open(error_log_path, "a") as error_file: - error_file.write("CUSTOM DEBUG: ") - error_file.write(str(e) + "\n\n") + class QtImporter(object): """ Imports different versions of Qt and makes their API compatible with PySide. @@ -38,7 +34,7 @@ class QtImporter(object): ... """ - QT5, QT6 = range(5, 7) + QT4, QT5, QT6 = range(4, 7) def __init__(self, interface_version_requested=QT6): """ @@ -47,7 +43,6 @@ def __init__(self, interface_version_requested=QT6): :param interface_version_request: Indicates which version of the Qt API is requested. """ - self.interface_version_requested = interface_version_requested ( self._binding_name, self._binding_version, @@ -70,14 +65,6 @@ def QtGui(self): """ return self._modules["QtGui"] if self._modules else None - @property - def QtWebKit(self): - """ - :returns: QtWebKit module, if available. - """ - logger.error(f"LALO interface_version_requested: {self.interface_version_requested}") - return self._modules.get("QtWebKit") if self._modules else None - @property def QtNetwork(self): """ @@ -95,7 +82,7 @@ def QtWebEngineWidgets(self): @property def QtWidgets(self): """ - :returns: + :returns: QtWidgets module, if available. """ return self._modules["QtWidgets"] if self._modules else None @@ -196,7 +183,6 @@ def _import_pyside2(self): "QtTest", "QtUiTools", "QtWebChannel", - "QtWebKit", "QtWebKitWidgets", "QtWidgets", "QtWebSockets", @@ -208,12 +194,6 @@ def _import_pyside2(self): "QtMultimedia", ] - # We have the potential for a deadlock in Maya 2018 on Windows if this - # is imported. We set the env var from the tk-maya engine when we - # detect that we are in this situation. - if "SHOTGUN_SKIP_QTWEBENGINEWIDGETS_IMPORT" not in os.environ: - sub_modules.append("QtWebEngineWidgets") - modules_dict = {"QtCore": QtCore} # Add shiboken2 to the modules dict @@ -326,34 +306,6 @@ def _import_pyside6_as_pyside(self): # pragma: no cover self._to_version_tuple(QtCore.qVersion()), ) - def _import_pyside2_as_pyside6(self): - import PySide2 - from PySide2 import QtCore, QtGui, QtWidgets - import shiboken2 - from .pyside6_patcher import PySide6Patcher - - # Patch PySide2 to make it compatible with PySide6 - QtCore, QtGui = PySide6Patcher.patch(QtCore, QtGui, QtWidgets, PySide2) - QtNetwork = self._import_module_by_name("PySide2", "QtNetwork") - QtWebEngineWidgets = self._import_module_by_name("PySide2.QtWebEngineWidgets", "QtWebEngineWidgets") - - # ... other necessary patches and imports ... - - return ( - "PySide2", - PySide2.__version__, - PySide2, - { - "QtCore": QtCore, - "QtGui": QtGui, - "QtNetwork": QtNetwork, - "QtWebEngineWidgets": QtWebEngineWidgets, - "QtWebKit": None, - "shiboken": shiboken2, - }, - self._to_version_tuple(QtCore.qVersion()), - ) - def _import_pyside6(self): """ Import PySide6. @@ -367,7 +319,6 @@ def _import_pyside6(self): sub_modules = pkgutil.iter_modules(PySide6.__path__) if "SHOTGUN_SKIP_QTWEBENGINEWIDGETS_IMPORT" in os.environ: - custom_logger("Skipping QtWebEngineWidgets import") sub_modules = [ m for m in sub_modules if not m.name.startswith("QtWebEngine") ] @@ -375,21 +326,16 @@ def _import_pyside6(self): modules_dict = {} # Add shiboken6 to the modules dict modules_dict["shiboken"] = shiboken6 - # modules_dict["QtWebKit"] = None - custom_logger(f"sub_modeules {list(sub_modules)}") - # custom_logger(f"sub_modules: {list(sub_modules)[0]}") for module in pkgutil.iter_modules(PySide6.__path__): - custom_logger(f"module_name:") try: module_name = module.name wrapper = __import__("PySide6", globals(), locals(), [module_name]) if hasattr(wrapper, module_name): modules_dict[module_name] = getattr(wrapper, module_name) except Exception as e: - custom_logger(f"Unable to import module '{module_name}': {e}") logger.debug("'%s' was skipped: %s", module_name, e) pass - custom_logger(f"modules_dict: {modules_dict}") + return ( PySide6.__name__, PySide6.__version__, @@ -397,6 +343,43 @@ def _import_pyside6(self): modules_dict, self._to_version_tuple(PySide6.__version__), ) + + def _import_pyside2_as_pyside6(self): + """ + Imports PySide2 and makes it compatible with PySide6. + + Returns a tuple containing the version information, the PySide2 module, + and a dictionary of imported modules. + + :returns: A tuple containing the version information, the PySide2 module, + and a dictionary of imported modules. + """ + + import PySide2 + import shiboken2 + + QtCore = self._import_module_by_name("PySide2", "QtCore") + QtGui = self._import_module_by_name("PySide2", "QtGui") + QtWidgets = self._import_module_by_name("PySide2", "QtWidgets") + QtNetwork = self._import_module_by_name("PySide2", "QtNetwork") + QtWebEngineWidgets = self._import_module_by_name("PySide2", "QtWebEngineWidgets") + + # ... other necessary patches and imports ... + + return ( + "PySide2", + PySide2.__version__, + PySide2, + { + "QtCore": QtCore, + "QtGui": QtGui, + "QtNetwork": QtNetwork, + "QtWebEngineWidgets": QtWebEngineWidgets, + "QtWidgets": QtWidgets, + "shiboken": shiboken2, + }, + self._to_version_tuple(QtCore.qVersion()), + ) def _to_version_tuple(self, version_str): """ @@ -410,7 +393,6 @@ def _to_version_tuple(self, version_str): return tuple([int(c) for c in version_str.split(".")]) def _import_modules(self, interface_version_requested): - logger.debug(f"LALO interface_version_requested: {interface_version_requested}") """ Tries to import different Qt binding implementation in the following order: - PySide6 @@ -425,26 +407,30 @@ def _import_modules(self, interface_version_requested): """ interface = { + self.QT4: "Qt4", self.QT5: "Qt5", self.QT6: "Qt6", }.get(interface_version_requested) logger.debug("Requesting %s-like interface", interface) - if interface_version_requested == self.QT6: + if interface_version_requested == self.QT4: + # First, try PySide 2 since Toolkit ships with PySide2. try: - pyside6 = self._import_pyside6() - logger.debug("Imported PySide6.") - return pyside6 + pyside2 = self._import_pyside2_as_pyside() + logger.debug("Imported PySide2 as PySide.") + return pyside2 except ImportError: pass + # Last attempt, try PySide6. PySide6 is not yet fully supported but allow DCCs that + # require PySide6 to run with the current support try: - pyside2_as_pyside6 = self._import_pyside2_as_pyside6() - logger.debug("Imported PySide2 as PySide6.") - return pyside2_as_pyside6 + pyside6 = self._import_pyside6_as_pyside() + logger.debug("Imported PySide6 as PySide.") + return pyside6 except ImportError: pass - + elif interface_version_requested == self.QT5: try: pyside2 = self._import_pyside2() @@ -453,6 +439,21 @@ def _import_modules(self, interface_version_requested): except ImportError: pass + elif interface_version_requested == self.QT6: + try: + pyside6 = self._import_pyside6() + logger.debug("Imported PySide6.") + return pyside6 + except ImportError: + pass + + try: + pyside2_as_pyside6 = self._import_pyside2_as_pyside6() + logger.debug("Imported PySide2 as PySide6.") + return pyside2_as_pyside6 + except ImportError: + pass + logger.debug("No Qt matching that interface was found.") return (None, None, None, None, None) diff --git a/tests/authentication_tests/test_interactive_authentication.py b/tests/authentication_tests/test_interactive_authentication.py index 02323a6900..152374cf07 100644 --- a/tests/authentication_tests/test_interactive_authentication.py +++ b/tests/authentication_tests/test_interactive_authentication.py @@ -178,9 +178,9 @@ def _print_message(self, text, test_console): print(text) print("=" * len(text)) else: - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtGui, QtWidgets - mb = QtGui.QMessageBox() + mb = QtWidgets.QMessageBox() mb.setText(text) mb.exec_() @@ -492,7 +492,7 @@ def test_ui_auth_with_whitespace(self): Makes sure that the ui strips out whitespaces. """ # Import locally since login_dialog has a dependency on Qt and it might be missing - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtGui, QtWidgets with self._login_dialog() as ld: # For each widget in the ui, make sure that the text is properly cleaned @@ -500,14 +500,14 @@ def test_ui_auth_with_whitespace(self): for widget in [ld.ui._2fa_code, ld.ui.backup_code, ld.ui.site, ld.ui.login]: # Give the focus, so that editingFinished can be triggered. widget.setFocus() - if isinstance(widget, QtGui.QLineEdit): + if isinstance(widget, QtWidgets.QLineEdit): widget.setText(" text ") else: widget.lineEdit().setText(" text ") # Give the focus to another widget, which should trigger the editingFinished # signal and the dialog will clear the extra spaces in it. ld.ui.password.setFocus() - if isinstance(widget, QtGui.QLineEdit): + if isinstance(widget, QtWidgets.QLineEdit): # Text should be cleaned of spaces now. self.assertEqual(widget.text(), "text") else: @@ -587,22 +587,22 @@ def test_login_dialog_exit_confirmation(self): Make sure that the site and user fields are disabled when doing session renewal """ - from tank.authentication.ui.qt_abstraction import QtGui, QtCore + from tank.authentication.ui.qt_abstraction import QtGui, QtCore, QtWidgets # Test window close event with self._login_dialog() as ld: # First, simulate user clicks on the No button - ld.confirm_box.exec_ = lambda: QtGui.QMessageBox.StandardButton.No + ld.confirm_box.exec_ = lambda: QtWidgets.QMessageBox.StandardButton.No self.assertEqual(ld.close(), False) self.assertIsNone(ld.my_result) self.assertEqual(ld.isVisible(), True) # Then, simulate user clicks on the Yes button - ld.confirm_box.exec_ = lambda: QtGui.QMessageBox.StandardButton.Yes + ld.confirm_box.exec_ = lambda: QtWidgets.QMessageBox.StandardButton.Yes self.assertEqual(ld.close(), True) - self.assertEqual(ld.my_result, QtGui.QDialog.Rejected) + self.assertEqual(ld.my_result, QtWidgets.QDialog.Rejected) self.assertEqual(ld.isVisible(), False) # Test escape key event @@ -617,21 +617,21 @@ def test_login_dialog_exit_confirmation(self): ) # First, simulate user clicks on the No button - ld.confirm_box.exec_ = lambda: QtGui.QMessageBox.StandardButton.No + ld.confirm_box.exec_ = lambda: QtWidgets.QMessageBox.StandardButton.No self.assertIsNone(ld.keyPressEvent(event)) self.assertIsNone(ld.my_result) self.assertEqual(ld.isVisible(), True) # Then, simulate user clicks on the Yes button - ld.confirm_box.exec_ = lambda: QtGui.QMessageBox.StandardButton.Yes + ld.confirm_box.exec_ = lambda: QtWidgets.QMessageBox.StandardButton.Yes # Initialize the ASL process - mostly for coverage ld._asl_process("https://host.shotgunstudio.com") # Test Escape key self.assertIsNone(ld.keyPressEvent(event)) - self.assertEqual(ld.my_result, QtGui.QDialog.Rejected) + self.assertEqual(ld.my_result, QtWidgets.QDialog.Rejected) self.assertEqual(ld.isVisible(), False) @suppress_generated_code_qt_warnings @@ -707,12 +707,12 @@ def test_login_dialog_method_selected(self, *unused_mocks): ], ) def test_ui_auth_2fa(self, *mocks): - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtWidgets, QtGui with mock.patch.object( - QtGui.QDialog, + QtWidgets.QDialog, "exec_", - return_value=QtGui.QDialog.Accepted, + return_value=QtWidgets.QDialog.Accepted, ), self._login_dialog( is_session_renewal=True, hostname="https://host.shotgunstudio.com", @@ -763,8 +763,8 @@ def test_ui_auth_2fa(self, *mocks): # This is supposed to work self.assertEqual( - QtGui.QDialog.result(ld), - QtGui.QDialog.Accepted, + QtWidgets.QDialog.result(ld), + QtWidgets.QDialog.Accepted, ) self.assertEqual( @@ -806,12 +806,12 @@ def test_ui_auth_web_login(self, *mocks): Not doing much at the moment. Just try to increase code coverage """ - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtGui, QtWidgets with mock.patch.object( - QtGui.QDialog, + QtWidgets.QDialog, "exec_", - return_value=QtGui.QDialog.Accepted, + return_value=QtWidgets.QDialog.Accepted, ), self._login_dialog( is_session_renewal=True, hostname="https://host.shotgunstudio.com", @@ -1041,7 +1041,7 @@ def test_login_dialog_method_selected_session_cache(self): return_value=["john", "bob"], ) def test_login_dialog_app_session_launcher(self, *unused_mocks): - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtGui, QtWidgets # First basic and ASL methods with mock.patch( @@ -1050,9 +1050,9 @@ def test_login_dialog_app_session_launcher(self, *unused_mocks): "authentication_app_session_launcher_enabled": True, }, ), mock.patch.object( - QtGui.QDialog, + QtWidgets.QDialog, "exec_", - return_value=QtGui.QDialog.Accepted, + return_value=QtWidgets.QDialog.Accepted, ), self._login_dialog( is_session_renewal=True, hostname="http://host.shotgunstudio.com", # HTTP only for code coverage @@ -1107,8 +1107,8 @@ def test_login_dialog_app_session_launcher(self, *unused_mocks): # Verify that the dialog succeeded self.assertEqual( - QtGui.QDialog.result(ld), - QtGui.QDialog.Accepted, + QtWidgets.QDialog.result(ld), + QtWidgets.QDialog.Accepted, ) self.assertEqual( diff --git a/tests/authentication_tests/test_web_login.py b/tests/authentication_tests/test_web_login.py index f36905b319..02fe489db9 100644 --- a/tests/authentication_tests/test_web_login.py +++ b/tests/authentication_tests/test_web_login.py @@ -42,7 +42,7 @@ def test_web_login(self): "QtCore": qt_abstraction.QtCore, "QtGui": qt_abstraction.QtGui, "QtNetwork": qt_abstraction.QtNetwork, - "QtWebKit": qt_abstraction.QtWebKit, + # "QtWebKit": qt_abstraction.QtWebKit, "QtWebEngineWidgets": qt_abstraction.QtWebEngineWidgets, }, ) diff --git a/tests/fixtures/config/bundles/test_app/app.py b/tests/fixtures/config/bundles/test_app/app.py index d1a92be0fe..8cd905d18e 100644 --- a/tests/fixtures/config/bundles/test_app/app.py +++ b/tests/fixtures/config/bundles/test_app/app.py @@ -35,12 +35,12 @@ def _show_app(self): """ Shows an app with a button in it. """ - from sgtk.platform.qt import QtGui + from sgtk.platform.qt6 import QtGui, QtWidgets - class AppDialog(QtGui.QWidget): + class AppDialog(QtWidgets.QWidget): def __init__(self, parent=None): super(AppDialog, self).__init__(parent) - self._layout = QtGui.QVBoxLayout(self) + self._layout = QtWidgets.QVBoxLayout(self) self.button = QtGui.QPushButton("Close", parent=self) self.button.clicked.connect(self.close) self._layout.addWidget(self.button) diff --git a/tests/platform_tests/test_engine.py b/tests/platform_tests/test_engine.py index 7f07fa5d16..b8c3f640a3 100644 --- a/tests/platform_tests/test_engine.py +++ b/tests/platform_tests/test_engine.py @@ -107,9 +107,9 @@ def test_create_widget(self): Ensures that the _create_widget method is exception safe. """ # Engine is not started yet, so can't rely on sgtk.platform.qt for imports. - from tank.authentication.ui.qt_abstraction import QtGui + from tank.authentication.ui.qt_abstraction import QtWidgets - class _test_widget(QtGui.QWidget): + class _test_widget(QtWidgets.QWidget): def __init__(self, *args, **kwargs): raise Exception("Testing...") @@ -261,7 +261,7 @@ def _test_exec_in_main_thread(self, exec_in_main_thread_func): t.join() def _assert_run_in_main_thread_and_quit(self): - from sgtk.platform.qt import QtCore + from sgtk.platform.qt6 import QtCore # Make sure we are running in the main thread. self.assertEqual( @@ -302,7 +302,7 @@ def _test_thead_safe_exec_in_main_thread(self): runs a simple test a number of times in multiple threads and asserts the result returned is as expected. """ - from sgtk.platform.qt import QtCore + from sgtk.platform.qt6 import QtCore num_test_threads = 20 num_thread_iterations = 30 @@ -669,7 +669,7 @@ def setUp(self): self.engine = sgtk.platform.start_engine("test_engine", self.tk, self.context) # Engine is not started yet, so can't rely on sgtk.platform.qt for imports. - from tank.authentication.ui.qt_abstraction import QtWidgetsvvvv + from tank.authentication.ui.qt_abstraction import QtWidgets # Create an application instance so we can take control of the execution # of the dialog. From 44f068b58fb91336112b127ea80c7692da4451be Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Fri, 6 Jun 2025 10:44:35 -0500 Subject: [PATCH 3/9] import deleted and patcher class added --- .../interactive_authentication.py | 4 +-- python/tank/authentication/invoker.py | 4 +-- python/tank/authentication/login_dialog.py | 10 ++++--- .../sso_saml2/core/sso_saml2_core.py | 15 ++++++---- .../core/username_password_dialog.py | 24 +++++++-------- .../ui/aspect_preserving_label.py | 3 +- .../ui/completion_filter_proxy.py | 2 +- .../tank/authentication/ui/qt_abstraction.py | 1 + python/tank/authentication/ui/recent_box.py | 2 +- .../tank/authentication/ui_authentication.py | 11 +++---- python/tank/bootstrap/async_bootstrap.py | 2 +- .../tank/util/pyside2_as_pyside6_patcher.py | 12 ++++++++ python/tank/util/pyside6_patcher.py | 2 +- python/tank/util/qt_importer.py | 30 ++++++++++++------- 14 files changed, 73 insertions(+), 49 deletions(-) create mode 100644 python/tank/util/pyside2_as_pyside6_patcher.py diff --git a/python/tank/authentication/interactive_authentication.py b/python/tank/authentication/interactive_authentication.py index bc66b6920a..a7627acbba 100644 --- a/python/tank/authentication/interactive_authentication.py +++ b/python/tank/authentication/interactive_authentication.py @@ -42,9 +42,9 @@ # in the context of a DCC, but occur too early for the Toolkit logging to be # fully in place to record it. try: - from .ui.qt_abstraction import QtGui, QtWidgets + from .ui.qt_abstraction import QtWidgets except Exception: - QtGui = None + QtWidgets = None logger = LogManager.get_logger(__name__) diff --git a/python/tank/authentication/invoker.py b/python/tank/authentication/invoker.py index f28bb921e6..96cd1a2e84 100644 --- a/python/tank/authentication/invoker.py +++ b/python/tank/authentication/invoker.py @@ -29,9 +29,9 @@ # in the context of a DCC, but occur too early for the Toolkit logging to be # fully in place to record it. try: - from .ui.qt_abstraction import QtCore, QtGui, QtWidgets + from .ui.qt_abstraction import QtCore, QtWidgets except Exception: - QtCore, QtGui = None, None + QtCore, QtWidgets = None, None def create(): diff --git a/python/tank/authentication/login_dialog.py b/python/tank/authentication/login_dialog.py index d5a5f6cffd..7eab8974e6 100644 --- a/python/tank/authentication/login_dialog.py +++ b/python/tank/authentication/login_dialog.py @@ -38,6 +38,7 @@ QtNetwork, QtWebEngineWidgets, QtWidgets, + QtWebEngineCore, qt_version_tuple, ) from . import app_session_launcher @@ -153,6 +154,7 @@ def __init__( "QtNetwork": QtNetwork, "QtWidgets": QtWidgets, "QtWebEngineWidgets": QtWebEngineWidgets, + "QtWebEngineCore": QtWebEngineCore, } try: self._sso_saml2 = SsoSaml2Toolkit( @@ -251,19 +253,19 @@ def __init__( self.ui.button_options.setMenu(menu) self.ui.button_options.setVisible(False) - self.menu_action_asl = QtWidgets.QAction( + self.menu_action_asl = QtGui.QAction( "Authenticate with the App Session Launcher", menu, ) self.menu_action_asl.triggered.connect(self._menu_activated_action_asl) - self.menu_action_ulf = QtWidgets.QAction( + self.menu_action_ulf = QtGui.QAction( "Authenticate with the Flow Production Tracking browser", menu, ) self.menu_action_ulf.triggered.connect(self._menu_activated_action_web_legacy) - self.menu_action_legacy = QtWidgets.QAction( + self.menu_action_legacy = QtGui.QAction( "Authenticate with Legacy Flow Production Tracking Login Credentials", menu, ) @@ -355,7 +357,7 @@ def __del__(self): self._query_task.wait() def _confirm_exit(self): - return self.confirm_box.exec_() == QtGui.QMessageBox.StandardButton.Yes + return self.confirm_box.exec_() == QtWidgets.QMessageBox.StandardButton.Yes # PySide uses "exec_" instead of "exec" because "exec" is a reserved # keyword in Python 2. diff --git a/python/tank/authentication/sso_saml2/core/sso_saml2_core.py b/python/tank/authentication/sso_saml2/core/sso_saml2_core.py index 6ccff5baf2..c0d4f5e498 100644 --- a/python/tank/authentication/sso_saml2/core/sso_saml2_core.py +++ b/python/tank/authentication/sso_saml2/core/sso_saml2_core.py @@ -174,6 +174,9 @@ def __init__(self, window_title="Web Login", qt_modules=None): QtWebEngineWidgets = self._QtWebEngineWidgets = qt_modules.get( "QtWebEngineWidgets" ) # noqa + QtWebEngineCore = self._QtWebEngineCore = qt_modules.get( + "QtWebEngineCore" + ) # noqa if QtCore is None: raise SsoSaml2MissingQtCore("The QtCore module is unavailable") @@ -203,15 +206,15 @@ def __init__(self, window_title="Web Login", qt_modules=None): # - Maya 2017 # missing the 'QSslConfiguration' class. Likely compiled without SSL # support. - if QtWebEngineWidgets and not hasattr( - QtWebEngineWidgets.QWebEngineProfile, "cookieStore" + if QtWebEngineCore and not hasattr( + QtWebEngineCore.QWebEngineProfile, "cookieStore" ): raise SsoSaml2IncompletePySide2( "Missing method QtWebEngineWidgets.QWebEngineProfile.cookieStore()" ) if QtNetwork and not hasattr(QtNetwork, "QSslConfiguration"): raise SsoSaml2IncompletePySide2("Missing class QtNetwork.QSslConfiguration") - class TKWebPageQtWebEngine(QtWebEngineWidgets.QWebEnginePage): + class TKWebPageQtWebEngine(QtWebEngineCore.QWebEnginePage): """ Wrapper class to better control the behaviour when clicking on links in the Qt5 web browser. If we are asked to open a new tab/window, then @@ -251,7 +254,7 @@ def acceptNavigationRequest(self, url, n_type, is_mainframe): if self._profile is None: QtGui.QDesktopServices.openUrl(url) return False - return QtWebEngineWidgets.QWebEnginePage.acceptNavigationRequest( + return QtWebEngineCore.QWebEnginePage.acceptNavigationRequest( self, url, n_type, is_mainframe ) @@ -289,7 +292,7 @@ def certificateError(self, certificate_error): self._layout.setSpacing(0) self._layout.setContentsMargins(0, 0, 0, 0) - self._profile = QtWebEngineWidgets.QWebEngineProfile.defaultProfile() + self._profile = QtWebEngineCore.QWebEngineProfile.defaultProfile() self._logger.debug( "Initial WebEngineProfile storage location: %s", self._profile.persistentStoragePath(), @@ -313,7 +316,7 @@ def certificateError(self, certificate_error): # The cookies will be cleared if there are no prior session in # method 'update_browser_from_session' if needed. self._profile.setPersistentCookiesPolicy( - QtWebEngineWidgets.QWebEngineProfile.ForcePersistentCookies + QtWebEngineCore.QWebEngineProfile.ForcePersistentCookies ) self._cookie_jar = QtNetwork.QNetworkCookieJar() self._profile.cookieStore().cookieAdded.connect(self._on_cookie_added) diff --git a/python/tank/authentication/sso_saml2/core/username_password_dialog.py b/python/tank/authentication/sso_saml2/core/username_password_dialog.py index de16729e92..3a0202c3bc 100644 --- a/python/tank/authentication/sso_saml2/core/username_password_dialog.py +++ b/python/tank/authentication/sso_saml2/core/username_password_dialog.py @@ -14,11 +14,11 @@ from __future__ import print_function # pylint: disable=import-error -from ...ui.qt_abstraction import QtCore, QtGui, QtWidgets +from ...ui.qt_abstraction import QtCore, QtWidgets -# No point in proceeding if QtGui is None. -if QtGui is None: - raise ImportError("Unable to import QtGui") +# No point in proceeding if QtWidgets is None. +if QtWidgets is None: + raise ImportError("Unable to import QtWidgets") class UsernamePasswordDialog(QtWidgets.QDialog): @@ -39,7 +39,7 @@ def __init__(self, window_title=None, message=None): self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) # set up the layout - form_grid_layout = QtGui.QGridLayout(self) + form_grid_layout = QtWidgets.QGridLayout(self) # initialize the username combo box so that it is editable self._edit_username = QtWidgets.QLineEdit(self) @@ -56,11 +56,11 @@ def __init__(self, window_title=None, message=None): label_message.setWordWrap(True) # initialize buttons - buttons = QtGui.QDialogButtonBox(self) - buttons.addButton(QtGui.QDialogButtonBox.Ok) - buttons.addButton(QtGui.QDialogButtonBox.Cancel) - buttons.button(QtGui.QDialogButtonBox.Ok).setText("Login") - buttons.button(QtGui.QDialogButtonBox.Cancel).setText("Cancel") + buttons = QtWidgets.QDialogButtonBox(self) + buttons.addButton(QtWidgets.QDialogButtonBox.Ok) + buttons.addButton(QtWidgets.QDialogButtonBox.Cancel) + buttons.button(QtWidgets.QDialogButtonBox.Ok).setText("Login") + buttons.button(QtWidgets.QDialogButtonBox.Cancel).setText("Cancel") # place components into the dialog form_grid_layout.addWidget(label_message, 0, 0) @@ -71,10 +71,10 @@ def __init__(self, window_title=None, message=None): self.setLayout(form_grid_layout) - buttons.button(QtGui.QDialogButtonBox.Ok).clicked.connect( + buttons.button(QtWidgets.QDialogButtonBox.Ok).clicked.connect( self._on_enter_credentials ) - buttons.button(QtGui.QDialogButtonBox.Cancel).clicked.connect(self.close) + buttons.button(QtWidgets.QDialogButtonBox.Cancel).clicked.connect(self.close) # On Qt4, this sets the look-and-feel to that of the toolkit. self.setStyleSheet( diff --git a/python/tank/authentication/ui/aspect_preserving_label.py b/python/tank/authentication/ui/aspect_preserving_label.py index 80b362f490..737755d3b9 100644 --- a/python/tank/authentication/ui/aspect_preserving_label.py +++ b/python/tank/authentication/ui/aspect_preserving_label.py @@ -8,8 +8,7 @@ # agreement to the Shotgun Pipeline Toolkit Source Code License. All rights # not expressly granted therein are reserved by Shotgun Software Inc. -from .qt_abstraction import QtGui, QtWidgets -from .qt_abstraction import QtCore +from .qt_abstraction import QtCore, QtWidgets class AspectPreservingLabel(QtWidgets.QLabel): diff --git a/python/tank/authentication/ui/completion_filter_proxy.py b/python/tank/authentication/ui/completion_filter_proxy.py index bf5822d008..ebf182de67 100644 --- a/python/tank/authentication/ui/completion_filter_proxy.py +++ b/python/tank/authentication/ui/completion_filter_proxy.py @@ -20,7 +20,7 @@ from tank.util import sgre as re -from .qt_abstraction import QtGui, QtCore +from .qt_abstraction import QtCore class FuzzyMatcher(): diff --git a/python/tank/authentication/ui/qt_abstraction.py b/python/tank/authentication/ui/qt_abstraction.py index abf8b6094d..6efefcf9a8 100644 --- a/python/tank/authentication/ui/qt_abstraction.py +++ b/python/tank/authentication/ui/qt_abstraction.py @@ -20,5 +20,6 @@ QtNetwork = _importer.QtNetwork QtWidgets = _importer.QtWidgets QtWebEngineWidgets = _importer.QtWebEngineWidgets +QtWebEngineCore = _importer.QtWebEngineCore qt_version_tuple = _importer.qt_version_tuple del _importer diff --git a/python/tank/authentication/ui/recent_box.py b/python/tank/authentication/ui/recent_box.py index a817239c57..3b89f9b526 100644 --- a/python/tank/authentication/ui/recent_box.py +++ b/python/tank/authentication/ui/recent_box.py @@ -18,7 +18,7 @@ -------------------------------------------------------------------------------- """ -from .qt_abstraction import QtGui, QtCore, QtWidgets +from .qt_abstraction import QtCore, QtWidgets from .completion_filter_proxy import CompletionFilterProxy diff --git a/python/tank/authentication/ui_authentication.py b/python/tank/authentication/ui_authentication.py index e58e812f6c..d56900b148 100644 --- a/python/tank/authentication/ui_authentication.py +++ b/python/tank/authentication/ui_authentication.py @@ -30,7 +30,10 @@ # something usually done by the Toolkit. The worry is that the import may fail # in the context of a DCC, but occur too early for the Toolkit logging to be # fully in place to record it. - +try: + from .login_dialog import LoginDialog +except Exception: + LoginDialog = None class UiAuthenticationHandler(object): @@ -64,12 +67,6 @@ def authenticate(self, hostname, login, http_proxy): logger.debug("Requesting password in a dialog.") else: logger.debug("Requesting username and password in a dialog.") - try: - from .login_dialog import LoginDialog - except Exception as e: - logger.debug(f"Failed to import LoginDialog: {e}") - LoginDialog = None - logger.debug(f"LoginDialog is {LoginDialog}") if LoginDialog is None: logger.error("Unexpected state. LoginDialog should be available.") raise ShotgunAuthenticationError("Could not instantiated login dialog.") diff --git a/python/tank/bootstrap/async_bootstrap.py b/python/tank/bootstrap/async_bootstrap.py index e2ff06cc46..8cbe39db6d 100644 --- a/python/tank/bootstrap/async_bootstrap.py +++ b/python/tank/bootstrap/async_bootstrap.py @@ -13,8 +13,8 @@ importer = QtImporter() QtCore = importer.QtCore -QtGui = importer.QtGui QtWidgets = importer.QtWidgets + if QtCore is None: # Raise an exception when Qt is not available. raise ImportError diff --git a/python/tank/util/pyside2_as_pyside6_patcher.py b/python/tank/util/pyside2_as_pyside6_patcher.py new file mode 100644 index 0000000000..f477866dde --- /dev/null +++ b/python/tank/util/pyside2_as_pyside6_patcher.py @@ -0,0 +1,12 @@ +class PySide2asPySide6Patcher: + @staticmethod + def _patch_QtWebEngineCore(qt_webengine_core, classes): + for cls in classes: + setattr(qt_webengine_core, cls.__name__, cls) + return qt_webengine_core + + @staticmethod + def _patch_QtGui(qt_gui, classes): + for cls in classes: + setattr(qt_gui, cls.__name__, cls) + return qt_gui \ No newline at end of file diff --git a/python/tank/util/pyside6_patcher.py b/python/tank/util/pyside6_patcher.py index 948e5418e7..90d4e56063 100644 --- a/python/tank/util/pyside6_patcher.py +++ b/python/tank/util/pyside6_patcher.py @@ -599,4 +599,4 @@ def patch( qt_web_engine_widgets_shim.QWebEnginePage = QtWebEngineCore.QWebEnginePage qt_web_engine_widgets_shim.QWebEngineProfile = QtWebEngineCore.QWebEngineProfile - return qt_core_shim, qt_gui_shim, qt_web_engine_widgets_shim \ No newline at end of file + return qt_core_shim, qt_gui_shim, qt_web_engine_widgets_shim diff --git a/python/tank/util/qt_importer.py b/python/tank/util/qt_importer.py index 8a21321f8c..2274bbb511 100644 --- a/python/tank/util/qt_importer.py +++ b/python/tank/util/qt_importer.py @@ -85,6 +85,13 @@ def QtWidgets(self): :returns: QtWidgets module, if available. """ return self._modules["QtWidgets"] if self._modules else None + + @property + def QtWebEngineCore(self): + """ + :returns: QtWebEngineCore module, if available. + """ + return self._modules["QtWebEngineCore"] if self._modules else None @property def binding(self): @@ -316,13 +323,6 @@ def _import_pyside6(self): import PySide6 import shiboken6 - sub_modules = pkgutil.iter_modules(PySide6.__path__) - - if "SHOTGUN_SKIP_QTWEBENGINEWIDGETS_IMPORT" in os.environ: - sub_modules = [ - m for m in sub_modules if not m.name.startswith("QtWebEngine") - ] - modules_dict = {} # Add shiboken6 to the modules dict modules_dict["shiboken"] = shiboken6 @@ -357,14 +357,22 @@ def _import_pyside2_as_pyside6(self): import PySide2 import shiboken2 + from .pyside2_as_pyside6_patcher import PySide2asPySide6Patcher QtCore = self._import_module_by_name("PySide2", "QtCore") QtGui = self._import_module_by_name("PySide2", "QtGui") QtWidgets = self._import_module_by_name("PySide2", "QtWidgets") QtNetwork = self._import_module_by_name("PySide2", "QtNetwork") QtWebEngineWidgets = self._import_module_by_name("PySide2", "QtWebEngineWidgets") - - # ... other necessary patches and imports ... + QtWebEngineCore = self._import_module_by_name("PySide2", "QtWebEngineCore") + QtWebEngineCore = PySide2asPySide6Patcher._patch_QtWebEngineCore( + QtWebEngineCore, + [ + QtWebEngineWidgets.QWebEnginePage, + QtWebEngineWidgets.QWebEngineProfile, + ] + ) + QtGui = PySide2asPySide6Patcher._patch_QtGui(QtGui, [QtWidgets.QAction]) return ( "PySide2", @@ -376,6 +384,7 @@ def _import_pyside2_as_pyside6(self): "QtNetwork": QtNetwork, "QtWebEngineWidgets": QtWebEngineWidgets, "QtWidgets": QtWidgets, + "QtWebEngineCore": QtWebEngineCore, "shiboken": shiboken2, }, self._to_version_tuple(QtCore.qVersion()), @@ -413,6 +422,7 @@ def _import_modules(self, interface_version_requested): }.get(interface_version_requested) logger.debug("Requesting %s-like interface", interface) + # TODO: Remove this condition sgtk.platform.qt6 is fully supported across all Toolkit repositories. if interface_version_requested == self.QT4: # First, try PySide 2 since Toolkit ships with PySide2. try: @@ -430,7 +440,7 @@ def _import_modules(self, interface_version_requested): return pyside6 except ImportError: pass - + elif interface_version_requested == self.QT5: try: pyside2 = self._import_pyside2() From d8811abb2b56abb61d79269c206cca3519b0ecc8 Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Fri, 6 Jun 2025 12:31:58 -0500 Subject: [PATCH 4/9] black format --- python/tank/util/qt_importer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/tank/util/qt_importer.py b/python/tank/util/qt_importer.py index d0daf1dfca..8d1e51bd72 100644 --- a/python/tank/util/qt_importer.py +++ b/python/tank/util/qt_importer.py @@ -397,7 +397,7 @@ def _to_version_tuple(self, version_str): return tuple([int(c) for c in version_str.split(".")]) def _import_modules(self, interface_version_requested): - """ + """ Attempts to import different Qt binding implementations in the following order: - PySide6 (for Qt6 interface) - PySide2 (for Qt5 and Qt4 interfaces) From 2f2cd2b13676b4d577ec4facee06519ba1bd20ea Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Tue, 10 Jun 2025 13:28:58 -0500 Subject: [PATCH 5/9] some comments fixed --- .../tank/authentication/ui/qt_abstraction.py | 2 +- python/tank/authentication/ui/recent_box.py | 4 +- python/tank/bootstrap/async_bootstrap.py | 2 +- python/tank/platform/engine.py | 23 +- python/tank/platform/qt6/arrow.png | Bin 0 -> 950 bytes python/tank/platform/qt6/arrow_flipped.png | Bin 0 -> 938 bytes .../tank/platform/qt6/arrow_flipped_hover.png | Bin 0 -> 1226 bytes .../platform/qt6/arrow_flipped_pressed.png | Bin 0 -> 1252 bytes python/tank/platform/qt6/arrow_hover.png | Bin 0 -> 1221 bytes python/tank/platform/qt6/arrow_pressed.png | Bin 0 -> 1250 bytes python/tank/platform/qt6/book_256.png | Bin 0 -> 33077 bytes python/tank/platform/qt6/busy_dialog.py | 59 + python/tank/platform/qt6/busy_dialog.ui | 123 ++ python/tank/platform/qt6/config_item.py | 93 + .../platform/qt6/default_app_icon_256.png | Bin 0 -> 19181 bytes python/tank/platform/qt6/folder_256.png | Bin 0 -> 43855 bytes .../qt6/fonts/OpenSans/OpenSans-Bold.ttf | Bin 0 -> 224592 bytes .../qt6/fonts/OpenSans/OpenSans-CondLight.ttf | Bin 0 -> 221108 bytes .../qt6/fonts/OpenSans/OpenSans-Italic.ttf | Bin 0 -> 212896 bytes .../qt6/fonts/OpenSans/OpenSans-Light.ttf | Bin 0 -> 222412 bytes .../qt6/fonts/OpenSans/OpenSans-Regular.ttf | Bin 0 -> 217360 bytes python/tank/platform/qt6/gradient.png | Bin 0 -> 305 bytes python/tank/platform/qt6/item.ui | 167 ++ python/tank/platform/qt6/pencil.png | Bin 0 -> 621 bytes python/tank/platform/qt6/reload_256.png | Bin 0 -> 12316 bytes python/tank/platform/qt6/resources.qrc | 15 + python/tank/platform/qt6/resources_rc.py | 1968 +++++++++++++++++ python/tank/platform/qt6/sg_logo_80px.png | Bin 0 -> 1579 bytes python/tank/platform/qt6/tank_dialog.ui | 708 ++++++ python/tank/platform/qt6/tank_logo.png | Bin 0 -> 888 bytes python/tank/platform/qt6/tankqdialog.py | 823 +++++++ python/tank/platform/qt6/toolkit_std_dark.css | 298 +++ python/tank/platform/qt6/ui_busy_dialog.py | 112 + python/tank/platform/qt6/ui_item.py | 123 ++ python/tank/platform/qt6/ui_tank_dialog.py | 423 ++++ .../tank/util/pyside2_as_pyside6_patcher.py | 2 +- python/tank/util/qt_importer.py | 8 +- 37 files changed, 4937 insertions(+), 16 deletions(-) create mode 100644 python/tank/platform/qt6/arrow.png create mode 100644 python/tank/platform/qt6/arrow_flipped.png create mode 100644 python/tank/platform/qt6/arrow_flipped_hover.png create mode 100644 python/tank/platform/qt6/arrow_flipped_pressed.png create mode 100644 python/tank/platform/qt6/arrow_hover.png create mode 100644 python/tank/platform/qt6/arrow_pressed.png create mode 100644 python/tank/platform/qt6/book_256.png create mode 100644 python/tank/platform/qt6/busy_dialog.py create mode 100644 python/tank/platform/qt6/busy_dialog.ui create mode 100644 python/tank/platform/qt6/config_item.py create mode 100644 python/tank/platform/qt6/default_app_icon_256.png create mode 100644 python/tank/platform/qt6/folder_256.png create mode 100644 python/tank/platform/qt6/fonts/OpenSans/OpenSans-Bold.ttf create mode 100644 python/tank/platform/qt6/fonts/OpenSans/OpenSans-CondLight.ttf create mode 100644 python/tank/platform/qt6/fonts/OpenSans/OpenSans-Italic.ttf create mode 100644 python/tank/platform/qt6/fonts/OpenSans/OpenSans-Light.ttf create mode 100644 python/tank/platform/qt6/fonts/OpenSans/OpenSans-Regular.ttf create mode 100644 python/tank/platform/qt6/gradient.png create mode 100644 python/tank/platform/qt6/item.ui create mode 100644 python/tank/platform/qt6/pencil.png create mode 100644 python/tank/platform/qt6/reload_256.png create mode 100644 python/tank/platform/qt6/resources.qrc create mode 100644 python/tank/platform/qt6/resources_rc.py create mode 100644 python/tank/platform/qt6/sg_logo_80px.png create mode 100644 python/tank/platform/qt6/tank_dialog.ui create mode 100644 python/tank/platform/qt6/tank_logo.png create mode 100644 python/tank/platform/qt6/tankqdialog.py create mode 100644 python/tank/platform/qt6/toolkit_std_dark.css create mode 100644 python/tank/platform/qt6/ui_busy_dialog.py create mode 100644 python/tank/platform/qt6/ui_item.py create mode 100644 python/tank/platform/qt6/ui_tank_dialog.py diff --git a/python/tank/authentication/ui/qt_abstraction.py b/python/tank/authentication/ui/qt_abstraction.py index 6efefcf9a8..7e2f3b81eb 100644 --- a/python/tank/authentication/ui/qt_abstraction.py +++ b/python/tank/authentication/ui/qt_abstraction.py @@ -14,7 +14,7 @@ from ...util.qt_importer import QtImporter -_importer = QtImporter() +_importer = QtImporter(interface_version_requested=QtImporter.QT6) QtCore = _importer.QtCore QtGui = _importer.QtGui QtNetwork = _importer.QtNetwork diff --git a/python/tank/authentication/ui/recent_box.py b/python/tank/authentication/ui/recent_box.py index 3b89f9b526..c7e1735e8d 100644 --- a/python/tank/authentication/ui/recent_box.py +++ b/python/tank/authentication/ui/recent_box.py @@ -46,7 +46,9 @@ def __init__(self, parent): # We'll use a completer that shows all results and we'll do the matching ourselves, as the completion # engine can only work from the beginning of a string... self._completer = QtWidgets.QCompleter(self) - self._completer.setCompletionMode(QtWidgets.QCompleter.UnfilteredPopupCompletion) + self._completer.setCompletionMode( + QtWidgets.QCompleter.UnfilteredPopupCompletion + ) # We'll do our own filtering. self._filter_model = CompletionFilterProxy(self) diff --git a/python/tank/bootstrap/async_bootstrap.py b/python/tank/bootstrap/async_bootstrap.py index 8cbe39db6d..b1fbc45f7f 100644 --- a/python/tank/bootstrap/async_bootstrap.py +++ b/python/tank/bootstrap/async_bootstrap.py @@ -11,7 +11,7 @@ # Import Qt without having to worry about the version to use. from ..util.qt_importer import QtImporter -importer = QtImporter() +importer = QtImporter(interface_version_requested=QtImporter.QT6) QtCore = importer.QtCore QtWidgets = importer.QtWidgets diff --git a/python/tank/platform/engine.py b/python/tank/platform/engine.py index 6b5154c0d2..f5c4123658 100644 --- a/python/tank/platform/engine.py +++ b/python/tank/platform/engine.py @@ -182,11 +182,17 @@ def __init__(self, tk, context, engine_instance_name, env): self.__has_qt5 = len(qt5_base) > 0 for name, value in qt5_base.items(): setattr(qt5, name, value) + qt_widgets = qt5_base.get("QtWidgets") + if qt_widgets: + setattr(qt5, "TankDialogBase", qt_widgets.QDialog) qt6_base = self.__define_qt6_base() self.__has_qt6 = len(qt6_base) > 0 for name, value in qt6_base.items(): setattr(qt6, name, value) + qt_widgets = qt6_base.get("QtWidgets") + if qt_widgets: + setattr(qt6, "TankDialogBase", qt_widgets.QDialog) # Update the authentication module to use the engine's Qt. # @todo: can this import be untangled? Code references internal part of the auth module @@ -415,8 +421,8 @@ def __show_busy(self, title, details): if self.has_ui: # we cannot import QT until here as non-ui engines don't have QT defined. try: - from .qt.busy_dialog import BusyDialog - from .qt import QtGui, QtCore + from .qt6.busy_dialog import BusyDialog + from .qt6 import QtGui, QtCore except: # QT import failed. This may be because someone has upgraded the core @@ -1164,7 +1170,7 @@ def execute_in_main_thread(self, func, *args, **kwargs): for the background thread to finish, Qt's event loop won't be able to process the request to execute in the main thread:: - >>> from sgtk.platform.qt import QtWidgets + >>> from sgtk.platform.qt6 import QtWidgets >>> engine.execute_in_main_thread(QtWidgets.QMessageBox.information, None, "Hello", "Hello from the main thread!") .. note:: This currently only works if Qt is available, otherwise it just @@ -1213,7 +1219,7 @@ def _execute_in_main_thread(self, invoker_id, func, *args, **kwargs): self._invoker if invoker_id == self._SYNC_INVOKER else self._async_invoker ) if invoker: - from .qt6 import QtGui, QtCore, QtWidgets + from .qt6 import QtCore, QtWidgets if ( QtWidgets.QApplication.instance() @@ -1647,7 +1653,7 @@ def _create_dialog(self, title, bundle, widget, parent): :param widget: A QWidget instance to be embedded in the newly created dialog. :type widget: :class:`PySide.QtWidgets.QWidget` """ - from .qt import tankqdialog + from .qt6 import tankqdialog # TankQDialog uses the bundled core font. Make sure they are loaded # since know we have a QApplication at this point. @@ -1684,7 +1690,8 @@ def _create_widget(self, widget_class, *args, **kwargs): Additional parameters specified will be passed through to the widget_class constructor. """ - from .qt import tankqdialog + from .qt6 import tankqdialog + # from qt6 import tankqdialog # construct the widget object try: @@ -2145,7 +2152,7 @@ def _define_qt_base(self): """ base = {"qt_core": None, "qt_gui": None, "dialog_base": None} try: - importer = QtImporter(interface_version_requested=QtImporter.QT4) + importer = QtImporter() base["qt_core"] = importer.QtCore base["qt_gui"] = importer.QtGui if importer.QtGui: @@ -2185,7 +2192,7 @@ def __define_qt6_base(self): :returns: A dictionary with all the modules, __version__ and __name__. """ - return QtImporter().base + return QtImporter(interface_version_requested=QtImporter.QT6).base def _initialize_dark_look_and_feel(self): """ diff --git a/python/tank/platform/qt6/arrow.png b/python/tank/platform/qt6/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..0f3a92c0979c120e0ace367d4b121a0f8800bd6d GIT binary patch literal 950 zcmeAS@N?(olHy`uVBq!ia0vp^@<6Q0!2%=&+O>_%)r1c48n{Iv*t(u1=&kHeO=ifvhwg47$n!PEdgp;>FMGa;&J@yG+z(VK#8{b z@8=Zf3srU>@#x~3(xjlFBGARL#EElNZ-9W~>LxMWC|4Jjt(lP*R;4O5O;fnK=!7rJ zx;rk80+K=8z7rgF-?Mz4ZTLLy`M*g!I?@acn9qNo_x<;5!BpGnk>Y>*3&Vdqu}t`} zV1e#r<*43uhnO_DGCm7P#k0%*kTHq!6K1o1_uYLEv*AFIWi#(6Bk)C^e za)8po$DC5LRtwASc1}Mt?Z~aS%;No}6OKNWJg!+w;ZyDMPMx{v6#L1$Vjj zqY9CKv)(Hnov+W+uX0*b&ZqkP*@G|cCCpl}dRfM;^!4Ix$NvZ|QMBT_W82sJS0VD` ztthR`)vunMU;bFzl_iif&Het{!-9FUc5V7Tp{;Vefzdn>N7e<)|6j9P;QH{=qts=2 z=fh^}mrslTxiR8?={i3Be!l6ue*X#$2n_sl<;CRpQ#sd!_dkv*EZ_P3gr`!@-!DfV zuV=A&DtjSd@0#3o@7~IOa0>~!(&C>lSEr!JSYy0rPcl!@+TGu`hzAOoCVuqU}ayMZggl~z-zniE` zdw+>8FxEb*fA02!KcBW&CwK2R-f->Q?^nA7c*LCf%p)wyPnGJPwW<1DDA~WfMcwi0 z^{mv7CJo(*ERG*pZ050;WL`8|rKHiw((NX}qDBbbnpLlD#U5cHRUxgrMG{3z5k!>59a=Jnv$kxw>bdQv1*BHL`h0wNvc(HQ7VvP zFfuSS*EKNJH8ct_G_o?WurjgKH88O3)jA literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/arrow_flipped.png b/python/tank/platform/qt6/arrow_flipped.png new file mode 100644 index 0000000000000000000000000000000000000000..2107eaef57f4279a6e27f98d8ff311ee1837f568 GIT binary patch literal 938 zcmeAS@N?(olHy`uVBq!ia0vp^@<6Q0!2%=&+O>_%)r1c48n{Iv*t(u1=&kHeO=jKu@8jdCyG%V1t%Wk|@pfe$1qeKp0 z8HZ+9SIQsX2a_7TBi`)#)*NlU>vHF6^Y-N)f;>^l^Np=Ga&U60dZ~D89sjNu!+6Yp z|1EnLsraiGJQlx86403@r0UgutMA+P^*(EjSFT<2PVcy)*h{^plLu2zxtHlgJZ5oO zySlFSaj_z|oA{AU4_~NP?KZPotdzCq(+e}9lI1(!37PcO%D;=;cT$q~_*HiEbNgHt zmvXfTt9VV5iP~QlomKOo?7Q2!{RiCdMQ+Y(X+A0wv3243NKsK1`?Bl|o1$aeZ*L zv>+b1gosQ<<-&|^OXQQ?Je5w3B8aMh5{(C!jr#_3I zX43Zx8_lbi562(x->D?m@8#p-sW`lHQhVx z7rN4~#=cy2?isF-Fr9Tj7yo==qT||FVsC)1%A0y7EV1BMbVZy}^y4U>GrLlkeEqBU)$aQK zU621g`MJKHzm74?&P+}^R!0|@c2!GUBT7;dOH!?pi&B9UgOP!eiLQZ}uAxzgk+GG5 sg_VJ^wt<0_fx+gQN2gIV004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00002 zVoOIv0RM-N%)bBt010qNS#tmY3ljhU3ljkVnw%H_000McNliru=mrcI2q|D!-o^j` z1HDN^K~zY`<(55&oJAPN|Iafs@4K7ZkGq%;6QhBM8WWPj>(b;33xl?Mh+?IPm4es^ z!e%=g5fm)~eiWj(S4%86g@Q#4iIB#4ByxD(UCz7Q*Y5ky$KN7c*qFT_q!FB{2Ilwt zpLw2{KO@A041FN_KaI<@f$7^9eJ)A`J~nscsnReQ~LOj|lbxNs!gm5K3^Wl|nE={CX0(Zna z+SZ<3vb$WvMgzN{6=QwhR!<PIC;>fL&##AS0A^)YTB9mIqf2^1t#etP`>Ix(ujwR}N~Lgll~pw0?&|yy z-q96>xnb3XT&q&q^P)LTg+M4w;mbNJtkDx_-8u14^2g-31f6#cS7yj}KWCob4lc1g zw|u#TqRxwWGL2MkVNut$ZVP9!@l)<4s0dUt6@dtlw!U7uY$-^r#|_ld6sLHPdPjjn=&RG_Yd3cx{J1OQ7iG7*U=iX=hf>i6+GAxVHz8+*e&>`<6Z(-bE_Yqa_lYiWTtI&aF=Z^Mrul91G~#+%u} z4C5%($+-50p6n1ljeY5vki`uj%YOOSXS@QELJ;+_cPa;0Od-)^0<=e|chfq5Nx#S3 zhq6+{t%Xnc8`{IaC?|>N~g%KjoQNgwi*Q)W-m~RzHwGa9f{vLZw2$$*jzb zN*?H@86F8Id?-y3`>8KW%kRrF5=de$`7A~HyZUa<4zF+=KOo})Y;g-YJqMeWOXjFF zaC7rRzpxaOUrUe0XYXTH(lIXxT(JGjxQbn|<6ynNhLDxX2Y<-V#S3ZMtnPJMw&OZy z!y~?5%3!mf^;ZT9H>-V9BrjnjT^hRaqm7yu($#dxSIe!^6&Rq{JGfaE<-FHmVk?4e z-VaARA$2enZuwt*z1%a%1}p}?<-bX1!VEgVD7*Ma079biuQ21 zc)uxUl}hcJuAx%T>h>krp7KBb9{de`%k|cq004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00002 zVoOIv0RM-N%)bBt010qNS#tmY3ljhU3ljkVnw%H_000McNliru=mrcI2q|D!-o^j` z1J_AJK~zY`<(5rooK+Nt-*bPyZzjo1I;Cl8)1NeyAT2HZ0YMS%!c9Pz6F0gL5fogg z;CeD!S5m=6)rAEWCW6au)1qh>rP$U8TBkpxrX+1AnVIDKx%ZyqqHUPkNf5db{O;y1 z?sMLA-*b8SNboeDdMf%qjnkBdo;9-u8X9^^gZ?c}bpu`1XAR7fowe7@jBWs`u6j#s zfKO@Yt@?%;wl1=E$Xc7*qPb@3x<>ULoTM+@pilMl+M8I-n_(KliY##@EciG4X|8aU zAsga#Ra3KO$qd-C2^yxW3Q(aGR{gT?xNUyY*QLe}&YJ#k+dgCN#bP-s6`p-9Iu_;^ zzr1mK2k+E7!Yn~HYM!9aY8Q>zc03#>F$&Lp7#(FO@y+w^Z%>=~o*eE(Kwov5)rl_J zl4-}qLboswA9=?dXD9*8_<^mL7mFTfQj@CvoS#uk>aa4_Mse(ls(A4A!V98Av0~!Y z>q!x1*vBT{gV$9{LEkjW`dAgIaOBm&Nl_q>5U_kE_5~RdCqQ-m#y!m+q(kJ@f-T!T zLVW1O;i>iFa{tVgpK>Ua@WNR(CkM@K)R7z79j zEq?#|1ucMP%Uw9x_t>P@@tT}?xEmay0RRvJkgwhW03#wnf&jowf9E>_3<>bd<&`h+ zKw1#(e{<&^15ZSnGyyj^7@Pp}$e6qezn*V5NFV|T3S)2Y*k_UHRXt3WfNBq}r`NY* zbc@=$tVC$dmla*Xaca zgam@(-VescS~{bkBLZsu?%v>zT;W?Gc0Mm;d3xz{e-%s&A)$d?@5WG622k1{ZR9hV z44Kc}aK;Hz*PT1X*B|PO+O=!2Ab_PN%}_ra4W5y4f7tn4XCdJvZOwfwcfb$`xBgm* zIEZ^}?mgB4z#;sINOodP))0%6cET68955AGUi{?V?WMr3&3nVkn}ikB^(zGHO%iEa zFfFqM1Eu>Nc2UmGyWMU+oa0Af^<>gYEp(*mM_rOrx|&2uD{bD5*L22?e3vivy!ie> zE$4WSce`S~mfH*|vXS&|p5+Tpc^#?&Qj^Va)EHdHNx$O$aHV`(8l{q@uIj$!Nk4-+ z&@V3jQ9wX*c!^KoA~gwU3HTHsbEx&&C7UgpR-!~TbVG|0HLV^#g7roJ05UK#G%YYTEip1wGBY|bI65#hD=;uRFfg-x z;>!R403~!qSaf7zbY(hiZ)9m^c>ppnGBhnPHZ3tSR5CL004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00002 zVoOIv0RM-N%)bBt010qNS#tmY3ljhU3ljkVnw%H_000McNliru;ROr~Ffe0(t#kkY z1Gq^94RK|QEmc8u)3*^6*XcrBC_*-(JHcJN zE=5E^K}uZ-B7JMAyVgxzr9$fuA_kSzHcd%P@?P%G+?mfsYLaJOiqMVV%w`t%eCM2* zbH5oX?q|q-q5orWrUHSqP1`^qseu0$&Q!n!g69kj%%Xvuk<{QGCHBEn9w+#Qg*_V8 z?W{$#82@UI3nVq^Att$da0J1Nc1V`ZuqkAOn@B?ByCL?iDh0wqxCeVmux-2vb}CBZ zv3RwH1T~io#96!?9hWnGE$kC@nWs4@Y9;bXR-YUju9fvhU2FCDMl@@iOwGXpd*Wr$ z+>DIPYs2xtiN>28)8ESvSC%7Z%B&bE9&{_!QkV`|jcda|ZEtJCdkz z8sngn)Mo9`?jpQJrbdG<=`%XhpM6V#O$05_Ij@^aPzAzACSNlHd1B)tde}TB%^v=} zg9A{i@re%m{EzN?*xKO-d2-~{dTipss5DpYZMo1-dznfr|0al&*`iJS(vG|if~OeD1-jE_CeJh%(DDQu~ud7 zdEfHA|NCxeQ%>>5GF&I$McdJ!5UbU*UPqWAC9$*I>I$agPR#*J%{;Xc`I5757 zr$6X?NcHI|cPGlIxK&6Vira3oJRIC3enC?#c;H)&>DXaiBi+!Mum<=Ghu!1aJ2_|6 zs8MstUb1TDj8bv<004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00002 zVoOIv0RM-N%)bBt010qNS#tmY3ljhU3ljkVnw%H_000McNliru;ROr~Ffe0(t#kkY z1Jy}HK~zY`fW(H7Dit9HnBtKkV@7?>|yCcEV41Ox~e+*6mgTWP5QDAVupnnUefI(#fT~|<03krON1BEAS(E<-> zoIoFF=n*faM>V_!e?^ZoI8Z^CBKPr#C!48sN|Gsm-5b>z z3e?FBj>YqW+VGSPlX-t^YUo4GnfuFMtZsQmH5*ZXbk=Oe%dX_mW>fXa<4J{g_&l?h z({bXt&(JT-r}|&2FNlelz^KbGe7T8;-~2@1)v)pf6qXD%ZP5+b7fsnN|_&S^A6iIZh{O$ySHeP4h*IEnDbHK_}Mgu(jx zi|_f#Frod(JFi~gOdJ0Zdq4#uj@j3J>QP;O&%O*_hzQVU^XctHzVpLcb0s$g9|R&Kp3R!AC1X{bu~n(Mg6kl@0>H?wq;0|)Y^|<*g%Csl z3H41+yzZ3f1fM%}Xs46EAb=GsB3fc>JbdsCnnFS#Ap7o%lfVH1nHKZ3z)OeOkRqa( z03dw^{@>1$daZi6ZUI4O_Eqwz7lthZmd0KgdW(bvfJn6d`Ga-iQf>`E`DE?^&C>w` z`-%x5ntXNOZ4vYV#xMAM3Mcd`R2Q*A0MBD_E_j78HC7NHn z9@TYdnx~`nxX-*{16TaVo7N(}D0A}2W;kay*OoqYDnzg2m~1Vsn!&gj2OXMaOQ)^y z4$ttndRXtMLC(?vcI8|gIUWCK-?!5;YjI*6yH4)Pj0@ya9GZ!y7i~ryy68`Hy4fAv zCcZ2I$`-gSJ{dZolz6f$1-A{@*>3N+v<|JZh-&@+RI@4{;TcF z0Jf7-l>z`7lCT~vP+y+utrRs?0f2zl002A^0Jwjdg6{zU-aG)nfjIymngsxmx#zY0 zC-(9J%~DxG7J&TUQP^3Y_A-Ovu4v#10B|w>?*#glO8UHf4p5Sn()RoF?`gP>c{H0P z_DO;&NO*T8knyivhabu?6aTO_>5@T>GrLo=hO~_j27UkoaBe`ZxGAOZSWX7(320cN z3o7|U4>7#1)H9y_LJuXRhqDrEbCzl*r+ylnD5?~`5bt7$ewWv~dNk9ACdBV6d9y+# zM4Qcu1hE{8NGv|8O7cHo>)RJaksAL0%m3R0Gm+nQZ2;uQ8JQMIWKQN?JS#%lm;SDb ztEanPR(L{1TTJLGJK)*nllQ?%@U;HkLTrYbzy6m8W8{P{VEtWVT*&z_OWKKK;PsoC zuZa8kmfNJ~y`*X7Apuwa6JiT6;4=Rt2>qt$B;=;u)22;Xge(AR2=3{ha>+?i`#~CV z5qDD1ClECH)ShwS()y-l&V~Tw7B~B{rqGDJw>uNZp}X%8y(|Sm(wUi=m$}_{xnRIa z=MAlisp<6QP}2VWeU8NKItrj?ZjNMiWo62>rT8gCa%9(C*m|L|(h~6XFei5>^$f#( zNdOz*@{o!b<9oEUH1zmefhy$j7IA9!yiE~$5{SU6qq8c@nv{HuK_-Vhw1nm!w2=Y| z(+L+A79#N^dhX^(fIZ{mIGq7kurcQAyWN7#;F`N{wXF`6uFG$Cp8gJCg}f~5NP#Yx zxbA5kT@pGY5adHTI%?BO_&56mYc-4%tLMKzxCzTohio;93bmOhe0ireAtyH>>LG_l z-F010|GITT|Fv}cT;KlQ9Ga(%JjzPsjig;1&^EXyABUV-}7r43HLhjQF zI_@Q3_Ovea-Y&HH2Ctm5xq34Xizh}EA8=O69b9pzfZU_gnJfrxx^EA?agz+$y?aOY zR2#z^4X51;ynF{|_QcDodYW^6xW9TvJTDiRKCdT*)<2aaTSET;_dc9|60o7T1pMFM z`LiJSViJOQ;_AZcc@hc;sl+2=;FXF8xO=fgBj;PXn7i)A-9Y5u@2{=|gZGuq`d&u1 zQdz{!`zFKxW&~tq9UGS*rRmzR;c@xj0|OU3M@P=gkyDx@j-94;Lb=!Zb7lUMeDNU& zDg7SG9?*-O!E#zf??hd!Cm4${@m(}s?da<2c)TqpDd_6fau{AIdHElS0apB1p znQUjcU^n?WpRH7PtRvw1XelsP^`RPZV{LA7caIz6qW&hbY5uyse=bpky0*5~RU+`| z;QoAjE&_j9`ku;xTOmV&Cr3TRd4$9%8K1WAC|#@_Ej#4 zi%)eyQO}Q)$h?r-emYP;fDr%^k(mR`BY%fp#>^p*525w&bH28)Swb3 z?v!&+!?2~rcJ)rW@RjAbuD0ffW=%(%MZ$<|PV+lZ-QupUVH5m z$2SkI-OJr;CwO(&F{|avtJh@hhq-j7U2S*!-S>K-S9Qo12jE*KsN0`@~Hq>p7h*^91gwS-hC0Xdeb_D4y>~-@)jW7q0sZ8RnM@h3IF{ZRdf^S z;H4Tgn|6>qtJcb@txKqk-z0R#`$^TUjmqhE`uZvUpU=&Egm>Nj@#+56_&AH?)81~u z^LeIZ>wO)vJ2dDjGxUC_JxQVuIAOR5y!~^6OzJx8#!o)X?Cy9(2AywaB6ltd%#h%o zasU^QS_2Yw5{&ovobZyx&OC^l2-1xkzP?a|-TfYjkM@deq3i3tTK4|sRb6QQeOLJn z;zd9tf??z$fj)=(aSStK5A~;;}mSgS=~@S z-=n`tUVHM}mj*XR+|{-Dx?b|=di8lAr2Appq8&Nx+WoM9c&HcJ6de5IcC);yAbEer zE%8)`9O(9YDxQ=$41L_B;|Dw*pFDGQJ{-6IJ$dTvZn?j1=?*??;tsugY8*}HmRPZ)qv{gf2TYyMp^q1#{?Bf0NCa{x zpWCggvwiKPW#J+7!Q`fKb$g@ENAICK=6~9lVcm0IlX6o|!uq~v{A*cM){0S^> zSNa#FEX-*Y!az(AwuA{ven}bQpxjd69(kND&)p0!8#r)ftOx*9f`G!1tnEWihtgAC8q{`TZ zd^$ma->W|lOZp>Qx~`kLpI-F$DpX(SYN2V~j6`!*7W`IM-|B0N_|@QWS%1+BK4Dn_ zoXF?Vfa{|xROHLOhBx6%snV4h*+!{;uhPLi^MYt=*1GATL^eP?IeVZ8%W*td{sA-*>%b6xSS!BOLu`6vVPxjMt@Lo$r5_b zQZDARoX(PeI%ZVLJpvMLcDHfO*;gga&od-d3sDA~zeC&=9E84zK+Vnz6fdY3ge*#g zK0gL^x^n$#HlebrY@5$5lX%eJxRcd8z~Em1Gbl|*;h#&x{N)QhK?Mmr`|DB0DjL}T{GIeKDqL9Af6S)AZ6i+xoXmj(%gs#%xt*tP0`@) zwTt7%&|I$`1L6z5Z4?|`#~>HDB_AGgJ3JQtKhANcWU{(;lR9^1a=r{-1>lp4B2^5*2WR*7>i;+5C<1 zQ$kwl81@aG`Di`$8^~xzEBX|LQ(b%ihK<|!C>`>2XaSii`D};aQ8x?vAz?%{bM=#e z$iiZ&?~=6aqygcxXy&`<);@{X{%rS!Hc7K9$#$uQm`B8M_FqOXnjN%#{vEX;fzMCG-$P9~$QH?3 z6x*Xhk8k`I`xO+w7axibNO_1{SqiVQu}UDq%%H$7{r40^H)4?MztdO{)s+WA0EiQ3c5Ta(tAZNTAhS#G=jSjWC3y>F~A*VQlp*NC|w{(wB$hm`6 zUxdqYvrg3<43KR00)lidZ*vt?b@pMSl$t`YipHyer-az~pDXq?v`Wkq*%buR0-F0c z1aD>afyrP^=T;kAhlJi9j~eI zTN3h7oY_1QAN0kbi7u~Z9`THa?3Jt!Jw-gB7knRgd^lQ~K~CHa42050{V=zsX+ZaJ zsIN-53qa$wv#|v;$jc1Ll`8>$(l6>`A$ouQRLT#^83PM*{L+u8J@nWUJ-VhzXiyVN z<{%5p!?pxP#BOl14#}&~bCj%C&f!y5n(C;(*!8o}XUXS&*g?2Vx z-LIB8e1heyFTHbkp{J0s`LI z+rHL#9XBRP5%> z_X!o1u{ZfVD2=GG`o>~yx7UuVwaaZGIK$j}^If8cV>)i_xxouG&ghIJb;Ntl?TEvw zT>ggkCGX{@HEN%C?W-rhy=ksiyAc1{Ll89gwTI&&?L*s#h&@x&kml~zeN}{Sb0s^3 zp{VKGAUQQIy0MwrMU|f3wfo}9{b#e)ybJY7+Rg`%B(gQzzN0&Zv}blOMZ0mdE@*py zX{P){{CT7Mc>($KZ~VCcVp0(w@A+aAt)>m9k9R0DD44*sk^$%^Vj<|=7vtSgFN}_k z%+AhU7f076qRfQm`+Q*Or4z$84!?KplD-2ctun)8scw#je5e}R;O3iparNA4(owN)bByeiq)5v%V& zG8|ZbHOl6bx8cB4a4HB}3foX=z)V-OV?kgV|L8-HbB$K1%(KkDSQ9jA@}(tmdR%E+ z*6;K;>{tL>G5YYdP0efmuS)y`?Lk??PF^x&Y7hK)oKgZmaAkY1px^}h-^7i1Xq7F!qm!%4FZ?CY6YqnimZyyyn(RM_{X2ui3NF> zIqW#(sKj-&zKMl`fZwLT_Tk#eJ z(r_OININ~8XsY*rQ(fzh0J+V&em43RY#ba2HZRl6+wFcmz%+z;<@e5A35Hx2(@Dij z_H&1v#jBfk1r^EZJi!m|cL5SIuF9o{u;)PtoLGmOEbrG-NF89x$LU39#P+f02l+xa ztIW0$51oj{&{OnKsCq$H#HuTL`4Tv%IjUBmgjlUn{}3J0dx#>%qzlkhJ8S(cgl5fY zwBQg80Dj^54i;AF7LgR8^8$avb&DvJ{a8AsqNz1l_)FcP@aVs?U)G;Pdx&16mfrJQ zq@U&=@vLW)(?_5B#CzxAQ3wiNY)lm^;58@I9>!pzsWeyz;WAFgiJ#Qjfq2r9*KxH{ zKQvyWMhmchq6fr+!J{2%dBrDVp_Kd~^{M1*bVNNbKE7L>n}!3bmd=~f_p7V`1~gx0 zh!G*-r*wRGT7q9F1)#NQf{#Wu1LIdDre<9qFpriRckOkZAVu|()TamA9M8`;ND>oM zmxtWkn!BUMNuA~9r0?^)?j7Xr5yZrKE(0-zEf&D^kWlFTz-T5n20Y;EK#Mt2Lr7@h zn^325-GZ=WH~yiHa+MAiL*5X*VxcP~EAta^j;g4T)W@Z&D1f&Ar@uB*AeGXaXoEtl z_`gXy->bdC&eXe;*(AB;FjXa^fSG)~<7nx)(zh8uAW|GeBAMCX9$9m{F{;t}l%@^g zBqG;5-EA8=<0Os$G$}^}T?$l^9AVbdUY=knh{)SJ5noixe-S*8zMn<{CW!wQye*Uj zF$g|0^t8o@5NHhBUyKz%l-_T@?_{O_6gmG#HH=S2kEF6PI+;*5vev|+)6}ZdREaI} z_@QgbwS_DgQO7InF7<#udRK!P)*_CD&t95}xZg~YoHuDn%d9g?)y&B)D{6M>b$;<8 z@7IbBGss80==CK}#@2MG?8))dFF^b_n@NP;BBowhwY!PF_I|JJJEn-f)K3@BQ+g?| zu0rlcvn3zJo6J0+4eQDVXnD3nM=bYXrDOA=+1u1o92zt5gtvXC=?dHZ&C$g``s)UnT`qd^!LA0gtdlkrc_k)Iy{|2 znbySOhS$`jx=)ROUjf>OSGK_~(J+VA?^ITJ_Bm)S%hHM%$^7k6^lsOI7hFDS$0j9E z^~d@fZ?gg(PH&e=fzp*0TyqY7b zwK}A)2+@DpX|#}RsK2#L|7I<=?>}tL4XVV{$6@uKgg|MC;{InlD=BAay=%gKpib#; z0nSKz3@DXVPVHgNOXNV9mVmr^hcWSz=W+^EXnjA1X}_!soO02r$tm-n)}Es@pY={G zb2#sfIQ!AfIU~e*>7wU0y8AWuBejtz-gdme)B8Bdgz538vtE*%aE$!<%~NWY>HX$5 z)iFbBaDZ*HXuMNGvKIXX?X;e& zNA^a+p$x!ks|)y^e$_@g*VyLzcFrQIt@gh;N+#Bev+#mXJzZ(p=dwVMeI6N?7FC2b z9ff}RhqMkcgXczb{R*ieQ?W$T&-OZL9qNGc*P&nH`a8sTSGH6PaY;V_^k1Qn_kW?= z`ev8ad~w`Up(#4g*5ry_*5Dk&HYnUJsUIqx+=$O8@t@(K2qa4l1&s_IJC%z&|Gt{> z0hQ`#ynz1e7p&9_L6e*`2zBIu(r}jLHC0POly(;lGin~ZL=yyE75HcMO0;EOHyAgu{4C`2g(T98NU^ZZKvWpiIT|H!r!?O;k5{>j>KCkgBdip+EPj(^0N_<1_AS zxA~)1LxyHq*if23c6h-u#I6GSYJTnP+I_P&V){jdM?w~>c9=5ulWXq&6klDBwO5b& z0>%r0!+o)LLe9leUPn7CLA=&LtT^yq(7Hz)+HhXNWKqeP!!G&{GQUOYZE!r1m!VU& zE{9?T6MTfc@wn}2B&+7_AQ%g3c?9bw2{6J6(;UPjfy}_~(j3KW|#kTNPrqb z%ZIk@?UhZ|P0QXE>^zV#K6_;f-@l3bMQ`A2Iy4k?v@2iP6-)oT#M{mSIzt{yO!8|g zE9JEo><=)RWYha(!3=qbbn?as5_MlzrTOgs@%H_jY7bia>?VH`uLU zB^v-@Ckg+X|EMOCwyfsjQoGA&pVMpsLYr2>QXRX*J&&iI@tO9n1Xhnna}0U*uQ zaWE%-)dbgig#Z!aJHeam#k5C+}*UxQU*w6<>;Cso>5WmeI7xE+$1!h}6D=R|KS zJwySFIzoZs$!G@Y$GQ5{3C?ONZnTU=(L^BmjN*Bi@psS>Tu{>LEwMEw2eT7WRN2t<^@zfAX^t-=|t7UHj zT@DNkED`;fvK9JeH)a3#!rXj)84ai<1nrvydp)Qjj1jYdS=&Y_9UTprKQ_I?o!9sw zr^s&?JYwD1{cG)t-eZ}e@+JBAUw-8dWu^+Dw|D2sCu)9O`H&|;7`2Oi3LWTgWZUL0 z6Z;fqZG)E1W7?4i`C$%x;YtaAB(feH_*(A@+L)vj$&aVnV@Lc$ioc)=ZA6;l&4gKG z*CQhh;IpDBuwEbnr)Iu}IGo+q6)(nh?j|@Yh?0i{X?4t$7oD-kFR!<^U=2m;~Ke1$+@I4ZQ)5r2FCVeE_rN_C;PrYPFJ5Ba*V4?4^DIK)bJ|4mmk#3gOrPYLLrq?8GDjOYHm%ZXCCVdNSc z7C2PtDo&3u7n6wf%w?ph>_^Mg%Bc@xuUR0M$|i(~rHrT$y*?w*RF=X7hEwyvr_{AR zTTbuv8-jq!7B5OErN9y5408Ndrsj{KUylW++~g2tU@Db1nfscH23ACKwEFjlTx)|f zB7`~kzyHE8;EVr!{_dR1v(?NU9)7H>?6YkQ)BWSErT;b6Q8y=>16Nq8Oi-O9qcvj^ z`7uyzk75wMhpUq1bm?VwpKQYQOY>s>^~DL7T<+a;Ki0kxQHF+j^p8#M&Vgb9nbb2k z@WO{y&U7x&?jdg9tSw(+CfDz5t4E_mq1^O^D%@Sr7RoCcI)AUidZ_*4qD)`5n5!iG zOs;@K2?AoVjThbsz7vZYt!i9fll_l#sm5mNll1ai`(?BYiaN8-zRH^Y9b3Jehf()KkBBpacV6%!f+M{RLmZ(V;wiC#b(o1Yd1d$HF>M={| zRZCHOV&*`>FyP{1$1gtV1hDd>@Bt;{??&4)R7uVWTy;1a(LtOYB{B3sW|D(4`PJDi ztM3)H{7ncf_c7GM*6I^wJPV)-g_%te2HbgBS2Ezz-fF29AWU!F6s`R}YwZe$;z}PI z+oSrx(u=#=pN`v&BIs7D#B4E(v^urdgA0?8Gvbs{?r^%IKHb6Pr-U=+8b`O`T84o74SvdheHgRRVRj|r-TxN(8~hk;LwoCV&k=1@!w z;HSDv+hN-h5!trGGS4&EDn0_~?GQg_o$sBx@C*FT`^@x2c|E zFzlGOCfa($VnEyqjCs_YVU!L<-E<0?bw@b#+_pI+u0bGGQo zl&-%FiI(=IHtXkP%v#CV^hX7F9w&c|9F$U3x#Z$e>t9Hlh~uBGb=^X6Rz2i!KzZR7bj|IGKruehpf%+9dqV z_NkzUj>LZYAr6$$wqsz*X_H@`Wh!NIs(JCoua>u&%g`qy_(BR}egZ~1N14fDgWa~~ zuAG)`@&QmoJqA%&cn!{Bw|s>P&R6@lbPLw~L@iEYU$Qf`06Z;$NxO!S>Z~By4NOGp zhmU8r5;prgH^y0Y9y60Q%8)90|B|j~MBYSjX)plRk=SsGd85fdr7Rm~R>0#s@}0pt z+bQ0nE+Tn)0QI}fpC#J@XC-bDnE@*l5CJ&BPSAG1H*W&F<&iIuM3|wDpMybL0b47> z8Dp^E2-`>Ds}h^W0?D627p&t4)0GwD_=P$%%>{2^YFsVh9;2cbUL0W-Fu2DO@h{zi z5eRiiY^xOk>*lGj7qsS>Kf6Eq0O2ZlYw}u?Dj3_XfpVfjjyZ~_Xvi6?xM_^B?UD3& z#kF;a-y=X0t!!*wgemUa_&+yqIhG$*>GJ*zWa|Vczp#mXo5M=P_)g8w%h}YN@vga( z3mIPbqyu6VI?fd9!1j&CAk}>`JopD$!$thxqOxYB@Y=kGDsMS}eK#WR@UZ6S;khRF ziA{V~z&z6AHKr4cCHV`kkmhzZoJg%InQ??uFuteg98$3wUBcZd$E{glu(DpKomiYdP#lS{TRaK zjAD4=x?Z{&gRCvZtW($Bbnw-g(GI`Xw0mT)jgljsSqty!j{Cc;TdCMmi(a$~$=cN$ zP~pjw6kVw@1;ye`#Hp0V<}GF|I!<^vAJxw&pHlo`VTjww+PxTb?${Qzhcl42oV4eU7mbuyl9v!MCTtk|T`O1)O6$B>&;9#ZP zdiRj`h}e8rC8x6?9J;(Qu~*AhFBh_5POqPKx!Q^(^JH*;99Wqg=f$+Hz(LPZBa^I> z+qm0GwypmZKQG~kQ-T(}W{Qz@((gF@!#Jn|%iXW8gY20s{4c@Iepszs6^+TAP>84l zN)inQ<#n_EJ99u0wvJAbi&OQ2lVROL4m44-a<0uKS3Zj8zQ|)Ohvf8a1}O74+@$D6 z+#^)Oq{WE0Iv4e;)2xo%H^|?0P0XGJmE1;h35pplwA-lm8E5{5(Sa+BLh*q&gHB=P zzi)?~VF?N7s=20~=t#mhtYo&uoNX1ODQm+iR~AnpOYBPN=wkcD%KjJ~_OBJa$4DFg9MH+ypzf6O<*m|Kj_=gHbdQAxO$1 zp5{T&2agfP=Hg4f>d&T+44=nzmF&s+qf?x)pR;z&$=@>e4GbF155s#6SN3r2gtd{7eV^6rk40NAVy^FggmHWV)*sD1T=vDKBAR3VjVuB;lUr;A?DEEg7fnCjmq= zD9%Mega{a0&hmS<5E%WmLX@szh5C=@GsTb6M2z7I!C{VUbIL`pA7g2j99e|~pA?Q$ zhnyAoWU)~kwX-%@BK}6_{Fin&2HN2vA!BSNDR))0-1cPuh~>(%5V2%VZ#^2@`iq50 zSYL=*h|GoyI`zE9M=`IYktbr_4P$K*h{QJqkkftZp2hda()UsJvx-OrX|_Gvx*y5B zqT5!y)yfG(IqsjfTA=0PQB2gC`BLFT-G*}8qshkX+rFCD9O|yO?(z?nH7Y#l{?fx} zVa~Q?wI;o`GQRCgS?wlU_rAn>B*`}qUN32j>-W#|dGB&({D_=wd+7p0afuV;I77?T zORp%uC#in^HJgjZbG!BRJb91XQyAGDR(~3z={WN-G8r4 zJNC}8X&MUf_dcrR5;N(PIdAi!%4pr!3p!8Bzy4 zHAAB)DlnX$UJ)c6E|;{{4rs^$w^0A6Y!F#C?=&DVs+ye79p7wh#IjP^j_NTgzzoV| zL5V_uG`>_;8Xi`XB!5bUxxBUedPr%g)S}v$+?OT|=Sjk{o>4So8sB|8=VTRcyR#}y zbrJh+r%89oOT;~8OFVjeXxQ5D+%G?7K<^pp?D&3#Qf)LTYW^!p|GW(yg8h)zq;9%j+D&T52pPeDi7OXFeN)XDs696h82JK(koKJJ1Ih~ zhH@T$_nkq$#4hVUB2D72A8yl0p%Q!LGA<=hO=0j`L7DQi#Cl|RP(XFsP&=JvPl_~6 z`)Eu2DDU!w2<9CKfx!|a>OqT^PzrYetBT2H5=lcLsK+RaZ`T1btUQ#DrRL8w_1lJ! zFkJBjLH9r}<5O(X5@L!KJh8fQb<`(m0<}u4Y17sL z(d;TYhTTy(?S^}j0FQkIbp%wAGh7>zf?w}EMfFbq?ULx)U4!7NYsg!8ydf64zG%=W zHq?AinW6Bz^m6mpLl~TabNSC=mrbwZ7aq^YEBVW0uAX#$cHmS9qWA=F+PzNV>5&pp zzvir=)3hu^W6C6SNW?Iu1VNI*1q7ECCtuklvB>+Oy`2`%Z8}O@K^8c#JHKU|WhbwV z8{Hhg)+iO2u3UBu`1$lJA^SVdD3rY79ghieN^bL5xGWE?wzM6Qk9IBu?(}7toTQ^yv?)5!aCx>IHp2?0u#tW;&8zZurWaL#Jz(gN01Y8(^s0y+zmrHfgd^ z34d{tNJ_$R`__3leb4&@sK6VmYgedF)OHUHBJjT&iWr$U((E^*mYuwvaeyqXenvb) zHfFslpSk8k96(Xi;L=j7Cy?-Jj7^$az+89s-Ru&JXZnq%O`u+Lffg2#)V11v&2OVH zyKiL^1(cSr)wTq}?zShVes&sBdbX7q7~$Fa`MrVEh$Q=bvC(|J!ywi|&x9UXW`|31 zXQ>a+-g%`6uwKb9mqbZbxE`O0wbOC`Ms#7%jYha;8AkN&twJQ^xG=4(;=hF^Kq26_ zVZ30YhJlo;VBm>59uTA^5@^7qVVlt`#1Xv$NQOC83sKpd*d*?Zg_g4!8~YF!-*R2$ zN8Y@iAumhhQF*5-+O3pRYCvsD!E1!^o%v64Jd_v`@Y(9`{;&xt9H*%L??pNehx@cE z(eYJ!>7*9k#M^yd5BUa8lfV)#i%)se>s$&zlxZVsRox2b;Wm`IQ9plKv_d&-|OtZVcVVfT_5PgRX*do zvQhD_`CqlTAB^q%XfTJjfa{BqX6|?QkCtVvzv{K(K2NC#c*H9MDS}VdZA>g2W%I4zmaubdQkSL7_|ubc1BzhkhyN^tTGzpC`Fx@&1lE|5_HSaS>yH9QB7U zv5v257cP^o2nd2}Vkz$3_t+U^=bBwG!5QLr=6&l$Jn(6SVJwc)#ecY!%QVD*X+w)9 z$D$@$TAZ`>;(bZHPHJx0*)X6*g#Rs&0gc7~budzF`L}CJ2ey_rz!h$`JV~y5&&aP_ zj30Xf2BcYN;T(|F@-JE6aVF*P<}U2^fz>_;>v?Ik_1Ev64wosXV74*GfBDC%DntSZ z$u$YLE1_Rsq)~+aM@SBe`15OVhJ;r3TR(L*I@5)`1%fUw4%&?ih4i$^NGJST{mUrH z$rc5l7p$x-+f}EFtE^-%)owSe(S7ka6X!*bFtS8>Z>9EJ;P52{HfBRMn;P#Lj@2G3 zfXmDe^Fo5(S39(j4flZ-@l4-t-IA4VHT$;jrS4hmQftnhSQFI9-HEXh>>Q^Sj8Vo! z64?R%85h~K;hC`+g_#ee(gr^4$1%JhI!ZAS2J$S6>$r-ZLOZZ|!kH7mmCj}sfy6fEqahqVltl-K1pRDt znB8&iG_2910%#smR$XDjoE9+T5^vR{UHg_)C3!0v9h?+&PR-=vZv6_jdn)0P%aWf*Lq zwNBsvVH#Fs8_cJh9RIyO-SeEzWof^RtLovu8R5|CG4N4?x_(qIrDSzkryk42mlbnu zVsoHj*d=LSuMk-9ODnPDjk}kwB_Maj2|In?~FHH5HDc}Hi}G&d{bVdfuvGHb<3Hau<|L)?hFw14C>>n{6uh4VdC`_9i^ z^L0@V)O@Qe)U;m!pJcaN*(D9T&>|m;MT&kX=f1=?5h$$n@I{4fft2Y(g*Xp%L$S`f zN5S1inup~5D-!#(i)kgM?G+pEL|*5Pl34fM?QR?h#M?b3F26MslL(QNy&;;#+{-k9 z5||#&*nnY~{@(~AO44`nvhJZe;{FdJ!1aY)mc;ZS$Ss9r0HOb8Xz9SJK zkOL-9e(__-cpGF{U22qXmn(i@O#@+#jQ6v-mw1;F8wuCO^fuXWZj>_72~Yej9h-=6 zS(6U40%cs%llJ6tfpbt^|J^;?KNu9FJVsof)$kb{23QC+giAkx3 z{;HckCIt-O>>5I>^}Uo{)h`od(VV7i3(xh-{4B7@V+ziNVEtvtYwZUtZs5+hc@mdu z9cjYI=-fM_rwzRZe~peRdwY5oe}MG%5|Wc0;p`PwY~`DSL8u~FDzDcTse(ooC~_XlIzp}4#9sN_6m2~)w>laAj$dlmj%Ns9W+`cyr) zi~8mhbO)a{@3EC^(6HWHLUziN37kIt)msh*1JMIrfda6K3OGF;CRjoMP2+7Q{+sVn z_U6Bn3mqE`UOIO)Mg~Cj^%5mov@%|bUw^%}kHg0nKu!27;vext#TO+Y-J)yTwUPBp zWVbTi)}-~hM3DAHId(V8m3h2}|bP5v_yN#fwJWqZ}k@GW?PVjM9smxqG zjAWVC=u$c6W_(H=F!W%`7xF6&f=z4_8#>O9hY6zE_}$V7>?z&AWV;Nso`bG|ub>04?{t_axTEv2aK!p3Sp6Te^ zKA>hVzA+q_Ots+5gC>u%mvKBHSJlsAOx57wYIr2-)2HYVRpvmy+6o^rY!{`z&&XDm zFZjD4LAm1PO&(EZP+aLKRPgToD{1xosda$|M%&3kqrofv?Sc^$ zxn!4w7>g82btFyCx3JPdWzX_yix@?_z}?ZNC)AEi;J;z*Lux+JKz~iXf%i7AVhK1K z#bou_&R;)8{5PRiHL@l4sqpEkj)FdAT7nQ9?cE5FqaB(=A)hASe`LGqN!rJ!$x`Jb zBJm-^d@l^u>dk%pa-!OV@YO-wXwAU!EboV|gCcxK`>aDg%ui^yE>>4IHmWj4WtjKv zIKSjzQ(ZEY7OY<{%SQBBI&$7Olx4ftH0Ee-3UFrrk6d5n|1KACncvwsxe?ZTE^2I% zf?9h%V_1_NlZ_S7U=voOo`*?UOx*-mBk`9wJOmYl)u+|s=4AQDh0FnjDqB(t@t4NH zUXUTHfOlf$G&aCwA^s_Zy9zck=g4gNex^X^%L68W{W)U+G6jb2$?JL72+2-?`vN-U zXWAHhmEFa-mbM=6D^M<7&`ozOn!2igY=#@Thsi9qBw3wPN%IDqSr@)yv zeZdo7=%P z^Gz52K)0Uxj|@9vZFze^_&6*^KbgO3U-RHt(${pU+hR)$$X{mqRhk>bM>QO((XyL=2kh~p;yQMPchc)ffOYs5!$+)1J7E|xU;72~G#*C5)dEC#I@>YYr zw8F&$0^Pp`1;_?q#FFBe{RwXTmqRR8Ep3fL7rkn$y1@g_$SEVqjmIk0o`W#_sjSqM zj`dRS@v`dzc2=PB_;QD|P5kOQ`P3wjPw=O#sI5|D^`hV@k$#=iK-Hj@2%*08PcVOR zmVbY8`N4u~ATK4F!B?B;Ojh}{Cg}5OUbqC^SUqec`Q}iTBY`1qKPSmN!$SFVmZCu# za@pBCTClp_*uA!KKj-S+0OIeHL;YaUyJ#68VT=1lZB>9+I`k+fx)a@1urLYZ7lQ&z zM@jNa5cjZcaLJJ~5`VL;( zESd~GN;$r`!({aZMU7|*taZ1w4o)~R)^+hS<-2#@B&_6=5dA4AU*jqY`Nr?IgO>@i zd~1x{8hmW6sY|HHcUDXlop*I`?(<+gyL^|e%cTxc85AZ_LKA}ig0O0a$ML`y3QRUn z8|1If2~3|Z;j34)Ombt~B^%-4nen4{(k=J9sY1)L| zCdCd^f1Kw*P@DU%=q4N^s%x;y02uP<;}$@KWsaE;+xkzZ8WE>f27bH=Dcd}?I(i#8*CHYVW9=LpKYP9Hy9; zF^`VQu+g5jd5>}(%#JGMH12I;HCIbtN{s!YC>iOM$rp38h`^cPYtYnKQ^FlEHW=~J zdjiv&%bqt>X8S!WsAGsH^E-F?j6NCv+#igc8IjZBt&x?$HX(4(zGRW<%Y%o%A^^{j z3P4R2-|&fiAElvN>drQ3h!#RFGwh+<4#&0AKTaDS-XmzPhy9+01&@XVC4$arU%Hsgm;MeD;qYvd z(LIsZ9a80WH^QXjQ#^sya+npG^S;9rD8m|%ndbQ(j8D?AGRC2C5H=UrOHW?F&+Q)f ztVqodf696T8ef;DgNrK<16I9FBErf?Hl_Z2x z2$J#hN3ED4KL6FTU;2L@!GDZDw|&0jD6$+*-}<$AvCh-0UKLeF6nVH{Wc)n4es?b; z7JQAHp2Tla9hOe`#El(t*GMOQz&XFmAvDSeU&HkP#voq@tcqMNb!w-Rq>&c8l9{dp zz_y1I%-FwUV;NA3G+hPP1Dc}KQy-NKt7;E5$qJ9U%;Hda=F-v#D{J-MwnmdsG0L5{tyr2*edkFks>f;uOs!#DR#BA2;hzLlk;DsYgp zi(>0Rr3Rtzy0fJ?$8Hu@PUbX8T*uQ55*fcrXl*B@{C# zc=h)F%KthK^hXTV-5C#Fk@CTfX^==<`db=RlNEN02%t_!gh=q72>f|id^gr=;rYfm zUcFeB0~K&;Ip()4zkt<7a-R>$v)=v{seFt3roo4veXkcNJ@@5->Cca}2LIzuA}{)6 z#-O)I>nE42fecB@ZX6>~BotsdO+v%i8%p5CMZJ@dLJ-v-H@6I5}1( zNK_77y;v6+&dG5s$M|`kM56%oLt$iZr(Va7&n-rJTmj7~|C7*YHsUi`GtbN3qz=-S zo&|_D;d>|Yu}qc!PQs$9k|7m1UDfzb@SA0eWxqiQwvz><(O|ZJcVLNw>nx=P&owAS zyYt7TBQ_9dg7L-o`@1LC7_9YYz&_!=D2q40>p>DtWL!Gn7WDK$t< zrUoEt|K%6PfJS`(d??HjuOSzXrl7GrW87xlT*@g6&f^|UQXqAUj0$?n*Ow2TpPD?X z+^64fA}um(_Nq?W^Mbopt^z9yC1OIDkv_Zr2;|O$E9|pldn35BhZ0uy)$hH7Ja*92)2SVRK zOmoT^eK;fLN(qoX#N;ySypzoo#sQ(gYKB&ND0BdZayM~_dQ~~2cg9IWmU%*x@-4^Ico^uYz*z%x=+Cua!GDs1r2pV`_9LP*u8XARJz zO^quhYyX?ESdxU{5RlKvG=1}Oj@`$^&v1gnGyYvw2GBWLB$Tfp`fdA}SIxRwqF_ID%pcN;U@h1+9~QJ7FH>LX_ES&bs5L@M64mD+*2_ zO-|US>*_L9a5TJP9pw}}=R8R<8YDPOHp}+!R%Z3vt1$hS)d(!K-#MW53LxI*fs?(d z7v)W$l%b)F?)JK8Zol~_4pV@^vSBu5826ZX zSaQ{Hb`U{)>+_mauyM()H;?4?nBk&|mPw;$?ROr9GMe5l371BGkJ9HaJ;L{>soFBg%{?TQfxrK zX1e1e6`IR9oCjOgQTuk~Pqg;dMO_8aRrZH>iW%4IwyG6G6VFY~b1{^YK@Jq{QGioJ zbUkB%@n{*RlXdUbeC~;1Ri%wUi6CE$_tVu%pA3*XQOi_5BvZ-|Mn)4Qdsm5k^ao`~ zeu7CmO=h{Z>luME8X7GI<(j`o&8M*wTH4!vs}4ILu(An(9=<^T+~2gt21E4`3A^Pf z>w04vaWa2bOhaRNSs=MtF2Un7-DLUeTQsYva2`2Q4*;7_gn59?f&rOUUg#olaJn@5 zQ-o*|8rl5BWAs}cVnXs_GuTVFA5$O`j|#*pZyA{w7OtnOFanr}mUQxgq{s~yChht2kn`tN z4)sb=nuJUL;jJy>E?d z{xOmy09+?RZi+)>-S6ci1Y~1Up2eJuwsRM1%{i`|5mDtUwSVBUuHegfJQ(G`ZTwky z5+~ajpd^$3N5Dv%j$D4`LiSP3Ni}rc7^~Xi`dPNyt9@-{Y(^DMP6-;HH_EpA*;?9h|Us98TmPe5>@|Bj*R4Nji=&uQ2j@C{_MK!mC z0cQAs*>1Cs=PRje%K_G@eChbwNDa&#>w`j`Nu!Wy!{AT|vS{FY99{pqdIC2!lX`2N z@a3&*1oM9NBiOChuwcvW z>h>sy3Oa82Qr?P5(v*&l?CXGiAuNnwG!hc=H5XN`q~!~jVm<%w-z~sS*kZKQ8ctTb zFttnfsPOMBs`O&?7|ICpdcLTuP3;8JeP4uBPuvSIyVvB*COj*PG_v9q=qgucHKxO5 zP_LXL1P34%EAnz-ms*dxq;-*}Q*i6;k`q-clG){S*_X0kVgbinB0J#`8^mOX;A4w>4#^d9RJdYda)`V2exbnkx5{4LuHNCc?7Uy0 z3iEx-XS^I&b_C<7obK4M67gc9hiJbWx*osLJY&Ol9HGDb z{+IXU2wk{=TGT42AQcV!A*txXctL~|=l4@Mki{%3xzkBxtw%5N-Ac>XjJvg+RSEaj z%80$#Ga#Xd!|?A;$wXQ?J^F!2QS+Th>a-h3AkT%w7Y`MP{vN9mxKgp$W6J?CD%-Qs zbRi+_hFc))eDiOPdJx^MyH97rU@aLsPhUL<%NeBMssz`IZN@B^a><1f#!iw{^jzgKI2YYXWzKLN<0!!|%++!>H!M%Vk5S={#S4F?~6QlH(t$8L694v@EOKGJ9KU z`AWKx3$?K`qO@f8E`oYT(6ll4q7;QQsa75VV;MIRLaSk2x||a38luxQbnePgDVva0 z3>!){qZrg;7g3I*rKNQQV*nid{{8zZf1}LHQ5krlvJZ!04>{igq*Nreo+`PAeW5S- zfU+=imao2pfkP}{wda%}H%!?ki0EJh{Q~UD&>o!{CND}1N_Oe~O)rs(zK{2ft@o4d zJ*7(b2I-mdtN;##Bf8fqWb^cNbLujipm5*0(D#Fy*2nRW92pivtQA`)2U+5YSDd`Y zY>O(;K3k?kHIPf zsU0i6ek|XL;|&*!l2vmXud0soxip(-Vt=3`h+U*H9PV5QB^ApiP7>@rCPqi9yFX5( zdgSEI`OwduB)PmK2?~JcyL+k3{US1BR^qHctSq`d`XbEZO~1g-S0T8_0xon?w=BBB zxDYJPbqc&_p=Cl;6;GSXr1M8h*`?Bxh64gedyqhktRIi%^X8tVx;IaqE0s8rT)rYGAxWrqgnTy!dJu=QEl><*PUJT zCUFYk`*Q2n^us2qvlX@IN@7Y#I<;c-3gtUVECYO3)ji*q4&jsRU*>f^F4QZTepIMP zT_oN~E9X-8Wu0ToC^BCNSF;ET+`dvDw z+o(F!psF#;&2&^6TEW@PP>ui@^*+$Pbf~Vdkk_M*f7jNUhMrzz(v~1V9ey`A8rDRA}WUpxhji~NwfCr1jL2Nl1 zCl7ooP*`VDBgqe`$@i#uNB8fs4nNX%dyA4JRDPv!*dIN@T#5@Vh+!GNGY5?87g2~t zRkO7VY87vXUKqoOZQDYV-}21&9sM7%sbZvFcuynEJS9LEcpie@wAbyZJ>>r`R9jR; z{$x?}cOONrDU>Va1|Fx{Ta-)`^$tY1Rh=OxT?_{T8<6^lZVWBmH%}k{*?`iDNp%=X z&Z=WQYFyYmhnaUH{w6XWWR&>9Ra+q$K^J9Pg%>Zf-B~#yo z#B~OHqJ6K7y$>VdGtNi)H5qwf28xep*?i**T+2*B^muE6E&Xa(bYalY`zdELoX{70 zDbcZ0*Z#zJ@_DHCW+oa|Ja{Tv>hm$0a`WF34nQ1>|u<2{1W6SzFLrm5fR5BFvGBO1BF zrCuUAM6nNL;@X$xCp>-g&%JaLKr`xii66v_T=<1`R!ib*EaOU~0l(OpS7$klkytEg}3%`l{5olnGPp^AuPkt-7g z@3MzaWTiiLu0VgeIVl!dM4D=#7R*_=G7s7}EZK<`go-#r*kXt9{G=tR$zStVImXW~#Z1PknLdM|2 zOK+Y`^r@#B?0ib;HVY#2zYB`Q+cnLUafz`1B zl7%5Ag#oHT-TgON_^VKl8})ugt3|7Nf!jNJhkci@E>`HTA|&bLRl7_l5|x?CLUi9s zzpSJrpA{<6yWf2qNYVG+$iftTT~${VGbcT?hGRpH&`LVL9ns0|ijXM;hB8h$fV3Rq zSjwOaU2&6vaWZsG#)j`;ZzTrp+-Z_9$1c=Dm4!L0Mb49DHBb=F962gX`$1expRU@8 z4Y*LVe9DYMO;e{{TrV|Ur+ye&#$~!N^hM$nYsBGQJKpLnBE6rq?9MhIy#0LFsAJa0 zW5QrPqNT#g-5sfX)=}Lh4dva#rQkK44mroOm%Ykr+`|G_rgu0IKg#2)B;dBpEZb?6}wwZWKqI;rSw> zW`i>Thl@eEPDqiCRQX!*DDn81@8i#poxATby|gJUNh2o%r(L&7IS>dGFW}az{=Sw) za<12u?+N}K%#qqAgO?^q^R*0oA3vfaa^nO_j@;fJYAB=!OqGm(CjA+c5t{^-ql_Cd z6Hh_Q(C*~iC!rPV3^ZEEQp8pixX+EpEiFAbIfyx6&Zye&02Y_V!72bFV?cr3|IeTb0N1{e^dBV42_YqVjFm zDpO_po7#Z`?JgJqZc>cs>m7Mcx&y^68#Xy1%xb|PX?$@O5* z*(=U-v?;2j&;SCDhS7A|{x8oO1Gh~fOrV6SU;X=fPPQ>RPTd?azA}4webbLECX{p8 z@HKc*&aS;(!ChNMBRTzfo1Df=D=*oTKmWu@m(WE86e6f0eBv;1@SJi!aDn>=0s(+? zEe8^F66&ES@nVqY9x=vpua5O?SSmX;I{F31JuNI?VY(FH=n=O?R_d6}IWOS5Dd$>& z%WkQt)~(DyjK|3DCZIogt?>{_Vw2Jsx$CB(+;D8`B zB(7!8CSm=IpnH`3S#0~V98tuq!i=5ETU5dW?g6Fz*HoY0=u0?0gH zk9B+bTfuo9g6kEd`m(MkyEiVHIyngyikw#ZJ`}JEbk-p6eeZHYBfkq459`lMjkRvA zJ}DSX4@8e=|2b_573xVE;VzwIV{SE5MjZdQNA*?C*U1s9_T@p^QnP-)jcAH^l-+UC z46mN3L`SZydhls4k|`Joy}Pfkq*Js#R6E2?ty<(G#HL(JL&L7L6pb=l=Cu&NBMIOc z?gB(u0n_F~6YFu8Qrf6;r~#acF>cckltX1-rBQ$dE+2Qw;Tm84aD?fH&Hgo8^ev%; ziT?3x`QJPVcM3T2D2zU=jWTu#6E~>h{YuhuHb!_40^fEsT?#Sb-zk#of&5i<7O!y4 z*!~$$%A>ewV{_1aT4fX@`k2lvy_Yaeey!m6qspRPf})0mHq_V^tQy5Zj0w&w5_l^< ziDxw@7CyRoc&YPkb{u#?ve3b%qz0gxZ#N)X>~qFrVNgvrFj^X*0up1a6zA<)D$u(` zi}am>9&q)Y`RJxfKrmowicIvp5WG!3tfKNF^SWn2x?xZ)%eOB0GvrkZi}%kC!7H8e7J% z6MTxPSDbfa>`F&MlJ&a$@*Dn~0U)=hTp871r_st+$+%kfyVM@2=(g%fNJ&KMk|7e; zu6Qk=EIg*87aS{CFQn9?J~hD1JdO}>*F|A9Bb{C?Yri+9Mhi(~2n$j-VVwZnPC`?h z;6ME>9u6^{q|o2t0c%8(qSA_*QB`w+OSP0th!tGTOiN1|HZLvXVxJ{w3Z*n?vsD`d zhUl)_Kd@a(Fx8ffc1H#vhtV{@U?Ozh*lQUIGDHKZHue2m%*(j|;cGY6>! zL?258P2Ti4kzK3v!{;WEz3{~kQp?6~p zE2e04(f&@;BtCd35fL0Y9EJz%a$>*^LKm~A&8}da!Gw>OE76pz#>uVNd~hGbrSRhG zKVYWZAiE$8x%BNIe73I?n6_aZhT$evwD9XRU#otAFxX`%kw)*xdUd9XpoJ4+m-1*s zJFix05W&VR^+g>LhQ{`vrG0`VIG2_h5(#InH@O#5ww_mI`-BfWfUh#_gdq4&TgXP( zaE%fYk?m)eL)o3gQ@9d~g6u@-6ZR|5J*Q;j#9Tgu6PLnRV(gb}@;04)?#dsa8`INP ztK@6@WRuDr!S6(O^58iD!?Z~7vdhXc5e+4i-1Wu3VB3k-E&wxT4`*sJwSETvL!6|(xa)8ZTL!Kx*I@KLp z(1~Ewd=%`KPv znNm|w>Xio`648AVA?v`t6ACkV)d%WGih)N>bAd$Dvjv9*<1W=X!iWl)@0S-m^$dNQ z`k#MHmPtsh`BB6Q2&7@4wpyp%$jDE| zfArjDNFXs5OmE;X>*Gwi>c-MpZHQ1)UMeNub`+Cp_SC7{2 zc>C5kA6;c=%q-dg&NgYCpIO_B8p91Y*od#+{q5}tyb>(cFd0$pdzd-?YP{~ z)&h2oLX2w{>y9;Cq!fN&!yS*JxfSHRpq3rxrZo{{{2>$|HZuuCw=zEXHtk_buqI0o z%g9Gg@73(wUh7!Y{jd%$+#!~q$d>fVCBK$r{*-5EO{F8n(0#%V%zZ z;KpaL(T(P(uCUrz)q~a0na-xtiD;{vWCdwA#exC=+vCXoig-@)p*9*WYO_sEym^Hc z^{UplYu@KyzV9-2I1y|)Y`kL%cs@ZI`S)4}z)<5*>oEj}bXw1fY0Xw)8TNS%l`p%J z9!qSSL^>&zFlKq44y>Xo3j7n!d7m1t(4aQNzkP9V#BzJO+cF{CkFYP z0Q9zt>=3E7yyPJ$g)tr6&W&5`E2R6N;MI(2^_J0Ro=M?@vcNK2p`ZQG0kO zk7}w{fB(5e1q6#w{%t9NG^AGHP-jE4OG~R3ZL^`tw&et3b#tmwhc3V~Ti{A4Fg-Dz zB^bB0M@eUIN%vzuRJ)Q#U4v^NE9xxJe(bR6@AwDFdSXqv2;Qn`JSRRvRvILdI!b{I z9(J}UZVW4>wXqXErJB4Eb&Bp#x_TMrzZ(9Rhg9&G;|Ql*mZpR@ncL1r$im3-ogMnt zR9ZfMNd6xX5I~tMytD3O&MpxcMMOU_64T$MmVDpvNopm+e&NO`QVNV*E`(ZKpY`GEQS*-l-%LL-4oADsK1}-~2?;3$ zM%|^6T1R|~6G3NE9E{`Jv10HtXK60^-a^ko2u_|fP22&CuA1-%M&?PJW z5z*EZEi5`4kwIBO8g)6O#Wb-R>Le}Vo|)9)Xyl8Vet#rNjzTT!q*sMELOy*-XM_&U zfp%NZLaZbmL5Ma~6)BHIJt8UStoGI2_vifas?1bXiymC>8|Qcl4eOV(r?}qZC?E_< zoKf^zeH0jCJqwo?2%sYoiM{n=;g{Y~-IMuVXG$5PaP^s|@bI09aGW|v&Z*}Hy*a8; z2G~~Tfpu~&0zWj41dsEFn@eAUQJWbhkr>(npiBonu{$J1{x9Cgl*bYsRtH2H_p0Ue zt-Q~~mDQbaFp{-43d>)9Rt%14vnsda75FBzo;lNG${J=xdhACvXHnnEa8f!`A#qQU z)KtpEAmt!zvL!0lPDi`aA`^?xj=iDsog2A{ezX)1g1C>D)cg5^VtxUpd**wgzkOjE@o&%VVyfPK#0H!1X_3BqJ2zudL;MzKu$gXo7 z_nX!NvC63GZrXD)#1O+`p@g>-3-%phLJd6gP0cNTXJ={LdFB`FE321R4I7tp1x_YE z@ZW^NKeY#OWmx6h?`xt@o^QTngU|#Z)RSz(AFf^W>_?UXdYFXxq z`^pWj{b|~Bg+W#Xsi!p8_R$T^;vGZhJ46xZq~eaVItLLXTpQ!R-<&?NUG>W3V4-3o zpda7EBiKx#%7I~}>j`eAd`ITa-CdhmH)I&SYNJCH8!EP0+~_=C+*!~p3Q(D^hm`|$ z<#bR*@q-0$JZHHb!_t&G(sXwD#&?B%pLCx9SQtVHaC^Z zcAOfFvR!+KtkR(<1E?FkVfgovHwg&yawh2jqH7PK8j zvTv)&#UL_)(11r+T`tzEE>v}iBhgu{GVnXSdtf52uIx=s;8fqK=r~nWlVDjjuPe_% z3+D3+!MxVbruO#k(Onz;cHfZU;rWF%eUsLu)v27>$G$JWQ6Gz4ng{13PnvDD|8AMHRK3AcZ zmkCnFY!U@*s@7&C)uBmY+1&QrDBMgN{JUGbVKoRltLk@e?D1`cky*JaDw(U>+WSWD z(0JyR#Mkt{ns~S*Sq^02VXUb)7*HsB;}K6X73D~DIzdKzRHEox0H~Wt9T(v>t{D0G zfm1O5pp?e^f8}|5*jPww0m?w=f#sZKTrwu_tEv~)Z7&b$vNm8eu#4e1zffh7R}`3m z`TfuNN=LUxwB^%xm|<^v&J6Nv{DY64Si8P;*wLd2=r1q@Aq->N>X99oC zi54*puHqx47U%Wj7E!gv3Ad0IdzD$Hy3%YLx=&E`c(Ep$1F>(0<$p1FW8vk9gcW4* z{*{Q6R~m1L(K&JZ;?8b4CD3|!pufjURJ?=;;Fw9vsM4S{tPRZC4Az>iYt7y7o2Vq~9^ z-jUW0XOy8(_o>3>xh@C1MOXE1O~alw9(Up9!)M-<@@iPO6|4PM|CcqZ(--@=o--ua zsoOWq!w69etNJF5ZC&=>K|Q`{3(vdy{(|`|65{nvaX1@gD8W==Q!d|Fz+Rxb z+yi-!D9K?%z$HdHc9iXo$v9$Ci~U^jF}}ThMfLI-3_z+XlOi7XTkB{1jr{kgLzc@+ zX_4MIUzmyF+Us@=t_8*MYZ92C!P~$V7$46~4Re@nq z>~JE5ZpG)vmiP}_k7n9VhqTl^&b+<6`qv8*ym&o&sVAaihFom=;TJ6xIjcF@xRB}l zu!i#vZEWn`^-oE#y&fN5-*zMyNimgWZgmZO27^a!f8S13V_Za5d48AVa^#%IPoV+0 zu?Zv?^^{!YJmN9ctZm|@it~Br0r&LPyrseBENm2C^;$H2zbzqj6bjc5 zUh?eoQH3Mrp_h@>jM8R(Cl0uber?*q^8T;XzJ$1#FL2 zhd&^%bNVX)0lC3W0Zroq)?k(NrtlzM>mXAqa`+%bKIstbXqO46Qnu7@(dfZbhXY+$ z6htFTtR)&S#LQ8Pm<7gNm=Mep+kLl(7WiEST_kVApU1Dxjj8|_<m0!=THFxgcCDPLbktMts-R1$P@v+I1ApQCu2OK{BJUT^3&IZqfw9 z1CQ0C+^g>*2A5{n5hBQmp?&C*1*1|!ml2OY`+;8$J1J8tdh8o}Mn~tsQlb;L1k~>b z(9N|CTUWoKV`x{-{~dAeIM;w-BcX|iNUQ}_6zYI{>TYXl?_J;v16Vcl|`!9_1XZ;=l2!nGD(tYgA1qBBF=bIi2+ zkDxRoG3=1eXsdXst011SW`Pc2?X{3+d6dm`V$L#f6-tWmC#+)~GRDv!wSRqqGM;|g zm;0c4L)0!S0UP9vDMUEphHW@NnRp4)_Y;v}*1oEG4EQ}qq>Oq3I38-ClZO0>CJ9d% zW@W<%ht$)|L54)laIzh=&-3r|vlwD}qPwRwQLqtN=Nhd#jn(F3JF&YJ3(-9^$-N;9 zdV|7yhye>(X~VA<82ua2h*aA;^!Z7$RPxEEkuthr`@@_V08=Wxx}7l}g8T%b0=5h` z_%k1RCpw^@6rmWp!-|-J3Mj$Phf){(%Ajm2*)6nkY~T~G)fGQN3lk?q0G!@?|M~uc zOW}7Vf8(Rvc1Qz&CD|zG?yi|{cIW^&fQicDm@P_i>ltKzp66e`-@msVm?;Cs5rUD1 zt8Yur`A-@IV7>FY=~#RtltrHYCEFrUB0!<`zzCEu#)m57U4^gOPN6floa6`y3waBD z?Vp!-dsrTmDrlT5JX7-AOPM}>MM0M0AD;DWxCg&~R@djXvS?wT$@y_b-yor3b}aQfRsmO)e%4R?^A#b&is>??jE9Ngc7m}&&kKx#fjMj2U9swlEay5qV4 z&-jgfZyuAm>IMi2gphzOp^9A%e=7EHs)B3s@7G_P?r?ekqj1v{ z`1nxTR5rAp(zUL>5hgIOgyj95zMD`$Ud>xZw9wE%I*t=(;rG~2yM+HJ=U)pqR z%Fa0(=4$Gb#Z{8p&+X=ky?IZXj`?lMKd4tD^9-KuT^$NY(NM(#lAQ0qFS&QD-)FET z$6T86rL>=C_#7c+>rMA5^sy&79q-Gc-1G%vt!_Bz?(68;EYz6UD6D)H4^(gcQa<|Z!25#~I5sj!q8{0vQq=Vi24canx)3{{poGD#R4Vt6E&u#|t<@JD|XttUA zjQ%M8qZXsoIyRp`JOy&8OpX8-#Nfn4n1rgOG#IbE;=L-0s@y6!zBGWcz;zEHyuuY))q7=MaJq+Z<%M5!&;>sJ0DKA$rmS~a)Semr8| zA#!72@y+C9(~_C$ zx}IG^{eDgtM1yDOzI;j-cu@P|`__U!Fx@o%k&lTP_G8^;D9+W~3w^@z0yK4^W!#!a z>xJ*+5aD)r5{cS|m({@mbZkJ;0aXO?687crh8T|_3KDSG#|`*y%aILszhOs9MM1qL zYz8ry-*n{7hN=6>FrBc(*U`0Y21hAVBeLoFuI0fw^#r;$&AR3J;~(4e>j~t*Y;|$| z^HVyXFsNWo&;_k8^&A|eR5gHTQuEa>D3kJF0h`kzq>8;HiO%h*koLfSJAZAlRYVo)eQ^mi*b(ww)F326s zXJdP8l7(}Wf2$3YP6Et5JLmje<1z$NCECL%e8H-T8SZy!i$MaavNt~cJ`Q#VKe8X; z3qGvg3*EPERtPwDe?JirVz&x^!hMx%Y)gXY@D4DB(Kw<}{T7LOU>CEW(kso#upp>R zKb}g$G4j(h*P|#P9$QuYM@3qp4o(8=h~@*sIab)JFRYo7d#kwaSB#9rFWd3TiGG{{ zVeHWaNgpU2#nTd;HV{QQpM}&y*2Pdj1=Qs*by{(SO%4=yPS@DnnKb{Y>GNRdhm^r} zy$7n-JIxOo8nDibav@SpT5|;oUwP-jb)?>f7UpL_BC4a*N5gU<>`76%X5=caKHJL5 z%CBF)eDTHH_zAH8XMt{rl^ukK_F)AqYE-gc=Ey4vKmcWLrf3^s1MvNkIvE~U;T9f_ z-L7QUwS-4Y9_5)|jrY90$`!VA!sGriU(0dr+Sv)v)jtkg7tO^eHECw5B@1(CRV)v= z|72IV-7azCcN=^D;<7D0#WyGH0rp!$>Pp1KST-@-xmfIGd#ZS7zwc-qNPRN}I$F!H zX3EerImZ3duc;H;Bz}J%roqsEz5j82pUC*ix0KJqa%u)~gYb=4FBCD2538v&E6Cbyh}hg0d4~ER#FP^XKN@ zKT2SZb&eQW05%ag0VV-TxFf22>>_f3RIK*66ks=TkURd=@lSjdF9ctse^p6XseScz z1fsxKsBmvA8@@u%a(k5~zklD!Xw_zJd|akq`^EU2Uiiy;o4p)&MW|liti5Q$U^S%q zN%2KUGZV~HWBXfex<$Ed*kg*D<%iV+*@nW)3=MqwA@1N5ffLdh7E$N{2*2AFd_$hg_Dkzu^HLBh7^hgk8qd zF(3rzYsm95ep!)rfM(TqXdEvHz<6W$f=WLY`Hc!VN~Zj-jecZx5g*|PcC;Rhz)zVp zE0sa^jK@Bi8Bdw+d*ZCm>cU0ZI7Ks?>Y=GE-23Mgqze5*?jsUeLvQbs-h^*kj~`mz zdGl&$kFvdyjjX%FIf)f%LTBB5Lq?**(1bjF`sZ_aeZb1sM2QlP3`wah3}&{O6)UA zEyTla-DK&lfn6wAvu*gc6)h-?zQ^tm+IbB1=0=7T5*YIJaEG8n;kL?^;6u-mrZ-mK z%Mhgq;{)j1*BiUe#qW(?oA1xiDBES99AL7&b_&Ml60!4?%I`mGMs?6!Zkx(|J&5(N zXzI?Ek-!C~nYzFdXGKKOW&*>j=$YjMbs#pU-_k&irW3Qt48N?MKGYy9BnVt@4^iLE_jvGIRFQXAins26#-!%xt`qH%{$0H z3m@a28Os9hzY6jEIIpf*(X8M(oabSyK4*WvkYo~WwOLX_@%6I*a!4L*<1zQ@!DKj8 zceu_M%0g(o!p(IpIps44gXU0r=<%Jk`hq5W6n2_#&VsxJ-)Fn8^Z!wN`zO5nCkn#f z*QBN^l=8OQiiHVB&ghuEBhfgij>TGe`BsSHfAMeG^tCnluwv;AYN3Q9b#E2qH;>o} zc3oD8&+v3VTFQ9dSDa_3(96+Cdv!?MCzSLMyie2)VOGPIpmSujw188 zA3au=FMAJg8E>x-T(gMS`L*}haA=ovj+Hu3$OI6}^pG4=X4)24bn>0FyONv)s|`5J z#D0Z(-8Ebb|7e$?eRHGV_Yp1bu)5(%Xolg-m!z*olO9MV{nU^j#L$`QCjK`)1-F5< z0RRA_tc0lg|LDZt{CZ7@37yP^ePLlVu9DiWrbe!2{3gz3uonP3D;p0JD;E? zKPN9gCm$0lCqFAIPl~S4{}W*6U}|OV_5TUr{l5VlHHTcV0D!Edl0=1=Vc`D(+^$Vn literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/busy_dialog.py b/python/tank/platform/qt6/busy_dialog.py new file mode 100644 index 0000000000..c57db3acdd --- /dev/null +++ b/python/tank/platform/qt6/busy_dialog.py @@ -0,0 +1,59 @@ +# Copyright (c) 2013 Shotgun Software Inc. +# +# CONFIDENTIAL AND PROPRIETARY +# +# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit +# Source Code License included in this distribution package. See LICENSE. +# By accessing, using, copying or modifying this work you indicate your +# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights +# not expressly granted therein are reserved by Shotgun Software Inc. + +from . import QtWidgets +from .ui_busy_dialog import Ui_BusyDialog + + +class BusyDialog(QtWidgets.QWidget): + """ + Global progress dialog. Displays a dialog that contains a small progress message. + This is handled by the engine.display_global_progress() and engine.clear_global_progress() + methods and is typically used when for example the Core API wants to display some progress + information back to the user during long running tasks or processing. + """ + + def __init__(self): + """ + Constructor + """ + # first, call the base class and let it do its thing. + QtWidgets.QWidget.__init__(self) + + # now load in the UI that was created in the UI designer + self.ui = Ui_BusyDialog() + self.ui.setupUi(self) + + def set_contents(self, title, details): + """ + Set the message to be displayed in the progress dialog + + :param title: Title text to display + :param details: detailed message to display + """ + self.ui.title.setText(title) + self.ui.details.setText(details) + + def mousePressEvent(self, event): + """ + Called when the mouse is clicked in the widget + + :param event: QEvent + """ + QtWidgets.QWidget.mousePressEvent(self, event) + # close the window if someone clicks it + self.close() + + @property + def hide_tk_title_bar(self): + """ + Tell the system to not show the std toolbar + """ + return True diff --git a/python/tank/platform/qt6/busy_dialog.ui b/python/tank/platform/qt6/busy_dialog.ui new file mode 100644 index 0000000000..26b5425a62 --- /dev/null +++ b/python/tank/platform/qt6/busy_dialog.ui @@ -0,0 +1,123 @@ + + + BusyDialog + + + + 0 + 0 + 500 + 110 + + + + Dialog + + + /* Style for the window itself */ +#frame { +border-color: #30A7E3; +border-style: solid; +border-width: 2px; +} + +/* Style for the header text */ +#title { +color: #30A7E3; +margin-top: 15px; +margin-bottom: 0px; +margin-left: 1px; +font-size: 16px; +font-weight: bold; +} + +/* Style for the details text */ +#details { +margin-top: 1px; +margin-left: 3px; +margin-bottom: 0px; +font-size: 11px; +} + + + + + 2 + + + 2 + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + 5 + + + 5 + + + + + + + + :/Tank.Platform.Qt6/sg_logo_80px.png + + + + + + + 0 + + + + + + 0 + 0 + + + + Doing something, hang on! + + + + + + + + 0 + 0 + + + + Lots of interesting details about what is going on + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + true + + + + + + + + + + + + + + + diff --git a/python/tank/platform/qt6/config_item.py b/python/tank/platform/qt6/config_item.py new file mode 100644 index 0000000000..688dea59f2 --- /dev/null +++ b/python/tank/platform/qt6/config_item.py @@ -0,0 +1,93 @@ +# Copyright (c) 2013 Shotgun Software Inc. +# +# CONFIDENTIAL AND PROPRIETARY +# +# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit +# Source Code License included in this distribution package. See LICENSE. +# By accessing, using, copying or modifying this work you indicate your +# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights +# not expressly granted therein are reserved by Shotgun Software Inc. + +import os +import shutil +import sys + +from . import QtWidgets +from .ui_item import Ui_Item +from ..bundle import resolve_default_value +from ..engine import current_engine + + +class ConfigItem(QtWidgets.QWidget): + """ + Describes a configuration setting with data and methods + """ + + def __init__(self, setting, params, value, bundle, parent=None): + QtWidgets.QWidget.__init__(self, parent) + + # set up the UI + self.ui = Ui_Item() + self.ui.setupUi(self) + + engine_name = None + if current_engine(): + engine_name = current_engine().name + + default_val = resolve_default_value(params, engine_name=engine_name) + param_type = params.get("type") + + self.ui.name.setText("Setting %s" % setting) + + self.ui.type.setText("Type: %s" % param_type) + + desc = str(params.get("description", "No description given.")) + self.ui.description.setText("Description: %s" % desc) + + # special cases for some things: + value_str = "" + + if type(value) == str and value.startswith("hook:"): + # this is the generic hook override that any type can have + value_str = "Value: %s" % value + value_str += "

" + value_str += "This value uses a dynamic, hook based setting. When the value is computed, " + value_str += "Toolkit is calling the core hook specified in the setting. " + value_str += "

The value is currently being computed by the " + value_str += "hook to '%s'" % str(bundle.get_setting(setting)) + + elif param_type == "hook": + # resolve the hook path + if value == "default": + value_str = "Value: Using the default hook that comes bundled with the app." + else: + # user hook + value_str = "Value: %s" % value + + elif param_type == "template": + # resolve the template + value_str = "Value: %s
" % value + template_value = bundle.tank.templates.get(value) + template_def = template_value.definition if template_value else "None" + value_str += "Resolved Value: %s
" % template_def + + elif param_type in ["dict", "list"]: + # code block + value_str = "Value: %s" % value + + elif param_type == "str": + # value in quotes + value_str = "Value: '%s'" % value + + else: + # all others + value_str = "Value: %s" % value + + # colour all non-default values in blue + if default_val == value or (param_type == "hook" and value == "default"): + self.ui.value.setText(value_str) + self.ui.value.setToolTip("This setting is using the default value.") + else: + # non-default value - indicate in blue + self.ui.value.setText("
%s
" % value_str) + self.ui.value.setToolTip("This setting is using a non-default value.") diff --git a/python/tank/platform/qt6/default_app_icon_256.png b/python/tank/platform/qt6/default_app_icon_256.png new file mode 100644 index 0000000000000000000000000000000000000000..9de31db578e12aaa5657d365300fb5d6474dea90 GIT binary patch literal 19181 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 literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Bold.ttf b/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fd79d43bea0293ac1b20e8aca1142627983d2c07 GIT binary patch literal 224592 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 literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-CondLight.ttf b/python/tank/platform/qt6/fonts/OpenSans/OpenSans-CondLight.ttf new file mode 100644 index 0000000000000000000000000000000000000000..97c355b9f6745e09ab02723e6e9b862f0e1883f6 GIT binary patch literal 221108 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 literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Italic.ttf b/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Italic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c90da48ff3b8ad6167236d70c48df4d7b5de3bbb GIT binary patch literal 212896 zcmb@vc|a4__Bej;%w!VQgaimX36V`emavGTL}W+VL?pPeD&j7isECM&f{2QHty;B~ zQfs3kwbt6IRjbym)>_;8)LLI_Yinz3pH(vXojXYs?d$h_{`kcXH#2kR-gD1>&OMVN zj1ZE+9|ncQk4j0(uhDA|-9Hc^hsvb*ghb>+zk_HWYv|>Xl$kNgDoPv$=WrhlOd2&h z&Ng7kyKr8D5Pd3RRB+g9Bi9c>2p@v`1;x_~XZgPsT!xUO8zyimuC7$rek6BB$bA*u z-#%&93ubg{bc>WGTloLX>o2Qn}nUNDCbCM+cc=F6R4ICqv{INlD=Z-nO+GYY4dj;i#!fT+J!>EQ4gje$^h{B z1k9RKIxDAPeFs8rOW+v`L~w_lH{ZOwO*&B=^9Wgp-~vKtijzO$+aJ;{^fLOdEv}1- z5QQw@Fn-`UQJcOKA&c5xhI51a2p=%r;~RP>8Jq4xEyxj#K>~PEf`ZXFn9dfpAsX(| z%v8Jz?uZ1N1!}nNX>94sXcC!*vSL|Uz)%!(3sDa=NHG>J`jNpyhm9Hz&npai)|0bG zOGIr{o&w=*7CEFSfR>}%f&diDl%Zrc4|NL0p*Va5-KLUJ zHkE8BV9L=oxL1$w8@5pOD2ifH0CnE51FqFFWjGjGYdAHw z8d!@x(`C3S7=lg%zPs=)LoRh5Q8l;Yv+04A6lMAf#ziWg!VkY0<8b5 zCHzcy>K|L+br^3j;d#>XcqY6@@cp;eu-SZ_*<-lQNT46c2;oy+PJmYlzY=*NJZo$X z+g>=2=da5_r!a(${M;|M{%HKOdqmCv$Gp7tY1wONJ$nz<4>CyPz}Ol#Jv%3I39`Y< z=YMHIW>Ier z1BB-Z-w~eW`Nj!JM`Kg99OR>~Jw8D_$HCLC={12vOrz{dz55xHYp zQ4%XcNpuq`U~SPjfhU~Dp&V*9D&u(#bRB&WXk24B!^;=IMrcm(N@z;x2lraddX7;U z?vi_gnQ)!RPJrPK!4+Aj;18e)=s3Y`bXsr&^c#7eth)_lrycY;;UhBd7SP9V4S4?w zy$5JL9i@`{^mcL$XqE>$5Bl*ua|7f8^au?!g+AH5T%AWFnALEN^xqBF^WYrD1Upg0 zum)GKE$xD9#xeN0h%A!(aE+`{kc$rUYbJUHaLe;9;cMVop}XOzFv{46sfG1*7<&1& z61i*y88_qWv4Ph|Yy{YmIKvY`2Rs7@c}C!CILhP8gvV#NA~H;HMaDGaDjRHvJ9;AA zg>r9F2T6vZ?^3v$lxG2Ec*K!2Ka3)tns z%m~8{K@;ekbMT$4o#2${8PH?IUJ!m1ka55sFegAK%?8`|1kDzD!uKNp!%5V@_@V}S zH{=KBB)M%@Os2Y8DHePEV{ms_)Z z(AQ9uaIf(ITNsMRq4{vs5gQNfUFss54@VuHZ`eW~M%Q87bect{SyvPw`W1Cz@DGUJ zK*ggxIOOy-!@sdL=S)51?N|`8X@c{Bw=xvVMx%2KLfeI#LBDaRmhdX`2dZaTu;&eE z6x)Wzvj})?H^?8z1=y)S1=i>Uv3X1h$Ym$mNK26~oLBJIcsmLAy3j_Tl`DTV;Bma2 zzD%(|lP&aR{21(F2OQ(zXoh1q9DCttgrg1MLBy*ww^SGSLU4|A;aV+xSHkzraN#^0 zrVsSbAqSa<;EHJnpT{12ja)RH@E`9RnCuBV*ib=r84lC=SS^$rT*(1)V$`9h!AJQO z%|=K+0FHkn)O!%xqtNc*;Fm|eJr*+tdCu~B#r`3rX=f5CQ;nH|8(#CG`tU5qyVDt!`oMgqR! z6^(@Eo`^p29aN0hR%a7A~vHI<+5+!@bn5Abc+-Dnbf9@=j7Snv>J ztsVVIpFkUh0ibUy3_E~Va@k*D9jk#JJ-|cpK)3w>YbN;jU|$4Mz*!W;2`}N}|Mzne zGyETXFf;yNZh3q3%*O)T@(+0apV!Uu{l8igqxAJ{O!`3ZKU%Zy{#&~h2|;&&D(n3o z4$xqHdk=Jq<@2NWPlyR}F!)2{pb=UIGEhX_1Yh7L*qfV%xlFd2n4H zlZaxNXe1O^8(djulnrvW4t%p___4eRi)*g&~bQPdIYG_`m*+@@ zmBK;cq3}}pC_)r!#UMqDB3>~|QLCs|>{7g;*rOCEWlBe-Lg}USQ4UZ}@S?m}FR_=@ z%f-vXE5Iw+tH7(&`|MMOGZ^#+13<0-h*Qya^eMW8{jeGr0mR$!I{@($%87^g6hQnX zK#ZP2yaXU#N$;fJqAvr)h_PidnF3}RvxfPIx#WR7hI%aW*zWO($2pIO05MX?6mo@v zhd4|TZGyNGAl?ZOzx5KtV@(j-^?|qqAVvUjufbq|?26%z;W+#?A3F3Q+K&niDTFeH z^;{FTgsV1`8Hx=>hVf{!As%?^BDtqO&n@Qap#^)%K}LzQAjfxk-#Oix_gx)AppVqAht@g#Z& zF2hrBIi8BA;pun=o{4AS*?11Fz?HZPSJOMGGQ0)9inrozcssp|ejV?`yYTCHH-3Yf zLY3nm@lW_Z{u%#*9{?}^1~Jj^_z(Punu`C#|DiglwbVLlJ+*<_NNu7v$>u|tQ%3?39cFe)-4G$eRH zP@tc$k9R+nm(tV8-cBO6wXw3a5D8fULsJ+9Ds;FYK}UNl>=FxA397>6pg=`}Q(1ga zV1g>KK&L2F=%8VIRLO7$E~yH2iUNhs2b#h@mkV?n=sD@7o*H9M&9k0ZqKH8;WD1o+ zcRpUFIE3@F^5A=0yh^Lk{mg$K$$w{j_!ApAQ7YjH9x4K@B0-l}UDlFN05IZxR+ht6 z!%HoL0?|H8EBI;!-*kSeS^KcxP|Sa!{1OK3qmamkObaVbC@j%sX5}TsyDF91puiNJ ztqMkhTWB~xq>de~6Y@hUrogIns8z8q@S~O$ha{+|Ai%mrRZ=)EPe&KRvn_N&OG~rP zEWE zQc2LzdPswc;6%45E6;eYKt-@ zDJ7}|z<6t+Zc!0%S2-b!N}{v<(^aWzk=iMug8@e9s{o)=N~S1u0v{bqp6dGm@FaPp z1^xg@Z2vSiKfA&NK6X+?vS}8*c3jSGXQfqj02+hs!$0;lO1+2`zaglXRX1t|cIMlN5QbN}Wav z6xOQpO0|UT07L$_U^@7~vVd1|^3q1B(z5dNfT~I@e}~*4!!h0oFAby0b2SbF45$-% zixhd3E3Ji&61bp9gfFVN82GCbdW+zY0K)mJgmL3y6nWScnR^2mI)6n%X}qZ)Ie%eL zIHA3VC!0rO$tjF8JlRzVBF=w;0x7tyFii}PiwIJa$vtul)D+wn0e=oB*NnJyB22Hy zQd7}>w_#n6H>x$9&;vS>JkH<;gBF#m&Bi& zaSc54;_VdkZAFVnl{Tt{P(o!I5CP;VIz(7lGtdr}4U$g;S_QgSApw!*1-fOQMni2d z{S>B#7sP4z^@DqP?c62d48v}G*?S|V)75l937ffKD73S?3Z1wdG9ou#TYPG_Zx zBiCce^;qL|mRuLA;&j*%!{duU?lN^4{^pF$Q-Vk;T+X<*NPZ@i(t=WHk=zZ^Y_d=$ zD@H4@$7s)FdbFnp7K79Mjt4z5&Bt>@n%Xlh(c9A}Tr%2Q-EXwB%-|_x44y1)@Jvln zd#1oWnOZtpfa%eU8lI-Hn2x32q3NVVXV0G!vC2#B>85ra?WlGbZHL99C2H|#u{c9a zd5SNJDY4ifrdY7|qp=!|o{8$wJLmy|OgUcUhz0l%UbQc0R6s!5A)x_Gghl399bTsM z9!36YvhsE8G94P7KQ?b4#w)c=ZEYydJxv!jDo>|y*QV)8;ETk4pCgLXR#XH8OsJ@= z3Lu}#fQm}~i}??K>ICi!V(pO}G8#Sbw@T0hnXwl>Ofs@ZtHH~@PcA?I%h{9faX0~W(oSJS@~GzonG-ed>F zR#Hk$jiTzPE!2MMW9k<5hz_PRAxild;{uV%yUbNVw4hz^q2Nc>iuGgD*v&#mVWO}@ zcvgf&14KEZEus^mUo4~+gDpl|tgv|3;!n%|merQsmIf;it4ym3s{>YFTRpW_S;tzB zvYuhxV!g$>+gfjvVpC`HiLIS&zU{YSrFgh_uJ{e{dlEZIs-#JB+0Mf*-EN)T=Td9w z0O=g*X6a|rC$e~1u57#PGW>gLKg_<>{%Z$shj@p#9j-YhIxca1&+&re7xF}Tp1etZ zQ2uWxA195|LZ?oreNI=M9yxnC=Q>YwZgAe<{GIckE+Q8fmq3?T7p=<RgYze(w5j*T3An-5T6F++KHk*X^v^H|}!xj^?cp4$Mdx3b%;63Ai``>yrOtp zaa3sw(Pfx&xN@{|l5&o6p>mb-HRS>2$I361KPaDgS$Vm8`Fn+Wt@hgK)$Mi4>zda+ zucs=ZN~ZEwMXHj)6iihuP_0yLSM5=Kpt`8K-Osn*oPJCCt?$>_?{L3Q`~9omkNqBb z3%#AZ`+0|W$9d;?7kE$g-sJt3_Xpl*ysvuS_P+1^*oW~6_nF``%csGo&1a)em(Tk? zr+r!9Oy45k3g0H*^}cWVzV9dVYxdjZ*X7saciiuDzkmBZ_P6kN^$+ro_D}F1<3Gi} z(!bt+wg0RBpY`w8KeB&Pe{KKr{tNoI_21rqfB%#Hul2vv|3Lr_kOuS%hzv*x7#lDx zU}3i)D`as5P^{eV%!o$O7h93_9HvGqk z(1_@W2@xMgoQ@PkrbVudybvXbQb#pKT^{H#uyo+ufh_}H8MtTQ(Setv-J%CXS47W` zZj4?Zy*2vbpr}EWgO(23IOy1*GlQAI)`RT_XAjOFyk_v77~2>{Ok&LZn8ujan2wlN zVs^&76>}iwhnQbu9uH9s(GF=G^6rp_LkA2k9Qx)^Lu^cJeC+1f2bu^?yJo{M$*_sT zCJ&oCY}>G};v{j=al_(L;5P!uX8%jq%qLoD-%byq|DB zF(`3pVtrzBVte9_#I7W}q{5^rN%N9glP)FwmTZ@-N)As>OwLQ5np~IMp8Q(!f#j3P z=aaum{w>8aMUfJfGCrj#<;|2YQ+-p1rDmnxPyHjcH_at2IxQhBKdm+GlM!JfULA=? z7LI&7-7bAp`q=a>=?Bu!rr%C~oROMQmC=#$VaBD5Uo%rPD>6UL5@e~f3bK}Dt;*Vx z^Tpv)5#w8zmhzVAPUP=l=O$&dt%Gqlb@98+~H*AGtZXlXBY4JdCqy$^N!?k+C*)JHcwlqZPxD4c56>*ztrB#ADzD{|EsaVW1Gi*HO_8a z;<)y4SH}mAZy5jmgp>*2O{|^RFmd_BuL`^h#ucnC*j4au!HI&4g@X!r6vY;OQCwJj zr1()uU`cUFbIE~{FG~JXdVbQFNnMjICTC6FJ^A;t+_I%*2g?joQm3peXUnDK9_5+k zi_4Fe|20)TwQ}mtsh>>~OpBg2b=sC`KTaPw{jC}D8LAn{xe`W^FESU-6_HMTX5H6Aq~HN$FF)qGX+bB$rHbguW@fpgR5w$J@+?ssz^ z)rx9eYJ+NHYm;g-YKv+sYny8~*Y2tPp!QPjx3!Pv3Fo=Y3!IlduV!A$yjSPln;$X1 zcK!$R|5^~fpmf3X1;^`r>zeECER0y#vhb_=$ol&FGmE5)MlV{k=t_fkLr}x~hD#0K zH2l!;WU=*P&&6Sj6Bg$!p1OG9;?;|HEk3;X;^J=?KWY>;x;74I9M+iAIJvQ|aZTga z#;(RAjTahkHU74QSt4K3f60&~nM;b7R4-Y+WZRPNC8w5rx#YVgzb@%*5;eIr1vbSt zWjB>J&24IJ+S;_Q>Eouan*OuYVyVm0z@&+t53D@3^1{m7EAOrRt(|TsR+S?4HjE|Ma2m3- z)(03Ga<#!>!RpWunbJ-f1;;TurT5)3s#f1D=y{S_#=wRUgm@&#Jt9r~vMl>7n)9#f7L7t2SZ)7k$>54p&TH}N~B@$-`J3AR8vbM%TsVYFB^K&V!$?chK2 z7c#z5NXF-nC`hTop{Dsmh~bp6F2e3M+_}2e2JUiwQ!V$@2D_DVKiS}*`K@(0w7#hh zi>!N3;@|@AGTq4SY2dQ)UUD?xoO;~NjUY!ow+H6{zLTMrC76{U59Eyk(IAbdr#0>G z73gN;&9XAqI!){9BlAhqI?CWo<{)rD!NJmKh?ect0d@!uDUwHr*#V`nJu4KdqI`TK z939m%AD@Wu$fzi_&`~b*@ueLdab#pfIDBJS2YW|3z4!LX(5BE6bF<%1DQd0z@AX9pw0e4_~X!ZbGChCr`vC>X^yqvlA~5| zJ8Tw=i_B3_saBOm5n2~OJnA&u7xW6w!OFz2rT{bud26JMn;Y#N8cNYD<>Wa~XzAe0 zV?UN~2#Bg&sgMnqz8y;7_y%<|f-o0Te$L%X# zw|X}Y-PlfzTliPao{V*8l6G&L#_4rM>-p=eU`27THc#-2t&k&%Kp`5}{{3A95?@B_ z7ZSvH21`9rs@9WHTc>K(GNT0WQXr3(1I1v8Ua&ejS%D7@i;Tjy6p+Fj$V6zxi-#>G z#F0^IRwz^X@~fwAPpQmqEgL$TdwtA~IoyRsvj#VDUv^)e{P{cU-WfJybryE4Pwp)3 zId`UN?l;Rj&kEw_&X`+~ls<0INbOT~+*rJCcu`eKdBe@MUr%~{)vhyJo6@U`vio!M zXS{b`$35I#lKT%=3V*?4u0i^0FxL={*K?h< z*lqge_n?LmL&czoku%$2Rkqz07_$@tjlj#3GD2ymwo^JN?Nk)Q&Bsk`cquopjcQ$q zo4MMRTpg@v3-=fYpkHABN3;+2wt@k1-f~u`l15>bX!ffO3)6p*|MUm;_!4G{!dIzi zssi{(v=2^s?HZ*NMyc>kFMM_DRs0yNeKE$9rb1<|CTAyIwQXFyg`KtyKz zfXLL5W5XkoCWgavh8+mebvy+LZJ=P1$1GN1x~})iUOLFg@?lrZtHa=#tW9odC#-p13p<+DGk zDVbSuWH$XLcb#*3YIulk@x8xRea{tsx#!S#c+Ue2^`1BwpljmkF6m)}*n)+94I=x| zp&?3@Od17>%NMw4#Ga1_yN7A_XX0b)=+#(I6ftNrSf8hz9y5y3bBKdZtt!0#Frfv9127NY=y$Seke#Ir=6Ugozk?< z&Q?A?iZrc{(8>;wXGR-n;%KK}qL5)(L>W6c5`zaijMvCvME$B%QGmz3@G+rh4=h-@ z;Fn#Wy))sn(L1`gwl#XTzW!BZapvZt%oBGHe9Sa&xvsE~zfsq8ZcfIo(1>jwm)O+P{~Orl>F3_; zu5Tx}$pqYxnq4=78&~icq$9OZ+ANm?SwIHBbP4}EZg@uk7!2^z2OBbCbt9?Vo@;Bk zC;N^q-_`Zu7affuMfs^GsVz$VpY>zty36}t`=d5v*QAg3EbOpxil+8#;!@-U2TcG= zKG4aKvpSL1pd=}Xu2aN@zVJ*cO zT1yGf5Wy}No*9)s1Dowjv1weBouMw6hQ+8BJ!B-zbr@ByvA~o-z%sCp5B{T_IxHGo zUKkbjYaK9VB)wDU4SEOar-yiV5x%*OYvT@)b=Tt~jGVp;4+)X)Y+ltvQEr4Aks zkIN#I4j7JldSh=HY#isewsJ))R}$Uud~R2bm4LyRMl40M#@X$_?dIo~VIF{5>YiRs zZ|I$Zm*Zqyv5r#~artEatxyB9ndcE7qS=J-wnjg@ejXXxevWpQDOx+mtowP@DWTu_$xE{yp_H0mxb#9)2aqigJW!$^O=BA7Xn@gdYhD5eq&<&p8Fw|co^9c}IL`s~7 z3}GxJ@GrnKj07wn8+~<9yT(-$(?FDquZn0G@cRgea+Z}7w->YxQh70yg9ItVq8wP2 z0{kLrKV=vr1uIMhQXM9f`LOLXKACq?BAVG<(YWll6~pTCH1YJL^!ii-diWjp%1P{r zEl=M3`WAPJ+n~q$vCW6reziVz!uD}-!`>gA7)$3I;QqDi(4h@WU*%Rg^?TSmpla#8 z`Ue<&!8L!!J>;(C*5|{1`!L8sANz9ycYorHkLQdZ1^f9F(Y1zF&|VVIUPAE0+%>jV zj4e*l+S<|(H9`d>L{;F_lh_273Lz9$%TzS&1MVzM2XT@|AJCqA4|S!foCMxuF5t^t zFmX+&={VrPTX}oIr=p?a1~L0#d|SvvD~N3oD8yn#s#Ywvv9*<_YHev7r&O&COl36u zFW6m$o!Rm-DkYYg?2C$4n(QxZuj}@1t(ebUGH{_d!uRo(!%gj1o?y#^$Jed6FX-WP zZO7d$6|c_t{5NoXSFTxDHu>p{*E%Za6Rutl{=X&gqZ82r_9#Vb&)5i4v^HjEA687L zN5}-!0|N8pSU-rGz{8*g_MdU{ zxF_6p5UyNok3DT^e#@ncJ0Q~S!87d=jAY$74p&8 zvlb~@mWB5+1SwjI#vp0fJfq3UA)Xc{_L@KF2)zeO-0F zEN!+>m!Vz7K)Y_&_N~g~RMq5M805ASJ z_{n4^#R@4j5(|c92*qhjY?*4L00>KwHOo zGu^5Q6I4$}cq7am`9=Y^LNKbv)b1%EY{H0=MrW+< z;?8Ao_0Apkb#nz>PvW^I(^^Tk$A;J_OGaoVqOs7tPSCwdl@H}BjzP%^o_<5>0B650FZ%&0Q4afqY)PfoFHK?Jk8ywB9x#d zzJt;&jB;R~>JU6*kDN8umK1on)*{F?@PH7E6Bh@tO*B5yJunF5pQI3EQM-1FgaMMH zJ8;Aw>nx}aY{^~TyKt#1t5*vo$xl;zA%1!~g6Rfrlup%*eDaHFHbE!MCMIj9t%SCJ zTQgP}XTs{pC?IdeK`xwC^xp%sbmMcZNB_OMnA0~-_I?e6$J{zdLnuV?dZZD2I2(v( zNDOAn^RGi6{xwRrN&lOvU1Ezxxcff$>6WwH#;;D_Jb|a(IDONoR~X3R@$mvkq!nV%$k&G<_>Wun&$&uaq1V}=w(e`-fCU7lNs`ud!j!k==nhZ zWsk0ICRru7OJH23CsJwbJSFZDp&XQ^oRNUil)NCSl2b%?_FW?uK3~0^1PLK#Dd!it z^3Bp2?{%jfY>rhXu<_{9baszARTH0&B~SE;_1Dxi*W(qUcOYNr!^@&&I~1^UZ}NVuo91MT3JqIFhvSuiSI@>dM)$B)ukUbXVp3Kluz;?-STs6FD+|NM1=TKy?_jXg6R)Na7JJ z6@n=TULuEb43V5szh(S>a<+C0*4!-;Lg) zpRJ(tU3yEX_m(qjUTJ+glZ*!$!e3!L@C*+Mz}?4?;RBrv&=79{)G@B$>Tn%y^t{6z zzr!72pR_$u0$px^QUogq#;`&fvKNa9rG z15&Go9D8%wkY=}o0cFhfA%|lemc0SGheW*v%s4P}3goM?w`8o5KrC`VE{R$sv6dxj ztxa1eL;=Ox@hLJ0*yZXdHLZ$L8Dj=%B+aMD!Ij}PCRIOfm7mq{`g=_-q64Q|x2}BR zU-;47S!2r%Oq#%qD;~e+>7mPaPwlycOV0MXzK8wSO`f-h`)cPLc)5o{g8`ywsQhpM zrvMqM<>WANPKS?^70s!Coo zbb+)Ff}>W`1Hv~x?}&Goc8ib{18TDPov+gO~vH$AW z5v={FsiymUW@AUckTroS`u34GYGy|yf;6~t_H-k>eWZX`*U{R=!d(I!B0(^% z5&%T5MzcxqMC=BUFmNyV9AA`76-yaIT_NFGp-?SULAt3dVW1{tM7HytV>TD$19oor zt5gJx7&2zOyYny3KmXvngR^&Nb6ilt3>qF+^2zIR+XnZ-hH3Rrdp_8UXhQ>M&x`;Z z`9TCe93^Y~T-9p8lQ23-%P1^pp^qA7aq#oeBx!vlepHgyPwWtwq;+@!P6!?$Ya46_ zeq(?sXcY>L8W$Q)-uGMmS&bzjq?a zy)`bj>flc98}2{HzghKK`lPY3nGX)9kI<(sUet4b+Tv|<7h%Wz%#7;TyzKOw9AKO29G%~-wa%i%x#Caht9j(pj z$j#2pS`8927__-RaI!mz%B5D0kTbV(a0JRY8WTyNib0`(F_-aKO_PUgOFt7~$Q4u9 z*GfCIZ#F1PJ3(@#N|nE>)r5CT8r$W*k;_lDYyyR(iXI{wU82H2QWq-!-lO|1(yGLO6*SOkDav|b>8qmzi@bM*=b->e$q;I9H=W{bzdrqgn-$3j#j7|l?=)|5;h{prL0#@Jd z#3MT4hLKuqGjMMpXdRiO*ji>IMoMc3U)bhN)Vj!kWPHLN+)$ouX1WpSApwUBnA<2& zW(7Bqxll5eu81oxHW+Oy39{pz3pRauM)tbk+v2N=0w>*^h zfW$x+UIkM`@0vl02nTz(#?O+W#Z!0V%vP||$Chtx`Qy1gEXntA&gW=0{PLX>y3e_- zCttLO;5h(X#B(siWrf7xIk@r`TEatT#>(G32MmnykA|vYLc6!k@H$SnyVN2?G_kv2 z#kSS|@gMhb?ewBjT^Td3bnKqLKE=0!bhXn?yz@COJKpPh2z$LUW!{_IwVm)n7S9

O0}1(ESZ;0eUT`2C2NYVAQgIJhQi9VE0xqLwzVnOH$SW&&&ce7lX0nSdN} zp)cV`vZ3KYQ8#a#d2?Cfj)aAa5-S%^JNx=u+ad>+){HMtnmKj+035aDorJCZ2b82o zr^lzPC}?>zb-8oEn1q3uu`#*D08PH(KJ_)cMe0K2RwC6{JBX!Hha|03%%Vgs`wSpr z09~9UWJB1L3EHF%>vxR_8W;n!&jxR80#xEU5nPLt_;fxsBuqW z7XhOx$k?zjh9`--1Y&2}!d+%5CO#Gk4$K)FpNI$*B(q4=1sz1=LhS~S#bel8u} z^OA8Tc#Hn7{t9?RgFzw*Zk&h>5r{33SZohYv&p^Sqc9mnj({Z~1aGf+-Xz(!sG`nP zOBt&wb0#=T9^bPlIX*T%yDDk~EZ}AW_j~r3Zv&{pC)}Q;4$aci;$?tG^7bQL2lMrb z){?XWF%~6hiHYg!cRi2RsQvm-In~1{U8&XX`aDWjMd#M7=sgB>apjKCkbOtKKo=`l zOG_&&AA2bcrw~GhL0t|XM)G_U8R;9YiUPQ0U~<$#@ZZ39gZ*tFl#uYT+5sPK+hDKs zW-cqL+a2S*-grytIc1!ElH0!z$#UQaS2foL>S;rJTMng*nQO|hfv97Wz9;*;r(_W zw5ceQB|9&ix?UP)n^o*4=$TR-GXCrMfc90nW!&Libt{v{;JB(fDck?e!O2&Lc}0Y_ z0WK@3On3nx2mBUkj~KCwtYIevw#i)1hmnFcKv)E^3gAl;>chqk1W-OccwA&dSkdZ) z%3MuhSX6_$WL5IQF(aHZgElTXDAg4Ct{Z#a;^9wGXXFoCj17O4BAU* zlR?5FbHknE z0ZZEJ|Gio@-@B$Lc=`+ozm`-(_%(m0{WY(PP;)c%v_n^?h2P3>5{1>R@pEe*3WYP+ z0B?dbn+0beiU`#>Tgjc|=~|JK6TERPAp6-eu~a-lD<#Dqd`gPX%Q+cq8i*IbZ{G{a zb_Ch$gC+_9gklSslukXgF>cM0t6>Rvjtkco?3kBHT~+obxt@;*{>0_Xh%~{O+@_45 zxx@8e7cCFi+&19%8};x?Y9ZhpenCVDJE+Y7lP~J0kqIalxlCdW?`cY%94r}62X7$| z`Qxw)VUi1BeBxOa9_1S)Cl)74PNE1QSRSB*uh2KjC(0Zy0LJddH;k*FJZDa6!?=dT z#QOY(qNT9YymkZB<1cnAZ+j3JsS(af6j{Q5MuCP6QC_HtSoc2WYVYo_>iG!MXzM`=%)uO~ zisbhIiQpNFAo=2ky}#64)P1ldVr})L+7Sy%io)m3ob%nMx|)Hnjc8g~I;mwA&dDw> zU7IflHiH8MpCi0r!|G75-DX3ubsFCK#1T98|3^h z6e0R}Q|*tbM1o`nc(1^SGR$XE7%6zukaq4zMcGRkHNT}u^&>lG^!B=@#f!2V;wD6Y z^w~E@7gxuW_ip$EPdIxL=U+O*y>b2`x8uZ=y*OykUflnkz1%h3Uha!`7}eg*Z@v~V z&&~e9Ha#;&Oh}wcjfK9*k5OQ40xc6wx_M(cP6Bumq5eA zmX%NjzqR1u0v-f7ACk|*J~rjWo~6Z1Dj~~wQWxaD-$JsJ|B`G6|N3C}p zGC3hSdR(30^yGZ~^f{&RyFx`+MAqXXbKux6ZysCFANW*e|II z#fNS2x&*F++YyS}c-bX&hqN>7eOd0O7y&Q^5ez$(oic)vuju`QcGf?@jVs}I8ccPA z@XK9L=>@gcX6lOpA3>1&2+}xs`};Ey{rg)pDqr6L1FYQ`#@-sX6L{JaLkrR-j)8N_kog@vGz-VPS@xObRtNAHF#gv z2PBq`P+6kpD=K;GXEJ|%RqnNei$|@_IoR0PJ-ae{)SQa!%xb1%(IL3D=-|OcnUz%; z*;Q3AGSR7WW+Qls5RYphGXN!_R`Ab8U}Ftb0yOeElxG1TSf3(MQVP?zP?VcbZ=@RA z@G@?08&_vQ@P;0&u7FCV{scP*p2EA9VowSxvlT!oJ5!!K%G*@F@~nJOC{$9b^%vz> zR58YH=-~V*gX`8!ubZ;^25zNN%fBlr9upj)$;>aEJ)!uuy7ys*8mKb;17`3d(&HtO z*x9j8?w(eVrGCy306AX(X7Wg(%I$e&qIqT^<(-h;v!iZW-JJ9L^BpG^RwfLdG$CsG zwmFL~GS+sJ5|(rftWWM*J~cZjW=Q<_yjc^wBVmP!)z8nKgPnC69*4i4GKr7 zqU;B@dLQ-qG;Ip=N6fo}96~=O&+t)qIrz3NB*v3ki-mHrrGulZm;#5|9NO^K3jlvP zvVl?>KJq5}4ISFujb2lB-fMNT9^YLwOKo8#Pu_(yJJ(9FWk>a`SMk4|9y(uJR*(+0 z>uk6_WgOt^H2l(D5BQv7jpbus@ckgp2PFGa&eeyTXE`gK!{(}CD{3ueJ9(aSKt?|A)6n+R zJrR?B<*e#Z?O*O{yA^FrkV$@!_v4 z>#9!9SnB!C%F(0ut=dgSmZJ)~j3)amHpo+BgJ7G^#?quadFkwSV?&p5 zHR;%Y&+L0#6}KuEyKJ3(9pB|vX5-?TB&u#NUE67HuYq$}w; z273MgQsaZFZW((%COu))Uel=kjiZ7u-pkFV9>XsZk{V3d*=C)cB`TGBhE^q!z(%e_ z_1rsw+%jPvAc`?i0`FgLw!2XzJ~!hWP)@COEUB2dZE`{8+PI7v%j=%8r z-ot|cxPc`Z=_HlB0q0hkQeQ+B5+AcqigTo7b+J(X9x!``me;p@4 z=xy$U%K34u57LyEmvJC7L=quo?u9dfn;IZ071PuMCw$Wh&ve3KCn)u{8xJ3#EYM&% zWEE}zWyMe(6{AsD+N5YLEio$t$(6}4E09`9S*Qzw9agBWcwWCmDrkr`GzAc(ItO0q zfykfaWcUL^^e^btdlqr2+}9`Jx0$+>`g0|e#7+O8f{N7FcjR#C#=14Aa9XebH&pdQ z4G(b8dd{9yhrud*fGdS)9;Jf!qz%T}Djt`9CYn6u@q}$`%((nppKAD(LxOMo9N#bZ z0h%Nl`$(lPjYIHloXd=F3VV7!$2VVR#6uKlgoyk7Wr+A%q^W)SR2%la3=!Wa<#`{R zW*GG{M0}s2JO>!(DmRRVKGp~OKm^oI2I(WUZlodxD*jxAA}A4&lVU1M$5bsS5!XIt zZ^kVzK0OYy#aF<|NUWz+^r?a)v=o>t;hNVe*0;S>3^x;}D!HC=Q%M}P9DWe!c~zXg zcRgnbw1a9RK_}1Sut9-^I2&qec)B<{Kf^hx3T))D5N5b$xW>FzL#?M7$j-Lze-~ESi2oD(HDTiMqBN(Tt;9wIEfYs~7q4cjz4fr{* z(?Y|RCqr3^$lf@(QG6_m;fI{Sv4us0lK!4MR)jTpcrm=e6IaN6zr}yr1GhFTXN%^bs=GV`IA3&JO8p$ zuNu1&%AibDPzBq^buIgeuY-z=-aYQn&?7jO6bUttqc`Mn`PE~3XQx746p>QCiiM}* zKob@7c+6tC{27H_?o$nVgXadbaQ%H8pyD}WA2+v`#vv3k&Q*>M^Aw`6zrTq>FcQ?f zFeiA3Vt9zEQI2sWv%G`caX|c7R~@rpz_L|$%DP% zSQMynigfU$J*=&xp>_dz^h?xwIR1S%*hpyF=;%N)6w-)%ii#yx5pwc;w(5D_o+QUe zY4r0_Zm^(Du)`NNEJu!=0=_-Iqq~1r%Z!P^)6~}wy)$0jJaqOlhXHYU3Eo4;XAbq6 zqODo##{J?)_K({gC(aOfeR67LU3Br-DWl>C#(7PhJ^Y>1N!$I^m8E_|2Sz2#h>6He zN*EYB+*^}Ux9G{e5B37~`AQ8|2{ej_C9`PwK1A%OmzSN%j{dDjHFSg?{rmq@51a-$ z4(Q?Q`(h8l4f8BGTl!ze5L_|$K;?S)vQ0l9?r zuz9eH(jRy(4#jEuIXKZQV`&$oOw`822pq)%2Y8P(4E7%FB;Em*0kGL-37)rk6VjM= zGqVyATT%o9@0)`2&8HFgw=_vWE;Q1%ZwZ3;3*{;#9coO)Fm2Oz`gzWA5lw%6;=Go& zhbyxe`dSU2?m7Q*O$XHLUGQb<8l&b{?dqL6@%@^yBa3w|R#ca}Ej@lnG298_L}0RM5E}?5>(QB#uZq?4psX z62MfV(MDtV-9IA+>299dV2KE|7xQ#5Bhb|2L7yJg;DrD!0|Wcgl0Nmk2Tr@h_we_B zp~nY2Ese93e{Q5xWaM*N!Y)3(&yVsud;<@TD+Nfw6A%cVjRSqCAN%yFHiQ`a*x0<# z=i}#na2j{P*vHcHg+9l4c#LzEb6-LqVw>f16GWh6V8@G@&3c1AAArI&Zq8yy5BNVn zFtn$mAJi5&iao{PWQl=|%#oVu4FEnj$8RD)VB;wFCOX}iUg8tTpaJAjBuJd;e1poc4h4@q*s?m5Jct;Ag?v z?0+4Dr;8De@*j+R0(C09@`(U>u7@8}l{202%@*Pi$w3GW?X2w}K|xYIrgw9~janAu z)9(3Kcw0yR@yv+9G2!8ZO%1%#x{~{`c1X;i*rC)TV@vXkL*O^YGno#sEgr}h!TZiq zv5;XcyxiQCcJ?AMW84&HK&8;%zGj_~xBjtt zO-a#|>G2(ZtY1@JHl=1LH*4BEC3X}Wxxz-zMVC%~Ya(^*1Fq}nu)6H#$vckYbX|Ny zMnmD0H5|8LToBb1%-zjV>Fa~qF-7E=-zViMnP;TrCW2$^;_{46FZZY}<9qa>(@Q;Y z8vIZ#jN$3|;ut)gjI)%Rq{pljNNmIJ67rCY;~}ZO^};;niUY_$$RTEf3N(0^&kj;2 zu69uA0EN$cYO<$)t2roI>uV{po3tD2Iw$(cEJ}3~TVJR; zn3PwR%(;jVm$W0kuI#@R9++3auhO`J@})){(RY>PouDZ85a?At?!+Te5$~%|W?#jq zL74)&z zj5A+`W(3-89H&pbK`JaCKVK6b@gWaQA6*9CrNExYj4waa2sFV+4~3#HG^~WR2WXN2 z3L!O+y2@h}EF6jGAZxt_uJe_zf?(isckn=>H6AkfVSb6o0`{(LEG!@hk%Iq9>U-oK ziCVc?nGk*_>Wts3GUfcC7B-gRH>gMr;s2uobADlmzonJfm1}jywZ6Ok*SW6ao|ua< zm;LEE;Y{W1Nt554%oLU6kC|BCaQJY;Q(wLy^C~X>wAbMn6lBh->g2w7>ki=_;%S%j z9PY>CVkF8pVpJ^diwpWH&*89ourMQex==no&*;LB!gIKBlyo%YzmD>=fN;2Rl=RPd z4*%OI1n0(4GT?V~BM2wi+rI!yH_s(x6v8Ep5gORaHFHufNCebV8^_@#VuVRj{y);b z1TM;I{eRB;zB9u<8^f>)!zv=OjDUy&q9URqDv>Cn0-F1Viff2S=9c?TYGy=;W?nNh zv)nQ>ueUvKdAr`Svbx=V-LgXF<^O%oI|HM2@9+2d{OhB_@N(YgJm;L}JnQ#)gtAW+ z3i#(%Rj88(d_O4f9jZ!DsPFU~k)A2urtwX0tXyc~~8UrH092NjxWH?ix$0G*JQ1qc5a607dtrlLjcI$NL zX&8vY)?O|0^(6bW1nJDid+(9|ON!sv+S+R0a{D%X3q)@e&U&aSA=}^2Gr;Wa@JO1G%XVGT_K@v09Ie*5 z@_d{LTox$f6toZg!*M?5J6IW~Kz{Z2)Z-y`QyMlL=diqAD{ zL>zreTu^Cg$186guBunw>XaSI`mt+>#_;@AC68Ch;-%DGDUU{xYoxQ-ZH{-U;sy9) zakfd@i9!ai@=mR482Z8BbE-iUgZVDUxxg73(jKk6)nsy>GoJl>hR(c@raU9Rq0H4} za`H@7jB|z>L{Q&@<|?EEAClgiE@x0aFFr4zxeDoYH7Z%Ym<@ic@@>ii5jr2yGTX8I(Q36q`TG;;7?^Z7z&-Br@ zfU4n+XI8Rxw41!VTxUczkaz~;@EJAm)!Q#;P!6&3yYzXx$Y)A7NTm9uj^}%+?zBHm z9KgGlbUd#SdSyAOT-Z4}WY-k?B;{%06iz6o40~p{s@c909J62)s>t+K!JDM@K*2u% zXx#*rT2y&Y)X3lNfskIr^2OZ{M1Q%!aH zJ1tG(cc2+FE3-Oz@vx@)VoxtZmsl3z0%SZ1_?tCX3`Wt_z%RN30Pf*=m zjA{h%PHA-Q-)Y|#$+f)d)L(^MYj=Z>Stt4!T?==eq0o-%-3Z{L!4^Ofsu3lxf^cn0 zvRn4Z$u$-^);%VSs!>m}%NpOL7aHZOBjs8Y_AZ(&U6y~@%?nd=mLlSr(wZ;V(%b0_ zW5$RdV-NV50)2HRbD%dIL;43DdydRr#jS_rKuQ&OAUz#9P&ipaK>uFZsmr?k=?@aX zk4HYqv-Gcv10PHTA3CM&OiKgtn{N9$E_0LVBtf(Kit}4=@w{^Doy%NqHM3y?@f%Nc zoHafQm$=F(1rDwF_oI;ZrHtaxz8)B*fuDS3lu;}OwA|-k2gO9qdcOL~IHPd1lxGxj zQgCO39&Ie@fX%2qO3x0{n-DzILpbOLmw1UDL5OHcq8}f|&Ntp=r_tADbW6%;xPW_LX#TngnOtx)?9RYFSJp@FG)hgMN>t#3!k ztVIcKnN89fKc%b|w*mPOTd*^%kiNZC8QEO~AGKF9?9}9BwO2y8S2!$IFMV*VIu@$D z`T_4DqHYd&Byt{xp=QSEHw**J4EI#H`V1BCKivLCL(gdV44f{*&*dMB2VPrx>f;@4 zdznwkkZaZJ8swMczr>=PX~_D*gLYx&(Fx0Dz3^7Gux9yd-Hl)UknMYG`n)gBpJN3t z+?u(hZt+WR!AqDFv15pM6W)Wp8@2%H!gJYU(yNV2<|htxNKI)CUtu`;NVcms|8BRD zrm&B%??ZS77U38CbO#4_>^9t066%bxlQ0UGC;;)V@R^Q zycIIVVg0(;q4d@lI^L>fL)#Z&4BRL#`;%&nV>tDx4(ewrvMDjqdDrrsdS!RwtwjC1 ze3TwNI;iKB%AKRYo^@!(@$vVK@(`znMxk4Myh4qOjS&NBf{JI%7SvEwl;LW|Y~A3A zMOHsP$M5pb@ee+K@V!IZ-&Lr$+3tJqN|*Nz<^5m4g`}ho`Zt67kgXUW+62k%pJ{YR zbIRVwrw=Qi?x#;tVl18DbH%fm$57<$aUI;L6X6+nLB-cKCdY5W&IRUFJEUc^Lx$^A zT~R%VxFwWsH#aY}Q3nN_&apFP)oI8=?Vtn7^DIp;WRc#pmBj?hH#W6wl0OS&!PA`u z)?&gM`xv2d4f_Fw)`ShGR33z@dS{22eEqURxLO_PD@2lxdHD)IY$4FVlHu3l3u z0BZ;`Vtp zKRa__&!aj-p@M(j#6SNG2dtLw@7~HeMQiB5}KsnX!@MVb(U#l4(!!bMv-gPraY zkHl&JQW>Sw?s>r5NfKcW&e{F)Nf{>!RQ4fiRMXliAA&gQRG!Fh`UBp!mD3Cca2dQ+ zd0VH&z$+pYX*iB(RxSL6zpK+;aEwCM4j%>j?*lPZyouLUa65@cAzk>GLbK86lqL^S z0}0`X{QCJhrP2e`xX5NdKV=+Xv9v+zRU&d~Q4#J3D%w0@{^PQA)}*==IPyDDNoLj} z{JExI@9dT6r)vN zg$>?4+oD4qvuA)?a6s@Nz!&ON*_|(iTzFf-YXYJy;s#D-?vD$0YY>F(xib06YhKqv zq7NVJHjnCcL5LOgy4PZ!QfLuh?w7MwA*Z5d@A9^^GtXl&+c)5^a&0rRSSfF+JNX7e zd<1tO^2BNemjw7k#KuPW1W3T?B}jye79=gB@Br!lJZ}tQ)0YxcAvu|n=%MR`q8Ew}~Z`z~NXi_6QGE}u}ocuG!^ExUJmQqJZ7j0m7P zK69PX_H?9tyJFs)iiz{9$}z>%l+4T@{u@#N&I!-B;wSQPi(>(J@F#O`+seKZ`}Y`$+nf$7amjTy5DG zHMW~{BXL7@Zcu$~OvU3lG|GF@4Im|0;Z5-RlZK%%)G>+;KrGJ1L@hXbuQGOcx1~#` zJ^XCgf$*`gI>Rc{XBGwxYw06n=2k+|@#Pe(7`J>f38qR!=kgW#lX; zdIzWh$PHhN2i_y1>VU8*TnY^aWG9dA9~Ygfo{*By3$O(t29({@)WSNqsLa`(x={B7 z_bhkO-Au24dz@>I=mVQoyt$}i(!yoqCoPotH9nWTQF}T_Erk^7-(vr zE$69DVMiE|^{#>JOQ1Q~2w;;#rg4h^%W-PtfUW~$V!I6(HNIQn*nauLy5+i0_Zd}? zQZl?ZW>yI9B&ct~ZZe)!n><(Ok!zfAF*)$&8^p`-9s=whZG_R5+(m#yNV5rIZr34$ z`iFJ5`BnBl(tY@#%%JYJz{(uylZd#8^xjN}jEhXol4Uq2&@CJNt$Fsc3G3`FnJ~1n zTWFi`9OkHwuh@p}>k?XQ7Y7!z;)HeG`B&0U@h=WB_j^4#$aW%^{>8k}fBS~`k!Hbv z$cdiaW2WU~z=1(iq`O7mW{33o7hD=5JE!)M+|bw54L;p2xG&r-UT*kb3`UgK_O^m6 zi0L}1(sr(`OFfCOXPWIo@}9v%ZluQ-^o@?_!L~XIOw@I+Ec6|CxW8voc40DV@s;ut zoO5_0B)!H9cV;A3O3RAm;P#z3TMy(k;}b-Dq+6&xK^y`K2%fZm%%8;P8gG0a1N?8C zahIP=z{FblPr9pG9Y6UW{yU|x@UQc+lHsnTvHs~COZ_STjXpfi)%h0k`}~`Jf@j;? zcf!NDu##lJ6zIu+(VP&X*<)b6mOUiDi8uM26b0tAZ&FCZ;PZqQrJ;G^_h5$*?jXL8 z!tH0Mkkbmkv4eK<#A>)FmT_(ds88^`bS)Dl9C4*m z7;Y(C+azh(0?~T>m8Q8Sx4bE`NqwSqsMxso)n{L8n}YGMnuP0y@e=v?+^fgGhj{?B zkK0(C+3=MS7AZ$5CR+R^AEyDCys$dmJNbm;M72ygKkAS;b6Kt;;D#lye z-V-KR+v-Ebyd9#n``*%ByJ$w-JEXn_3UFkV^;Z*0uT}+IDln%(xd>@RToaZ_@OS3?#r zDByZFrvQ4kV|Sf^MrefoWkoiJe?Xu%5M0x0Rc;2%CBMXEwYo`=HYh0Q2)cF@S*oe< zQ?H7m8U>!mqt%)Ss2@;33O1=lh)ufjEgE?ai+myKqdU*Zf4-hn_{DDrwjSH{@$9Fz z_}qdZQW@c!nlv+|7ww_9w!H&g$0(|%3$N1L}EmaxxuVHUv10^i{4z$#qE zz8C<$g`yfq&!8RVqZfin4D$69MevLY$Q{IDxha6f?~o3xF(3dU(J__27bLMfrtDam z&%0mv7abq%zj25D)Ui`OFW-!t{NmIU`4T%PXR&kdoF6xjZI#E&9`x8sv9hh<pb4*%_o@e}4~mU}OgI&>9a_cc3&XPAsDZ+s}#|9ICuR zJ-Dx+RHzd3#L9+$)=ruiXur{gmA-MB4gB+ScWeIkKARqDZw&n9w+rf&XXW?LHp@WO z-*uG@xy2S-Sqs#pFXj2`chzlUn}53WKGvF_&i^IL+PNcmF7|)1ytt0LMza9&^HD5- zh81~{?j>YoIISU77JMNM{E3yy6R&W)D>=F23GPGYPpnd&@Ze9l_}fWJzrdeRq;!$| zSFATI#h{>$Q3%yLpG)#Be3Xa2cF6I>MCBQj0w|bTYv7fPfd9W+wmDD?QE7B4N?_FM zBSVm!g@ar}kJKH99a)A08SU zZ7T3T?q2d->DvA4f3i+EvtZ8H$wvrtYvQ;?$wTF@7szJ^#79JXE%wx%^PV~J(vf%A zq&EpaBNoYtjq=SFKyV4|@4-^5flX+}Es&ZW>=_y5YfwjlZe(JpRY7XtEa3_Q5|_cn zn!p^C8U}m;qmgAo)1j(2el`Ij933N4o+TQ8VE3n{=&kVe@bcGqHZo?}>uX!i9Xq;g zrTo+1inotkF4R|VjeRv`N8#kXBjgVTgytQ7aklKMNj!RK%Bh0~|I#(&g~vXVf3juS zPikv+ywbKVI(f|g@htd>XB#ROVqp-k@RhuHoK1fcm6DQpy)- z?}?MTWEO3xTJ_`pQ=c&RCwIR#py01x*NP_!wvAYKq-t?y)R>354;aIBCmzpCSf5e7a>|(H z?1veXii*cVm^3l;jQrh2?UYWaH8JF4;bT-WFgQAw?X> zJz6TG=JvHeuOKt^#BoOpOkOObDO6xuw^bN8T5F;ggL44S;_sIXs0-1O92%B z<0wL2W)&dpJ7I)4{1VvnAEQYEw&w3)gzjMr9(XW*GJ<)t;n@<5}_?IXD2G zmw*7^so`vCnF_%z)dP#f^P5qQpt1o`T2RF#8%wxIsp5Fswm_xi`oOPIyF$hp7S_sDi%U_bXTv%8dA;?Df^l(y?oHxzLQeq((j!j;lbKZ}WM zOV~PGjzp(Gb&FuFCa=8yX^FmBc@wI$eX2cshll(23mh}bGtQWnBkw#WrEHry!L#1b zr)JT;ugblayL(qmWjl5scw&*g1~(MpDxty?)WKAsU5SN}F?%myS4v)5l@1$$<9EOZ z1$kkiK&GJ5MgS?r;Bow)`He&5&)W!HX2VlYA7q!&m13(b+@z64%4Omm?C(U%dr`+5 zqJvmM0vlA4kPz(?(bXCi9gWPgXuj8>7bYv2x)}y7hKMfv#a^{dhD>kk8{OXLEC%5$&P?Fw7C=1rC{%##hC>6dhX`EL!-S+U2 zfvZQ2pOK!_KQZmu$Bz8aT@zM6e*Wo5$!&A}$Zg|4!piZ;rBn>wjO4r-iv4;Qya}Y0 z^D&#f^hT_i5%4>>3Y;s4g9|;wu~i&O4}}#X(r|zQu7}Mk9_!vUH*4&8<7#=qwdQL# zy)KD2Lf={EWnG}J_Z>H)??_=oTfTTQr*MnCqIYZv%pe8-DjxC-*pKvft&ijx%ZMTdeb1SZ)xL?o@9aKu z)|Tl_WebGnSLBxG(+4KZk_SoE?E0r8o_#~Eo3)d9ZP~Py?-6+<$AGjF;t8PIJR|&( z9_ZhJctZCJ!Qeh1r#es}Nrno{Cw^R6edVxmC(6bQn6-QT9>$)ouTSVUXV9$UGuX-E zs)ER#i%W9X6pdPu)w6GG`iHyEvb`zT zWc!zY1D5dkEyKr6XBPRl-x~Hadh`aE93%%Xwt%J1E-6t+chTkVL(hyf7 z!+~!C!6#*`byC>!`rx_p6|YOe(op%t0)J-|r{78;kkVs8aNSA!K45Tw!TfwQUChk02L<#0%0%*No*plN@r=~6VJY!+=1ECfJA zdX6Abz5{x*V6&wHA?kzYFYY@weM{|kt7DF=-?-_3{Q1T5M&VZNpu(W~`irxTzMsGR z2Fq=%TrdB4P`=$os5{m4ddn@j@l|g*PI~XlDJ$*Uyc^JJh~r!WRWcu%2Xe7}(TrEE z^F!BJ(5BOSf>x)e9tXgoNSdHX5|pfobS($C58?QV4vBhq(o91v+jGqRNq?X8jOf^$ ztjY6C33B>bVL~7GlpY3Kms}}-{^RIGG^Xv2>@zOcYq{mo-K@&KP|RkxhG*%P24P(` zqPlc4%DIB5LOw{PHtD>ASfDq6V?9X0;4wasL<_`FUuDFia3=9ia87f`f_xtNo#$>$ zYS}7Z|Gu(u^6AS#)0(CQELp-5G{)AMhIiN&_)8Ycao_pK;p}gQOV5`sW^J-+L0)a0 zmztuGxJ%X5*dK(5V~ElKJ3C0DGkdDQn{c{BIk1cZo^7B&KLJP?(`+gOJbWgXO@lLG zb1G<%9&GWdt&czYg8cKA{k{7&_BHhHQ?j8bs3~;iC!5DDu=HBzd*SeltoD>VSw40f z$mU7%H~Hx!iw>~NBY%S7ctc)(e&X=aqajPlt~gBD>WcSAHBCMbnM%p(xW%8?fx`vg zmFlQs<+ymV$?r6cTV?PP!Ds#lHM`*ZY1|2f^$d+T+hRdYvjtd0Mn8c4px{|S_3v;E zQIRv*2gH7kEs&~!T~X|WN1R0~v>GjiN}_W6_vv3cJuqbI4Eat&3q;RZt61Mfo;(J< zD5^|8QKx);cbO|5-Q8z&kv)hYztP|M+C$^>UOG%VheCT5xIK~6-ch&gj0u8r@~cqS zj9~83La0X+4gUVHo&6;Pyf%govOBys;VLqaU5zr=MjCI+A7l%&y4W{*ynd9o)3_`D z(AiEyzW0w^nI#uK;te&TQ2Oa?r~zsn=W{zf(Y18V0yAvrpecbEs=8OkC-uOlX}`lO)cBJOW0F4lbu3$sqf@hnQuO;s#*QSe07NYDPZ?LthMYg zkNyk$SV*yNlJ|bqst&m~pJi9gvO949HI%by0Hv|nW`9pTxDQ|ecNIFS7~KO9u+)B_AI0p1U{N*nMqsqSzBV;n=Sil&ErNrbl}l_G_WG z9M8N;&j_iixym!nEO*SHSgzx~K~EJS$*V;7a8I~uwVq(0ji+gmI$(oS4SztZm91+* z8;kAC+#+9<#}pnMDUSxM`9IWMkaSnamSZp8=Z(f)IfkSHc;tzj7@lC>A0yI;29*ec>`=oy-L(+yxcVgt;9qhPiXgqo9h6Vq%>dL zJouY#Wwf=75c1@$udpdw8@CF}uiML5^=tBuJ&k+p)$fQZ;iNrRIL-f9?Xkiq_9*&; z_q9R-$3Tw75JG`y@%KkBB7c9+sHo8Vk|@d3fHoS=Bd+)*oR&UpXr&h*mAN}{$T}P{ z-0C8&MvA%8QoCoP{L6`3jRhagdHK40_M?zDU%9b-YSXE_xgXWGT#;7q`7lCbYFxAO z&vS-1#%CPf^y`MkEz`;uF3r!Pm_MYkdLLgM>Q>_AqgIJ-NF0SykZf>3#E8fd1s*Il zM2TSQ4jmmMi7l7qx1KuMCtPYPxD2$I>+%BWOl!WF&a8{?#XHW-K7JmKJI;fnCdpt> zavvOTPQsf#NNdyzXaeDeJ_63(2D~Q=u^u}Bua{yk$vt;bsrgRf_4n+d!UuLl670Q% zH#wgnPt`P*iR-&YMUFlwL9w$Qkery$?_}i_`AQ4(`@M8TQ-~1E?7^4=@vkEugP-3Q z5pZw<5doZrS=_@;w_k^k-|;*lfM^gAquY_>9Oa;Kk34n|mn@i>S+Qpf9_We&*S}-e zaDSNvp1Ty%s^KjoD_8*zJs2|~bnM`12g>EEEyt70eY4s23-;n=-}>sknqrn7kc{@_ zC#OF?OE`M(*wyFh%|tnT{h+jp-*gXp)r;hMH6#$E3vguJ)uIrNCZH5ZaU5XMBwCU`^g>4Beg#=kO^Tj_6_B(7THRe$Vw|JyyN%0W{98n%e-m^KR?F5o*n)~z7rtOzKCmli=mpv=aObxhzkkJjOi~yn@O^=O z^MGu3S8l)mMYgB8$oA_F+5RM&vYfTD@9V=zwzoKCd+1L4CZ}wN7Yw^qQ-rsQ$nFP< zbhc5AoMN@wOYjz%(F@2CUbOgR*U%TZeO|wgz0B2+eJllC`)VF< znU6!Ps2wL;KXIrXxXJKd@h;x$4oQuELkt%NV{Y!E8zd&B`p_$t7Xp6wLG35)|MnWD zGD14fhIH;iwnKs1xRtfKVGG@f$99bZr~d8?Y36xi<7pR;LM;6>b$%~FQW-5-6lyw^RkY1WyEv`3pfcXLr<(TiA$>y ztpFcr|D@f~EMIuHP5wb6pH`GEmYKumGvvg(+ke^d{mK`g-TFoS3mgMw^f#2!Jz$X1 zWsG%YHv6+H@Sq9p(1oO3SRq0YL1ar*`TC+GlCQ6ur(ksR!74eU zo zNq_(QztLW+TsXIP+p<+8r+7XUvVb*&vH`ADViotG!!z}9g?{1fZ!l0&xxrtn@`nxX z?{I!~(n0N8(^4Z*Eh1?p(V0lj{V+=VR`LM>Wkg@O>CU!%HfM}^ntXSmEYDWwpL=BQ z-rBGBp1H!dP1syKdUWZf!4`JvGxjkHjI-qUtTl9xdPtrkj;^?H^osn}zB^?#ch{_3 zxb%^#$?_$qSJ?<}h6$cBt`n$ztyUmFTdm$I75r2xy*E5&|H1oDTCBRGLonIMk)m1e z=u+6(u|qiY{A=>pvnEctvi6-%HZr$wnQqypmFqX`x)Ocs*s00Vn6+zfW=kRS#!lGv z@RxskgY|B<*CxoMTQa3^9} zv93-Bi$=@4-Z~u`9cV1jR<6!(8M<@-uG3Ff+RCS{KED6hGpC2H+gATb%AOT3NM7B; zS1g(K^q{_3!_o!}FWNC=%Zj3!iga7%;DqWtT47r86iqCw!C2CxbW)&a#2_>vlL7<5 zyFex((B+CI;4B)zmgCT*#46I3kQq+}Qw$6Y z?qd$tbv5|GNf_a$Pw-HCDk(Bjta`OqPsdCTMLtS=XUot$i zOKRGbL*?a_>AgqwY&kA9KeChE*>!t`ew}^~({En4#b=H2qw7Q2-{kPE-&Gmc`0SAX zxpnOp{P@P(y~1RRqPd8@YqVU=lhUcM5E{ z#zhf^k(FdV1h(UagZd?)eoA~Nqv>y(( z|0uahh49V6L(9wo2(tv}ys!aWyE)N)$}4i{XmyzUX+~meI!8_{ep z6&mM`ZX+Q5xF`Az+a_E9c)r4~b$FL2FfzTFTP|*J57ASn;V*OQ3yd0ElFCRn*42rE zrM&5@<|+1XrZ#uTNr6tax?$iuuy$fN$P-MSkn39LfIb|F5@SV(~{b?99FAw;pj53pH!+ z$g%4B|Jl5`(UazS5_3mq0?iktH@=UpeXK zh8kxN2vjZcv*J%$vEJKXgEm|mjW_Q-p@jK6lmae&$#|i5WdI`u4R98vrLi3`F@=M+ z{Uy=A=}t?(pg6b9AIsnPr%HJ*pGLpse|(RRY@HoE|49;+2BN_B4pSH4GlaXWoeaPgv%pvnW-pqb-tQe;^ z6`nQUU~6QmXE&WC+^9*4OadaBecC35u>Ve(kE7^tB^3G&%|+6lSh(H2YW}%fle1h_Kp!RHyV+(0ilK-NeI|= z^hk2JqHsiLVYp)Ka4=wT6ip*0l{LTlmo>k&4BFatW7U@Pp>k*l`{2<>XV=;GN@M=< z@q6;QgCV{QB&}$qebr?Hh_pdU+#^Z$eUqNq?Un=VISD zVx-)@A=M_8a^fCnZ~Mu*Z?~PgF3B=(j>d_tSxh{7>bksi^8T^avnDhY&lirJm;dy_ z?Q=PPbeqU2|M=ze;*IjZ57cek&b$s+!98^1D|0@u4#|2?pX%ies{0{t1 z{I7U$bo1gKqfTYrfN~qEiFC(Z9zCc;6%!K~>kcEs-90i^6=^nN;f;>aB)24$W#=M? zXNWNhs1Q;VKc7^S?NC8@**59T6j0@e8-hfT8jaCm0iHYlUjKxpIkExW)iN@cb!#^7 z82#KzE67){H`HTlUszFeYYV!-wcS3vA6Sdm#o&s_ZPlOclZO%j2j)n&2gf{O*B~fS z$)RKdIy12`L&wdo#D{bcGzgt&9UUKOKRef`V<#&yMeG|#brelak^az&8Ja)tLWrL? ze_Z~0GW*Di5N};|`n<8!0`f8|J%JXG#}00b=(luhVC=>$(CFweh5Hx23Pl&;$Qc?! z&TxGHzu@EnOsU#&#*-MrQ)-HX97v_$bzrMm2 z+9itg$+)4FPt2MBOHiCe~F`?n2U=mDjW`j;|cEfC(_X5dbRB)jZSn(I!Hx)WbydC;|w7<7> zf+B|fIWzoy0!1Yr<6J(6g(M$@6-hA(5=C5n;}N`*)mchO9R$ zqB!p>`wj{wYye+hXLhNhR*|d(XpCefAl&0>B?!>Ne7PPbIix&-3?@s6&S(~cEU@aF zI924kvGK+xYEpYlt{RzB6`|Wu@Qp2P9@%@xAGF}glS^5(^y+`?!-ah*9n#!FE;@B+ zre@uUnmL)Ji?o!#i03JpS@tmSpIP3j` zI7eM@$sQbKA-ko-)?#9ub(9ZOqN0XOg}iH885bl?WgMy@?Tt4fX3nU_og(;2Ny-xm#+Q$Z}Px_5*uV>w^g4*^5`BxUF`X1w> zj{{1zsFj_CKhGlE<~~{bXu3Kqo5%Lb8-1D}{cm@(=sTt?>1lgR%B^I_C2t>n7JP zaZU?kVO}EDRUm^9{S44wj^<{2gKE_rv$I-|o0jS_OCjE)>_koa0yOt>OxN$v^1mKs zQ6nL>F>9fL&)OUHU!LB4<~9uHm^&X0ZSNc`5aQg&AFExTdYP-Z zw>{x$H*h2!jY_Td)M(s9qZ^VD>6WH8G78!a;t5QhrpD=u5}V}9jn|o8z8-;;l|OG} zx#H)c_hd=39t~qp%j3dmCy`oAIghaQv#kn_j+>7G-J89<(W+GIWEyh3aF9#86OXSDGj#}m0pzbpJPS`Bo!Q912L8wR7)c&2@R`~Zt=-jAj zhQDACZtJ9Mf2mKOkfI_nIyqSoHG+Rwy4E8n$8Q)~ml1mr`{bO4c&2YLUkFKL#*-G8 zOxC;wR|a$;r(5y=@FU7>eBig#XYO6tC1ncLIn%PI_bkeaUY9j#L-EWdlUnA@ul{Yl z^V9X&lh!}1e7cDJv;WkrY5k@Q0iT z9DRt&yWz#CMr9}Xg-3)B zD=|eFq52Oi(Z%RuLSwRGhQ~xq2JWHpafPG zB5#V~jr2lFhbVpYW-SiToDDu_y&Ni5{e0p`LQK82$J}K%>krn~*2V7G5U^=}2)@R8 z!V=)9Rspcc;#GOsQ94~Dxa#R^@GU@yCo(W9dC2AaFiVr$t zgbo{k&jqvdN6##dXyWjba4-|zS{(KOdRIZ#iD*7o_^*FTZpls`>c+Q@Q3-}+$9nxtyK+OUaZQx>!8f*~(mua#?xvA-a&z5W!va5AhE%TCJ*~ zC04BwTgK>|6;0=lR|w03wcvjtD#ZQ$0xFZzP)38lP?o@#Pdu>xiy^EzP#$FVWXnV3 zoh)`~ea+7I?=%PPar4_5w0|NSc)jF_+`_r)q&F_t_p7Lr*QIUEV4gpF)fE=iGf#xN zlGfrfkyKaPTh-0#vs}IgsSt9^HpT}Biv}MbE>^onX#BKjfODTfRitT04;$K3u;dkY zWJ=E{5~{S(6f=!~jESh5@15Bz4XQo8Z^6n@yQVIzms?9_*7hk$YP-9*e!{Wp!s4hw zc{3hglQ=kZh;rEP-F)S5tCmz>n6)Y9$m55Ko*35rk2N(_uT2lH2tBf@(a-adaOeRC zU}w_(K(RQ~xp)TZqa<%{A0J=j8~H*Vs z0FyAJrV1N}muQOJ9$&R~>%-HBE?m8I+QR3bEL?5t)vM>+$us9pK6K(#u(ok@)w>AoK z_oyguPp!x_MsLJgy&Vy8^58q7t(~x0)(FP!bmTKZRe*X4-Yb_EKhT`{etfTscVCrv zg(S5!u+;OcBK`cH@-FOyE+@zAoV2*Ec<-bItL4^*=VWJ%nJs;E{_D2))F4{|NN{Sq0g)+C~mAh2>vb>ZmV}-9$Lg^ks0kCU=Y!8((FcAKFGZg zbrR`abmQtTT9O^Q1zKjIDH>(|_?fAp9H_=W6t-d~7he>l%R=_68foE)ljoWjOPWi< zZDHz^DfXR0OwWPxNZ}p(dqTWDfgK&3Xum;shNJ!xSuG23SD;s0`%UQ(Y*Gs}0@TNQ z0|d*>pbDlAiwPhBS3XZb#x2j;V>DY0l%t(WJ(z$g3E`(T2%De$v2N{8+jjl@Slh+K zXGhk*R5+;o#@6JgM;}=dv6ZQxJlwwi3EBRP+|YB-)Y{m+%Y=2zoRYIZzC-sZqWo&g zsia<1h{xbITly^J3}y>w?0-^uo{&T#2!}mI=|(jQal>?_$JD3LaPT|O66t9%&H1#g z^XYMTIu~O{3w=LSo_@#i^Z@76ah*?(1SO~V(^-E}o=#VuMn0Q^5{u($aIP92-dyzs z9%r{^8~x!w^h8Y9)6-v);7oM{VD&&NiK7y8B`-pWyjl=^qYI>lqpvxaRv!SVsD4|rE=O`%-JCFth zO4N2E%4HR!g`+Jy%=fE_tk|JegLJ5^tyvl^!`6KJRKx93zwN9G z;36HmQwpPgfKJO%D|^_YHy3YRSzf7O*F75g{SI=ypekm;dEBywsWunfd%` z#Zn^~js9jhK3r{}8y4GuA1HX9)P>J3du>^tLq)3&9$NYE{>;A5l++z)TbwgH)ix`y zpuAjY%$c2@GG|ahd8Kfz?xlY`GQVX*{fRkqr_MPnzcRLR;%^6WR z19Jv)oM_}W4mvz~LSIct=2$7o7Bfz+*}&;bq4S)A#GPFuyC!5EZ$6Zp*2h*hLF21m zXN1-{8?;)>8P6Dv?AC;o@eS*fii&8405q>a3tb7Ie$)bh>!YKFTsdCn1d$M2J&Y5B1&bH6NRP|A#YLqN$0dbEQtQliI=tHUY(7-#Oaf2C2JK#RM z4ph@dKvznWMQbxd?ZlrLwzQ4)t&s;XxxRLqEWcjM&e`p?wd~9jOuvqWq<^ta{s9dj zQn*ZoGGLM3f!*Z+9YD_nwOZ7uAly}Mq8n^$r2{5RNtmvRsvm{AC9^x=Ud@uFZ3?B{Wr$PAMZWMRX z$gGy-u{pbBYlS@K4j&oENSX|Jrbd>T&k4a@&{9WL>}N293_hE?C{338-?Y zFUyx%x^N4*r=JO5*t-bc_J7-d#0?V!kKaMm9Y?DMLz-(*whd6P;1G5482Y&dzy_d%^w?_G{12*-V^vONH!~20TqmizO z88|QQ@bDmGOYy-#Iy)L~YNE7{aU;`0T*8Rye5<6nVf156{=-vD6_6eTe(vea}yzqW6wMw9wlFLRG8 zeP~Z@6;gyY;7&F#xF%r%+J(kuw(T&*E(;lMvrzm?s~nb z?IMPC`dSb%E(oedAx$)@&!Ju;ir%R* zgo>hvpP@^jM`tfr{!T8L5q4FCHL+6BxwR&;dmNWD%MYE@Yr@>ZP2;O-R(`Ope`at- z?wkV=fO=~T z7E5fbSA;4w#EVY^<~ph8WV3VbaS#J#E=uUl#I*~q*hV8c4p)zbXJQCJ)0WRH8{Fr} z`UUH5^-VYsSy@z=oi}!%|DgPCy$1A&%u!#SQ!-+4Si$tqzU{c!RCZc?J1!uT;D?VY_)QJa);qsf?4NHUe zZD$K=${h>`zkma+J*WO2Qq2=S2n&QlD59-|s+0g!nKalIS*rfY$zR}51NjkH4@sNrI3ueqO9W!F(au3zQ>E1(@PoGg=iaeVUrS&tW zFCXIV&H_T>O%ia1{DZqoUSU0ZX(T8&)|7M!{vZo91B=b^51fXC%g6tt^W^-WE(6pY za*VrV{Ts>jKQ@K|>c2TE1xi&4GuX_yl2U9bHZ-}$#e_ekBcZh}Sp_!d*YvN=@p%e; zjz4O;?8%%2yVdaA(WZ{#tasK{M8L`8F!If2{#68{Y70Dz;e9nlEa7$apIPF}-&C_- zSNmL;iFzc%y<5yj{*n1eFU`b%_s%nYTjK25$Y0f0Gec|BZ2YH@@q_)VYid@nu6guv zxoS23W4Bsn&gs!TBXMTg^`$vIBD*DI#i~ z#Qvj_2DnMy1A2`pVdddr;US;ziHpjYTRkSb6|*h!yzvz{VMX#eZ8Idl2n(~DDmdG_ zYnSjYzOa3}pmRI)rUYfp=%l)fYH$%g9xjDBFc zVef>LA*loA_nLQXC19)__onk`{bpN4FbpL<=XGG2!qkwjUR0f>J1Xw9& zf!mOToesNM6_pZ&vi_75shfgfAa(18wu9Z61gwoe${FpzE&?JtYHw)&bk01@W#*JX zWlW3YegNR}ptB4TzHESbfasJ$qt42|KDFbSZh^YsP>VU;*P|dWzc|v@9DZodE9*k+ z|Gu#A$ScyuVEe3N7c{RwTrL*Mcjf7qwmdeZzJK(P@Q`4GXI)tFpgyxxdri;SeT0?0 zt6|fhLf7fJ^K+3}sVc&@vv2`V3kO5Sk$Ebp}yql-%=6BuOz(;K+uAOzjl! zf(QqrXcGcf{&RC#LV8q`-uB3sFU@YL{=Qkb`ZHTuYgp|z2m04J`}abWxEUOs37c{a zkK)Fw60$AkhzOOtSD@A%FeUD~ZopeX8UX~4vx=A3a&bQ!85zVtlyPx%B+ogx3~bx}Pu^xKf-*Vj~3`%M*An(g_Y|4v16NAzg?(8fArC}}^ziXijOV zCN~ibLu`SE}HLaCfhJGA{Y5Pqw(G za#Hoe$(1#8;Vl7Hr!7l9HgW#EiRD!b$2)*HfkJ4L$`B#D#Jw&07rg{et*1Z05-;jG z!Xek`v=K4b&U9{_NG;gmLR@k7=?O=3e%-v%klD}VrStFEBQZ^?*}Err9Yhfn9rhboCfi zlGatHHu)g?PvryklzWs>W}`Tksbb&p3BLufQ5ET%iY&0sY!iIml_F3ck;3sHTOj zVndo*zx@B=kH+^`6*%#KX9^?H%K?Y zh9ECen4^-Lya{PG_~EpUKEEVCDDz$E@$2kWux zZ%4O+xznsGYW>z8?zMmgDBTLs)%WIQs(MBhzdBF)0YWX3==2Z-JzNQZO#nI=t_{62 zyGVtmg$_ECJ85%d%#r7d%8=U~HW5;hYCEb@QM$$~`nz-k>o^lJnd3a5l{N;~d zec}IV^J{)A;9y~=jT;^ zeEiBy#vRD1MLO#CMStJNKB)<3YRld$*0z?b%gZ;^cb_JlfULFmkZ#BeVPR@j{acY< zk59goZnUFY0X|uH?_K(&?L~aD4G6I4$bD}TBr&s}l}@%>G#lV4@i^`U+%%3XE28uk z#-2mlQA#TA%&G{Q=37>l-7}_Fa=+Qt>hDIDS!TbiOX<-q(5=#|NX6P(+~4P2y^q(Q zA6K4HO;)l^^!kqbi}K+*d(qN35AplUrBk8#qJYL6i*`!17bLaL^3wNk}vACE0vTxmt%kn zUr@{)esn)eE$f-L>Z#{nUGVDHTjn)blU|tr<~uJi?-S2Y8EG4ny6i&Dsz+z82u(Sf z>VAC7r%%jKC&Yz5QT)RvF9Fu$&l|^$8d+xlL1zDMAH6m_`nEjw^&>B?-SBg}YGA<8 zU)al6cXMCq6jVKY#(n<&*4wp_UBS@sjVWd>P_tJCV-rECc$`HE+nIxXTk@^%<*VVWXWy2-Y@StqB6HJ+pW5RVy#MJF8@IAs-~1v?Xkh;G z*A4QQCuG*#Fs}kM0Wnv+qmF@Oi%|8-4i?-clYxU0N$v)wH&AhxLC14M9Wstn!?iht zQ}u7)D=aqUN2BOcF|TktE3Mx|*Q{+(Bi|alaxNSFKUZ4L`jy`by_L`u&q7ZvpKX~s zZRry;#gp>!0Qs}$t~NaN&{Sk^fA$$N^QuxR#?GJg@DOZIUJIFn*jyBN7pSoWTYv!) z92^iR1{kfV&9vT+1L8;)cJl6zz(6{xBU1@d6RLyy^DFZEIl}Bvpn{w`y7r~whFN#z zAKm0Lj{3-)l#f~WlNTEDR;z7t+gH0XAA0Q*jt~;b+{g4)iX$(unB9dN27=xUNW=}O zcH;B~YCHi?XYurObJw|3m#T=4nT^$CkA9(^sDeQcHEHIFSUSkmWF-w!VKOmSp5+mW<-{NR>U zi)GoCu0b2Kpot*OS(*#PT{O=m$*t3PibfP%qi>)_B)nRjZbv6(0#xGVM+g&eG~S4` z7y$BWw8F@J+m_06j*DY9wKdPKF7pqN0{cJ45j%j+D;(Riw_!@g@~=qKJp^U(B+i{D z_p#|EH$AF=^mSb-4R8Gm53#W!UE(k70}QNO?Z`7Xg$+ZSUP#%>{9u&7NNF2 z*qmP_^TgnbP;su`oE`u{+x+p+kVM6DNUumh=;p$Ae_3?c!Q zpbsd$k8cy#`GNIRH+$barHm)HFPE!MuOq>NEipL$f z;e^xW!Ukdo(Pa`vsrJmXL(3l7H?vf}b(C4#rnY?3JOLudYjqNeUX&^+s+3ZyrKoaB zPGW`fFmpbPnK>FLGgvA3UJ-<5){*ZN&fhUz4weE!<=97-W@-ak0^Ca{8+SGD&<(B_ zk@}HP&l>I3>`e2z!D{y1x^=QeJ8aW-IgMS}GR59kxX`^~uH08FWfws0X6#Xl&<4YE z#iLa)kI<8Jwi2Q2dX5f#1l zNlgj5hb!jpo#j4uUY`>}EK8H!*tBVn^zmS2Q>V%Yy|QP|k(*i3j3WDYf^pbfxkadB zNwmh;bz0&pdN8Z{W?OY$F;O1DVWA?Ri%>)E;i2_*6VdowL;^<)0Bal(Lznfoa90?e zGt|&JtGDmtbDZEpIy?G7_<%ThxdSz4!*4DOZ?cd_AcMQd;u^UhcvVD$pCIo*)*#D1Klb%h~l}wo1 zFw>)SM&^rHjb2!dnGbh!BygA0iWpby#)1^jDc}oIB_HJr!rD*CW26|(HC4W) zZ-U9#{Ppi62kIi1*3Oh0o|n%5QnIyr-VexB!> z$JV<@tMT=0jFO~<6IZSaHVj4o#`c5qaD(Bz%%?v>~55rhqnqE!z@)rsR5_bVJTB{d-?Dloi% z*4T-4H4j%*UVLp!S?`Q7yM`u?Ni3bPr)l|yfpgXk+BGldoo%5)?S(ZF5w)56l1GE` zrp?dwnd@d76S#CN)d!mw6;EAX(#4Y6JtEe_D_~=cBuy_VC`${`1*eY6*|V9n^~<^n~^T8y5&{9q@dCo-ElLZStGXb?H~PQ7m|2Z~oHN z(3;NRW~zku(gIr+=g&(78kQQ}(C81HL^^&vTErZ?g_kBnNjIkf<|b2+zE8~U)+ahM zv!A`~<%7)=(S@>{sV7XBqrRY9qmL`AzlSuXw$Z1y3N`Nu(QmKpg?CQC{bH30@J`?k zsdU~(^b^;qExeAK-iHVTSpfv}jcc!Co3e-r&DjP~(&QHJ>pN^>ZfsOcP`AE`^71cX z2<*R_Rr$iJtY}q5cellwjEQYmXn*k8k>w_=Aj?f$sHQHXRB_;J&qvh+oF4Awu2r6r zYE(+ifwR3CJ+(vjb-$r_6Y*26suU3?dIxHj-KJngIpQFFj;~3c?`W@6H*1m*J?)`N z&kl~#2AKS`9@)Y1NN0*4T;eB69$h0mA^^li$zwRcPW()Rjf@dwHE_$FP&2tH7ZZ&G zXpB^(m!A=ddQb+*vti*!72uKj806{gmp{Jfm!F!EDI9;}X%_ct%p81q>NWcZwj8$= zZ_b*(Ah9f|pWDTMe;F?>{YkF+A4_J^kkmL9_1Sl9Q)}>y{=Jgrzde!=Z+%yO?exA6 zx)vsNPh|Un$CFt$l4e!jz8O`fgqxR$`l!GtUrS&}0;bh9!h%c50B8sgj|2!MEGEs# z;a{W)87N7EGW@ZboiifeG z*uvklFN+F@XE8S>)LZ(6hXn4v{n)Hcrd&m0XeYP<=@OdRL#qDSR56s2U+*Ww*K(2Or;XsvYyiQ{d)cUcwH(MX zhUyV9QBldy;fu-5AXn4e&(GmeQ)D$B=k~m2vcGP`f{L>A%AmUBzxSO!ZB{?|)~|+n zW}Wr_vGy*2QB~La_}S;oOv1@?67nL1kmnE{2_%6rlLR6!W5Doocm)wb0TBd5)PRU& zl8g}n!9-AeP(?&aDJoKYp$LkI)>4a>TI#z`YpwORUL}X$x4tuz1eD&}|NYKv%lbLqOh;NQf^$b$lU%O7`_dYectYXC9)r)W4x5b|JKW|-W z{i2zg>~rT{Ecq0|r#cZ{)hr!)c1XqOQ5EA=SMixjE4equ4(?s z!Q0>8Fmh%=Rqcprclxhec(N`vdZph`zXZ1vy;r?7yQZ+PM_f#=q@4Uwwl;ug$8`pJf3!BLDm$|v z!ie(uvJ0Hux^(yVY-cS!G6pyNIOMKhgAF4EUw?G;vCBr>h3!PYiB^676^?!Siq&%Z;BPY8 zZ$OFo#xSOKM~OJH8L!~gP+j~PP(6uU?F*L}@_Ty?wegyle|4|YcJO@d(gW89Zk{)F zJqrBwJ1-npSN;rcimldP9=ZM2qV}s%+VZpCI+}31ccPY56&)RukQmubM@&L-l)c5% zM@}3z@+9Wr^pX5G#lXMysVbw|`efgleb(3#c;!1}B$~ii3J^;#Qe-L-+2O7MeM$mcxO~Hw{=NAI5NZ> z;8e!PB_|t)abd@9nGmdBHuUNRu9f=Wf__VyHcyC7bjDvZveej%j9dGyVUr_YQHCO!iSCW`^?c5nE zc|bqUpy}7ny(0X-#{1z^_;T`WF@VN$TmzO?7swNQ$}084({5pX5vm?+OLk{QuXE9Em@2w~?H(_zrj)!0PU{SK2fg?gPJ4P_QmF|1eQtjvBFYtRoNU+4_is-%W`f z{?fS9YjW)W(f9C|$ZEM{_1lJT4-_9Rovn|0rQ*5xX~RZdKUM#oe%H@Nzc%L`q-V!_ zrnXmv3Kw4uqVFOiDg2(<@W&;`8%Xr1%1lDM(}V;wTbzX*u?&ZmyjzT$6K%r)jzI=M zm1ElBAgJeU)$9z4`j_3`zW%qZp}?q)6J^%ct=r6vu02a{z+u))6VhxvjJAO4L%K_$rEV;b;T&@ zvd(6(zKEt{t1*Q1Ilt0}I}Vk<{^%z=kG3R7U-9&uhP#tD8I!x#TUOtu58A-hw=uNoghNNmvVz>hB}y|#AM8;@y{!`!>(tZMvt0bRKkL4N>u-GLcN^BXI`{A2 zV*SqA`loLk^SA8(_Vg1Eaji zYt`c9`Pbcg*CJU*C}7gAl@9>W6g>39ls1 z_Ha}YJwmDrS3<}%XVpB&!%JL}F__f>6+H9k3LeYkniO|I?bnIX7_GCxk!!9vYrd>ZrPZ* zah-GjR?Bg3`^|dGz4~U!A6st?iN3}Bqjf{S1To1Cr z-IBg}o?ez|Ev`{<>DJfRsz0q#AKz{5S%pA)$bGV9$Mw#Ts5IT+PC}&3s3@l+!HL-C zP9p){rG%cHwqIB_AiCKRAlsJTVqDK8`vB}cr!vpg%^7(?tZe8X^lCr8bXd*jD)uq! z{n1XY{#3c zZx~ZLXXl^w5xuOdM^7qQ_~R>9e`T5JsSl;)s{UVY*p^@wII8cqo=Uv_c=K`V)jfCiNGi$xUj%yWvN-skhIvHo zWvc%lhIyV<@UEGXA$)sVhTsOVvWdX1ouravYlAlm1RhF5fVCk4&sUIB;2&Lpbmg?O6;feQr!}NNAHI2ND{qp^R9}A)>VCxTqvocBFy%i+G4c z3_@j`)B6&>@m1{7OW(V6+xS{LgyUj-2S2lBwSS{lhQc`hOWFbdgI@X#6-q-GZgP7mqkZ8asz$H2H|*dL{6d%O&rL?Idc^5h<@(tel6oytzw&k zqwdI5!FSr{>e^eXepdTF33VP+!`7({?K6cx9J_H0bBx9usZUi>q%#UdyIgMkClPmq z>Tw7t$;DL^O9jjw4ziRerR8Ctf?^Fk@9+5i&c!Q7HRLJtNc)$`YQ{@16s)Nk>loes zujOjw?lV@eg;;&bd{s?FNO0&Ow6*}PO_Ydr*b`;O;aofHrpQPq;*#6T$DIqTw)uqJ zYBI#_Jp!^(Pa11JXT85?)vnK5v+gO_<#{RV;CTIox7!2yi8bwe9doxFIIzXKQ-7_! z31#9$B4b%4%M2X{zoQYQEE!Q~;33t~pYhnnfuYaS1wY2}G}wo<(axcFxhZ zf}I6Q&#=_L$XAd7l5vmWjI%oXR=lz=42u>f;~jY1V-DwR-eQ3pX&M2G60@ zN73qNEvw4iO^-Gl5ooL~&64`>n5h!!6DCViWVQ)&mEPFU zSYs)QK|ec+3J3mtVzyzFXqq7V&MZT{rDbx_%(aYL??3^g3o6gj9w!+dP#N&{u4XjFwRHm7MWq8xo zaa*t(vA*41KIirh2}Z<%cx7RCL>A1^?|;tmEp>S0Ug4m9ukeYD!)m@z(T`cbIZ(%BpKk8w=^ zwg~pj(_15ksk8pz_QI+WHC0n4tSu~?UizK&hnLjkU)8VjU2)aJ)|vGOclPZ$dHJ#1 z*RHp+TDFx{47+iZQS_O0`~2h{52qLRbw?pKbTX9g6Q38g7QA5X{PdThe%sTk%_5a#7XF~SH6P7$NtMQin-ZgcPFI}>F!|FbTgNIfetoUqY{oz2sdT~_m zf4uXuy7-CI^=Sd?%#M~vT#L5`e|zit757_zn-HI{Hi7F`)#A0p?nB&jAr^w1>EQZR zHDmPV!!vDL4mZ<6c+LvQJs8+Kgmcpdu9}c9O(aa}PW!-K;X!N$+dhC&jL6a>@5eWL z2QD{QkY$|eWzDCyk~^quJ>}X9Zp$P#Oa6eIzPWKJIY|-O?u@>W?m>OyBaKTsg3*N* z3*@vKKBFi_Ht{mls>EfpsddSxjq@w+guxdU^BRoJWGo)a|A>dqaJgdhG6s}fzk6I$ z+>C^E6CS!b^SYg_2}8$7G}&u*{<$-n?BrMGtX>-%IW_9J-k$F5mbxzY&Vdzb*A<0# z-*|G96|L`^Suk26%UXGk>f?wkd*iD5wQCE;53m;Y2a^yVxgiO0dn(AFL^GDa$uT&4 z7ZYK0i;KX(mCrNU!aG7xckXvo%S)P6$y4oj&D%Mzb?3;KgroI;(KEi=XQiq?I>xsD z>H0I^Zjqfk{E*lYt;KbVh>FHlP!8;`LKJD)TXoKdUz9J*jF4u;`42g9qW*NKeVwVY zds`pX>>g`<(OV@&%Bd6mFK6cE+;44Dv+nPQ6DR8IXQ7%W;)@%fD4!BDJu*5b`jTnR z82Q}W9pAMnc0n*Q&S}tkrKMZe*qvklnf~>r&W0UWWo=Z8SHYl@rlGtokhK&1N*}xd<-EUTOZ#7Oe@n)F_kFht7odDB zrA$DjT zI6^PKDY13hkJljf^4_Q%8B2R646BNq@#Iy3yOVCPj%66By^Q_s@B0U~t@voGdjHI8 z{quVla0DSN^)1(|Zyb1&p0H_?)b<<9JUrm0hr|SSxS|tb#UcD+O0=P}jWoCg!jq4# zpEh*B4_`l1;wb;oxJOr?`pM(l;+OAQ8b5K?ls$Lg3Yxz>AeU0%9-577N-x)YwtqUN z&n4BF191<{?@jDQacp;lmBF!Fan?)s;YuFSe-f=5LdyQb z{|>=F$(38|yLo&G)?3P>QU;Y{TpTa#Gp1Tix1Nd} z%u9NN9cY?Ckf#i-v?>i2e@Y~FPGuw~$7VQTjX0gLQ5i5TLkcJK&FfMt3RQ|!B(Wo+ zII8L8W-Brk9Jadh7n2xPJYzuQqJVex;M+IFT@0#DPw%(Mp>nLxYt#+Pu%~kHy2kYb ztZ&ZTac937Y9Q){`JN*H=}FQM*IY}~bvQV6J+ZqHnFyLfTW7<;OR+_|%l83E46Fmc zdrVbF-@LotynNQQop*8yYs{E#{jtQ?{4Y^v`S>}qa_nI}1XdRfu2Q=nu!4ZSa0>ghOM2(Z z2UGKl;?RUB9?yNcr*8Ih79==i_LPYgpCXnSH1Bt{PFR>(<}?K4R@nb#u_F@i-M4 zz?Wan0HRg!pe1EE6F_I*gaj=q2@&Fx5C)*j2JP>+%HE{SsLm1z3f0FAb)jbF+nD^s@9T0ii!UpSWD*fVj9JN2?epX&b9=7;XJK6x|8ar>=fHe9wVe%^ti*gyWw z-~Bg-$};siGd+`&(?<8c^t4J?vvT>Knd9$RKPYF@IOC%ichoN~uM*pE4fMM7O+T#W zR94|&e{M`tK{s?s5kfl04UoV6||%DRRJUrt&EQDlibTC*S!x&OzeYz0LgvvMTu8^`XKla z{{3%Si6wCHg#C|w7GZSWo}>PGX<+TY>9+MPmuwGp98~=B?6)7daOaKeW^Hy>hx!lR zuu~Y%hz0=*4TA~)hNg3U$y@TUO&c+thN#fVo-Q{_^4=J^mqh&{^v+mVcR06$eQ^v( z3q1kwY?3A#H6}e3^rj_ao#9-!Fy@g;>$que z?4Q1Q#Cqq*=EW;-YWwK6=l9OX6>#)kOpUYt_SI+BV=rI^xmjgA_3V*M>MYBo*Nt`Q znWXDUmq0_NX+7f7lDgq0fNr7LW7oPsFWSD}@XXPkdWj6u6=x;y*n9hzkK9(*clyvL z-&}X|gqo{xsS4a3R*$sP2ae*xKAAA8tbeV4EY&K4UH324E%wq6nG18T}cXj zbBzWNXd2*Qz4Y+{d;#bpB1M zDE$#gvE1*%eV|5m2G#*G?914b;^85W51AQKwq1V6^#YeT7F@dq>`suWM2a!|(a&}q z-Fd+qUpC6h+z(#+V#|kkfp~*k=vFbeTq~ww;*7OM+Y?G-1KK;=ULi>A@ST(>Y;ZW< zdgH3#uRgeFSyxw(^~p%Ka?y=c7~mIm<*v1En4rb=};a3Cfr z63YdV=ZJ!sgIVZrIX-6BKu!U7+zRv2un%6XpH+A3>U)Z2biE$tl=a(x40>ePv!7yJ zP-Z*Q+W)K1Ywy2~{p}oA(a!s2&9>81B;RKA@Ba@zFD||AJjdt7HP#MqQP^JP{kzVH z#6(Pk6LHacG|c*r%L^eyUB{EqRsw^yt7Rr_Xf7e z1+z_hih5ycr&U&SY44)2MTWoPgu9%`fW4X+wpXKRuSR1`NBt8T7^)SZ$=;g{EU#16pzts3>!#nMOzX?t|9t&#yKZYvcftCKul}y)%qj#p9P8L;k8!G<}KcOBjM z!}ltkxdi^u`XBg`$hoe4@+HAp6n;sx)!1ol?$g8ft%|1wHW2IwyfYH-Aa?zD`Ho;S zQaF|dPlxs6t>Vn3<5qEqT6SlIbjfEHBcwAQZ9%*2RyOp~(vAq}XIt=PJIycM9k!PT zR^?RQytI@5#!7-?C+piMRNrN+uR^q3e$_(t?a%sF+x3N3M}5P0sly(^oik1c?4dNA zS;37a-C?D6?;hiF!AInB#NZ42DFXcXF-Fx!&57l$(9)jv1#9 z9<&}m*mTn~Z;ronU19#l!t67dFFktmlEI_J+eXHuhxLzycl7WY@GiaQ^>+3!Yc4&k z%LL!0Ex60>;czev>_-pTF33sIc0n}#GUlWs0C`7F_N{l4lWo1=tsGb{vIBnn_)clz zEy+?VSv_Q}9HG3*%RBSJO}NG!=7qIHdF$+oP+mS?C@+l8cu1$51neQ+h$Kzxj*|ph zL~4(eRIHMx8WAxy(;_;gg5i!OR4UIO^01Dal(#=W;{L@(J#j1QIfs6Am-Y4jna^MR z^!@|yY+Cnl4_$A6zPFK)VU#!y?%42~n+D`=pa0VbZ(P=*e!q1szW>XyXHvcoX;Ked zx0bBooB?W*l7f9FDfUe=VMlt{Z)=~qq%Gv?SgG$)4Yg+bu@=kv@vFDp^X${V+`Y3p zP5q($vrPST5A|xyub+JQzk;J5nEK9v4V!LIXYO7l{VgkY54jG2S)LtNmuX+x;|wQ0 z!{dxM;W_6*FYsKrx(p$#VPE#_8P*GSF6EFMj zr+LS4KypH~V7sU7oD99FsH3NON+p9DW}+>Bf3)QfOQ;=pFyO4ZGvIs+aerZQ_CyZd&Z@k668=_Lhy0W`rhYt1z z;FNOs;@^@3Cuz%(2t+-8jyFz&Q`@UN(E0oXyw9>dQhj~S2D;!uuP$10v zVUf~Uu=BFRtxIm@f95`%-5ajoGaj2u&YYA5$k0e~UC#EsYPSzAEYX|}qYLNutz&H8 zXCW4vCOleaAm(ege2{eINLMV*d%g#Gtv@ZP7{ zXZ*ikk8|Ak=X4dq9_~1--v8S!I`qq41UXCQglg5Z<~+~-OzZT@8|_+=4~!yNuW-X2 z?~Wxgu8qY-o7jher3;g))1#xY=b;uf_fBfV# zZ>p?^)XJ0p)R*8^>3t7x`Z8o`9_BqzmteH&+FV$xIOho)LZUgOy5f5Dh>VxG9dU7y z@kUB^WH!8@k+32{D^X!TY$~?+$TXH6jd2O*lO`3iedEOlx?|gL@DF-jBj@!ww*6O^ zG<>-0dF5BRYnylfInqCFZ_%~w`+PwX zcuIZ!$TL5!TexyAY6@H2RgE34x!NGC*r&$zg7YV_N0!#3KaO?A8+nO&n4KlUNfxRp z=SQe6wj!aTw$D=PCzX}0nXI#Y0!ofQ;xD)nyK^DjI5cVU)yp%7Zy(<8$kWXar9@tJ zY{{Kl@A~?_tL`Z<<1@$Z_&V0ou6VV6@%*cQJYV&@eD;dFRi$<4t9y(Pwk2Tv|v^2C8lmYrPl<72PwX)YrFE~_%FKgstu2Ayn6mk zE5{7obMJlc=DN~vz3IVgW-Pf&ov@OR$>mL3V2><VE4b$K-jBWL|gY-BTx5H&hSa`=bY+Toaf+LtQ;}v)uvjKCfb@UtYa&PTj~FPv)A- zn^rEoH^ULT2=)FazP2Tdvr<}>PTp0!QNdCB5bzY8PWl+hPTc8T8(xj@>hI;_N#`<0CU%*%??9%D}>X=a#;( zjCa%#arLAUi8!g}`FEUt;q0~X`dyc;%g!@qUip1KuTt}q``?F+kM$2e(PMno`D88> z&3y3epIk3Mb08uFb|`i0k(--z>9kzKnb`yJ&0>3Ws*KR*oZ3R70))F=bO!uh=lLM@ zlWDuIS=xKn&iVab`{{j8rth`(p6`l0lW}v|w#Dlpk3Eh*{m{CLgT~Mw@=8KVzl2w^ zP`(@y5gC2^!WY>$PS1|X$bdUt)@kK~VV?!&024KV>al*}m1O<$FXW_j84Gretn;M} z-&vhGZ^w%JAB$gpp)0C4#Hq}k#n&!^g4ng;fpPb)A6l*Fe*f0$_KEcAAu^RLis4*D zRkF*~Jt+l#+?15=X^20X5CyX-Dx?-V-C$ga`aZL=3P(Sq%h9rX-VGVxbim=gTc1uG z+{LlE`-3=@v+c$^gv~dfdT3qcROJXeH^2LMxX2{t$gV}O1$s%1uz>7vDLGGIL^|S( zq%@qP$BeIwU)3J&Ad|j1y8`U@uEY*8X4AE~gZE&!#dW1}>tm6fpy%rxs(GC;PQt@a<}@m>4Vo#5i2=hPcjCol=_!mpK1BH$tIjLpz~{;LANo&q(RF z&1!$~jP?7Ut7}gG<;CF(AM@|D{_^1SPak}Dkads#Mg14nmuq1QCt#+s=c~)N6y?2c zZ9VyL17JtUP9phepFb|2 z!=9on>)J!HyJa-)m^aY9Vo6jbL`1|S zrFKukxyhus7`^lQVUD=a(&_id8n-nWF13r&aIp-m$8Xt+fn~j&VVIfLiJN1)45SBZ zx7>w+)O*vW_O~b#^{BxX$V49vw=(A^xZOB_<7QCsnrVh36Cr>yI|%6fqM{>8L;TBF zmkz+*T{{6?m1G+VL%f6Y^Wpc=-f4L8vbrh33C)jhTz{a~Gr#%meRp2Jf6`0u{o>Cb zy?WhB$AITQsUCgPh>|V0-MC`iwyifc49VXz;g!8l{>JUfegO8@FnD$zkbB!z1MDwZ zxvA&MO>gX~PVJ4w=H5n}5^FyhHdu0^3kPCcU2JVi5NeEp-C<(mIx2O(79C{$aYI$l z#j{4|^!Hwtp0*3o(N>?YM!!96om_K0OzovXXU6vwDC+hI<^Zy;Qy_KoK$1PUdRF%D z^gv9a9?4G32D;8iLUlWTK9YDr4LWT7(DWs z&WTq$&#~L~l;C;Sc(wB!_sVm6f72sAfWLs=Uwtm_TA&ZPb2XCVd6sJ(-Vx!7(C0c1 zqQ~Hs&Cd^eizFZC)QA(|e2kkNUvQ>u=skLLdIF#soV{GD!#UxteaJ~XksZE(P@VF+ z!TFh8J1t+;VtrKJL|@38xw+w9 zfG=yC__FY3AN)<;*$^Is#y&Y0qg98VFX!{gXwd?WLA;MV=dwlc#-6*5gIJ$32Ju_I z6R^we)2Fjs^A@Po9WHqOZ$ear=8 z^mEFPuFmiGzjO4lK6opL`iP{3FYHFYOI~Q1Xazg3TP~EBaj;8Xw_GSMXE%;yJFof+ z<%Ro?!|jVO>MxX+<2Yr=&TBw)3Z*wG% zCi{A7YA5^FHsdvpWaP+qAptUyvCYHWXM~-`7=5R(YovfO(LdDR33gw0kqPV+(|1rN z{$amkpk(Bux^)Z7#Mx6QQFfo?%kC4AMPnQF{L!%WCzKTCW8Cblr_>pG_`+wACy8X$PDx=-kh*)2lSrM%)7c|-okZ&Fyl!zWzd&9Y zUGlo+f_ZJC)Y*B}Uofw|lsda!^%u-5K&i9yTG5eLWo1{X`_gd(rOwW4MMqwhm0j8> z{Y0rlULr}-Pn5d1$iLC2PbdGZ|4&3+8@Ye zL^E>Fjg{bCsF6WLDi6Ufba~Yvk+O_F&o5K0Igd$CM8RK>?(u1rE+7w#<@1iU0T%-r3F489O zA+_lu33fixgUkmtIc?YG{5G)%*(Nn{(D&Me9z;ZSJC}2NM53JAHR#eKFQBL7q(weY zTA&9V(45fJ<@UJ+JjXg2^QmVKzJPDvVfJ7}s3o>$?6TV-bYHxD)n$!MT3htJ9<=k3 zuR8NVOYJeJI&G8Cs-JxIBp-a$H?y_jP;%(O2$5=3T#Ur?{pUGOl|MTysriXC`Jatg z=F`vo0jDPyxK`u*ZK{TwHY4#rsaj%`OK!X1aaajtQ-TO05xDXlF-8zI#EGbW_SIwU zU+;;ZT;wXdYUbUy)N~uOSzS~(v)>c_?jAME`Om>^6)9zl7W&ew?oBS5IW(=`^1f2u zWW;y(vbSAYv!lm2`e-Z;rT5Z@K8=bBZdg+>o;5isW$1GF+$SWU-c3 zWk#Z$I4wEdZd&n$+h(5>vO~&?XEfsca@B;$Q6mfc^vy^fK6&cp)v@PPp!dwEJ~^4) zBWqn1WfzZfd!#0RLYqH`Ktx>Zfbmo%bklkzYZ81YJ}N3c+323tQ^@8`KC)?FBE^Ao z#)p%jE{t1->3oUHc}_oA-*{?94$J5_IQ1Iep1xy8R`kd(>3wyTHDyoSl%mM8y4g*E znuupzgL~!mDjfWNuiRdq^7kuCw)#@MORpW4{;;OEo2b`p*CCvlO_ILAh3-j72sI=3 zF}{ht`gSBfEIFW9ocX|ZY8)G|JKjpW0Wtpk^intOS{lG3FsVz284FUluYy{gyN;%u7v6z&kjC4va@ zbk5>&qN*RBx)hEOZ{C2?*z&d3vBeAFmMIyErHKFI@1X?S@aKj#^a{{5_=43l)2^Yv5=DIH*e(~+KXC8Xy=hm|M zJFi@E!@O-*F4Yeow;p@)PsiR?W1jtN%DvWCkFMLYL8a|%xd+}s917D{!aIui==+^G z2^_C*TQ-ieV{I-A>nd0z#A*sQM{jua*651Fo>LCgsvT?fVZLw5GA>!YP!&MIpFN4$ z0rsn-*6CHTZgb2ucRo(q^%y%%@)FM?ysO9#cNg;ZJNWQA*Th^nXP#x`o!OhA_O#Ux zp5m|BykO#r*RS8YV>qsaJ)vLKq{GE|AFK>uMskd17z?*S{ z?Nu~V)6!DMOiN3P%FpjTW?FuJlpEybo$J~a2RLLCS`W)t5E79Rh508&|`o;EN{&eOq{g3Q>Xk8$4?PI^WanAVrXOBPp+0#di!UstH>f<8fjok2w#n6t5 zJlUjb-|)y_-1s6XcRWYZuo4<$4}ncShirr z^uT@6a@@Y;isfxpzN%h5`gC4W^*`NE6%HTE&`MqQq<1)(v3B#nx|vGn?VXZKt!+L_k9o69K3MXUsD)i_d&pq7IMO6&?{&07QN>_P^kA-2BwDFUvjbM=j_2`rC%joPBrc%xlNo zcFm%hIpfC-9`3z-Sq*Mz_grsX(s?y|efy~sbC+c;?6aVMabCX}Bd1-THz%j4U!Rif zfzu#sZLp$o@*DQ4m-gujtl@}67g^o)_njm0e2V>CJ4MYs81K)*0<6+Wg{FbHwUz2YmU<{p*MB8-LfsnYlMVuW~jozVQj`y+=Qp zUcd10Pk*K6zw+|#?{56{FGfF*TYSfzJESeFv&^$_-kJ07G_lh4@V3M78{%UOy-^G6 z25)rwh3q_>m_zZ625ms&WvF=9~1FUM(f?O!6sN_cPW zWNWqKYOu@PVQmc1F{=Zgv+&!$x}r4?NVPh`ZBmbu~ZGW+*E_L0mX|Y3c zaU*T+*`+`)*3O)W!64`(R=|RHY9nz^iBlVWwh4F%v6@(OR_^E?PnjJSjNIB_TO3BI|D_+#R3;!lYCh|duB z6MsfLKzxq)JnQxX@kQc6;w!ArVU}`)=~tP4jp?IIA7c*3iEk0#CY~U^Lp(`*k9dms zKJhg11D5p>@e|@_#BT+aix^3aA;!tCl$)4HOd_W6uW7^#Viqx1dQ;^S`|-&DVi9o= zv4l97ID~IrB)y<~#1Yb7MM+SjrPYcupeO@sGXHudaW?T1?KRn9d{S^NEM)K1>%d z-IwWpO!sGc0Mms`7co7M=|M~vGhM=TDbqt(tBZ&}Vg<2^IGi|=SVJ63tR+$}8PrI| zWImZnoKBoUoJnMF8thHuYUxvBE^$6_0dXPmdg5Y{3S%j88F2%o#iT|xsZmX8RFfLj zgnzI*{wm|hq((KVQB6%olc~vQGO1BbO*E>hNzF}7G^&X+LXsAZYGVJ2plDQ66OC$W zqESsvG^(kIMm06jsHP?w)zn0znwn@-QxlD9!e1;X8r9T9qnes%R8td;YHFfUO>GxZ zG^(kIMm06jsHP^eYHBjpOieVZsfk84HPNUhcJ&B~Mm06jsHP?w)zn0znwn@-QxlD9 zYNAn1O*E>hiAFUw(Ws^-8r9T9qnes%R8x~tY-*xWO-(easfk84HPNW1CK}b$WL%q? zXjD@ZjcRJ5QB6%Ws;P-aH8s(wCN-+5M5CHYG^(jYqngyHrV@>6D$%H>5{+sq(Ws^p zjcO{5{+sq(Ws^pjcO{6D$%H>5{+sq(Ws^pjcO{6D)urps;NYynu>ivjcO{Y`CiT{NmmjcV$mQB7Sm zs;P@cHFeRbrY;)Q)J3D3x@c5W7maG_Ukg&Bn$)PKAsW>*M5CI9XjGFL)igw-nucgp z(-4hn8lq86Lo}*sh(DG(@AChG*M5CI9XjIdnUZO@dsZmWsG^%NcMl}u5sHPzr)igw-n$)N! zHL6LCiWs#b8-{39(-4hn8lq86Lo}*MjcOXAQBACv7r+xY0QPvCmVfqsU|(V}v6SdV zyW+Hq&|h&{8A^=Pq(yP?j|jH#omOHS@m}I);uhll#I4NX0pf$ihlmd|pV#@$8^kw> zKPUc<_#yFQ;-`WtmKaY=Aa*C_N^Mm>v9IK>`V$L@1Bu1NQlj)!oRXf3Q*4*Ig!#-x zKgOv=#HGyb2EMb5e_hV>EyO0~^B~`On19{D^Z}-yC%(WZ2btTUvonyh=;t`~TmJPU z=3}?(Tc*ztEkRu)$`>k5zf#`UuaXk=g-qWnx#_nteLLT2AU5(zGw}}Moy5C{Pe|$d zE~cL(K23av&-XJe-<>%9S>lU)evr>!Vu>&FIoqPY!t|@eqr_kF9r=#L>3`#|{!aV{ zv7LWq>x>wA$6#+7@}-C~*r!I4ylJFJxkf6}mlDSiFC&g4P9RPq`iWDB(};D%D~M#z zAbZ9f;n28-IFEQO@jBun;$qfkDRCKb1L_m6dC`yYDwilaBwj5gK1h@=e!O~tc!VgL zFkXqqi`So!CtzOE&oI58=@*$kC~34B@1WI^mamDMW7EyC>DFXyx-}V_Zq#HcP{yX4 zW7EyC>E_sUb8Nab8JliR#-%F4HnL-Acx$8;qg09Gh+>W7EyC z=~gl}-Acx$TgljTD;b+^C1cagvFYa6baQOFm5fa{$EF+1OP(?|-Acx$TgljTD;b+^ zC1caAWNf;Xj7_(avFTPaHr-0brW-vaPh@PmmB_Q3W7EyC=~gl}-RL`cQ^uxS$=Gx& zkzO~)rdyY>>E_sUb8NafHr=|6O*hA;TbHrv)@5wEbs3v(UB;$cm$B*AWo){28JliM z2DFazx^)?wZb*wfm$B*AWo)`RHr=|6O}8#%)2++cbn7xU-8$RCvFX-jY`S$B zn{HjkrdyY>>E_sU>oPXox{OV?E@RWJvvnMsZjMbi$EKTO)6KEz=Gb&|Y`P5@n{GqK zrrVIQ={96+x(ykdZbQbV+mNy8He_tN4H=tmL&m1tkg@4DWNf-QHr*VXZjMd2A!E~R z$k=onGB(|Yj7_&8W7BQO*mN5*Hr*I0ORQ1crzEHMsR?_%mHIZ(jr~C96Pxf zHG7cu5#@`Pi%}zgZ6&r5?D87Jm?&G{}rZ>5ML97_CWsNM{tO|1AYWqmcrQ- zq*;o>-g=}*@K@WIMzjSyK{N%RB?#UGBc=X&G;ylD4;xZ2lbA)!A?6W1!~$YJ;s9b1 zaS*YDh_xu>gZ(_fWyB4rIU>R0uef=ODAJfuY0Rh8p;UM_%bOw<9!iA=vusI=RCp*A9!iCWQsKeeR-TJgcqkPfN`;3~;h|J`C>0(`g@;n% zp;UM%6&@v0;lXGU6shn~Dm;`552eCGsqp9`6&^~3hf?9eY(k!hRCq9t5EQBKVD2C& zQsKdTK~SW^gE@krNQDPl3uRF%Jd_F#M$=(gPt;bz5*PcY0PG27s&ke>qb zQ$T(S$WH$Tkdjd|(jvCBh%GIGY|C@eLPd~pN&AQu=+h$dP(&Vz z$U_l%C?XF<6v6tE93CJ(NPLL+F!Pb|UPP9P$WjqmDk4ioWT}WO6_KSPvQ$Kt zipWwCSt`OvK|UBMf_)`_SYLvL#DTMErk5pBSq|yBKAlTd!&dxQp6r9VviKDM~c`ZMeLCx_DGT4Bd`r5w>iXX zi1Uco60ajJA}*HtV3Y|iBW^%_im9E7shx^BvJm|Ue=VkVDyDWSrgkc(b}FWJD(2`b z=IATt=qu*vE9U4c=IAS?b}Hr=Ean(2<`^udb}FWJDyDWSrgkc(b}FWJDyDWSrgkdk zm@TGuDyDWSrgkc(b}FWJDyDWSrgkdkh%V-cF6M|X=7=ulh%V-cF6M|X=7=ulh%V-c zF6M|X=7=ulh%TmfDyDWSrgkc(b}G^0tbZadrJI-wJFSE)AyOsSE&)ICBtR6)wgmhL zihWxGegt139wELa$hMcT?Imn`3EGb5dZd)1M-!*Y6SPh+lbA)!A?6W1!~$YJ;s9b1 zaS*WtSjyfnW$%}=_e|qteg1iz33^yMxyxYz33@H z@zr~&lfBf*Ug~5ob+VT_*-M@5rB3$3pD*t}%KC37K1SR@e4MzGDDyQh{P}`EChjKw zgt(6=b2l&i`GP+q9w0tPlzFHZ{(Qj~i87n>YA>;M;??)Ut1nC*Vft03Ut{_x)AEh* z!nZGP%1p!y55J_vKJ>!RFKMw7z3}!+`ULSEqO9L};q4a`FRmBfe!z z@K4hYKXfS0QSUaSsCSu)P9iOxd>bm?&H;4|RSXN$IR$h48Q5MD{ehW`Ka^n}! z3xB&jnJs_CI7J%XY5WzVRnong7Voqd-f4L*-f1sJu3$c&hAp;hciL<8 zXIi||UU;V^ha#p2GChdtVy4AA?S*$*-WkI5MMNL5f>=cyP8>;;S)|wCXyq5&3s1G= zBXb0=QOmT<6ukVJdkv0ae$%}MM=`(bUih))S2B0-!kaB=j%8yy(;Umj45no^;e~%& z-VrOp3oo~%Z4R#{lXHpli3^D03-!XwEx3fg63_NU&|U8V-NamctuBH-7Yq;^iA}_2 zVvzU>@d)uXL1<hnPq75DSR?hy#d4#6iRoU>WLpKhRAS z?OF!yx(Argzlybn`#XqYo0UPYz6Tsl6uB+as);rHD&Io%k4W2k~*@PT~{9UBn*~ zcN2d?+(&$dC_d6MXimWc#OH|5v&0vOFA@(DUtygO^BwWQmSH7Se)}5JN11+|Zysa% z4W^GX{U+0IG5vF<-)8y*@g3qx;(NqX#P^A(iNE8oJ|KQb{D}B5@e|^w#LtK_4=sbv z6pSRs5MzlV!)4H!@>h}MGFbJJPGq_}(@9LHFr7ve$t;7;6cpJjgPs%=*(-yd6r}7y zPfB`(Fav!k`BSc-59K-K3i=Rf$UmeM@-H}rPo~PRpz-i4Xgqmm7SlNCu9abQ;IGhl z_$$VUqaS!-;G=W-C(j8a^4r^jM}ZW4e~i9;f1OL5Ph3D; zNW32CqxSGod-!OZ`KUd7)E++AX7Y|`4r-K57piwTBP;DCD_l4<9Tp zNx#9gXb&GOE_p86!v~8?(xN?lu($+8d-$-wLQu4a4;Gi8Xb&GOEAK3H6WqCI@D zxCBLe_+W7fiuUkf--V!P4?KKy_VB@8k|&}) zeAFI3%z7j(+QUcf;iLBOVFo16MSJ*QFG*UohmYFBNA2OG_V7`A_+T%|UqyTPs6Bkt z9zJRhA6E0_ImZ;WhmYFB2YX3cA=<+Sdr8uwJ$&$fNLsXqkJ`gW?ct;L@KJmCs6Bkt z9zJRhAGL=M_LAfv+QUcf;iLBOQG57cFUfP!9zJRhpCQ`AXNdOjVOM~lXb&HD1qh1v zD2JAK4=5~^LrVyX&MfC#sho4Aa?X{?Iaey@T&bLMrE<=d%IU`|=e(nwGmdi3HOlFs zD(9@Bob!cp&J@b&p(^Jrpd8YOvLJ_oqKnFDIhWIGR8E_-oYrPJy+-A_GVmeYEyfNpHU&M=v`R!}!qKsQQST3x|bSFqI;Y;^^6|k{bLo-jfat*$mgYW)<9NRsjtuY1wI30Szg2KFoKHF#RgiuQ7d;>DSrz zV@$un^l_%&Wcn?pf6nyVOrIdWLp(`*k9dmsKJheB=A;$Skb)l)KO%li{Dk-^@iU_A zOsjx~6qKE570{4^vGP}FNVJsFSOEBH9&>IaYsE+0i7won!IELr^TMO4>PtD(5ekH&7mHgIM@@rnn?|3ET6JJ|D&Bqv(+vMUUJlO&A_UkK8EeJ$Y07SEH1dSRqd!|AJM-@A$l3 zkok|&nLp?6qjCD70JmeBf_elo3Run3t66$AORr|>)hxZ5rB}1`YL;Hj(yKB0KG&*Q zdNoV0rf;WON$J%ry_%(0v-C?*`bzCmlnzAcf>FRREPV`1AH!db;je0GOV?`h{i?y$ljmG-k-?cpUB>y z$ljmG-k-?cpUB>y$owbT`Lp*Yv6M+HWfDu7#8M`)lu0aQ5=)uHQYNvKNi1a&OPRz{ zCb5)BEM*c)nZ!~iu@paKY@+6ej0uYM=%*C8 zIY07qe&px;$j|wapYrCXy!k0_e#)Dl^5&*DQ|wxfc%{M_&MwG zQv&^zKtCnWPYLu>0{xUgKPAvl3G`C}{ggmICD6}#jh{0bKj$)j&SLzOOg|;lPs#LC zGX0!W_&KNWQ%e09k6;YrQBXV&e#)(%GX+2A2!75E{G1W^jXv@YX90fN|9)Eje%kzg zTKj%{v*aDI^Zk^3KPBH!$@f$8{giw^CEriU_fzuylzcxW-%rW+Q}X?kd_N`MPs#UF z^8J+jDb#OMsNbegzfD1l3bbjIifNRJX|P@Q;EC+9nMT`n8rwb%Rso)nfoZS}_Gr`j ztLgmJbpC2Oe>I)In$BNM=dY&oSJU~cI?7ue<*knLR!2#zqombQ(&{Khb(EqyN>Lr9 zsE$%pM=7eK6xC6R>L^8Zl%hIHQ5|Kbjxtk6nW>}9)KO;YC^L1GnL5f$9c8ADGE+yH zsiSPvQ8wx*8+DY8I?6*Gd%uo-SI54qW8c-W@9Nlhb?m!3_FWzOu8w_I$G)p$-_^12 z>ezR6?7KSlT^;+bj(u0hzMDa|<%~Tv4%x8pv*xUU_}VZ{zp@B1n2F?^3I8$ig zOre1@g$B+P8n7-Y?~5JYz}Z;?XJ-wZoi%WF)@7z+(e$6$a52UZX(Z3 z=VtQUOrD#`b2E8vCeO{}xtTmSljmmg+)SRE$#XM#ZYIyoVHt zCJ5O;{*Vp9A@UAnLy%>0$JZwA_}Zj~@%ae;N_Hb}g3Jh>AzFfv89}l3H_?XNq{~X; zCV2S-Gl{Yrc@unkf_X#_v4Gf*IDlA097HT3E|&ZuGlI*AvKzUTytR_IR`S+L-df39 zD|u_xgtu0V#Lt1kTPwWW@<=K@}}_C%AInp+$q;e-df39 zD|u@rZ>{95mAti*w^s7j3g0Pm;7++#^43b;S~1p;KY42{95mAti*w^s7j%AInp zI+DM&8=U zTN`<6BX4cwt&P03k+(MT)<)ji$XgqEYa?%MI+DM&8=UTN`<6BX4cwt&P03k+(MT*7pBM zdjIgauKL_}_H18mZcB4j0Vh?5d)q_9WD{J+{1PVZz3ziKH3bTn0)aMx#J*f#!a0T` zhj2_wftEM{P70ipL{bz>lS3rg$R0nAk8E6dBsuah8dOD5RQo9Y4aC?ks6DL|r!%8H zd+z&w_~(7T&(fZ~)_T8dz3aQyURn#@9*4Kb;q7sFdmP>#hquS!?QwW}9Nr#>w;p)w zfwvxb>w&i(cw&i(cw&i(cw&i(cw&i(cw&i(cw&jkcxH*ocxH*ocQlmpda4);Z5IC zNb$JP4{!bO)(>y}@YWA+{qWWgZ~gGr4{!bO)(>y}@YWA+{qWWgZ~gGr4{!bO)(>y} z@YWA+{qWWgZ~gGr4{!bO)(>y}@YWA+{qWWgZ~gGr4{!bO)(>y}@YWA+{qWWgZ~gGr z4{!bO)(>w_inpcAlj6;Ii#T~woEX0jJ_zms9|9i+r@=BYslyfiT+)Fw4QqH}Ub1&uGE1vZv<=jg-_ljqyxSV?_=U&RW zmvZizf0OcH@oCB0|fN~B{&H>6fKsg5}=K$p#pqvAgbAWOVP|g9$IY2oFDCYp> z9H5*7lyiV`4p7bk$~ize2Po$N0?LCQHuIR`1{AmtpSoP(5eka7-E z&OypKNI3^7=OE=Aq@074bC7ZlQqDojIY>DNDd!;N9Hg9slyi`B4pPoR$~j0m2PtPk z<(h>1@=f3*dtNMc#lLu z>&Z^{9*Kfhm2G>EM1egL1@=f3^d-f)c#lLu%ox2#q9A6B-Xl>EGsbW7} z_JRGN_ec~n-Xl@aR}!Q5NEGyy#OOT|1$`wkdXGdw>)S@}ktnc7qM-F{+ukEl(E7H~ zdn5|%ktnc7qQD-B0(&G1?2#z2N20(UiGuv-GJB6iLEg0OJrV`^)VB9X6qr>Nv_fv% zdn5{4C%5fA5(TZ6+x8xbg4WD!dyhmxYvxApktk@*+~_?L1+AGIy+@*u@g9i+dn5|X z&IQJLeHpQ7`;cLpx$BIdn5{3uQnI-jlj0Q?-$f- z^jG#s6x4TYdyhmxJ;=8ANEFnMYQlD8N1~vfW!rls3hH0B zy+@*;US`{SBns+lw!KH9pdM%2dn5|_W?}RmiGsda7`;cLpl=pN?~y2k-Xl?9rd$ZU zN20)dxxgNY0<-2q=sgkz=FSD?&V`VE#|*j<((jl@7uX|F2)&|S&^HeM%3sh5q4!7> zLVv+8gx(`j2N48V^8s4 zV^2v>`ZG@v8$3lc^_2R%Q@##92<`zN0v`sa!7^AeGU7kQi2oEL{!_sgr}JN9Pw`)4 zPs#gAk(Z7Bud%1(S>x}3Zv<}z-vquH{9W*N@Gaomgx}LT)w0lEoWGZiK<`p`n)Ihh zf132CvrZo(eTeiS(uYVNCViOnVbX_5A0d5&^byiWNZ&{LKGOG*zK`@#(nm=j<=gZq z-=;_THa*I>=~2E-kMeDLlyB3ce48HS+w>^krbqcUJ<7M~QQklL%lGqb`T)5cAeRH= za)4Y8kjnvbIY2H4$mIaJ93YniygXD6MTn>`UL2@}r zE(giwAh{eQmxJVTkX#Ou%RzEENG=D-)Crmoah~BbPC986%f5av39+F>)Crmoah~BbPC986%f5 zayd#aN6FRR{oTO|gDcecPc9OE4q--ZC+eylHlCqtoY$qw( zNy>JTvYn)CCn?)W%65{nouq8fQnqI)+q0DIS<3b-WqX#gJxkf1rEJeqwrQ2EJ2S1a z866)^6CX~qZa+wu(dqtvJ*_#TP;*B8RqW|kV$bM^Vww?onz4AAQFxm1cbf5cnvr*! zF?X8LcA9Z^nh|!Iv2~hJbvpF->*>(nuctL$)RhW|4Bm*Kw*|7G|u!+#n6%kW=@|1$iS;lB+3W%w_{e;NME@Lz`i zGW?g}zYPCn_%FkM8UD-gUxxoO{FmXs4F6^LFT;Ns{>$)RhW|4Bm*Kw*|7G|u!+#n6 z%kW=@|1$iS;lB+3W%w_{e;NME@Lz`iGW?g}zYPCBg#RDH{}18+hwxv4{|fw9;J*U@ z75J~fe+B+4@Lz%d3j9~#zXJai_^-f!1^z4WUxEJ${8!+=0{<2GufTr={wwfbf&U8p zSKz+_{}uSJz<&k)EAU@|{|fw9;J*U@75J~fe+B+4@Lz%d3j9~#zXJai_^-f!1^z4W zUxEJ${8!+=0{<2GufTr={wwfbf&U8pSKz+_|1pH=v*!e3RoJM)Min-y zuu+ALDr{6?qY4{U*r>ur6*j7{QH70JYBx*mW~tpQwVS1Ov(#>u+RakCS!y>+?PjUn zEVY}ZcC*xOmfFoyyIE>COYLT<-7K}6rFOH_ZkF23QoC7dH%skisogBKo27QM)NYpA z%~HErYBx*mW~tpQwVS1ObJT8*+RahBIchgY?dGW69JQOHc5~Ejj@r#pyE$q%NA2dQ z-5j->qjq!DZjRc`QM);6H%IN}sNEd3o1=Df)NYR2%~88KYBxvi=BV8qwVR`MbJT8* z+RahBIchgY?dGZ7JhhvrcJtJ3p4!b*yLoCiPwnQZ-8{9Mr*`wyZl2oBQ@eR;H&5;6 zsogxao2Pd3)NY>I%~QL1YBx{q=BeF0wVS7Q^VDvh+RanDd1^OL?dGZ7JhhvrcJtJ3 zp4u%CAuJFfENC{jlv&7l?RO#LwciElo6+9{7o>8wz4p7HS)Nn;O>jZ0I!1p>UC^qI z(cc6YSo>YjYKiSKSTRbk^nU4;(ce-Rq*q4rVkWr2OmHFax6}pA1pO<2OI={?cY(Fv zg}~ng7o=lG$65OB1Q#^lH~O34g68-}e@k7^ zyx!<jmA`@tw>Iim!%*e}Mh(^gjbHWZn;c5d08$ zFMqv;{SVrC{sQsX3q)dz_+k-XEaHnre6ffx7V*U*zF5Q;i}+#@Uo7H_MSQV{FBb8| zBEDF}7mN5}5nn87wQ4D|h%XlL#Uj2~#21VBVi8{~;)_Lmv4}4g@x>y(Si~2L_+k-X zEaHnre6ffx7V*U*zF5Q;i}+$u>o6(GEm`I_DVlO3M;?Es@s}c`cFG5_v6=*AjUxk=GJ=Es@s}c`cFG5_v6= z*NfzJmb}iA*IDXymb}iA*IDv9OI~Nm>nwSlC9kvOb(Xx&lGj=CI!j(>$?Gh6og=UF zUgyc{Jb9fbuk++}fxIq~*G2NW zNM0Ao>mqqwB(IC)b&*ZAu-{#rxT zYp8k+Rj;AyHB`NZs@G8U8meAH)oZAF4OOq9>NQlohN{<4^%|;PL)B}jdJR>tq3ShM zy@smSQ1u$BUPIMusCo@muc7KSRK13(*HHBus$N6YYp8k+Rj;AyHB`N>HT$7g zJ@a1B|G`mb2Y8(w;B|I@*VzGHX9swl9pH6#fY;dpUS|h*ogLtHc7WH}0bXYZc%2>K zb#{Q)*#TZ>2Y8(w;B|I@*VzGHX9swl9pLrMc}jB882AfXJ@6N_dhi<1|F=?S2Y8(w z;B|I@*VzGH5AX0_L;ufRogLtHc7WHln(7q)-%6bw;Pvo>*wi}wD7OD^rOpoUdg%YR zt%v?U{W?3q>+Aq;z*_^}8t~R&=X?X+8t~SDw+6g5;H?2~4R~w7TLa!2@YaC02D~-k ztpRThcx%901Kt|&)_}JLyfxsh0dEa>Yh=t@1Kt|&)_}K0VBQ+=)_}JLyfxsh0dEa> zYrtCr-Wu@MfVT#`HQ=ognzshLHP|`dfVT#`HQ=oQZw+``Q!l$av!-5V%o6krVnSVIBUP=GZQU=0OWLjl%MfHf3g4Fy<30oKB8E)}Qht%d(D_WuXo2mX6- zC-`}nN299oe(*agPZOUu@o5vEHt}f_pEmJn6Q4HmX%n9|@o5vEHt}f_pEmJn6Q4Hm zX%n9|@o5vEHt}f_pEmJnQ*p~FmBcGWO?=wKr%im?#HUSs+Qg?#eA>jPO?=wKr%im? z#HUSs+Qg?#eA>jP&A>iw;?pKRZQ|1=K5gRDCO&QA(3~K5gRDrXr=KObeg3@M#O5w(w~SpSJL63!k>|X$zmW@Tu=jJf%0dpSJL+Znwks zx7rpyZQ;`vK5gOC7Cvp^(-uB$;nNmAZQ;`vK5gOC7Cvp^(-uB$;nNmAZQ;`vK5gOC z7Cvp^(-uB$;nNmAZQ;`vK5gOC7Cvp^(-uB$;nNmAZQ;`vK5gOC7Cvp^(-uB$;nNmA zZQ;`vK5gOC7Cvp^(-uB$;nNmAZQ;`vK5gOC7Cvp^(-uB$;nNmAZQ;`vK5gOC7Cvp^ z)0Tazi^=r=hC=<oe1?!U#NB>R67yso4!!r^o9N4 zle}RsC_PuY^jxUEFI3+b>KnRHU(bd5ZZ6b!aG_2K5bE2v@QTsxM5t4^g&p8)LFu_t zsEgZ)?De4ZT(A6sSKM34Tgwk`N^js)C7fOM3 z1L+^xb~_R3Ki`EP0zV9X1pFANuebWEW)nhvu@&lDt&q35oyh)wKYopN9A}bl+EseH!A^5TAzlG{mPNJ`M3{h)+X&8sgIspN9A}#HS%X4e@D+PeXhf z;?oeHhVJ`8=)NzsPeb>8p?wIfeMwW=fgA@E^PJH3^nRUKg&tQh4Bymeg)(&s& z@aB6=PU#kNx3>;>>wvcoc+)l6Dpd!(b--H(ymi1^2fTH_TL-*#z*`5rb--H(ymi1^ z2fTH_TL-*#z*`5rb--H(ymi1^2fTH_TL-*#z*`5rb--H(ymi1^2fTH_TL-*#z*`5r zb--H(ymi1^2fTH_TL-*#z*`5rb--H(ymi1^2fTH_TL-+o)+-^w&5YnTGlJjj69bg; zhoDECn>`N|zE4cv?AfUBqu}?zr@P^W|`#j(xJ+QDV? z=zp{4&O%2uH+$|Z)b2ImyFtnmz7P8Ypw=ApS9}!WBhQ_cV(q#){4-E%4zfQ5y0o2m zzZ36w;{8s%-6VPu>6VPnU>E9)YvCXAUH+lXs@NuvQ>;?P4eo$wy>pePyU8pnIg*t;>s597wI)h!PGuVYXgIzcZ9sqR) zyHa!pyHIDa3v~v&P-n0Ue*o$XcG)_EU8pnIg(XmDu*=pN?7}HZqBGcK>kM{b8Cz$t z%dTMS40hR7p41uavS+dX4tow;XRs@M9$ROy%hnm}LY=`b)EVr;B~WLu%hnm}LY=`b z^c?mU^#$8M#?~3^vVV%LGuUNc!TuR`!zB;ez*m942Hxan)OYkev!q+pgKT$@t~1zW zzZP3(u*<%gUv+}oHLVowkrwIE8Pb|LLkeO4SY&$>lD*XcTgUAV??o5rlpU>AnqI#7GRm7=}h!jC&I#bf%d zdb-}mT_VNvE_@@XGuUO{imfx)W$O%f zq0V3zz8PC*u*=pN>_VNvF4P(9LY=`b)EVqToxv{D8SFxx!7kJp>_VNvF4P(9LY=`b z)EVqToxv`A5BNu}yEMcp@5j~|?6UtDTW7G#{t)(uL3%N>%Uh%{{_Dp`*BR`xKaLGc z%r|e5<~W_cEakENNuJRe?6SS8aEnyP_Afd7G)(RQKLdUi{14#g!2igvbOw9yMvYuX zo#Yn0QEF_|Nk?iu*0emDmPga_Xj&dkxc$ zN7M3XS{_ZyYczDaH7&0((Y7@$pRuOp(X>38mPga_Xj&dk%cE&|G%b&&<f! zH7&2%htZnG?Oj4^8n<@|t!doeCA6mHH6r_YYg!&n%cE&|G%b&&<38 z#+_wKx2AD(nb4ZX{bfRHT3-L3qLQO&dHsKiZEG60n+dIH+;JwfrsdJJykY~}*0j7L z1l!iMd|*w>2iCManwCe?^2$do6HUvbX?Zj)kEZ3(v^<)Y_g7{;X-&(cX?Zj)kEZ3( zv^<)|J!^V~_KBwD(X@PEP0OQcc{DAbwWj5>*0emDmPga_Xj&dk%cE&|G%b&&<MbmCY({4r6Vl*vA(_%C&M$=+6EhbKj(X<#%i_x?g zO^eaA7)^`Ov=~i`(X<#%i_x?gO^eaA7)^`Ov=~i`(X<#%i_x?gO^eaA7)^`Ov=~i` z(X<#%i_x?gO^eaAm{r^uO^aE@jnTB2Rooa&i_x?gO^eaA7)^`Ov=~i`(X<#%i_x?g zO^eaA7)^`Ov=~i`(X<#%i_x?gO^eaA7)^`Ov=~i`(X<#%i_x?gO^eaA7)^`Ov=~i` z(X<#%i_x?gO^eaA7)^`Ov=~i`(X<#%i_x?gO^eaA7)^`Ov=~i`iPK^B%$PK(jB7)^`Ov=~i`(X<#%i_x?gO^eaA7)^`Ov=~i` z(X<#%i_x?gO^eaA7)^`Ov=~i`(X<#%i_x?gO^b=sVl*vA(_%C&M$=+6Ek@H~G%ZHc zVl*vA(_%C&M$=+6Ek@H~G%ZHcVl*vA(_%C&M$=+6Ek@H~G%ZHcVl*vA(_%C&M$=+6 zEk@H~G%ZHcVl*vA(_%C&M$=+6Ek@H~G%ZHcVl*vA(_%C&M$=+6Ek@H~G%Y4hi_x?g zO^eaA7)^^q$7wN|7Ncn~nidnM#b{cLrp0JljHbnCT1=c4qiHd5T8yT}Xj+V>#b{cL zrp0JljHbnCT8yT}Xj+V>#c0}X(ypc8HmR2J7Ok<|CY3OL9n^n+%iaU(zrSTa4C=qX zW$VAch5GOB;5M}up**hl$m7OOI7L1+{ucOe!QTPj2;K_nzrXd&n?e1Tx@`TIx={b6 zF4TXi2kR;4ddj(;a;~SG>nZ1YshOW~IoC_gj4tPTDTC4FTu(XIQ_l62b3Nr;PdV39 z&h?aYz1o|eS4%Uxoa@!bj4tPT%DG-G%C^h7o^r0IoEs?T2FkgCa&DlU8z|=n%DI7Z zZlIhSDCY*sxq)(Spqv{h=LX8TfpTu3oEs?T2FkgCa&DlU8z|=n%DI7ZZlIhSDCY*s zxq)(Spqv{i=SIr8k#cUNoEs_UM#{O7a&DxY8!6{T%DItpZls(WDd$GYxsh^iq?{Wm z=SIr8k#cUNoEs_UM#{O7a&DxY8!6{T%DItpZls)VrJQf2oW8wrIq=PlMz>Gj%xJXV zeKVuce)pY>M*H1&G72fDZ&6$de2b#d?bEj?8r?p9i=xqf_brM>``x!F8r?p9i=xqf z_brM>w@=?QxFmEx@;!r2aXEd5pwZ>@9fC%e({~6OT~6N~XmmM!8=#PK`o2HCjdJ?F zKc!Pn-}h(R<@9}jMwip~{TW?O-}h&9Iep)s(dFz?Id!In%4zg!QkP15NSNoZ{`TFa zD8=Y6-Cc@LmV{ne?aFw~xhwNt&|e(76rUJB40>g|EAtWTk7DcA7^U0^n(Z!e;=H~N zJ_zd87^Ude7@=;B5q^^=9|Lu3j8b~QUa$}B2ffPO#X4sf>zrMzb9S-L*~L0%7weo| ztaEm;&e_E}XBX?7U959s9eC#U8f3Hr}P!!?st*yA*raejfV;(Cg$~tdw@KQrg8z zX_sOTr+b~eORcjiam@!0e=d<1YQAu2KrlSmtqg&tH56aZvx$hyA*r)uWrd* zial(5rM*kBhi$L7cPaL;-3hv7b}9BSy6tr--Y~lDbp>vFU5Yo1?*O-$8P;sOShMX? zT;adct`t|uR{K}`RQosTHYK5MjS)J|?^5L86t9qXDRPjl-l4y;y4$5bV*9uKSM?Oz zUgz&pf3dAwV}xEi?NYC?9b@a(7};KV=u!`|y&hY)#>n1)eLJ?l2z04WIo<27UFuo3 z-;V8XLtTm-jCX+kHq@oa!T4^FKBdUPC4V0&@5lZC_8((^5c@;e^e;sYegpkWk%Mje z7c0qKiX8kle@p68a5rf1PFCIDDc>oDwRhi>cqs6Fd^-J8Pa3T`o1{6m z?S)Ouj5bMgY@5SP(j1-mBh4{x1>Xyrt4-3JQ$n3IBGicoLY*`s)QJZ|oirlUZ7f3F z#v=5(mTv%bjyh>XsFOy7I%!0xlSYI(X+-GtoK4JqHZk|v#N1~SbDvGjeKs-o*`&FT z^LiQ_0(H`eQbxdi;C@gijVOH-)JY?<4}wKdCyglOD5#T0Wd8s>4vvGmjYa7tP`9zj z)@>|8oirjm#WOl-M7B;E5$dE7;S6?_8tJ4FrFbQ0la$By9QJeAUdh=c<#GB8;NOF1 zz$H*8jp(mBX+)@#Muc9S-X!HQ{utCrBeK0Zy-BkkqgSUlY1U)ZZ7jhiDUVUNu?Th2 zi0~%=RkI$wlUdIuDUaAUl-VW-d5!pIv zMEDNSJ#mxfI7atJ-|#4|q(#n=_Qo7%leEYwx{W39{f~M^E!p^SzeieRTPKYOy;8bK zT4Y-%jRd|OQh${eDMeajTPKYOy^6j`T4Y-%jRH^cVm3*O zobJ`;O`65n_GZhz{f=48CTWrX>ec2=(jwblZQdj;vTeoQBrUS-)#gpo zBHQ#zX_0L>lor|kC5Jj`MD`9)x3S39Nh3nt#v;^hEWx|bqIaQ1zDe_tQmjSqLSf#8 z7QG8CdKX&c8w?Kxcc4Xgphb7^q;JjBsl;fJZ_QhhZ7uSxc}DZ&Tl0+8qB}Bf8@@Hq zf3+6*);yy*@vV8b&53W#vu!Q%t$DUxYu}yc9IZvZJI`n>^4)nxYmx8H^OKK(UR(Cv zc}A}-`|doW*Oq;Ep7XL6`R+WUwa9np8LdUWJI`n>^4)nxYmx8HGg^y$cb?H&n(ndwdfAC$hYZG}PRw|$$QZEMjTXpwKz)01e?9cYnn)6+9( zk#Ezp?SACj^z~o^5N9Z_~4FE%I%8PO%o_)E%I%8Mr)C8(=%F&e4C!}k6dfC$hYa)wifv| zJ=@kI-==5VTIAdGobnND`W;&2+w`1nE%I%8wyj0JP0zNq=nk~Vx9Qoo7Wp{QSkbrXEeG6tC3Nk$_e$v6aqpGTwd39^p=-yzS3=j0d#{A9 z9rs=dT|4f*61sNWdnI)3xc4gH-YcPN$GulV*N%Iy0`9#Exc5rv+Hvod(6!^w;A7U zrgoe0-DYaH8Q*QDcAN3tW_-7q+HJ;no2lJqe770jZN_(-soiFLx0%{)#&?^k-DZ5Z znc8i}cblo*W_-7q+HKJu;O<~cMkluj9dB<@O^v#FMCg%ji|T9C$t^;i+#=M;Ekd2# zBJ@bKg^_3rQSlZ=qAiR>TNsJ9FcNLiZcIOKo!^4OZ$aC)pz2#t=`HB<7L<7ln!E+o z-Gbh35gYog*f4sR%a$My>f{#LI=MxtlUsz=#x2^b>2#gkBGkz(!IrE}ZV^WQRrXgw z_vkIC$`qy_FrXTiF4- zRjevStQtMD+e#d@RpX9w(fDHgEzmozw`w#oz7f0?d=vO)@OQ!6!MA{K13&Ngi&f+O zpmz@6N$b6n)_Z5LLr>lr>;${T`JKTo@qcGE4UB)KVo+)_q+6dr+crQlQYkx9`Q`0gHjcTZs7-GlG$ z!FTuIyL<56z4-24e0MLtyBFWxi|_8mYxm-#d-2G6ZFppxetUPYO}{m6 z2R){5(;J+!6Z?MguuUFu`j=GBZSsgy{sR26%DFB0OYE=k*RQFj+XDM#TkzMUKL~m~ zb6fB*_BX+A@#G`?%HG))SU0u>-v$3GDUV`5#*>ee(gXH^Pw>}%>?e&`?~K}(_0Fhm zd~w@`*S6ucZStB*m33US9bat67u)g0c6_lNUu?%0+wsMAe6by0Y{wVd@x^w0@oD{b zIry}GYjo?~fp>P`ogH{*2j1C%cXkBsSv&C2j=()@hjP@fXhl2l+79LDbhoG-fqT{t z{I~-@?x2l*hBAMKGJl4AKNI|op8QPkUxfEjyZfl!eLQ&|Pu@rE?xS}1QM>!7-F?*V zK5BO#wY!hn?W8U{smo64vXi>(q%J$D%TDUDle+ArE<35qPU^Cgy6mJbJE_Y~>avr% z?4&NA_X(N7=Y2wE@OkCZFT4lb4w|vgD;K9*c|NcA2z}P2@YTX@+IBZ>yPLKxEmRv; zuL9k+yT!vPq1$%1*s$%k-A&u>rfqlAw!3ND-GSS7H*LE+aNF(<+_t-E+ugM7ZfTC+ z;I`dO+wKnBwz~tj?e4&ByE|~(?xt;b)3&<g+wKnBwz~tj?e4&ByE|~( z?hf3xy92lFZrXM?ZM&Pc-A&u>rfqlAw!3NDyI^A%JnRw=dxBl!!D!XpMSIvK9&B56 zchP=!p}Mw4ycsQkJth&3zL%-0ydzTnEB(&=85(7r7?k+K4wCe7n?z>cX z+g9COs=NPc)!n69+qUZNQmu_v-Ce4+ZL97s>bQ$K?m~6%SMBW17wB1E zpl3Y*w-3PW1IqnS@PKkRZU?Of4=8u1SQ8$g{0~t6FRCObo0%eJS{c*0=vc zinJ_rH24?N8Ka}YFDw0!@K=oR{AGClvYt_jo;ehJg*SXnEFB8ICYFTw?rX|Rw(>d@ zd|iFNKlr-XSQ35({44Mg@NdBHfZqlG3-~DbgfW}-8`Qsy>x913ZCU6tKS-G$q|AF% zlBHmeN+MJljIS2@&a6X1*X1GV@(^`-h`RVzsYAiTl<;9n_^>!%Qi@CUu-G=bJP(W2 zCDr+VQ4jrw-X_$qmW5vdtwP^GVZNa^INi1ThTdcQyP#|L4ZY1NPZ(7Oy+>u(6MPFM zzXg-ug2`{eBx9 z{IY+W{TjBFb|BjeJ_+svzwb9^M|s0ho<>G`AO_4(obSj&a7ul z1KHE0pTYiDum;w_2Dk<$V3X%l+o9vGf$-Oy65b@92SRK0K-i9bvvUuBLr?lffIUM0 zABXP+kR2499t`RE!NC8&Fc=)dcD)7z*JUs`0hXjEgTbVK8_e-nuapi3^SsCVZwG?~ zo_qmZew; zQ>!+9)^E%Hd!GCc&Nu7veK6Zi$}axu8Tw%M0aE@G_$AOW{9x9~Ihg$_Pr8>4W`x%}*!rT5kw*Ql5FniQ3A$yEp9S6t363@^=vL|`NG*||` z4nLUn?(V^?*Wm}VRqVgxSG1+&dv$UV=8Eo22)_b`Jv$T_}|376g`(yAb z@3{{C+#b*3>+C=A+y6=WKl9|jV6R}WV!w=SO&HA9sEgNg2D4tz8O)}BLzn?QS`CJ6 zelqkJG#LJ`{%z=Wt-;XiJcHq@!JBx}~L<2Mh9x z(VA1p{t%o2tvrRSSt?}BPa$h&3aYzMbu?P53sM-P$B07cT0BL{Q>6I(`9p!vpBJLi zL#XsnV3i(1rH4@Ip}^`l6j-H)Q0XD{cR%CW4WZIQfju&WN)MsZL#Xsn)+#-ON)KhN z(nF~9P}V9vl(k9^Wv$XfsPs_QYBr=6>$m*?+sZbSwMq|VtKy z!{IO-4#VLv91g?bFdPoU;V>Ky!{IO-4l~jX!{IO-4#VLv91g?bFdPoU;V>Ky!{IO- z4#VLv91g?bFdPoU;V>Ky!{IO-4#VLv91g?bFdPoU;V>Ky!=djrI28C^10fuaz~KlS zj=U;Rqa#z~KlSj=c;BW*EN8oS-4oBc{1P({wa0CuV z;BW*EN8oS-4oBc{1P({wa0CuV;BW*EN8oS-4oBc{1P({wa0CuV;BW*EN8oS-4oBc{ z1P({wa0CuV;BW*EN8oS-4oBc{ANsQo{n>~9>_dO{iLs?%AN=e?h4zUDrJzOo(4u{4 z(LS_jA6m2zE!u|`?L&+9sdoOA6=|PpXS6QulP>iOJx1(PO`YN%w-0sNhdS*;o%X3- zPPazwL!z|h70=jy5&JxN3ABRkSG-~TMP`TaAF=<5H>~ihmz_=&v7abn zzoG~|FFuuH)-l8W?EQXHtUBeZ{PjWXJ=hOnKaA};^?tEZ)ypykBFn)Bh)L z{%7oe!Ct{$#eNyvUfa*;xnHBFZI7P&HG10ih`C=QrWlY1RTqtwPXA5NqvZbZ_4=!C zBdX#=WO1~ae zzjpeQ;6CvCejELIRQ=k&_4qQXe!WNdx8MZNPzL()D6M^zzB~%sqqO!>TKg#ddX&~a znx%xmU7s4NA(MMbC$k%@IJa`dw?>neIbx7#-frHFv52`)e{+gaS zDE5p$0RPsglIvG0^HNZxKNgvf6zP>kG^a?fEYd5B^vWW=vWONH(V}AD`AAXzJtXve zq!>7cEHWP{s)u&V_I#umya0MWQVbkV76Z>mit4|6gr1KS1ILy{<|DXG#Qe-|- zM4yYyM~cixifBtw+M-;Tj}){2iFbNFQq2A(_!XCy`A9MQSJaKj})_>j})1Y6xF9xU*;pl>><)U zA1N|+6tkX>6d6H^S-k8L5v`c@e5A;@R?K=nQp`H~EixY|YD{-6JRd1a2b4SWkz(liNRjzS zk@-jwMJ+NPDWa%F<|9REg`f0%q=>o}nU55ij}#dti_AxgQV-?Ae54p!X^T?YJ;9;i z>C8`pL)o9J-yK4E4xu@R>9dFFn}_L}hf&?bsLf&Ggu}GM!|2Rm;)KJrrNgwM!?d5n zw4B4VnZx+{FkU{4E*(ZW52H?pQO?77@G!nRj7A+sIS<3_VOTv3pNEMP4x^uki4zVJ zCmg00hkscM7&uIv@C=&v44U=~n)VEu_6(Z#44U=~n)ZxzemQssO?w7S8-tB8*cgM2 zG1wS`jWO65gN-rR7=w*5*cgM2G1wS`jWO65gN-rR7=w*5*cgM2G1wS`jWO65gN-rR z7=w*5*cgM2G1wS`jWO65gN-rR7=w*5*cgM2*pO=Iq*q+%PmsT4O zfrmjy8poyEPWL{&{m((i zoX7FVaXfN7TOj4X@z?KzN1ZR8I*zA~XT6qnTrsxaLrLK9cy^ZbdGLAu>d5oBdbiQh z-EsA9``<1lDV_(7t1kMj>Z0dW3)`=keS%(a zf?jZfUT}h5aDw)Kg7$xcmVbhle}a~Of|h@RmVbhle}a~Of|h@RHh+TFeuDVq1o6oU z+W86E`3c(j3EKGyTKEZC_z7D030n9GTKEZCc!>z4LD$kP;C{iMCN90x4x3fs|MgEzw#^L?9*FOo<4j zM9V1=fs|-JB_fa#t*Ar-{d9tUIzd03 zP(SrwJ%6824?QLH{Cz@w^N`T<_X+hr+n&EqsFxWpfu4CysCO7Wf1gnAuma6-h=J=`-EDr(>;HmQ0ukr`TK<0 ztIE`TK-gpl#3JC(y{LL=KZg4wFOf?^`ZG} zRi=oGrf4}+jLTDu%TtWYQ;f?~=)e?_=SgN9Cz)}aJtDV^Ps(xAR#DDdQP+4QE(S5(H(bMSpSD97cGONC2R(;E2 zPrp?=Q7&pHMt>tNv+7%B)wj&5Z<*Dha@LVUS)+sB_5*BxeJHE_INe_#%4$Coa9DxE3LIA8umXn_IIO^71r954Sb@U|99H140*Ai8 zPw#}o3LIA8umXn_IIO^71r954Sb@U|99H140*4iivrBrLIjq281r954Sb@U|99H14 z0*4hitiWLf4l8h2fx`+MR^YG#hZQ)iz+nXrD{xqW!wMW$;IIOR6*!zh(`L}L8F9EA z%%EvAV$!x-;|!WMgQm@(X*1F^|J9l{gQm^E^9-6cLoc2Y+kVC~rWuW8M$edLP_`MA zZ3bnVLD^#IxRv?#-ZkGw9w7x;KOF z&7gZT%$R1-y%}_`3fooKuEKT|wyUsRh3zVAS7Eyf+f~@E!gdw5tFT>#?J8_nVY>?3 zRoJe=b``d(uw8}iDr{F_y9(P?*sj8M6}GFeU4`u`Y*%5s3fooKuEKT|wyUsRh3zVA zS7Eyf+f~@E!gdw5tFT>#?J8_nVY>?3RoJe=b``d(uw8}iDr{F_y9(P?*sj8M6}GFe zJu7`!4rZkfLiKB-ca+Tq|DbiD=j4liVY|HfoIE01yqywyG<;6%*?tk*E6L9(;xhgm z{6}!b&#;f^Irb4f$3CLx#J1ihwvC_llVaOXeieHU_%QfQ(ED0`Z1E1%4{|D1^ zifxQuXLwHWj8HL*@zr35pH#%+l-~qjuatS}K2P1}srx*2f1dQ`Nq?U7=Sg26&RihE zTp+?+Ai`WgAs2`+7ln0~d(;7Kry2P__j$Z6R9`+Y8w$ z=+R+;C~krHZGp&bftYOp9a|t;TOdwbASzoRDtiGBo~F#FDf4N{e3~+!rp%`)^J&U_ znlhiJ%%>^yY07+>GM}c*rz!Jk%6ytKpQg;GDf4N{d>S=AO_@(q=F^n+NMyV$HeOW8ZC?RjG2){a@zIOS0bkT8mB7wFd)=+_tM*B9v57wFd)=+_tM*B8`g z^t{@P(f#^@T8q*B`U3s>0{!{|{rUp^`U3s>0{!{|{rUp^`hwb(eyet6bicl!c4c(G zzCgdeAU*V(-LEguuP@NAFVL?q(62AhuP;c`^d$ZI0{!}eH0@MykrCt~BgjS7Ybm&> z8W}z7xrokRMCUK6Y)le7*1zKD~rbFX7Wm`1BG!y@XFM;nPd_^b$V3gikNw z(@XgD5KD~rbFX7Wm`1BG!y@XFM;nPd_^b$V3gikNw(@XgD59yuC#F zOQgR<`b(r=QTm?XiqeI6Fe?xecnqH-*SE=b$YI>ELUZtj2sp(Z}dR1-jRB)A= zUZtj2sp(Z}dX<`9rKVS@=~Zfam6~3qrdJhj`wgz?Rcd;bnqH-*SE=b$YI>ELUZtj2 zsp(Z}dX<`9Rg3j|T+^%6^eQ#IN=>g))2r0;U8Sb0)O3}au2R!gYPw2ISE=bLHC?5qtJHLr znyymQRcg9QO;@SuDm7iDrmNI+m717XI>$md4+i972=s!h-Y3Qo_U3M<`v?ZSBPg`A)cw}4SRwb-^FTrk8D;KYpl1| zG@I^Lioc810Saqzi>R98uSdH&uHNK10_%2pcN&Ft~%&F0$YJ3-~1^zBpG$}%SWP~)?VUL_v1jzooEqQ7YHIU-o4t)x@@bCAN*9_1pL^R%0c$Mjxs1U984egPJ_zCm--T`7T!DyI76y zVl~!mYieD7k0X;BJ*$>|5ZnJLP-88(rdDVB8>IU`1!~!EVgF~)JHu;gjZXK@oEqQ7 zYJ3-~(L-x|7prBxGpELPv6}j<>dSYrS{CnTy)&oADsfG%+Hdnd^P1YWZU3i0O?}+I z^3I%^`nb`NLrs0$ws+>#)c%d$nNwpuxu(A0H+W}GO+CW4=Q1_Ei`BFe;&gu(tMOf| z#&@xrdX3X*Gko2sX>G*6^?wS~)SHZsxN3YCt4TNHalVVy_%2ps)w-r0=O_P#C%rSL z#tL>#z0bB+hHFwAm)|>cYEm1ccjnaiE>`2aSPkW=p*%IdmDJQ{^#;C`)YNlrJEE(h zNHxBj)YKDIFTRV_SP!qMcl$~2%&Do5+xE_!ntJP=pw5_EXUwfL=GGZ=>x{W|#@xDk z&~i{`%&n`Z*!JwKt`=_e?5xh1TW8FzGv?MAbL)(`b;jH}V{V->x6YVbXUwfL=GN7s z^ft!aI%95~F}Kc`TW8FzGv?MAbL)(`b;jH}V{V->x6YVbXUuI-y9V`Ya8g!7Cs!N_ z8l0EX$lRtJ8=1F)ZwKEa?{G)9a4YtE!T0gk{~P=;_$Q=)1pA}dAH%*A`~>I~{st$7 zHZl)l?*aYa$BoRxpl7Cy%wyo=U=P>}_JRGNzcn{FDYTIp!X5@kz%#gk?1A7cBY&_-qk zyULS4!k)!;?`ve{u%E;B`ZITe3%$dEJHdq>xwsQt=>0R?2`=;(mPW>HuaUV7dd}X+ zIAU+;Bo?Dj3TudZ;2JY)E4EJxZG>;f?gBS~cYwbS{sH)IkUqs( zK-|Nw-@cz(e1O0HG4=6UYB z?_N&OoCM8DcrrnA5;P}4a}qQs(V0cddfxmb8MloD%}FwD8;MTm^IxqwNyeNc8FP|k z%t?|lCrQSfBpGW?lCkC_8Ea00<|JrNlCkC_8Ea00<|Ld7m7qCE#+s9GDpaD=kZfCX z5>ACmGS-{~%}LOlBxB7oFrq-Nix=)BxB7<(3~V=%}FxWoFrq-Nix=) z1kFh@)|@0`%}F?&I6-p~oy+HRYfh3`0P7+#klF*uygw~t{%}GLQP7+#klF*uy=oCJqH7C(2d`9{dnv;a@BgLANgw~uS zwB{tCH7DUjvLvK`p*abflb|^XnvoNzjEqEq;sV$Df(3ZK!Mljsyav&isqzfPKxHF zXikdeq-aix=A>v&isqzfPKxHFXikdeq-aix=A>v&isqzfPKxHFXif{wX`wkSG^d5; zv`~^3n$tpaT4+wonv>1w$vr}?@CbDxy6_fkMVqp31Et=w6)Otg)9M%gA-ENMFDQLh zx=tY$ei-}{(m#UzQS6Ul-$}lo!2Tq^(kaCHl};fRJ_za*V%a){Sg2Eoh2P}K$H2$I z9Il&-HlLhaoW z9tX$46V##vYX71Bs=cN{okA=;#WUJtCR_j0D%2^&Lak{CtCaRf*t6I=g;?ox*!uq? z+4>eK)XsdN{{Kj*-Qz;7atO7`A=H|fP&@X8+OaRx%A`==zJ)&qwMr@br=b3$Q1%t@ zXP~~qWHVA8qfToP>J(z3R`rG2(IM2@zEC?lgdNzg!G10F>#%hSvHq%4h=n?ZSg2Eo zg*t^;s8fiAw}Wp1-v+(|)ab9j{$HSC0NFZ)SV()57CB$d<%P62X_4Nn_N-^rl8qnt zd!$9S|J2V*i}bv-$hJ-)&Ss=V`m0YN7U~pY;csK>6k^$Lz}6|mvULivFi(n3A(kCu zzX@BX5GzHe5DV91>l9+y8?bN3-iZAc?6+dS4g2lbUEn704)FKEKLFniQg@#hsyDxn zl=owQ0Q--zKZyMy><@$VJ86-BMZc34*}jt}KaTwg>_5f+Gwi#t@5ZKAN{d`aIP@vR zvVX~;PWqC)1N;oAQ;3zKQ;3B+g*Y2ni-ekU2^Iec75@mWFoCs5s8ghbnsW)QMcK?d zje*v7gn6(V8~{ha5~vx3p1GhhXSJd$)P5?ZXnoT5QEbgnWKUpE+SXnsJ)<==+uxBL zl4D4YAvuPDa}2eM%;+3L?F}&S5(Ij$qeb>z5?9M_TKI&xe`j_b&A9XYNe$93e`COz-Y zw)u`f;k&>)z~9fjRw?gMz1pPbdxTrT_k!<}AKTFLHuStrF{Gcdp0_E6v~4|aQw(Xe zp0_E6bY5Qv9|W}`t(1pAtw_r*kni_+!_(wG1P+7dyiF=?+z;v;580#O0q`JL1jj)A zKa`$12I~K>WgiE}L929|;zOfVx($_XlS;chr^uy@{X=Z6JS%+$`$xRt@4)9ktvTzj zFMxj!>T88kmcX;%dGI25nH+xtz6AaZwCc8@x^1X#8>-tTz17>Kw8qzfuLG^FZK!LT z)YZ1m)fDPBWT9>j6woNgfQ>?UYKJQ)F#gm)t1)V@|)IG>TT7r~T%u8dP zJ8dA)9hb820k?zqfnVauKUX_%(+POSuaKfs3T6K_Df+Kr*$;vbgC57*f=77r+dS!> z*cN;jd=z{F9HI>R(xkuYf8T_7Iq+E7ruA*7;|r~C+kTN}U|#Fne*Wj+KZ5^6URudl zdIJU$Fg0pC6c3CbZ5l!Jj7AWZN@IuK!`RW5{Vet_{(3+7m#t;}^{b>iVrk1dR%z2p zxbbhmBOt9*-z=Q2?_WZlVkA80y7&u)&}!D^?-W9h;B8tn_wydL+p<= zFB|<$L8x6WLjA9e(4%3Sz9SerNclI|zX|Gp^pyU3(sdiP?Ek|x)o5t@x3P5_wd^-w z>o#iHZv^wC+=?AzzX|&`>^Ebt$NpXH4cND1Z^V8J_FJ*vhW&QzE=sit)T!FaQ73*2 z{{Vb9_#W_m;0M4Dg6NV)IzO*dH-(M?+7x3O?*=~w;!Q@ew$P(k8>3j8&(fFeQLK$o ztc_8uE&RM&Mc57A59;<+jb2vN2t|!h)F@*`jWSl$2t|!h)Cfh5GVV>0X62`Zj*uf1 zRihy3R@4YZjZoAGMU7C@2t|!h)JUZ2 z(hS;YMU7C@2t|!h)Cfh5P}B%TjWko%djczJgrY_$YJ{RjC~AbFMks28qDClcgrY_$ zYJ{RjC~Bmeh2#YkH9}D%6g5IoBNR14Q6m&JLQ$i@iW=#ZQKJ<#(wU-5LMv*7qDDSP zRJIj03aqFRiW&u0)JW%u8m*{NU`34rD{6$IMu8PI3aqG6U`37m?Otd_jZoAGMU7C@ z2t|!h)Cfh5^u^FmT2UhuH43b#k-mvLFDq(|5}s!jB|NJtN_ehRq}2wa-UK1kDzWhQRaa5M_fnMb=uo6J0Uz_fz%PT^ z$)J+Q!Cl}WIK&xtgL}ZQf=_au?{ds(@C>Nk1v<|g;4i^*;CZ9w#YXMG6fOi8fgTr% zl+_zQ?DHqJHZJ@qsPEtudo86X>9v$1y$wNkk#rjs`CSr1uc#Cy?^6pF={JXs`i**F zC!fZA+D-ho;5N>)hhv`P(*wj_qbSmD9HV{*NvORR!fzGU3hm5AnpybManAF*`+A%B z9q_ltAOU)8Ez)dS#|NKxjoQ27_(7j7=po+9F&XetN_xRQupitB9&+uP#rO=*gU3Mq zhLTFW(o&=+VqBwsLrM4|7LUNCg+#@9S2+2J{a*vSQ zBP90-$vreP*EvIGb0N7$NbV7mdxYd3A-P9L?h%rEgybF}xkpIu5t4g^Y9wE6$NbV7mdxYd3q1N1d4bDA6a*vSQBP90-$vr}HkC5CWB=-o(JwkGiklZ6A z_Xx>7LUNCg+#@9S2+2J{a*vSQBP90-$vr}HkC5CWB=-o(JwkGiklZ6A_Xx>7LUNCg z+#@9S2+2J{a*vSQBP90-$vr}HkC5CWB=-o(JwkGiklZ6A_Xx>7LUNCg+#@9S2+2J{ za*vSQBP90-$vr}HkC5CWB=^v}bgUC{kC5CWB=-o(JwkGiklZ6A_Xx>7LUNCg+#@9S z2+2J{a*vSQBP90-$vr}HkC5CWB=-o(JwkGiklZ6A_Xx>7LUNCg+#@9S2+2J{a*vSQ zBP90-$vr}HkC5CWB=-o(JwkGiklZ6A_Xx>7LUNCg+#@9S2+2J{a*vSQBP90-$vr}H zkC5CWB=-o(JwkGiklZ6A_Xx>7LUNCg+#@9S2+2J{a*vSQBP90-$vr}HkC5CWB=-o( zJwkGiklZ6A_Xx>7LUNCg+#@9S2+2J{a*vSQBP90-$vr}HkC5CWB=-o(JwkGiklZ6A z_Xx>7LUNCg+#@9S2+2J{a*vSQBP90-$vr}HkC5CWB=-o(JwkGiklZ6A_Xx>7LUNCg z+#@9S2+2J{a*vSQBP90-$vr}HkC5CWB=-o(JwkGiklZ6A_Xx>7LUNCg+#@9S2+2J{ za*vSQBP90-$vr}HkC5CWB=-o(JwkGiklZ6A_ehg_q{%(fC!?vYM-j82n#q{%(fGEd!)%d(&Qd#a*s5*N1EItP41B<_ehg_q{%(fN#`Evq;rpS(z!=E>D(i&bxYUl z+#{{kOUKSV(&Qd#a*s5*N1EItP41B<_ehg_q?5n9FXtXyOWp0V{Y&OOqBbB}c3+#?-0_eclMJ<@@5kF-`$b%o>}X>yOWcB{JF zxksAZBTep+Cih5_d!)6p>SLUHq_tbswK(@klY68C=N{?6xkoy1?vW0hd!)%d(&Qd# z?H%6CMibjrC$I_2CW ztrdQwbB}b&xksAZBTep+)*8M`oO`6nJ<{YJ>6CMibjrC$I_2CWopSDxPC55Tr<{AF zQ_eloT1nQMPNauXVW;M3<#wH)5 z_n`=TLA?(}vEGLwbi3c9vB@|9ehK{l`1JoL{xY%NhoWP4flp9ANIYcJed#)NUqiP5u|c6rFKa2e?NOFQ3bw#!3&jK9-t_xtRG z{!X)99%A%&n(cT+JKq?#%PU;sZwcG^ez2YI``Y=YubuDs+T|7cR9<29H+Svw3ZuWR zYsV|v@rri&fUXK3XvYWI`IfCcsa?$~*RE#aZ;kZF_F$gxCGbjPJKwLh^Ziu2^rM+{XJAW-$1oXpN{>lQ@iwO^fyiI(x=g?Ye#kMsIDE=eb!HB1fLbpLe*~6 z^X9=CscTs1@0Hd_U86#uXN|HNqju>Ct?f0*`-vm9;~LbvCfP-KH|19Hnq;3*t*o=D zm5tW+`ovxOerkQb_-p8;Ltz0`Pb!ZqHTaEHzzGwL@Agg++M9zw-q;4eUbSH3BDlVfJU z>y*rbdGI$z|E_{?9#{-&$Dm5IS5T;ZJ3{RY6uys=TNLxoFQN7PMdibz!k>UwjBvu+ zyA;Qi{J^NQ8E+A8Ryz(0L!;VDC2A?7zrozB@z?kYB|iu45}VcHDp!je9|X6Gz0Dd= zjfXhKt-M*R`WS!9xmn!$Q~d&x(Cxcfqona=j-f6w>EnN6)Oa^2d>6RbNAewIhpu^B z(4lJ<`k5f1*CjfVztEXG{49@9Pw5JsCv^BJv!FxQtmAdfMvomGeilaP)zOaNG4LtS z>kJ)?>>a^3_}dr2lYHuty~9tL3AIC2_#Mi1PPn+WxkuJ9u9ufexCgIAk7f_FeW zWJhYQKTQ>ZURCH|Oz&VEzu(VK1@|jEGFpxID=#vR8Hr9;Q<^F~uMz^tMuP*ry&>D_m zDTbw3vr&DDl4ItfvF4#Jv8rQK9cxbNcssZQw9aGAOpVrgtof%QA zV=?C1zYSXLv7a{-{)CcW5?==GJh5h`Mr%F}toazt$I4?BYp$wKHA^)vP=Ac2CF6T2 z@#~ zS6%3;3te@gt1fw+>$0x8&{dawFH&q>b)l;+`dSyd>OxoDFw+e)-RPEjuxA5?as9#R{*M9*Ofmk4{{zX$$%)ZbM?_SmCd@Aw&= zxrgkrN31$N0y=x_5yLKV_Si%A*yCU2Qv5B@*<+7?l}qUCu}7_7boSUoTldh`J!FqP zWRE>$k3Dh>od*r{pn;yi<8n{n?6F5)VRZZUpp721(L?swBbV@}TnX7@57}c6*<%mc zV-MM5k6PL1^tjNYH9(`Y#~!lBp1|2-PvGpa$G^%Y%!AGzd&nMp$R2ypWDlC`A$#m0 zd+Z^5>>+#XkwWwf2q(^WryJu~c1{`}t-imW>#Vxn$ zu3h5scdLKRRp?Q8tJaWxwk!OVe$6%Tdo6V(QjXCh@>XSKIz}qe^+-iJzcMtJY~j;K zi9IfF)rynLJvwjIx|3sj>DHj1cqizQdaHlURj6Nc6QR>qyJ z8h2cxUvm|{M*Ll3uM=*S>U>qsaJI4vy;Z97)&2ss>uyyZ=rh}Uw<;TSY`@y7RVl~z z;jN5WTUmeJiuZ11{dp@6yj9v$UDBTFQkJN{!iTrwz+0t5e|n2PeVAVVFund^9P(it z@?jkEVfyC7^v#Fy#)ommhjF}z@wyDE$e@Z0s>q;<464YWij4eWFvuvEz9h6NGN>Yh zDl)2fSS40P232HGMFv%5P(=n+WKcy0Rb)^_232HGMaIAJ8)Q&L232HGMFv%5P(=n+ zWKcy0Rb&FIBEzVfK@}NPkwFz1RFOdy8LdhBNUI`)Dl(`dgDNtpB7-V2s3LYh zDl(`dgDNr_ZBOYuRz(I?WKcy0Rb)^_232Gji!-PqgDNtpB7-V2s3LYhDl(`d zgDNtpB7-V2s3LYhDl(`dgDM_D6_22bM^MEhsNxY+@d&DT1XVnODjq=&E)afWT2LErtl zoHHnURf}xn4BI%vHqOw?8G1QGFC$tnBU&#bS}!A7FC$v7R5}{;GNSeRcP15kMC)Zl z>t#giWkl;`MC(tj5k_3GM;9?^PrZ9=ZCmuu@~MC;WRy4>p_y^LtRjA*@#XuXVR zy^LtRjA*@qN3>o>v|dKEUPiQDMzmf=v|dKEUPiQDsYq8V27LY>6MIDKWkl;`MC)Zl z>t#giWkl;`MC)Zl>t#giRX(i0Vnpj@MC)Zl>t#giWkl;0!>WZ5t(Ot4S8VHdd>GNT zGoo#0MBC1Yww)1eJ0se5MzrmWXxkalwlkt_XGGi1h_;;(Z95~{c1E=AjA+{#(Y7<9 zZD&N=uKuEW8PT>gqHSkH+s=r#oe^z2BieRGwC#*&+ZoZeGotmOkUkXBheG;LNFNI6 zLm_=Aqz{Gkp^!cl(uYF&P)HvN=|drXD5MXC^r4VG6w-%6`cOz83h6^3eJG?4h4i72 zJ`~c2Li$ih9}4M1A$=&M4~6uhkUkXBheG;LNFNI6Lm_=Aqz{Gkp^!cl(nrqIheG;L zNFNI6Lm_=Aqz{Gkp^!cl(uYF&P)HvN=|drXD5MXC^r4VG6w-%6`cTLY6tV+_>_8zq zP{_8zqP{k3#xUNIwecM zk3#xUNIwecM^`D5M{S^rMh|6w;4E`cX(f3h757 z{V1d#h4iD4eiYJ=Li$liKMLtbA^j+%ABFUzkjLnckI^3=!}A{#C!@h*c>ZJbn#brh zkKy@`;rWl@`H$iGJ6W~c$*SGXr;*RMz7lK)F^NC zs@+bF=|->G?PMI^$vD1~aeOBu_)e+IpH6~awcDw&*y#0yovhmJWYun`bmfwFgEtGm z>|aC=zU*H_55CN&U*^-V&_}*PANdN({|d_Yo4AJqzlmEY9gYeQfL<$pT#7QjLdnlT zuk1apGpJl=FnX={acSn1&}+qyOD8_YD=m*pE&kMN#g9uf{?u#5k4r5sc?tAd@#E5r z(QCzztF47<-$9|*iXT^->Ui~?QDsP8E8eAR7Si8$slN{@_FC~S`ui@m%dldv74Kp_ zWS6d4$LpGnU-Wqbud3~0^UAl7pm9E+7wc=e`-!OU}v`g3Qa<3KdQrj85 zdbUe>m(g>gU1~v>d)B-w@Qh=ZT*7DYy4fzdgwbooyKsqJxWq2Cm(HyAGJ3`A3BLnK zSYnhvY!mw0o{%Rv_DuN+xq)NPMxT(j{pnA@D@MNqNSFpYDTzUUyZQvZ`w9B*6ZF<6 z)LV5n>EC~Q7W5N^PpF?7J$rqEKKKNE@CjBeo?zAD3H3q!t$K})RPS?qi{e4FH;DEI zX|F;2c@Tddq`e05XZ@0;u4)i}9z>;ssC1Ba8N{Cl@#jI>Vi12G#GeQ8=Rx=%6#qI8 z{14*KgZT3x{yd0355oK)%n#zvgZT3x{yZed7z~E|OG-k|dWQ7Q`D&q835L`b!@>iU zc>ny6TErz*`w%WMgi8$hH_%k#x$2PKNZ|Mk@%KQt*N|o?{;PlC%>N4hkWYUE{up$d z4kdp|JPQ6Be|47lXP{S;hLUf9|C{stl5+j}naa-*d!PJJ();9xk{7`@Ir86$f6d?i zAFlHfCI3N*_jnJ7~!{vENu>mR~hhcvhH8SJq`np-)x(++8F<=B2Zq`8%2yY3LK zJEXalOZ?6LkeoxUpkFz2{8i9vVne|{f?nkt(yyEupW(4 z&^gtU@W9*c6}u-s2^&vpba3pE+HblyzUq1zub))EbL>(3NipD0-8*>ez0f_vZ@pJJ zcf_0S6HTUA-duh$R`1W2}b1z=Km)6`%Ywjga-b-ulr8W1`ntN%@y|m_DT5~V0xtG@5 zOKa|>HTTk*dvUqFwB}w~b1$vA7k>8AntN%@eYEC2T5}(*xlayrDcDD5vX9o>M{Dk* zHTTh)`{XA&hSuCCKXL5V+$TRVx;6KapX{SG_tBdBXw7}{7Jus2+(&Efqc!)@n)_(Y zeO&E6u67@-xsTS|Ph0G#7538#`B)H&Ig75R((ISx&68$m%H!mhwc5ay0$<^$d` zFEsy$(Le8(SL{6JF#I1z|A*n9x6B8J(f?uee;ED`qyMil3Ve-qhOco)U*nFx&Rp;7 z%=Ny`4DRd9;QWU7!N6~L9~F8&^(^x#-t(^5^QmWUccJG~yw6?e`4sPS7dqqeo7`RE`P8$_ zr~E#5$DU8|K6jz#Q+}VjOPu#U%Y5qD!1F1;)!ik-pyyM()m`ZM6mNAGdOpQl-G!b{ zJ#DpW^N9LeHmod%Mu{DZi^-H8P*# zUG0jCd}iiTepkDWXFlb3wL5k$=XbRmJ)iQs+I=3+r+8Pp(DSKhnNRs$?T$U4^1Ipx zgJJsJF#T?remBglYM5+im|4{@InS`vekmB1+KtX#hox1cXI1*W99@Hc`3AHO^%SYk zj}C{)h=!SG4U-q?J2d~TRAh8sG%U>+ofi$OWsRO^4U1vN&V`1_g@(nOVzQuNvY=t+ zS;M+hmphvsW}fw&+-7a?oZLp3+@tGxj(OH|N$*sAPV=lk7Jf_Z_?+fhF8R5bc@9T? zE_vRuJW78nk1{^!Bb5(FLjQuzbDC%AuauGc$Pu4Sxv1kT#Hth;Evx->|Kb@DPJ89 zj_BSaq4#GV(R~dHy~E*%?n|-mOXa#R;}=~Xc(wBgtDQ$!?L4CU@{wNWJQCPrkFbyH zNZ=LDBaD4Vxc(zt`4O)92v>WA>pY?>)cJL7Mz2^tuT~fp9soVheV*0h=b2?Z&n)A4 z)`y=LpZb&;$MeiMo@Y(?dFCC@Gw*nwRo|nGDMuMojVAw>xV}feU38v9A*9RsP0#v>VA#(lcTy*$DVB+)twsc7)N!Fj@|2zvVM4!^~0mA zA0E}c>r>W4j?#aRiU*f?*V9q)a49%OesYYF>lh=~G4hjRw9zrV`WOy;jGW{cImt0{ zl4Il~$8g$X;S%;R)`NKA?SXo^o@(0CS`G`j3LB-yIGorEB@d#+0jBrOItZk0yzVx>mg?-HTK(8T> z$YK1qUez376duti>|=fedPnYv{KrTBlz0@>`yEu`mFE$S!bb078KLKnsKs5E-tQoE zyN_r@_Ay@J9MOnu)cYNT?%g9AmmOaOJuZ)ETy}}x?;!j&=eb15e-QsC*K-A&rhEpx z#@VhD&l=^2I=}qTcoXPdLnHD-<3^uN*K$|nf)~4h(>DTQ+(=? zdPF0&OYEE@INpfHXveg^);t}1&2vN^?z4HNWkgQy*lV66c;kqi#GJeUx|fZpm$}5N zpd(VR(QZ6KEDXT_mQ z-TfrpCz}?lG|s=>a%hT zAMdO_i(_P^6Q9S9k(F8;dsQ|oH!wPf&&mfJe;0Jdo+V??lCfvW*t2BpS@nG%=~-Kr zj6JI-?p@-%JsUX3%aXlk1JB*E(xhv2hLF{B_b$=fC4?R$vgGqw^7$-dXjba=@%DtQ zH0;=(kd=}h|JHv+CZ8pf&#J$>B=o21?~c>N&fc?(wpp_GEZKXO>^)0=&#D*rue<`5 zRbO!I>^)2N{tfkr;ouwU5kl$tlF*sSH`I%TQi#f>5Tkd3eM4LcRg2NPr*ibE9DOQB zpUTmva`dSjeJV$v%F(BC^r;+uDo3BnX=FbYzN*>sLRm7`DP=u*s6 zX45(PRE|ECqfh1NQ#txnjy{#6Pvz)SIr>zNK9!?S<>*s6`c#fSm7`DP=uzNK9!?S<>*s6`c#fSm7`DP=uzNK9!?S<>*s6`c#fSm7`DPm<8wPQ#txnjy{#6Pvz)SIr>zNK9!?S z<>*s6`c#fSm7`DP=uzNK9!?S<>*s6`c#fS zm7`DP=uIM4L3-qZM z=uy+EIOfj;#Ded-1J)C=^f7wA(b=tn150XspjIYF;EL9aQXOm#FkfvQg^ z3ssD|PVha*3BCt8fqqV)oD*o~1Zp{fPEMec6UxE-x6Zgu(8?#2UpamWw11wUtxqt! zJfXJsr=DG&V5WA0Ha!9VCt&^roS%U06EJxKCQrcI31uCl!AWw7lVlMm$s$gYMV!uEeX4+cgn??k=FX$apr)d3CTAlV8 z%;zbsGdMP@r?j5n*xa6C-g=68>nY}~r?kT0PtENq&9W84z$wkO9eb7O6f^EqDB%^| z`(W^j?p?^;y`uTosAAvOE1G2sbzk~a_hqzVU*XDM2|Q1HMY8~-75j>=$M`n*j#0G_ z3qALIg&JQKtE0iItQEYs9d})Ri0GCHxMp_8nU7JG9z&Xtmck&ug6L zHO})I=Xs6uyvBK6<2DQ;}*Qe>%r|H+H>DQ;}(WmLrr}>uQwA#_<`4;H)qSMTbPBSMu&9@Av z)ut}@oaHoq`80j`wA$1qzcn(`Kg~@4G%b6YHa$)6K8+u~uHHQwysqAD^tU{(t9KiH zFR!b28~rWM>+0P`f6Mc_dbe>q=;v8pSMN6ZTejELyN$k!*QGxMql~s>gmQb=x=#mSMMGT&d~eL(EHA)=iV2bp=Hm|3TNnjXQa$iD);rD zkunw2*Ur$_&S>6!NhR)aXQT%m6Ff{whWHWU$H2q@#>z#Tn_@ zvA=ydLmxcDU7w*3p5fll;KpZQ;0$hj1|H7PH_yPv8G7Ow?)?nwU1!u@Iwz}MXVhwr zmk7VdeSMEwzQ_5$#~HrI-+muA`#x^=eOmncwD=Fu^AFJT576@u(DM&D{)Zg@LyrF; z$Nz}qf5h=W;`kqN{7*UlryT!Nj{hmgk8=Dd$Llvo#mOkgpH+DjoK?9{ZaFCQdcs+? znoHbw&Z^a1;uV0ixXM}X@hq-#R%g?ZI-7B`k5}92NVVOtFathL`4D&z^g8WX{O7EC zy8qT=kj9wr}H##?#Paff*ZPWqS<9#$ap=#>QZ5 z493P_Yz)T6U~CM=#$ap=#>QZ5493P_Yz)T6U~CM=#$ap=#>QZ5493P_Yz)T6U~CM= z#$fE{F!pm8`#FsL9LC)7*|`I5_I3v_JdvV8ur+o&sj?pXRcTbJ0UHs|G z#2z)qgVW&mLC*ol88yb0$@^3L{J64rqj&I*v(tW@o%ZAGv>#`u{Wv@A$JJgshF!kn z?D8GQqsDQkab?~9)N{;nwU_aIlz6^*j@CIx>zrfl_nZ`~a%B!iui2iHdL4VM{+zN1 zA?`F7jWYX}yI!EZF5s>gaMugC>jm2Dg6_rVbRKwtJn#Z};00Rb0v>yTJn#Z}-~~MP z0`7W&Jn#Z};6?Jli{yb9$pbGY-_SWPaxWLj122*XUL+5^NFI2RJn$lU;6=^ybUbDO87d7Mar_KW}a^)Av122*XUeqj4<>Y~H z(nH^*hrUU#d6QoACcWcLddHjef;Z^}Z=%LGQRBa}ckx%K?pLVpS7_;1Xz5q*^DFq7 zq?So)nZySs@qtNvU=kmg#0Mtvfk}K|5+9hv2PW}>Nqk@uADBcTllZ_SJ}`+7OyUER z_`oE0G|3%J;scZTz$88}iJ~UC(@E}h5+9hv2PW}>Nqk@u1}0%(5+9hv2PRS1B)Xc! z2PW}>Nqk@uT}|QxllZ_SJ}`+7OyUER_`oDSFo_RL;scYYZW14u#0Mr}eiG&<@qtNv zU=kmg#0Mtvfy=bWWm@DiK5!WyxQq{6#s@Cr1DElE%lN=$+U_!KcNrhJj1OGK2QK3S zm+^ti_`qd+;4(gN86UWe4_w9vF5?52@qx?uz-4^kGCpt_AGnMUT*e2cP{0 zg+iuK$P@~hLLpNqWD12$p^zyQGKE5>P{0g+iuK$P@~hLLpNqWD12`K_ORA z$Q2ZF1%+HeAy-hy6%=v>ggMj_KEWEzD`qmXG7 zGL1r}QOGn3nMNVgC}bLiOrwx#6f%uMrcuZ=3YkVB(Mj_KEWEzD`qmZj8Cls3YkG6Gbm&Rh0LIk85A;uLS|6N3<{Y+ zAu}js28GO^kQo#*gFCls3YkG6Gbm&Rh0LIk85A;uLS|6N3<{Y+Au}js28GO^kQo#*gF*RRXr2)rY@w=Y%Oz?Wrncj8X zwei=We-Gz6`QCMY`Q*AZ>r$P#lIna_&X%uBb-qsT54kSY8NC{LU0Jlx>@~^j%B3AU zBfYMS+OhM}>uN8dGHU%5+39uV)sDSZd0pC5UDBTFQg*GsB5S=))_Pq!^ryGz)3@mL zZ_(@DQr{d6-cq|5UE^Ey&9~^AZ;4Nrc%Akwo!NMca28d}qKa8mF^ei@QN=8(n3X>a z2D6%{ToPIpv#4SgRm`g1VU_sIv#4SgRm`G_SyVBLDrQl|EWd{{iz;SO#Vo3rMHREC zVir}*qKa8mF^ei@QN=8(m_-${sA85G#4M_qMHRECVir}*qKa8mF^ei@QN=8(m_-${ zsA3jX%%X}}R56PxW>Li~s+dI;v#4SgRm`G_SyVBLDrQl|EUK7A6|<;f7FEomidj@K ziz;SO#Vo3rMHRECVir}*qKa8mF^ei@QN=8(m_-${sA3jXyp1Z}MipdcpFu`jVj(o6>p=8JgUf}iae^wql!GL$fJrps>q{?JgUf}iae^wql!GL$fJrp zs>q{?JgUf}iae^wql!GL$fJrps>q{?JgUf}iae^wql!GL$fJrps>q{?JgUf}iae^w zql!GL$fJrps>q{?JgUf}iae^wql!GL$fJrps>q{?JgUf}iae^wql!GL$fJrps>q{? zJgUf}iae^wql!GL$fJrps>q{?JgUf}iae^wql!GL$fJrps>q{?JgUf}iae^wql!GL z$fJsPP{li_;vH1+4yt$uRlI{L-a!@bpo(`;#XG3t9aQ1>K5q*O?CSK}pB1x$Q9v67 zv{67C1+-CMWuqW%jOs`~v0jiuhJ|P3Ck1wO7IY;(k9Tzz7)cAsf8}`Z>MSI^E3c6B znt4H2>m$9Zvyk)-y@C|wzw)lmg7$$J?ZyR-#jeG>Itx;oOT0o@NP5RkL8>!)S7(7; zodu22KGM573rX+lEF|CLc<<^gB)zM%AeH(&-sxA6N*#MwXF=>4y{ogJogqf=>MUq~ zh-2^SEU>Gyz^={$yE^@*Z2c8_E=bQh8@oCSto9Vx)mdOyX90y5)FM8MW?QIreI8fnA*i`dvY~HCNu% zSMXFUv%s#-0xM$$^-~`?#gX3CSzwi{ zpnmGu-&_}zoB3Y6tFxfo%;;U61?@sHdRJ$GJgq>UR-j)O)US00`gKA5+VKL8^sdeV zeY~KasQY49XMr`hf_l1-^sdf=`nzN21_kxjZ7IKdeNd?HjD*T4QVI37Q$nre3x7iV zZ^U{=LnUv3+KHi9J28ZMMkAH*u1=wz(GcDQ>KP5i+KndM=p&_1AE_sih1#R8Wc2yanIin~j3 zcPZ{J@+F~sNvJGWs9(|$YG;~Idj*Bc z`h?2*g#W_vawo;w`6<-SPoZ{x3Z*fjc76)Ahfw%${FQcoD%O);eQfqSE1r*Vmmo$WW@=K^Ezl2Y5 z%s+y9@=GNLK>d=2Vm1hB)GR=#S%6Tp0HNGQh&JRlKAUy|3-#oe5Ixv!6r%yTjd{}!QlXyw66(n> zq1;CJ?;!2yU2Q7S3cOHHehK9>Ld}?j+9@j3lV3vlj8LwUQaA8ld2gF=uFLHzLj974 zF!b?q7024oDO|v(_JovN#U%^*R8M{>zM1m(P_AFnP|5ERYwxIHJ^7WoN&W7Wu*8U; z+~gcjvHj#G=XgTR2Zfps3N;fHYVU{8esYuaW=w;c_bIk}+~mwnsQI06JE%FGV(keL zYSt#yd`)QgxXBrmQ1dLI<~u^otx`8RM-pl#CA53o|JFL3g97Jh z)N}k2sJ(WIwO3iFC%J^*p#LmBoTE9uKBevEXe<~_ z`MuSbg!cBiY73*ieXj1vXosJx77^m!bMfuD__p6M?Q;9}TrqF7Z_mZI=c=bT*7u}B zeM2g=hx^UZMtiv59BtJ1Un##i+Gr=A%hk^1YUkqTbMfp^WcA;SCbUmXXe5DJeZ#c^YdVS9?Z{!^LcPS&nrkeUUPgQ=hXE(epPy&=UhVg zV@fo4R&2KC!S+1Zp68V!mHgJIo@Ja5x;M?^j^@GtJbw$8DuVwa_%DM0BKY^)F#W0d zFM|If_%DM0BKR+Y|04J=g8w4;FM|If_%DM0BKR+Y|04J=g8w4;FM|If_%DKgzlm}* z<#$jTJ)Rc9|9q`w4W{O6Ela4C!(pM`=`4IkI-IZ3(`ZMXuNA^bs9%5)z6^c~e1+rx zMQ5I`zT;0ly3MEU=Bo#(L~CCw(JHZ@&)1rvkN0RkU+r#myU$m*!xUG8?DFRyky z2L1x{C_Eppp0D*o#~wrHYyHsp8_=qluT?~q;K1{>mgv|%Jl`vdLNh<#>xx42KVK_~ zx=!`hQ>irkr{O(%eg$yWl-yDp4*f^fecA&Ba`EF`6kxGsS48 z7|j%;nPN0kjAn|_OtJd4&Y)H0VWBls%>5Q~r^Vc9F?U+bJr;A1#b~BDux5(UOfi}% zMl;1|rWhWI(M&OH6r-79I4MRm#adxj?SVB@3`@mmrWme@(M&On6{DGAcq>LT#jsb5 zW{Tmk7|j%;nPQFaKBqNP47bH-rWnl>qnTnfQ;d@oqnToOE=DuOuw9I1iqT9lnkhyz z#b~A&{ujXi0{CA5hYR3v0h(C=lM7&S0ZcAHGYjBz0emiis|B#M0Dcz0#sYX)00RrS z_XXVb0`7MK_q71cEI>00(98nvXaV=KfV)_r>(}q!p_v6-^Sc;r-{oC@sdsUA@8Z7R zt$VqYdbjRHs4FyThgGVCdo1A|OVC&e8Y@9#C1|V!jg_FW5;RtV#!Apw2^uSbpAz^f zfteDRDS??1I4OaX5;RtV#!Apw2^uRwVXsiT{mB4BV z8Y_X@5;Rr`C_!T-wAVuTUkLvT;cy`wE<|GsVR9i%E`-U2Xlx;T zE`-m8aJ3MY7Q)X$*jNY;3t?a(_r8$3Uda6}PnNl=Uie^gTp%l%O!bT~YDTR|#G*gOZO3_RyER~{}Qn)HbGo>(A zie^gTtrX3a!d@wwDTTvQG*gOZO3_Rynkj|bQZ!SFW=hdaDViyT;ZihH3eTlzrWCeI z(M&0tDMd4-Xr>g+l*0ca_+JG7i{Nk(948wFs6L z!OtStSOgD?U|t!%J&mdNh%0?6u8dDnauR$Uya>Jp zYQLh6(SF6$d&GdT2y`~`9@=iPY8=*Ye0ZL?Sp7xMX{f&#J#$$M4~xZvOU%P!a`MIM zBQE(lC7vHG)>Y{Yx+-HQB@cpI!3=1Y7ONNNZ`HnzM~FQqTC84R)P8uOd0Q;~`^cAw zsa?u1y8+r_ANF}htW#p=vz{n6AC6uSh)E=G2a1jQ~vu}e_w5)``x#V$dyOHk|*6uSh)E=G2a1jQ~vu}e_w5)``x#lDy8c`s*vFK2!)=X@`J`##3m_c6}CkKXz|+WHpV z>7~>yx>KR9-{^7nR+UFWtw0KI7bmwSJ`Czjql!OH{0UHR8dZtjG%8#MF4vmIt$x#} z@PC0{2EPJoN4?5-frFslN~{vkZEsDu9dAvX0lyEv0say^2U=aXCau_8{iadjLU0kN zw-T%5cJK~gkKZ&ZTn7FT$7m&1C0dCUde(fa-!v-J69Gbf>ni+nAL%!Z3LC*Duo-Lt zTfsK)GvH^zKLbAp{_Z>-K7T3#wQjF?K()Ld{@)M(?}z{Q!+#n4m%)D-{FlLhncwu9 zDue$rzv)%6`7eY2GWah`nEx{PFN6QGg!wP?n_h+HzYPA%{H9mM=D!U7%izBZ{>u{P zzbs+?%M#|lEMfl366U`Q{>$LM4F1dfrdO4l|1$V5^P653oBuNSFH4&LvZVPhga0!4 zFN6Ow_%DP1GWaip|1$V5OPT*Nzv)$I{>xJ4zbs|`%TngQEM@-7{H9l-`7cYE|FV?% zFN6Owzv)%6`M(YRZ-f8a;Qu!GFNgnf_%Db5a`-QY|8n>*hyQZ;FNgnf_%Db5a`-QY z|8n>*hyQZ;FNgnf_%Db5a`-QY|8n>*hyQZ;FNgnf_%Db5a`-QY|8n>*hyQZ;FNgnf z_%Db5a`-QY|8n>*hyQZ;FNgnf_%Db5a`-QY|8n>*hyQZ;FNgnf_%Db5a`-QY|8n>* zhyQZ;FNgnf_%Db5a`^uM{C@!cKLGz9fd2~kuYmsw_^*Kf3iz*p{|fl8fd2~kuYmsw z_^*Kf3iz*p{|fl8fd2~kuYmsw_^*Kf3iz*p{|fl8fd2~kuYmsw_^*Kf3iz*p{|fl8 zfd2~kuYmsw_^*Kf3iz*p{|fl8fd2~kuYmsw_^*Kf3iz*p{|fl8fd2~kuYmsw_^*Kf z3iz*p{|fl8fd2~kuYmsw_^*Kf55oTk;s1m1|3Ub#g#SwTuY~_f_^*WjO8BpY|4R6; zg#SwTuY~_f_^*WjO8BpY|4R6;g#SwTuY~_f_^*WjO8BpY|4R6;g#SwTuY~_f_^*Wj zO8BpY|4R6;g#SwTuY~_f_^*WjO8BpY|4R6;g#SwTuY~_f_^*WjO8BpY|4R6;g#SwT zuY~_f_^*WjO8BpY|4R6;g#SwTuY~_f_`e_^*cl zYWS~)|7!TJhW~2#uZI6>_^*clYWS~)|7!TJhW~2#uZI6>_^*clYWS~)|7!TJhW~2# zuZI6>_^*clYWS~)|7!TJhW~2#uZI6>_^*clYWS~)|7!TJhW~2#uZI6>_^*clYWS~) z|7!TJhW~2#uZI6>_^*clYWS~)|7!TJhW~2#uZI6>_^*cl55xb5;s3+%|6%yAf&Uu# zuYvy>_^*Ng8u+h){~GwOf&Uu#uYvy>_^*Ng8u+h){~GwOf&Uu#uYvy>_^*Ng8u+h) z{~GwOf&Uu#uYvy>_^*Ng8u+h){~GwOf&Uu#uYvy>_^*Ng8u+h){~GwOf&Uu#uYvy> z_^*Ng8u+h){~GwOf&Uu#uYvy>_^*Ng8u+h){~GwOf&Uu#uYvy>`2Ps}e+2$N0{_-}y!2KaA){|5MPfd2;g zZ-D;>_-}y!2KaA){|5MPfd2;gZ-D;>_-}y!2KaA){|5MPfd2;gZ-D;>_-}y!2KaA) z{|5MPfd2;gZ-D;>_-}y!2KaA){|5MPfd2;gZ-D;>_-}y!2KaA){|5MPfd2;gZ-D;> z_-}y!2KaA){|5N~1pI#j{yzc#pMd{QCTbIZpSpuj@8Hur5}sM#kyrzIetkz`E%-UD z7u}KYTHGDUPl3x_l3W3<1oM=8{p}8Fxr18nNZqfJPf^!W>RL)&OQ~xqbuCS}uBFtq zG~v3IQrA-ITAFlSOQ~yV(seCOx~`>3*R_iT`^T1H*VsB0N@Eu*ew)U}Md zmQmL->RLu!%cyG^buFW=Wz@Bdx|UJbGU{4JU4KAb%c*NQbuFi^<5X>kp}G1$C{Ut`*d^g1S~v*9z)dL0v1TYXxRL%%{||NDNnLkR*PYaLCw1LPU3XH~oz!(Fb=^r_cT(4#)O9Cy z-AP?{QrDf-btiS*NnM|&u2s~vin>-&*DC5-MO~|?YZY~^qOMicwTik{QP(Q!T18!} zsB0B#U}AR?|AGX`R)y&T3j`HLbIn)>%#KtfqBV(>kkZoz=9?YFcMCt+Sfe zX{2=;X`Mz|r;*laq;(o;okm)xQDe=eR3oj^m~iVf(mIW_PGiEY)0lAUG$!0SjT&ow zyj!O+;nrzPxOEz7okm)xk=ALXbsA}%Mp~ya>DFnabsCdyoyMeFr;*laq;(o;okm)x zk=ALXbsA}%Mp~ya<<@CTxpf*-Zk@)ITcdbsA}%yJ?-fX`Q=iox5qByJ?-fX`Q=iox5qByJ?-fX`Q=iox5qByJ?-f zX`Q=iox5qByJ?*!TBnKDX`*$SXq_fnr-{~SqIH^RohDkRiPmYNb((0MCR(S7)@h=3 znrNLSTBnKDX`*$SXq_fnr-{~SqIH^RohDkRiPmYNb((0MCR(S7)@h=3nrNLSTBnKD zX`*$SXq_fnr-{~SqIH^RohDkRiPmYNb((0MCR(S7)@h=3nrNLSTBnKDX`*$SXq{$w zYlgRGcx#5YW_W9cw`O>2hPP&TYlgRGcx#5YW_W9cw`O>2hPP&TYlgRGcx#5YW_W9c zw`O>2hPP&TYlgRGcx#5YW_W9cw`O>2hPP&TYlgRGcx#5YW_W9cw`O>2hPP&TYlgRG zcx#5YW_W9cw`O>2hPP&TYlgRGcx#5Y7IT7IT7IT7IT z7IT7IT7IEfdgSR$#YlF8ocx!{VHh61;w>Efd zgSR$#YlF8ocx!{VHh61;w>EfdgSR$#YlF8ocx!{VHh61;w>EfdgSR$#YlF8ocx!{V zHh61;w>EfdgSR$#YlF8ocx!{VHh61;w>EfdgSR$#YlF8ocx!{VHh61;w>EfdgSYm? zU5P(QwI@CUel~HR;x*u(fos8+jmb(MldJ+iMM)m~jWPIy%Y#pXp99w!Q}_GR)ISh^ zNw|g@*HGh{glk+wjcXFFaZSQCu1UDYHPpC<8rLLU&vT$6N-Yp8JzHLeL<!@)ZHLjz^b=0_y8rMr%;-}w zW3=AxgPHqa<~}i_5;0@^9JtO1Gxv!Z$6pd|pvDcjgNqjg4@7e za69N-LmjNzb+BsJ!Kz&ct9Bi%+I6sM*OB-~>e>tH$y5E+eo(&xs`w!I45(l1RLNoR zYoMM>Rmrp9KY=6QaWD&h1AGDW&hUqx#Ayw$CoEC*{SsRir6dawcfB)FXOtN>SnpEg%X z^p-?#tdVvk(OYu0&n!pPF>+MnXM7&{s^ic4dV)Xqd4l!C_xe-$tv*e?-z9Qg$F~ue z6MulXg18dAosufz4-r=rf0($2_#?!%#2+QDBmNk1J@Lnh8;CzadTY81dg@61zr^1A)WOG(z~HLQtiZE zx$Q`;A@*u&M`|rGy)w0q7!Ff#nED-ue*u&Cfg8Y$;3jah@czUc(yePtpqJ+IDN?03F!d?_5 z>_rh?6eY|_l&}{?33C!9>_t(+UKHU)k=7slSN5U^FN!q2JGK`^8sClfqKI!0BD^TV ziz2)z!iyrjD8h>(yeLZ8i=u?RD8h@PguN)ji=u?RC`#CiBD^R{*o&fsy(q$qqJ+ID zO4y5{guN(A*o&fsy(mi9i=u?RD8h>(yePtpBD^TViz4MDzJ7aAgcn74QN(u~5ndGW zO-FUKHU)5#Oprcu|BGMR-w!7e#nc#P=)_UKAzmMG;;UCGABKUKAzm zMN!gT6eaCNQPN%%CGAB~(q0s4-APxXbtj{}C{q3=-teLbFN*M@2rr88q6jaF@S+GW zitwTcFN*M@2rr5P_ap5j^*Qk(?TaL~7e$%@x!hh9X&&U*UKFM5MUiGhj_pN}=0uL| zMUiGkj_pN}=0}e0MUiGnj_pN}=1Pw3MUiGqj_pNJ%3c(u>_t(^UKFM5MN!IL6s7D% zQOaHv;YAT%6!G0tgcn780~O#K{acu|BGMR-w!7e#ncgcn6Adr^cJMJanxgcn6A zdr^cJMJakEUKH_-RfHEscu|zH7ey(1QIxV5MJanxl(H8^DSJ^TUet*fb;@CeRpQn4 zP8_BaFY3gLI`N`Twcv0n#*1RSDCWo*FN*P^7%z(Pq8KlV@uCT_{ZRC@W0FL2jo}A zKcS?R_#Wam;ypK+03RE`#|GqMK7KFPzYp9G9sm!5&wz(G@-X-{@ay2SpnhLS=kasm z1M)Fr7W@YI0(gSEI|=ID4Lar}@MW&{+Z=O>x?UlEl~}(!q$6J=_AGBeZsrot@&@E) zjy=m8kefO7EN?(==J;R1AAvssM?w95pgz?vRtfd{fkJ0i19CIRp5+b5%^aU2o*?!t zZ$NJ5^0$5Eax-HQSPXiWHy}6DF}T@)+|03`of(juIrc1XKyK!EF@N=5&^gS2+|2kv z>neFWSi`5aU>#TwHh`Z5y(eTq{w9UU-;684Pg4u}l)p)(_}hT|&9$$lF7M?SNdCsC z->A{w26_vs@Fvi+!U5cGK<=memHX*$<$gLF?l&O!bIHB_RPLu(?x#=XevWS=E+_r~ zaRqTDcsnIk#2+HACjKyS4e>{aYl%NfTu1yd;(Fqb6E_flg7^;NrQkAfIk*zM6I=z} z<$IU=`D#5Y9FY4t_N;I~?&sLE!U5cGKV*IMz2u5Sk|>e*ef|G;aWe5=^snE=L1J#=&Kq$mQJMJT8}UtvcPCnJ#B&nq#20VG za})1M{N0UMbI(NIjkqYWDDkr!@%+RsiT}J2rxPDdhBxA3#Y=C*3lbkr-j~o%UETCw zbX}dvFWrcfiG@LMBMuVjV9|{@l~^6zb|bziaa(Z5jd)ICNwD!oJU8+FAaf(0m)I9P zbt5iHd?>Z*Mm#^UG_~nQoKCDw?Yj{dC)VDSxDhW%+;h{~RbTk4FLZt3fxrBV+y3J7 zU7x@0e{|gccb#AOs|{VZ9lGt~AFKaZt)TuRxBXE^$6syw%iBKP(RqJI=jZ=#byptV zRI&CmOOm!pOQGy*KxA(@X_GcZ5Yse;LQ9cSHf1?YPt!n})GR;|krrh~LBRzS%ObLg zxWFgKqPVaqAg(A1qImU+3!8$9`n@w}a$3;qz0ZA~?~kv2GViSK@11w%o$bs?BEDcC zt*A-~Sc>I9I6or$eI94nqXf#7kR{ckrC8J?OHS11FSA%BX@n9ALs^S8%_^~6taz%L zslJdeY>_RIkX)uz%ArY?V0jE(4wP9c1k3!-aJ=YFy!qGYGXXYy$kYP?jgnQRLH5z)%kQ@ z_(b3{O{eI}bQbu?5SGE`(FJu?&@)3kR|UjcbQ|E4u9I|D_`rQ??z8H8LF@p?9RzNE z;A7Fbz#oFr%w_z1;0x%|bVU%SfX@P!AOj7&w?ue#Py(tCqjLg*2BPu=_RJW zFx2ADI{Ir}v-XOBw)^OM!~Ycip9T_Lt6|p0tew($YgadM-d>4)jv3pHc4 zVlp$HmC!x~yf&=;!#t-2>dADawsi#ZF-|aBZ4T>BLgy`I24Z( zkO`SlB1%GyP%>(anxGWa6g5N5Q47=(wL+~?8`KuHL+w!qWI-KKCj{@_A$ao(bw%A! zchm#*M7>ZdN<+PogsdnXWgr`}Be7n*_YMl(?jsztNVJ?LIE z8_hv;(L6LCEkFy=B6J_RA1y{p&;#f}v=l8v521(ABj{1I9IZf)p~ulm^aQFytI%q+ z2CYR;qIKvgv>t6h8__1T89j}*pl8rl^elP~J&#^M+t79dziEwjpq=O?v@1S?ld+2@i0s0UfM<1b&5&S|J z`V^f+r_g8UH2NHUfzF^W(Lc~v2!06#eS^-TZ_#(?d-MZ3hv3&G&_#3!{fK@-m(dmU zGx`PnimsyH(C_FEtiuRn4BtJ7_1J)oI1b0-1Z=`)oQRWfBb;fL_U_!0alUXEAb$MEBLC4K_e;Z=AwUW3=-C-FM`6kd-v;Ei|_-i)8dTktb@ zD}EL~ho8qU!0*X#hu@Wc5%0h|;kR3N;oW!--iu$xui$;~d!4VrFJHca_u~WjApFwf zoAAqnhw%}76u*s+;dk)6_&xkS{s4Y~?>PJ_-N*3DZlB;!@kx9Ne*f$={4UlP_ze6~ z&_D23_-p)6{0%;fzs29-@9_`#96paP;EVVY{t^EK-*kQj|BQdZzv8R-H~c$%H>r*w z`1(l#-^8aU2Ke^0I1*11;JdKQ1iteKz8NT)G$u_*3TX=8iqV{XO9N>|T9Y=UExbqH z9^U1)kdCAixq);hH0jWRfi6Alal3xry{8 z{m9LvKe>fCNe*$5T;e8qWB?gR^2s2$;aETl$q-URhLT&!Fj7p0lM*t5jD%Ytqv3YO zZRB<`mW(6g$pm=1UrIcrj41Hr+zZdOePkk;MEsim)R9$WHCaQ}k|)VJ@)TK5Hjs^E6WL6jCR@leWGi`=JV%}< zFOY3yJNX~-BH2N9l9$LXvYYH7d&$e>6|#@KN?s$clQ+nIa)2Bphsc}cEpnI~AxFvE z=kWa{`LB1kilYf$L$XW6& z`Hp-~ejw+_d2)eVB$vpKS`U&ycID*284PX3@eiYTUpQmUs0YNT;Ao+eNe zHPb|zL>tj$+L$(>DYPkVMw`WYC zd(fV=7fq#Uv^SNgm8R1SYNK|VNwcVfX45|OCfb+wqc_w3^cL!*In+gSshj4}0dyeE zr-SHVT0jfw5L!fs(p%{;T1gxZ>MAFI69tApfW9`9$H2fT28&R zg8Jx0I*IyeB@NIZt)h3(5Dn7^jnc_<3Y|);=`?yLolftfGw9uPCas~hbQZmb-b-iG zIdm?aN9WT8bRk_t@1ytA#dHaMfIdi<(q;4^`Y?TjK1!F<74$LsI9*AfpmlT=T}{`} zwe(54jy^@#(+zYZ-DFG)1S4fiISoYp{^UR~z!vAefH$N>qM?93469njpiK4n<;u7_ zqQQt#R_ad(L@P_#lHVIJlm-2MIb^I-La^qI#LJc73&V=u#50G1lV6Fil0!BD|GTtTNPp&$tc6cU*d)JG~p z3g|Bw4bgJnWQBx%Q}tnGvJ%iMY}+_R)RL7P(vk2lTp=Nx6;eco&9Q#Llx1-8b}~4*944pQj^%!3s=>)M9q){3Nbd}RKC#ms z=Mo|r+-hOBTG(A*INlvAm5|T#uFqx|~3ES#7h%g;i@9jP!3;qZnc6{1Lm zD5@`JC{pDsij|D3jQS(KDu1=1i1$)MiCVNoEm~4vG`=KO#xR;E>W5bZLxBXZ5~>8V zF7<~EtSKfd23ajD*OxWG2?BJ$csa&GFLSlXN}MOA7HEA|SWycr^@Zc1Db?;~@Tqxx zY93)fOz-i&SRSH)8Um^sf@=1lnmt(0(hyYT3C2np%6yZ3Wr`uFDj}*CjH(5r^#$Xj zT8V0&2;&YYA-*~mZFE-3o=`AglvQeQg2geNaAI@@z0kcT8D*6kT%3u)qXN0=flQuy zKXsJ_Bh&+q!R3*Gxxu57T$Pl?LZP4>F_Zzk95K3u9B`(>;IL&aE<5I57>Vm&oL;_ZtSNoV}dT0ZdjeIOYL-hyC$ z3z(w(;1~+jPUlz25S3d%29)BAn3Stjk2e zF_fq_ALYbYBI+I$buUrt9_2(|!bTrG93BR|i6sqdo)~QyGL{H~h^o{yvc3kUDGmIi z8~Cg1{qdt?!-8Rqs+DP+B#hCzWWqGfYZ#-}Y#JweSgCl!hH`%pq)gzmh+3A9oZM@4 zs&j}@7K5fbg!43$I+Ag}xwwJ;%rM!)f=U>Fy{vi_TveBzt0`U+jWSIcR3+%Sg3S%} zq>lsx!Ej=%vOJXF^jB5L+#4^$+z)FLpKNwlg?&&l9v$b7sOgFMFc|SDW{~D0Se?O$ z#Usom4GJU_RVrRJV`Co_xduD#08(BVV?@+ z%uZ%JV^T5RjYQ^HT!O4A#jG@_SsVzYs*2T%`~^MEEtJVZTK+7}=g@rFF<+*n`82G|7?#y$kEL2QE>?|;RpXMbaY@&>q{p~O z>9!b`bd6tnrWU7hPS-f6Yn(GQ&KVl#42^S!ri%;>BSXW;&@eJIj0_DUL&LCX7&Z;V zreWAL44Z~guNRw!Vbd^d8iq~7$ke3D)JkM(B{H=VnOcb~O{y$SmMl${EKQayjdPa9 zIZNZ5rE$*EI6E}X4z0cp4a1>fI5Z50hT+gK92$m0!*FOA*&0T+hLNpdWNR4N8b-E; zk*#55YZzJeTw)ktDWVTqrC6#}ieXr#7=~4fVOXUYhE9N5+PO_$e`;VYHgDS|#wb5O(bbrIHa|8!&&#kyyX| zg-t{}KONvF0^G-UXG!%(2BmUXNmNr{SsjAsaj-K}4VL3|*#=hQ<~z@t{yk!`cW0Y;dO%B5A-C%ROoHN&1BuRRde z^Jy=h9ZOWg5k*-%>>&7=MunO0idBEu#Ew0L-^@=wVhONGj`(DMnXkNDpUdZqs!*^j z>WRdMqcDdsiS>NPZG>mAY^xsU3zWl7K2i;y2-}zWO)!asf>ZfXNgSKa*_lZ^TSs%B zS)88mfYBeE2Fp){O*VNsl2y?3L=QY@23>pj;v%*VpP0-S9t{>HrUw4T4g4WCH7aIy z>JwA1nVt942S5R_fCvpd244$FaII+$=v(&d2Ij zF z-zo5&0^cd{odVw}@SOtRDe#>F-zo5&0^cd{odQ2c;O7YZ9D$!B@N)!yj=;|m_&EYU zN8slO{2YOwBk+Yi+HwSbj=;~!GjYATB(?-qb?g!{xP%NYA%jcE;1V*pgbXergG-u8<*D z$dD^!$Q3f=3K?>R9&$xHxCOpj=)f&>;1>99f$tXhZlMFWz;_FLx4?G`e7C@N3w*c0 zcME*Cz!&4EEl=R*3H&^PpC|D11b&{t&lC800zXgS=L!5gfv=9&k}Xf*=LvjuJeTZZ zJhY2Z)2_}N5U=9fB^BQ;srYtD#kWf;zFkuB?UIUbmsEVaq~hBpwf=T7-r6M<-!7^3 zw_8>H+pTK-?N+t^b}PrXx>Y*`%F}`JbfB?xE+2%sd_cK;K)HNCxqLvmd_cK;K)HNC zxqLvmet>fMfO7e)Zq-hK3VhX0AuRA!JB6^oSM3zS0$;UL2n&4GP9ZGtRXc^Sz*p@Q z!UEsL^<#CbHVRbKU$s#Pi~6fJ3Sm)yR~EB12s>i72L5aj=WGxs zhia!*w`!+Ag&eA#LRiS5+9`yE9IBl{ShRy`rw|tHpxP;fMLVc=3Soh-+Nss8+9^=c z4yv6(ShRy`rw|tHpxP;fMLVc=3SrR>s+~eu)L*qz2#flwb_!upf7MQ{Zq-hKiu$T{ z31LxR)h;0{>Z{six+La>3@I#MHn0dF z@Zbwb9ADjo$H-Q>oWcT^rNi2mrSoMi^Y9fd%fJ@1Kyi6Fn~u`0=~CSA*g*%QJmNt)Khw+ zIGRtWKaR)wgW}nV89xxB%x7j!Z2KrSyplb(k(KPcXGk{Hl7Yr7Tl5f@QwO(ji7pP_ zgGkgF|A60@=C^XqaA~YLzek4PD(nV`gDbJ(zAnT-ZksMshx~FR0A-VPxUi_eqH8{^ zsL%p8es#bH{u;WXbb>B`&itudH(oA>mx$-mm>_?Wt})ysZlP<<;}bvv1Kd_NgA|Q) zO?1t4Ep=@~ie6{r@?(%B1>|l8GPLviys~a9ceitQmmfNgZXb6KaQBEm=<(~`5@P2g@5?zRqxB`fO0-5%Uc2R9w{;qEQm%>y?B6>xVL zcSl7Sw{hGp=Wc-Ohuwc>H?r$pBlkCS<9G~n;Tjj{>d!RRR%(ke7j6Ucw);;hYvG2i z&HOB`p^M?JxdGy?r3s+@_PQ=`voTY5vn~(rC63UI6J>`AI!(}xg1#ZBdQTkbE~#OZ zENF8<)73tR1_EZXPG5gVhs!WXHwdIT1^-BQ8ve2F3-~9xFX5j;C=L2jFWr5*`*n+T zOLX7pzJ+_~=X4izm*8fh7w!nILaX5x)^WIzGyrlVxc9Sx*RHiL;jeBAu{_Y%ps#~Z z&2#--qI)2PK%NxH(+qMVxN}qst&728zz^jS$iz!So~DqeIrR3H(0f}$&u$AT2#^AJx;SrE8O zS_I!~!Ds=z8HIKE@Ld-e;%wj+Fmy;^f6S-$2VJvq5N^t2bK}_4#?Ps>t_2vIX za1A*O7hu`-Y<2F&~KvFuz5-h`gm5QY}0ylQxsgI>t2~CD;>tTz_DYb8rC}l~R zR#@w@zcDQmVT#GL+R`)Z+4k%)((V5ts7*>&L3{o?P$nsV$6!FZRP#i`N+P|E)GX3T zHS=&yjqbH=7lt+4HFx%e?#&0?)_d@hNpqH5v=1L;|K?ccxYEL5x7zO5cV~IKc?Ul2 z@!G_MpRzuBB(mhE2exe8Hu<6R8wPpY1JWj$9vCvX=fdwt4O;M?@l5MpS86wo`si@Z z#nhLhCl_tne_y-h{(`t=?N6Tg!FxKiFMr?434Kq0zNh&b&s1O2JD*O)1Uk{0n%AV7 zS0tMu4*G*$Z$yZ8le$QqV_^x+ZYf?22ztU*X>fq)gQqP4_BMiK292~!LFf;P;qH6} z3w5Bqq#jbYx-NB{XLk|>Jt6-!<$6cL;Z%>D2JupJR_I2?!Yn1kKuMgG#Nr#VcuKJ0 zWvM+2H>S`h)}}~}t&KpfybBnH7dx%+0?4&piPR#b8~Xa-1D$7{I+NIW-^td`uEML< z)ux(fHLJ-=s7>m%bxaF++j0Hxb5ERKvgG*@t#4U(_JKW)?5)wvNS{ZF&SdR;bl#z5 zIqkOY*k8A3Kj*!KRf%GVa}&(A6hxi z{K)4|?%7*=@2e9|pL)96@%>K@F8g?Yo7;A8&W?NE(P>r2g5L9&pWS8b*gw}9Z``J| z?YwK?ySX#Zt~z=UztHsP@cqr#%)I^Q>YK-g?wZ?TWiQw2L&Zn#>i1KRJ}(w6)je66 zFl+438K700ERN5VO-5(-#c za+P9jDm7uz#uQU-G*l`FCbN4}vGzzvF$}Mer$iKMJE;xJW=d(QMp#^MQtc~;qgr-$ zYwaMlQ`@h(NM;5cj@hp;+YGQ&II@eGEemGE%=Z6etf)nu8ft}^Yb|P|lWI`{W<6@d zq371Vb=dMu!d>$=&xxLUVaWMYuQb~0m3OZxYy0s_KOf52bdNM|)Qp8ECViT@veDjS z-%hq*Z-bxsrT3)vYcH=^zOMBFeERN! zVP7Oo`1Y2zGj=4N?7#noQ*(BYpEl8&Mjow6SwFyX#2QWGq_`DXYl34zyse|^xWJB*DV?lk?x z&0UYRpZe_+)`RE&(W%vm*Pb8XTHbnmUHipn#{KyH^z(OZDn&00jwJ%o#bS39cUlP zA!XLt>e6S&-bDJ-xS{ryhF!(woKbdd3?8uX88ut7r^5rjm}#;gJQr7I)SB)8p#)+OFr_rF zpHf57aKti1f$d~ylJzDjTNN>VINaC^v)AmRVZ|axENo^8i`W!gKbU+TZ_b{I6G2(#GtaH@)9Y zH@5%j;;1_xyM(sAk?`WoBYV0=WN+8PiC=zOBafi%*AsYE>ScxFf&fsG~Y@qqP1+uL%QJez>tI+A!-w#}X+!8(Q@5{aWZJMUd1#U?t?;QM2glv`-ojlM1Jk?j zLSwI5=ZtxO;l18bb6eHzwV(T@=bDaRE&gfNm+QZqFm>FW6K4H3(lpkY=ovoY16Ri% zRP(PzCqPpl@@e3DQ?6nrW}!aGD=7xkgxLep>?>|$Y(b_uTmS34(AL+k6TrwTV`Y(<%F_5%W9x2{MoS~5lIHQytG!BZudf_duN@?#SPavq z_ka0r>)D$Z-8bpgqcbPIH?U=|J6okmH#WaPtX|+QaPZpY%j7VRW1QG51_MuXsc8%s zRx4sDMaX|SNLm@w4iuJA5-g+YI?d+Y9eVqp2E;0loWTb`wjhS(Q76f=w!PHW+FEJ} z5zzM=^Ddv^(grxYDsmFMR?zg}w)Dl$;D%>@Y9NM`0_O;_G>vYh_aVd#~Fn+^py)ZULBH`Ft z%$Q;r87zhO9<0zKSjL2=%?jbt8+%RI0ta1QHu&-V)Xh>~mTpS1^B1jUza>A{5*sU1 zErsk>SvXi8u@r+d1zvx!jDWYP;Zxxx6d!g*fh?vs^G&Oa~vN&^5iY&TIHKMwJ$E(=UR7Y!G;k( z1O^(`>zie__uSOE$>JT496c0gzbo{`fRVpdzd3)I--Na5(zPWo2ktr^k2Swd?5@2fsDSom6;ibU|Tkw3`K^-QBR=1p`ar z`UuRhsA4Zq=cjnOfNT3=p8fv zdZ=k^h*zhG91sk)c{CY1QvJC^8_L&+I#?!NXXAW(H{>6k=A806o3;4-o$qHP9ohHj z2cF&Mwmtae#8Bz!AK&Tg_%)unubwjq8_Py2FXnJL7?N7<)cP`$(V)^mg`=*@#1{+#- zE$lllm@)s|*(d)wDkIwO?1R3~bAv;4{-f{T`|*f%%h&aPv!G+e;tLaYp8nb}HoId= z`ghh^;)P++gAtNy-u!<%?BV1;4e0gfRCQHSa)TaWwz6}ER@$jiJh7S^BvTmY>bsB0 zngjYeqGt001^S(PWK%p!lB?pW>9rXS?-dEX66 zc<=ljKX<$2?>cPG;naVQd@=uc|FdrnThZQ+ueMvohM!t=XT9(SYc29aR0V5#@BhiM z*4{rYUyPZEas`JkWX5BjQa+~GS%Fi|o I-Ko?4FC8~NI{*Lx literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Light.ttf b/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Light.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0d381897da20345fa63112f19042561f44ee3aa0 GIT binary patch literal 222412 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%0AG%b#%#Weyp=oz<}IGPqm z)8c4aT%)1Wt!Z(MiMFk2@iJ>#98HU(X>l|yj;6)Yv^bg;N7LeHS{zM_Yxd#ySkvN~ zeHg82+}v^bg;*NE&CYg!yli=%0AG%cHosL)|1w>IGPqm)8c4a98HU( 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 !}#gv~NV!5|5YF|kE)J0y^zWbk4>=%|6F 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 literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/gradient.png b/python/tank/platform/qt6/gradient.png new file mode 100644 index 0000000000000000000000000000000000000000..ae6c274eb969e3a132696acf74707e1653506bad GIT binary patch literal 305 zcmeAS@N?(olHy`uVBq!ia0vp^+(7Kj!2%?C{%$=8q*&4&eH|GXHuiJ>Nn{1`6_P!I zd>I(3)EF2VS{N990fib~Fff!FFfhDIU|_JC!N4G1FlSew4N!t9$=lt9;eUJonf*W> zXMsm#G0+BK5N2eUHAey{$X?><>&pI+m50Z`Ah~{R2~bGI)5S5w;&gI~M)Hp?w*7`R ziAe{z+*;k?kiF4>L2ftKyqY;G-9YuKC9V-ADTyViR>?)FK#IZ0z|dURz*N`JD8$gn x%EZFT#8TJ5#LB?Hd`6TliiX_$l+3hBEE+5z8XjzVX$sW9;OXk;vd$@?2>>67PZ0nB literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/item.ui b/python/tank/platform/qt6/item.ui new file mode 100644 index 0000000000..412d12ef62 --- /dev/null +++ b/python/tank/platform/qt6/item.ui @@ -0,0 +1,167 @@ + + + Item + + + + 0 + 0 + 335 + 110 + + + + + 0 + 0 + + + + Form + + + QLabel{ + font-size: 11px; + margin-bottom: 3px +} + + + + + 0 + + + + + 0 + + + + + + 0 + 0 + + + + font-size: 13px; + + + Settings Name + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + true + + + + + + + border: none; +border-bottom-color: rgba(150,150,150,100); +border-bottom-width: 1px; +border-bottom-style: solid; + + + Qt::Horizontal + + + + + + + + + + 0 + 0 + + + + Value: foo bar + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + true + + + Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse + + + + + + + + 0 + 0 + + + + Type: bool + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + true + + + Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse + + + + + + + + 350 + 16777215 + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Lucida Grande'; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">description</p></body></html> + + + Qt::RichText + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + true + + + Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse + + + + + + + Qt::Vertical + + + + 20 + 0 + + + + + + + + + + + diff --git a/python/tank/platform/qt6/pencil.png b/python/tank/platform/qt6/pencil.png new file mode 100644 index 0000000000000000000000000000000000000000..ea8bae64922f3d34fbd8e5274675e46085d6bea5 GIT binary patch literal 621 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl45bDP46hOx7_4S6Fo+k-*%fF5lsFvV6XN>+|Nkeu^lz{7 zKQ%ev(p>#}OH2qW_&)Me_?Lq-POe>C;ETAlknx5%ddBR z&$h(g?6=-OL49YZ+NWpx9-iKCVrBZ|T)9sVPyBj*acix~;hBbaj^v)7<8{2*CD;A^uCVrH)HQCPFk_Opy9+}HtE>l*!(QU)>&pI+m50Z`Ah~{R2~a58 z)5S4F;&O7r0bYrjGj>KsOk}C3`1ynNhCq#@Vxpj6U>QriPmEJg&=lr_(W&D9SctzPu;>XpDBbF!pnX?%*hWwop77h78adxoUs>>0CWD#v6bW~SygA4%V^ zb+h^NLyyxLvPyV*g^%!_0$QtD;u=wsl30>zm0Xkxq!^4049#^7Omz*7LJW*2B literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/reload_256.png b/python/tank/platform/qt6/reload_256.png new file mode 100644 index 0000000000000000000000000000000000000000..2be5fd1de08f7950d703d7800adef7d79b9ac4e1 GIT binary patch literal 12316 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%0AQLC89jCeyLI#-dX~VW>mVhG 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 literal 0 HcmV?d00001 diff --git a/python/tank/platform/qt6/resources.qrc b/python/tank/platform/qt6/resources.qrc new file mode 100644 index 0000000000..e6b9573cc7 --- /dev/null +++ b/python/tank/platform/qt6/resources.qrc @@ -0,0 +1,15 @@ + + + sg_logo_80px.png + pencil.png + gradient.png + arrow_hover.png + arrow_pressed.png + arrow.png + arrow_flipped_hover.png + arrow_flipped_pressed.png + arrow_flipped.png + tank_logo.png + default_app_icon_256.png + + diff --git a/python/tank/platform/qt6/resources_rc.py b/python/tank/platform/qt6/resources_rc.py new file mode 100644 index 0000000000..51f7b1fa13 --- /dev/null +++ b/python/tank/platform/qt6/resources_rc.py @@ -0,0 +1,1968 @@ +# Resource object code (Python 3) +# Created by: object code +# Created by: The Resource Compiler for Qt version 5.15.2 +# WARNING! All changes made in this file will be lost! + +from . import QtCore + +qt_resource_data = b"\ +\x00\x00\x04\xe2\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1f\x00\x00\x00%\x08\x04\x00\x00\x00\x10F\xfay\ +\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\ +\x00\x00\x00 cHRM\x00\x00z&\x00\x00\x80\x84\ +\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u0\x00\x00\xea`\ +\x00\x00:\x98\x00\x00\x17p\x9c\xbaQ<\x00\x00\x00\x02\ +bKGD\x00\xff\x87\x8f\xcc\xbf\x00\x00\x00\x09pH\ +Ys\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\x00\ +\x00\x00\x07tIME\x07\xe1\x05\x0c\x0c00c\x7f\ +\xadt\x00\x00\x03\xd5IDATH\xc7\xe5V?l\ +\x9bE\x14\xff\xbdw\xf7}\xb6\xe38\xb6\xd3$m\xd2\ +\xd2\x9a\x0c\x91H \xa8\x0a\x02\x8a*\xea\x85\x81\x11!\ +g`\xe8\x04\xd9@ba`1\x9f\xc4\x80\xc4\x86\x90\ +*\x15!\x06\x98\xe2\x91!c#\xa4\xb2\xa0\xb4\x82\x86\ +J4%M\xd4\x84$\xb8J\x94?\xb6\xbf\xcf\xf7\xdd\ +=\x86\x94\xc4&v\x85\xd4\x05\x89{\xcb\x0d\xf7\xbb\xdf\ +\xef\xdd\xfb\xdd\xbb#\xc1\xd3\x0c~*\xf4\x7f\x0cN\x01\ +\x83\xc1\x15UQ`p\xc0\xa0\x7f\x0b\xa7\x80Ae\x02\ +]WPP\x0b\x0a|\x85\x03\x85'l\xd1\x02\x0fh\ +\x9c@\x1fh\xe8\x11/\xa5G5\xbc\x05\x7fE\x8f3\ +8PA\x97$\xe9\xa8p\x04\x02\xcd\xe9\x1c\xaf\xa9\xbc\ +\x8a\xb8\x9f\xf6\x90p\x9e\xad9\xdf\x16\xe3\x00pe\xf7\ +\x04\xf6\x80@\x15e\x95\xd3\xc3^\xc2\x1f\xf0\xabI$\ +\x904\x89\x1e\xbf\xe1\xafy\xe3|\xa5c\x0a-\xa2\xe6\ +\xe9\x22\xf5\xb2h\xf6l\x22\xea\x19\x1d\xc8'\x9b\xa9t\ +J\x92)\x7f\xdd\x1b\xd5\x19\x0a\xd4\xc9\x0d\x8e\xc5\xf3\x82\ +\xda\xf0\x94\x0e\x93y\x7flj\xe8C\xce\x99\xfb\xcb_\ +\xacnyF5\x1bQ\x7ft\xd6l\xc5\xcb\xae\xe4\xd0\ +fS\xf5\xc9\xe3I\x85w\xf8<\xb3\x97\xd3q\xe2\xb9\ +\xcf\xd0/\xcc\xa7\xfa_\xaa/\x88\x89\x98\xc0\xa8\xcb0\ +|\xb9\x89\x89\xeeu\xf7HQ\x93G\xb2\x9c\x07\x81\xc0\ +tf\xfc\xa3d\x9eS*e\x13\xda\xbf\xe3-\xeb\x12\ +MsG\xf6\x09\x0a\xc9\xb1\xd5u\xaf\x8eg.#\x0b\ +\x12\x22\xa2\xfc\xa9\xd1\xcd[\xcei4D\x89\x93ey\ +M\x0a\xd2\x91}_\x80=8\x89\xf0\xc75\xa9\x0b\x81\ +\x84\xc1\xfa\xf9\x8b\xef\xf9\xc90\xa1\xfd\xc8;\xaf^\xe0\ +L\x1b\xff\x11{@\x05\x22\x8e\xd9\xd7}\xeaQ]~\ +\xcf\xbe\x0c_\x88\x08\xd0g\xf3\xe9\xedE\xe5u*D\xaf\xe3\x98l-\xae\x9a\xc1\xb8\x18\ +\x07\x1d\x9aeK\xa7\xad\xf0\x0e\xcf\xf0\xb7zX\xef\xa8\ +A\xce\xd2\x01v\xe5\x5c\x1c9\x1d\xffh\xdf\xb7\xd32\ +kqb\x1c\xbbN\xee\xca\x8c\x0b\xe4R\x1c\x9a\x89\xa6\ +\x17mF\x1c\xba\xe8Os\xba\xd9\x1d\xdc&\xbe,\x01\ +\xca\x16\xb8->\x19:\xa0\x94x\xb2+\x05\xb7\x0d\xd8\ +\xd9n\xef\xb8\xb4\x07\x95\x94(Q\xa2n\xe8\x1bZT\ +I\x09\x09\xba\x07\xfd\x8f\xbf\x07\x7f\x01\x10-\xe0v\xba\ +\x8e\x7f\xee\x00\x00\x00%tEXtdate:\ +create\x002017-05-1\ +2T12:48:49-04:00\ +7\x98Z=\x00\x00\x00%tEXtdate\ +:modify\x002017-05-\ +12T12:48:48-04:0\ +0\xe0\xb2\xe95\x00\x00\x00\x00IEND\xaeB`\ +\x82\ +\x00\x00\x03\xaa\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1f\x00\x00\x00%\x08\x04\x00\x00\x00\x10F\xfay\ +\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\ +\x00\x00\x00 cHRM\x00\x00z&\x00\x00\x80\x84\ +\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u0\x00\x00\xea`\ +\x00\x00:\x98\x00\x00\x17p\x9c\xbaQ<\x00\x00\x00\x02\ +bKGD\x00\xff\x87\x8f\xcc\xbf\x00\x00\x00\x09pH\ +Ys\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\x00\ +\x00\x00\x07tIME\x07\xe8\x06\x0c\x17\x08)`W\ +\xde\xc6\x00\x00\x02\x9dIDATH\xc7\xd5\x96O\x88\ +MQ\x1c\xc7?\xbfs\xee{of(5\x93\xe4O\ +F6\xc8\x86\xcd,\xb0\x18\xb1\xa0\xa6h\xd44\xb2\xb4\ +R,m($Y\xd9\xb3R\x93P6(\xcd\x84\xa6\ +\xa4F\x22QJ\xd1\x10E#\x131\x84\x99w\xcf\xf9\ +Y\x9cs\xef{\xf3\xe6\xdd\x87f!\xf7.o\xdf\xdf\ +\xf7\xfc~\xdf\xef\xef{\xae(\xf3y\xcc\xbc\xd0\xff\x18\ +\x9e\xb4\xfe,RG\xe1A\x1bF%\xda\x0aj\x10@\ +\x10\xc0\xa3\x80\xa2\xf5%\x92\x96P\x83D0\xb1\x84\x07\ +\xa9;CR\x00\xb6\x80\xc5`0\x80\xa0(>k\x81\ +\xd6p,\x90`\xb1\x18l\x0ev\x08)\x8a\x8ad\xfc\ +M\xe0\x92\x81KX\xec\xba\xf6\x83[;\xba\xd3\x89\xab\ +7\x87\xa7H\x11\x0cZc\x9f3:\xb1\x08\x09\x09%\ +J$K*\xc7\xf7.\x5c\x01\xc6O\xbf\xda?D\x1a\ +_\xd5\xd0H\xa3\xeeb\x10,\x96\x12%J\x8b\xda\x8e\ +\xf6\xb7\xafL\xad3\xa9\xad\xac\xee.\xc7!\x16\xe9.\ +\x82\xc9\xc1e\xcaGv,X\xe3\x04D\xad\xab~}\ +\xe3s!\x0bF\x17\xc4\xb2\xe1\xe8'z\xbb6:\xa3\ +\x22j\xbc\xf2\xe86\x12t\xa7\xb9\xee\x124\x8e}\x1f\ +\xeeY\xbe\xc9\x19\x0d\xc7\xd5\x077\xce\xbeD\xa3u\x0a\ +\x84\x13$J\x96\x1cZ\xbfv[j|\xe0v\xf7F\ +\xce\xbf\xc0G\xdeY\xb3n\x84\x83\xc5\x1cX\xb5\xa1\xcf\ +Y\x15\x15\x04?vkh\xd7\xbf\xba\xe3\xfe\xe4\xf9\xaf\x7f\ +\x0f~\x01V>6\x1e\x1b],-\x00\x00\x00%t\ +EXtdate:create\x002\ +024-06-12T23:08:\ +03+00:00\xb3|\xe2\xcb\x00\x00\x00%\ +tEXtdate:modify\x00\ +2024-06-12T23:08\ +:03+00:00\xc2!Zw\x00\x00\x00\ +\x00IEND\xaeB`\x82\ +\x00\x00\x02m\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x10\x00\x00\x00\x10\x08\x03\x00\x00\x00(-\x0fS\ +\x00\x00\x00\x04gAMA\x00\x00\xaf\xc87\x05\x8a\xe9\ +\x00\x00\x00 cHRM\x00\x00z&\x00\x00\x80\x84\ +\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u0\x00\x00\xea`\ +\x00\x00:\x98\x00\x00\x17p\x9c\xbaQ<\x00\x00\x00\xc3\ +PLTE\xff\xff\xff\xe4\xba/\xdb\xaaO\xca\x93P\ +\xd2\x9d/\xde\xa45\xc2\x821\xc9\x90O\xcb\x93S\x98\ +c \xba\x8b;\xc8\x90N\xd9\xa8P\xd8\xa5j\xf7\xe1\ +\xc9\xf8\xe3\xcb\xca\x95B\xe4\xba/\xf4\xd4\xa7\xf8\xe1\xc5\ +\xf9\xe3\xcc\xf7\xdb\xbd\xf8\xed\xc3\xf8\xe2\xa8\xdd\xael\xf4\ +\xcf\xa5\xfc\xf4\xb3\xf5\xd9h\xf3\xcfo\xd0\x9dY\xdd\xab\ +s\xc9\x91O\xf5\xdc`\xf4\xd6D\xfa\xee\x8e\xe6\xb4]\ +\xd9\x8f;\xbf\x90'\xb9\x89&\xf2\xe6\xbe\xe1\xcb\xb0\xc8\ +\xa9g\x93m\x1e\xf2\xe1\xc8\xfa\xe7\xd1\xb5}4\xc3\x99\ +1\xdc\xc4m\xcf\x9cJ\xc7\x834\xf9\xe3\xcb\xec\xaaa\ +\xe8\x98@\xc2g\x15\xaa`\x16\xb4v,YB\x12\xd4\ +\x9c]\xf5\xcf\xa6\xec\xcf\xa9\xc1\x8bHX@\x13^B\ +\x15\x9ci%\xff\xff\xff'\x8b#\xaf\x00\x00\x00\x0bt\ +RNS\x00\x09\xea\xfd\xdf\x19\xae\xfd\xf7 \xad\xe9Z\ +\xd6\x0b\x00\x00\x00\x01bKGD\x00\x88\x05\x1dH\x00\ +\x00\x00\x07tIME\x07\xe1\x05\x0c\x0c00c\x7f\ +\xadt\x00\x00\x00kIDAT\x18\xd3c`\xc0\x0d\ +\x18\x99\x98\xb9YX\x91\x04xx\xf9\xf8\x05\xd8\x10|\ +A!a\x11\x11Qv\x04_L\x5cBRR\x94\x03\ +\xc1\x97\x92\x96\x91\x95\x93G\xe2+(*)\xab\xe0\xe2\ +\xab\xa2\xf1\xd5\xd4Q\xf8\x9cj\x1a\x9a(\xf2Z\xda:\ +\xbaz\xfa\x06\x86p\x07h\x19\x19\x9b\x98\x9a\x99#\x5c\ +haiem\x83\xc4g\xb0\xb5\xb37\xe7\xc2\xe3g\ +\x00jt\x0c\x8d\x13\xc4\x0d\xca\x00\x00\x00%tEX\ +tdate:create\x00201\ +7-05-12T12:48:48\ +-04:00\x91\xefQ\x89\x00\x00\x00%tE\ +Xtdate:modify\x0020\ +17-05-12T12:48:4\ +8-04:00\xe0\xb2\xe95\x00\x00\x00\x19t\ +EXtSoftware\x00Adob\ +e ImageReadyq\xc9e<\ +\x00\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x04\xca\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1f\x00\x00\x00%\x08\x04\x00\x00\x00\x10F\xfay\ +\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\ +\x00\x00\x00 cHRM\x00\x00z&\x00\x00\x80\x84\ +\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u0\x00\x00\xea`\ +\x00\x00:\x98\x00\x00\x17p\x9c\xbaQ<\x00\x00\x00\x02\ +bKGD\x00\xff\x87\x8f\xcc\xbf\x00\x00\x00\x09pH\ +Ys\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\x00\ +\x00\x00\x07tIME\x07\xe8\x06\x0c\x17\x08)`W\ +\xde\xc6\x00\x00\x03\xbdIDATH\xc7\xe5\x96=\x88\ +\x9cE\x18\xc7\xff\xcf33\xef\xbb\x9b\xdb\x8f\xbb\x98\x0f\ +\x13\xa3\x81\x88\x1a\x13\x92\xc2\xeb\xd2\xe4\x0a\x0b\x83\xb6{\ +\x88b\xa5\x88\x95\x82\xd8\x08\xc2f;\x1b\x11\x14-\x02\ +~\x14\xa2\xb8WK,7\x85\x82E\x0c\x89\x90\xc6x\ +$rx\xde]\xce\xbb\xdc\xd7\xee\xfb\xce\xc7\xdf\x22\x5c\ +\xd8\x98\xbd \xa4\x11\x9c\xa9\x06\xe6\xf7\xfc\x9fy\x9e\x99\ +?#\xc4\x83\x0c} \xfa?\x8d\xcb\xb4\x81\xe9\xd9\x9e\ +\x85\x81\x81\x996\x90\x7f\x8bK\xc7\xc2\xb4\xccy\x0b\xbb\ +\xe4z\xee\x9a\x9d1]@;:\x1cb\x07|\xda\xc0\ +\xec6\xd7m\xd3\xf9\xcc\xb9\x9as\xaetU{\xcdv\ +L[:C\xb8p$\xdc\x95\x8f\xcd)\x13l\xaes\ +\xb6)5\xdc\xe2R\x9a\x88\xf3\xe1\x95p.M\xa4V\ +\x02w\xc4;\xda\xd6\x9e]\xb2\xbb\x5c\xc3F\x03\xbb\xa1\ +\x15h\xac\xc7\xcd\xb0\x1a\xd6\xfd\x9ep&t\xd8N\xb7\ +\xf7\xda\xd1\xf0\x9a;j\x97s\xba\x94q\xec\xf0\xcbz\ +Lf\x8b\xcf\xcd\xe2\xfet\xc0\xec\x8f=\x01wJ^\ +`\xce\x1b\x9f\xeduky3\xef\xe7f\xd7C\xef\xea\ +S\x09\xc2t\xe5\xcf\xf7\xf6\x0df\xcbGK\xf8\xc9\x88\ +\x91\xea\xd23}Suu\xbb\x96W+\x1b\x95\xbc:\ +\xf1\x96\ +\x8d}\xe9\x99\x90\xc5\x0d\x1f\xcb~\xf9\xd7g\xbc\x02\x92\ +B\x10\xf5\xb1w*\x07WL!\xd1d\x02\xb4G\xa9\ +w\xd3:\x7fI\xbf\xc7\xdc\x87\xb2R\xc4\xad\x85O\xf8\ +\x1b\x92$P(\x8d\xdak9T\x1a\x00\xea;\xb8\x0d\ +?\xe5\x99X\x84\xd27\x8b\xd4\xc7\x00\xb7V?\x90?\ +p[\x9fxB\xa5B\xc0\xc9\xac\xcc\x8cJ\x1e\xe8\xa6\ +\x19\x1e\x09'|(M\x11\xfb\xa9/K\xcb\xef\xcb2\ +\x12Hb.\xf9,E\xfa\xbb\xfan\xce\x0e\xafp\x1c\ +? \xe3\x01lq\x0b9=\x07\x9b\x95K\xe6\xa84\ +ps\xf3C\xbf\xb0\x14\x93_K\x8f\xc5g\xefcV\ +\xd21/\x08\x5c\xb0\xfd\xcc\xb8\x8a]\xb1\xe3`\xbd\xbf\ +\x86\x90\x95\xc9\x07\x7f\xc8\xcf\xc5\x0bi\xdb\xac\xeeuZ\ +\xb6\xe3:g\xc3#\xbe_\xca`\xb3\x9f\xf5W\x06\x0b\ +7\xab}S$/a#]\x1a\xba\xf1\xa3\x8d\x9a\x17\ +\xd2\xd5t\xc8W\xcb\xad\xd2\x15\x18\xa0\xd8;\xb8Y\x16\ +\xe5\xbc\xd7`b+\x82m\xde\x0fG;!u0\x15\ +n\xf9_}\xbd\xdc3\xc8\x06,\x06\xbe\xe5\xbfIg\ +\xc2\x0c:\xc0(\xbb\xf8G\x00B\xae\xe2t\x9a\xc4E\ +\x99\x15`\x85H\x1f\x01\xbc\x8a\xf6p\xb9x\xbf)g\ +\x95J\xed\x9a\xae\xa1R\xcf\xea\xf6%\xd8\x9e\xf2?\xfe\ +\x1e\xfc\x0d}\xcb\xf5\xd6\x9b\xe4\xbc\xa8\x00\x00\x00%t\ +EXtdate:create\x002\ +024-06-12T23:08:\ +03+00:00\xb3|\xe2\xcb\x00\x00\x00%\ +tEXtdate:modify\x00\ +2024-06-12T23:08\ +:03+00:00\xc2!Zw\x00\x00\x00\ +\x00IEND\xaeB`\x82\ +\x00\x00\x03x\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00'\x00\x00\x00'\x08\x06\x00\x00\x00\x8c\xa3Q5\ +\x00\x00\x00\x09pHYs\x00\x00\x0e\xc3\x00\x00\x0e\xc3\ +\x01\xc7o\xa8d\x00\x00\x00\x19tEXtSof\ +tware\x00www.inksca\ +pe.org\x9b\xee<\x1a\x00\x00\x03\x05ID\ +ATX\x85\xed\x98]HSa\x18\xc7\xff\xef\xd9\x87\ +\xcdl3\xc7R\x0a\xa5\x22\x82\xa4\xbc\x08o\x92\xee\xbc\ +(1\x0a\xa2\x0d+\x09\x0a\xb3\x0f\x89\xc4\x8f\xae\x0c\x91\ +\xc2>\x8d\x89\x10\x91T\x10Y\xa0CCE\x82\x8a\xa2\ +\x06%\x08\xb1\x12/\xac\xcd\xc9\xb4-\xc7\xe6f\x9e\xcd\ +\xcd\x9d\xf3v\xe5\xdc\x9c\x93\xcd\xcdm\x90\xbf\xabs\x9e\ +\xf3\x9c\xe7\xfc\xce\xfb\xf0\xbe\xe7\xf0\x12J)\x02Qu\ +UeP\xc1\x86\xba\xc1qC\xf5o\xde+C\xe2\xb0\ +\x80\x90z_M\xff\x8b\x85\x00Y\x90kjjb\x86\ +\x0bf\xcaAq\x97\x02\xd9C\xe3\x06\xef\x04\xef\x15'\ +P\x0e\x00<\xdc\xac \x8b6\xf6\xba\x00@\x08\x00J\ +Mm1\xddG\x1f\x80\x92\x82\xc5<*J\xb0\x18\x00\ +\xa4a#\xb2\x01\x8c\x01\x80P\xd9]\xd3O\x19R\x0a\ +\x90\xe04\xba4\x90x\x18\x0aR\x9al\x89p0\xc9\ +\x16X\x09a\xac\x05\xf2\xa4\x0a\xbcS\xdd\x8e(\xb7D\ +\xd3\x00\xbd\xc3\xbcbN\xa6\xde\xf8M^\xb1\x87\x8f\x8b\ +\x9c\x88\x11b\xa7,'\xa2\x5c1\x13\xd1\xe3\xfc\xcbW\ +\xccrK\xe1(\x0f\xd3_\xeb\xb2\xd7\xbc\xbc/\xaaZ\ +q\x97\xfb\xc3:\xb0\xab\xfd\x5c\x5cj\xa5\xf4\x84Hi\ +\xb9\xb8\xb7u\x93X\x82\xc6\xa2\xf2\x90\xf8c\xdd\x00\xcc\ +\xac=\xaaZk\x22w\xfd\xc0\xc9\x90x\xaf\xfeK\xd4\ +r\xffW[\xadn'\x0ek\x1aB\xe2\xa3\xf6\x89\xa8\ +k\xc5]n\x9e\xe3\xa0\x9b2\xc4\xa5VJ\xb7u]\ +n\xb5\xa4\xb4\x5c\xcc\x13\xc2\xc2N\xa3\xac\xef\x96\xff\xdc\ +\xed\xf3\xc6Z\xd2O\xccr\xec\xfc\x1c4\xa3\xdax\xb8\ +\x84\x90\xd2m]\x97[-)-\xb7\xec\x84p\xb3,\ +\xbcV\x1b$\xf3\xf1\x9by\x91B8\xce\x7f\x1c$\xc7\ +s\x9c\xc7\xf8\xebg\x9ai\xcc\x08\x9e\xe7\x91\xe8\xbd\x88\ +\xa5,\xc8\xf9\x00\xfat\xf0\xb3\x96\xcc\xb9\xd8\xf3I5\ +\x0a@H\x807\x84#\xb5\x9d\xca\x96\x11\xf9@\xbe:\ +\x92\x9b\x8av\x17\xa2\xedl3\x00\x80\xf5\xb8\xa0\xf9\xda\ +\x87\xf7\xc3Zt\x5cy\x18\x94\xf7\xec\xe3+l\xcb\xda\ +\x8a\xe2\xbd\x07\x01\x00&\xdb$nv\xab1d\xd0E\ +$\xc7t\x1do)\xe9T\xde\x1f\x89\xe6\x8d$b\x09\ +\xb6+r\xd1\xdc\xd3\x8a\xb7?>\xa1\xf1D\x1d\xd2D\ +b\xa8\xd4\x95\x182\xe8\x90\x99.\x85J]\x89\x0em\ +7\xb6H\xe5 \x84\xa0\xac\xf5\x22\xb226\xe3\xce\xa9\ +\xd0\x7f\xbdp\xc4\xf4\x85\xb08\xa7 K\x97\x02\x00x\ +J1j\xd6\xc3\xe9\x9a\xf1\x1f\x07\x22`\x18\x08\x18\x01\ +\xa6\xe7\x1c\x89\x91\xeb\xad\x7f\x0e\x97\xc7\x8d'\x1f^\xe2\ +\xfbx\xf8\xc1\xcf\x91)\xd0Y\xdd\x8e\xecL\x05N\xb7\ +]\x8e\xb8~L\xeb\x5cY\xeb\x05\xe4V\xed\xc7\xb5\x8e\ +\x1b\xe0)\x1f6o\xc2n\xc6\xd1{g@)\xc5\xb1\ +\xc2Ck+\xe7\xf6\xbaa\xb4\x9a`\x9b\x0dm\x91\x83\ +ub\xd2\xbe\xb8Y35c\xc3\xa4\xdd\x02\xa3\xd5\x84\ +\xe6\x1e5j\x8f\x5c\xc2\x0eE^D\xcf!\x81{\xc2\ +\xf2\x8a|5@\xaf\xaeFx-\x08\x1e9BMI\ +\xf2X\x96 9\x91G\xfc\x88\x82\xbe&\x80'YB\ +\x81\xfc\x03\xc6n\x13G\xc1U\xcb\xe6\x00\x00\x00\x00I\ +END\xaeB`\x82\ +\x00\x00\x06+\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00P\x00\x00\x00P\x08\x06\x00\x00\x00\x8e\x11\xf2\xad\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\x19tEXtSof\ +tware\x00www.inksca\ +pe.org\x9b\xee<\x1a\x00\x00\x05\xb8ID\ +ATx\x9c\xed\x9d[LTG\x18\xc7\xffsvA\ +\xcbu\x0b\xb8\xa5\x82\xa8\xb1UAcm\xd3Z\xacb\ +\x1b}\xa9ikm\xb9<\xb4&}\x10kl\xe3C\ +QlL\x84\x94^lb\x8d\xd8bb\xa2MSc\ +\xd0\x06\xc5\xc6k\xa5\x8d\x18-M\xac\x15bIQ\xa2\ ++\x08\xb2.\xac\x88\xcb\xee\xd2\xbd\x9e\x9d>\x80+\xb8\ +\xb7C\xe7\xb0{\x16\xe6\xf763g\xbe\xf3\xf1\xcb|\ +\x993'\xbb\x0b\xa1\x94B*\x05\xb5\x9b\x9e\xb7\xbb\x1c\ +Ug\xf5\xedK$O\x8aZ\xe8}\x10R'\x8a\xb4\ +\x9c\x96\x9e\xb9\x15\xe8*\x22E`\xfe\xb1O\x9e& \ +\x9f\x01d\xad\xe8\xf1\xd8Ov\xdc\x88\x973U\x85c\ +RQ\x92\xe7\xd8|\xea\x1f\x7f\x83\xea`3\x8b\x8eT\ +\xc4z\x04\xcb\x06\x02\xe1s\x10$\x01\x00(\x15\xc6 \ +I%\xa3\x11A\xf7\x00x\xcd\xdf`@\x19\x05\xb5%\ +oyT\xe6V\x10\xba\xdb+\x0f\x00\x01\x88\xfc9*\ +\x1c\x82ed\xc7\xdb\x89\xfe\x86|V`Am\xc9\x8b\ +\x94\x90JB\xc8R\x7f\x13(\x0d,}\x1cC\xa0\xb6\ +k\x00X\x1e\x1f\xf0\x0a,:R\x92\xe1Q\xa1\x1c\x84\ +\x14\x93 +\x93b\xc2\x95pP\xd4\xabN\xad\x8f\x9b\ +\xe4J\xd8HUd\x1b\x80\x84\xd0S\xe8\xc4+\xe1 \ +\xa8c\x9d\x097(\x90!u\xc2\x04-\xe1\x80\x08\x18\ +\x85\xbc!\xf8\x0a\x1c\x06_M\x8cp\x81\x8cp\x81\x8c\ +\x04=\x89\x84\x93\x9c\xd4\xe9xu\xda|Ycv\x98\ +\x8d8\xd3\xf6\x97,\xb1\x12\xdb\x8d\x1bR\x8as\xfa\x1f\ +\xefW\x8c\xc0\xbc\xccy\xa8Z\xf1\x91\xac1\xebn7\ +\xca&P\xe5vm%\xf0}o\xc0K\x98\x11.\x90\ +\x11.\x90\x11.\x90\x11\xc5l\x22\xa1\xe8\xb2\xf4\xe2\xdd\ +\xe3_\x8cj\x8e\xd9\xf1\xef\x18e\xf3\x88\xa8\x11\xe8\xf4\ +\xb8\xd1\xd4\xa3\x8bt\x1a>\xf0\x12f\x84\x0bd\x84\x0b\ +d\x84\x0bd\x84\x0bd$jv\xe1\x84\x98\xc9X\x93\ +\xb3\x5c\xd2\xb5w\xad}\xa8\xef\xbc:\xc6\x19\x0d\x125\ +\x02\xb5q\x1a\xfc\xb8r\x93\xa4k\xcfu\x5c\x0d\x9b@\ +^\xc2\x8cp\x81\x8cp\x81\x8cp\x81\x8cD\xcd&r\ +\xc7r\x0f+\x8fn\x93t\xed\x80\xcb1\xc6\xd9<\x22\ +j\x04\xba<\x22Z\xfb\xba\x22\x9d\x86\x0f\xbc\x84\x19\xe1\ +\x02\x19\xe1\x02\x19\xe1\x02\x19\xe1\x02\x19\xe1\x02\x19\xe1\x02\ +\x19\xe1\x02\x19\xe1\x02\x19\xe1\x02\x19Q\xccQ\xce0\xd0\ +\x87?\xf4-\x01\xc7\xf5\xd6\xfba\xccF:\x8a\x11x\ +Bw\x09't\x97\x22\x9d\xc6\xa8\xe1%\xcc\x08\x17\xc8\ +\x08\x17\xc8\x08\x17\xc8\x08\x17\xc8\x08\x17\xc8\x08\x17\xc8\x08\ +\x17\xc8\x08\x17\xc8\x08\x17\xc8\x08\x17\xc8\xc8\xa8\xce\xc2\xa2\ +(\xe2N{;\xe2\x0d\x86\xb1\xcaG\xb1\x10\xb7\xc7o\ +\xbf4\x81\x140v\x1bp\xab\xb5\x15v\x9bM9o\ + \x14@H\x17f\x93\x09\xbak\xd7\xd1oz\x10\x8e\ +|\xa2\x8e`\x02\xef\xb467O1\xe8\xbb&\xfb\xf9\ +\x92\x22g\x08\x7f\x9b\xc8\x00\x01*\x12\xcdI\xb3\x0d]\ +]n./8\xc3W\xa0\x07\xa0\xd5\x82\xa8\xdeRS\ +\xb8\xa3\x1b\x00R\x1b~\x92\xfd\x86\xd9\x19\xcf\x22V\x1d\ +;\xa2\xcf4\xd0\x0f\x83\xa9\x07N\xb7\xcb\xdb\xa7MN\ +Cf\xca\xd4\x90\xf1nv\xb7\xc1\xee\xb4#'s\x8e\ +\xcf\x98\xd1\xdc\x0bc\x7f/D\x8f\xc8\x9ex\x00\x1e\x0a\ +c\xee\xc5b9*\ +\x15\x9e}-:\x16\xe6\x17\xbf\xbcq{\x07\xef\xd4;\ +\xc2,A6j\x9e\xa0\xcfj\x17\x8d\xd8v<\x1c'\ +1\x0a\xcf}\x18\x1de(\xf1\xcd\xf3\xefoO\x9b\xf9\ +\x9e\x1c\xeeD@_u\x9a\xd5\x89.\xda\x92i\xc7\xc5\ +B\xb70\x10\x1fy\xc7\x1cg(\x01\xcc\xf8\x81\xad\x97\ +\x17\x8b\x1ehR\x93\xaa\xfd\x9c\x9fQK\xea\xb02\xd6\ +Fq\xec\x8a\xaax\xf0\xf5\xc2\x0b\xa2D\xb1b\xe2\xd5\ +\xebI\x11e\xd8\xc7&\xdf\x83\xd7UKA\xdf4\xca\ +\xfaX\x15\xa9p\xe4\xd5\xc1IQ \x90\x10\xb0|&\ +\xf6\x05\x19\x12'@u\xfd\xc6=\xcd\x1f\xa4C\xe4\xd5\ +\x82-\xdb/dyz\xe9s\x7f\x15L\x0c!\xa1\x81]\ +\xef\xc6PT\x06P\xda m\xe43\x99\x0c\x99\xcf\xdd\ +p\xc6\x09R\xd7\x9d;\xc5\xd7\x1f\xea\x8b\xda\xb5k\xb0\ + \x80\xa5&\xcdP?\x1c\x0d\x9e\x91q\x7f\xd8\xf9\x5c\ +g!\xe1$m\xcd},w\xc0\x10\x08\xb7\xfeZ\x89\ +8\x88{l\xee=\xd6\x01\xc0!\xfc\x88HvbM\ +\xd6\x10\x8b\x93v\xc2\x17\xb7\x1c0\x15Y^\xfc\xe4\xde\ +\xed\xa5\xc0\xae\xcd{\xc3\xcb\x9b\x84\x15\xd5\xf5+\x04\xeb\ +M\x12i[0-\xb3\x05\x03\xa5\xfb\x1dvQ\xce\xce\ +\xbb\xddn>\x9c\xe3Ga\xf5d\xd2J-t\xa4\xe9\ +G]\x92S\xba\x9aDI+m\xde\x8d\xd7t\xc6\x8e\ +|\x97/\xf5\xbc\xf8\xfeA-\xe7x\x8ew\xbbb\xbe\ +\x96\xdb\x0c)\xb2\x91\xf4n\x9e\xe5\x0bNy\x1d\xaa\x01\ +R\x93\xcdp\xd4\x18\x5c\xc7I\xbf\xe2\xfep\xa5|[\ +\x1a\xa5\x92\xa5\xae\xea\xbe\xe5I?\x83:\xd0/.\xfe\ +Q@@sx\x89O\xe0\x225\x09h\x09\xf8\x14 \ +s\xa8\xf5\xda%\x9b-\x9aV\xa2D5tC\x8b\x12\ +5\xad\x1e>\x82\xf5E\xff\xe3\xdf\x83\xbf\x01\xfbS\xf5\ +Hv\xb9\xe0\x9b\x00\x00\x00%tEXtdat\ +e:create\x002024-06\ +-12T23:08:03+00:\ +00\xb3|\xe2\xcb\x00\x00\x00%tEXtda\ +te:modify\x002024-0\ +6-12T23:08:03+00\ +:00\xc2!Zw\x00\x00\x00\x00IEND\xae\ +B`\x82\ +\x00\x00\x04\xc5\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1f\x00\x00\x00%\x08\x04\x00\x00\x00\x10F\xfay\ +\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\ +\x00\x00\x00 cHRM\x00\x00z&\x00\x00\x80\x84\ +\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u0\x00\x00\xea`\ +\x00\x00:\x98\x00\x00\x17p\x9c\xbaQ<\x00\x00\x00\x02\ +bKGD\x00\xff\x87\x8f\xcc\xbf\x00\x00\x00\x09pH\ +Ys\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\x00\ +\x00\x00\x07tIME\x07\xe1\x05\x0c\x0c00c\x7f\ +\xadt\x00\x00\x03\xb8IDATH\xc7\xe5VMh\ +]E\x18=\xe7\x9b\xb9\xf7\xbe\x97\x97W\xf3\x1fR\xa3\ +\x0dqe\x8b-UAt\xd3\xb7\x11\x14\xd7\xe9B\x5c\ +(B6\xa2;\xc1]\xbc.EDAAJ]\x09\ +\x22}k\xa9\xbb\xd6M]\xa5B\xeb\x0f\x22\x06\x95\xd4\ +6MIL\xf2^\xee\xcf\xdc\x99\xcfEj\x92g^\ +\x8a\xd0\x8d\xe0\xccf\x16\xf7|\xe7\x9c\x99s\xbf\x19*\ +\xeeg\xc8}\xa1\xffcp\xa6\x02\x81\xb4M\xdb@ \ +\xa9\x80\xff\x16\xceT\xc0\x05\x82\xe7\x0c\x0c\xcc\xa2\x81\x9c\ +\x91\xd4\xe0\x1e%\xf6\xc1S\x1e'\xf8\x86\x85=\x1a\xd5\ +\xed\xacE\xb4\x18\xffj\x8f\x0b$5\xe9!&\xb9{\ +p\x04\xc1\x8bvH\x96\xcd\xb0)d\x84\x9bHB\xe4\ +\xbb!\xf6\xad*\x05\xc2B\xb8\x07{J\xb0m\xbc\x09\ +v*J\xe2\xb1x\xb5\x86\x045\x97\x0c\xc4Y\xbc\x1c\ +\x1d\x973}-\xec\x13u\x99\xa79(j%\xf2I\ +V\x9f\x1c\x1b\xae\x95\xf5F]k\xf5\xf8F4k\x9b\ +L\xcd\xc1\x02{\xe2e\xd1\xdc\x8c\x8c\xcdk\xc3\xf1\xc0\ +\x89\xc6\x9b\x1c\xd3\xdf\xcb\x0fW\x96#g\xca\xac\x18)\ +\x1et+\xd5R\x98\x0b\xd0\xbe\xf0\xb6\x81\x99\xb5Y\x12\ +\xc5Y}\xe2#}\x88\x04\xb8~\xe7\x1d\xb9\xb5]j\ +^\xcf\xe3\xbe\x05zv4\xa2a)\x12a\x9a\x04!\ +::\xfa\x96\x8eK\xdd\xd4}b\xe3\xeb\xd1\x92\x9d\xe3\ +\xd9\x1e\x84y\xfb\xee\xe2\x04s\x06\xf1v;\x92\xa8q\ +\x1a\xe3\xa0\x92\xd4f\xed\xd1\xee\x22\xbcE\xa6F\x83.\ +\xe93:\xd3\x9f}K\x81M\x04-\xd09\xaf\x9bJ\ +P\x05\xc2G&_3\x03yb\xe3\x22z\xd8<&\ +\xcd\x1e\xfe\xbd\x83\x03P\xaa\xf1\x89\x0e\xfb\xfc\x8f\xee{\ +\xd8\xda\xe1\x07yr\xe4\xd5zl\xe2\xc1\xa84W\xed\ +m\xb9\xd0O|\x0b3\xfc\x8e\xc14\xccf\x1cb\xe6\ +\xee\xe7\xe8II@\x100\xd3I\xbc\xfd\xbd\xf3\xa6j\ +\xfaU]\x0d3\xa1\x8f\xf86\x00\xa7\x1b\xda\xf0\x89w\ +p\xb7\xba\x9fh\x07$H\xa5ya\xe8\xb9`\xd4&\ +2\xbd\x93\xd0~;\x7fL\x01\xaf^U\xadV(V\ +\xba\x9fr[\xa9;\x0a^\x9ax\x0a\xe8\x10h\xb2\x8f\ +w`n\xc7\x0d\x0d\xc9\x8a\x00`&X\xfb;\x1aZ\ +T\xb7w\xbe[D\xda\x9f\xfd7F\x1c\x84\x13/\x80\ +g\xe3\xe4\xc0Y%\x15\x80\xa2r\xefo\xfc\xe2B=\ +,\x03X8\xe8=\xe5ev\x04\xd82B\x80\x1c;\ +5\xf0\x22D\x01UE(\xcfu\xae\x89\x8fC\x1e\xc6\ +u>\xf4\x11\xbf\x00`\x9dSb\xd8\x15/C\x8f'\ +\xaf\xa8\xa8\x22\xa8\x22\xb8\xcf\xff\xbc\xe2\xcb\xc4mU\xcd\ +0\x11\xda\xfb\xf4\xda\xbd\xe5\xaa<\x01\xc3\x01\x184N\ +\xd9y\x95\xbb\xd9V\xff\xe5\xdaW\xb60\xa5\xbaA\xf7\ +SX\xd7\x9b\xfdR\xd7&\x10\xb1\xc3\x9c[\xb4/S\ +\xa8P(\x83\xff\xfa\xce\x17\x9a\x87\xcc\x16\xc1\x1d\xab\xe0\ +\x87{\xda\xc6>v\xc0\xe9&\x0aL\x92\xa3T\x04\x10\ +\x08W7\xce\x87,\xce\xb3\xc2\x96\x95\xbb\x1e\xc6C\xab\ +\xa7\xe7\xec\xb2\xcf\xe9\xac\x02Y\x98\xa9\xb6\x8apM5\ +(\x83\xfe\xb8\xf6A\xd5\x1d\xcc\xb2\xfcH\xb1Ve\xee\ +y\xdf\xf2\xbd\xff\xfbnhSN\xf1()%\x84\xf6\ +\x9a\x1d\x81\xf8oV>\xd6\x8e\xcd]9Y\xdc\xa8\x8e\ +\xb8g}\x1aZ\xff\xb8\xd3\xf6\x89o\xe9E\xbd\xe3\x9b\ +2\xe4\xaa\x95\xf5w\x83\xc91\x18P\xd1w\xabU7\ +^\xb5\xaa\xb4O\xb3\xdc\xd7i\xdb\xb2.\xf3\xf2\x99\x9d\ +\xb2\xebf\x5c\x1e`\x07\x1b:]\x15\xc1VW\xfc\xeb\ +\xfe\xac^\xf080\xf6R\xa7?\xe8|H\xf5\xe9*\ +w'\xca\xa8\xb8UH\x1e\x8a\xdbn\xb2<\x1c\xdc#\ +~AS,x\xe0[\x8d\xe9\xd8a]#\xdd\xd0\x99\ +\xb0\x06\xf8\x0b\x87\xdd\xe3\xda;9g\xd4\xa8Qs\xc9\ +^\xb2j\xe6\x8cRq\xf8\xe4\xff\xf8y\xf0\x17\xfb\xea\ +\xe5\xfd\x825>\x0c\x00\x00\x00%tEXtda\ +te:create\x002017-0\ +5-12T12:48:49-04\ +:007\x98Z=\x00\x00\x00%tEXtd\ +ate:modify\x002017-\ +05-12T12:48:48-0\ +4:00\xe0\xb2\xe95\x00\x00\x00\x00IEND\ +\xaeB`\x82\ +\x00\x00\x011\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x0b\x00\x00\x00K\x08\x04\x00\x00\x00\x0c\xfd\xb5\xc1\ +\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\ +\x00\x00\x00 cHRM\x00\x00z&\x00\x00\x80\x84\ +\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u0\x00\x00\xea`\ +\x00\x00:\x98\x00\x00\x17p\x9c\xbaQ<\x00\x00\x00\x02\ +bKGD\x00\xff\x87\x8f\xcc\xbf\x00\x00\x00\x09pH\ +Ys\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\x00\ +\x00\x00\x07tIME\x07\xe1\x05\x0c\x0c00c\x7f\ +\xadt\x00\x00\x00$IDAT8\xcbcd(c\ +\xf8\x8a\x06\xbf1|ab\xc0\x0aF\x85G\x85G\x85\ +G\x85G\x85G\x85\x07\x810\x00\x1e\xbb\x0a\x9e|\x9c\ +$\x8b\x00\x00\x00%tEXtdate:c\ +reate\x002017-05-12\ +T12:48:49-04:007\ +\x98Z=\x00\x00\x00%tEXtdate:\ +modify\x002017-05-1\ +2T12:48:48-04:00\ +\xe0\xb2\xe95\x00\x00\x00\x00IEND\xaeB`\x82\ +\ +\x00\x00J\xed\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x01\x00\x00\x00\x01\x00\x08\x06\x00\x00\x00\x5cr\xa8f\ +\x00\x00\x00\xc4zTXtRaw prof\ +ile type exif\x00\x00x\ +\xdamP\xdb\x0d\xc3 \x0c\xfcg\x8a\x8e\xe0\x17\xc6\x8c\ +C\x9aT\xea\x06\x1d\xbf\x06\x9c*D=\xc9\xe7\x0b&\ +\x87\xedt|\xde\xaf\xf4\xe8 \x94$\xb9\x98VUp\ +H\x95J\xcd\x85\xc1D\x1b\x8c \x83O`\xf0r\x9e\ +~\x92<\xb3g\x9e\x05\xd3\xf8\xeb<\xc7\xc5\x06\xb0\xb9\ +\xca\x17#{Fa[\x0bUf&\xbb\x19\xc5C\xdc\ +;\x22\x17{\x18\xd50b\x9a\x05\x0c\x836\xc7\x02\xad\ +V\xae#l\x07\xac\xb0\x19\xa9\x93>a\x0c\x82\xe1~\ +\xff\x96\xe2\xdb\xdb\xb3\xbf\xc3D\x07#\x833\xb3\xce\x06\ +\xb8\x87$nC4\x0f\xf5\x8b~ihs\xce\x5c\xa2\ +\x13_\xc8\xbf=\x9dH_<{Y\xe0r\xbc\xee\xd4\ +\x00\x00\x01{iCCPicc\x00\x00x\x9c}\ +\x91=H\xc3@\x1c\xc5_SE\x91J\x07;Hq\ +\xc8P\x9d\xec\xa2\x22\x82K\xadB\x11*\x84Z\xa1U\ +\x07\x93K\xbf\xa0IC\x92\xe2\xe2(\xb8\x16\x1c\xfcX\ +\xac:\xb88\xeb\xea\xe0*\x08\x82\x1f \xce\x0eN\x8a\ +.R\xe2\xff\x92B\x8b\x18\x0f\x8e\xfb\xf1\xee\xde\xe3\xee\ +\x1d 4\xabL\xb3z\x12\x80\xa6\xdbf&\x95\x14s\ +\xf9U\xb1\xef\x15\x02\xa2\x08\x03\x98\x95\x99e\xccIR\ +\x1a\xbe\xe3\xeb\x1e\x01\xbe\xde\xc5y\x96\xff\xb9?\xc7\xa0\ +Z\xb0\x18\x10\x10\x89\x13\xcc0m\xe2\x0d\xe2\xe9M\xdb\ +\xe0\xbcO\x1caeY%>'\x1e7\xe9\x82\xc4\x8f\ +\x5cW<~\xe3\x5crY\xe0\x99\x113\x9b\x99'\x8e\ +\x10\x8b\xa5.V\xba\x98\x95M\x8dx\x8a8\xa6j:\ +\xe5\x0b9\x8fU\xce[\x9c\xb5j\x9d\xb5\xef\xc9_\x18\ +*\xe8+\xcb\x5c\xa79\x82\x14\x16\xb1\x04\x09\x22\x14\xd4\ +QA\x156\xe2\xb4\xea\xa4X\xc8\xd0~\xd2\xc7\x1fu\ +\xfd\x12\xb9\x14rU\xc0\xc8\xb1\x80\x1a4\xc8\xae\x1f\xfc\ +\x0f~wk\x15''\xbc\xa4P\x12\xe8}q\x9c\x8f\ +Q\xa0o\x17h5\x1c\xe7\xfb\xd8qZ'@\xf0\x19\ +\xb8\xd2;\xfeZ\x13\x98\xf9$\xbd\xd1\xd1bG@x\ +\x1b\xb8\xb8\xeeh\xca\x1ep\xb9\x03\x0c?\x19\xb2)\xbb\ +R\x90\xa6P,\x02\xefg\xf4My`\xe8\x16\x18X\ +\xf3zk\xef\xe3\xf4\x01\xc8RW\xe9\x1b\xe0\xe0\x10\x18\ ++Q\xf6\xba\xcf\xbb\xfb\xbb{\xfb\xf7L\xbb\xbf\x1f\x9c\ +ar\xb7\x1d\xc5\xe8\xd2\x00\x00\x0e\xb7iTXtX\ +ML:com.adobe.xmp\ +\x00\x00\x00\x00\x00\x0a\x0a \ +\x0a \x0a \x0a \ +\x0a <\ +rdf:li\x0a stE\ +vt:action=\x22saved\ +\x22\x0a stEvt:ch\ +anged=\x22/\x22\x0a \ +stEvt:instanceID\ +=\x22xmp.iid:039265\ +64-4492-4141-bac\ +0-a675ce7af3de\x22\x0a\ + stEvt:soft\ +wareAgent=\x22Gimp \ +2.10 (Mac OS)\x22\x0a \ + stEvt:when=\ +\x222022-03-02T15:3\ +6:31-05:00\x22/>\x0a \ + \x0a \ +\x0a \x0a \x0a \x0a\x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \ +\x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a\ + \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \ + \x0a \ + \ + \ + \ + \ + \ + \x0a \ + \ + \x0a[Q\xc1\xc2\x00\x00\x00\x06bK\ +GD\x00\x00\x00\x00\x00\x00\xf9C\xbb\x7f\x00\x00\x00\x09\ +pHYs\x00\x00\x16%\x00\x00\x16%\x01IR$\ +\xf0\x00\x00\x00\x07tIME\x07\xe8\x02\x1a\x0f\x1c:\ +X\x80\x14\x06\x00\x00 \x00IDATx\xda\xed}\ +k\x8ce\xd9U\xde\xb7\xf79U]\xfd\x98\x99\x9e\xee\ +\x1e\xdb3x\x06\xbf\xb0\xc6\x9e8Cd\xf32\x89\xc1\ +`\x91`\x04H\x01!\x85\x04\x12\x92\xfc!$\x8a\x10\ +\x09!$\x80B\x84!R\x92\x1f\x84D(\x80!\xe0\ +\x04\x8d\x1c\xb0\x8c\x9d \xd9\x82\x10\x83\xf1\x0f\x07l0\ +\xf6\xd8n\x8f\xa7g\xdc\xf3\xea\xee\xe9\xc7TwUW\ +\xdd{\xf6\xce\x8f{\xcf\xa9}\xf6]k\xed}\xce=\ +\xf7Q\xd5k\xb5J]u\xefy\xec\xb3\xcf^\xafo\ +=6\xa0\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\ +\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4t\xd8\xc9\xdc!\xf7TR\ +:,\xe4\x0f#3\x9a\xe8w\xa3\xcc\xaf\xa44\x98\x10\ +\xf0\x99\xdfu\xa6r^\xa6/\x8a\x02_\xfd\xd5_]\ +<\xf8\xe0\x83w\x1bc\xb6\x00\xd8\xf1xl\xf5\x1d*\ +)\x0d\xac\xad\x8d\xf1\xde\xfb\xd1\xde\xde\xde\xee\xa7?\xfd\ +\xe9\x9d'\x9f|\xb2\x9aW\x10\x94\xf30?\x00\xfb\xc8\ +#\x8f\x94\xaf\x7f\xfd\xeb_\xb3\xb9\xb9\xf9C\x80\x7f\x9b\ +s\xfe\x1c\x00\xbb\xa4\x09\x99<\xb9\xf7k}\xcd\xc38\ +\x0fG\x88iZs\xd3u\xae\xa8\xe3\xfb\xccwxN\ +\xfd{\xc7kx\xef}e\x8cy\xaa\xaa\xaa\x0f>\xfa\ +\xe8\xa3\x8f\x1d;v\xec\xd9\xcf}\xeesc\xef\xbd\xeb\ ++\x04\xca9\x98\xbf8w\xee\x5c\xf9\xf0\xc3\x0f\xbfr\ +kk\xeb\xbf8\xe7\xdebmq\xa2(\x8c5\xc6t\ +\x9a\xe0\xf0\xe5\xc4\x13]O\x18\xf5\x7f\xeaz\xd4\xdf\xd2\ +K\xe5\xfeN]#\xe7\x19\xa8g\xa2\xce\x8f\xaf\x9fZ\ +$=\x17\x139\xbf}\x8e\xa1\x9eOb\x98\xd4\xda\xe0\ +\xe6r\xde\xfb\xe7\xde\xb3\xcbz\x1d\xea\x1a]\xceu\xce\ +\xbd\x1c\xc0\x1b\xee={\xef_~\xf3[\xde\xfc\xe3\xbb\ +\xbb\xbb\xcf=\xf5\xd4S\xe3)\xf3\xbb\xaeB\xa0\xaf\x05\ +`\x01\x14o|\xe3\x1bO\x9c:u\xea;\x9ds_\ +y\xfc\xf8\xf1S\xf7\xdf\x7f?\xb6\xb6\xb6Z\x8b2\xe7\ +\x85RL\x11\x9e\xef\xdcD\xc0Yk\xe1\x9c\x831F\ +<\x9fc\x86\xfa\xb8\xf8\xd8\x9c\xfbs\xf7\x0c\x8f\xb1\xd6\ +6\x9f\xd5\xff\x87\x9fQ\xe7\x84\xd7\xa5\xc6\x9fz~\xef\ +=\x8c5\x80o\x0b\x03j\xcc9\x82 >\xbf\xcb\xfc\ +\x85\x0c\x98\x9a\xb3\xf09\xeb9\xa2\x84M\x9f\xf5#\xcd\ +_|N|\x7f\xea|\xee\x9c\xfa\xba\xe1\xfd\xc35\x14\ +_\x93\x9bK\xe9\xfe\x11\xf3cgg\xa7|\xfe\xf9\xe7\ +O\xef\xee\xee~KY\x94\x7f\xfe\xd0C\x0f\xfd\xd7\xa7\ +\x9ez\xea&\x80jY.\x80\x99\x9eg\x8a\xa28e\ +\x8c\xf9Zk\xed\xf13g\xce\xe0\xc4\x89\x13\xb0\xf6\xc0\ +\xfaw\xde\xc1\x1a\x0bc\x0c*W5\xbfK\x0b\xc2y\ +\x87\xc2\x16\xadI-\x8a\x02\x95\xabP\xd8\xa2\xb9~8\ +\xd1\xce;\x94E\xd9\xdc\x83\xbav}]\xc9\x14\xac\xc7\ +[\x7f__/\xbc?\xb78\x8a\xa2`\x85Nl\xfa\ +\xc5\xe7\xd4\xe3\xe7\xe6\xa2>.\x9e\x0b\x00\xa8\x5cu \ +\x1c\x1aK\x10\xd8\xd8\xd8\x98\x99\xf3\xfa\xfe\xf5\xf9\xe4\x22\ +\x9b\xce\x01u\x9f\xf8Z\xf5\xf9\xf1\xfc;\xef\xb0\xb1\xb1\ +A\xde\x93\x9b\x8b\xf0y)\xa6\x0e\xefO\x8d\xbf\xfe\x1c\ +\xc0\xccq\xf5\xdc\x84\xcfR\x9fO\xad\xd1x\x1c\xb1\xf5\ +\x12\xbf\x17\xe7\x1dJ[\xb6\xe6\xa3\xb0E\xeb\xbd\x86\x02\ +\x22V\x12\xe13\xd6\xe3\xa7\xd6OY\x96(\xca\x02U\ +U\x99g\x9f}\xf6\x1e\xe7\xdcw\x96e\xf9\x18\x80\x9d\ +\xc0\x05\xe8d\x05\x94=\x98\xbf\xfe\xd9\xac\xaa\xea\x98\xf7\ +\xfee\xde\xfb\xa2,Kx\xf8F*6\xcci\x5c\xa3\ +\xa5\x9a\xef\x0c\xe0\xddTs\xcdx.\x06\x0e\x0e\xbe\x8a\ +\xa4\xa7\x01\xaa\xaaj\xae\x15\x7f_U\xd5\x81\xe4\xc5\xc1\ +\x04\x1bk\x9a{5\xe7\xd7\xe7\x99\xc8s2\x13)\x0b\ +\x03\xf8j\xfa2\x83\xf1\x8f\xc7\xe3\xf6\xe2d\xc6\x0f\xe3\ +[\x9f5\xc7:\x90Z\xc1{\x8f\xcaW\x93\xf1\xf8\xf6\ +\xf9\xe137\xe7O\xc7\xd2\x12\x82f\xaa\x8d`\xe0\xe1\ +\x9b\xb1\x86\xe3o\xe6\xcc`r~8~S?\xc7d\ +\xfe\xe1\xda\xf3Z\xcf\xff\x0csN\xcf\xab\xaa\xaa5\x7f\ +\xe1y\xd4\xb3\x84c\x09\xd7\x82s\x1e0\xbe\x99\xff\xe6\ +\xfd\x19\x03\xe7\xdd\xec\xf3\x9b`\xfc\x98\xcc_=\xfef\ +^\xa7\xe3\x08\xcfi\xc67e\xd8\xd6\xfb\x9f2#\xe7\ +\xb7\xc7\xe7\x87\xf71\x98\x5c\xbf\xbef\xcc\xe4\x94[U\ +3~a\x0bTU5\x19\xbf\x9f]\xbf\xf5\x9c\x9c<\ +y\x12\xc6\x98\xc2\x18\xf3\x90\xf7~\x0b\xc0&\x80\xbd\xa9\ +e\xee\x16m\x01\x14\xd3\x9fr4\x1am\x183\x11W\ +\xde{x\xe7g\x02}\x8d\xb4s~\x06\xafl}\xd6\ +L\xce\xc1\xe7-\x0d\x15\xfeJ}\xdf\x1c\xe6\x93\xf7o\ +\xce\xe3\x02*>5~?Yw\xce\xd3\x11\x1c\xe2\xe3\ +\xf8\xfe&\x8e\xed\xf8\xfa\xbc\x8c\xf3\x89\xe7o\xc6\x99x\ +\xfe\x83\xfb\xd0\xef\x84\xbb?9'\xde\xd3\x01*/c\ +\xd3\xf2X|\xfa]\x13\xe7S\xe3oY\x81\x1e\xf4\x98\ +\x85\x80\x1a5\xbf\xec3\xf9\x03\x81\x05?\xb1\xc8Bk\ +\x95r\x05\x1a\x17\x00\x13w\xc2{\xdf\x16h>x~\ +GbD\xe5x<\xde\x08x\xd2\xb5E\xee\xe2,\x80\ +\x02\xc0\xc6\xde\xde\xdefUU\xb66\x85\x86@\xa1\x07\ +G\xb2\x17\x00\x8c\x07\x06C\xef\xcb\x0f1,\x83%g\ +\x8d\xac\x09\xf9U\xad%\xe1>-\xf3\xde`\x86\xf1c\ +!\x10Z\x155~T[\x1f-\xc1\xc8<\xc3\xf4s\ +3\x1a\x8d6\xa7\x16@5\xfd\xe9\x94k\xd3\x17\x03\xb0\ +\x98\xc4\xfb7\xbd\xf7E(\xcdB\xf0\xab\x06\x82(\xd4\ +;\x06\xc2r&8\x06\x8d(?I:6\x1cK8\ +\xb6\x10\x84\xa1\x00\xa3\xf0\x98\x10\x00\xe2\xa4zx~\x08\ +\x10\xc6\xe0\x1a\xf5\xfc\x12\xb0\x15\xfb\x8f\xf55Csr\ +\xf2\xbd\x811\x10\x81\xc7\xf09\xe2g\xe5\xdeU\xfc\xfc\ +\xf1{\x90\xde\x1ful\xea\xfdS\x00\x19\xf5NX\x90\ +r\xaaI\xc3\xb9\xe2\x9e\x97\xc2$\xa8\xf5\x13\xbf?\x0a\ +\xd440(\xca\x09\xf6`\x00\x18;\xc1T\xe2\xe7t\ +\xce5\xd7\xab\xd7\x9d\x1bG.41?\xe13VU\ +U[\x00\x16r\x12\xde \x02\xc0\x06?\x9b\xe3\xf1\xb8\ +\xa8\xaa\xca\xd4\x0fSU\xb5\xdfd\xe0}\xd5L\x86G\ +{!\xc5\xbe\xe4\xec\x027\xb0\xd6\xb4\xce\x0f\x99'\xf6\ +\xc5)\x19e\xa7\x98\x83w\x13L\xc0Z\xdb\x8c/\xf6\ +\xcb\xea\xeb\x85\xe7\xc7\xe3\x0f\xef3\x83\x05\xcc<\x87=\ +\xf0w\x83\xf17 Q\x84\x1e\xcf\x82\x92\x06\xc6\xf8\x99\ +\xf9\x8b\x05B}\x8f\xd9\xb9\x98\x08\x00j\xfe\xc3q\xd4\ +\xe7\xc7\xd6\xdb\xc4\xab\x9b2\xbb\xb1mL\xc5\x1c\xf8\xdf\ +\xe1\xfd\xdb\xc2\xd84\xe7S\xf3\xc7\x01\xb1\x07\x9f[\x98\ +\xda\x1f\xf7\x13\x7f:\x16\xd6\xe1\x98g\xdf\xc1\xec\xfc\x85\ +LS\xbf?\xeaZ\xf1\xfc\xd5\xeb\x87R\x1e\xe1\xbdk\ +\x01c\xadEQ\x940\xa5\x87-\x1d\xca\xa2\x00,`\ +M\x10\x15\xa9\x85\x8b\xf7p\x1e\xa8*\x07\xe3<\xb0g\ +\x1a\x1c\xc8{\xd7\xac_\x87\xb6\x22\x0d\xd7\xf1x<\xde\ +\x9c\xf2q\x11at~\x11\x02\xc0\x04\x82\xc0\x00(\xcd\ +\x84\xa2\x17\xea\xe0\xa7a\xa9x\xf2\x9ds\x07@Id\ +!\x1c\xbc\x04?\x99\x14\xd3>\xae\x11\x02\xd3\xf3\xa9\x17\ +R\xdf\xbf\xaa\xda\xf7o$\xacp\xff\xf0\xfcz\xfc5\ +H\xd5\x0aS\xc14\xa0&\x89\x8a\xbb@\xc0M\xef\x1f\ +\xbe\xb4\x9a\xa9\xc2\xf3\xdb\x12\x9e\x9e\xbfF\x1by\xcc\xdc\ +\x9f:?^\xe0\xe1\xf8C\xcd8\x13}\x88\xc6\x1f\x0a\ +\xacz\xfe\xeaq\xc5!\xb0\xc9\xbd\xdc\xcc\xf3\xcf\xd8\xf0\ +\xc2\xfcS\xf3\x17*\x8f.\xef\x8f[\x7f5(\x1c\x9f\ +\x7f\xa0\x8dMdU\xd1\xcf\xdf\x02\xf8\xa6\xacWlx\ +\xd8\xfb\x9fGq\xe6%\x18;\x01\xb6<\x0c`M\x9b\ ++=`\xbcC\xe1=\xdc\xa8\x80\xfb\xfckQT\x05\ +*_5\xe3wp3\xf7\x0f\xde\xa9\x89\x94\xb2]\x86\ +\x0bP\xdf\xa8p\xce\x15\x00l=\xa8Z3\xb4^P\ +\xa0\x81Z\x9a\xcf\x09\x89\x19\xc4\xf931T\xe7\xe9d\ +\xa1\xe9\xb9!\xb3K\xe7\xf7\xbe\xff\xb8\xff\xf9\xdex9\ +\xc9\x889\xbf5\x7fc/&\x05\xd5\x96JlA4\ +s\xe5\xda\xd7\x9cw\xfes\xcfo\x94D\xc6\xfc\xd7\xc2\ +.\xe7\xfd\xb5\xd6Zb\xfc\xd6ZT\xe3*\x99\x17\x11\ +[p\xdc\xf379\x0f\xd3\x7f(<\x8a\xfb\xae\xc0\xdf\ +\xff4\xaa\xa2\x0a4\xe7\xf4\xfb\x06\xac\xad\x7fw\xc0\xde\ +\x09\xd8\x0b\xafA\xb1_6Q\x81\xc6\x02\xf0\x8e\x04Q\ +\xa7\xf7.\x22\xed\xbf\xf0<\x80F\x088\xe7\xec\xac\xff\ +9}8\xdfF\xe5c?N\xf2\x1d\xa9\xf3S\xe8,\ +u\xef\x96\xcdB\x1c;\xc4\xfdc\xc6k\xc2\x90\x1d\xc7\ +?\xcf\xfd\x93\xd7\x22\xee)%\x9d\xf4\x1d\x7f\xb8\xb8S\ +Q\x89\xdc\xf9\xef\x02\xee5\xcf\x9a\x18\x7f\x83\xb8g\x01\ +\x8e\x9e\xf4\xf39\xc1U\xd8\x02\xd6x\xd8\xc2\xc3\x15c\ +\xc0Vd\x80\xc4\xc0N\x18\xbf\x89\xad\x8da\xadAe\ +f\xf32\xa8\xfc\x90\x80\x8fl\xe4\xff\x9be\x08\x80`\ +\xed\x1b\xe3\xbd7\xcd\xa4\x06\xc0\x0b\x05^I\xa9\xa2\xa1\ +y\xd8'-\xb7\xcf\xf9!@\xd4\x98ea\xce\xc2\x82\ +\xef\xdf\xe5|.\xb3\xac\xc5\xccu\xcc8\x91~\xbc\x88\ +\xf17\x8cg\xc0\x82e\x8b\x98\xbf\x96\x1b\x93q~l\ +\xf5\xc4\xf7\xaf-\xb4\xd8\xba\x8c\x01C2\xdc:I\xc9\ +\x14\x1d\xf0\x9a\xf9\xcd\xb4df\xf2\xfbA\xa4\xc0\x1a\x8b\ +\xcaW\x8d\xa0\xa2\xd6b\xa0\xcczi\xfey\xc3\x80\xad\ +\xdf\x9b\x0c\xa9\xc0\x14\xa2,\x83x\x229\x1f6\x8e\xe3\ +r\xe7\xc7\xc8}(\x89s\xee\x1f\x83*\xcd\xf9.\xff\ +|\x92\xa1@\x03FC\x8c?\x06\xbd\xc2\xf3C\xf4;\ +>\x9f\x8b\x1a\x0c1\x7fq\xf2W(P\x97\xf5\xfe\xba\ +\x9e\x1fG\x22Z8\x00\xda\xa9\xdd\x5c\x9as\x08\x00\x86\ +\xd70\x06\x0d\xd8\xd76D'\x8c_k\xfe\xb6\x100\ +\xb0\xf5\xf5\xbdka\x17\xf1\xf8\x03W\xd0Dv\xee\xd2\ +\x5c\x00C\x85%\xe2xf\xbc((\xc9K}\xc6\xa5\ +\xd4\xa6\xce\xe7\xee\x93s\xac\xa4!r\xc6Je|\xc5\ +&w\xee\xf3\xc7\x0b2\xf7\xf9C\x13\x97\x1a\xff\x0c\xa3\ +t\xb8&\xc9(\x91\xf0i\xfc\xeb\xaa\xea\xf4\xfeBf\ +\xcd}\x7f\xd2\x98b\x81\xdee\xfd\x84\x9f\xc5Q\x16n\ +L3k\xd6\xcfB\xf1S\xc4e\xc6\xfc\xaf\xb5\x7f\x83\ +\x12\x04\x09@5O\xcd\x84\x0a\xa39\xef\xcb\xfc]\x05\ +@R\xda4hw\x00\xc4I\x8b\x92\xf4Y\x09\xad\xca\ +\x09\x05\xae`B\x0a5Icj\xce!\xc6\x9f{\xff\ +:l\xc4\xe5(Hc\xca\xf5\xedCMD\xdd'\x1b\ +\x1f\xe8\xf1\x19g\x954sZ\xb9\x16\x10'\xb9{\xb9\ +\xc2+\xf7\xfd\x85\xf3\xdfw\xfd\xc4\xc0#\x97\x1f\xc0)\ +\x81I*t\xad\xe9g\xe3q\x86p\x07\x1a\xac\x01\x80\ +\xf7\x04\xae\xe5gS\xec\x13\x8c\xbf\xb00 )\x14b\ +I\x95\x02q\xbaR\xe72W\x22\xf6\xbe\xe8{v\xb9\ +N6\x00\xd5\x93\x99)\xe4\xba\xef\xfc\xa5\xee-\x02r\ +\xbe\xdf3\xf5\x19\xbf\x08*\xcf\xf1.s\xce\xad\xaa\xaa\ +U\x18\xe4\xbd\x81\x81\x9d2w\xc5Z\x02M\x04 \xf8\ +.\xce\xd1\x08\xc3~\x891-\xdc\x02\xc8\x0a\x9b\xc4\xe6\ +\x94T\x12\xc9\xa1\xd2}\x8em\x81\x5c=\x16\x7f\xcb\xcf\ +\x22\x90k\xae\xb1\xc4\x90\x02\x22\x09\x90\xf6|~n\xcc\ +\x5ca\x12\x97\xb2\x9a;\x7f\xa9\xf7\x9f\xbaG8\xfe\xdc\ +uD=c\x97\xb1K@$w\xcd0\x8f\xa2V\x80\ +\xde\x1d\xfc\x8e\xc0\xefO\x03\x82\x06\xdeUp\xce\xb6\x5c\ +jJ\x00pV\xd2\xca\x04@=\xd8\xaa\xaaf\x00\xa0\ +Z\x9aQ5\xcf\x14\x8e\x90Z\xdc\x929M\xbd(\x09\ +\xbd\xa5\xee\x17\xc6\xda%f\xccM\x81\x95R\xa1\xb9\xc6\ + \xd4\xb3\xa6j\xf5c\x93\x91K/\x96\xcch\xce\x8d\ +\x88\xdfk\x8a\xf1\xe31p\xf7\x88\x8f\xe1\x84l\xfcN\ +D\xe1\xed=\xdbD\xa6\x93\xa6\xf7`\xe7\x9b\xc2}\xea\ +9*\x8a\x02\xe3\xb1C\xe9=\x0c\x1c\xa8\xe2\xc8\x0dhA\x7f\x1e\xf0{\xc7\ +PM\x05\xc0h4j\xb9\xd5\xb9\x19\xac+w\x018\ +\xd31\xd5\x18\x93\xea\x1f\x972\xf7$\xe0\x89\xbao\xaa\ +\x07a\xaa\xaf\x5c\x0a8\xe34<%\xe0$\x97\x83\x13\ +\x869\xc2\x82s]8\xf3\x95\xd2j1\x86\x933\x1f\ +)\x9f[\xca\xbc\xe4\x84\x07W\xe8%Y\x05\x12`\x9b\ +\xf3\xbb$d%\xcbi\xa6\xa2\xd0\x94x\xe9\x13\xaf\xc4\ +\xb1\xf3\x0f\xc1\x16\x16\xe5\xb4-\x99\xb5f\x9a(\x07T\ +nR\xb04\xaa\xc6\xf0\xaeB5\xf2\xd8{\x09\xd8\xdf\ +\xdb\x83\xf7\x1e\xa3\xd1h\x06\x00\xa4* \xd7\xca\x05\x88\ +\xb3\xce8sK\xaa?\x0f\x85A\x98X$-d\xca\ +\xec\xa7p\x03\x0eP\x0b\xc7C%\x86P\x0b&f6\ +\x0a\x9c\xe4\xfa!\x84\xe7s\xcdD\xc3\xf3k\x13\x93\xba\ +&\x95\x98\x13W\xf9Q\xcd'\xe2\xef\xe2$\x13\xeaY\ +\xa9\xe7\x8e\xdf\x117\x7f\xdc{\x90\x18>\xa7\x13t|\ +<\xd7{\x8f\xb2\x22ca\x19^#\xfc.\x04\xb1\xa9\ +g\x0b3\x01\xeb\x9f\xa2*\xe0v\x0b\x14\xd6\xc2\x16u\ +?\x00\x0b\x1b\x94\x03O\x5c=\xa0\xaa,\x5cUa4\ +\x1a\xa1\xaa\xaa\xc6\xfc?8f\x16'\x19\xca\x22(\x87\ +d\xfe\xf0\xe5\xc7\x05\x17\xe1$S\xfe-WZ\x1a\x1f\ +\x9b\x13\x86\xa3&)^\xf4\xe1K\x0e\xfb\xebIZ\x84\ +\xcap\xa3:\xc3r\xcfF\xb9Ma\xcc7\xe8\x8c\xe5\x9c\x83\xab\x0e\x94QQ\x14\xcd\ +:\x0c\xd7M\x88\xf8\xd7\xc0_\x1c\x02\x8c\xf9im\xa3\ +\x009\xfen\xb2\x92.\x81\xd6\xe6\xa4\xder/\x94\x0a\ +OR\x96En\x9c>D\x80\xe3qI\xe1\xc4\x1c\xbf\ +S\xf2\x9dS\xccK\x81\xa8\x1c\x83u\x99/\x09\xc4\xcc\ +\xc1@Rk\x81\x13\x06T\x9a6\x97QHY\x03\xa9\ +kJ\xf3\xcb\xad\x0f\xcaR\x8b\xad\x80\xf1x<\xc3\xf8\ +\xd4\x18\xc2\xc6,\x14\xf2O\xb9zC\x09\x81\xc1\x04@\ +Nk/)L\x95\xf3}\x9f\xac\xba\x14Z:d\xea\ +l\x9f\xe7\xeb\x1b\xdf\xcd\xb1\x0223\xc8z\xbd\xab\x9c\ +\xeb\xa5\x22\x0e\xa99\xe9\xba\x16\xb8\x9c\x80>\xeb'\xbb\ +t\x9c\xf0\xcf\xeb\x02\xa1\xb8\xfb\x15'lB\xad\x9f\x0b\ +\x88rU\x89+\x15\x009\xc9>]\x16L\xea\xd8\xdc\ +\xc4\x90\xbe\xd6L\xd7\x09\x9e\xf7\xf9R\x89C]\x05X\ +\xcad\xe64\xa4\x04\xce\xa5\xe6)e~\xe7D4\xb8\ +\xe8P\x97\xf7\xd4\xf5\xbdK\xcf\x91\x9b\x05\x9a\xb2T$\ +k\x90\xcaYH%\xcd\xadU\x180\x94`\x1c\x12,\ +-\xea\x1c$Y\xdabJB\xb9\xfb\xde?\x07i\xee\ +:\xfeTZnN\xd6\x5c\x97\xfbs@\xa0\xe4\x0et\ +\x9d\xbf\xdcH@\xce\xf3s\xe7S\xe0`\x9f\xfb\xf7y\ +\xff\xf1;\xe12\x03)+*7\x15\xb9\xeb\xf8\xd7\x0a\ +\x030\xc6`sss\xa6\xf6]2Y8\xd0,\xf6\ +\x95\xba\x9e\xdf\xf7\xfe5\xe5\xdc\x9fC\xe0s\xc6\x9fJ\ +Q\xa52\x00%\x93\x8fz~\xaa\xcb-\xf7\xfc\xe1w\ +]\xe6Oz\x0f\x5c#\x10N{RZ\x92*\xe7\xe5\ +\xb0\x87\xf8\xbc\xdc{P\xcfK\xdd_\x1aK\x17@:\ +\xc5C9\xcfo\x8c\xc1\xc6\xc6\x06\xf6\xf7\xf7\xd7\xc7\x05\ +(\x8a\x02\xe7\xce\x9dk\xb2\xa1(\xa0NBP\xa9\x9e\ +\xe9]L\xcf\x1c\x939\x15\xc3\xce\xc9\xb5\xcf\xd5&9\ +\xe6}.\x98\x16\xb7\xb4\x8eC\xa4]Mu\xca2\xb0\ +\xc6\xb6\x9a\xacR-\xb3\xb9h\xcd\x22\x92SR\xd9\x92\ +\x92\xa5&\xbd\xef\x5c\xd7\xa9\x0bc\x89y!Q?\xc6\ +\x1c\x9cE\xaa\x844\xc6\xa0,Klll`gg\ +\x87\xe8f\xbd\xc20`Q\x14\xb8\xfb\xee\xbb\xb3\xfcM\ +9\xad\x17M\xe6Tn?\xf8\x96&\x83I\xf6\xa1\x0b\ +\xf7x\xab'=\xd6\x84-|\xc3\xbbf\xf3\xcd\xba\xd6\ +\xbdu\x8c\x89^\x5c\xb8UU3\x88\x94P\xb03\x07\ +\xe5\xec\x22\xbc\x08\xcaI\xe1\xcd-\xdf\xcd\xad\x97\x90\x5c\ +\xba\xae\xc0n\x8a\xd1\xbb\x82\x91\xb98Dn\x22W\xdf\ +\xf1\xe7\x84/W\x86\x01\xc4\xa6g\x8e\xd6Li}I\ +\xcb\xc7\xa6r\xcb\xfd J\xa3\xe3\x0d%\xad\xb5\xb0\xde\ +\x8aYv\xb5\x80\xb0\xc66\x1b6\xd6\xc2\xa0\x0e\xef\x84\ +B\xc2\xf8\xe9}\xa7C\xab7\x9al\x09\x80\xc4\xbe\x88\ +\x07\xff\x1fl\x13\xc5\x99\xaa\xec\x8e\xc6\xb5\x0c\x9a\x13\x04\ +\xa5\xdc\x91\xd8\xd5\x09\x85@\xee\x02\xa6\x92p\xbc\xf7\x93\ +\xf7\x03\xcf\xae\x81\xd0j\xabQv\xaa^$\xe5\x9fs\ +\xcf\x96\xda\xa58\xc4\x00\xa8$\xa2\xf8\xbc8\x89\xad\xcb\ +\xdcR\xe7\x85\x02`\xa8(\x80\x1d^\x7f\xc8\xa6\xd8\xcc\ +\xa2\xf5\xed\x98y\xb8\x90\xb8\x18v\x9c\x98!\xf9\xbe5\ +~S\xef\xf6:\xd3bYjP\x89I\xbdv\x8b\xf9\ +\xd1N\xe6p\xde5B\x01f\xfa\x9dG\xfb^\x81E\ +\xd00\xbfo\xef{\xd7l)e\xd0\xf4\xd5\x87\xe7}\ +xq\x8e{\x22\xe1\xa4Fcr3r@-\xa9\x93\ +\x10\x09\x80\x81\xc7Vbw-\xce\x99\xe0\x12\xb0(@\ +\x8e\xc2)(\x05Fv<\x16J\xd3\xeb\xb5\x11\x8f\x8b\ +j\xefFaJ\xf1\x9a\xef\xd2\x18v\xe5\x16\xc0\xc1\x83\ +$\xf6EG\xf4b!\x87Yf4\xcd\xcc&$|\ +\xbe\xfb\xe4\xfc\x08\xaf \xb6\xc5ne)\x06[\x8c\xc7\ +[H\x87\x82\xa0\xf6\x9b\x1b\xe66\xedph}LK\ +\xe0\x98\xd9\xd0WK3T\xfe\xc0J\xa06\xb5d\xc2\ +g}\xc3\xa8Rx\xaa\xf5{\xe2\x1ab\x15\x1f\x0c\xdb\ +Z;\xa7\xcdVj\x8cu\xcc=l\xc5FeQr\ +\x8c\xcbEG\xa4F\xae\x00\xbdE[\x98\x86ME\x0a\ +\xea\xf5p \x5c\xc1\xae\xff\x9c6\xfak\x13\x06\xe4\x10\ +nvqx\x1a\xe5Le\xf959\xe9\x9eF\xb2c\ +\xb3iv!\xb5\xf7\x92\xa6\x84T\xfd\x92\xac\xb1-\x9c\ +`r\xff\xc9\xd6\xd5\x1cj\xef\xfc\x01\xf3\x87\x16@\xdd\ +\x1ek\xd7\xef\xe1\x89\x93W\xf0\xde\xed\xc7qs\xc0\xae\ +.+'\xbf\xf8\xeb\xdd\xe7\x0b|\xe5\xf8^\xbc\x09\xaf\ +\xc4\xcb7\xce\xc0\xc0\xb4\xe6\xdeX\xd3\x08\xe8\x18\xbc\x0c\ +A\xcePC\xc7\xf9\xf5!\xc0\xcaE\x8a\xe2F\xbc\xe1\ +\xf5\xc2T\xe0F01nl\xf3\x1d\xf8\xd4\xf1\xfa\xb3\ +\xa2(X\xab`\xad,\x80z@\xfb\xfb\xfb\x9d\x00\x9c\ +\x9cd\x94\xdc:\xf3.\x88\xaet~\xec*\xb4\xfe\xf6\ +\x98a\xf2\xe68\xb4\xcdw\x0f\x8f\xb1\xabp\xf9\xe46\ +.\x9e\xdd\xc1\xb6\xdf\x87{\x09J\x1d\xe92*|\xb8\ +\xbc\x82\x0f\xdb\x17\xf1\x9d\xee\x01\xbc\xb5x\x18\x9bv\xa3\ +3z\x9f\xc2E\xa4\xf5'\xc5\xea\x87^\x7f\x9c\xbb\xb1\ +\xb7\xb7\x17\xef\xe9hV.\x00\xa8\xde\xf39\xe8nN\ +\xba\xa6\xd4AWJ\xd8\xc9I\xf6\xe8\x1a\xca\x9b\xd1N\ +T\xefU\xdf\x9e\x8f\xeb\x9b\xb7\xf0\xa5\xb37\xb1\xbd5\ +\x9e\xf8\xfc\xce+7\xcfC\xce\xe3\xfd\xe6\x19\x98\xb1\xc1\ +\xdb6\x1e!\xf3.r\x14N\xae0\x90r\x06bk\ +\x82*\xe8\xa2\xdc%j\xfdQ-\xd7R\x19\x8e\xd3\xef\ +\xe7\xc2\xf1\x06\x01\x01\xb9\xed\x959\x86\xe6&\x95K\xd6\ +\xc89N\x92\xac\xa9d\x94\xde\xa6\x94o\x03\xf7\xe1f\ +\x0e\xbb~\x0f_8\xfb\x22>\xfb\xc0\x0d\xbc\xb49\x12\ +\xf7\xc2S\xea>\xef\x7f`\x9e\xc3\xf3\xe3\xab\x9d\xb0\x0e\ +J\xc3\x0f\xb9\xfe8\x5c*f\xf8\xdc\xceP\x92%\xbc\ +\x16\x18\x80\xf7\xde\x84&H\x97\xe6\x8b\x5c\x97\x1f)\xac\ +\x22i\x7f.[\xadK\x12\xd1<\xfej\xbd\x91C\xe5\ ++\xbc\xb0\xf5\x12.\xbe|\x17\xfb\xa8\x86\xf7\x8f\x95\x00\ +\x00\xd7}\x85\x0b\xee\x12\x1e\xc0\xb9\xce\xd6\xaa\x04\xa6J\ +\xad\xe3\xba\xae\xbf\x94\x05J\xad\xbfT\x16#\xf1<\x9d\ +w\x04\x1e\xd2\x050\xe1\xe4q\x9dc9\xa0\x8f\xcbL\ +\x93\x10Qnbr\xbb\xefrR;K\x18\x10\xbb<\ +\x84\xa1\xcc\x1b\xe5\x0e\x9e\xbeo\xfb\xc0\xdcWZ(\xbd\ +hw\x9a\x9e\xfc\xb9\x96j\xaao`\x0e\xa3K\xebO\ +Z\x8b\xa94\xe3\x94bb\xd6\xa6Y\xa5\x00\x98\xc1\x01\ +B\x9f,\xd5*K\xf2\xf7\xfb4\xe3\xe4p\x80\x5c\xe0\ +\x86e\xfe\x9a\xf1}\xfb\xefZ\xeb\xef\xfa=<{z\ +\x1b\x97\xee\xd9C\x05\x078e\xcee\xd0\xd8\xba,f\ +O\xed\x11(\xe1H9\x99|\x8bX\x7f9\xfe\xff\xf4\ +\x183\x8f+?\xb7\x0b\x90\xa3\xe1S\xda\x9d3\xcfS\ +B@\x12\x1e\x9ci\x96\xc5\xf0\x12\xf0\x17\x98\xfb\xe3j\ +\x8cK'o\xe2\xd9s\xbb\xb8]T\x93\xeb/\xb7\x8e\xa3K\x02\x13q\xec\ +\x5c~\xc4\xe0\xc5@\x5cC\x09\xc9\xb7\x97\xcc4\xa9\xa9\ +\x04\xe5\xdb\x0f&]M{\xec\xdey\xb8\xd3\xa5\xfa\xfa\ +kl\xf6\xe7\x84\xe0\xa4\xe3\xb8\xb5&E\xa4R\xf7\xc9\ +mN2\x8f\xa0[\x99\x00\xe0\xd2\x10\xb9\xee2\xa9\xa6\ + \xb9=\xdd%\x90'\xb7\xf3mrB#\xed?\xa9\ +\x0bP\xc6_/\xed/\xef\xd8\x93\xdb\xb5\x98\xcb\xc1\xcf\ +\xd9\xb3\x92\x13.]v\x91\x9a\x93\xb9\xcd<\x96\xc0\xbc\ +\x16\x80\xa1\x0c\x11\xa9\x05x\xaa\x1bN\x8e4\xcdI\x17\ +\x96ZP%\xfd~\xe29\x86l\xc5\xac4\xbc\x0b \ +\xd5\x92p\xcc\xc9E\x878\xc5\x92\xb3\x0d\x1b\xb7\xfer\ +[\x9c\xa5\xda\x9d\x0dM\xe5\xa2^L*\xc9\x22\x95\xf1\ +\x97\xe3k\xc5\x16B\xa7\xc2\x0c*\x8f\x1f\xb3\x9fy\xf8\ +f\xcf\xf7I\xc4Ei\x9d`\xc0\x94e7\xe4\xfa\xa3\ +\x98\xb4\xeb\xfa\xeb\xd3\xe5\x99\x1b\xff\xca]\x80\xbeZ<\ +7\xbb\x8f\xcb\xa3NIG\xc9\x22 \xd7\x8e\xa1-\x81\ +\xa6f\xbb\xc6\x01\x14\xf2?T\xd8@J\x8bw]\x7f\ +\x5c\xb3\xd5.\xeb/\x97q%\xcbu\xc8\xd6p\x0bS\ +i\xd2\xf6\xd5R\x0b\xebT(\xb0\xcbF\x0f\x9d\xd0\xfe\ +X>\x84\xddz\xa0.\xc0\xba\xea\x7f*\xd1L\xc2\x85\ +\xb8]\xa6r\xd6\x1f\xb5~s\xee;\x8fk\xb3(\xd3\ +\x7fP\x17 \xe5\x93\xa7\xfa\xb4q\xe8\xaa\xd4\xb6\x99\x13\ +8sU\xf6\x85\xd6@\x08\x02N\xbb\xcd\x1cf\xf6/\ +\x9d\x83\xf5\xcb\xcbQv\xc6`l\x8b\x05\x0b\x00?\xe9\ +\xe0\xe4\x8a\xa6\xb3\x8eA\xa0\xa9=m~\xe7\x84\xf8\xa4\ +6\xe9\x92\xbb\xdb\xa9\xb6$q\xbd\x81@\xc2\xe5a\x00\ +\xa9\x09\x96\x8e]Z=\x7f\x0c\xf8y\xde\xadl\x04\xd8\ +\x14\x078\xac\xe1\xbfMc\xf0\xfeo\xff)\xbc\xe6e\ +\x0f-\xed\x9e\x17_\xba\x84\xef\xfd\xed\x9f\xc4\x0b\xbeZ\ +\xd8=\xfe\xec\xf6\x15\x5cy\xf2\xb7\x9a&Mqc\xd2\ +7\x9c}\x1d\xde\xfe\xe5_\xcf\xa6\xa3\xe7n\x1f\xcf\xe1\ +P]\xdc\x89\x94u\x9c\xd2\xfe\x8b\x12\x02\x0b\xe9\x08$\ +\x99\x5c\xd2\xde\xed\xd4\x04\xe5 \xb6s\xd7\xf3{\x90\x95\ +~\xcd\xfd\xa7\xbd\xdb\x0e\xab\x0d`a\xf0\xe0\xdd\xf7\xe1\ +\xb5g\x1eX\xaa\x81^\xc2,\xf4\x0e\xb7\xe1\xf1\x02n\ +\x82K\xc7|\x0dFB\xfby\x9e\xf1S{7\xe4l\ +\xa2\x221\xbc\xb4\xc1J\x0e(8\xec\xdaX\x90\xff\x1f\ +\x0b\x04\xae\xcc2\x955%m\xaa8\xc8\x04y\xc1\x05\ +0m7@1\xc0C\x88\x13$\xea\xf9\xa5\xf5\x17\x83\ +\xd6\x94K\x9bS\xb7\x92\xbbq\x0c\x07&\xa6\x8e[\xb9\ +\x00\xe0j\x008\x93\x9dbn\xc9\xef\x91&\xb9S\x87\ +\x14\xc3\xfcmh\x17\xa0\xd1\xfcM\x14@\xe9\x90q\xbf\ +hmR\xebO\xea\x0b\x90S\xcf\xdfE1\xa5r\x0f\ +$\xcba\xad\xa2\x00\xa9\xed\xa9$\xc4\x95\x93\xaa\x9c\x7f\ +\x96+\x18HFg\x80\xbe\xd6\xe7\x94P0\xcaK\x87\ +\x92\xff\xc17\xd6\xe0\xd6\x1f\x97\x13\x90Z\x7f}R\xd0\ +s\x14\xdb\x90\x85C\x0bw\x01\xc2f\x89\x92%\x90[\ +5\x95\xda\x5c\xb2o=\xff\xcc\xdf\xa1@\x88\xf1\x00\x0f\ +z\xab/\xa5C\xe9\x06\xa4\xea\xf1s\xd6_\xae\xb9\xde\ +\x95or\x8b\x8b\xd6N\x00\x84=\xd0C\xf0/g\x83\ +F\xae[\xcb<\x16H'\xf3_\xb2\x0cf>S'\ +\xe0\xb0\x0a\x80\x5c| \xa7'@N\x8d\xc1<\x98\x99\ +T\xc72t~\xc0`.\x80\x8b6\xba\xa0\x00\x14)\ +\x8b/%Y{\x99\xfeH0yl\xe6\xab\xa6\x1f\xd4\ +\x1a4k&\x04\xba\xac?\xa9\x90\xad\xd7\xfaK\xe0W\ +\x9c\xb9\x9f\xcaS\x98\x97\x06\xdb\x19\xa8\xde\xac1%\xd9\ +\x96Z\xcf\x0f\x82\xc1=#\x14|\x07\xeb\xe1\x88\xd3{\ +?\xf1!\xbc\xe7/>4\xd75v\xc6{x\xce\x8f\ +W\xce\xf4\x94o\x9f\xbb\xfe\x16Q\xcf\x9f\xeaG \xf5\ +\xd3\x88\xb7;[\x9b\x9d\x81\xc2j9\xc9\xaf\x97\xe2\xa7\ +\x0b\xa9\xe7\x8f\x99\xdd0\xfe\x7fJ\x10\xdca\x96\xff\xf6\ +\xce6>x\xe9\xf1#!\xf7\xa4\xf8}J\x0b\xe7T\ +\x92\xce[\xcf\x9fJF\xa2\x04\xc1P\xae\xc7\xa0\x18\x00\ +\x17\xd2\x93\xea\xa9%\xbff\xa8z~\xd1\x0d\x80`\x11\ +\xdc\xc1\x16\xc0Q\xf4\xff\xd7\xa9\x9e?\x15:\x94\xfai\ +\xe4X%K\x17\x00\x12`\xb1\xcaz\xfe\x99\xcf\xa8p\ +\xa0a\x8eQ:z\x98\xc4\x9a\xd4\xf3KXCj{\ +\xf3\xa1S\x83\xcb!'\x98\xf3\x8b\x16R\xcf\x9f\xab\xf9\ +\xe3\x90^W\x17\xe1\x0et\x01\x8e\xb2%\xc0\xad\xd5U\ +\xd4\xf3\xe7\xee6\x94c\x85\xac\xdc\x02\xc8\x01a$I\ +\xda\xb9\x9e?W\xeb\xc7LOE\x01L\xe6\xb5\x94\x0e\ +\x1b\xdb\xcfh\xdb\x9cz\xfe\x1c\x8b\xa0\x8bB\xcc\xb5v\ +9\x1eZdG ;4\xc3\xa7\xac\x00.\xdd2%\ +\xa9\x93Z\xdf\x08Z;N\xf4\xa1,\x03*J\xa0t\ +\xd8\x0d\xff\x19e\x94S\xcf?\x04\xc3\xa56\xf4\xe4\xac\ +\x10\xc9\xe2\x9d'\xfc\xb8\x14\x17@\xea\xd0\xdb\xa7\x9e\xbf\ +\xd7\xb6\xdd\x94\xe6\x97\xaa\xfeba\xc0\x9d\xaft(-\ +\x80u\xab\xe7\xa7\xc2\x81R+2\xc9\xedXk\x17@\ +\x92`\xa9\xfc\x80l\x09g\x18A@\x99\xfd1\x0e\xe0\ +\x19w\xc0\xab\x0bp\x94-\x80!\xd6_\x8a\xf1\xb8\x82\ +#\xce2\xa0\xa2c\x9c\xd0\x18\x0a\xfd\x1f\x5c\x00H\xbb\ +\x9c\xa6\xfc\xad\xb9\xbb\xf8PLJ\xe5\xf7K8\x00\x04\ +!p'Z\x00G\xa2\xfd\x99g\x11\xf7\x94\x89\xde\xd5\ +\xf4\x96\x84En_BN \xb4\x8e\x1b\xf8\xb5\x0c\xe6\ +\x02\x84\xa9\xc0\xa9\xfd\xd1R\x88\xeb\x5c\xc2\xc0\x80/\xea\ +\x01\xe3\xf3\x87\xee\x01\xe7\x22\xdcAt\xcf\xf1\xbb\xf0\xbd\ +\xf7=\xd2}\x0d\xc0\xe3\xa3\xd7/\xe0\xe2xwm,\ +\x80\xdcB\x9b>\xccM\x09\x89\xd4\x8eW\xb9[\x94\xc5\ +c\x0d\xbbS\x0d\xe5\xff/\x04\x03\x90\xca{\xa9\x09\xed\ +\xe4sQ]{r\x19]:\x9f\x13\x22w\xa8\x05\xf0\ +\xed\x8f~\x13\xbe\xf5Mo\xeb|\xde\xc8U\xf8\xa7\xef\ +\xfbwx\xcf3\x7f\xb2~\xce@\xc7\xf5\x97\xa3\x98R\ +[\x8a\xa5\xca\x8a\xa5nXR\xe8|(\xff\x7fP\x01\ +@\x81\x16\xf3\xec\x8f\x9e\xad\xe59\xc6\xe5,\x01\x80\x8f\ +\xf7s.\xc0\x1df\x01l\x16%6\x8b\xeeKcT\ +\x8dQ\x98u\xda;\xc1\x8b\x80\xda\xbc\x1bvJ{\x10\ +\xa4\xda\x8bQ\x15\x879\xfd0\x86\xee\x0d0x&\xe0\ +B\xea\xf9\x91\xf0\xc9\x0d#\x08\x0ca\x09\xc4\xe6>u\ +m\xa3\x18\xc0Q\x01\x01WQ\xcf\xcf\x09\x17i\xf3\x11\ +\xea\xbcT%\xedZE\x01\xe2\xf2\xdf>\xc2\xa3\xe3\xbb\ +\xa5-\x030\xee\x002\x5c\x04(\x06pG\x88\x85\x05\ +\xd7\xf3K\xd7\x95\xfc{\xce:\xc8)I^\x0b\x0b`\ +\xa1\xf5\xfc\x94\xb6\x97\xea\xf9\x0dh\xc4\x9f\xb3\x0a\xa8\x5c\ +\x00\xa5#\xc3\xec\xebR\xcf\xcfY\x05\x5cdB:~\ +\xad\x04@\xdd\x0f@\xaay\x9e\xcb\xdc\x92\x12t\xb8\xfe\ +\xfe\x1e<\xba\xcf\xd5\x020\x96\x83\xb6\x04=\x8c\x94\xd7\ +\x95j^A\x22U\xf7I\x0c\x9e\x93\xf9\xc7Y\x0ck\ +k\x01\x0c\xd2\xbc\x03\x8c\x1f\xce\xe5\xe9s `\xf8\x99\ +\x07\xdd\xf5\x87\xbb\x8f\x89o\xa3f\xc1a\xc4\x00Ra\ +\xbd\xa1\xeb\xf9\xa9\xebr}1SnC\xaaS\xd6\xda\ +\xa5\x02S\xe6\x90\x94\xc6(>@\xaa\x9e\xdfgX\x04\ +\xf1\xff\xa9\x10!d+\xe0N\xa1k\xbb\xdb\xb8\xb9\xb7\ +\xd3\xd9\x15\x1aW\x15v\xc6{\xebe\x03\x08{\xfd\xf5\ +\xcdE\xc9\xe9\xe0\xc3\xed{)\x09\x8f\x14pHY\x17\ +k#\x00\xc2vE\x94\x0f\x93\x12\x18I\x10\x8ebd\ +\xce\x9f\xa7\x84\x88\xf49\x95\x1el\xee\x5c\x17\xe0}\x7f\ +\xfa!\xfc\xc3\x8f\xfdr/0\xc4\x9a\xf5\xb2\x94\xba\xd6\ +\xf3K\x0c\x9f\xca\xe3\x97\x84\x03\xe7Fp\xa0yjo\ +\xc2\xb5L\x04\x92\xcc\xa5\xde\xf5\xfc@\xbfz~#\x5c\ +\xd30\xe7\x99\x8c1\xdc1\xe0\x99=RNOn=\ +\xbfd\xfew-\xea\xe1\xaa\x0e\xa5\xecD*uy\x11\ +\xbb\x0f\x0f\x8e\x01\xd4\xbb\xb1rm\xbfz\xd7\xf3\xc7\x9f\ +\xa5\xea\xf9) \xd0\x80\x8e\x0a@\xb8\x86b~G\x02\ +\x04\xcc\xb5H\xbb*\xba\xbe\xf5\xfc\xa9\xc4#\xaet\x98\ +\xea`\xbcVy\x00\xde{\xc0\x0c\xb4q\x07g\xbe\xe7\ +\xd4\xf3\x83\x10\x10\xe1\xb9R\x9d\x80\x87\x98$\xe4U(\ +\x1c:\x10pH\xa6\xa7\xb4xl]H\x16/\xd5\x8f\ + \xb6\x10\xb8D\xbaEm\x17^\x0e=\xe5\xa9I\xc8\ +~o\xf3\xd6\xf3K\xd8\x00\x04\x8c\x81\x11P\x93\xe7R\ +\x09p\xb8\xf4\xbf\xef\xcd\xf0\x8b\xac\xe7\xe7\xc0\xc0T\x87\ +\xe2\xb5\xdd\x19\xa8/\xb8\x22\x9a\xee\xb1\xd9\xdf\xb5\x9e?\ +v\x11\xb8\xda\x01 {C\x10e\xff\xc3\xa8\xff\xbb\xf7\ +\xd2[d=?\xc5\xdc\xdc\xf9\xbd\xfbb\xae\x8b\x00\xe8\ +\xc4QC\xd7\xf3\x1b\xd0\xc9@\x94\x85A\xb9\x0a\x1d\x16\ +\x8c\xd2!\x13\x0c\xab\xac\xe7\xcf\xe0\x11\xa9\x9f\xc6\xd0k\ +qp\x01\xd0{\x80)\xad,e\xedq.\x80\x89,\ +\x08\x9f\xb0\x18\xc0\xfb\xffj\x02\x1cF\x17\xa0\xfb\xbaM\ +1*\xb7\xbf\x80\xc4\xe8R\x07\xe0\xd4.DR\xc2\xcf\ +ZE\x01:\xd9d\xf1\xdf9\x8c\x9e\xd2\xdc\xb1\xb5@\ +1\xbc\xd4\x058\xd1\x03@1\x80\xa3\xa5\xf1%\x06\xe7\ +L\xee\x9c\xde\x15\x1csS\x8c,u)\x920\x88!\ +\xf7\x06X\xae\x0b\x90\xaa\xda\x93\xccy\x10\x82\x80\x02\x03\ +MBp\xf8\x0e\xc2F\xe9h[\x08BQ\x90\x94%\ +(mp\xc3m?\xc65\xca\xe1|~\x09X\x1cJ\ +\xfb\xaf\xce\x05XV=\xbfa0\x04I\xe0\x0cdR\ +*\xad/\xa3sJk\x19\xf5\xfc]v!6K\xc8\ +\xaa\x5cHS\xd0\xce\xee\xc0\x22\xea\xf9}B\xc0H\xf7\ +\x09\xfe\xf6\xce\x0fZ}\xa5\xb4\x5c\x8a\xb7\xad\xcf\xf5\xff\ +9\xc11T=\x7f\xf8w\xaaJ\x90\x18\xc4zV\x03\ +f\x09\x82e\xd4\xf3S\xf8\x82G~\x16\xa0\xe1\xb4\x83\ +\x0a\x81\xc3\xee\xff\xaf\xba\x9e\x9f\x1aK\xd7:\x05\x83\xe1\ +v\x0a\x1a\xbc#\x10+\x99\x96Y\xcf\x1f_\x83\xbbG\ +\x07\xbb\xde\x18\x05\x05\x8e\x82 Hi\xd7T=?\x17\ +\x92\xcb\xad\xe7\xe7\xbe\xcf\xcd\xf43\xc6\x1c\x18\xae\xeb\x06\ +\x02\xb6&a\xd5\xf5\xfc p\x82\x9c\xbd\x00\xfd\x1c\xd8\ +\x86\xd2\xa1\xc3\x01r\xbb\x05\xa7z]R\xf7\xe1\xea\xf9\ +\xa9\xda\x80\xdc\xd2dc\xccL\xca\xfdZ\xc0\xb5.\x1e\ +\x00\x00\x19TIDAT\xb9\x00\x22#\xa5*\xf5\xa4\ +z~\xc9\xff\xf7\xe0\xeb\xf93\xfc|1\xb4\xa8t\xa4\ +\xdd\x82T=\xbf\xe4\xc3K\xe1>\xaa\xfdwn\x98O\ +\xe2\xab\xba\xec~\xed0\x00\xce\xcca\xfd\xf1XC\xa7\ +r\x02L\xc2\xd7\x07\xf8=\x03\x12~~V\x04@-\ +\x80C\xcf\xf09H{\xaa\x9e_\xdaU\x88\xbaN\x97\ +J\xc0\x5c\x0cc\xc8P`\xb9\xa8\xc9&\xb5\xed2\xeb\ +\xf9\x0d\xfa\x15\x06u\xc0\x05\x0e\x8d\xf9\x0b`w\xff6\ +n\xed\xedd\x1d\xbf?\x1e\x1d9\xf3?\x17\xad_d\ +=\xbf\xd4\x99(\xb7C\xd1\xd0\xf5\x00\x83o\x0c\xc22\ +xl\x01\xa4*\xfc8\x97\x01\x0c\x93\xe7\xe4\x04\xe4\x9a\ +\xf8\xc4x\x0e3\x08\xb8\xe7\x1d\xde\xf1\xfe\x7f\x8d\xd2\x14\ +Y\xc7\xefT\xa3#\xeb\x09I\x8c/5\xb2\x91\x187\ +\xb62b\xf3_\xd2\xf6]\xf7\xcb\x90,\x94\x95\x0b\x80\ +\xd6\xc0sb\xf39\xf5\xfc^\xb0\x028!b\x187\ +\x00\xe0\xab\x08\x8f8\xdd\x18\xef\xab\xcf\x0fdo\xd3\xc5\ +}F\x99\xf8)a\x90\xbb3\xd6 \xd6\xf6\xaa]\x80\ +\xba1\xc8Z\xd4\xf3\xfb\xf9}\x7f\xa5;\xc7\x02\xa0\x84\ +\xc5\x90\xf5\xfc\x92\xa6\x9f\xa71\xe9<4x&`\xdd\ +\x1al\x06\xbc[E=\xbf\xc9\xc0\x22r\xdc\x01\xa5#\ +\xa1\xfd9\x00p\x99\xf5\xfc\x9c\xe9\xde\xb5\xe2o\xfd3\ +\x01\xd7\xa8\x9e?\x99\xf9\x07\xc0R\x9bZ\x06\xc7k\x22\ +\xd0\xd1\x11\x08\xab\xac\xe7\xefj\xbas\x05KkY\x0c\ +\xd4\x1a\xec:\xd5\xf3g\xcc\x95\xf3nF\x104)\x97\ +\xcd\x06\x13*\x04\x0e;\xadC=\xff<\xda{H\x00\ +pp\x010\xe3\x97\xacK=\x7f\x87\xb9\xaa\x05\xc1\xe4\ +4\xaf\xde\xc0\x11u\x07VU\xcf?\x8f\xf6\x1eZ\xfb\ +/\x0e\x03H\xf9\xe7\xcb\xae\xe77\xdd\x85\x01\xb9\x15\x98\ +\xba\x01GJ\x10\xac\xb2\x9e\xbf\x8b\xb0\x92\xf0\x89\xb5\xc3\ +\x00ZQ\x805\xab\xe7\xef\xe2\xff{\xf8\x96\x10\x98\x01\ +7\x95\xd6\x9f\xd1\x05\xed\xcei\xd2E\xd7\xf3\xf7\xd9\x8b\ +\x90\xbb\xe6\xfam\x0c\x02\xc6/GBk/\xb0\x9e?\ +\x87i)\xff\x9fr\x01\xd4\x078d\xfe\xbe\xa0\xf5\xb9\ +z\xfeP\xb3s\x99\x7f\x92?\x9eU\xcf\x9f\xc3C\x99\ +V\xcb\xdaY\x00-\x17`\x0d\xea\xf9\xbb0\xad\xf3n\ +\x06\x044\xc1\x0e\xb3\xca\xff\x87\xcd\x02\xa0\xd3qck\ +\x802\xfd\xeb\xcf8\x80P\xf2\xc9\xfbji\x09+H\ +m\x19\xb6r\x010\xf3\x10kV\xcfO\x86\xf9\x04k\ + \xb4\x00\x8c5\x1a\x06<\xacV@\x22\x7f\x9f2\xfd\ +cK\x80\xebu\xd1\xa7\x9e\xbf\x17/aqa\xe8\xc5\ +u\x05\x9e\xa7\x9e?\xfcn\xa0z\xfe\x90\xb19\xc1@\ +\x85\x00=\xfc\xe0\x8d\x18\x95V#\x08\xd6\xa1\x9e?\xd7\ +\x05\xe0\xb2\x0a\xa9{\xaf\x85\x00\xb0\xd6\x1e\x0c|\xdez\ +~.s0\xc7\xcf\xcf\x98\x93\x90\xd1C\xc1\x10b\x01\ +5\x08h`\xb2\xad\x07\xa5\xb5\xf3\x01\x92&\xf6\xb2\xeb\ +\xf9s5>g\x91\x84=\x0e\xd7\xca\x05\xa8\x076\x93\ +\x07\x10k\xf3!\xea\xf9;\xb6\xf0\x8e\x198d\xfa\xf8\ +;kl\xf3\xbd\xc7r;\xb4*\x0d\xad\xf6g5\xec\ +\xaa\xeb\xf9\xbbX\x01\x94\xe514\x188xO\xc0&\ +\x5cF\xb9\x00TZ\xafd)P\xbb\x02K\x19\x86\xcc\ +g\x94\xf9_3~,\x0c\xea\xbf\xc3\xc6\x8b\xce\xbb\xde\ +\x1bM*\xad\xd8\x08`Z{q\xda\x9fC\xff\xb9x\ +\x7f_\x0c 7\xc7?\xb5{0\xe6\xc4\xa6\x17\x97\x0a\ +\x1ckk**\x80\x84\x16\x97:\x07I\xe7uH\xfd\ +\xe5\x84A\xf8L\xd6X\xb5\x00\x0e\xb1\xef\x1f+)I\ +\x8b\xa7\x90\xf7y\xeb\xf9s\xdc\x86X\xf8P\x9f\x0dU\ +\x0d\xb8\xd8~\x00C\xd6\xf3K\x9d\x7f2|\xfe\x98\xb9\ +\xc3\xcf\xea\xf0_\x1c\x010\x0b\x08\xfcy\xe7a\xaa\x0a\ +6\xa3_\xbdRb\xbdUUo\x0c`Q\xf5\xfc}\ +@\xc0\xdc\xde\x03\x8b\xd8\x1d\xb8\x5c\x08\xf3K\xe6=\xf7\ +\xa2R\xf5\xfc9\x11\x80Lm\xef\xbccM\xff\xd0\x1a\ +ph\x0b\x88y\x05\xc2\xad\x1b\xdb\xb8\xf0\xf9\xf3(_\ +|\x01\xa7\x94\x7f\xe7_s\x1e\x80\xa4\x05\xbd\xac\xd99\ +\x7f\x9fb\xe6\xdcz\xfe\x14\x83r\x9a[J:\xe2\x84\ +\xcfZ\x09\x00\xb2+0\x97\xbe\xcb\xe1\x00)S\xbeK\ +_?F\xfb\xa7\x84A\x0c\x00\x1a3\x89\x02\x8c\xfc\xa8\ +\x17\x0a`\x8c\xc1ho\x1f\xcf|\xf1\x02\x9e~\xeaI\ +\x8c\xabq\x17\xd9\xa54\xf0\xfa\xe4J~\xb9\x04!N\ +SK\xc9?\x12\xc3KY\x83\x9cp\xe2\xb0\x86\xb5\xb3\ +\x00\xbc\xf7\x93p \x97\xe2\xcbi|i\x9b0 \xab\ +\xff\x1fe\xe6S~}K\xc3\x07\xa6\x7f\x8c\x03Xc\ +\xe1\xe0&\xa1\x97(C\xb0\x0b]\xbe\xf8\x1c\xbe\xf0\xd9\ +\xc7\xb1\xbb\xb7\xab\x5c\xb8\x22\xc6\xa7\xe2\xf9\x12#Q\x9a\ +V\xc2\x01\xba(F.\xc4\xc8%*\xe5\x8eym,\ +\x80\x99\xc6\xa0\x14c\xfb\x0c\xab`\x0ePO\x12\x0a-\ +\x06\x0f\xb4\x7f\xfc\xf9\xe4\xb6\x93\x9c\x06k,\xc6\x18w\ +*\x06\xdc\xbdy\x0bO|\xfaq\x5c\xba\xf2\x82\x02\x88\ ++\xf3\x11hF\xa4|~\xa9\xe47% \xe6\x11\x08\ +T\xc7a.:\xb1\xd6\x16@k\xb2\x0c\x00'\xf8\xf7\ +&\xc3*\x18\xa0yg.\xf0\x17\x7f^\xff\xef\xe1\x1b\ +\xe6\xcf\xc1\x00\x8c1\xc0\xa8\xc0\xd3_\xfc\x1c\xbe\xf8\xc5\ +\xf3\xcd&\x0eJ\xabR\xffr\x0d=U\xbe\x9br\x11\ +$\x1c \xd7J\xe6\x80\xc8\x1cAU'\xdc\x0dE\x83\ +\xa7\xb8\xcd\xe4\x01\xc4\x18@\x9c\xc1\xc7\xc5\xf7\xe7\xac\xe7\ +\xe7R|c7 \xfe\xbc\xfeN:\x9f\xa2\xc2l\x00\ +\x17G\xb8\xf9??\x83/\x9c\xffl\xd6\xae\xb4J\xcb\ +\xc7\x00\xd6\xa1\x9e\x9f\xf3\xebsR\x8b\xd7\xda\x02h\x06\ +\x98\x1b\xda\x1b\xa8\x9e\x9f\xd3\xfe\x9c\x99O\x99\xfb\xf1\xe7\ +u\xfc\x7f\x8c\xf1\xc4\x12\xb0\x96l\x08b\xacEy\xb3\ +\x80\xf9\xd3K\xc03\xb7\xb0q\xdb\xc0\xdcm4mh\ +M\x5c\x00*\x87^\xea\xd7O!\xff9`\x9fd\xea\ +sf\xbf\x94\x80Du&Z\x84R)\x17#n\xc1\ +\xef\xd7\x97\xca\x02\x9c\xc3\xfc\xcfA\xfc\xe3\xbf\xe3\x10`\ +(0\xeaH@a\x8bI\xfc>\xba\xdf\x06\x8ea\xeb\ +\xb3\xbb\xd8\xbc\xb0\x8d\xf1\xc8`\xbc\xb5\xb5\x12\xcd\xff\x8a\ +\xe3\xf7\xe2e'\xce\x90\xdfU\xae\xc2\x8d\xddm\x5c\xbe\ +}\x0d{h\x8f\xed\x15[\xf7\xe2\x15\xa7\xceu\xba\xd7\ +\xad\xd1.\xce\xdf\xb8\x08c\x0c\xdet\xf6\xb5\xb0\xc4\xcb\ +q\xdecw\x7f\x17/\xde\xba\x86\xab\xd5\xad\xd5uR\ +\xf2\xbc\xef\xce\x81p\xf3\xf4\xee\x97\x80:\xce\xfc\x97\x80\ +?\xb2{\xb0\x8f\xb2n\xd7E\x00\xcc\x0c&U\xcf\x9f\ +\x9b\xdd\xd7\xa3\x9e\x9f\xd2\xf0\x14\x93S\xc7\xd6\xff\xd7E\ +@\xdex\x8c1\x9e\x82\x81\x93\xc1\x14(q\xd7\xf5\x0d\ +\xdcu\xfe6\xec\xbe\xc5\xf8\xd81\x8c\xac\x85\xb5\x16U\ +*9e\x01\x16\xd7\xbf\xf8\xb6\x7f\x82\xef\xfb\x1b\x7f\x8b\ +\x9e\x13W\xe1\xa5\x9dm\x5c\xbc\xf4,>\xf2\x89?\xc2\ +\xbb\xff\xe0\xbf\xe3\xc2\xee%8\xef\xf0\xa3\xef\xfc!\xfc\ +\xddw\xfe\xedN\xf7{\xfc\xc9\xcf\xe1\x1b\xde\xf57q\ +\xea\xd8I|\xf8g\xde\x87\xb2(\xc91\xed\x8d\xf7q\ +\xe9\xfa\x15|\xfe\xc2\xe7\xf1\x9b\xbf\xff^\xfc\xce\xf9?\ +\x80[\xb6]d\xe4*=\xce\xdcNY\x06\xb9\x00_\ +\x8a\xc9\xa5\xad\xc8\xd8\xdd\x89\xad\x81\x1f{v'\xa3\x95\ +\x09\x00\xb2\xbc2N\xe5\xcd\xdd\xbcc\x0e\xe2L\xfa\xfa\ +oJ8\x88!D3\xb1\x00\x0c\x0c\x8c5\xb8{\xa7\ +\xc0\xd9g\x0b\x9c\xb8U\xa0*\xb60\xde\x18\xa3(\x0a\ +\xd8\xa9\x00X\x95\xef\xcfMaa\x0b\xdc{\xea4\xee\ +=u\x1a\x7f\xe9\xd5o\xc0_}\xf4\xeb\xf0\x83\xff\xf9\ +G\xf0\xf8KO\x0d\xa3V\x19e\xb0\xb5q\x0c\x0f\xdd\ +\xf7ex\xe8\xbe/\xc3\xd7<\xf2\x16<\xfa\x81\xdf\xc0\ +\xbf\xfd\xf0/,W\x08x\xb0\x0d?8S<%,\ +\xfa\xf0\x04\xa5\xdd\xa9\xfbK\xe7N\x84\xf9!p\x01\xd8\ +0 \x90_\xcf\xdfa\xae9F\x96\xb4?\x95\xf9\x17\ +\x9fS'\x00yxT\xa8`\xad\xc5\xd6\x0b\x0e\xaf\xbb\ +u/\x8c\x07\xdc\xa6CUU(\xcb\x12\xe3\xf1\xb8Y\ +d\xfb\xa3}\xa0\xc2Jio\xb4\x87\x17\xae]\x06\x0c\ +p\xfa\xd4i\xdc}\xfcT\xf3L\x8f\xbe\xeeMx\xd7\ +\xf7\xfd\x04\xbe\xe3?\xfd}\xdc\xd8\xdd\xc6\xf3\xd7.5\ +Lm\x8c\xc5\xb9\xbb\xcf\xa0\xb0\x07{\x08^\xbby\x1d\ +{\xa3\xbd\xe6e]\xbdy\x9d\xbd\xef\x13\xcf>\x89\xd1\ +x\x84\xb2\xdc\xc0\x83\xf7=\x80c\x1b\xc7\x00\x00w\x9d\ +\xb8\x0b?\xf0\xed\xdf\x8f?|\xfcc\xf8\xfd\x8b\xffo\ +%\x16\x00\xa5\xf1\xfbj\xfa>\xee@*\xed\x98\x02\x1e\ +\xb9\xae\xc4C\xa6\xa8\x97Cy\x1a\xbf\xf9c\xbf\x82\xb3\ +\xf7\x1c\xe0\x09\xff\xedw\xde\x83\xff\xf1\xb1\xdfj\xde\xcb\ +\xedj\x1f\x15\xd3\x5c\xe5\x9f\xbd\xfb'\xf1\x89\xa7?\x85\ +cv\x03\x7f\xfd\xe1o\xc4\xcf\xfd\xe0\xbf\xc1\x89c'\ +\xa6B\xe0\x14\xbe\xe3k\xde\x89\xdf\xbb\xf8\xf1\x85\xd4X\ +H\x0a\x89b8N\xe3\x0f\x91\xdbO\xdd\x97\xf3\xe9S\ +\xbb\x0d\x91\xfd\x08\x06\x9c\xbe\xb9\xc2\x80\xd6\x1eT\xc9\xd5\ +\x80Y\xc3\x10kP\xcf\xcf\x85\xf9\xa4\xf3c\x0dR\x9f\ +S\xd8\x02\x85\x9d\x98\xfa\xc6\x1a\x14E\xd1\xfclnn\ +\xa2,K\x94e\x89\x8d\x8d\x0d\xac:\xd1\xd7{\xe0\xe2\ +\xfeU\x5c\xdc\xbb\x8a?\xbdv\x1e\xbf\xfa\xbf\x7f\x1d\xa3\ +\xea`\xcb\xef\x8d\xa2\xc4\x1b^\xfe\x15\xb86\xde\xc1\x13\ +;\xcf7?Wn_\x9f){\xde\x1f\x8f\xf0\x85\x9d\ +\xe7\x9ac\x9e\xd9\xbb\xca\xde\xb7\xf2\x15\xb6\xdd\x1e\xae\x8c\ +o\xe2\xd7>\xf9>|\xe6\xc2\xe7Z\xdf?p\xf6\xfe\ +\xe5\xbaH>\xaf\x96~\x99\xf5\xfc\xf1\xe7R\xc4\x81\xab\ +d\xac_\xd1Zn\x0e\xdaj\x9fM\xd5\xf7\xfb\x840\ + >\x93\xb2\xfc\xa4\xa2\x1e.\xc9'\xe7\xd8Z0x\ +xT\xaej\x84\x81s\x0eeQ\x1eH\xe4\xe98\x8b\ +\xb2\x80sn\xf0D\x8d!\xe8\xd6\xed\x1d\xec\x8fG\xd8\ +(6\x9a\xf7P\xdab\xb175\xc0h<\x8e\xd6\xc6\ +\xea\x80\x91\x9cm\xbe\xbb\xb8\x01\xa9\xa2\x1e\x09\x08L\x99\ +\xfb\x9c i\xba\x15cM\xb6\x07w\xce\xc9&NN\ +\xbc\x7f\xa0z~\xca\xc4\x8f#\x03q+\xb0\x9c2\xe1\ +\x1aH\xab\x9f-d\xf0\xfa\xa5U\xa8\xe0\x9cCe+\ +\x14E\xb1v\x02\xe0\xd8\xc6\xe6\x0c\xc3/\x22\xaf<~\ +\x89\xf7\x9c\xba\xab\xf5\xc9\xee\xde\xed\xe5fFz\x1e\xf1\ +\x97>\xefS\xcf/\xb5\x1b\xa3p\x06\xae\xa6\x9f\x8b\x1c\ +\x84\xdf\x87\x96\xf7\xdaX\x00\xc9\x9e\x80\x03\xd7\xf3sL\ +\x9e\xfa,\xbe\xa6\x94\x0f\xd0\x84\x04\x8di\xfa\x03x\xf8\ +\xc6\xca\xa9\xbf\xab\x7f\xd6\x87\xf9\xa7V\x0b&\xfd\x07\xbe\ +\xedk\xbf\xb5\x01\xe4j\xc1\xfd\xe4\xd5/\x0d~\xd7\xad\ +c\xc7q\xf6\xf8=\xb8w\xebn\xfc\xe3o\xfe\x01\xbc\ +\xfe\x95\xaf\x0b\xe6\xde\xe3#\x9f\xfa\xe3\xe5\xf6W4X\ +\xbbz~\x8e\xd1%\xd0\x90\x12\xd8kQ\x0e\x5cK\xa2\ +0K\x89\xdd\x1b0\x15\x01\x10\x84\x81\x94\xd0C\x99\xf3\ +\xf1y\x94\xf6\xa7\xce\xa7\x22\x02qjpa\x8af\xec\ +a\xc4\xa0\xa6u\x10\x02/\xbb\xf7>\xfc\xf6?\xfa%\ +Xc\xf1\xb2s\xf7\xe1\x8d_\xfep\xeb\xfb\xcf>\xf5\ +y|\xea\xf2\x17\x06wW\x1e\xfb\xe7\xbf|`\xf4E\ +&\xecG>\xf9Gx\xec\x13\xbf\xb3l98\x934\ +\xb3\x0e\xf5\xfc\xa9-\xca)a4OV\xe2\xc2\x04@\ +\x12L\xe9R\xcfo\xf2\xb4\x7fn=\x7f\x0c\xf2QU\ +\x81\x5c#\x10J P\xdf\x85\xf7_\xa7\xa2\x9f\xd3\xa7\ +\xee\xc17\xbd\xe5\x1b\xc8\xef\x9e\xbd\xf2\x1c~\xfa7~\ +n!X\x851\xb3\xf8\xfeh<\xc2\x07\xfe\xe8w\xf1\ +\x13\xef\xfdYl\xbb\xbd\x95`\x00\x92\x15\xd0\x95\x99\x86\ +\xaa\xe7\xe7\x12\x81bL\x80\xba\xee\xda\xb4\x04c\x0b\x1e\ +\xfe\xd4\x9f\xe1W~\xe0?\xe0[\ +\xdf\xfa-\x00\x80\xcdr\x03\xdf\xf3\xcd\xdf\x85\xc7\xfe\xe4\ +\x03x~\xef\xda\xd2\xe7b\xdd\xea\xf9%\xed\xcf\xa5!\ +\x87\xc0\xa1\x04 \xae\xcc\x02\xa0\xe2\x9aC\xd4\xf3\xa7\xac\ +\x84T=?\xe7\xdfS\xccMY\x08\xd4\xef\xe1y\xf1\ +\x0b[\x97\xd6\xe1/\xdd\xda\xc6\xbf\xfa\xc0\xbfo\xe6|\ +Y\x897\xde;\xec\xf91~\xe5C\xbf\x8e\xaf\xff\xca\ +\xaf\xc3\xdd'&Q\x80\xafx\xf0\xb5\xf8{o\xfd\x1e\ +\xfc\xec\xef\xff\xe2Z\xb8J\xab\xac\xe7\x97v\xfa\xcdI\ +M\xae\xa3\x00k\xb1/\x808\x885\xab\xe7\xa7\x1a\x81\ +\xc4\xa5\xc2\x14\x0e@\x9d\xcfY#f\x8d:\xfdM\xfc\ +q\xb3\x921\xfd\xde\xd3\x1f\xc7G\xff\xecc\x07\xc0\xa8\ +-\xf0=\xdf\xfc]x\xf3\x99\xd7\x93\xd5\x83\x8b\x04\x01\ +\xa55+\xad\xdfE\xd5\xf3\xc7VB\xecNp9\x01\ +\xf3X-\x0b\x13\x00\xbd|\xaa\x1e\x9d|%\xed\x1e\x9f\ +\x13#\xf7\x14V@\x99\xfb\x94\xb6\xa7@BI0i\ +\xf7\x9f\xe9\xbcX\x8b_\xf8\xe0/\xe1\xe6\xee\xad\xe6\xb3\ +/\x7f\xc5\x83\xf8\xb5\x1f\xfdE\xfc\xc8\xdb\xfe\xc1\xf2\xec\ +$#k|\xe9}\xe5\xd6\xf3\xc7\xcc.\x85\x1b\xb9\xdc\ +~\x09\xb3H\xd5\x0c\xacT\x00\x84\x89@-\x89\xe6\xbb\ +k|\xce\xdf\x96\xac\x00N \xc4\xda\x9d\xbb.U'\ +\x90\xca9\x98\x07\xbf\xb8\x93\xe8\x8f\x9f\xfbs|\xf0\xa3\ +\xbf\xdb\xfa\xec\xcb\xee{\x00\x0f\x9c\xbb_n\xe5\xbd\x00\ +\x10\xb0O\x17\x9f\xd4wR\xc2Nn\xff>\x09\xec\xe3\ +B\x8dC\xef\x0fP\x0e9\xc1\xad\x9e\x80\xbe\x9b\xc6\xe7\ +L\xfa\xbe\xf5\xfcT\xdc\x9fs%b\xed\x9f\xb2\x0c\xc8\ +\x9c\x01\xb8\x95Y\x01W\xb6\xaf\xe2\x89\xe7/4\x7f?\ +{\xf5\xb9^\xd7\x19\xbb1.\x5c\xfa\x12n\xecn7\ +\x9f]\xdd\xb9F\xbeC\xe7\x1d.\x5c\xfaR\xebyo\ +\x8f\xf6[V\xc0\x8f\xbf\xf7]8\xb9u\x02\xef\xf8\xaa\ +\xb7\xe3\xf8\xb1\xe3\xf0\xde\xe3\xd6\xed[+\xf1\xf7sL\ +\xe8\xa5\xd4\xf3\x0b\x16t\xaa\x1f\x01\x85;\xad\x5c\x00\x0c\ += J \xccU\xcf\xcf0\xb1\x04\x14R\xbf\xb3\xdb\ +\x88\x07\x89&\xab`~c\x0c~\xfaw\x7f\x1e?\xf5\ +\xbf\xfeck|T\xa3\x8e\x14=s\xeb\x0a\xbe\xe9g\ +\xbe\xbb\x05f\x96EIZP\xdb{\xb7\xf0W\xfe\xe5\ +;Z\x9fm\x94\x1b-\xcc\xe1F\xb5\x8b\xef\x7f\xf7\x0f\ +\xe3\xe5\x8f\x9d\xc1k\xce=\x84\x17o]\xc3\xf9\x17\x9f\ +^\xfa\x16@\xca\xef\ +\x0f\xbf\xebR\xcf\x1f\x0b\x11I\x90p\x82\x80\xbb~\x9c\ +\x0bP3\xbf\xb5\x16\x85\x8a\x80\xb5\xd2\xe4}\x8f_D\ +=\xbf\x84\xe0S\x96t\xeb\x7f\xb3f\x02\xa0\xd5\x10\xc4\ +\x07\xfe\x89\xcfg\xfc\xd4&\x9d\xb1@\x90\xc0\xc0\xf83\ +\x0a;\xa0\xbe\xa3\xfc\xfe\x94\xc6\x8f_N\xfd\xb3\xb9\xb9\ +\x89\xfb\xedi\xe5\xbcu`~\xc8\x1b\x82\xa6\x98\x90\x03\ +\x02900\xfe,d\xf8\x18\xc1\x97\xf6\x22\xcc\xe93\ +\xb0V.@\xeb\x81\xe0{\xd5\xf3K\x8c\x17k\xf1\xdc\ +\xec>J\x18\xa4\x22\x01)\x8b\x80\x03\x98B\x0b\xe0\x8d\ +'_\xab\xbb\x7f\xae\xb9%\x90\xc2\xad(f\xa4\x187\ +eA\xc4\xc2\x80K*\xca\xb1 \xd6\xd2\x05\x883\x9a\ +\xfa\x0cT\xaa\xbc\x8b?\x93\x12{\xb8\x02\xa1X\xd3K\ +\xfe}v\xbb0\xc2\x1a\xaa\x7f^{\xcf\xab\xf1\xaa\xe2\ +\x9cr\xdd!q\x01R\xfe>\xb5\x93\x10W\x14\xc4\xed\ +4$\xe5\xf2s\xd8@f\xc2\x8f_\xa5\x00\xf0]\x99\ +\x9e\xd3\xdaq\xd5\x1d\x05\xe4Q\xc5:1h\x18\xbb\x0e\ +\xb1\x86\xe7\xae!\xf5\x13\xe8\x82\x7f\x14E\x81\x93\xc7O\ +\xe0\xedg\xbf\x16\xaf.\xefSK`\xa5.@\xbe@\ +\x90\xe2\xec)d>\xce\xee\xa3\xda\x90K\xe1b\xa9\x15\ +X\x07\xde\xea%\x08\xe6-\x06\xf2\xa9\x01\xae{=?\ +gm\xe4X\x00T\xab\xa6\xfa\xc5\x9d\xbb\xeb,\xde\xb9\ +\xf1\x8dx\xe2\xfa\x05|z\xe7\x0bx\xd6]G\xa5\x1b\ +\x86-[\xfd\xb3\xc0\x1e\xa7a\x17]\xcfO\xa5\x02\xe7\ +\xb8\x13\x8b\xb2\x00\x06i\x09&\xe5Mw\xd9\xa17\xd6\ +\xc4\x0b\xaf\xe7\xefa\xeas\xcf]\xb7\x08\xaf\xad\x00c\ +\x0cN\x1e?\x89G6\x1f\xc6\x1b\xdc\xeb\xe1\xbdGU\ +U3.\xd3\xbc\x00\x8f\xc7A\xea\xb5\x87?H\x16\x19\ +\x00@\xe2\xb4\x1d\xf7\xdd\xb2\xcc\xf9\x18s\xa9\x7f\xca\xb2\ +\x9cDa\xa6\xf3\x9fjz\x92\xea\xd43t=\x7f|\ +m\xc3\x08\xa8\xdc6e+\xef\x07\x10F\x01\xb2\x8b,\ +\xe0gJh\xeb\x9e{\xc0\xa4r\xac\xee\xb0S\x98b\ +\xa67\x9f1\x06\xce\xbb\xe6\xb8\xf0\x1ck\xecA\xcb\xae\ +)\xc5\x7fS\x02b\x88>u\xde\xfbf>jAP\ +/\xc2\x1a,\xad\xdb\x85\x91\xed\xd3\xa2\x05\x14Z\x13\xa9\ +\x05+\xed\x1e\xeb\xe1\xe9f\xad\xc2;mm\x92:\xed\ +\x85\xc8\x99\xbd\xd4\xa2Le\xb5\xe5$\xc8\xe4\xae=J\ +\x10t\xd9F;7\xd5w\x88z~i~\xfa\x00\x92\ +\xd3\xbf3\xe3n\xf3\x0b\x00/I\xe5\xf0A\xb6\x8em\ +\xcd\xf4\x0a\x0c7\xd1\xe0\xa4n\x0a\xa0\x91\x16Q8\x9e\ +\x9a\x01\xb9\xf3s\x999d\xd6\xdc\xb1\xc6?5\xf3\xd7\ +\xbf\xc7`R\xae\x86\xea:o\xed\x85g`\xea\x1e\x86\ +\xad\x8d\x9b\x0c\xdb\xc3\xa05\x7f\xd1q\xcd8\x84\xf3\xfb\ +\x08\xd0\xfa\xba\x92\x80\x0e\xb3\xe1\xc2\x5c\x0c\xe0`G\xe6\ +z\xaeke\x91\xec#!\xb4\xb1\xf7\xce\xc3X\xa6\xc7\ +E\xb8&\xadiY_]\xc3|\xb9\xef\xb4>&P\ +2+q\x01j\xa9S\xf9`\xd4\xa1\x16\xa4\x98/\xd4\ +\x1caS\x83\xfa\xf7\xd9I\x9a,\xdc\xf8\x1c\xce\xfc\x8c\ +\xaf\x17\x82.\xa1PH-B\x0a\xd4i\xfeN,z\ +\xcat\x8c\x99\xbeOvW\x1f\xc6\xe7\xb4-5\x17R\ +\xbf|i\xa1J\x08z}\xaf\xf0]\xb7,\xa4\xc4\x5c\ +\xcehe\xf8\xa6E\xbb\xf7\x93\x1d\x9b\xeam\xdc\xe3P\ +t\xfdY-Pj\xe6\xad\xf7v Q\xc2\xa6u\x9d\ +\x05\xa6\xe7\xd4\x1d\xa0\x9b\xe7\xf4i\xf5\x98\x9b\xcd\x97\xb3\ +g\x80d\xf6O\x8fq5/.K\x00x\xca\x22\x90\ +\xfc\xc3\x901c-(UD\xc5\x82\x22\x9c\x98F\x8a\ +G\xccN\x09\x1dJ\x8bSZM2e9+\x86\xf3\ +Q9&J\xb6t\x12\xba'Q\x80\x95A^\x86X\ +\x8eY.\xf9\x9bC\x9c\xdf\xb8eS\x1f=twj\ +\xa1 5\xee$\xc72e\xf6P\x01\xf9\xe9\xbfz\x87\ +\xe7z\x9d\xb40\xa9\xc0\x22j\xdc\x9efeG\xbb[\ +M5j\ +>\xc2]\x9c\xc2u\xd3h\xff\xa85}#\x04\xa6[\ +\xc1\xb7]\x81H\xfb\xe3\xe0\xbd4\xaa\xd0\xf0.\x00'\ +\xf4\xa5\xd2\xe2\x1c\xe6\xbfq\xe3\xc6\xed\xaa\xaa6\xab\xaa\ +z\xc19\xb7\xd7G\xf3\xcf\xeb\x02x\x00~ggg\ +\xf7\xc6\x8d\x1b\x9f=y\xf2\xe4[_x\xe1\x85\x8dc\ +\xc7\x8e\x99\x93'Of\x01pR\x8dt\xca\xafL\x85\ +Yb\xbf3\x85\xc2\xa6\xfc\xe7.a\xa3\x16S1\xc2\ +n\xc8\xae\xae\xd4\xdbi\xae\x8f\xfc\xf1K\x1b[\xa4\xcc\ +Ui\xc1\x1f\xcc\xc9\xec\xfd\xab\xaa\xea\x04nV\xaeB\ +a\x0bT\xae\x9a-\x1d\x87c\xc3\xcf3\x16A5\xf9\ +l\x5c\x8d\x0f\xbe\x0f\xad\x00j\xffJ\xcc\x02\x83\xde\xf9\ +\xac\xb6b9@n\x0eP\xed\x9d\xc7\xcd[7\xab\xcb\ +\x97/c4\x1a\xddz\xf1\xc5\x17?z\xe3\xc6\x8d\xdd\ +\xc0\x12\xe8,\x04\xe6\xb1\x00\xaa\xcb\x97/\xdf\xbep\xe1\ +\xc2\x1f\x9f>}\xfak\x8c1\x8f\x9e?\x7f~\xcbZ\ +kS \x86\xa45\xbb\xb4o\xea\xc2@9\xda[Z\ +\xf8R\xf8*'\x8e\x9e\xda\x9e\xba/su\x9d\xa3T\ +\xf8.\xe7z\xb9\x96P\xee\x5cK~2\xf7\xacR<\ +>\x87\xa9r\xd7O*\xee\x9f\xab\x9c\xfa\x8c\x81q\x87\ +\xedh4\xaavvv>y\xfe\xfc\xf9\xffs\xe9\xd2\ +\xa5[\x00F}\xc3\x81}0\x007E\x1c\x9dsn\ +\xff\x89'\x9ex\xde\x18\xf3\xeeW\xbd\xeaU\xdfv\xcf\ +=\xf7\xbcicc\xe3\x9c\xb5\xb6\xc0\xec\xb6\xa0\xbd\x18\ +7\x97\xbfsP\xd3\xae`K.\x03\x85\xa1\x98>\xcf\ +\x97#\xfc\xe6\xf2\xefe\xb327\xf8n$\xf7Hb\ +\xec\x9cqO\xe7\xcd\xe72\x8c\x09..\x08\xd3>\x99\ +2^\x8a\xdf\xe7\xae\xe7\x1c\x01%\xbc{\x1f\x08\x93\xc6\ +\xe2\xf6\xdeW\xa3\xd1\xe8\xf2\xd5\xabW?y\xfe\xfc\xf9\ +\x0f?\xfd\xf4\xd3\x97\x9cs\xa3)O\xba\xd0:G\x97\ +\x97\xda\x81\x0a\x00\x1b\x00\xb6\x00\x9c\x00p\x17\x80\xbb\xad\ +\xb5g\xce\x9c9\xf3\xf2\xcd\xcd\xcdsEQ\xdc\xe5\xbd\ +?\xe1\xbd?\xee\xbd\xdf\x04Pz\xefk\xab`\x19\x99\ +\xf1\xa6\xc7\xf3\xf9\x81\x8e9\xccd\x02aZ\x0bo\x8b\ +\xf6~N6\xf8\xdd\x00\xb0\x02\xb3{\x0a8\xce\xf8\xde\ +\x0b\xf3\x1e\xde\xc4\x06c\xb2\xd3q\xdb`\x9d6\x0a(\ +XwT\xe0\x8f\x8b\xa5\xfb\xbec\x0d\xaf\x17F\xc9#\ +!\xe0\x82\xe3\xe2\xeb\xfb\xe9\xf1\x0e\xc0\xc8\x18\xb3o\x8c\ +\xb9m\x8c\xb9\xe5\x9c\xbb\xb1\xbb\xbb{\xe9\xfa\xf5\xeb\x97\ +\xbc\xf7W\x01\x5c\x07\xb0\x0d`w\xfa3\x020^t\ +\x14\xa0\x8e;\xee\x01\xb8\xed\x9c\xbby\xe5\xca\x15;\xbd\ +\xf9\x0d\x00'\x01\x1c\x9f^\xbf\x8c\x16\xd2\xb2\x99\xde\xcc\ +\xc1\xd4~@\x01\xb2\xf6\x8c\x8f\xd9\x0d\xdcbA\x10\x0a\ +\x81y\xe6\xd6g\xfc\xef\x98\xb1R\xe3*\x22\x81\x10\xff\ +/\x8d\x95b>*\xea\xe5\x13\xcf\x90#4\xa4k\xc5\ +\xcf^[\xda\xe3\x9a\xcf\x00\xdc\x9a2\xfb6\x80\x9bS\ +\x86\xdf\x9b\x1eS\xf5\x89\x08\xf4\xc1\x00\xdc\x94\xd1\xedt\ +\xe2w\x03\x89\xeb\xa7\x03\xdd\x01plj-\x14\x18\xb0\ +\xf3\xd0\x82,\x9b;E\xcbw\x15\x04\xa1@\xb0\xcc\xe7\ +&c\x1e9\xa6\xca\x11\x06\x10,\x00\xe9\x87\xb2`\xba\ +j\xf9\x5c&\xf6\x99\x82@z\xe6\xf0\x1a.\x12\x04{\ +\xd3\x9f\x9d\xe0g;\xd2\xf8\x15z\x84\x03\xcb\x1e\xcco\ +\x02\xe9\xb4\x1fL\xb8\x9f\x0e\xe46\x80\xcd)\xf3\x97\xc1\ +\xf7J\x87G\x08\x80`\x9eX\x18t\xb5\x00\xe6\xd5\xa4\ +1#\xc7V\x89\x0d\x94\x0de\xb1\xc4\x98T\x8e\xb6\xf7\ +\x1d\x05\x96\xef\xe1\xe6x\xe1\xb8j\xfa3\x9a\xfe\xd4\x96\ +\xc0\xeeT\x08\xecN\xff\x1eO\x7f\x16.\x00\xc2A\x8e\ +\xd0\x8e\x82\xd6\xa6\xca\xb1\xa9\x00(\x22\xd3L+\xe3\x0f\ +\xb7E\x80\x8e\x02\xa0\x0f\x16\x90k\x89\x19F\xd3[\xe2\ +w0V@\x17M\xee3\xbeKY\x16\xdc\xef.!\ +\x18\xaa\xc0\x15\xd8\x9f\xf2X\xf8\xffh\xfa\xbf_\x96\x0b\ +\x80\xe9`\xca\xe9\x8d\x11\x0c\xb4\x16\x02e\xe0\x16Xe\ +\xfeC-\x00l\x07\xbc\xa5+\x06\x90c5\xf8\x0c\xac\ +\xc2\x12>\x7fm\x11\xe4\x0a\x00\x8e\xd9%\xe6v\x99c\ +O\x097\xcfX\xdb\xa1ru\x81\xa6\xdf\x0fL\xff\xfd\ +\xc0\x22\xf7}_rW\xaa'\xbb\x0c@\x98\x8d\xe9\xe7\ +%\xe1\x8b\xa9\x008\x1anA\xce\xdf\xbe\xa7P\xe8\xa2\ +\xfd%A`\x18\xf7\x05\x98\xcd\xdb\xeb\xa2\xa9}\xc7\xf3\ +r\xbfO\x9d\xe7\x03\xff>T\xb4U \x18\xaa\x00/\ +X\x8a\x00\x00cv\x15\xd1\xffP\xe6?\xb2B\xa1K\ +\x88\xd5/p\x0c\x1c>\x91;V\x9f\xc9\x9c}\x98\xdb\ +'\xf0\xb4.nw\x08\x0cV\x91\x8b\xe0\xfb\xce\xb3\x19\ +\xe0%@\x00]T\x00(-\x13\xab\xe0,\x83.V\ +\x87\xef\xc8\xf8]\xac\x9b>\xe4\x09\xcc\xc0\x13?\x83\x98\ +wC\x99\x8a\x92\xd4U\x81\xa0\xb4hW\xa5K2X\ +\xd7\xbd\xac\x17\x1d*\xee\x03(b\x1d\x04\x80\x92\xd2:\ +c\x17\xabbh%%%%%%%%%%%\ +%%%%%%%%%%%%%%%%\ +%%%%%%%%%%%%%%%%\ +%%%%%%%%%%%%%%%%\ +%%%%%%%%%%%%%%%%\ +%%%%%%%%%%%%%%%%\ +%%%%%%%%%%%%%%%%\ +%%%%%%%%%%%%%%%%\ +%%%%%%%%%%%%%%%%\ +%%%\xa5C@\xff\x1ft\x15\xc0\x0e;\x04\x9c\xe7\ +\x00\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x03\xb6\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1f\x00\x00\x00%\x08\x04\x00\x00\x00\x10F\xfay\ +\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\ +\x00\x00\x00 cHRM\x00\x00z&\x00\x00\x80\x84\ +\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u0\x00\x00\xea`\ +\x00\x00:\x98\x00\x00\x17p\x9c\xbaQ<\x00\x00\x00\x02\ +bKGD\x00\xff\x87\x8f\xcc\xbf\x00\x00\x00\x09pH\ +Ys\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\x00\ +\x00\x00\x07tIME\x07\xe1\x05\x0c\x0c00c\x7f\ +\xadt\x00\x00\x02\xa9IDATH\xc7\xd5\x96MH\ +\x15Q\x18\x86\x9f\xef\x9cso\x12y\x8b\xc4H\x8a\x0a\ +\x94\x82 ($\x10\x8a\x08\xa4B\x09\xaa\x8dP\x10A\ +\xab\x82\x16-ZED\x04\xb5iY\xd0\xaae \x82\ +\x96 \xd5\xa2\xc8M\x04\xae\xdcDA\x10\x19R\x0bM\ +\x90@\xbb\xde9\xe7k1\xe7^\xe7\xfe\x92\xb8\x88f\ +10\x03\xcf\xf7\x9e\xf7\xfb\x9b\x11e=\x97Y\x17\xfd\ +\x8fqW\xfbB\x04\x90\xf8\xa0\xa0-\x93#Z\x8d\xae\ +\xc2\x02(\x0ah\xf3\x10\x19\x5c\x84\x147\x15KJ\x00\ + 4\x0b\x91=|\x0a;\xc0\xc6S\x04\x02\x90`\x08\ +\xd2\xd0\x86\xcbh\xa7\xcf\x82\xc5\x22\x18@\xf1(\x10\xd2\ +\x13\xb4\xce|\x8aX\x1c\xb9M\xf9\xa3\xed\xe4\xc8\x93\xc7\ +\x91\xc7b1\xd2\xa0J\x15\xefb\x10,\x0e\x87\xbb\xbe\ +\xeb\xe0\x90+\x14\xe7^<\x1b\x9d\xc7\x93P\x22\xc1\xe3\ +\x09\x1a\x9a\xab\x13\x1d\xbbCg\xcc\x96\xc4\xda\xed\x03\x17\ +\x8fu\x90\xc7\x91\xc3a\x10\x8cHs<\xcd\xba\xed4\ +f[\x90`\xbc\x95\xcd\xe7/\xec/\xd0F\x9e\x1c\x0e\ +\x07\xb5\x01\xb2x\xf41GqVE%\x98`\x5c\xe7\ +\x95\xa1\xae\x8d\xe4\x22\xeebu\x1a\xe0\x1a\xef\x8aN\xbc\ +\xf4K\xe5\x00m;o\x9c-l G\x1e\x87\xc5 \ +Y\xfdj\xef!\xc5\x9f/\x0c\x8f$\xcb)\x1eL{\ +\xcf\xcd\xc1\xe8\xde`\x9a\xa8\xab\xa6h\xdag\xaf\x17\x86\ +\xc7\xfc\x12\xa4!:\x0e\xdc=\x8e\x8d\xfd Y\xc9\xda\ +Z*i\xab\xea\xe4\xcf\xa7\xe3+E\x04Q\x09fG\ +\xdf\xed\xc3\x11n\x9a\xba\xb2\xf7\x90\x86y\xb702\x9e\ +\x14A\x05\xa0\xa7\xff\xd6>\xa0E\xe1\xd2\xe2e\xa6n\ +\xcfV\x9b/w\x96_\xf9\xb1X\xdfu\xae\x0e/\x8f\ +\x0e\x97\xba\xfb\xfaUPQQ\xfc\xd4\xe8\x93\xef\x95\x09\ +\xacW\x8f\xe3Zqw\xb9\xe7\xc8I\x22l\xfd\xf4\xc4\ +\xe3\xaf\x04<\xe5\x1d\xd0P\xbd\xacm\xae\xee\xed\x1d\xf0\ +FTT\xd4\x84Oo\x1e~ !\x01|3\xbc\xbc\ +c\x0cr\xad\xbb\xf7\xb4\x17Q\x105a\xf6\xfd\x83)\ +J\x94HH\xd0\xea\xc5Q\xbb.\x04\xd0\xde\x13\x82\xa8\ +\x09 :?}g2\xc2\x9eP\xeb>\x8b\xc7\x9a\xef\ +6\xb9\xf6\x04\x13TD\x7f}\xbe\xff\x8a\x22%J\x94\ +\xe2\xc8V-\x8d\xfa\x15\xa03+\xc5/\xce\xdb\xe0\xfc\ +\xf2\xb7{c\x8b\xbf3\xb0\xd6\xce\xfb\xea\xba\x10\x0c\x16\ +C\x0e7X8w\xcau-\xcdF9ZS&bxD-=kxu2pXdAP^XixE=wJ;I-zN?L00e1+!0fi; z&wxdCZ@Sd-qumkoXSQxcD5Fb)! z#?hog@xfD;=wLg>ZO>qA+6Wd~V(;YBFVfbIzn`Y4Z(kvYMWRb|!A}e-l6VUP&sc@0 zX}a86%jw4y`A_S|jQyXlEb(IR7;8016yLVc*;B)0)ix-*_^*AjJ%~zipP@oAS}B}@ zTvnajj1Jt&d#4J;(p0+(@_jV3G=d_%Ps%fPx$c8OXHAd9&Z)*ez_gSSqH5!B%=T8@)^#WZ<0F<5)3A38kB zV17J5V&mcqqcQrOW?FS8)Yv|SV#l>J)uUbr>rc?Yiq{*}H^h}iyzEoM=syuYmCVR4 z7@UocdKY`qhm@aY^5$EfUX`>U4TedH+*Dn3O>J)MiDA1h-KsE}4?W(k>G&5ZMB^)! z&}^G8Wsv!cwqSVi%#+p0(J8OgpmhGyq9Sf3i7hp=%6&apdXu>C^jB#=hJ^3G91J2& zF!HPtZN+SBLv=oLSWeb*#PJy3%v*M2b|j z1zAjsmndn%2chW*UG^{u7WS}4j>NP# zC8)`swNdcP7OTe(zb0ITrpK0~dkZacjvYrC%`|9k{hbB(2gfrz0g#S#FR~iq;Sp+J zX!6pvNVI4uf&BsF#4UvZ7+74^_e8!@AN+#K$&$V!{gT(pMICB+f--vtOTX^H%%xCL zZOa1ZfL3IBU;gX&5T8FG_YUX%n;1V`h6(JXQyTIn(AVUT}Upf$(A@Z&GY}d zwzSyKe`t+f&~cW{O-#*e!t1*)&N+IK1{b+}zZSa0(UF)S!-{X9Pur^2_Fxa{$3l+| zT!tQKIe&+yKzI##La!gS1=C;5iz>vt3yzo&)t+J%!FT}8~*I+;uf z`rgW0GHFrVts>^3$}@1C$9he^2qq?l5YNweKsrXpFE3kjBrjLAytVW)YTJuI?0LFI zY{u4>lr<^TUJWg+FP0x(JAP-Xa?C3Q$FGZypDpU#K!%5L3wy%9OQGp^_iswC=|i4$ zoZ_#-;zFL&awJ^UG|aDUTM@=@tlU^Ct3-aI9P*R71*`5&_@jF4Hvp`@;b(6u?~CKb z-3`};0^f#QOGihWmy{n+2W4!ni*Z8WO1HBn|r2Z-CsqwTcm zWtOR^=mhc9 + + TankDialog + + + + 0 + 0 + 879 + 551 + + + + Dialog + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + 0 + + + + QWidget#page_1 { +margin: 0px; +} + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 45 + + + + + 16777215 + 45 + + + + #top_group { +background-color: #2D2D2D; +border: none; +border-bottom:1px solid #202020; +} + + + + + + + false + + + + 0 + + + 4 + + + 0 + + + 1 + + + 1 + + + + + + 0 + 0 + + + + + + + :/Tank.Platform.Qt6/tank_logo.png + + + + + + + /* want this stylesheet to apply to the label but not the tooltip */ +QLabel{ + color: white; + font-size: 20px; + margin-left: 5px; + font-family: "Open Sans"; + font-style: "Regular"; +} + + + TextLabel + + + + + + + foo bar + + + /* want this stylesheet to apply to the label but not the tooltip */ +QLabel { + color: rgba(250,250,250,180); + font-size: 11px; + margin-right: 8px; + font-family: "Open Sans"; + font-style: "Regular"; +} + + + + + + Current Work Area: +TextLabel + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 34 + 34 + + + + Qt::ClickFocus + + + Click for App Details + + + QToolButton{ +width: 12px; +height: 20px; +background-image: url(:/Tank.Platform.Qt6/arrow.png); +border: none; +background-color: none; +} + +QToolButton:hover{ +background-image: url(:/Tank.Platform.Qt6/arrow_hover.png); +} + +QToolButton:pressed{ +background-image: url(:/Tank.Platform.Qt6/arrow_pressed.png); +} + + + + + + + true + + + + + + + + 34 + 34 + + + + Qt::ClickFocus + + + Hide App Details + + + false + + + QToolButton{ + width: 12px; + height: 20px; + background-image: url(:/Tank.Platform.Qt6/arrow_flipped.png); + border: none; + background-color: none; + } + + QToolButton:hover{ + background-image: url(:/Tank.Platform.Qt6/arrow_flipped_hover.png); + } + + QToolButton:pressed{ + background-image: url(:/Tank.Platform.Qt6/arrow_flipped_pressed.png); + } + + + + + + + true + + + + + + + + + + 4 + + + + + + + + QWidget { + font-family: "Open Sans"; + font-style: "Regular"; +} + + + + 1 + + + 1 + + + 1 + + + 1 + + + + + + 0 + 100 + + + + QGroupBox { +margin: 0px; +} + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + Qt::Horizontal + + + QSizePolicy::Expanding + + + + 145 + 20 + + + + + + + + + 40 + 0 + + + + + 40 + 16777215 + + + + + + + + + + + + 11 + 0 + + + + + 11 + 16777215 + + + + #gradient { +background-image: url(:/Tank.Platform.Qt6/gradient.png); +border: none; +} + + + + + + + + + + + 400 + 0 + + + + + 400 + 16777215 + + + + /* +All labels inside this scroll area should be 12px font. +This is to avoid the UI looking different in different app like +maya and nuke which all use slightly different style sheets. + */ +QLabel{ + font-size: 11px; + margin-bottom: 8px +} + + + + true + + + + + 0 + 0 + 398 + 550 + + + + + + + + + + 64 + 64 + + + + + 64 + 64 + + + + + + + :/Tank.Platform.Qt6/default_app_icon_256.png + + + true + + + Qt::AlignCenter + + + + + + + 1 + + + + + font-size: 16px; + + + + Publish And Snapshot + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + + + + + 350 + 16777215 + + + + Tools to see what is out of date in your scene etc etc. + + + true + + + + + + + + 0 + 0 + + + + + 0 + 22 + + + + + 16777215 + 22 + + + + tk-multi-snapshot, v1.2.3 + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + true + + + + + + + 2 + + + + + Documentation + + + + + + + Help && Support + + + + + + + Qt::Horizontal + + + + 0 + 20 + + + + + + + + + + font-size: 16px; +margin-top: 30px; + + + Your Current Work Area + + + + + + + Qt::Horizontal + + + + + + + + 350 + 16777215 + + + + TextLabel + + + true + + + + + + + 2 + + + + + Jump to File System + + + + + + + Jump to Flow Production Tracking + + + + + + + Qt::Horizontal + + + + 0 + 20 + + + + + + + + + + + 350 + 16777215 + + + + If you are making changes to configuration or code, use the reload button to quickly load your changes in without having to restart: + + + true + + + + + + + Reload Engine and Apps + + + + + + + font-size: 16px; +margin-top: 30px; + + + Configuration + + + + + + + Qt::Horizontal + + + + + + + + 350 + 16777215 + + + + Below is a list of all the configuration settings for this app, as defined in your environment file: + + + true + + + + + + + 20 + + + + + + + Qt::Vertical + + + + 328 + 0 + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/tank/platform/qt6/tank_logo.png b/python/tank/platform/qt6/tank_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f57628025d19da0efa4e58420696c48726341be2 GIT binary patch literal 888 zcmV-;1Bd*HP)pF8FWQhbW?9;ba!ELWdL_~cP?peYja~^aAhuUa%Y?FJQ@H10|iM$ zK~z|U?U-FiQ(+j#|L@s{&1^HrQVOLaf~33%Z<6l3C@~764J!!>vk!^HkFE@n!aj|O z5Rp_6S)fBhMS_Z=1|HsVM<0Nag2g;4O0XCJq+uhn0gM5FP}yD6PZ?4Q zkl-}BG>~{03R0SEiEuE<7FY>ktOfF<3cOR@jwrW8(*V80ykbtK-uO*kv4@X~oQM%( zrz|I;Trm^T$2Cpyf3O+ahLnUIC@0S1E?eoT3(of8C?ED-wquO}5gpks0U6)%eDJ{3`gmAMg zyjB||^YNQ`kwQ4me;g#obDYQc>t~v2%m|+6k?6gMr7Xz#0Qz+BvzE-c*z-v>3P4DJ zH-sa#oywLG`9QuplADTl7ozQKGXQ|~xS;vkhxfx;bX<8Dl=tl8D{RZ!isHQo0RSf3 zByM)AF=Wt1B*%0eZz<_i-XDqPjU-|TwkvYc+|!D;KR%)HL>>mjVEIN-=8I!|9sw9|s~}7zh{v zrso`qk?XC04wuJ`Cm&wo`*`@l&ygw6S>2B8Oa)H2U5>bZOzT`(>jmUi?Z>r_8{jD) zHgCdi#?gCcKq4Q-Kwbz;)KxLGqbW5cA~0;AQ0<{mX_k6gkI zMP5YDA%T0s@``*lK(DSwcr6GXIYLcI@>rH2Igv;Fh=RT*fG1f(f&2r;ZWBkrRm DEV" % title + ) + else: + self.ui.label.setText(title) + + self.setWindowTitle("Flow Production Tracking: %s" % title) + if os.path.exists(bundle.icon_256): + self._window_icon = QtGui.QIcon(bundle.icon_256) + self.setWindowIcon(self._window_icon) + + # set the visibility of the title bar: + show_tk_title_bar = ( + not hasattr(self._widget, "hide_tk_title_bar") + or not self._widget.hide_tk_title_bar + ) + self.ui.top_group.setVisible(show_tk_title_bar) + + if show_tk_title_bar: + + ######################################################################################## + # set up the title bar and configuration panel + + self.ui.tank_logo.setToolTip( + "This is part of the PTR desktop app %s" % self._bundle.name + ) + self.ui.label.setToolTip( + "This is part of the PTR desktop app %s" % self._bundle.name + ) + + # Add our context to the header + # two lines - top line covers pipeline config and Project + # second line covers context (entity, step etc) + + pc = self._bundle.context.tank.pipeline_configuration + + if self._bundle.context.entity is None: + # this is a project only context + + # top line can contain the Pipeline Config + if pc.get_name() and pc.get_name() not in ( + constants.PRIMARY_PIPELINE_CONFIG_NAME, + constants.UNMANAGED_PIPELINE_CONFIG_NAME, + ): + # we are using a non-default pipeline config + first_line = ( + "Config %s" % pc.get_name() + ) + else: + first_line = "Toolkit %s" % self._bundle.context.tank.version + + # second line contains the project + if self._bundle.context.project: + second_line = "Project %s" % self._bundle.context.project.get( + "name", "Undefined" + ) + else: + second_line = "No Project Set" + + else: + # this is a standard context with an entity + + # top line will contain the project name + if self._bundle.context.project: + first_line = "Project %s" % self._bundle.context.project.get( + "name", "Undefined" + ) + else: + first_line = "No Project Set" # can this happen? + + # ...unless we are running a non-Primary PC + pc = self._bundle.context.tank.pipeline_configuration + if pc.get_name() and pc.get_name() not in ( + constants.PRIMARY_PIPELINE_CONFIG_NAME, + constants.UNMANAGED_PIPELINE_CONFIG_NAME, + ): + # we are using a non-default pipeline config + first_line = ( + "Config %s" % pc.get_name() + ) + + # second line contains the entity and task, step + second_line = str(self._bundle.context) + + self.ui.lbl_context.setText("%s
    %s" % (first_line, second_line)) + + ######################################################################################## + # add more detailed context info for the tooltip + + def _format_context_property(p, show_type=False): + if p is None: + formatted = "Undefined" + elif show_type: + formatted = "{} {}".format(p.get("type"), p.get("name")) + else: + formatted = "{}".format(p.get("name")) + + return formatted + + tooltip = "" + tooltip += "Your Current Context" + tooltip += "


    " + tooltip += "Project: %s
    " % _format_context_property( + self._bundle.context.project + ) + tooltip += "Entity: %s
    " % _format_context_property( + self._bundle.context.entity, True + ) + tooltip += "Pipeline Step: %s
    " % _format_context_property( + self._bundle.context.step + ) + tooltip += "Task: %s
    " % _format_context_property( + self._bundle.context.task + ) + tooltip += "User: %s
    " % _format_context_property( + self._bundle.context.user + ) + for e in self._bundle.context.additional_entities: + tooltip += "Additional Item: %s
    " % _format_context_property( + e, True + ) + + tooltip += "
    " + tooltip += "System Information" + tooltip += "
    " + tooltip += ( + "Flow Production Tracking Toolkit Version: %s
    " % self._bundle.tank.version + ) + tooltip += "Pipeline Config: %s
    " % pc.get_name() + tooltip += "Config Path: %s
    " % pc.get_path() + + self.ui.lbl_context.setToolTip(tooltip) + + ######################################################################################## + # now setup the info page with all the details + + self.ui.details_show.clicked.connect(self._on_arrow) + self.ui.details_hide.clicked.connect(self._on_arrow) + self.ui.app_name.setText(self._bundle.display_name) + self.ui.app_description.setText(self._bundle.description) + # get the descriptor type (eg. git/app store/dev etc) + descriptor_type = self._bundle.descriptor.get_dict().get( + "type", "Undefined" + ) + self.ui.app_tech_details.setText( + "Location: %s %s (Source: %s)" + % (self._bundle.name, self._bundle.version, descriptor_type) + ) + + context_info = "Your current work area is %s. " % self._bundle.context + # try get the environment - may not work - not all bundle classes have a .engine method + try: + context_info += "You are currently running in the %s environment." % ( + self._bundle.engine.environment["name"] + ) + except: + pass + + self.ui.app_work_area_info.setText(context_info) + + # see if there is an app icon, in that case display it + self.ui.app_icon.setPixmap(QtGui.QPixmap(self._bundle.icon_256)) + + self.ui.btn_documentation.clicked.connect(self._on_doc) + self.ui.btn_support.clicked.connect(self._on_support) + self.ui.btn_file_system.clicked.connect(self._on_filesystem) + self.ui.btn_shotgun.clicked.connect(self._on_shotgun) + self.ui.btn_reload.clicked.connect(self._on_reload) + + # When there is no file system locations, hide the "Jump to File System" button. + if not self._bundle.context.filesystem_locations: + self.ui.btn_file_system.setVisible(False) + + if len(self._bundle.descriptor.configuration_schema) == 0: + # no configuration for this app! + self.ui.config_header.setVisible(False) + self.ui.config_line.setVisible(False) + self.ui.config_label.setVisible(False) + + else: + # enumerate configuration items + for ( + setting, + params, + ) in self._bundle.descriptor.configuration_schema.items(): + value = self._bundle.get_setting(setting, None) + self._add_settings_item(setting, params, value) + + ######################################################################################## + # parent the widget we are hosting into the dialog area + self._widget.setParent(self.ui.page_1) + self.ui.target.insertWidget(0, self._widget) + + # adjust size of the outer window to match the hosted widget size + dlg_height = self._widget.height() + if show_tk_title_bar: + dlg_height += TankQDialog.TOOLBAR_HEIGHT + self.resize(self._widget.width(), dlg_height) + + ######################################################################################## + # keep track of widget so that when + # it closes we also close this dialog + self._orig_widget_closeEvent = None + if hasattr(self._widget, "_tk_widgetwrapper_widget_closed"): + # This is a wrapped widget so we can cleanly connect to the closed + # signal it provides. + # + # Doing things this way will result in gc being able to clean up + # properly when the widget object is no longer referenced! + self._widget._tk_widgetwrapper_widget_closed.connect(self._on_widget_closed) + else: + # This is a non-wrapped widget so lets use the less + # memory friendly version by bypassing the closeEvent method! + # Note, as soon as we do this, python thinks there is a circular + # reference between the widget and the bound method so it won't clean + # it up straight away... + # + # If widget also has a __del__ method then this will stop it + # being gc'd at all... ever..! + self._orig_widget_closeEvent = self._widget.closeEvent + self._widget.closeEvent = self._widget_closeEvent + + def event(self, event): + """ + To avoid key press events being posted to the host application (e.g. hotkeys + in Maya), we need to filter them out. + + Events will still be handled by child controls (e.g. text edits) correctly, + this just stops those events being posted any further up than this widget. + """ + if ( + event.type() == QtCore.QEvent.KeyPress + and event.key() != QtCore.Qt.Key_Escape + ): + # Don't let the event go any further! + # self._bundle.log_debug("Suppressing key press '%s' in Toolkit dialog!" % event.key()) + return True + else: + # standard event processing + return TankDialogBase.event(self, event) + + def closeEvent(self, event): + """ + Override the dialog closeEvent handler so that it first tries + to close the enclosed widget. + + If the enclosed widget doesn't close then we should ignore the + event so the dialog doesn't close. + + :param event: The close event to handle + """ + if self._widget: + if not self._widget.close(): + # failed to close the widget which means we + # shouldn't close the dialog! + event.ignore() + + def done(self, exit_code): + """ + Override 'done' method to emit the dialog_closed + event. This method is called regardless of how + the dialog is closed. + + :param exit_code: The exit code to use if this is + being shown as a modal dialog. + """ + if self._widget: + # explicitly call close on the widget - this ensures + # any custom closeEvent code is executed properly + if self._widget.close(): + # Note that this will indirectly call _do_done() + # so there is no need to call it explicitly from + # here! + pass + else: + # widget suppressed the close! + return + else: + # process 'done' so that the exit code + # gets correctly propogated and the close + # event is emitted. + self._do_done(exit_code) + + def _do_done(self, exit_code): + """ + Internal method used to execute the base class done() method + and emit the dialog_closed signal. + + This may get called directly from 'done' but may also get called + when the embedded widget is closed and the dialog is modal. + + :param exit_code: The exit code to use if this is + being shown as a modal dialog. + """ + # call base done() implementation - this sets + # the exit code returned from exec()/show_modal(): + TankDialogBase.done(self, exit_code) + + # and emit dialog closed signal: + self.dialog_closed.emit(self) + + def detach_widget(self): + """ + Detach the widget from the dialog so that it + remains alive when the dialog is removed gc'd + """ + if not self._widget: + return None + + # stop watching for the widget being closed: + if hasattr(self._widget, "_tk_widgetwrapper_widget_closed"): + # disconnect from the widget closed signal + self._widget._tk_widgetwrapper_widget_closed.disconnect( + self._on_widget_closed + ) + + elif self._orig_widget_closeEvent: + # apply fix to make sure all workers in pre v0.1.17 tk-framework-widget + # BrowserWidgets are stopped correctly! + # Note, this is the only place this can be done for non-wrapped + # widgets as once it's detached we have no further access to it! + TankQDialog._stop_buggy_background_worker_qthreads(self) + + # reset the widget closeEvent function. Note that + # python still thinks there is a circular reference + # (inst->bound method->inst) so this will get gc'd + # but not straight away! + self._widget.closeEvent = self._orig_widget_closeEvent + self._orig_widget_closeEvent = None + + # unparent the widget from the dialog: + if self._widget.parent() == self.ui.page_1: + self._widget.setParent(None) + + # clear self._widget and return it + widget = self._widget + self._widget = None + return widget + + def _widget_closeEvent(self, event): + """ + Called if the contained widget isn't a wrapped widget + and it's closed by calling widget.close() + """ + if self._orig_widget_closeEvent: + # call the original closeEvent + self._orig_widget_closeEvent(event) + + if not event.isAccepted(): + # widget didn't accept the close + # so stop! + return + + # the widget is going to close so + # lets handle it! + self._on_widget_closed() + + def _on_widget_closed(self): + """ + This is called when the contained widget is closed - it + handles the event and then closes the dialog + """ + exit_code = QtWidgets.QDialog.Accepted + + # look if the hosted widget has an exit_code we should pick up + if self._widget and hasattr(self._widget, "exit_code"): + exit_code = self._widget.exit_code + + # and call done to close the dialog with the correct exit + # code and emit the dialog closed signal. + # + # Note that we don't call done() directly as it would + # recursively call close on our widget again! + self._do_done(exit_code) + + def _on_arrow(self): + """ + callback when someone clicks the 'details' > arrow icon + """ + if not hasattr(QtCore, "QAbstractAnimation"): + # This version of Qt doesn't expose the Q*Animation classes (probably + # and old version of PyQt) so just move the pages manually: + self.setUpdatesEnabled(False) + try: + if self._info_mode: + # hide the info panel: + # activate page 1 again - note that this will reset all positions! + self.ui.stackedWidget.setCurrentIndex(0) + + # Flip arrow icon + self.ui.details_show.setVisible(True) + self.ui.details_hide.setVisible(False) + else: + # show the info panel: + # activate page 2 - note that this will reset all positions! + self.ui.stackedWidget.setCurrentIndex(1) + + # Flip arrow icon + self.ui.details_show.setVisible(False) + self.ui.details_hide.setVisible(True) + + # this hides page page 1, so let's show it again + self.ui.page_1.show() + # make sure page1 stays on top + self.ui.page_1.raise_() + # and move the page 1 window to allow room for page 2, the info panel: + self.ui.page_1.move( + self.ui.page_1.x() + - (TankQDialog.GRADIENT_WIDTH + TankQDialog.INFO_WIDTH), + self.ui.page_1.y(), + ) + finally: + self.setUpdatesEnabled(True) + + self._info_mode = not (self._info_mode) + else: + # lets animate the transition: + self.__animate_toggle_info_panel() + + def __animate_toggle_info_panel(self): + """ + Toggle the visibility of the info panel, animating the transition. + """ + if self._info_mode: + # Flip arrow icon + self.ui.details_show.setVisible(True) + self.ui.details_hide.setVisible(False) + + self.setUpdatesEnabled(False) + try: + # activate page 1 again - note that this will reset all positions! + self.ui.stackedWidget.setCurrentIndex(0) + # this hides page page 2, but let's show it again + self.ui.page_2.show() + # put this window top most to avoid flickering + self.ui.page_2.raise_() + # and move the page 1 window back to its current position + self.ui.page_1.move( + self.ui.page_1.x() + - (TankQDialog.GRADIENT_WIDTH + TankQDialog.INFO_WIDTH), + self.ui.page_1.y(), + ) + # now that the first window is positioned correctly, make it top most again. + self.ui.page_1.raise_() + finally: + self.setUpdatesEnabled(True) + + self.anim = QtCore.QPropertyAnimation(self.ui.page_1, b"pos") + self.anim.setDuration(600) + self.anim.setStartValue( + QtCore.QPoint(self.ui.page_1.x(), self.ui.page_1.y()) + ) + self.anim.setEndValue( + QtCore.QPoint( + self.ui.page_1.x() + + (TankQDialog.GRADIENT_WIDTH + TankQDialog.INFO_WIDTH), + self.ui.page_1.y(), + ) + ) + self.anim.setEasingCurve(QtCore.QEasingCurve.OutCubic) + self.anim.finished.connect(self._finished_show_anim) + + self.anim2 = QtCore.QPropertyAnimation(self.ui.page_2, b"pos") + self.anim2.setDuration(600) + self.anim2.setStartValue( + QtCore.QPoint(self.ui.page_2.x(), self.ui.page_2.y()) + ) + self.anim2.setEndValue( + QtCore.QPoint( + self.ui.page_2.x() + + TankQDialog.GRADIENT_WIDTH + + TankQDialog.INFO_WIDTH, + self.ui.page_2.y(), + ) + ) + self.anim2.setEasingCurve(QtCore.QEasingCurve.OutCubic) + + self.grp = QtCore.QParallelAnimationGroup() + self.grp.addAnimation(self.anim) + self.grp.addAnimation(self.anim2) + self.grp.start() + + else: + # Flip arrow icon + self.ui.details_show.setVisible(False) + self.ui.details_hide.setVisible(True) + + # activate page 2 - note that this will reset all positions! + self.ui.stackedWidget.setCurrentIndex(1) + # this hides page page 1, but let's show it again + self.ui.page_1.show() + # but make sure page1 stays on top + self.ui.page_1.raise_() + + self.anim = QtCore.QPropertyAnimation(self.ui.page_2, b"pos") + self.anim.setDuration(600) + self.anim.setStartValue( + QtCore.QPoint( + self.ui.page_2.x() + + (TankQDialog.GRADIENT_WIDTH + TankQDialog.INFO_WIDTH), + self.ui.page_2.y(), + ) + ) + self.anim.setEndValue(QtCore.QPoint(self.ui.page_2.x(), self.ui.page_2.y())) + self.anim.setEasingCurve(QtCore.QEasingCurve.OutCubic) + + self.anim2 = QtCore.QPropertyAnimation(self.ui.page_1, b"pos") + self.anim2.setDuration(600) + self.anim2.setStartValue( + QtCore.QPoint(self.ui.page_1.x(), self.ui.page_1.y()) + ) + self.anim2.setEndValue( + QtCore.QPoint( + self.ui.page_1.x() + - (TankQDialog.GRADIENT_WIDTH + TankQDialog.INFO_WIDTH), + self.ui.page_1.y(), + ) + ) + self.anim2.setEasingCurve(QtCore.QEasingCurve.OutCubic) + self.anim2.finished.connect(self._finished_show_anim) + + self.grp = QtCore.QParallelAnimationGroup() + self.grp.addAnimation(self.anim) + self.grp.addAnimation(self.anim2) + self.grp.start() + + def _finished_show_anim(self): + """ + Callback called when the animation is complete + """ + # now set the new info mode representing + # the state we have just arrived at + self._info_mode = not (self._info_mode) + + if not self._info_mode: + # no longer want to display the side bar + self.ui.page_2.hide() + + def _on_doc(self): + """ + Launch doc url + """ + QtGui.QDesktopServices.openUrl(QtCore.QUrl(self._bundle.documentation_url)) + + def _on_support(self): + """ + Launch support url + """ + QtGui.QDesktopServices.openUrl(QtCore.QUrl(self._bundle.support_url)) + + def _on_filesystem(self): + """ + Show the context in the file system + """ + # launch one window for each location on disk + paths = self._bundle.context.filesystem_locations + for disk_location in paths: + + url = QtCore.QUrl.fromLocalFile(disk_location) + status = QtGui.QDesktopServices.openUrl(url) + + if not status: + self._engine.log_error("Failed to open '%s'!" % disk_location) + + def _on_shotgun(self): + """ + Show the context in shotgun + """ + url = self._bundle.context.shotgun_url + QtGui.QDesktopServices.openUrl(QtCore.QUrl(url)) + + def _on_reload(self): + """ + Reloads the engine and apps + """ + try: + # first, reload the template defs + self._bundle.tank.reload_templates() + except TankError as e: + self._bundle.log_error(e) + + try: + + # now restart the engine + current_context = self._bundle.context + current_engine_name = self._bundle.engine.name + if engine.current_engine(): + engine.current_engine().destroy() + engine.start_engine( + current_engine_name, current_context.tank, current_context + ) + except TankError as e: + self._bundle.log_error("Could not restart the engine: %s" % e) + except Exception: + self._bundle.log_exception("Could not restart the engine!") + + def _on_edit_config(self): + """ + Future use + """ + pass + + def _on_add_param(self): + """ + Future use + """ + pass + + def _add_settings_item(self, setting, params, value): + """ + Adds a settings item to the list of settings. + """ + widget = ConfigItem(setting, params, value, self._bundle, self) + self.ui.config_layout.addWidget(widget) + self._config_items.append(widget) diff --git a/python/tank/platform/qt6/toolkit_std_dark.css b/python/tank/platform/qt6/toolkit_std_dark.css new file mode 100644 index 0000000000..5652b38743 --- /dev/null +++ b/python/tank/platform/qt6/toolkit_std_dark.css @@ -0,0 +1,298 @@ +/* +Copyright (c) 2013 Shotgun Software Inc. + +CONFIDENTIAL AND PROPRIETARY + +This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit +Source Code License included in this distribution package. See LICENSE. +By accessing, using, copying or modifying this work you indicate your +agreement to the Shotgun Pipeline Toolkit Source Code License. All rights +not expressly granted therein are reserved by Shotgun Software Inc. + +*/ + +QWidget +{ + background-color: rgb(52, 52, 52); + color: rgb(185, 185, 185); + border-radius: 2px; + selection-background-color: rgb(167, 167, 167); + selection-color: rgb(26, 26, 26); + font-size: 11px; +} + +QSplashScreen +{ + background-color: none; + color: none; +} + +QFrame, QLineEdit, QComboBox, QSpinBox +{ + background-color: rgb(52, 52, 52); +} + +QLabel +{ + background-color: none; + border:none; +} + +QComboBox:on +{ + padding-top: 3px; + padding-left: 4px; +} + +QAbstractScrollArea +{ + border: 1px solid rgb(20, 20, 20); +} + +QScrollArea > QWidget +{ + background-color: rgb(52, 52, 52); +} + + +QPlainTextEdit:Focus, QComboBox:Focus, QLineEdit:Focus, QSpinBox:Focus +{ + background-color: rgb(70, 70, 70); +} + +QPlainTextEdit:disabled, QComboBox:disabled QLineEdit:disabled, QSpinBox:disabled, QPushButton:disabled +{ + background-color: rgb(60, 60, 60); + color:rgb(100, 100, 100); +} + + +/*listviews+treeview+tableview*/ +QListView, QTreeView, QTableView +{ + alternate-background-color: rgb(60, 60, 60); +} + +QListView::item:selected, QTreeView::item:selected, QTableView::item:selected +{ + border: 1px solid rgb(160, 160, 160); + background-color: rgb(160, 160, 160); +} + +QListView::item:selected:hover, QTreeView::item:selected:hover +{ + background: rgb(180, 180, 180); +} +QListView::item:hover, QTreeView::item:hover +{ + background: rgb(100, 100, 100); +} + +QTreeView QWidget, QTableView .QWidget +{ + background-color: rgb(52, 52, 52); + border: none +} + +QHeaderView +{ + background: rgb(20, 20, 20); +} + +QHeaderView::section +{ + background-color: qlineargradient(spread:pad, x1:0, y1:1, x2:0, y2:0, stop:0 rgba(55, 55, 55, 255), + stop:0.130682 rgba(86, 86, 86, 255), stop:0.886364 rgba(86, 86, 86, 255), + stop:1 rgba(66, 66, 66, 255)); + color: rgb(180 ,180,180); + padding-left: 4px; + border: 1px solid rgba(50, 50, 50); +} +QHeaderView::section:checked +{ + background-color: rgb(120, 120, 120); +} + +QTableView QTableCornerButton::section +{ + border-top-left-radius: 7px; + background-color: qlineargradient(spread:pad, x1:0, y1:1, x2:0, y2:0, stop:0 rgba(55, 55, 55, 255), + stop:0.130682 rgba(86, 86, 86, 255), stop:0.886364 rgba(86, 86, 86, 255), + stop:1 rgba(66, 66, 66, 255)); + margin: 1px 0 0 1px; + border: 1px solid rgba(55, 55, 55); +} + + +/*tabwidget*/ +QTabWidget::pane +{ + border-radius: 2px; + border: 1px solid rgb(20, 20, 20); +} + +QTabBar::tab +{ + border-radius: 1px; + padding: 3px 3px 3px 3px; +} + +QTabBar::tab:selected, QTabBar::tab:hover +{ + background-color: rgb(90, 90, 90); +} + +QTabBar::tab:!selected +{ + background-color: rgb(60, 60, 60); +} + +/*radiobuttons+checkboxes*/ +QRadioButton, QCheckBox +{ + background:transparent; + border:none +} + +QRadioButton:disabled, QCheckBox:disabled +{ + background:transparent; + color:rgb(120, 120, 120) +} + + +QAbstractItemView +{ + background-color: QLinearGradient( x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #4A4A4A, stop: 1 #454545); +} + + +/*Push Button*/ + +QPushButton +{ + background-color: QLinearGradient( x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #565656, stop: 0.1 #525252, stop: 0.5 #4e4e4e, stop: 0.9 #4a4a4a, stop: 1 #464646); + border-width: 1px; + border-color: rgb(20, 20, 20); + border-style: solid; + border-radius: 1; + padding: 3px; + padding-left: 5px; + padding-right: 5px; +} + +QToolButton +{ + border-color: rgb(20, 20, 20); + border-style: solid; + border-radius: 1; + border-width: 1px; + padding: 3px; + padding-left: 5px; + padding-right: 5px; +} + +QPushButton:pressed, QToolButton:pressed +{ + background-color: QLinearGradient( x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #2d2d2d, stop: 0.1 #2b2b2b, stop: 0.5 #292929, stop: 0.9 #282828, stop: 1 #252525); +} + +QComboBox +{ + selection-background-color: #ffaa00; + background-color: QLinearGradient( x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #565656, stop: 0.1 #525252, stop: 0.5 #4e4e4e, stop: 0.9 #4a4a4a, stop: 1 #464646); + border-style: solid; + border: 1px solid #1e1e1e; + border-radius: 5; +} + +QComboBox:hover, QPushButton:hover, QLineEdit:focus, QToolButton:hover +{ + border: 1px solid QLinearGradient( x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #ffa02f, stop: 1 #d7801a); +} + + +/*ScrollBar*/ +QScrollBar +{ + background: rgb(50, 50, 50); + border-radius: 6px; +} +QScrollBar::add-page, QScrollBar::sub-page +{ + background: rgb(70, 70, 70); +} + +QScrollBar::add-page:hover, QScrollBar::sub-page:hover +{ + background: rgb(70, 70, 70); +} +QScrollBar:vertical { + margin: 15px 2px 15px 2px; + border: 2px solid rgb(60, 60, 60); +} +QScrollBar:horizontal { + margin: 2px 15px 2px 15px; + border: 2px solid rgb(60, 60, 60); +} +QScrollBar::handle{ + background: rgb(25, 25, 25); + border-radius: 3px; +} +QScrollBar::handle:horizontal { + margin: 0 -1px 0 -1px; +} +QScrollBar::handle:vertical { + margin: -1px 0 -1px 0; +} + +QScrollBar::sub-line,QScrollBar::add-line +{ + background-color: rgb(52, 52, 52); + height: 13px; + width: 13px; +} + + +QScrollBar::sub-line:vertical, QScrollBar::add-line:vertical +{ + subcontrol-position: top; + subcontrol-origin: margin; +} +QScrollBar::add-line:vertical +{ + subcontrol-position: bottom; +} + +QScrollBar::sub-line:horizontal, QScrollBar::add-line:horizontal +{ + subcontrol-position: left; + subcontrol-origin: margin; +} + +QScrollBar::add-line:horizontal +{ + subcontrol-position: right; +} + + +/*menu*/ + QMenuBar + { + background-color: qlineargradient(spread:pad, x1:0, y1:1, x2:0, y2:0, stop:0 rgba(55, 55, 55, 255), stop:1 rgba(97, 97, 97, 255)); + border-radius: 0; + } + + QMenuBar::item + { + spacing: 3px; + padding: 1px 4px; + background: transparent; + border-radius: 4px; + } + QMenuBar::item:selected { + background: rgb(100, 100, 100) + } + QMenuBar::item:pressed { + background: rgb(50, 50, 50) + } diff --git a/python/tank/platform/qt6/ui_busy_dialog.py b/python/tank/platform/qt6/ui_busy_dialog.py new file mode 100644 index 0000000000..cf21eb0352 --- /dev/null +++ b/python/tank/platform/qt6/ui_busy_dialog.py @@ -0,0 +1,112 @@ +# -*- coding: utf-8 -*- + +################################################################################ +## Form generated from reading UI file 'busy_dialog.ui' +## +## Created by: Qt User Interface Compiler version 5.15.2 +## +## WARNING! All changes made in this file will be lost when recompiling UI file! +################################################################################ + +from . import QtCore +for name, cls in QtCore.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import QtGui +for name, cls in QtGui.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import QtWidgets +for name, cls in QtWidgets.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import resources_rc + +class Ui_BusyDialog(object): + def setupUi(self, BusyDialog): + if not BusyDialog.objectName(): + BusyDialog.setObjectName(u"BusyDialog") + BusyDialog.resize(500, 110) + BusyDialog.setStyleSheet(u"/* Style for the window itself */\n" +"#frame {\n" +"border-color: #30A7E3;\n" +"border-style: solid;\n" +"border-width: 2px;\n" +"}\n" +"\n" +"/* Style for the header text */\n" +"#title {\n" +"color: #30A7E3;\n" +"margin-top: 15px;\n" +"margin-bottom: 0px;\n" +"margin-left: 1px;\n" +"font-size: 16px;\n" +"font-weight: bold;\n" +"}\n" +"\n" +"/* Style for the details text */\n" +"#details {\n" +"margin-top: 1px;\n" +"margin-left: 3px;\n" +"margin-bottom: 0px;\n" +"font-size: 11px;\n" +"}\n" +"") + self.horizontalLayout_2 = QHBoxLayout(BusyDialog) + self.horizontalLayout_2.setSpacing(2) + self.horizontalLayout_2.setContentsMargins(2, 2, 2, 2) + self.horizontalLayout_2.setObjectName(u"horizontalLayout_2") + self.frame = QFrame(BusyDialog) + self.frame.setObjectName(u"frame") + self.frame.setFrameShape(QFrame.StyledPanel) + self.frame.setFrameShadow(QFrame.Raised) + self.horizontalLayout = QHBoxLayout(self.frame) + self.horizontalLayout.setSpacing(5) + self.horizontalLayout.setContentsMargins(5, 5, 5, 5) + self.horizontalLayout.setObjectName(u"horizontalLayout") + self.label = QLabel(self.frame) + self.label.setObjectName(u"label") + self.label.setPixmap(QPixmap(u":/Tank.Platform.Qt6/sg_logo_80px.png")) + + self.horizontalLayout.addWidget(self.label) + + self.verticalLayout = QVBoxLayout() + self.verticalLayout.setSpacing(0) + self.verticalLayout.setObjectName(u"verticalLayout") + self.title = QLabel(self.frame) + self.title.setObjectName(u"title") + sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.title.sizePolicy().hasHeightForWidth()) + self.title.setSizePolicy(sizePolicy) + + self.verticalLayout.addWidget(self.title) + + self.details = QLabel(self.frame) + self.details.setObjectName(u"details") + sizePolicy1 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding) + sizePolicy1.setHorizontalStretch(0) + sizePolicy1.setVerticalStretch(0) + sizePolicy1.setHeightForWidth(self.details.sizePolicy().hasHeightForWidth()) + self.details.setSizePolicy(sizePolicy1) + self.details.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignTop) + self.details.setWordWrap(True) + + self.verticalLayout.addWidget(self.details) + + self.horizontalLayout.addLayout(self.verticalLayout) + + self.horizontalLayout_2.addWidget(self.frame) + + self.retranslateUi(BusyDialog) + + QMetaObject.connectSlotsByName(BusyDialog) + # setupUi + + def retranslateUi(self, BusyDialog): + BusyDialog.setWindowTitle(QCoreApplication.translate("BusyDialog", u"Dialog", None)) + self.label.setText("") + self.title.setText(QCoreApplication.translate("BusyDialog", u"Doing something, hang on!", None)) + self.details.setText(QCoreApplication.translate("BusyDialog", u"Lots of interesting details about what is going on", None)) + # retranslateUi diff --git a/python/tank/platform/qt6/ui_item.py b/python/tank/platform/qt6/ui_item.py new file mode 100644 index 0000000000..58e661d6e8 --- /dev/null +++ b/python/tank/platform/qt6/ui_item.py @@ -0,0 +1,123 @@ +# -*- coding: utf-8 -*- + +################################################################################ +## Form generated from reading UI file 'item.ui' +## +## Created by: Qt User Interface Compiler version 5.15.2 +## +## WARNING! All changes made in this file will be lost when recompiling UI file! +################################################################################ + +from . import QtCore +for name, cls in QtCore.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import QtGui +for name, cls in QtGui.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import QtWidgets +for name, cls in QtWidgets.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import resources_rc + +class Ui_Item(object): + def setupUi(self, Item): + if not Item.objectName(): + Item.setObjectName(u"Item") + Item.resize(335, 110) + sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Minimum) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(Item.sizePolicy().hasHeightForWidth()) + Item.setSizePolicy(sizePolicy) + Item.setStyleSheet(u"QLabel{\n" +" font-size: 11px;\n" +" margin-bottom: 3px\n" +"}\n" +"") + self.verticalLayout = QVBoxLayout(Item) + self.verticalLayout.setContentsMargins(0, 0, 0, 0) + self.verticalLayout.setObjectName(u"verticalLayout") + self.verticalLayout_2 = QVBoxLayout() + self.verticalLayout_2.setSpacing(0) + self.verticalLayout_2.setObjectName(u"verticalLayout_2") + self.name = QLabel(Item) + self.name.setObjectName(u"name") + sizePolicy1 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Maximum) + sizePolicy1.setHorizontalStretch(0) + sizePolicy1.setVerticalStretch(0) + sizePolicy1.setHeightForWidth(self.name.sizePolicy().hasHeightForWidth()) + self.name.setSizePolicy(sizePolicy1) + self.name.setStyleSheet(u"font-size: 13px;") + self.name.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + self.name.setWordWrap(True) + + self.verticalLayout_2.addWidget(self.name) + + self.line = QFrame(Item) + self.line.setObjectName(u"line") + self.line.setStyleSheet(u"border: none;\n" +"border-bottom-color: rgba(150,150,150,100);\n" +"border-bottom-width: 1px;\n" +"border-bottom-style: solid;") + self.line.setFrameShape(QFrame.HLine) + self.line.setFrameShadow(QFrame.Sunken) + + self.verticalLayout_2.addWidget(self.line) + + self.verticalLayout.addLayout(self.verticalLayout_2) + + self.value = QLabel(Item) + self.value.setObjectName(u"value") + sizePolicy1.setHeightForWidth(self.value.sizePolicy().hasHeightForWidth()) + self.value.setSizePolicy(sizePolicy1) + self.value.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + self.value.setWordWrap(True) + self.value.setTextInteractionFlags(Qt.LinksAccessibleByMouse|Qt.TextSelectableByMouse) + + self.verticalLayout.addWidget(self.value) + + self.type = QLabel(Item) + self.type.setObjectName(u"type") + sizePolicy1.setHeightForWidth(self.type.sizePolicy().hasHeightForWidth()) + self.type.setSizePolicy(sizePolicy1) + self.type.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + self.type.setWordWrap(True) + self.type.setTextInteractionFlags(Qt.LinksAccessibleByMouse|Qt.TextSelectableByMouse) + + self.verticalLayout.addWidget(self.type) + + self.description = QLabel(Item) + self.description.setObjectName(u"description") + self.description.setMaximumSize(QSize(350, 16777215)) + self.description.setTextFormat(Qt.RichText) + self.description.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + self.description.setWordWrap(True) + self.description.setTextInteractionFlags(Qt.LinksAccessibleByMouse|Qt.TextSelectableByMouse) + + self.verticalLayout.addWidget(self.description) + + self.verticalSpacer = QSpacerItem(20, 0, QSizePolicy.Minimum, QSizePolicy.Expanding) + + self.verticalLayout.addItem(self.verticalSpacer) + + self.verticalLayout.setStretch(4, 1) + + self.retranslateUi(Item) + + QMetaObject.connectSlotsByName(Item) + # setupUi + + def retranslateUi(self, Item): + Item.setWindowTitle(QCoreApplication.translate("Item", u"Form", None)) + self.name.setText(QCoreApplication.translate("Item", u"Settings Name", None)) + self.value.setText(QCoreApplication.translate("Item", u"Value: foo bar", None)) + self.type.setText(QCoreApplication.translate("Item", u"Type: bool", None)) + self.description.setText(QCoreApplication.translate("Item", u"\n" +"\n" +"

    description

    ", None)) + # retranslateUi diff --git a/python/tank/platform/qt6/ui_tank_dialog.py b/python/tank/platform/qt6/ui_tank_dialog.py new file mode 100644 index 0000000000..531c02a06a --- /dev/null +++ b/python/tank/platform/qt6/ui_tank_dialog.py @@ -0,0 +1,423 @@ +# -*- coding: utf-8 -*- + +################################################################################ +## Form generated from reading UI file 'tank_dialog.ui' +## +## Created by: Qt User Interface Compiler version 5.15.2 +## +## WARNING! All changes made in this file will be lost when recompiling UI file! +################################################################################ + +from . import QtCore +for name, cls in QtCore.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import QtGui +for name, cls in QtGui.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import QtWidgets +for name, cls in QtWidgets.__dict__.items(): + if isinstance(cls, type): globals()[name] = cls + +from . import resources_rc + +class Ui_TankDialog(object): + def setupUi(self, TankDialog): + if not TankDialog.objectName(): + TankDialog.setObjectName(u"TankDialog") + TankDialog.resize(879, 551) + TankDialog.setStyleSheet(u"") + self.verticalLayout_3 = QVBoxLayout(TankDialog) + self.verticalLayout_3.setSpacing(0) + self.verticalLayout_3.setObjectName(u"verticalLayout_3") + self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) + self.stackedWidget = QStackedWidget(TankDialog) + self.stackedWidget.setObjectName(u"stackedWidget") + self.page_1 = QWidget() + self.page_1.setObjectName(u"page_1") + self.page_1.setStyleSheet(u"QWidget#page_1 {\n" +"margin: 0px;\n" +"}") + self.verticalLayout = QVBoxLayout(self.page_1) + self.verticalLayout.setSpacing(0) + self.verticalLayout.setObjectName(u"verticalLayout") + self.verticalLayout.setContentsMargins(0, 0, 0, 0) + self.top_group = QGroupBox(self.page_1) + self.top_group.setObjectName(u"top_group") + self.top_group.setMinimumSize(QSize(0, 45)) + self.top_group.setMaximumSize(QSize(16777215, 45)) + self.top_group.setStyleSheet(u"#top_group {\n" +"background-color: #2D2D2D;\n" +"border: none;\n" +"border-bottom:1px solid #202020;\n" +"}\n" +"") + self.top_group.setFlat(False) + self.horizontalLayout = QHBoxLayout(self.top_group) + self.horizontalLayout.setSpacing(0) + self.horizontalLayout.setObjectName(u"horizontalLayout") + self.horizontalLayout.setContentsMargins(4, 0, 1, 1) + self.tank_logo = QLabel(self.top_group) + self.tank_logo.setObjectName(u"tank_logo") + sizePolicy = QSizePolicy(QSizePolicy.Maximum, QSizePolicy.Preferred) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.tank_logo.sizePolicy().hasHeightForWidth()) + self.tank_logo.setSizePolicy(sizePolicy) + self.tank_logo.setPixmap(QPixmap(u":/Tank.Platform.Qt6/tank_logo.png")) + + self.horizontalLayout.addWidget(self.tank_logo) + + self.label = QLabel(self.top_group) + self.label.setObjectName(u"label") + self.label.setStyleSheet(u"/* want this stylesheet to apply to the label but not the tooltip */\n" +"QLabel{\n" +" color: white;\n" +" font-size: 20px;\n" +" margin-left: 5px;\n" +" font-family: \"Open Sans\";\n" +" font-style: \"Regular\";\n" +"}") + + self.horizontalLayout.addWidget(self.label) + + self.lbl_context = QLabel(self.top_group) + self.lbl_context.setObjectName(u"lbl_context") + self.lbl_context.setStyleSheet(u"/* want this stylesheet to apply to the label but not the tooltip */\n" +"QLabel {\n" +" color: rgba(250,250,250,180);\n" +" font-size: 11px;\n" +" margin-right: 8px;\n" +" font-family: \"Open Sans\";\n" +" font-style: \"Regular\";\n" +"}\n" +"\n" +"\n" +"") + self.lbl_context.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter) + + self.horizontalLayout.addWidget(self.lbl_context) + + self.details_show = QToolButton(self.top_group) + self.details_show.setObjectName(u"details_show") + self.details_show.setMinimumSize(QSize(34, 34)) + self.details_show.setFocusPolicy(Qt.ClickFocus) + self.details_show.setStyleSheet(u"QToolButton{\n" +"width: 12px;\n" +"height: 20px;\n" +"background-image: url(:/Tank.Platform.Qt6/arrow.png);\n" +"border: none;\n" +"background-color: none;\n" +"}\n" +"\n" +"QToolButton:hover{\n" +"background-image: url(:/Tank.Platform.Qt6/arrow_hover.png);\n" +"}\n" +"\n" +"QToolButton:pressed{\n" +"background-image: url(:/Tank.Platform.Qt6/arrow_pressed.png);\n" +"}\n" +"") + self.details_show.setAutoRaise(True) + + self.horizontalLayout.addWidget(self.details_show) + + self.details_hide = QToolButton(self.top_group) + self.details_hide.setObjectName(u"details_hide") + self.details_hide.setMinimumSize(QSize(34, 34)) + self.details_hide.setFocusPolicy(Qt.ClickFocus) + self.details_hide.setVisible(False) + self.details_hide.setStyleSheet(u"QToolButton{\n" +" width: 12px;\n" +" height: 20px;\n" +" background-image: url(:/Tank.Platform.Qt6/arrow_flipped.png);\n" +" border: none;\n" +" background-color: none;\n" +" }\n" +"\n" +" QToolButton:hover{\n" +" background-image: url(:/Tank.Platform.Qt6/arrow_flipped_hover.png);\n" +" }\n" +"\n" +" QToolButton:pressed{\n" +" background-image: url(:/Tank.Platform.Qt6/arrow_flipped_pressed.png);\n" +" }\n" +" ") + self.details_hide.setAutoRaise(True) + + self.horizontalLayout.addWidget(self.details_hide) + + self.verticalLayout.addWidget(self.top_group) + + self.target = QVBoxLayout() + self.target.setSpacing(4) + self.target.setObjectName(u"target") + + self.verticalLayout.addLayout(self.target) + + self.stackedWidget.addWidget(self.page_1) + self.page_2 = QWidget() + self.page_2.setObjectName(u"page_2") + self.page_2.setStyleSheet(u"QWidget {\n" +" font-family: \"Open Sans\";\n" +" font-style: \"Regular\";\n" +"}") + self.verticalLayout_2 = QVBoxLayout(self.page_2) + self.verticalLayout_2.setObjectName(u"verticalLayout_2") + self.verticalLayout_2.setContentsMargins(1, 1, 1, 1) + self.page_2_group = QGroupBox(self.page_2) + self.page_2_group.setObjectName(u"page_2_group") + self.page_2_group.setMinimumSize(QSize(0, 100)) + self.page_2_group.setStyleSheet(u"QGroupBox {\n" +"margin: 0px;\n" +"}") + self.horizontalLayout_2 = QHBoxLayout(self.page_2_group) + self.horizontalLayout_2.setSpacing(0) + self.horizontalLayout_2.setObjectName(u"horizontalLayout_2") + self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) + self.horizontalSpacer = QSpacerItem(145, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) + + self.horizontalLayout_2.addItem(self.horizontalSpacer) + + self.label_3 = QLabel(self.page_2_group) + self.label_3.setObjectName(u"label_3") + self.label_3.setMinimumSize(QSize(40, 0)) + self.label_3.setMaximumSize(QSize(40, 16777215)) + + self.horizontalLayout_2.addWidget(self.label_3) + + self.gradient = QGroupBox(self.page_2_group) + self.gradient.setObjectName(u"gradient") + self.gradient.setMinimumSize(QSize(11, 0)) + self.gradient.setMaximumSize(QSize(11, 16777215)) + self.gradient.setStyleSheet(u"#gradient {\n" +"background-image: url(:/Tank.Platform.Qt6/gradient.png);\n" +"border: none;\n" +"}") + + self.horizontalLayout_2.addWidget(self.gradient) + + self.scrollArea = QScrollArea(self.page_2_group) + self.scrollArea.setObjectName(u"scrollArea") + self.scrollArea.setMinimumSize(QSize(400, 0)) + self.scrollArea.setMaximumSize(QSize(400, 16777215)) + self.scrollArea.setStyleSheet(u"/*\n" +"All labels inside this scroll area should be 12px font.\n" +"This is to avoid the UI looking different in different app like\n" +"maya and nuke which all use slightly different style sheets.\n" +" */\n" +"QLabel{\n" +" font-size: 11px;\n" +" margin-bottom: 8px\n" +"}\n" +"") + self.scrollArea.setWidgetResizable(True) + self.scrollAreaWidgetContents = QWidget() + self.scrollAreaWidgetContents.setObjectName(u"scrollAreaWidgetContents") + self.scrollAreaWidgetContents.setGeometry(QRect(0, 0, 398, 550)) + self.verticalLayout_4 = QVBoxLayout(self.scrollAreaWidgetContents) + self.verticalLayout_4.setObjectName(u"verticalLayout_4") + self.horizontalLayout_4 = QHBoxLayout() + self.horizontalLayout_4.setObjectName(u"horizontalLayout_4") + self.app_icon = QLabel(self.scrollAreaWidgetContents) + self.app_icon.setObjectName(u"app_icon") + self.app_icon.setMinimumSize(QSize(64, 64)) + self.app_icon.setMaximumSize(QSize(64, 64)) + self.app_icon.setPixmap(QPixmap(u":/Tank.Platform.Qt6/default_app_icon_256.png")) + self.app_icon.setScaledContents(True) + self.app_icon.setAlignment(Qt.AlignCenter) + + self.horizontalLayout_4.addWidget(self.app_icon) + + self.verticalLayout_8 = QVBoxLayout() + self.verticalLayout_8.setSpacing(1) + self.verticalLayout_8.setObjectName(u"verticalLayout_8") + self.app_name = QLabel(self.scrollAreaWidgetContents) + self.app_name.setObjectName(u"app_name") + self.app_name.setStyleSheet(u"font-size: 16px;\n" +"") + self.app_name.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + + self.verticalLayout_8.addWidget(self.app_name) + + self.horizontalLayout_4.addLayout(self.verticalLayout_8) + + self.verticalLayout_4.addLayout(self.horizontalLayout_4) + + self.app_description = QLabel(self.scrollAreaWidgetContents) + self.app_description.setObjectName(u"app_description") + self.app_description.setMaximumSize(QSize(350, 16777215)) + self.app_description.setWordWrap(True) + + self.verticalLayout_4.addWidget(self.app_description) + + self.app_tech_details = QLabel(self.scrollAreaWidgetContents) + self.app_tech_details.setObjectName(u"app_tech_details") + sizePolicy1 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) + sizePolicy1.setHorizontalStretch(0) + sizePolicy1.setVerticalStretch(0) + sizePolicy1.setHeightForWidth(self.app_tech_details.sizePolicy().hasHeightForWidth()) + self.app_tech_details.setSizePolicy(sizePolicy1) + self.app_tech_details.setMinimumSize(QSize(0, 22)) + self.app_tech_details.setMaximumSize(QSize(16777215, 22)) + self.app_tech_details.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + self.app_tech_details.setWordWrap(True) + + self.verticalLayout_4.addWidget(self.app_tech_details) + + self.horizontalLayout_9 = QHBoxLayout() + self.horizontalLayout_9.setSpacing(2) + self.horizontalLayout_9.setObjectName(u"horizontalLayout_9") + self.btn_documentation = QToolButton(self.scrollAreaWidgetContents) + self.btn_documentation.setObjectName(u"btn_documentation") + + self.horizontalLayout_9.addWidget(self.btn_documentation) + + self.btn_support = QToolButton(self.scrollAreaWidgetContents) + self.btn_support.setObjectName(u"btn_support") + + self.horizontalLayout_9.addWidget(self.btn_support) + + self.horizontalSpacer_5 = QSpacerItem(0, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) + + self.horizontalLayout_9.addItem(self.horizontalSpacer_5) + + self.verticalLayout_4.addLayout(self.horizontalLayout_9) + + self.label_5 = QLabel(self.scrollAreaWidgetContents) + self.label_5.setObjectName(u"label_5") + self.label_5.setStyleSheet(u"font-size: 16px;\n" +"margin-top: 30px;") + + self.verticalLayout_4.addWidget(self.label_5) + + self.line = QFrame(self.scrollAreaWidgetContents) + self.line.setObjectName(u"line") + self.line.setFrameShape(QFrame.HLine) + self.line.setFrameShadow(QFrame.Sunken) + + self.verticalLayout_4.addWidget(self.line) + + self.app_work_area_info = QLabel(self.scrollAreaWidgetContents) + self.app_work_area_info.setObjectName(u"app_work_area_info") + self.app_work_area_info.setMaximumSize(QSize(350, 16777215)) + self.app_work_area_info.setWordWrap(True) + + self.verticalLayout_4.addWidget(self.app_work_area_info) + + self.horizontalLayout_10 = QHBoxLayout() + self.horizontalLayout_10.setSpacing(2) + self.horizontalLayout_10.setObjectName(u"horizontalLayout_10") + self.btn_file_system = QToolButton(self.scrollAreaWidgetContents) + self.btn_file_system.setObjectName(u"btn_file_system") + + self.horizontalLayout_10.addWidget(self.btn_file_system) + + self.btn_shotgun = QToolButton(self.scrollAreaWidgetContents) + self.btn_shotgun.setObjectName(u"btn_shotgun") + + self.horizontalLayout_10.addWidget(self.btn_shotgun) + + self.horizontalSpacer_6 = QSpacerItem(0, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) + + self.horizontalLayout_10.addItem(self.horizontalSpacer_6) + + self.verticalLayout_4.addLayout(self.horizontalLayout_10) + + self.app_work_area_info_2 = QLabel(self.scrollAreaWidgetContents) + self.app_work_area_info_2.setObjectName(u"app_work_area_info_2") + self.app_work_area_info_2.setMaximumSize(QSize(350, 16777215)) + self.app_work_area_info_2.setWordWrap(True) + + self.verticalLayout_4.addWidget(self.app_work_area_info_2) + + self.btn_reload = QToolButton(self.scrollAreaWidgetContents) + self.btn_reload.setObjectName(u"btn_reload") + + self.verticalLayout_4.addWidget(self.btn_reload) + + self.config_header = QLabel(self.scrollAreaWidgetContents) + self.config_header.setObjectName(u"config_header") + self.config_header.setStyleSheet(u"font-size: 16px;\n" +"margin-top: 30px;") + + self.verticalLayout_4.addWidget(self.config_header) + + self.config_line = QFrame(self.scrollAreaWidgetContents) + self.config_line.setObjectName(u"config_line") + self.config_line.setFrameShape(QFrame.HLine) + self.config_line.setFrameShadow(QFrame.Sunken) + + self.verticalLayout_4.addWidget(self.config_line) + + self.config_label = QLabel(self.scrollAreaWidgetContents) + self.config_label.setObjectName(u"config_label") + self.config_label.setMaximumSize(QSize(350, 16777215)) + self.config_label.setWordWrap(True) + + self.verticalLayout_4.addWidget(self.config_label) + + self.config_layout = QVBoxLayout() + self.config_layout.setSpacing(20) + self.config_layout.setObjectName(u"config_layout") + + self.verticalLayout_4.addLayout(self.config_layout) + + self.verticalSpacer_2 = QSpacerItem(328, 0, QSizePolicy.Minimum, QSizePolicy.Expanding) + + self.verticalLayout_4.addItem(self.verticalSpacer_2) + + self.scrollArea.setWidget(self.scrollAreaWidgetContents) + + self.horizontalLayout_2.addWidget(self.scrollArea) + + self.verticalLayout_2.addWidget(self.page_2_group) + + self.stackedWidget.addWidget(self.page_2) + + self.verticalLayout_3.addWidget(self.stackedWidget) + + self.retranslateUi(TankDialog) + + self.stackedWidget.setCurrentIndex(0) + + QMetaObject.connectSlotsByName(TankDialog) + # setupUi + + def retranslateUi(self, TankDialog): + TankDialog.setWindowTitle(QCoreApplication.translate("TankDialog", u"Dialog", None)) + self.top_group.setTitle("") + self.tank_logo.setText("") + self.label.setText(QCoreApplication.translate("TankDialog", u"TextLabel", None)) +#if QT_CONFIG(tooltip) + self.lbl_context.setToolTip(QCoreApplication.translate("TankDialog", u"foo bar", None)) +#endif // QT_CONFIG(tooltip) + self.lbl_context.setText(QCoreApplication.translate("TankDialog", u"Current Work Area:\n" +"TextLabel", None)) +#if QT_CONFIG(tooltip) + self.details_show.setToolTip(QCoreApplication.translate("TankDialog", u"Click for App Details", None)) +#endif // QT_CONFIG(tooltip) + self.details_show.setText("") +#if QT_CONFIG(tooltip) + self.details_hide.setToolTip(QCoreApplication.translate("TankDialog", u"Hide App Details", None)) +#endif // QT_CONFIG(tooltip) + self.details_hide.setText("") + self.page_2_group.setTitle("") + self.label_3.setText("") + self.gradient.setTitle("") + self.app_icon.setText("") + self.app_name.setText(QCoreApplication.translate("TankDialog", u"Publish And Snapshot", None)) + self.app_description.setText(QCoreApplication.translate("TankDialog", u"Tools to see what is out of date in your scene etc etc.", None)) + self.app_tech_details.setText(QCoreApplication.translate("TankDialog", u"tk-multi-snapshot, v1.2.3", None)) + self.btn_documentation.setText(QCoreApplication.translate("TankDialog", u"Documentation", None)) + self.btn_support.setText(QCoreApplication.translate("TankDialog", u"Help && Support", None)) + self.label_5.setText(QCoreApplication.translate("TankDialog", u"Your Current Work Area", None)) + self.app_work_area_info.setText(QCoreApplication.translate("TankDialog", u"TextLabel", None)) + self.btn_file_system.setText(QCoreApplication.translate("TankDialog", u"Jump to File System", None)) + self.btn_shotgun.setText(QCoreApplication.translate("TankDialog", u"Jump to Flow Production Tracking", None)) + self.app_work_area_info_2.setText(QCoreApplication.translate("TankDialog", u"If you are making changes to configuration or code, use the reload button to quickly load your changes in without having to restart:", None)) + self.btn_reload.setText(QCoreApplication.translate("TankDialog", u"Reload Engine and Apps", None)) + self.config_header.setText(QCoreApplication.translate("TankDialog", u"Configuration", None)) + self.config_label.setText(QCoreApplication.translate("TankDialog", u"Below is a list of all the configuration settings for this app, as defined in your environment file:", None)) + # retranslateUi diff --git a/python/tank/util/pyside2_as_pyside6_patcher.py b/python/tank/util/pyside2_as_pyside6_patcher.py index 531116fdf6..6264c078ab 100644 --- a/python/tank/util/pyside2_as_pyside6_patcher.py +++ b/python/tank/util/pyside2_as_pyside6_patcher.py @@ -4,7 +4,7 @@ def _patch_QtWebEngineCore(qt_webengine_core, classes): for cls in classes: setattr(qt_webengine_core, cls.__name__, cls) return qt_webengine_core - + @staticmethod def _patch_QtGui(qt_gui, classes): for cls in classes: diff --git a/python/tank/util/qt_importer.py b/python/tank/util/qt_importer.py index 8d1e51bd72..c370930923 100644 --- a/python/tank/util/qt_importer.py +++ b/python/tank/util/qt_importer.py @@ -36,7 +36,7 @@ class QtImporter(object): QT4, QT5, QT6 = range(4, 7) - def __init__(self, interface_version_requested=QT6): + def __init__(self, interface_version_requested=QT4): """ Imports the Qt modules and sets the QtCore, QtGui and wrapper attributes on this object. @@ -84,7 +84,7 @@ def QtWidgets(self): """ :returns: QtWidgets module, if available. """ - return self._modules["QtWidgets"] if self._modules else None + return self._modules.get("QtWidgets") if self._modules else None @property def QtWebEngineCore(self): @@ -133,8 +133,8 @@ def base(self): qt_base = {} qt_base.update(self._modules) - qt_base["__name__"] = self._binding_name - qt_base["__version__"] = self._binding_version + # qt_base["__name__"] = self._binding_name + # qt_base["__version__"] = self._binding_version return qt_base From 9e9263448c9bdc0f4e4f1c3d36933fbd3267d804 Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Wed, 11 Jun 2025 20:50:32 -0500 Subject: [PATCH 6/9] comments and some test fixed --- docs/platform.rst | 4 ++-- python/tank/authentication/invoker.py | 2 +- python/tank/authentication/login_dialog.py | 2 +- python/tank/platform/engine.py | 4 ++-- python/tank/platform/qt/config_item.py | 4 ---- python/tank/util/pyside2_as_pyside6_patcher.py | 13 ++++++++++++- python/tank/util/qt_importer.py | 7 ++----- .../test_interactive_authentication.py | 2 +- tests/fixtures/config/bundles/test_app/app.py | 4 ++-- tests/util_tests/test_qt_importer.py | 6 ------ 10 files changed, 23 insertions(+), 25 deletions(-) diff --git a/docs/platform.rst b/docs/platform.rst index 810730d2f8..329cc3d50b 100644 --- a/docs/platform.rst +++ b/docs/platform.rst @@ -861,7 +861,7 @@ portable between the two systems and it should be no problem writing code that w In order to use QT, import it from Sgtk:: - from sgtk.platform.qt import QtCore, QtGui + from sgtk.platform.qt6 import QtCore, QtGui Toolkit will make sure Qt is sourced in the correct way. Keep in mind that many applications (for example Nuke) may not have a functional Qt that can be imported when they run in batch mode. @@ -892,7 +892,7 @@ you from managing this by yourself, but for maximum compatibility and portabilty et Toolkit handle it. When using Sgtk to set up your UI, just let your UI class derive from QtGui.QWidget and pass it to one of the UI factory methods that the engine has. For example:: - from sgtk.platform.qt import QtCore, QtWidgets + from sgtk.platform.qt6 import QtWidgets # derive from QtWidgets.QWidget for your UI components. diff --git a/python/tank/authentication/invoker.py b/python/tank/authentication/invoker.py index 96cd1a2e84..d2f21873fc 100644 --- a/python/tank/authentication/invoker.py +++ b/python/tank/authentication/invoker.py @@ -44,7 +44,7 @@ def create(): def show_ui(): # show QT dialog dlg = MyQtDialog() - result = dlg.exec_() + result = dlg.exec() return result # create invoker object diff --git a/python/tank/authentication/login_dialog.py b/python/tank/authentication/login_dialog.py index 620308a33c..daf68482b7 100644 --- a/python/tank/authentication/login_dialog.py +++ b/python/tank/authentication/login_dialog.py @@ -674,7 +674,7 @@ def exec_(self): # to freeze, so only set the WindowStaysOnTopHint flag as this appears to not disable the # other flags. self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) - return QtWidgets.QDialog.exec_(self) + return QtWidgets.QDialog.exec(self) def result(self): """ diff --git a/python/tank/platform/engine.py b/python/tank/platform/engine.py index f5c4123658..cb96e97a29 100644 --- a/python/tank/platform/engine.py +++ b/python/tank/platform/engine.py @@ -1722,9 +1722,9 @@ def __init__(self, msg, *args, **kwargs): "due to an exception that was raised:" ) self._label.setTextFormat(QtCore.Qt.RichText) - self._text = QtGui.QTextEdit() + self._text = QtWidgets.QTextEdit() self._text.setReadOnly(True) - self._text.setLineWrapMode(QtGui.QTextEdit.NoWrap) + self._text.setLineWrapMode(QtWidgets.QTextEdit.NoWrap) self._text.setText(msg) self._layout = QtWidgets.QVBoxLayout(self) diff --git a/python/tank/platform/qt/config_item.py b/python/tank/platform/qt/config_item.py index 688dea59f2..3eb9e1442b 100644 --- a/python/tank/platform/qt/config_item.py +++ b/python/tank/platform/qt/config_item.py @@ -8,10 +8,6 @@ # agreement to the Shotgun Pipeline Toolkit Source Code License. All rights # not expressly granted therein are reserved by Shotgun Software Inc. -import os -import shutil -import sys - from . import QtWidgets from .ui_item import Ui_Item from ..bundle import resolve_default_value diff --git a/python/tank/util/pyside2_as_pyside6_patcher.py b/python/tank/util/pyside2_as_pyside6_patcher.py index 6264c078ab..6be3d86773 100644 --- a/python/tank/util/pyside2_as_pyside6_patcher.py +++ b/python/tank/util/pyside2_as_pyside6_patcher.py @@ -1,10 +1,21 @@ +# Copyright (c) 2025 Shotgun Software Inc. +# +# CONFIDENTIAL AND PROPRIETARY +# +# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit +# Source Code License included in this distribution package. See LICENSE. +# By accessing, using, copying or modifying this work you indicate your +# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights +# not expressly granted therein are reserved by Shotgun Software Inc. + + class PySide2asPySide6Patcher: @staticmethod def _patch_QtWebEngineCore(qt_webengine_core, classes): for cls in classes: setattr(qt_webengine_core, cls.__name__, cls) return qt_webengine_core - + @staticmethod def _patch_QtGui(qt_gui, classes): for cls in classes: diff --git a/python/tank/util/qt_importer.py b/python/tank/util/qt_importer.py index c370930923..1ea3822bcf 100644 --- a/python/tank/util/qt_importer.py +++ b/python/tank/util/qt_importer.py @@ -91,7 +91,7 @@ def QtWebEngineCore(self): """ :returns: QtWebEngineCore module, if available. """ - return self._modules["QtWebEngineCore"] if self._modules else None + return self._modules.get("QtWebEngineCore") if self._modules else None @property def binding(self): @@ -131,10 +131,7 @@ def base(self): return {} qt_base = {} - qt_base.update(self._modules) - # qt_base["__name__"] = self._binding_name - # qt_base["__version__"] = self._binding_version return qt_base @@ -380,7 +377,7 @@ def _import_pyside2_as_pyside6(self): "QtWebEngineWidgets": QtWebEngineWidgets, "QtWidgets": QtWidgets, "QtWebEngineCore": QtWebEngineCore, - "shiboken": shiboken2, + "shiboken6": shiboken2, }, self._to_version_tuple(QtCore.qVersion()), ) diff --git a/tests/authentication_tests/test_interactive_authentication.py b/tests/authentication_tests/test_interactive_authentication.py index 9dcd1e669c..7c7bf6a83b 100644 --- a/tests/authentication_tests/test_interactive_authentication.py +++ b/tests/authentication_tests/test_interactive_authentication.py @@ -1047,7 +1047,7 @@ def test_login_dialog_method_selected_session_cache(self): return_value=["john", "bob"], ) def test_login_dialog_app_session_launcher(self, *unused_mocks): - from tank.authentication.ui.qt_abstraction import QtGui, QtWidgets + from tank.authentication.ui.qt_abstraction import QtWidgets # First basic and ASL methods with mock.patch( diff --git a/tests/fixtures/config/bundles/test_app/app.py b/tests/fixtures/config/bundles/test_app/app.py index 8cd905d18e..f91e44e5d3 100644 --- a/tests/fixtures/config/bundles/test_app/app.py +++ b/tests/fixtures/config/bundles/test_app/app.py @@ -35,13 +35,13 @@ def _show_app(self): """ Shows an app with a button in it. """ - from sgtk.platform.qt6 import QtGui, QtWidgets + from sgtk.platform.qt6 import QtWidgets class AppDialog(QtWidgets.QWidget): def __init__(self, parent=None): super(AppDialog, self).__init__(parent) self._layout = QtWidgets.QVBoxLayout(self) - self.button = QtGui.QPushButton("Close", parent=self) + self.button = QtWidgets.QPushButton("Close", parent=self) self.button.clicked.connect(self.close) self._layout.addWidget(self.button) diff --git a/tests/util_tests/test_qt_importer.py b/tests/util_tests/test_qt_importer.py index c53681028d..ce3021c839 100644 --- a/tests/util_tests/test_qt_importer.py +++ b/tests/util_tests/test_qt_importer.py @@ -72,8 +72,6 @@ def test_qt_importer_with_pyside2_interface_qt5(self): # Expect PySide2 as the binding assert qt.binding_name == "PySide2" assert qt.base - assert qt.base["__name__"] is qt.binding_name - assert qt.base["__version__"] is qt.binding_version @skip_if_pyside6(found=False) @skip_if_pyside2(found=True) @@ -97,8 +95,6 @@ def test_qt_importer_with_pyside6_interface_qt4(self): # Expect PySide2 as the binding assert qt.binding_name == "PySide6" assert qt.base - assert qt.base["__name__"] is qt.binding_name - assert qt.base["__version__"] is qt.binding_version @skip_if_pyside6(found=False) @skip_if_pyside2(found=True) @@ -122,8 +118,6 @@ def test_qt_importer_with_pyside6_interface_qt6(self): # Expect PySide2 as the binding assert qt.binding_name == "PySide6" assert qt.base - assert qt.base["__name__"] is qt.binding_name - assert qt.base["__version__"] is qt.binding_version @skip_if_pyside2(found=False) @skip_if_pyside6(found=True) From 8fa02af69614f82823ba07229a2da4b76b67b242 Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Thu, 12 Jun 2025 10:20:47 -0500 Subject: [PATCH 7/9] fixes for tests --- python/tank/authentication/login_dialog.py | 2 +- python/tank/platform/qt/tankqdialog.py | 2 -- python/tank/platform/qt6/config_item.py | 4 ---- python/tank/util/qt_importer.py | 2 +- tests/authentication_tests/test_interactive_authentication.py | 1 + tests/util_tests/test_qt_importer.py | 2 -- 6 files changed, 3 insertions(+), 10 deletions(-) diff --git a/python/tank/authentication/login_dialog.py b/python/tank/authentication/login_dialog.py index daf68482b7..620308a33c 100644 --- a/python/tank/authentication/login_dialog.py +++ b/python/tank/authentication/login_dialog.py @@ -674,7 +674,7 @@ def exec_(self): # to freeze, so only set the WindowStaysOnTopHint flag as this appears to not disable the # other flags. self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) - return QtWidgets.QDialog.exec(self) + return QtWidgets.QDialog.exec_(self) def result(self): """ diff --git a/python/tank/platform/qt/tankqdialog.py b/python/tank/platform/qt/tankqdialog.py index 2e6aa5ca10..3299024ff6 100644 --- a/python/tank/platform/qt/tankqdialog.py +++ b/python/tank/platform/qt/tankqdialog.py @@ -22,10 +22,8 @@ from .. import constants from ...errors import TankError -import sys import os import inspect -from tank_vendor import six class TankQDialog(TankDialogBase): diff --git a/python/tank/platform/qt6/config_item.py b/python/tank/platform/qt6/config_item.py index 688dea59f2..3eb9e1442b 100644 --- a/python/tank/platform/qt6/config_item.py +++ b/python/tank/platform/qt6/config_item.py @@ -8,10 +8,6 @@ # agreement to the Shotgun Pipeline Toolkit Source Code License. All rights # not expressly granted therein are reserved by Shotgun Software Inc. -import os -import shutil -import sys - from . import QtWidgets from .ui_item import Ui_Item from ..bundle import resolve_default_value diff --git a/python/tank/util/qt_importer.py b/python/tank/util/qt_importer.py index 1ea3822bcf..12a64b35ef 100644 --- a/python/tank/util/qt_importer.py +++ b/python/tank/util/qt_importer.py @@ -77,7 +77,7 @@ def QtWebEngineWidgets(self): """ :returns: QtWebEngineWidgets module, if available. """ - return self._modules["QtWebEngineWidgets"] if self._modules else None + return self._modules.get("QtWebEngineWidgets") if self._modules else None @property def QtWidgets(self): diff --git a/tests/authentication_tests/test_interactive_authentication.py b/tests/authentication_tests/test_interactive_authentication.py index 7c7bf6a83b..48f4e96538 100644 --- a/tests/authentication_tests/test_interactive_authentication.py +++ b/tests/authentication_tests/test_interactive_authentication.py @@ -1539,6 +1539,7 @@ def setUp(self, *args, **kwargs): "QtGui": mock.Mock(), "QtNetwork": mock.Mock(), "QtWebEngineWidgets": mock.Mock(), + "QtWebEngineCore": mock.Mock(), } self.sso_saml2 = SsoSaml2Core(qt_modules=qt_modules_mock) super(SsoSaml2CoreTests, self).setUp() diff --git a/tests/util_tests/test_qt_importer.py b/tests/util_tests/test_qt_importer.py index ce3021c839..9dd7316f53 100644 --- a/tests/util_tests/test_qt_importer.py +++ b/tests/util_tests/test_qt_importer.py @@ -48,8 +48,6 @@ def test_qt_importer_with_pyside2_interface_qt4(self): # Expect PySide2 as the binding assert qt.binding_name == "PySide2" assert qt.base - assert qt.base["__name__"] is qt.binding_name - assert qt.base["__version__"] is qt.binding_version @skip_if_pyside2(found=False) def test_qt_importer_with_pyside2_interface_qt5(self): From c54ad07f111de81be8e56d55015b139d283da9f3 Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Thu, 12 Jun 2025 11:13:49 -0500 Subject: [PATCH 8/9] hound comments fixed, test fixes done --- azure-pipelines.yml | 2 +- python/tank/platform/engine.py | 10 ++++------ .../test_interactive_authentication.py | 2 ++ 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 9fb3e0d6e3..50b59f1db9 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -14,7 +14,7 @@ resources: - repository: templates type: github name: shotgunsoftware/tk-ci-tools - ref: refs/heads/master + ref: refs/heads/ticket/SG-38898-python2-removal endpoint: shotgunsoftware # We want builds to trigger for 3 reasons: diff --git a/python/tank/platform/engine.py b/python/tank/platform/engine.py index cb96e97a29..a01e06a145 100644 --- a/python/tank/platform/engine.py +++ b/python/tank/platform/engine.py @@ -183,16 +183,14 @@ def __init__(self, tk, context, engine_instance_name, env): for name, value in qt5_base.items(): setattr(qt5, name, value) qt_widgets = qt5_base.get("QtWidgets") - if qt_widgets: - setattr(qt5, "TankDialogBase", qt_widgets.QDialog) + qt5.TankDialogBase = qt_widgets.QDialog if qt_widgets else None qt6_base = self.__define_qt6_base() self.__has_qt6 = len(qt6_base) > 0 for name, value in qt6_base.items(): setattr(qt6, name, value) qt_widgets = qt6_base.get("QtWidgets") - if qt_widgets: - setattr(qt6, "TankDialogBase", qt_widgets.QDialog) + qt6.TankDialogBase = qt_widgets.QDialog if qt_widgets else None # Update the authentication module to use the engine's Qt. # @todo: can this import be untangled? Code references internal part of the auth module @@ -422,7 +420,7 @@ def __show_busy(self, title, details): # we cannot import QT until here as non-ui engines don't have QT defined. try: from .qt6.busy_dialog import BusyDialog - from .qt6 import QtGui, QtCore + from .qt6 import QtCore except: # QT import failed. This may be because someone has upgraded the core @@ -1706,7 +1704,7 @@ def _create_widget(self, widget_class, *args, **kwargs): self.logger.exception(exc) import traceback - from sgtk.platform.qt6 import QtGui, QtCore, QtWidgets + from sgtk.platform.qt6 import QtCore, QtWidgets # A very simple widget that ensures that the exception is visible and # selectable should the user need to copy/paste it into a support diff --git a/tests/authentication_tests/test_interactive_authentication.py b/tests/authentication_tests/test_interactive_authentication.py index 48f4e96538..87158b0144 100644 --- a/tests/authentication_tests/test_interactive_authentication.py +++ b/tests/authentication_tests/test_interactive_authentication.py @@ -1539,8 +1539,10 @@ def setUp(self, *args, **kwargs): "QtGui": mock.Mock(), "QtNetwork": mock.Mock(), "QtWebEngineWidgets": mock.Mock(), + "QtWidgets": mock.Mock(), "QtWebEngineCore": mock.Mock(), } + qt_modules_mock["QtWebEngineCore"].QWebEnginePage = mock.Mock() self.sso_saml2 = SsoSaml2Core(qt_modules=qt_modules_mock) super(SsoSaml2CoreTests, self).setUp() From d59805a2843a78080db71157a5a5c49239645a72 Mon Sep 17 00:00:00 2001 From: Eduardo Chauca Date: Tue, 24 Jun 2025 09:44:33 -0500 Subject: [PATCH 9/9] new fixes --- azure-pipelines.yml | 2 +- python/tank/authentication/login_dialog.py | 2 +- python/tank/platform/engine.py | 2 -- python/tank/platform/qt6/ui_busy_dialog.py | 2 +- python/tank/platform/qt6/ui_tank_dialog.py | 18 +++++++++--------- .../platform/{qt6 => resources}/arrow.png | Bin .../{qt6 => resources}/arrow_flipped.png | Bin .../arrow_flipped_hover.png | Bin .../arrow_flipped_pressed.png | Bin .../{qt6 => resources}/arrow_hover.png | Bin .../{qt6 => resources}/arrow_pressed.png | Bin .../platform/{qt6 => resources}/book_256.png | Bin .../{qt6 => resources}/busy_dialog.ui | 0 .../default_app_icon_256.png | Bin .../{qt6 => resources}/folder_256.png | Bin .../fonts/OpenSans/OpenSans-Bold.ttf | Bin .../fonts/OpenSans/OpenSans-CondLight.ttf | Bin .../fonts/OpenSans/OpenSans-Italic.ttf | Bin .../fonts/OpenSans/OpenSans-Light.ttf | Bin .../fonts/OpenSans/OpenSans-Regular.ttf | Bin .../platform/{qt6 => resources}/gradient.png | Bin .../tank/platform/{qt6 => resources}/item.ui | 0 .../platform/{qt6 => resources}/pencil.png | Bin .../{qt6 => resources}/reload_256.png | Bin .../platform/{qt6 => resources}/resources.qrc | 0 .../{qt6 => resources}/sg_logo_80px.png | Bin .../{qt6 => resources}/tank_dialog.ui | 0 .../platform/{qt6 => resources}/tank_logo.png | Bin .../{qt6 => resources}/toolkit_std_dark.css | 0 29 files changed, 12 insertions(+), 14 deletions(-) rename python/tank/platform/{qt6 => resources}/arrow.png (100%) rename python/tank/platform/{qt6 => resources}/arrow_flipped.png (100%) rename python/tank/platform/{qt6 => resources}/arrow_flipped_hover.png (100%) rename python/tank/platform/{qt6 => resources}/arrow_flipped_pressed.png (100%) rename python/tank/platform/{qt6 => resources}/arrow_hover.png (100%) rename python/tank/platform/{qt6 => resources}/arrow_pressed.png (100%) rename python/tank/platform/{qt6 => resources}/book_256.png (100%) rename python/tank/platform/{qt6 => resources}/busy_dialog.ui (100%) rename python/tank/platform/{qt6 => resources}/default_app_icon_256.png (100%) rename python/tank/platform/{qt6 => resources}/folder_256.png (100%) rename python/tank/platform/{qt6 => resources}/fonts/OpenSans/OpenSans-Bold.ttf (100%) rename python/tank/platform/{qt6 => resources}/fonts/OpenSans/OpenSans-CondLight.ttf (100%) rename python/tank/platform/{qt6 => resources}/fonts/OpenSans/OpenSans-Italic.ttf (100%) rename python/tank/platform/{qt6 => resources}/fonts/OpenSans/OpenSans-Light.ttf (100%) rename python/tank/platform/{qt6 => resources}/fonts/OpenSans/OpenSans-Regular.ttf (100%) rename python/tank/platform/{qt6 => resources}/gradient.png (100%) rename python/tank/platform/{qt6 => resources}/item.ui (100%) rename python/tank/platform/{qt6 => resources}/pencil.png (100%) rename python/tank/platform/{qt6 => resources}/reload_256.png (100%) rename python/tank/platform/{qt6 => resources}/resources.qrc (100%) rename python/tank/platform/{qt6 => resources}/sg_logo_80px.png (100%) rename python/tank/platform/{qt6 => resources}/tank_dialog.ui (100%) rename python/tank/platform/{qt6 => resources}/tank_logo.png (100%) rename python/tank/platform/{qt6 => resources}/toolkit_std_dark.css (100%) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 50b59f1db9..9fb3e0d6e3 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -14,7 +14,7 @@ resources: - repository: templates type: github name: shotgunsoftware/tk-ci-tools - ref: refs/heads/ticket/SG-38898-python2-removal + ref: refs/heads/master endpoint: shotgunsoftware # We want builds to trigger for 3 reasons: diff --git a/python/tank/authentication/login_dialog.py b/python/tank/authentication/login_dialog.py index 620308a33c..3540241608 100644 --- a/python/tank/authentication/login_dialog.py +++ b/python/tank/authentication/login_dialog.py @@ -147,7 +147,7 @@ def __init__( :param parent: The Qt parent for the dialog (defaults to None) :param session_metadata: Metadata used in the context of SSO. This is an obscure blob of data. """ - QtWidgets.QDialog.__init__(self, parent) + super().__init__(parent) qt_modules = { "QtCore": QtCore, diff --git a/python/tank/platform/engine.py b/python/tank/platform/engine.py index a01e06a145..2932166d02 100644 --- a/python/tank/platform/engine.py +++ b/python/tank/platform/engine.py @@ -183,7 +183,6 @@ def __init__(self, tk, context, engine_instance_name, env): for name, value in qt5_base.items(): setattr(qt5, name, value) qt_widgets = qt5_base.get("QtWidgets") - qt5.TankDialogBase = qt_widgets.QDialog if qt_widgets else None qt6_base = self.__define_qt6_base() self.__has_qt6 = len(qt6_base) > 0 @@ -1689,7 +1688,6 @@ def _create_widget(self, widget_class, *args, **kwargs): Additional parameters specified will be passed through to the widget_class constructor. """ from .qt6 import tankqdialog - # from qt6 import tankqdialog # construct the widget object try: diff --git a/python/tank/platform/qt6/ui_busy_dialog.py b/python/tank/platform/qt6/ui_busy_dialog.py index cf21eb0352..deff8a4de7 100644 --- a/python/tank/platform/qt6/ui_busy_dialog.py +++ b/python/tank/platform/qt6/ui_busy_dialog.py @@ -66,7 +66,7 @@ def setupUi(self, BusyDialog): self.horizontalLayout.setObjectName(u"horizontalLayout") self.label = QLabel(self.frame) self.label.setObjectName(u"label") - self.label.setPixmap(QPixmap(u":/Tank.Platform.Qt6/sg_logo_80px.png")) + self.label.setPixmap(QPixmap(u":/Tank.Platform.Resources/sg_logo_80px.png")) self.horizontalLayout.addWidget(self.label) diff --git a/python/tank/platform/qt6/ui_tank_dialog.py b/python/tank/platform/qt6/ui_tank_dialog.py index 531c02a06a..ae986de533 100644 --- a/python/tank/platform/qt6/ui_tank_dialog.py +++ b/python/tank/platform/qt6/ui_tank_dialog.py @@ -65,7 +65,7 @@ def setupUi(self, TankDialog): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.tank_logo.sizePolicy().hasHeightForWidth()) self.tank_logo.setSizePolicy(sizePolicy) - self.tank_logo.setPixmap(QPixmap(u":/Tank.Platform.Qt6/tank_logo.png")) + self.tank_logo.setPixmap(QPixmap(u":/Tank.Platform.Resources/tank_logo.png")) self.horizontalLayout.addWidget(self.tank_logo) @@ -106,17 +106,17 @@ def setupUi(self, TankDialog): self.details_show.setStyleSheet(u"QToolButton{\n" "width: 12px;\n" "height: 20px;\n" -"background-image: url(:/Tank.Platform.Qt6/arrow.png);\n" +"background-image: url(:/Tank.Platform.Resources/arrow.png);\n" "border: none;\n" "background-color: none;\n" "}\n" "\n" "QToolButton:hover{\n" -"background-image: url(:/Tank.Platform.Qt6/arrow_hover.png);\n" +"background-image: url(:/Tank.Platform.Resources/arrow_hover.png);\n" "}\n" "\n" "QToolButton:pressed{\n" -"background-image: url(:/Tank.Platform.Qt6/arrow_pressed.png);\n" +"background-image: url(:/Tank.Platform.Resources/arrow_pressed.png);\n" "}\n" "") self.details_show.setAutoRaise(True) @@ -131,17 +131,17 @@ def setupUi(self, TankDialog): self.details_hide.setStyleSheet(u"QToolButton{\n" " width: 12px;\n" " height: 20px;\n" -" background-image: url(:/Tank.Platform.Qt6/arrow_flipped.png);\n" +" background-image: url(:/Tank.Platform.Resources/arrow_flipped.png);\n" " border: none;\n" " background-color: none;\n" " }\n" "\n" " QToolButton:hover{\n" -" background-image: url(:/Tank.Platform.Qt6/arrow_flipped_hover.png);\n" +" background-image: url(:/Tank.Platform.Resources/arrow_flipped_hover.png);\n" " }\n" "\n" " QToolButton:pressed{\n" -" background-image: url(:/Tank.Platform.Qt6/arrow_flipped_pressed.png);\n" +" background-image: url(:/Tank.Platform.Resources/arrow_flipped_pressed.png);\n" " }\n" " ") self.details_hide.setAutoRaise(True) @@ -192,7 +192,7 @@ def setupUi(self, TankDialog): self.gradient.setMinimumSize(QSize(11, 0)) self.gradient.setMaximumSize(QSize(11, 16777215)) self.gradient.setStyleSheet(u"#gradient {\n" -"background-image: url(:/Tank.Platform.Qt6/gradient.png);\n" +"background-image: url(:/Tank.Platform.Resources/gradient.png);\n" "border: none;\n" "}") @@ -224,7 +224,7 @@ def setupUi(self, TankDialog): self.app_icon.setObjectName(u"app_icon") self.app_icon.setMinimumSize(QSize(64, 64)) self.app_icon.setMaximumSize(QSize(64, 64)) - self.app_icon.setPixmap(QPixmap(u":/Tank.Platform.Qt6/default_app_icon_256.png")) + self.app_icon.setPixmap(QPixmap(u":/Tank.Platform.Resources/default_app_icon_256.png")) self.app_icon.setScaledContents(True) self.app_icon.setAlignment(Qt.AlignCenter) diff --git a/python/tank/platform/qt6/arrow.png b/python/tank/platform/resources/arrow.png similarity index 100% rename from python/tank/platform/qt6/arrow.png rename to python/tank/platform/resources/arrow.png diff --git a/python/tank/platform/qt6/arrow_flipped.png b/python/tank/platform/resources/arrow_flipped.png similarity index 100% rename from python/tank/platform/qt6/arrow_flipped.png rename to python/tank/platform/resources/arrow_flipped.png diff --git a/python/tank/platform/qt6/arrow_flipped_hover.png b/python/tank/platform/resources/arrow_flipped_hover.png similarity index 100% rename from python/tank/platform/qt6/arrow_flipped_hover.png rename to python/tank/platform/resources/arrow_flipped_hover.png diff --git a/python/tank/platform/qt6/arrow_flipped_pressed.png b/python/tank/platform/resources/arrow_flipped_pressed.png similarity index 100% rename from python/tank/platform/qt6/arrow_flipped_pressed.png rename to python/tank/platform/resources/arrow_flipped_pressed.png diff --git a/python/tank/platform/qt6/arrow_hover.png b/python/tank/platform/resources/arrow_hover.png similarity index 100% rename from python/tank/platform/qt6/arrow_hover.png rename to python/tank/platform/resources/arrow_hover.png diff --git a/python/tank/platform/qt6/arrow_pressed.png b/python/tank/platform/resources/arrow_pressed.png similarity index 100% rename from python/tank/platform/qt6/arrow_pressed.png rename to python/tank/platform/resources/arrow_pressed.png diff --git a/python/tank/platform/qt6/book_256.png b/python/tank/platform/resources/book_256.png similarity index 100% rename from python/tank/platform/qt6/book_256.png rename to python/tank/platform/resources/book_256.png diff --git a/python/tank/platform/qt6/busy_dialog.ui b/python/tank/platform/resources/busy_dialog.ui similarity index 100% rename from python/tank/platform/qt6/busy_dialog.ui rename to python/tank/platform/resources/busy_dialog.ui diff --git a/python/tank/platform/qt6/default_app_icon_256.png b/python/tank/platform/resources/default_app_icon_256.png similarity index 100% rename from python/tank/platform/qt6/default_app_icon_256.png rename to python/tank/platform/resources/default_app_icon_256.png diff --git a/python/tank/platform/qt6/folder_256.png b/python/tank/platform/resources/folder_256.png similarity index 100% rename from python/tank/platform/qt6/folder_256.png rename to python/tank/platform/resources/folder_256.png diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Bold.ttf b/python/tank/platform/resources/fonts/OpenSans/OpenSans-Bold.ttf similarity index 100% rename from python/tank/platform/qt6/fonts/OpenSans/OpenSans-Bold.ttf rename to python/tank/platform/resources/fonts/OpenSans/OpenSans-Bold.ttf diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-CondLight.ttf b/python/tank/platform/resources/fonts/OpenSans/OpenSans-CondLight.ttf similarity index 100% rename from python/tank/platform/qt6/fonts/OpenSans/OpenSans-CondLight.ttf rename to python/tank/platform/resources/fonts/OpenSans/OpenSans-CondLight.ttf diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Italic.ttf b/python/tank/platform/resources/fonts/OpenSans/OpenSans-Italic.ttf similarity index 100% rename from python/tank/platform/qt6/fonts/OpenSans/OpenSans-Italic.ttf rename to python/tank/platform/resources/fonts/OpenSans/OpenSans-Italic.ttf diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Light.ttf b/python/tank/platform/resources/fonts/OpenSans/OpenSans-Light.ttf similarity index 100% rename from python/tank/platform/qt6/fonts/OpenSans/OpenSans-Light.ttf rename to python/tank/platform/resources/fonts/OpenSans/OpenSans-Light.ttf diff --git a/python/tank/platform/qt6/fonts/OpenSans/OpenSans-Regular.ttf b/python/tank/platform/resources/fonts/OpenSans/OpenSans-Regular.ttf similarity index 100% rename from python/tank/platform/qt6/fonts/OpenSans/OpenSans-Regular.ttf rename to python/tank/platform/resources/fonts/OpenSans/OpenSans-Regular.ttf diff --git a/python/tank/platform/qt6/gradient.png b/python/tank/platform/resources/gradient.png similarity index 100% rename from python/tank/platform/qt6/gradient.png rename to python/tank/platform/resources/gradient.png diff --git a/python/tank/platform/qt6/item.ui b/python/tank/platform/resources/item.ui similarity index 100% rename from python/tank/platform/qt6/item.ui rename to python/tank/platform/resources/item.ui diff --git a/python/tank/platform/qt6/pencil.png b/python/tank/platform/resources/pencil.png similarity index 100% rename from python/tank/platform/qt6/pencil.png rename to python/tank/platform/resources/pencil.png diff --git a/python/tank/platform/qt6/reload_256.png b/python/tank/platform/resources/reload_256.png similarity index 100% rename from python/tank/platform/qt6/reload_256.png rename to python/tank/platform/resources/reload_256.png diff --git a/python/tank/platform/qt6/resources.qrc b/python/tank/platform/resources/resources.qrc similarity index 100% rename from python/tank/platform/qt6/resources.qrc rename to python/tank/platform/resources/resources.qrc diff --git a/python/tank/platform/qt6/sg_logo_80px.png b/python/tank/platform/resources/sg_logo_80px.png similarity index 100% rename from python/tank/platform/qt6/sg_logo_80px.png rename to python/tank/platform/resources/sg_logo_80px.png diff --git a/python/tank/platform/qt6/tank_dialog.ui b/python/tank/platform/resources/tank_dialog.ui similarity index 100% rename from python/tank/platform/qt6/tank_dialog.ui rename to python/tank/platform/resources/tank_dialog.ui diff --git a/python/tank/platform/qt6/tank_logo.png b/python/tank/platform/resources/tank_logo.png similarity index 100% rename from python/tank/platform/qt6/tank_logo.png rename to python/tank/platform/resources/tank_logo.png diff --git a/python/tank/platform/qt6/toolkit_std_dark.css b/python/tank/platform/resources/toolkit_std_dark.css similarity index 100% rename from python/tank/platform/qt6/toolkit_std_dark.css rename to python/tank/platform/resources/toolkit_std_dark.css