diff --git a/.gitignore b/.gitignore index 3480399..96b174d 100644 --- a/.gitignore +++ b/.gitignore @@ -64,4 +64,11 @@ .AppleDesktop Network Trash Folder Temporary Items -.apdisk \ No newline at end of file +.apdisk + + +__pycache__/ +*.py[cod] +venv/ +.idea/ + diff --git a/README.md b/README.md index 24f363a..3b49bcc 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,7 @@ IO扩展版提供了 - [develop_and_deploy.md](doc/develop_and_deploy.md)为开发和部署说明,首先看这个文档 - [hardware_description.md](doc/hardware_description.md)为PL端逻辑设计说明,阐述了硬件工作的整体流程 - [pl_reference_mannual.md](doc/pl_reference_mannual.md)为PL端逻辑在AXI总线上映射的寄存器参考手册 + - [sim_uppermachine_manual.md](doc/sim_uppermachine_manual.md)为模拟上位机运行的参考手册 - script为配置系统、安装环境、安装可执行文件、卸载可执行文件等的脚本 @@ -42,13 +43,14 @@ IO扩展版提供了 - pl_platform为PL端硬件设计 - xme0724ioextend为IO叠板的原理图和PCB -- source为XME0724板子上运行的源程序 +- source为XME0724板子上运行的源程序和模拟上位机程序 - liunx_app为Linux上运行的应用程序,即业务逻辑 - linux_driver为Linux上的驱动,用于控制自定义的PL端硬件,其中drv_test结尾的目录为相应驱动模块的测试应用程序 - petalinux_config为petalinux工具在编译u-boot、kernel、rootfs前进行的配置 - petalinux_devicetree为本次自定义的Linux设备树文件部分,其余设备树为自动生成的 - petalinux_hwdescription为petalinux所使用的硬件描述文件,包含了vivado工程中的比特流等信息 + - sim_uppermachine_manul为基于pyside6所编写的软件,用于模拟上位机发送指令,方便调试 ## 版本 @@ -74,4 +76,4 @@ b分支编号-d文档版本-hPCB设计版本-lFPGA设计版本-p协议版本-s ## 作者 -作者觉得还是不说明作者是谁比较好,免得毕业后有提着示波器的师弟师妹来问问题 \ No newline at end of file +作者觉得还是不说明是谁比较好,免得毕业后有提着示波器的师弟师妹来问问题 \ No newline at end of file diff --git a/doc/sim_uppermachine_manual.assets/2.png b/doc/sim_uppermachine_manual.assets/2.png new file mode 100644 index 0000000..f108621 Binary files /dev/null and b/doc/sim_uppermachine_manual.assets/2.png differ diff --git a/doc/sim_uppermachine_manual.md b/doc/sim_uppermachine_manual.md new file mode 100644 index 0000000..b6b7423 --- /dev/null +++ b/doc/sim_uppermachine_manual.md @@ -0,0 +1,11 @@ +# 模拟上位机说明文档 + +## 模拟上位机连接下位机 + +模拟上位机使用python编写,如下图所示,实现显示界面并与下位机通信发送四个相机的分频值。运行程序后,出现显示界面,连接网线并选择Server IP为运行模拟上位机程序的本机系统中手动设定的IP地址,Server Port端号为13452(默认)。选择完成后等待连接,当界面下方出现本机与下位机的IP地址时即为连接成功。 + +## 模拟上位机发送指令 + +模拟上位机与下位机连接成功后,可在MANUAL栏中发送通信协议中对应的命令,在PRESET栏中填写四个相机触发所需的分频值,在发送分频值前,需要先点击停止按钮,然后点击对应的A、B、C、D按钮即可发送各相机对应的分频值,最后点击Start按钮即可将分频值发送给下位机。 + +![](sim_uppermachine_manual.assets/2.png) \ No newline at end of file diff --git a/doc/version b/doc/version index dc39e58..7c483e8 100644 --- a/doc/version +++ b/doc/version @@ -1 +1 @@ -1.6 \ No newline at end of file +1.7 \ No newline at end of file diff --git a/source/sim_uppermachine/images/icons/30-height-sep.png b/source/sim_uppermachine/images/icons/30-height-sep.png new file mode 100644 index 0000000..48bd240 Binary files /dev/null and b/source/sim_uppermachine/images/icons/30-height-sep.png differ diff --git a/source/sim_uppermachine/images/icons/aperture.png b/source/sim_uppermachine/images/icons/aperture.png new file mode 100644 index 0000000..6b6f272 Binary files /dev/null and b/source/sim_uppermachine/images/icons/aperture.png differ diff --git a/source/sim_uppermachine/images/icons/arrow-right.png b/source/sim_uppermachine/images/icons/arrow-right.png new file mode 100644 index 0000000..f088f2b Binary files /dev/null and b/source/sim_uppermachine/images/icons/arrow-right.png differ diff --git a/source/sim_uppermachine/images/icons/camera-and-down.png b/source/sim_uppermachine/images/icons/camera-and-down.png new file mode 100644 index 0000000..a450ddf Binary files /dev/null and b/source/sim_uppermachine/images/icons/camera-and-down.png differ diff --git a/source/sim_uppermachine/images/icons/camera.png b/source/sim_uppermachine/images/icons/camera.png new file mode 100644 index 0000000..9478dd5 Binary files /dev/null and b/source/sim_uppermachine/images/icons/camera.png differ diff --git a/source/sim_uppermachine/images/icons/chevron-down.png b/source/sim_uppermachine/images/icons/chevron-down.png new file mode 100644 index 0000000..9611aaf Binary files /dev/null and b/source/sim_uppermachine/images/icons/chevron-down.png differ diff --git a/source/sim_uppermachine/images/icons/chevron-left.png b/source/sim_uppermachine/images/icons/chevron-left.png new file mode 100644 index 0000000..1b1b7ef Binary files /dev/null and b/source/sim_uppermachine/images/icons/chevron-left.png differ diff --git a/source/sim_uppermachine/images/icons/chevron-minidown.png b/source/sim_uppermachine/images/icons/chevron-minidown.png new file mode 100644 index 0000000..e0095b4 Binary files /dev/null and b/source/sim_uppermachine/images/icons/chevron-minidown.png differ diff --git a/source/sim_uppermachine/images/icons/chevron-miniup.png b/source/sim_uppermachine/images/icons/chevron-miniup.png new file mode 100644 index 0000000..0d4a8c2 Binary files /dev/null and b/source/sim_uppermachine/images/icons/chevron-miniup.png differ diff --git a/source/sim_uppermachine/images/icons/chevron-right.png b/source/sim_uppermachine/images/icons/chevron-right.png new file mode 100644 index 0000000..0820da3 Binary files /dev/null and b/source/sim_uppermachine/images/icons/chevron-right.png differ diff --git a/source/sim_uppermachine/images/icons/chevron-statusbardown.png b/source/sim_uppermachine/images/icons/chevron-statusbardown.png new file mode 100644 index 0000000..d9a57b7 Binary files /dev/null and b/source/sim_uppermachine/images/icons/chevron-statusbardown.png differ diff --git a/source/sim_uppermachine/images/icons/chevron-statusbarup.png b/source/sim_uppermachine/images/icons/chevron-statusbarup.png new file mode 100644 index 0000000..849ea74 Binary files /dev/null and b/source/sim_uppermachine/images/icons/chevron-statusbarup.png differ diff --git a/source/sim_uppermachine/images/icons/close.png b/source/sim_uppermachine/images/icons/close.png new file mode 100644 index 0000000..2b72f7c Binary files /dev/null and b/source/sim_uppermachine/images/icons/close.png differ diff --git a/source/sim_uppermachine/images/icons/home.png b/source/sim_uppermachine/images/icons/home.png new file mode 100644 index 0000000..7b649b4 Binary files /dev/null and b/source/sim_uppermachine/images/icons/home.png differ diff --git a/source/sim_uppermachine/images/icons/image.png b/source/sim_uppermachine/images/icons/image.png new file mode 100644 index 0000000..b0da6c7 Binary files /dev/null and b/source/sim_uppermachine/images/icons/image.png differ diff --git a/source/sim_uppermachine/images/icons/link-2.png b/source/sim_uppermachine/images/icons/link-2.png new file mode 100644 index 0000000..5792afd Binary files /dev/null and b/source/sim_uppermachine/images/icons/link-2.png differ diff --git a/source/sim_uppermachine/images/icons/link.png b/source/sim_uppermachine/images/icons/link.png new file mode 100644 index 0000000..148ac69 Binary files /dev/null and b/source/sim_uppermachine/images/icons/link.png differ diff --git a/source/sim_uppermachine/images/icons/log-out.png b/source/sim_uppermachine/images/icons/log-out.png new file mode 100644 index 0000000..9731b06 Binary files /dev/null and b/source/sim_uppermachine/images/icons/log-out.png differ diff --git a/source/sim_uppermachine/images/icons/maximize.png b/source/sim_uppermachine/images/icons/maximize.png new file mode 100644 index 0000000..98dd48a Binary files /dev/null and b/source/sim_uppermachine/images/icons/maximize.png differ diff --git a/source/sim_uppermachine/images/icons/menu.png b/source/sim_uppermachine/images/icons/menu.png new file mode 100644 index 0000000..dc16137 Binary files /dev/null and b/source/sim_uppermachine/images/icons/menu.png differ diff --git a/source/sim_uppermachine/images/icons/minimize.png b/source/sim_uppermachine/images/icons/minimize.png new file mode 100644 index 0000000..f54910a Binary files /dev/null and b/source/sim_uppermachine/images/icons/minimize.png differ diff --git a/source/sim_uppermachine/images/icons/play.png b/source/sim_uppermachine/images/icons/play.png new file mode 100644 index 0000000..89c19a9 Binary files /dev/null and b/source/sim_uppermachine/images/icons/play.png differ diff --git a/source/sim_uppermachine/images/icons/plus.png b/source/sim_uppermachine/images/icons/plus.png new file mode 100644 index 0000000..797fccc Binary files /dev/null and b/source/sim_uppermachine/images/icons/plus.png differ diff --git a/source/sim_uppermachine/images/icons/restore.png b/source/sim_uppermachine/images/icons/restore.png new file mode 100644 index 0000000..a3ae0b0 Binary files /dev/null and b/source/sim_uppermachine/images/icons/restore.png differ diff --git a/source/sim_uppermachine/images/icons/rotate-ccw.png b/source/sim_uppermachine/images/icons/rotate-ccw.png new file mode 100644 index 0000000..127f342 Binary files /dev/null and b/source/sim_uppermachine/images/icons/rotate-ccw.png differ diff --git a/source/sim_uppermachine/images/icons/save.png b/source/sim_uppermachine/images/icons/save.png new file mode 100644 index 0000000..0ea3288 Binary files /dev/null and b/source/sim_uppermachine/images/icons/save.png differ diff --git a/source/sim_uppermachine/images/icons/shuffle.png b/source/sim_uppermachine/images/icons/shuffle.png new file mode 100644 index 0000000..2cce5a4 Binary files /dev/null and b/source/sim_uppermachine/images/icons/shuffle.png differ diff --git a/source/sim_uppermachine/images/icons/sliders.png b/source/sim_uppermachine/images/icons/sliders.png new file mode 100644 index 0000000..e639f92 Binary files /dev/null and b/source/sim_uppermachine/images/icons/sliders.png differ diff --git a/source/sim_uppermachine/images/icons/square.png b/source/sim_uppermachine/images/icons/square.png new file mode 100644 index 0000000..22983d3 Binary files /dev/null and b/source/sim_uppermachine/images/icons/square.png differ diff --git a/source/sim_uppermachine/images/icons/wind.png b/source/sim_uppermachine/images/icons/wind.png new file mode 100644 index 0000000..c7dd2d6 Binary files /dev/null and b/source/sim_uppermachine/images/icons/wind.png differ diff --git a/source/sim_uppermachine/images/images/PyDracula.png b/source/sim_uppermachine/images/images/PyDracula.png new file mode 100644 index 0000000..afa7eae Binary files /dev/null and b/source/sim_uppermachine/images/images/PyDracula.png differ diff --git a/source/sim_uppermachine/images/images/PyDracula.psd b/source/sim_uppermachine/images/images/PyDracula.psd new file mode 100644 index 0000000..be0ece8 Binary files /dev/null and b/source/sim_uppermachine/images/images/PyDracula.psd differ diff --git a/source/sim_uppermachine/images/images/PyDracula_horizontal.png b/source/sim_uppermachine/images/images/PyDracula_horizontal.png new file mode 100644 index 0000000..eaea4b5 Binary files /dev/null and b/source/sim_uppermachine/images/images/PyDracula_horizontal.png differ diff --git a/source/sim_uppermachine/images/images/PyDracula_vertical.png b/source/sim_uppermachine/images/images/PyDracula_vertical.png new file mode 100644 index 0000000..7b43a6e Binary files /dev/null and b/source/sim_uppermachine/images/images/PyDracula_vertical.png differ diff --git a/source/sim_uppermachine/main.py b/source/sim_uppermachine/main.py new file mode 100644 index 0000000..d9346ea --- /dev/null +++ b/source/sim_uppermachine/main.py @@ -0,0 +1,328 @@ +""" +BY: Miaow, Wanderson M.Pimenta +PROJECT MADE WITH: Qt Designer and PySide6 +V: 1.0.0 + +This project can be used freely for all uses, as long as they maintain the +respective credits only in the Python scripts, any information in the visual +interface (GUI) can be modified without any implication. + +There are limitations on Qt licenses if you want to use your products +commercially, I recommend reading them on the official website: +https://doc.qt.io/qtforpython/licenses.html +""" +import re +import sys +import os +import time +from threading import Thread, Event +from binascii import unhexlify, hexlify +from typing import Optional +import json +import PySide6 + +from modules.list_model import PacketListModel +from modules.protocol import Protocol + +from PySide6.QtCore import Signal + +from modules import * +from PySide6.QtWidgets import QMainWindow, QApplication, QComboBox, QLineEdit, QSpinBox +from PySide6.QtGui import QIcon, QFontMetrics, QStandardItemModel, QStandardItem +from modules.ui_main import Ui_MainWindow +from modules.server import Server + + +# os.environ["QT_FONT_DPI"] = "96" # FIX Problem for High DPI and Scale above 100% + +class MainWindow(QMainWindow): + connected_signal = Signal() + disconnected_signal = Signal() + send_signal = Signal(bytes) + receive_signal = Signal(bytes) + + def __init__(self): + super().__init__() + self.ui = Ui_MainWindow() + self.ui.setupUi(self) + self.packet_list_model = QStandardItemModel() + with open("settings.json") as f: + self.settings = json.load(f) + UIFunctions.uiDefinitions(self) # set ui, e.g. title bar, grip & resize, min/max/close + + self.total_send_bytes, self.total_send_packets = 0, 0 + self.total_receive_bytes, self.total_receive_packets = 0, 0 + + # ===buttons on left menu bar=== + self.ui.toggleButton.clicked.connect(lambda: UIFunctions.toggleMenu(self, True)) + self.ui.btn_home.clicked.connect(self.menu_btn_clicked) + self.ui.btn_connection.clicked.connect(self.menu_btn_clicked) + self.ui.btn_divider.clicked.connect(self.menu_btn_clicked) + self.ui.btn_valvedata.clicked.connect(self.menu_btn_clicked) + + # set custom theme + # UIFunctions.theme(self, "themes\py_dracula_light.qss", True) + # AppFunctions.setThemeHack(self) + + # ===page_connection=== + page_connection_settings = self.settings["page_connection"] + self.ui.sb_server_port.setValue(page_connection_settings["server_port"]) + + # ===page_divider=== + page_divider_settings = self.settings["page_divider"] + [self.ui.__dict__[f"pb_send_{i}"].clicked.connect(self.pb_send_clicked) for i in range(1, 6)] + for t in ["start", "command", "data", "end"]: + for i in range(1, 6): + cb = self.ui.__dict__[f"cb_{t}_{i}"] + cb.currentTextChanged.connect(self.manual_current_text_changed) + cb.clear() + cb.addItems(page_divider_settings["manual"][f"cb_{t}_list"]) + cb.setCurrentText(page_divider_settings["manual"]["data"][i][f"cb_{t}"]) + + [self.ui.__dict__[f"pb_send_camera_{t}"].clicked.connect(self.pb_send_camera_clicked) for t in "abcd"] + self.ui.le_preset_num.textChanged.connect(self.le_preset_num_text_changed) + self.ui.le_preset_num.setText(str(page_divider_settings["preset"]["le_preset_num"])) + self.ui.btn_preset_next.clicked.connect(self.btn_preset_next_clicked) + self.ui.btn_preset_previous.clicked.connect(self.btn_preset_previous_clicked) + self.ui.btn_preset_add.clicked.connect(self.btn_preset_add_clicked) + + self.ui.pb_send_camera_all.clicked.connect(self.pb_send_camera_all_clicked) + self.ui.pb_send_start.clicked.connect(self.pb_send_start_clicked) + self.ui.pb_send_stop.clicked.connect(self.pb_send_stop_clicked) + self.ui.pb_divider_restore.clicked.connect(self.pb_divider_restore_clicked) + + # ===show main window, start at page_home page with stopped status=== + self.show() + self.ui.btn_home.click() + self.connected_signal.connect(self.slot_connected_signal) + self.disconnected_signal.connect(self.slot_disconnected_signal) + self.send_signal.connect(self.slot_send_signal) + self.receive_signal.connect(self.slot_receive_signal) + self.server: Optional[Server] = None + self.init_server() + + def init_server(self): + if self.server is not None: + self.server.close() + self.server = Server() + self.server.set_connected_signal(self.connected_signal) + self.server.set_disconnected_signal(self.disconnected_signal) + self.server.set_send_signal(self.send_signal) + self.server.set_receive_signal(self.receive_signal) + last_selected = self.ui.cb_server_ip.currentText() + self.ui.cb_server_ip.clear() + ip_list = Server.get_server_ip_list() + self.ui.cb_server_ip.addItems(ip_list) + if last_selected is not None and last_selected.strip() != "" and last_selected in ip_list: + self.ui.cb_server_ip.setCurrentText(last_selected) + else: + self.ui.cb_server_ip.setCurrentIndex(0) + + def slot_send_signal(self, data: bytes): + self.total_send_bytes += len(data) + self.total_send_packets += 1 + self.ui.lbl_tx_count.setText(f"{self.total_send_bytes} bytes | {self.total_send_packets} packets") + data = hexlify(data, " ").decode("ascii").upper() + UIFunctions.set_elide_text(self.ui.lbl_datagram, data) + item = QStandardItem(data) + item.setIcon(QIcon(u":/icons/images/icons/cil-cloud-upload-small.png")) + self.packet_list_model.appendRow(item) + + def slot_receive_signal(self, data: bytes): + self.total_receive_bytes += len(data) + self.total_receive_packets += 1 + self.ui.lbl_rx_count.setText(f"{self.total_receive_bytes} bytes | {self.total_receive_packets} packets") + if data != b"\xaa\x00\x00\x00\x03hb\xff\xff\xff\xbb": + data = hexlify(data, " ").decode("ascii").upper() + UIFunctions.set_elide_text(self.ui.lbl_datagram, data) + item = QStandardItem(data) + item.setIcon(QIcon(u":/icons/images/icons/cil-cloud-download-small.png")) + self.packet_list_model.appendRow(item) + + def slot_connected_signal(self): + self.ui.page_divider.setEnabled(True) + self.ui.lbl_server_addr.setText(f"{self.server.ip}:{self.server.port}") + self.ui.lbl_client_addr.setText(f"{self.server.client_ip}:{self.server.client_port}") + self.ui.lv_packets.setModel(self.packet_list_model) + + def slot_disconnected_signal(self): + self.ui.page_divider.setEnabled(False) + self.ui.lbl_server_addr.setText(f"0.0.0.0:0") + self.ui.lbl_client_addr.setText(f"0.0.0.0:0") + + def menu_btn_clicked(self): + btn = self.sender() + btnName = btn.objectName() + + # show page_home page + if btnName == "btn_home": + self.ui.stackedWidget.setCurrentWidget(self.ui.page_home) + UIFunctions.resetStyle(self, btnName) + btn.setStyleSheet(UIFunctions.selectMenu(btn.styleSheet())) + + # show settings page + if btnName == "btn_connection": + self.ui.stackedWidget.setCurrentWidget(self.ui.page_connection) + UIFunctions.resetStyle(self, btnName) + btn.setStyleSheet(UIFunctions.selectMenu(btn.styleSheet())) + + # transmission page + if btnName == "btn_divider": + self.ui.stackedWidget.setCurrentWidget(self.ui.page_divider) # SET PAGE + UIFunctions.resetStyle(self, btnName) # RESET ANOTHERS BUTTONS SELECTED + btn.setStyleSheet(UIFunctions.selectMenu(btn.styleSheet())) # SELECT MENU + if self.server.ip is None or self.server.ip != self.ui.cb_server_ip.currentText() or self.server.port != self.ui.sb_server_port.value(): + self.init_server() + self.server.start_listen_thread(self.ui.cb_server_ip.currentText(), self.ui.sb_server_port.value()) + + # show table page + if btnName == "btn_valvedata": + self.ui.stackedWidget.setCurrentWidget(self.ui.page_valvedata) + UIFunctions.resetStyle(self, btnName) + btn.setStyleSheet(UIFunctions.selectMenu(btn.styleSheet())) + + def pb_send_clicked(self): + try: + index = int(self.sender().objectName()[-1]) + cb_start: QComboBox = self.ui.__dict__[f"cb_start_{index}"] + cb_command: QComboBox = self.ui.__dict__[f"cb_command_{index}"] + cb_data: QComboBox = self.ui.__dict__[f"cb_data_{index}"] + cb_end: QComboBox = self.ui.__dict__[f"cb_end_{index}"] + start = unhexlify(cb_start.currentText().replace(" ", "")) + command = cb_command.currentText().replace(" ", "").encode("ascii").lower() + data = unhexlify(cb_data.currentText().replace(" ", "")) + end = unhexlify(cb_end.currentText().replace(" ", "")) + + p = Protocol(start=start, cmd=command, data=data, end=end) + self.server.send_datagram(p.get_datagram()) + + except BaseException as e: + pass + + def pb_divider_restore_clicked(self): + self.ui.le_preset_num.setText("1") + + def pb_send_camera_clicked(self): + try: + abcd = self.sender().objectName()[-1] + sb_camera: QSpinBox = self.ui.__dict__[f"sb_camera_{abcd}"] + data = sb_camera.value() + p = Protocol(cmd=f"p{abcd}", data=f"{data:08d}".encode("ascii")) + self.server.send_datagram(p.get_datagram()) + except BaseException as e: + pass + + def manual_current_text_changed(self): + try: + index = int(self.sender().objectName()[-1]) + cb_start: QComboBox = self.ui.__dict__[f"cb_start_{index}"] + cb_command: QComboBox = self.ui.__dict__[f"cb_command_{index}"] + cb_data: QComboBox = self.ui.__dict__[f"cb_data_{index}"] + cb_end: QComboBox = self.ui.__dict__[f"cb_end_{index}"] + start = unhexlify(cb_start.currentText().replace(" ", "")) + command = cb_command.currentText().replace(" ", "").encode("ascii").lower() + data = unhexlify(cb_data.currentText().replace(" ", "")) + end = unhexlify(cb_end.currentText().replace(" ", "")) + + p = Protocol(start=start, cmd=command, data=data, end=end) + le_length: QLineEdit = self.ui.__dict__[f"le_length_{index}"] + le_check: QLineEdit = self.ui.__dict__[f"le_check_{index}"] + le_length.setText(str(p.get_length())) + le_check.setText(hexlify(p.get_check_bytes(), " ").decode("ascii")) + except BaseException as e: + le_length: QLineEdit = self.ui.__dict__[f"le_length_{index}"] + le_check: QLineEdit = self.ui.__dict__[f"le_check_{index}"] + le_length.setText("--") + le_check.setText("--") + + def le_preset_num_text_changed(self): + index = int(self.ui.le_preset_num.text()) + data = self.settings["page_divider"]["preset"]["data"][index - 1] + self.ui.le_preset_name.setText(data["le_preset_name"]) + [self.ui.__dict__[f"sb_camera_{t}"].setValue(data[f"sb_camera_{t}"]) for t in "abcd"] + self.ui.sb_valve.setValue(data["sb_valve"]) + self.ui.cb_from_camera.setCurrentText(data["cb_from_camera"]) + self.ui.le_to_valve.setText(str(data["le_to_valve"])) + length = len(self.settings["page_divider"]["preset"]["data"]) + self.ui.btn_preset_next.setEnabled(index != length) + self.ui.btn_preset_previous.setEnabled(index != 1) + + def btn_preset_next_clicked(self): + last_index = int(self.ui.le_preset_num.text()) + length = len(self.settings["page_divider"]["preset"]["data"]) + if last_index < length: + last_index += 1 + self.ui.le_preset_num.setText(str(last_index)) + + def btn_preset_previous_clicked(self): + last_index = int(self.ui.le_preset_num.text()) + if last_index > 1: + last_index -= 1 + self.ui.le_preset_num.setText(str(last_index)) + + def btn_preset_add_clicked(self): + data = self.settings["page_divider"]["preset"]["data"] + tmp_name = self.ui.le_preset_name.text() + tmp_name_adj = tmp_name.replace("(", r"\(").replace(")", r"\)") + + num_list = [] + for i in data: + l = re.findall(rf"^{tmp_name_adj}\s\((\d+)\)$", i["le_preset_name"]) + if len(l) != 0: + num_list.append(int(l[-1])) + if len(num_list) != 0: + tmp_name += f" ({max(num_list) + 1})" + for i in data: + if tmp_name == i["le_preset_name"]: + tmp_name += " (1)" + break + + new_dict = { + "le_preset_name": tmp_name, + "sb_camera_a": self.ui.sb_camera_a.value(), + "sb_camera_b": self.ui.sb_camera_b.value(), + "sb_camera_c": self.ui.sb_camera_c.value(), + "sb_camera_d": self.ui.sb_camera_d.value(), + "sb_valve": self.ui.sb_valve.value(), + "cb_from_camera": self.ui.cb_from_camera.currentText(), + "le_to_valve": int(self.ui.le_to_valve.text()) + } + data.append(new_dict) + length = len(data) + self.ui.le_preset_name.setText(tmp_name) + self.ui.le_preset_num.setText(str(length)) + + def pb_send_camera_all_clicked(self): + try: + [self.server.send_datagram(Protocol(cmd=f"p{abcd}", + data=f"{self.ui.__dict__[f'sb_camera_{abcd}'].value():08d}".encode( + "ascii")).get_datagram()) for abcd in "abcd"] + except BaseException as e: + pass + + def pb_send_start_clicked(self): + try: + p = Protocol(cmd=b"st", data=b"\xff") + self.server.send_datagram(p.get_datagram()) + except BaseException as e: + pass + + def pb_send_stop_clicked(self): + try: + p = Protocol(cmd=b"sp", data=b"\xff") + self.server.send_datagram(p.get_datagram()) + except BaseException as e: + pass + + def closeEvent(self, event: PySide6.QtGui.QCloseEvent) -> None: + super().closeEvent(event) + self.server.close() + with open(self.ui.le_profile_file.text(), "w") as f: + json.dump(self.settings, f) + + +if __name__ == "__main__": + app = QApplication(sys.argv) + app.setWindowIcon(QIcon("icon.ico")) + window = MainWindow() + sys.exit(app.exec()) diff --git a/source/sim_uppermachine/main.ui b/source/sim_uppermachine/main.ui new file mode 100644 index 0000000..e8e51cb --- /dev/null +++ b/source/sim_uppermachine/main.ui @@ -0,0 +1,5484 @@ + + + Wanderson M. Pimenta + MainWindow + + + + 0 + 0 + 950 + 650 + + + + + 950 + 650 + + + + MiaowDaq - ULM7606 Data Acquisition Application + + + + + Segoe UI + 10 + false + false + + + + /* ///////////////////////////////////////////////////////////////////////////////////////////////// + +SET APP STYLESHEET - FULL STYLES HERE +DARK THEME - DRACULA COLOR BASED + +///////////////////////////////////////////////////////////////////////////////////////////////// */ + +QWidget{ + color: rgb(221, 221, 221); + font: 10pt "Segoe UI"; +} + +/* /////////////////////////////////////////////////////////////////////////////////////////////////Tooltip */ +QToolTip { + color: #ffffff; + background-color: rgba(33, 37, 43, 180); + border: 1px solid rgb(44, 49, 58); + background-image: none; + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 2px solid rgb(255, 121, 198); + text-align: left; + padding-left: 8px; + margin: 0px; +} + +/* /////////////////////////////////////////////////////////////////////////////////////////////////Bg App */ +#bgApp { + background-color: rgb(40, 44, 52); + border: 1px solid rgb(44, 49, 58); +} + +/* /////////////////////////////////////////////////////////////////////////////////////////////////Left Menu */ +#leftMenuBg { + background-color: rgb(33, 37, 43); +} +#topLogo { + background-color: rgb(33, 37, 43); + background-image: url(:/images/images/images/PyDracula.png); + background-position: centered; + background-repeat: no-repeat; +} +#titleLeftApp { font: 63 12pt "Segoe UI Semibold"; } +/* #titleLeftDescription { font: 8pt "Segoe UI"; color: rgb(189, 147, 249); } */ +#titleLeftDescription { font: 8pt "Segoe UI"; color: #ff79c6; } + +/* MENUS */ +#topMenu .QPushButton { + background-origin: padding; + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 20px solid transparent; + background-color: transparent; + text-align: left; + padding-left: 40px; +} +#topMenu .QPushButton:hover { + background-color: rgb(40, 44, 52); +} +#topMenu .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} +#topMenu .QLabel { + border-top: 1px solid rgba(255, 255, 255, 50); /*rgb(113, 126, 149);*/ + margin: 15px 10px; + height: 2px; + min-height: 2px; + max-height: 2px; +} +#bottomMenu .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 20px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 40px; +} +#bottomMenu .QPushButton:hover { + background-color: rgb(40, 44, 52); +} +#bottomMenu .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} +#leftMenuFrame{ + border-top: 3px solid rgb(44, 49, 58); +} + +/* Toggle Button */ +#toggleButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 20px solid transparent; + background-color: rgb(37, 41, 48); + text-align: left; + padding-left: 40px; + color: rgb(113, 126, 149); +} +#toggleButton:hover { + background-color: rgb(40, 44, 52); +} +#toggleButton:pressed { + background-color: rgb(189, 147, 249); +} + +/* Title Menu */ +#titleRightInfo { padding-left: 10px; } + + +/* /////////////////////////////////////////////////////////////////////////////////////////////////Extra Tab */ +#extraLeftBox { + background-color: rgb(44, 49, 58); +} +#extraTopBg{ + background-color: rgb(189, 147, 249) +} + +/* Icon */ +#extraIcon { + background-position: center; + background-repeat: no-repeat; + background-image: url(:/icons/images/icons/icon_settings.png); +} + +/* Label */ +#extraLabel { color: rgb(255, 255, 255); } + +/* Btn Close */ +#extraCloseColumnBtn { background-color: rgba(255, 255, 255, 0); border: none; border-radius: 5px; } +#extraCloseColumnBtn:hover { background-color: rgb(196, 161, 249); border-style: solid; border-radius: 4px; } +#extraCloseColumnBtn:pressed { background-color: rgb(180, 141, 238); border-style: solid; border-radius: 4px; } + +/* Extra Content */ +#extraContent{ + border-top: 3px solid rgb(40, 44, 52); +} + +/* Extra Top Menus */ +#extraTopMenu .QPushButton { +background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 22px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 38px; +} +#extraTopMenu .QPushButton:hover { + background-color: rgb(40, 44, 52); +} +#extraTopMenu .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} + +/* /////////////////////////////////////////////////////////////////////////////////////////////////Content App */ +#contentTopBg{ + background-color: rgb(33, 37, 43); +} +#contentBottom{ + border-top: 3px solid rgb(44, 49, 58); +} + +/* Top Buttons */ +#rightButtons .QPushButton { background-color: rgba(255, 255, 255, 0); border: none; border-radius: 5px; } +#rightButtons .QPushButton:hover { background-color: rgb(44, 49, 57); border-style: solid; border-radius: 4px; } +#rightButtons .QPushButton:pressed { background-color: rgb(23, 26, 30); border-style: solid; border-radius: 4px; } + +#themeSettingsTopDetail { background-color: rgb(189, 147, 249); } + +/* Bottom Bar */ +#bottomBar { background-color: rgb(44, 49, 58); } +#bottomBar QLabel { font-size: 11px; color: rgb(113, 126, 149); padding-left: 5px; padding-right: 10px; padding-bottom: 2px; } + +/* CONTENT SETTINGS */ +/* MENUS */ +#contentSettings .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 22px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 44px; +} +#contentSettings .QPushButton:hover { + background-color: rgb(40, 44, 52); +} +#contentSettings .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} + +/* /////////////////////////////////////////////////////////////////////////////////////////////////QTableView */ +QTableView { + background-color: transparent; + padding: 10px; + border-radius: 5px; + gridline-color: rgb(44, 49, 58); + padding: 0px; +} +QTableView::item{ + border-color: rgb(44, 49, 60); + padding-left: 5px; + padding-right: 5px; + gridline-color: rgb(44, 49, 60); + text-align: center; +} +QTableView::item:selected{ + background-color: rgb(189, 147, 249); +} +QHeaderView::section{ + background-color: rgb(33, 37, 43); + max-width: 30px; + border: 1px solid rgb(44, 49, 58); + border-style: none; + border-bottom: 1px solid rgb(44, 49, 60); + border-right: 1px solid rgb(44, 49, 60); + text-align: center; +} +QTableView::horizontalHeader { + background-color: rgb(33, 37, 43); +} +QHeaderView::section:horizontal +{ + border: 1px solid rgb(33, 37, 43); + background-color: rgb(33, 37, 43); + padding: 3p, 0px; + border-top-left-radius: 7px; + border-top-right-radius: 7px; +} +QHeaderView::section:vertical +{ + border: 1px solid rgb(33, 37, 43); + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} + +QHeaderView .QScrollBar:horizontal { + border: none; + background: rgb(52, 59, 72); + height: 9px; + margin: 0px 21px 0 21px; + border-radius: 0px; +} +QHeaderView .QScrollBar:vertical { + border: none; + background: rgb(52, 59, 72); + width: 9px; + margin: 21px 0 21px 0; + border-radius: 0px; + } +QHeaderView .QScrollBar::handle:horizontal { + border-radius: 3.5px; +} +QHeaderView .QScrollBar:vertical { + border-radius: 3.5px; + } +QTableView .QTableCornerButton::section { + background: transparent; + border: none; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +LineEdit */ +QLineEdit { + background-color: rgb(33, 37, 43); + border-radius: 5px; + border: 2px solid rgb(33, 37, 43); + padding-left: 5px; + selection-color: rgb(255, 255, 255); + selection-background-color: rgb(255, 121, 198); +} +QLineEdit:hover { + border: 2px solid rgb(64, 71, 88); +} +QLineEdit:focus { + border: 2px solid rgb(91, 101, 124); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +SpinBox */ +QSpinBox { + background-color: rgb(33, 37, 43); + border-radius: 5px; + border: 2px solid rgb(33, 37, 43); + padding-left: 5px; + selection-color: rgb(255, 255, 255); + selection-background-color: rgb(255, 121, 198); +} +QSpinBox:hover { + border: 2px solid rgb(64, 71, 88); +} +QSpinBox:focus { + border: 2px solid rgb(91, 101, 124); +} +QSpinBox::up-button { + subcontrol-origin: padding; + subcontrol-position: top left; + background-color: rgb(33, 37, 43); + width: 25px; + margin: 0px; + border: none; + border-right: 3px solid rgba(39, 44, 54, 150) ; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +QSpinBox::up-button:pressed { + background-color: rgba(39, 44, 54, 150); +} +QSpinBox::up-arrow { + image: url(:/icons/images/icons/chevron-miniup.png); +} +QSpinBox::down-button { + subcontrol-origin: padding; + subcontrol-position: bottom left; + background-color: rgb(33, 37, 43); + width: 25px; + margin: 0px; + border: none; + border-right: 3px solid rgba(39, 44, 54, 150) ; + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; +} +QSpinBox::down-button:pressed { + background-color: rgba(39, 44, 54, 150); +} +QSpinBox::down-arrow { + image: url(:/icons/images/icons/chevron-minidown.png); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +PlainTextEdit */ +QPlainTextEdit { + background-color: rgb(27, 29, 35); + border-radius: 5px; + padding: 10px; + selection-color: rgb(255, 255, 255); + selection-background-color: rgb(255, 121, 198); +} +QPlainTextEdit QScrollBar:vertical { + width: 8px; + } +QPlainTextEdit QScrollBar:horizontal { + height: 8px; + } +QPlainTextEdit:hover { + border: 2px solid rgb(64, 71, 88); +} +QPlainTextEdit:focus { + border: 2px solid rgb(91, 101, 124); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +ScrollBars */ +QScrollBar:horizontal { + border: none; + background: rgb(52, 59, 72); + height: 8px; + margin: 0px 21px 0 21px; + border-radius: 0px; +} +QScrollBar::handle:horizontal { + background: rgb(189, 147, 249); + min-width: 25px; + border-radius: 4px +} +QScrollBar::add-line:horizontal { + border: none; + background: rgb(55, 63, 77); + width: 20px; + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; + subcontrol-position: right; + subcontrol-origin: margin; +} +QScrollBar::sub-line:horizontal { + border: none; + background: rgb(55, 63, 77); + width: 20px; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; + subcontrol-position: left; + subcontrol-origin: margin; +} +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal +{ + background: none; +} +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal +{ + background: none; +} + QScrollBar:vertical { + border: none; + background: rgb(52, 59, 72); + width: 8px; + margin: 21px 0 21px 0; + border-radius: 0px; + } + QScrollBar::handle:vertical { + background: rgb(189, 147, 249); + min-height: 25px; + border-radius: 4px + } + QScrollBar::add-line:vertical { + border: none; + background: rgb(55, 63, 77); + height: 20px; + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + QScrollBar::sub-line:vertical { + border: none; + background: rgb(55, 63, 77); + height: 20px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + subcontrol-position: top; + subcontrol-origin: margin; + } + QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; + } + + QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; + } + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +CheckBox */ +QCheckBox::indicator { + border: 3px solid rgb(52, 59, 72); + width: 15px; + height: 15px; + border-radius: 10px; + background: rgb(44, 49, 60); +} +QCheckBox::indicator:hover { + border: 3px solid rgb(58, 66, 81); +} +QCheckBox::indicator:checked { + background: 3px solid rgb(52, 59, 72); + border: 3px solid rgb(52, 59, 72); + background-image: url(:/icons/images/icons/cil-check-alt.png); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +RadioButton */ +QRadioButton::indicator { + border: 3px solid rgb(52, 59, 72); + width: 15px; + height: 15px; + border-radius: 10px; + background: rgb(44, 49, 60); +} +QRadioButton::indicator:hover { + border: 3px solid rgb(58, 66, 81); +} +QRadioButton::indicator:checked { + background: 3px solid rgb(94, 106, 130); + border: 3px solid rgb(52, 59, 72); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +ComboBox */ +QComboBox{ + background-color: rgb(33, 37, 43); + /*background-color: rgb(27, 29, 35);*/ + border-radius: 5px; + border: 2px solid rgb(33, 37, 43); + padding: 5px; + padding-left: 5px; +} +QComboBox:hover{ + border: 2px solid rgb(64, 71, 88); +} +QComboBox:focus { + border: 2px solid rgb(91, 101, 124); +} +QComboBox::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 25px; + border-left-width: 3px; + border-left-color: rgba(39, 44, 54, 150); + border-left-style: solid; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + } +QComboBox::down-arrow { + image: url(:/icons/images/icons/chevron-down.png); +} +QComboBox::drop-down:pressed { + background-color: rgba(39, 44, 54, 150); + } +QComboBox QAbstractItemView { + outline: 0px; + border: 2px solid rgb(33, 37, 43); + border-radius: 5px; + color: rgb(255, 121, 198); + background-color: rgb(33, 37, 43); + selection-background-color: rgb(52, 59, 72); + margin-top: 5px; +/* + padding-top:5px; + padding-bottom:5px; +*/ +} +QComboBox QAbstractItemView::item { + border-radius: 5px; + height: 25px; +} +QComboBox QAbstractItemView::item:hover { + background-color: rgb(52, 59, 72); +} +QComboBox QAbstractItemView::item:selected { + color:rgb(255,255,255); + background-color: rgb(52, 59, 72); +} +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Sliders */ +QSlider::groove:horizontal { + border-radius: 5px; + height: 10px; + margin: 0px; + background-color: rgb(52, 59, 72); +} +QSlider::groove:horizontal:hover { + background-color: rgb(55, 62, 76); +} +QSlider::handle:horizontal { + background-color: rgb(189, 147, 249); + border: none; + height: 10px; + width: 10px; + margin: 0px; + border-radius: 5px; +} +QSlider::handle:horizontal:hover { + background-color: rgb(195, 155, 255); +} +QSlider::handle:horizontal:pressed { + background-color: rgb(255, 121, 198); +} + +QSlider::groove:vertical { + border-radius: 5px; + width: 10px; + margin: 0px; + background-color: rgb(52, 59, 72); +} +QSlider::groove:vertical:hover { + background-color: rgb(55, 62, 76); +} +QSlider::handle:vertical { + background-color: rgb(189, 147, 249); + border: none; + height: 10px; + width: 10px; + margin: 0px; + border-radius: 5px; +} +QSlider::handle:vertical:hover { + background-color: rgb(195, 155, 255); +} +QSlider::handle:vertical:pressed { + background-color: rgb(255, 121, 198); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +CommandLinkButton */ +QCommandLinkButton { + color: rgb(255, 121, 198); + border-radius: 5px; + padding: 5px; + color: rgb(255, 170, 255); +} +QCommandLinkButton:hover { + color: rgb(255, 170, 255); + background-color: rgb(44, 49, 60); +} +QCommandLinkButton:pressed { + color: rgb(189, 147, 249); + background-color: rgb(52, 58, 71); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +ListView */ +QListView { + background-color: rgb(33, 37, 43); + border-radius: 5px; + border: 2px solid rgb(33, 37, 43); + outline: none; + alternate-background-color:yellow; +} +QListView::item { + height: 30px; + border-radius: 5px; +} +QListView::item:hover { + background-color: rgb(52, 59, 72); +} +QListView::item:selected { + color:rgb(255,255,255); + background-color: rgb(52, 59, 72); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +TextEdit */ +QTextEdit { + background-color: rgb(33, 37, 43); + border-radius: 5px; + border: 2px solid rgb(33, 37, 43); + padding-left: 10px; + selection-color: rgb(255, 255, 255); + selection-background-color: rgb(255, 121, 198); +} + +QTextEdit:hover { + border: 2px solid rgb(64, 71, 88); +} +QTextEdit:focus { + border: 2px solid rgb(91, 101, 124); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Button */ + +#pagesContainer QPushButton { + margin: 0px; + background-origin: content; + background-position: left; + background-repeat: no-repeat; + border: 2px solid rgb(52, 59, 72); + border-radius: 5px; + background-color: rgb(52, 59, 72); +} +#pagesContainer QPushButton:hover { + background-color: rgb(57, 65, 80); + border: 2px solid rgb(61, 70, 86); +} +#pagesContainer QPushButton:pressed { + background-color: rgb(35, 40, 49); + border: 2px solid rgb(43, 50, 61); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +StackedWidget */ + +#page_home, #page_connection, #page_divider, #page_valvedata { + background-color: transparent; +} + + + + + 0 + + + 10 + + + 10 + + + 10 + + + 10 + + + + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 60 + 0 + + + + + 60 + 16777215 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 50 + + + + + 16777215 + 50 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + + 10 + 5 + 42 + 42 + + + + + 42 + 42 + + + + + 42 + 42 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + + + 70 + 8 + 160 + 20 + + + + + Segoe UI Semibold + 12 + false + false + + + + MiaowSim + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + 70 + 27 + 160 + 16 + + + + + 16777215 + 16 + + + + + Segoe UI + 8 + false + false + + + + A lower machine server + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 16777215 + 45 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 0 + 50 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Qt::LeftToRight + + + background-image: url(:/icons/images/icons/menu.png); + + + Hide + + + + + + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 0 + 50 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Qt::LeftToRight + + + background-image: url(:/icons/images/icons/home.png); + + + Home + + + + + + + true + + + + 0 + 0 + + + + + 0 + 50 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Qt::LeftToRight + + + background-image: url(:/icons/images/icons/sliders.png); + + + Connection + + + + + + + + 0 + 0 + + + + + 0 + 50 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Qt::LeftToRight + + + background-image: url(:/icons/images/icons/aperture.png); + + + Divider + + + + + + + true + + + + 0 + 0 + + + + + 0 + 50 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Qt::LeftToRight + + + background-image: url(:/icons/images/icons/image.png); + + + Valve Data + + + + + + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 0 + 50 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Qt::LeftToRight + + + background-image: url(:/icons/images/icons/log-out.png); + + + Exit + + + + + + + + + + + + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 50 + + + + + 16777215 + 50 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 10 + + + 0 + + + + + + 0 + 0 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 16777215 + 45 + + + + + Segoe UI + 10 + false + false + + + + <html><head/><body><p>MiaowSim - Uppermachine Simulator</p></body></html> + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + + + + 0 + 28 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 5 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 28 + 28 + + + + + 28 + 28 + + + + PointingHandCursor + + + Minimize + + + + + + + :/icons/images/icons/minimize.png:/icons/images/icons/minimize.png + + + + 20 + 20 + + + + + + + + + 28 + 28 + + + + + 28 + 28 + + + + + Segoe UI + 10 + false + false + PreferDefault + + + + PointingHandCursor + + + Maximize + + + + + + + :/icons/images/icons/maximize.png:/icons/images/icons/maximize.png + + + + 20 + 20 + + + + + + + + + 28 + 28 + + + + + 28 + 28 + + + + PointingHandCursor + + + Close + + + + + + + :/icons/images/icons/close.png:/icons/images/icons/close.png + + + + 20 + 20 + + + + + + + + + + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 10 + + + 0 + + + 10 + + + 10 + + + + + 2 + + + + background-image: url(:/images/images/images/PyDracula_vertical.png); +background-position: center; +background-repeat: no-repeat; + + + + + + + + + 10 + + + 10 + + + 5 + + + 10 + + + 10 + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 110 + + + + + 16777215 + 110 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 16777215 + 35 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + Segoe UI + 10 + false + false + + + + + + + PROFILE + + + + + + + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 3 + + + + + + + + 0 + 30 + + + + + + + ./settings.json + + + true + + + Default to ./profile.json + + + + + + + + 0 + 0 + + + + + 75 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + + + + Load... + + + + :/icons/images/icons/cil-folder-open.png:/icons/images/icons/cil-folder-open.png + + + + + + + + 0 + 0 + + + + + 75 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + + + + Save... + + + + :/icons/images/icons/save.png:/icons/images/icons/save.png + + + + + + + + + + 0 + 0 + + + + + 0 + 15 + + + + + 16777215 + 15 + + + + color: rgb(113, 126, 149); + + + 1 + + + Load or save the specification + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + + + + + + + + + + 16777215 + 35 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + Segoe UI + 10 + false + false + + + + + + + SPECIFICATION + + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + 25 + + + + + 10 + + + + + + 0 + 0 + + + + + 0 + 26 + + + + + 16777215 + 26 + + + + color: rgb(113, 126, 149); + + + 1 + + + Server IP + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + true + + + + 0 + 0 + + + + + 0 + 34 + + + + + 16777215 + 34 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + + + + + 16 + 16 + + + + + + + + + 0 + 0 + + + + + 0 + 26 + + + + + 16777215 + 26 + + + + color: rgb(113, 126, 149); + + + 1 + + + Server Port + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 34 + + + + 1 + + + 65535 + + + 13452 + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + false + + + + 20 + + + + + + + + 0 + 0 + + + + + Segoe UI + 10 + false + false + + + + + + + MANUAL + + + + + + + 10 + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + BB + + + + BB + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 16777215 + 30 + + + + true + + + FF + + + + FF + + + + + + + + + 0 + 0 + + + + color: rgb(113, 126, 149); + + + Data (Hex) + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + color: rgb(113, 126, 149); + + + Start (Hex) + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + AA + + + + AA + + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Add to custom commands + + + QPushButton { + background-image: url(:/icons/images/icons/plus.png); + background-position: center center; +} + + + + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + AA + + + + AA + + + + + + + + + 0 + 0 + + + + color: rgb(113, 126, 149); + + + Chk (Hex) + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + + BB + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 16777215 + 30 + + + + true + + + FF + + + + FF + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Send + + + QPushButton { + background-image: url(:/icons/images/icons/arrow-right.png); + background-position: center center; + border-style: none; +} + + + + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Send + + + QPushButton { + background-image: url(:/icons/images/icons/arrow-right.png); + background-position: center center; + border-style: none; +} + + + + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Add to custom commands + + + QPushButton { + background-image: url(:/icons/images/icons/plus.png); + background-position: center center; +} + + + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + BB + + + + BB + + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + true + + + + PointingHandCursor + + + Add to custom commands + + + QPushButton { + background-image: url(:/icons/images/icons/plus.png); + background-position: center center; +} + + + + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + + AA + + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + + AA + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Send + + + QPushButton { + background-image: url(:/icons/images/icons/arrow-right.png); + background-position: center center; + border-style: none; +} + + + + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + + BB + + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Add to custom commands + + + QPushButton { + background-image: url(:/icons/images/icons/plus.png); + background-position: center center; +} + + + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 16777215 + 30 + + + + true + + + FF + + + + FF + + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Send + + + QPushButton { + background-image: url(:/icons/images/icons/arrow-right.png); + background-position: center center; + border-style: none; +} + + + + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Send + + + QPushButton { + background-image: url(:/icons/images/icons/arrow-right.png); + background-position: center center; + border-style: none; +} + + + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 16777215 + 30 + + + + true + + + FF + + + + FF + + + + + + + + + 0 + 0 + + + + color: rgb(113, 126, 149); + + + End (Hex) + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + + BB + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 16777215 + 30 + + + + true + + + FF + + + + FF + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + + AA + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 25 + 30 + + + + + 25 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + Add to custom commands + + + QPushButton { + background-image: url(:/icons/images/icons/plus.png); + background-position: center center; +} + + + + + + + + + + + 0 + 0 + + + + + 55 + 30 + + + + + 50 + 30 + + + + true + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + 0 + + + + st + + + + + sp + + + + + te + + + + + + + + + 0 + 0 + + + + color: rgb(113, 126, 149); + + + Cmd (Str) + + + + + + + + 0 + 0 + + + + color: rgb(113, 126, 149); + + + Len (Dec) + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + sp + + + 1 + + + + st + + + + + sp + + + + + te + + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + te + + + 2 + + + + st + + + + + sp + + + + + te + + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + false + + + true + + + 2 + + + + st + + + + + sp + + + + + te + + + + + + + + + 0 + 0 + + + + + 64 + 30 + + + + + 70 + 30 + + + + true + + + 2 + + + + st + + + + + sp + + + + + te + + + + + + + + + + + 0 + 0 + + + + + Segoe UI + 10 + false + false + + + + QLabel { + margin-top: 10px; +} + + + PRESET + + + + + + + + + 10 + + + + + + + 20 + + + + + 0 + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 30 + 30 + + + + background-image: url(:/icons/images/icons/chevron-left.png); +background-position: center center; +border-top-right-radius: 0px; +border-bottom-right-radius: 0px; + + + + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + border-radius: 0px; + + + 0 + + + true + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + background-image: url(:/icons/images/icons/chevron-right.png); +background-position: center center; +border-top-left-radius: 0px; +border-bottom-left-radius: 0px; + + + + + + + + + + + 0 + 0 + + + + + 50 + 30 + + + + + 16777215 + 30 + + + + margin: 0px 0px 0px 15px; +border-top-right-radius: 0px; +border-bottom-right-radius: 0px; + + + Name + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 30 + 30 + + + + QPushButton { + background-image: url(:/icons/images/icons/plus.png); + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + background-position: center center; + background-color: rgb(54,106,206); + border-style: none; +} +QPushButton:hover { + background-color: rgb(48,95,185); +} +QPushButton:pressed { + background-color: rgb(45,89,173); +} +QPushButton:disabled { + background-color: rgb(52, 59, 72); +} + + + + + + + + + + + + 25 + + + + + 0 + + + 10 + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + QSpinBox { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; + background-image: url(:/icons/images/icons/camera.png); + background-position: center right; + background-repeat: no-repeat; +} + + + 2147483647 + + + 100 + + + 100 + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + QPushButton { +/* + background-image: url(:/icons/images/icons/camera.png); + background-origin: margin; + background-position: center left; + padding-left: 24px; +*/ + margin-left: -3px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + +} + + + A + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + QPushButton { +/* + background-image: url(:/icons/images/icons/camera.png); + background-origin: margin; + background-position: center left; + padding-left: 24px; +*/ + margin-left: -3px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + +} + + + B + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + QSpinBox { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; + background-image: url(:/icons/images/icons/camera.png); + background-position: center right; + background-repeat: no-repeat; +} + + + 2147483647 + + + 100 + + + 100 + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + QPushButton { +/* + background-image: url(:/icons/images/icons/camera.png); + background-origin: margin; + background-position: center left; + padding-left: 24px; +*/ + margin-left: -3px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + +} + + + C + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + QSpinBox { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; + background-image: url(:/icons/images/icons/camera.png); + background-position: center right; + background-repeat: no-repeat; +} + + + 2147483647 + + + 100 + + + 100 + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + QPushButton { +/* + background-image: url(:/icons/images/icons/camera.png); + background-origin: margin; + background-position: center left; + padding-left: 24px; +*/ + margin-left: -3px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + +} + + + D + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + QSpinBox { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; + background-image: url(:/icons/images/icons/camera.png); + background-position: center right; + background-repeat: no-repeat; +} + + + 2147483647 + + + 100 + + + 100 + + + + + + + + + 10 + + + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + QSpinBox { + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; + background-image: url(:/icons/images/icons/wind.png); + background-position: center right; + background-repeat: no-repeat; +} + + + 2147483647 + + + 100 + + + 100 + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + QPushButton { +/* + background-image: url(:/icons/images/icons/camera.png); + background-origin: margin; + background-position: center left; + padding-left: 24px; +*/ + margin-left: -3px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + +} + + + V + + + + + + + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 75 + 30 + + + + + 16777215 + 30 + + + + QComboBox { + border-radius: 5px; + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; + margin-right: -1px; + padding-left: 10px; +} + +QComboBox::drop-down { + subcontrol-position: top left; + border: none; + border-right: 3px solid rgba(39, 44, 54, 150); + border-radius: 0px; + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; + } + + + true + + + A + + + + A + + + + + B + + + + + C + + + + + D + + + + + + + + + 0 + 0 + + + + + 40 + 30 + + + + + 80 + 30 + + + + border-radius: 0px; +background-image: url(:/icons/images/icons/link-2.png); +background-position: center right; +background-repeat: no-repeat; + + + 1000 + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + QPushButton { +/* + background-image: url(:/icons/images/icons/camera.png); + background-origin: margin; + background-position: center left; + padding-left: 24px; +*/ + margin-left: -3px; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + +} + + + T + + + + + + + + + 10 + + + 0 + + + + + + 0 + 0 + + + + + 0 + 30 + + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + Qt::Horizontal + + + + + + + + + 10 + + + 0 + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + true + + + + PointingHandCursor + + + Restore dividers + + + QPushButton { + background-image: url(:/icons/images/icons/rotate-ccw.png); + background-position: center center; +} + + + + + + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + true + + + + PointingHandCursor + + + Fill random values + + + QPushButton { + background-image: url(:/icons/images/icons/shuffle.png); + background-position: center center; +} + + + + + + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + true + + + + PointingHandCursor + + + Send all values + + + QPushButton { + background-image: url(:/icons/images/icons/arrow-right.png); + background-position: center center; + background-color: rgb(54,106,206); + border-style: none; +} +QPushButton:hover { + background-color: rgb(48,95,185); +} +QPushButton:pressed { + background-color: rgb(45,89,173); +} +QPushButton:disabled { + background-color: rgb(52, 59, 72); +} + + + + + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + 6 + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + + 20 + + + + + + 0 + 0 + + + + + Segoe UI + 10 + false + false + + + + + + + PACKETS + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + + + + 0 + + + + + + 0 + 0 + + + + + 90 + 30 + + + + + 90 + 30 + + + + + Segoe UI + 10 + false + false + true + + + + PointingHandCursor + + + QPushButton { + background-color: rgb(87,150,92); + background-origin: border; + background-image: url(:/icons/images/icons/camera-and-down.png); + padding-left: 6px; + border-top-right-radius: 0px; + border-bottom-right-radius: 0px; + border: none; + margin-right: -1px; +} +QPushButton:hover { + background-color: rgb(78,135,82); +} +QPushButton:pressed { + background-color: rgb(73,126,77); +} +QPushButton:disabled { + background-color: rgb(52, 59, 72); +} + + + Start + + + + + + + + 0 + 0 + + + + + 1 + 30 + + + + + 1 + 30 + + + + QWidget { + background-color: rgb(87,150,92); + background-image: url(:/icons/images/icons/30-height-sep.png); + border: none; + border-top: 5px solid rgb(87,150,92); + border-bottom: 5px solid rgb(87,150,92); + margin-right: -1px; +} +QWidget:disabled { + background-color: rgb(52, 59, 72); + border-top: 5px solid rgb(52, 59, 72); + border-bottom: 5px solid rgb(52, 59, 72); +} + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + true + + + + PointingHandCursor + + + QPushButton { + background-color: rgb(87,150,92); + background-origin: border; + border-style: none; + background-image: url(:/icons/images/icons/play.png); + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + border: none; +} +QPushButton:hover { + background-color: rgb(78,135,82); +} +QPushButton:pressed { + background-color: rgb(73,126,77); +} +QPushButton:disabled { + background-color: rgb(52, 59, 72); +} + + + + + + + + + + + 10 + 0 + + + + + + + + + 0 + 0 + + + + + 30 + 30 + + + + + 30 + 30 + + + + + Segoe UI + 10 + false + false + true + + + + PointingHandCursor + + + QPushButton { + background-color: rgb(235,113,113); + border-style: none; + background-image: url(:/icons/images/icons/square.png); +} +QPushButton:hover { + background-color: rgb(227,82,82); +} +QPushButton:pressed { + background-color: rgb(201,79,79); +} +QPushButton:disabled { + background-color: rgb(52, 59, 72); +} + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + + 10 + + + 5 + + + 10 + + + 10 + + + + + + + + Segoe UI + 10 + false + false + + + + + + + CAPTURED DATA + + + + + + + + 0 + 0 + + + + + 75 + 30 + + + + + 100 + 16777215 + + + + + Segoe UI + 10 + false + false + + + + PointingHandCursor + + + background-color: rgb(52, 59, 72); + + + Export... + + + + :/icons/images/icons/cil-save.png:/icons/images/icons/cil-save.png + + + + + + + + + + + + + + + + + + + + + + + 0 + 22 + + + + + 16777215 + 22 + + + + QFrame::NoFrame + + + QFrame::Raised + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16 + + + + + Segoe UI + -1 + false + false + + + + QLabel { + text-align: right; + padding-right:0px; +} + + + 0.0.0.0:0 + + + + + + + + 0 + 0 + + + + + 25 + 16777215 + + + + background-image: url(:/icons/images/icons/link.png); +background-repeat: no-repeat; +background-position: center center + + + + + + + + + + QLabel { + padding-left:0px; +} + + + 0.0.0.0:0 + + + + + + + + 0 + 0 + + + + + 16777215 + 16 + + + + + Segoe UI + -1 + false + false + + + + + + + + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 0 + 0 + + + + + 12 + 0 + + + + + 12 + 16777215 + + + + QLabel { + background-image: url(:/icons/images/icons/chevron-statusbarup.png); + background-repeat:no-repeat; + background-position: center center; +} + + + + + + + + + + QLabel { +padding-left:0px; +} + + + + 0 bytes | 0 packets + + + + + + + + 0 + 0 + + + + + 12 + 0 + + + + + 12 + 16777215 + + + + QLabel { + background-image: url(:/icons/images/icons/chevron-statusbardown.png); + background-repeat:no-repeat; + background-position: center center; +} + + + + + + + + + + QLabel { +padding-left:0px; +} + + + + 0 bytes | 0 packets + + + + + + + + 0 + 0 + + + + + 16777215 + 16 + + + + + Segoe UI + -1 + false + false + + + + v1.0 + + + Qt::PlainText + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + + + 20 + 0 + + + + + 20 + 16777215 + + + + background-image: url(:/icons/images/icons/cil-size-grip.png); +background-repeat: no-repeat; +background-position: right bottom + + + QFrame::NoFrame + + + QFrame::Raised + + + + + + + + + + + + + + + + + + + + toggleButton + btn_home + btn_connection + btn_divider + btn_valvedata + cb_start_1 + le_length_1 + cb_command_1 + cb_data_1 + le_check_1 + cb_end_1 + pb_preset_1 + pb_send_1 + cb_start_2 + le_length_2 + cb_command_2 + cb_data_2 + le_check_2 + cb_end_2 + pb_preset_2 + pb_send_2 + cb_start_3 + le_length_3 + cb_command_3 + cb_data_3 + le_check_3 + cb_end_3 + pb_preset_3 + pb_send_3 + cb_start_4 + le_length_4 + cb_command_4 + cb_data_4 + le_check_4 + cb_end_4 + pb_preset_4 + pb_send_4 + cb_start_5 + le_length_5 + cb_command_5 + cb_data_5 + le_check_5 + cb_end_5 + pb_preset_5 + pb_send_5 + le_profile_file + minimizeAppBtn + pb_load_profile + tableView + pb_save_profile + cb_server_ip + pb_export_table + maximizeRestoreAppBtn + closeAppBtn + + + + + + diff --git a/source/sim_uppermachine/modules/__init__.py b/source/sim_uppermachine/modules/__init__.py new file mode 100644 index 0000000..a593cd6 --- /dev/null +++ b/source/sim_uppermachine/modules/__init__.py @@ -0,0 +1,29 @@ +""" +BY: Miaow, Wanderson M.Pimenta +PROJECT MADE WITH: Qt Designer and PySide6 +V: 1.0.0 + +This project can be used freely for all uses, as long as they maintain the +respective credits only in the Python scripts, any information in the visual +interface (GUI) can be modified without any implication. + +There are limitations on Qt licenses if you want to use your products +commercially, I recommend reading them on the official website: +https://doc.qt.io/qtforpython/licenses.html +""" + +# from PySide6.QtCore import * +# from PySide6.QtGui import * +# from PySide6.QtWidgets import * + +# GUI FILE +from .ui_main import Ui_MainWindow + +# APP SETTINGS +from .app_settings import Settings + +# IMPORT FUNCTIONS +from .ui_functions import UIFunctions + +# APP FUNCTIONS +from .app_functions import * diff --git a/source/sim_uppermachine/modules/app_functions.py b/source/sim_uppermachine/modules/app_functions.py new file mode 100644 index 0000000..a42bece --- /dev/null +++ b/source/sim_uppermachine/modules/app_functions.py @@ -0,0 +1,37 @@ +""" +BY: Miaow, Wanderson M.Pimenta +PROJECT MADE WITH: Qt Designer and PySide6 +V: 1.0.0 + +This project can be used freely for all uses, as long as they maintain the +respective credits only in the Python scripts, any information in the visual +interface (GUI) can be modified without any implication. + +There are limitations on Qt licenses if you want to use your products +commercially, I recommend reading them on the official website: +https://doc.qt.io/qtforpython/licenses.html +""" +from main import MainWindow +from modules.app_settings import Settings +from PySide6.QtCore import QAbstractTableModel, Qt + + +class AppFunctions(MainWindow): + def set_theme_hack(self): + Settings.BTN_LEFT_BOX_COLOR = "background-color: #495474;" + Settings.BTN_RIGHT_BOX_COLOR = "background-color: #495474;" + Settings.MENU_SELECTED_STYLESHEET = MENU_SELECTED_STYLESHEET = """ + border-left: 22px solid qlineargradient(spread:pad, x1:0.034, y1:0, x2:0.216, y2:0, stop:0.499 rgba(255, 121, 198, 255), stop:0.5 rgba(85, 170, 255, 0)); + background-color: #566388; + """ + # SET MANUAL STYLES + # self.ui.lineEdit.setStyleSheet("background-color: #6272a4;") + # self.ui.pushButton.setStyleSheet("background-color: #6272a4;") + # self.ui.plainTextEdit.setStyleSheet("background-color: #6272a4;") + # self.ui.tableWidget.setStyleSheet("QScrollBar:vertical { background: #6272a4; } QScrollBar:horizontal { background: #6272a4; }") + # self.ui.scrollArea.setStyleSheet("QScrollBar:vertical { background: #6272a4; } QScrollBar:horizontal { background: #6272a4; }") + # self.ui.comboBox.setStyleSheet("background-color: #6272a4;") + # self.ui.horizontalScrollBar.setStyleSheet("background-color: #6272a4;") + # self.ui.verticalScrollBar.setStyleSheet("background-color: #6272a4;") + # self.ui.commandLinkButton.setStyleSheet("color: #ff79c6;") + diff --git a/source/sim_uppermachine/modules/app_settings.py b/source/sim_uppermachine/modules/app_settings.py new file mode 100644 index 0000000..3a03d2f --- /dev/null +++ b/source/sim_uppermachine/modules/app_settings.py @@ -0,0 +1,31 @@ +""" +BY: Wanderson M.Pimenta +PROJECT MADE WITH: Qt Designer and PySide6 +V: 1.0.0 + +This project can be used freely for all uses, as long as they maintain the +respective credits only in the Python scripts, any information in the visual +interface (GUI) can be modified without any implication. + +There are limitations on Qt licenses if you want to use your products +commercially, I recommend reading them on the official website: +https://doc.qt.io/qtforpython/licenses.html +""" +class Settings(): + # APP SETTINGS + # /////////////////////////////////////////////////////////////// + ENABLE_CUSTOM_TITLE_BAR = True + MENU_WIDTH = 180 + LEFT_BOX_WIDTH = 240 + RIGHT_BOX_WIDTH = 240 + TIME_ANIMATION = 500 + + # BTNS LEFT AND RIGHT BOX COLORS + BTN_LEFT_BOX_COLOR = "background-color: rgb(44, 49, 58);" + BTN_RIGHT_BOX_COLOR = "background-color: #ff79c6;" + + # MENU SELECTED STYLESHEET + MENU_SELECTED_STYLESHEET = """ + border-left: 22px solid qlineargradient(spread:pad, x1:0.034, y1:0, x2:0.216, y2:0, stop:0.499 rgba(255, 121, 198, 255), stop:0.5 rgba(85, 170, 255, 0)); + background-color: rgb(40, 44, 52); + """ diff --git a/source/sim_uppermachine/modules/list_model.py b/source/sim_uppermachine/modules/list_model.py new file mode 100644 index 0000000..31da058 --- /dev/null +++ b/source/sim_uppermachine/modules/list_model.py @@ -0,0 +1,22 @@ +from binascii import hexlify +from typing import List + +from PySide6.QtCore import QAbstractListModel, Qt + + +class PacketListModel(QAbstractListModel): + def __init__(self, parent=None): + super().__init__(parent) + self._data = [] + + def rowCount(self, parent): + return len(self._data) + + def append(self, obj): + self._data.append(obj) + + def data(self, index, role): + if role == Qt.DisplayRole: + return self._data[index.row()] + else: + return None diff --git a/source/sim_uppermachine/modules/protocol.py b/source/sim_uppermachine/modules/protocol.py new file mode 100644 index 0000000..39c92f1 --- /dev/null +++ b/source/sim_uppermachine/modules/protocol.py @@ -0,0 +1,83 @@ +from typing import Optional, Union +from crcmod import mkCrcFun +import struct + + +class Protocol(object): + calc_crc16 = mkCrcFun(0x18005, rev=True, initCrc=0xffff, xorOut=0x0000) + + def __init__(self, cmd_data_bytes: Optional[bytes] = None, cmd: Union[bytes, str, None] = None, + data: Optional[bytes] = None, start: Union[bytes, str] = b'\xaa', + end: Union[bytes, str] = b'\xbb'): + assert (cmd_data_bytes is not None and cmd is None and data is None) or ( + cmd_data_bytes is None and cmd is not None and data is not None), AssertionError( + "choose cmd_data_bytes or cmd/data") + + if cmd is not None: + self.cmd_bytes = cmd.encode("ascii") if isinstance(cmd, str) else cmd + self.data_bytes = data + else: + self.cmd_bytes = cmd_data_bytes[:2] + self.data_bytes = cmd_data_bytes[2:] + + self.start_bytes = start + self.end_bytes = end + self._calc_datagram() + + def _calc_datagram(self) -> bytes: + self.length_bytes = struct.pack(">L", len(self.cmd_bytes) + len(self.data_bytes)) + length_cmd_data_bytes = self.length_bytes + self.cmd_bytes + self.data_bytes + self.check_bytes = struct.pack(">H", Protocol.calc_crc16(length_cmd_data_bytes)) + self.datagram = self.start_bytes + length_cmd_data_bytes + self.check_bytes + self.end_bytes + + def get_datagram(self): + return self.datagram + + def get_length_bytes(self) -> bytes: + return self.length_bytes + + def get_start_bytes(self) -> bytes: + return self.start_bytes + + def get_end_bytes(self) -> bytes: + return self.end_bytes + + def get_command_bytes(self) -> bytes: + return self.cmd_bytes + + def get_check_bytes(self) -> bytes: + return self.check_bytes + + def get_data_bytes(self) -> bytes: + return self.data_bytes + + def get_length(self) -> int: + return len(self.cmd_bytes) + len(self.data_bytes) + + def __len__(self): + return len(self.datagram) + + def get_data(self) -> int: + try: + return int(self.data_bytes.decode("ascii")) + except BaseException as e: + return -1 + + def get_command(self) -> str: + return self.cmd_bytes.decode("ascii") + + def print_summary(self): + print(str(self.get_datagram()) + "\n") + print("total bytes:", len(p)) + print("start:", self.get_start_bytes()) + print("length:", self.get_length()) + print("command:", self.get_command()) + print("data:", p.get_data()) + print("check:", p.get_check_bytes()) + print("end:", p.get_end_bytes()) + + + +if __name__ == '__main__': + p = Protocol(cmd_data_bytes=b'st\xff') + p.print_summary() \ No newline at end of file diff --git a/source/sim_uppermachine/modules/resources_rc.py b/source/sim_uppermachine/modules/resources_rc.py new file mode 100644 index 0000000..4ae868f --- /dev/null +++ b/source/sim_uppermachine/modules/resources_rc.py @@ -0,0 +1,5953 @@ +# Resource object code (Python 3) +# Created by: object code +# Created by: The Resource Compiler for Qt version 6.5.0 +# WARNING! All changes made in this file will be lost! + +from PySide6 import QtCore + +qt_resource_data = b"\ +\x00\x00\x11T\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00(\x00\x00\x00(\x08\x06\x00\x00\x00\x8c\xfe\xb8m\ +\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\ +\x00\x00\x0aIiCCPsRGB IEC\ +61966-2.1\x00\x00H\x89\x9dSw\ +X\x93\xf7\x16>\xdf\xf7e\x0fVB\xd8\xf0\xb1\x97l\ +\x81\x00\x22#\xac\x08\xc8\x10Y\xa2\x10\x92\x00a\x84\x10\ +\x12@\xc5\x85\x88\x0aV\x14\x15\x11\x9cHU\xc4\x82\xd5\ +\x0aH\x9d\x88\xe2\xa0(\xb8gA\x8a\x88Z\x8bU\x5c\ +8\xee\x1f\xdc\xa7\xb5}z\xef\xed\xed\xfb\xd7\xfb\xbc\xe7\ +\x9c\xe7\xfc\xcey\xcf\x0f\x80\x11\x12&\x91\xe6\xa2j\x00\ +9R\x85<:\xd8\x1f\x8fOH\xc4\xc9\xbd\x80\x02\x15\ +H\xe0\x04 \x10\xe6\xcb\xc2g\x05\xc5\x00\x00\xf0\x03y\ +x~t\xb0?\xfc\x01\xafo\x00\x02\x00p\xd5.$\ +\x12\xc7\xe1\xff\x83\xbaP&W\x00 \x91\x00\xe0\x22\x12\ +\xe7\x0b\x01\x90R\x00\xc8.T\xc8\x14\x00\xc8\x18\x00\xb0\ +S\xb3d\x0a\x00\x94\x00\x00ly|B\x22\x00\xaa\x0d\ +\x00\xec\xf4I>\x05\x00\xd8\xa9\x93\xdc\x17\x00\xd8\xa2\x1c\ +\xa9\x08\x00\x8d\x01\x00\x99(G$\x02@\xbb\x00`U\ +\x81R,\x02\xc0\xc2\x00\xa0\xac@\x22.\x04\xc0\xae\x01\ +\x80Y\xb62G\x02\x80\xbd\x05\x00v\x8eX\x90\x0f@\ +`\x00\x80\x99B,\xcc\x00 8\x02\x00C\x1e\x13\xcd\ +\x03 L\x03\xa00\xd2\xbf\xe0\xa9_p\x85\xb8H\x01\ +\x00\xc0\xcb\x95\xcd\x97K\xd23\x14\xb8\x95\xd0\x1aw\xf2\ +\xf0\xe0\xe2!\xe2\xc2l\xb1Ba\x17)\x10f\x09\xe4\ +\x22\x9c\x97\x9b#\x13H\xe7\x03L\xce\x0c\x00\x00\x1a\xf9\ +\xd1\xc1\xfe8?\x90\xe7\xe6\xe4\xe1\xe6f\xe7l\xef\xf4\ +\xc5\xa2\xfek\xf0o\x22>!\xf1\xdf\xfe\xbc\x8c\x02\x04\ +\x00\x10N\xcf\xef\xda_\xe5\xe5\xd6\x03p\xc7\x01\xb0u\ +\xbfk\xa9[\x00\xdaV\x00h\xdf\xf9]3\xdb\x09\xa0\ +Z\x0a\xd0z\xf9\x8by8\xfc@\x1e\x9e\xa1P\xc8<\ +\x1d\x1c\x0a\x0b\x0b\xed%b\xa1\xbd0\xe3\x8b>\xff3\ +\xe1o\xe0\x8b~\xf6\xfc@\x1e\xfe\xdbz\xf0\x00q\x9a\ +@\x99\xad\xc0\xa3\x83\xfdqanv\xaeR\x8e\xe7\xcb\ +\x04B1n\xf7\xe7#\xfe\xc7\x85\x7f\xfd\x8e)\xd1\xe2\ +4\xb1\x5c,\x15\x8a\xf1X\x89\xb8P\x22M\xc7y\xb9\ +R\x91D!\xc9\x95\xe2\x12\xe9\x7f2\xf1\x1f\x96\xfd\x09\ +\x93w\x0d\x00\xac\x86O\xc0N\xb6\x07\xb5\xcbl\xc0~\ +\xee\x01\x02\x8b\x0eX\xd2v\x00@~\xf3-\x8c\x1a\x0b\ +\x91\x00\x10g42y\xf7\x00\x00\x93\xbf\xf9\x8f@+\ +\x01\x00\xcd\x97\xa4\xe3\x00\x00\xbc\xe8\x18\x5c\xa8\x94\x17L\ +\xc6\x08\x00\x00D\xa0\x81*\xb0A\x07\x0c\xc1\x14\xac\xc0\ +\x0e\x9c\xc1\x1d\xbc\xc0\x17\x02a\x06D@\x0c$\xc0<\ +\x10B\x06\xe4\x80\x1c\x0a\xa1\x18\x96A\x19T\xc0:\xd8\ +\x04\xb5\xb0\x03\x1a\xa0\x11\x9a\xe1\x10\xb4\xc118\x0d\xe7\ +\xe0\x12\x5c\x81\xebp\x17\x06`\x18\x9e\xc2\x18\xbc\x86\x09\ +\x04A\xc8\x08\x13a!:\x88\x11b\x8e\xd8\x22\xce\x08\ +\x17\x99\x8e\x04\x22aH4\x92\x80\xa4 \xe9\x88\x14Q\ +\x22\xc5\xc8r\xa4\x02\xa9Bj\x91]H#\xf2-r\ +\x149\x8d\x5c@\xfa\x90\xdb\xc8 2\x8a\xfc\x8a\xbcG\ +1\x94\x81\xb2Q\x03\xd4\x02u@\xb9\xa8\x1f\x1a\x8a\xc6\ +\xa0s\xd1t4\x0f]\x80\x96\xa2k\xd1\x1a\xb4\x1e=\ +\x80\xb6\xa2\xa7\xd1K\xe8ut\x00}\x8a\x8ec\x80\xd1\ +1\x0ef\x8c\xd9a\x5c\x8c\x87E`\x89X\x1a&\xc7\ +\x16c\xe5X5V\x8f5c\x1dX7v\x15\x1b\xc0\ +\x9ea\xef\x08$\x02\x8b\x80\x13\xec\x08^\x84\x10\xc2l\ +\x82\x90\x90GXLXC\xa8%\xec#\xb4\x12\xba\x08\ +W\x09\x83\x841\xc2'\x22\x93\xa8O\xb4%z\x12\xf9\ +\xc4xb:\xb1\x90XF\xac&\xee!\x1e!\x9e%\ +^'\x0e\x13_\x93H$\x0e\xc9\x92\xe4N\x0a!%\ +\x902I\x0bIkH\xdbH-\xa4S\xa4>\xd2\x10\ +i\x9cL&\xeb\x90m\xc9\xde\xe4\x08\xb2\x80\xac \x97\ +\x91\xb7\x90\x0f\x90O\x92\xfb\xc9\xc3\xe4\xb7\x14:\xc5\x88\ +\xe2L\x09\xa2$R\xa4\x94\x12J5e?\xe5\x04\xa5\ +\x9f2B\x99\xa0\xaaQ\xcd\xa9\x9e\xd4\x08\xaa\x88:\x9f\ +ZIm\xa0vP/S\x87\xa9\x134u\x9a%\xcd\ +\x9b\x16C\xcb\xa4-\xa3\xd5\xd0\x9aigi\xf7h/\ +\xe9t\xba\x09\xdd\x83\x1eE\x97\xd0\x97\xd2k\xe8\x07\xe9\ +\xe7\xe9\x83\xf4w\x0c\x0d\x86\x0d\x83\xc7Hb(\x19k\ +\x19{\x19\xa7\x18\xb7\x19/\x99L\xa6\x05\xd3\x97\x99\xc8\ +T0\xd72\x1b\x99g\x98\x0f\x98oUX*\xf6*\ +|\x15\x91\xca\x12\x95:\x95V\x95~\x95\xe7\xaaTU\ +sU?\xd5y\xaa\x0bT\xabU\x0f\xab^V}\xa6\ +FU\xb3P\xe3\xa9\x09\xd4\x16\xab\xd5\xa9\x1dU\xbb\xa9\ +6\xae\xceRwR\x8fP\xcfQ_\xa3\xbe_\xfd\x82\ +\xfac\x0d\xb2\x86\x85F\xa0\x86H\xa3Tc\xb7\xc6\x19\ +\x8d!\x16\xc62e\xf1XB\xd6rV\x03\xeb,k\ +\x98Mb[\xb2\xf9\xecLv\x05\xfb\x1bv/{L\ +SCs\xaaf\xacf\x91f\x9d\xe6q\xcd\x01\x0e\xc6\ +\xb1\xe0\xf09\xd9\x9cJ\xce!\xce\x0d\xce{-\x03-\ +?-\xb1\xd6j\xadf\xad~\xad7\xdaz\xda\xbe\xda\ +b\xedr\xed\x16\xed\xeb\xda\xefup\x9d@\x9d,\x9d\ +\xf5:m:\xf7u\x09\xba6\xbaQ\xba\x85\xba\xdbu\ +\xcf\xea>\xd3c\xeby\xe9\x09\xf5\xca\xf5\x0e\xe9\xdd\xd1\ +G\xf5m\xf4\xa3\xf5\x17\xea\xef\xd6\xef\xd1\x1f704\ +\x086\x90\x19l18c\xf0\xcc\x90c\xe8k\x98i\ +\xb8\xd1\xf0\x84\xe1\xa8\x11\xcbh\xba\x91\xc4h\xa3\xd1I\ +\xa3'\xb8&\xee\x87g\xe35x\x17>f\xaco\x1c\ +b\xac4\xdee\xdckVyV\ +\xf5V\xd7\xacI\xd6\x5c\xeb,\xebm\xd6WlP\x1b\ +W\x9b\x0c\x9b:\x9b\xcb\xb6\xa8\xad\x9b\xad\xc4v\x9bm\ +\xdf\x14\xe2\x14\x8f)\xd2)\xf5Sn\xda1\xec\xfc\xec\ +\x0a\xec\x9a\xec\x06\xed9\xf6a\xf6%\xf6m\xf6\xcf\x1d\ +\xcc\x1c\x12\x1d\xd6;t;|rtu\xccvlp\ +\xbc\xeb\xa4\xe14\xc3\xa9\xc4\xa9\xc3\xe9Wg\x1bg\xa1\ +s\x9d\xf35\x17\xa6K\x90\xcb\x12\x97v\x97\x17Sm\ +\xa7\x8a\xa7n\x9fz\xcb\x95\xe5\x1a\xee\xba\xd2\xb5\xd3\xf5\ +\xa3\x9b\xbb\x9b\xdc\xad\xd9m\xd4\xdd\xcc=\xc5}\xab\xfb\ +M.\x9b\x1b\xc9]\xc3=\xefA\xf4\xf0\xf7X\xe2q\ +\xcc\xe3\x9d\xa7\x9b\xa7\xc2\xf3\x90\xe7/^v^Y^\ +\xfb\xbd\x1eO\xb3\x9c&\x9e\xd60m\xc8\xdb\xc4[\xe0\ +\xbd\xcb{`:>=e\xfa\xce\xe9\x03>\xc6>\x02\ +\x9fz\x9f\x87\xbe\xa6\xbe\x22\xdf=\xbe#~\xd6~\x99\ +~\x07\xfc\x9e\xfb;\xfa\xcb\xfd\x8f\xf8\xbf\xe1y\xf2\x16\ +\xf1N\x05`\x01\xc1\x01\xe5\x01\xbd\x81\x1a\x81\xb3\x03k\ +\x03\x1f\x04\x99\x04\xa5\x075\x05\x8d\x05\xbb\x06/\x0c>\ +\x15B\x0c\x09\x0dY\x1fr\x93o\xc0\x17\xf2\x1b\xf9c\ +3\xdcg,\x9a\xd1\x15\xca\x08\x9d\x15Z\x1b\xfa0\xcc\ +&L\x1e\xd6\x11\x8e\x86\xcf\x08\xdf\x10~o\xa6\xf9L\ +\xe9\xcc\xb6\x08\x88\xe0Gl\x88\xb8\x1fi\x19\x99\x17\xf9\ +}\x14)*2\xaa.\xeaQ\xb4Stqt\xf7,\ +\xd6\xac\xe4Y\xfbg\xbd\x8e\xf1\x8f\xa9\x8c\xb9;\xdbj\ +\xb6rvg\xacjlRlc\xec\x9b\xb8\x80\xb8\xaa\ +\xb8\x81x\x87\xf8E\xf1\x97\x12t\x13$\x09\xed\x89\xe4\ +\xc4\xd8\xc4=\x89\xe3s\x02\xe7l\x9a3\x9c\xe4\x9aT\ +\x96tc\xae\xe5\xdc\xa2\xb9\x17\xe6\xe9\xce\xcb\x9ew<\ +Y5Y\x90|8\x85\x98\x12\x97\xb2?\xe5\x83 B\ +P/\x18O\xe5\xa7nM\x1d\x13\xf2\x84\x9b\x85OE\ +\xbe\xa2\x8d\xa2Q\xb1\xb7\xb8J<\x92\xe6\x9dV\x95\xf6\ +8\xdd;}C\xfah\x86OFu\xc63\x09OR\ ++y\x91\x19\x92\xb9#\xf3MVD\xd6\xde\xac\xcf\xd9\ +q\xd9-9\x94\x9c\x94\x9c\xa3R\x0di\x96\xb4+\xd7\ +0\xb7(\xb7Of++\x93\x0d\xe4y\xe6m\xca\x1b\ +\x93\x87\xca\xf7\xe4#\xf9s\xf3\xdb\x15l\x85L\xd1\xa3\ +\xb4R\xaeP\x0e\x16L/\xa8+x[\x18[x\xb8\ +H\xbdHZ\xd43\xdff\xfe\xea\xf9#\x0b\x82\x16|\ +\xbd\x90\xb0P\xb8\xb0\xb3\xd8\xb8xY\xf1\xe0\x22\xbfE\ +\xbb\x16#\x8bS\x17w.1]R\xbadxi\xf0\ +\xd2}\xcbh\xcb\xb2\x96\xfdP\xe2XRU\xf2jy\ +\xdc\xf2\x8eR\x83\xd2\xa5\xa5C+\x82W4\x95\xa9\x94\ +\xc9\xcbn\xae\xf4Z\xb9c\x15a\x95dU\xefj\x97\ +\xd5[V\x7f*\x17\x95_\xacp\xac\xa8\xae\xf8\xb0F\ +\xb8\xe6\xe2WN_\xd5|\xf5ym\xda\xda\xdeJ\xb7\ +\xca\xed\xebH\xeb\xa4\xebn\xac\xf7Y\xbf\xafJ\xbdj\ +A\xd5\xd0\x86\xf0\x0d\xad\x1b\xf1\x8d\xe5\x1b_mJ\xde\ +t\xa1zj\xf5\x8e\xcd\xb4\xcd\xca\xcd\x035a5\xed\ +[\xcc\xb6\xac\xdb\xf2\xa16\xa3\xf6z\x9d\x7f]\xcbV\ +\xfd\xad\xab\xb7\xbe\xd9&\xda\xd6\xbf\xddw{\xf3\x0e\x83\ +\x1d\x15;\xde\xef\x94\xec\xbc\xb5+xWk\xbdE}\ +\xf5n\xd2\xee\x82\xdd\x8f\x1ab\x1b\xba\xbf\xe6~\xdd\xb8\ +GwO\xc5\x9e\x8f{\xa5{\x07\xf6E\xef\xebjt\ +ol\xdc\xaf\xbf\xbf\xb2\x09mR6\x8d\x1eH:p\ +\xe5\x9b\x80o\xda\x9b\xed\x9aw\xb5pZ*\x0e\xc2A\ +\xe5\xc1'\xdf\xa6|{\xe3P\xe8\xa1\xce\xc3\xdc\xc3\xcd\ +\xdf\x99\x7f\xb7\xf5\x08\xebHy+\xd2:\xbfu\xac-\ +\xa3m\xa0=\xa1\xbd\xef\xe8\x8c\xa3\x9d\x1d^\x1dG\xbe\ +\xb7\xff~\xef1\xe3cu\xc75\x8fW\x9e\xa0\x9d(\ +=\xf1\xf9\xe4\x82\x93\xe3\xa7d\xa7\x9e\x9dN?=\xd4\ +\x99\xdcy\xf7L\xfc\x99k]Q]\xbdgC\xcf\x9e\ +?\x17t\xeeL\xb7_\xf7\xc9\xf3\xde\xe7\x8f]\xf0\xbc\ +p\xf4\x22\xf7b\xdb%\xb7K\xad=\xae=G~p\ +\xfd\xe1H\xaf[o\xebe\xf7\xcb\xedW<\xaet\xf4\ +M\xeb;\xd1\xef\xd3\x7f\xfaj\xc0\xd5s\xd7\xf8\xd7.\ +]\x9fy\xbd\xef\xc6\xec\x1b\xb7n&\xdd\x1c\xb8%\xba\ +\xf5\xf8v\xf6\xed\x17w\x0a\xeeL\xdc]z\x8fx\xaf\ +\xfc\xbe\xda\xfd\xea\x07\xfa\x0f\xea\x7f\xb4\xfe\xb1e\xc0m\ +\xe0\xf8`\xc0`\xcf\xc3Y\x0f\xef\x0e\x09\x87\x9e\xfe\x94\ +\xff\xd3\x87\xe1\xd2G\xccG\xd5#F#\x8d\x8f\x9d\x1f\ +\x1f\x1b\x0d\x1a\xbd\xf2d\xce\x93\xe1\xa7\xb2\xa7\x13\xcf\xca\ +~V\xffy\xebs\xab\xe7\xdf\xfd\xe2\xfbK\xcfX\xfc\ +\xd8\xf0\x0b\xf9\x8b\xcf\xbf\xaey\xa9\xf3r\xef\xab\xa9\xaf\ +:\xc7#\xc7\x1f\xbc\xcey=\xf1\xa6\xfc\xad\xce\xdb}\ +\xef\xb8\xef\xba\xdf\xc7\xbd\x1f\x99(\xfc@\xfeP\xf3\xd1\ +\xfac\xc7\xa7\xd0O\xf7>\xe7|\xfe\xfc/\xf7\x84\xf3\ +\xfb-G8\xcf\x00\x00\x00 cHRM\x00\x00z\ +&\x00\x00\x80\x84\x00\x00\xfa\x00\x00\x00\x80\xe8\x00\x00u\ +0\x00\x00\xea`\x00\x00:\x98\x00\x00\x17p\x9c\xbaQ\ +<\x00\x00\x00\x09pHYs\x00\x00\x0b\x13\x00\x00\x0b\ +\x13\x01\x00\x9a\x9c\x18\x00\x00\x06uIDATX\x85\ +\xcd\x98{lTU\x1e\xc7?w\xa6\xd3y\xb7\xd3:\ +\xa0-\xa3\x15[\xc0m\x8a\x88V\x1ez/Eq\x89\ +\xc1,F\xc4\xc5hD\xe2&k\xae\x91\x0d\x8b\xa8q\ +7\xd1\xac+\xeb\xe3\x0f!>\xb8j@]\x88\x06\xb3\ +\xebb\x94\xe8n\x0c\xa0\xdcK\x0c\xd5\x80\x06\x85\x84\x82\ +\xb6\x08\x08}O;3\xbd3\xd3\xce\xec\x1fw\xeet\ +f:3\xb4\xdb\xd2\xf5\x9bLf\xce\xef\x9c\xdf9\x9f\ +9\xcf\xdf9B2\x99\xe4\x97,\xcb\xff\x1b\xe0B\xfa\ +\xc5\x03\x96\x00\xf0\xa7//zC\x92\xa6\xdc\x0e\xfc\x1e\ +X\x00L\x01\xce\x01_\x01o\xab\xa2\xfca\x01\x9f\x14\ +\xe0\xc5\x05\xb3\x01\xdb\x80\xfbs\xb2\xaa\x80\xe5\xc0rI\ +Sv\x02\x0f\xa8\xa2\x1c\xcb\xf5\x9f\x8c!~,\x07.\ +\x08\x1c\x04:2l\xf7\x00O\xe7s\x9e\x0c\xc0\xc1\xd4\ +w\x02x\x16\xa8VEy\x010\x0dx\x120\xb7\x91\ +G$M\xb1\xe7:_\xf4!\x06^\x02~\x06N\xa9\ +\xa2\xfc\x85iTE9\x0eQE\xf9|n\xf9\xf4\x10?\xd7\ +\xb2\xef\xe63z0s\x92^\x0b<\x8f\xb1\x0a3\x1b\ +X\x07@\xceW\x11\xb0^\xd2\x94\xcfTQ\xfe,\ +\x05V\x0e<\x04\xac\x07.-\xe0\x03\xc6*^\xa9\x8a\ +r[\xbeL!\x99L\x22-Z\xed\x06\xba\x00;@\ +(\xd4C2\x99\xc4\xeb\xad,Xk\x7f\x7f\x17\x82`\ +\xc1\xe3\xa9\xc84\xc71N\x87$0\x97<\x93\xbe\x80\ +\x9a\x81\xa5\xaa(\x073\x8d\x92\xa6\xa4\xe7\xe0\xf5&\x1c\ +\x80\xc7SQ\x14.\xb3\x5c\x8el\xc0\x8d\xc0Mc\x80\ +\x03\x98\x07|\x90o\xce\x9b\x80\x8dc\xa8\x0c\x00\xaf\xf7\ +\x92\xb1\xba\x5cHK\xc8\x99\xef0<\x07\xe7\x99\x86[\ +\x974RRbe\xf6\xeczt=\xca+\xaf\xbe7\ +\xa2\xa6\xb5k\xef\xe3\xf4O\xa7\x01\xa8\xb9\xf2\x0a6o\ +.\xbae\x8eE\x7f\x964\xe5uU\x94{M\x83\xd9\ +\x83\xb3L\xc3\xd1\xa3G9r\xe4;\x96/\xbf\x99\xa6\ +\xa6\x1bH&\x13\x0c\x0c\xf4\x13\x8b\xe9\xe8z\x18\x80\xa6\ +E\x8d\x1cl\xfe\x9a\xe6\xe6\xafY\xdct\xc3D\xc1\x01\ +x\x80\x95\x99\x06\xb3\x07\xd3\xe3U[\xf7+6<\xba\ +\x86`\xb0\x9fM\x9b\xb7#\x08\x02\xf1x\x14]\x0f\xa7\ +\xe7\xdc\xa6\xcd\xdby\xf3\x8d\x17\x19\x1aJ\xf0\xc2\x8b\xdb\ +\xc6Me\x11\x04\x9e\xa8[\xcc\x0c\x8f\x9f\x9d\xa7\xbf\xb9\ +\x1b\xd8j\xe6\x99\xab8L\x91Im\xf4^\x88\xb22\ +\xff\xb8a\xf2\xe9\x16\x7f-\x7f\xb9z)\x00\xc7C\x1d\ +\xc1\x99\x9e)>\xc8\x8e\x07\xcd\xdd\x9c\x81\x81~\x92\xc9\ +$\x82 \xe0tz\x89F\xc3\xc4\xe31\x9cN\x0f\xbd\ +\xbd\xed8\x9d^\xecv'\x91H\x1f\xc6n\x22\xe0r\ +\x95\x8d\x0b\xb0\xc9_\x9b\xfe]Y\xearg\xe6\x99\x80\ +A\xa0\x02HAE\x88\xc7\xa3\x00\xd8\xedn\xecv\xc3\ +\xc7\xe73\xfeG4\x1a\xc1j\xb5a\xb7;\xc7\x05f\ +j\xa6gxd\x5c\xd6\xd2\xac\xad\xc6\x5c$\xe7LC\ +(\xd4\x83 \x08\xf9\xf6\xb8\xb4\xecv\xd7\x84\xc1\xd9\x04\ +\x0b\xd5\x8e\xe1\x11pYm\x82\xa4)\xcf\xe6\x02\x1e5\ +\x0d\x1eO\x05\xa5\xa5\x13\xd3\xf8h\xe4\xb7{\xb0 \xa4\ +\xd3\xe1\xc1\x18\x18\xdb\xcdZ\x18\x1e\xe2C\x18A\xe3\xa4\ +\xebR{v\x10t6\xdagLlx\x19\x88\x98=\ +\xb8o\x92\xb9\xd2\x0a8\xca\xb3\xd2\xdf\xf7\x9d\x1f\xccH\ +n5\x01\x0f\x02g\x00\xac\x82\x85\x19n?\xe5%\x0e\ +&C\xd3\xdd\xd9g\xfe\xbe\xae\x93\x03\x99i\x0b\x80*\ +\xca\x09`\x8b\xc3R\xc2\xdf\xaf[\xc5[s\xeff\xd7\ +\xfc\x07\xb8\xb3\xaa\xe1\xa2\x03\xcer\x0f\xaf\xe0\xd6H\x8f\ +\xfeC\xb8{\x1a\xc6ir6\x0d\x98\xd2k\xd7\x94U\ +\xf5\xd58}\x80\xb1\xba\xd6]%R\xef-\x16\xca\x8d\ +O\x16A`\x86gJ:\xdd\xdcsj\xe3\xc7\xf3\xd7\ +\x84TQ\xfe\x00\xa8\x01\x9eI\x03\xaa\xa2\x1c\x9c\xea\xf0\ +l\xca\xad`\xcd\x15c\x0etF\xad:\xb7\x1f\x97\xd5\ +\x06\xc0\x81\xee\xd6c\xbf\x9d6'\xbd\xbd\xa4.[O\ +g]\x9aVU\xcf\xf9\xdb\xa9\x81\xde\xac\xa0q~\xc5\ +\xe5#V\xdaDi\x9e/\x00\xc0\x0f\xe1\xae\xd0\xa1\xe0\ +Y1_\x99,\xc0+]\x15\xb1\x96p\xe7-\xc1A\ +=1\x5c@\xe0\xb6\xa9\xb3FzN\x80\x16\xf9\xaf\xe2\ +d\xb8+\xa4u\xb7\xd6\xaf\x9d~c\xf7\x05\x01\x01\x96\ +\xf8\xeb\x0e\xbdtb\xff\xe7zbx\xb5\xffz\xea\xcc\ +\x09\x87\xabs_\xc2\xc0P\xbc\xf5?\xed\xc7kW_\ +~\xfdO\x85\xca\xe5}\xfa\xd8\xdby\xf2\xc1?\x1e\xf9\ +\x88\xf6h\x08\x80\x1a\xa7\x0fs\xf1L\x94,\x82\xe5\xad\ +\xeb\xca\xa7M\x7fx\xfa\xc2\xf6b\xe5\xf2>}\xa8\xa2\ +\xdc&i\xca'\xab\x0f\xbf\xbf\xec\x9e\xea9\xdcU=\ +;\xb1\xa0\xb2\xc6\xd2v\xa67\xab\x9c\xa7\xc4\xce\x8a\xaa\ +\x06n\xaa\xac!\xe0\xf4QVb\x5ck\xf4\xa18\x9d\ +\xb1\x08'\xc2\x9d\xfc\xbb\xfd8\x07\xba[G\xb4q<\ +\xd4\xb1u\x84q\xb4\x80)}\x1a\x1e\x8c-\xdbv\xea\ ++\xde=}x\xcf\xc2\xca\x9a/\x80\xbfb\x1cC\x5c\ +\xe6\xf0\xf2J\xc3\x1d\x5c\xe6\xf0\x8eptXm\x04\x9c\ +\xe5\x04\x9c\xe5,\xf6\xd7\xf2B\xcb\xe7\xd1\xdd\xe7\x8fe\ +\xde\xb9\xdb\x81o\xc6\x0bx\xc0\xfc\xa1'\x06\xe3\xcf\x5c\ +\xbdt\xa3\xa4)\xf7b<\xf0\xb0\xb0\xa2f\x7fg<\ +2s\x88d\xa5\xdbj\xb3\xb9\xad\xa5\x02@\xffP,\ +\x11\x19\x8a\xc5\xdb\xf5PGG,|\xb8;\x1e\xf9x\ +O\xe7\x89\x03\xc0\xf7\x19u\xbf\xab\x8ar\xd6\x89\xf1\xbf\ +\x00\xb6\x01\x11\x8cH\xbb-\xc3V\x0f\xf4\xec\xfa\xf9\xbb\ +\xdf\xac\xaf\x95\xfar\x9d*-N*m\xce\xac3v\ +\xcb\x8f_\xfa\x01\x1d#0\xee\x05\x9e\x1b\x0d\x1c\x14\x7f\ +\x1f\x8c`<\xe8\x00\xfc3\xf5m\x02\xedPEy\x04\ +\x5c\x11\xb9\x18\x8e\xda\x7f\xa7\x8arG\xb1\xc2\xa3\x02T\ +EY\xc7\xe8\xb17TQ\xde\x9b2\x87S\xb6\x11\xf7\ +\xd7\x0bH\xc0\x88\xda\x1fVE\xf9_cq\xfc/\xa7\ +\x06\x0d_\x86\xc8\x88Z\x00\x00\x00\x00IEND\xae\ +B`\x82\ +\x00\x011)\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\xcc\x00\x00\x00\xf3\x08\x03\x00\x00\x00\xfd\xd0\x09\xb8\ +\x00\x00\x03\x00PLTELiq\xffx\xc7\xffx\ +\xc7\xffx\xc7\xffx\xc7\xffx\xc7\xffx\xc7\xffx\xc7\ +\xffx\xc7\xffx\xc7<<\x5c\xffx\xc7\xffx\xc7\xea\ +q\xbb<<\x5c\xffx\xc8\xffx\xc7\xffx\xc7\xffx\ +\xc7\xffx\xc7H?b<<\x5c\xffx\xc7<<\x5c\ +<<\x5c<<\x5c\xffx\xc7<<\x5cG?a\xff\ +x\xc7\xffx\xc7<<\x5c\xfcw\xc6\xfex\xc7\xffx\ +\xc7\xffx\xc7\xffx\xc7\xffx\xc7\xffx\xc7\xffx\xc7\ +<<\x5c\xffx\xc7\xffx\xc7<<\x5c<<\x5c\xff\ +x\xc7=<]9;Z;<\x5c:;[<<\ +\x5c\xffx\xc7\xffx\xc7\xffx\xc7\xffx\xc7;;[\ +<<\x5c\xffx\xc7\xffx\xc8\xe5p\xb9\xffx\xc7\xff\ +x\xc7<<\x5c\xf9v\xc4\xffx\xc7\xffx\xc7<<\ +\x5c\xffx\xc7\xffx\xc7\xfex\xc6\xfcw\xc5\xffx\xc7\ +;;[<<\x5c\xbac\xa1\xffx\xc7<<\x5c\xff\ +x\xc7\xffx\xc7:;[\xf1t\xbf<<\x5c<<\ +\x5c\xfaw\xc5\xffx\xc7<<\x5c<<\x5c<<\x5c\ +<<\x5c<<\x5c<<\x5cfHr\xfex\xc7\xff\ +x\xc7<<\x5c\xffx\xc7<<\x5c9;Z\xffx\ +\xc7<<\x5c\xecs\xbe\xffx\xc7\xc1e\xa5\xf8u\xc3\ +\xf1t\xbf\xffx\xc7<<\x5c\xbed\xa3\xffx\xc7<\ +<\x5c\xffx\xc7\xf1t\xbf\xdfn\xb5\xf1u\xc0\xffx\ +\xc7\xf6u\xc2\xf6x\xc6<<\x5c\xd3k\xb0\xd9l\xb1\ +\xa3[\x94\xbcd\xa2\x224N\xd7l\xb2\xf7u\xc3\xab\ +^\x99<<\x5c\xc0e\xa6\xd9l\xb2\xbed\xa3\xf5v\ +\xc2\xeft\xbe\xbac\xa1\x11/F\xeas\xbc!4M\ +\xf8w\xc4\x8aU\x87\xd8m\xb2vN|\xe5p\xb7\xd7\ +l\xb1`Hp\xd3j\xad\xc1f\xa5\xe3p\xb9\xedt\ +\xbd<<\x5c\xffx\xc7\xff\xff\xff<>^@@b\ +\xffx\xc5:<\x5c>>^>@`\xffz\xc9\xff\ +\x82\xd67;Z\x161H>>`\x1b2K\xff}\ +\xcf!4N@Bd\xff\x84\xd9<<^\xff\x81\xd3\ +\x1b\x1c/\xff\x87\xde88W56S\xff|\xcd1\ +9W\xff|\xcb!\x227\x1f 4%6P\xff\x85\ +\xdb&'=,-G\x1e3L\xff~\xd1\x19\x1a@\ +01R\x1e\x1fE4:X)5Q+8T(\ +)@\xffz\xcbYEl\xffz\xc7$%;::\ +ZAAb01M*+C06T\x1c\x1d3\ +@>^57V\x11/E-.K\x00\x00\x10\xad\ +`\x9bxO}gJu\xe6q\xb9\xff\x8a\xe4KA\ +c\xa2\x5c\x95\x8dU\x89\xf9w\xc4\xcbj\xae\x97Y\x8f\ +\xc6h\xa9oMyop\x89RDi\xb4b\xa04\ +4Q\xdeo\xb6\xbe\xbe\xc7\x18\x19+\xf4\xf4\xf6\xd4m\ +\xb2NOl\xd5\xd6\xdd$%IWXn\x83R\x84\ +abt\xed\xed\xef\xdao\xb6\x9c\x9c\xab\xb4\xb6\xc1f\ +g|\xc3e\xa5\xe2\xe2\xe6\x07\x08!GGb\x7fR\ +\x82\xfd\xfd\xfd\xe8v\xc3\x12\x14:\xa8\xa9\xb5\xdc\xdc\xe2\ +\xc9\xc9\xd1~~\x8d\xff\x89\xdf\xc5\xc6\xcf\x89\x89\x9d~\ +P\x81\x87\x87\x9b\x8b\x8b\x9fC;\xf0\xd5\x00\x00\x00\x93\ +tRNS\x00\xd7Rp\xfb\xdf=\x81\xad\x86\x96\x17\ +\xf3\x03\xb8\xf0\x8e\xb4\x0b\x22\x12\xec\xca&\xfbOI\x1b\ +\x03(\x9d\x8e\x07d\x96\xfe,Z\xa2\xbdi\x10y.\ +4\xd4\xd3c\xf4V\xa7\xe5\xb8\xeaiC}\xcf\x8a\x16\ +\x1eO\xcd:\xdb\xf7<\x92`\xaa4U\xbfI\xfd6\ +\x84}\xe7\x88\xfc]q\x1c\xc3\xe1\xc8\xdb\x0a\x9c\xa2\x0c\ +^X\xb0\x1a\xd7\xac\xa5\xc3\xce\x99Qx'0 (\ +\xc5w\xed`\xb0\xdb\xc1B\xfctx\xfb4<\xeea\ +DKn\xfa\xa5[\xed\xf5uL\xc2\x85\xfa\xc3\x9e~\ +\xbd\x91\xb7\x8d\xe1\xa1\xd5<\xdc\xec\xd0\x00\x00\x00\x09p\ +HYs\x00\x00\x0b\x13\x00\x00\x0b\x13\x01\x00\x9a\x9c\x18\ +\x00\x00\x22\x07IDATx\x9c\xed}y|Se\ +\xde\xef79'9i\xd2tI\xba\xa7;]\xd2R\ +\x96B\x0b\x16\x8b\xa8 \xa8\xa8\xf3::##\x0a3\ +/\x17\xaf\x22\xea\xb80:z\xc7y\x87wpy\xc5\ +\xed\x0a\xfa*\xe2\xbd\xa23\xca8\x8e:**\xe0\xb8\ +\xb0(\x9bl\xa5\x84Rh\xedJ\x97\xa4K\x9a='\ +\xb9\x7fd9KN\x92\x936\xa5~\xee\xa7\xdf\x7f\xf2\ +\xec\xe7\xf9\xe5\xd9\x7f\xcf\xef\xf7{\x80\xff\x8f@Lt\ +\x05\x00\x00\xba\xc4\xc5?.\xac\xef,\xcb\x9aO\xda\xb2\ +\x16*\xbc\x96\xd1\x15#\x89o\xadF\x83\xa9\xea\xb2\x9d\ +\x8f\xd3>7\xe1\xfb\xdd\xf3\xc9\x82\xe4wc/i\xc2\ +\x89\xc9\xb6l\x08\x90\xc0\xc1\xfa\xb9\xf9/\xc7Z\xd6\x04\ +\x13s\x8d\xf7\x06\x01B|\xd80\xfc\xeb\x18\xc9\x99P\ +b\xd2\xae\x9f\x15)\x9aX\x7f\xfb31\x95'\x1dS\ +m\xc6\x86jIDZ@?\x96\x9f\xa4\x8b\xa5\xc0\x09\ +l\x99K\x96GOC\xfc1\xe3\x94\xf8\x12'\x8e\x98\ +_\xcd\x13\x93\x8aX_p@t\x91\x13F\xcc\xadu\ +bS\xfe\xb9Gl\xca\x89\x1a3J\xd1\xb4\xc0\xb3L\ +l\xca\x09j\x19\xfd\xdd\xe2\xd3\x12\x8f\x0c\x8bL91\ +-\x93;\x18\xc36\x8a~\xaaZdJrT\x95\x19\ ++\xa6]+\xb4T\x12_\x9d)\xbfL \x9c\xee\xc8\ +\xed\x10U\xec\xc4l4oL\x0e\x09\xda\xd2\xff7\xed\ +\x97g\x1b\x8b\xb68\x06r\xf8q\x0b\xca\xbf\x11U\xec\ +\xc4\x8c\x19\xfe\x90!\x1e\xa9`M\xc07\x1a\x7f\xc1K\ +\xbf\xbeOT\xb1\x13\xd32\x995\x1c\xef\xde]?J\ +X\x83\xdc\xf0c\xc9\x7fs\xbb\xdb\x024\x8b)vb\ +\x88\xe9;\xbc\x80\xe5\xdb\xbf\xb7\x09\xdc\x09\xeb\xa0J\x9a\ +\xcf\x09x\xdd%\xa6\xd8\x09Zg\xd8K\xc7\xe6wB\ +\x87w\x8fd\x0f\xe7o\xfe\xa5\xa8R'\xe8\xa4y\xb0\ +s\xb6\xdf\xb5\xe1t\xa3P\x82\x86\xa1\xd3\xec]hN\ +\x9b\x98Q3Q;\x80\xca\xfd\xbe\xbf\xf1\x88wP8\ +A\x07\xc5\xf1\x96\x89)t\xa2x\x00\x0d\x0d?\xbe\xe7\ +4\x1fm\xd9\xdf\x1dny\xefT\x17\xb0|\xc4~\x11\ +\x85N\xf8\xb19<\x1eOgy6\xd2\x22\xd6\xcd\x9f\ +\x06wF\x10\xcaR\x96G\xb6GD\x8e\xb8\x8e\x99\xaa\ +\xb9\xf1,\xcd\xc4\xfe\xa3ebrD\xd8\x9be\x97&\ +}\x12\xd3\xd7/Y\x0e[\xda\xbfb\xca\x12\x09m\xec\ +\xfd\x9bYL\x8e\xf0\xc4(\x1f%h\xc4B\xcd\xcf\x16\ +\x01\xab\x89.C\x0cY\x22b5\xdb\xa3\x16\x93#\xec\ +\x98\x99\xb5\x0e^\x94\x7f%j\xe5\x05\x00\xac\xab\xf1\x02\ +\xf0\xce\x19\x10\xb7\xc3\x8d\x8e\x04\xf6t\xfc\x92CD\x8e\ +p\xc4\x14\xdc\xeb\x05\xe0\xbdJ~F\xe4\xa7\xaf\xa9\xf1\ +\xfa\x1c\xb5\xd5\xe2\xb6\xb8\xd1\xa0\xeb\xbe\xc2\xcb\xf8v\x8a\ +\xf9W\xc3\x10\x93\xfd\xb0\xbf\xa0\xe2ZqUK\x0bt\ +\x8aZU\x8aY\xd4\xae0\x1aJ\xefe\xd1\x82r1\ +\xeb\x8c01\xcb\xecu\x81\xd1\xa7\x12\xb5\x91@\x89\x7f\ +{\xa2\xb5R\xf3\x922\x0dN1y\x22\x22\xf3>\x8e\ +\xf7\xfd\x0b\x22\xf2\x08O\xcd;\xfe\x8bqW\x8a\xf9\xb4\ +2\xd00\xc6\x91\xacvOf\xe8\xd9+f\x5c\xce\xf1\ +mh\x17\x93G\x90\x98\xdf\xef\xb31\xb3\xdce\xeb\xa2\ +\x97r\xcd\xd3\x01WE\xf5\x81\xce\xa1\xd2\x9b\xc5|:\ +\x22f-\xe0x\xad\xfdb2\x09\x11\x93\xbb\xd53\x87\ +\xe9~\xc4\xae\xa8\xac\x1e\xdd\xb5Ag7\x9d\xa3D\xf6\ +\xe2;\xc4|;\x02~\xf6\x1b.\x93\xa0HT.\xa1\ +1s\xdf\xaa\x11\x0dm\x0bL\x1f\xde\xda\xb6\x86(\x85\ +\xdc\xc4\x9c\xda\x0b\x9d\x17hK\xbf\x8b\xcc<)\xea\xf3\ +\xc2X>\xedJ/'`Cm\xb4*\x00\x10n\x99\ +t\xeb\xa0\x8db\xba==oj\xe42n\x9d\xcd\xb8\ +\xdb;jH\xc0ZP\x1a>yT\xdc\xb8\xb3\x8e\xdb\ +.D\x8d\xb8\x9b'\x81\x1d\xc0\xefS\xf2\xcf\xb9z\xd9\ +K\xae6b\x11?g3'\xdd\x99=}\xf9m\xc8\ +\xc6\xdd\x9bE}?\x04k\xd2\x0c\xf3\xaf\x02\x97\x98\xd7\ +\xf4\xe2\xf2\x0a\x10cCs\xad|\xb8\x8b\x15\xf2\x8b\xa1\ +\xe3\xe1K\xa8\xba\x82\xedst\xca\xe6\x9e\xca\xb1\xf4\xb8\ +\xf2\xc3\xa5\x0f\x8fe'\xe5\x8bNV \x1d|\xa6\x9a\ +W\xe4\x95`\xe8\x98\xb9i\xb1\x8c*0h\x8c\xec\xb0\ +\xcf\x92\xc3n\xf4tj\xee%K\x8a\xfbBEF\x95\ +6\xd7\xe8\x14\xbbt\xaeQW[\x97V\xb7\x5c\xa1<\ +\xf1`u\xb2\xd0\x89r\xcb\x09\x91%\x85\xb4Ln\xf5\ +BS\xce\x07\xbaDN\xe0c{\xfe\x16\xae\x80y<\ +\x1e\xa4\x91r\x9d\xd4\x9dV\x98\xdc\x87\xc5|>-/\ +\xbf\xa5\xa2\x02W\x80\xb8$\xecu \x8cacx\x08\ +i\x99\xe1K\x5c\x03\x1dfc\x1b7\xb4 \xdc\x1e-\ +\xe9\xdf\xf9!4\xed\xb09\x06\xed\x9e+fG\xdb\x08\ +\xadq\xea\x86\x1f,\x9a\xe3\x05\x00\xaf7l\xb27\x9a\ +\xa2\x94\x13\x04\xbferSr\x87\x5ct\xe8\xbf\xb4\x88\ +\xf8\x87Pv\xe1[\x16\x0b\x01\x1a\xc8J\x8b\xb8\xd2e\ +gWU\x80\xa0C\x06\x08\x1f\x1b\x7f\x8c\x92\x80\x01\x9f\ +\x98\x0e\x82\xb6\x0b\x96\x7f\xc5\x14\x81\xcb\xd2p\xb7,4\ +\x00\xd0\x116hk\x88oV\x83FTJ\x80\xff\x13\ +=I\x10!\xddlqA\x98\x16O\xee\xe9\xe6\x07\xad\ +X\x19\xb1\xec\x85\xc7F\x84#\xa6Z\xce\xdf8[8\ +\x8a\x07\xe2\xd1V\xb1\x973\x08m\x99\xb9Bw\x0a>\ +\xfc&\xf1\x0c\xe7B\xeeJwm\x94\xc2\xbdi\x0a\x81\ +\x93\xda\x95Y\xf5\xb4\x90\x18\x83\x10\x0e\xc5@Jh\xcb\ +\x90\x11\xaeM\xa77\xd51g\xe2\xa9\xcaU\xcc\xc6\x80\ + $B\xcdy\xd9\xd9\xb3!aUW/\xcc\xf3\x22\ +\xfcp\xe7\xa0\xe9Uq\xe9\xfc\xe0\xb5L\xae\x95\x13\xe7\ +\x06H\xd2\x13\xe8\xfb\xf4\x1d\xb4\xccqP\xeb\xedOK\ +\x94\x94\xd5\xb2\xfe\x5c\x82\xd0\x98@\xd0I\xc3\x04o\x98\ +\xac>\xb4\x8d\x1b\x90y\xa5\xa8;\xe6\x00\x0e\xc5\x928\ +\x84\x098\xf5\xce\xa0\x93\xa0\xab\xb3\xf7\x98\x89%G\xac\ +\xac\x05S\xb8{\x90\x8b\x0f\xe5\xb6Z\xf5R\x8f!\xe4\ +\xa4\xbe'\x8d%2Ru\xfei~|\x14<\x96\x14\ +\x0bG\x81\xd7\xcd\x96e\x04;\x80\x1cD\xcf\x08\xe9\xb1\ +\xa5X\xedL|\x98\xb9\x81\x1c.?\x9d\x98\x95\xddd\ +\xf1\xf0\xa3\x0a\xfe9\x5cU\xa9J\xcf\xc8\x98\x962\xb7\ +\xfbwW\xc5P3\x00\xc0\xe2\xce\xfa\x18\xb6\xdf\xbc\x96\ +I\xda\xc0\xb8\xc9\x9as\x84\xc3\x9d7\xdc\xa1\x8e\xc6\xb4\ +\x22\xf3\xdc\x9a32\xad\xbb\x97\x0aM)v\xa8\x87\xc3\ +\x96J\xf1\xb2Z\xdc#@Z1\xdb\xd7\x82\x04\x90\x94\ +#\xcb\x16\xa5\x0c\xc2\xabNmp\x17\xd3\x19\x1e\x01\xaa\ +\xc7H\x0bV7\x8a\x16\x03\xe0\x11#[\xc5\xf2x\xad\ +*\x97\x05\xb2\x82\xech\x0c8e\x95\xc9\xadT\xeb\xec\ +^Q\x9c\xbaX\xb1:\xa4\xeb\x86\x05\x97\x18\xceJF\ +\x93\xa9\xd5\x8bp\xb0g\xc0\x1d\x85\xbbn\xa3\x1c6\xd2\ +|A\xe1\x89\xd6\x84\xa3\xc3\xfc$\xb1)y\xdd\x8c\xe3\ +sw5\x1c1+\xd2\x95\xd1\xf8F\xe4\x8f\xd96\xb8\ +\xfbR\xcf\xa8DW0&lP\x8aL\xc8\xf9\xd3u\ +\xbc\xabC\x8b\xd7,q\xf7\xd0\xd6(\xfd\xdem\xef\xb3\ +Z\x09\xc5\x88gP|\x05c\xc2U-\xa2\x983\x5c\ +b\xea\xb9'w\xdak\xa7i\xaf\xd4\x1eu\x0c{\xe5\ +I6\xaf\xdd\xe5\x1e\xeb`\x0f\x8b9\xe28\x91\x9cn\ +&\x17J!p\x1e\x08\x81\xc3\x08\xb8\xedcgc\x86\ +\x85(N$\x97\x9880\x22\xc7\x09WD\x16\x80\xf4\ +\x83\xd3\xcd\xca\x8aEn\x00/:\xbc\xd5bd4\xd8\ +-Su\xc5\xb8u\xfa\xb1\xe3pn\xf44lb\xc6\ +\xc2\xb8\x1bw\xbd\x0cX\xba&\ +rW\xae\xcb\x85x\xae1@R\xc6!\ +'\xb7\xc4\xd4\x86S\x11VM\xa6e\x14l\x91U\x89\ +V\xd7\x8e\xf4i{H\xf5\x80@&\x1e\xe8\x01\xad\xd1\ +)O4\xd3Y\xf6\xbe\xb8\x8e\x99\xdeb\x8273\x9a\ +2\x22\x9d\xce\x18b:\xd8\x97\xba\xb4\xae=\xaf\xb3\xa9\ +;\xdamf\x00F\x0c\x90N\xcb,\xb7\xb3\x8f\x8c#\ +1r\xa95$l}\xa4\x0c\xac\xe9\x81\xdd\xa0^Z\ +z\xc2\xe8\x1d\x88\xa1f\xee\x01\xe9\x19W\x0f\xe2zd\ +N\xfb\x03/@\x9f\xf1\xd4\x06\xc1\x94>\xb0\xa6\xa0\x0a\ +\x86\xa1\x01\x99y8\xcaP\x09\x85\xdb>\xe4\x10\xaf;\ +$\x02\x84ry\x0bw\xc8\xf4\xa3\x9e\xfc.\xfcJ\xc6\ +j\x19vot\x8e\xea\x94e\x8f\xef1\xb3(A\xce\ +?9I\x81G\x7f\x156\x03\x8b\x98\xce\x9f\x9a\x9a\xa3\ +4\xcb\xc6W\x02\xb4J\x81y\xb7\x86\xcd\xc08\x9d?\ +\xb5\x1bM\x8b\xf1\x0c\x7f\xc5W<0\x0c\xd4\x85\x93\xd8\ +`\xa5\xee\xf9\xa9\xb5\x0c\x99\xe3\xd0\xf0\xc3\xfe\xd3\x03\xe0\ +\xe90=\x8dEL\x7f|\x14\xdf\xe2\x87~\x81\xbd\x8b\ +\xd2\xe3\x040O\xf8\xf8\xccn\xc7\x8f\xc7\xa5Jc@\ +\x1b\x7f\x9dq\xdbi_\x85\x1f\x12\xa4\x86M\xcc(\x14\ ++\xc6\x15\x1eB\xc1\xbb\x1e\xadB\xe0v\xef\xe1\xeb\x04\ +2\xb0\x89\x11\xa7\x0bu\xd1 \x97Z\xed<\xc5\x99\xe6\ +\xe4\x13\xfe\x0a\xd3K\x04\xa8a\x13\x93\xbcu\xdc*6\ +*\xa4\xa8\xc0k\x19U\xc9\xd1\xe0L\xb6dFH\x06\ +61\xef\x9e\xffI\xcdgE\xee\x905\xd3\x93/c\ +X5\xff\xe3\x1a~\x0e\xceD\x9e\xfa\x93Zi\xcc=\ +\xc3!bV-\x1e\xd6\x09\xe0Z\xbe%7\x0e1\xe2\ +\xa4\xba.\x16\x92\xaf\xfa\x9e\xb7=\xd2\xdb%\x1c\xf9\x98\ +)\xbc\x1clbrc\x94V\x1fg8<\xc9\xbc5\ +\xd3\x94\xaaNaw\x9e_\xf0&h6\xa1\xc3Vo\ +\xc5OH\xe0\xcc\x95y\xa1\x8b\x1b\xe2<\xa1\xbd\xc0\xd9\ +\xcb\xcfk\xefe\xc7s9\x9as~B\x83F.\x0d\ +9 '\xfe\xda\xcc\x93\x03\x95F\xf0\x8d\x9fp\xc5(\ + U\xf1\x86\x0c\xa9\xb6\x9f\xe1\x1d\xfeVs\xe6g\xee\ +d|\xc8+\xcaX\xcdEAf\x9f\x8e\xc7QT\x1d\ +L\x1a\xe1\x9d\xfe\x88\x1fH\x16#\x9d\xb7\xb2\x90s\xd8\ +>y\x09\x95\x9b.\x8f\xccE\x1c7\x105-n.\ +\xfb+m\xe1Y\xbe\xb4\xb1w\xd6qVo\xe2\x1d\x18\ +X1\x94*)\x17\xbd\x19\x94#/\xb1\x82kj\xe8\ +\xe2\xc03}\x80;\xfe3\x06IM\x08\x8b\x81\xb8\x84\ +\xed\xe1\xc6YS\x0b\xfd\xb3\x05\xa5S\x94=u\xe7\x0b\ +\xed\xc6\xba\xd4i\xfbf%\x16\xf3&\x96\xf1\x87,\xa1\ +\x8f{t\x97.\xfd*\x94\xc3\xe2\xcd1u\x06=\xfc\ +\x0d\x8c\xd7\x7f\xe5D\xe9\xf2\xd2[\xa7\x9e\xbfT\xad6\ +u\xb7\x9f\xba\xba\xafm\xdaE\xa6FN=;\x9d3\ +\x9d\xe9\xfb\x0e\x0c|5\xb8e\x01?\xe1_\x98Q\xc0\ +'\xa67'\x0b\x00j\x07g\x1e6j;\x1cC.\ +\x97\xc3i/\x9a\xad8=4\xfd\xe2RS\xe2]\xd5\ +\xc5\xe9T\xca\xef\xff\xf4\xe5\x99c7\xee\x1c\xe1\xad\x94\ +\xdfi\x82S@\xc8\xd62\xcb'C'\xdfX\xd7\x17\ +\x18@\xfa\xce[\xcbO\xde\xf8\xc3\x8c\x8bJ\x0d\xa5\x93\ +vpf\x1e\xd7\xb9#\x00N^8u\x0c\x1cr\x16\ +|\x1d\x9c&B\x88iN*\xf2\x82*\xcf\xbe\xf3\xdb\ +`P?.\xb5W\xfdC\xa9(\xb9\x98\xd4\xa4\xebZ\ +8\xea\xc4\xca\xd6\x8d~\xd7\xc8\xa9\xdag\xd9\x9d\xad1\ +(\x82\x12z\xe1\xf1-\x0d\x14\x0e\xba\xdf\xe7\x86v\xd5\ +\xce\xa7F.\xe6\xa4\xd6\xebt\xb3\x0f3z%\xeb2\ +s\xbdwc\xd0Ml\x9d\xc6\xb8CJ\x19\xe9\x9c\x0d\ +\x95\xb2S\xc6\xbb\xe2\xb0\xe7e\x84\xdcc\x8d#\xe4\xd9\ +O\x94\xb3\xc7\xbf\xf2\xd4_Y\xab\xa3u\xa8\xed\x83\xc5\ +~)\xea\xa1\xf7\x82\xc1\x02WQ\x09\x00\x99\xa3\x0c\x91\ +V?\xf7\x8d,1\x9a\xfeo\xfcP\xd4\xf3\x04\xbbj\ +d\xff0\xf7\x9a\xf9\xd4\xf0\xc7{\x00\x80\xd8\xcd\xd2\x86\ +\x178[v\xaa\x8b\xdd\xa9\x9d\x05\xfc}\x9aE\x95\xe1\ +\xf4\x88\xb630V\xa4\xcf\xf8N\xcd\xea\x1b\xea\xe6\x17\ +\xf9\xdb\xce\xe6S\xed\xc6^\xc5\x9b\xec\x0b[!9\x80\ +o\xe6c\x86\x80-\x03\xf3\x99\xcb>\xa7\xe2+\x18\x17\ +\x1e]\xf9*\x0d\xb3\xbdW\x9e\xfd\xbf\x02\xf72\x0d|\ +1]\xa1\x1b\xcf\x9e\x87\xd3\x04EFGl\x9a\x8bg\ +wwD\xc5\x8c\x7f}ZG\xab\x98<\x82\xd7\xb77\ +\xb8\xad.\x01r\xa6\x1c\xd0\x13\x91\xad\xb6\xc4\x0d*]\ +*K\xe6\xaf{\xe7k\xa2r\x09\xf2c\x1a\x1c3<\ +\x09\xa1O@\xf4+\xa7\x19\xc8\xf1\xd1\xc5\xe4\xa3\x84\x92\ +\x99\x83\xecL\xe5\xf9'\xc5\xe5\x12\xbeX\xff\xe0g\xdb\ +\x14\x02\xc1\xb2\xaf\xeb\xc7I\x15\x93\x8f\xce\x92\xef\x83r\ +\x09\x19\x08\xbd\x0d\x14F\x18)\x01\xf5F\xa1\xcb\xa6^\ +\x97=\xfb\xe2,\x9c\x1eKz`x\xea\x15mb\x8d\ +\x0b\x85a\xfb%\xcb\x12\xad\x02tRE\x17\x92/\xc6\ +\xec\x5c.\xc9i\x09\xcc\x9b\xae\x13\x8f\x8b\xd5`\x09'\ +\xbf\xb1\xa5\xbbX 4\xfb@^\xf7\xc5\x98\x02l\xd3\ +\x8fe\xfa\x9d\xc9}\xff!:[\x98\xb9\xb6#\xf7\xa8\ +;'\xb4\xab\x1ar\xd2\xc7M\xe7\x97\x0dS\xa2\xad\xcb\ +W\xb3\xfc]\xbdQ\xd2\xb2\x10\x8e\xbb<\xdc\x9a\x9b\xef\ +\x0d\x95\xb7\xa0\x14Y\xd4\xf8\xb3p\xe4T\xea\x05\xdf\x98\ +Un\xd6\xc4\xc0\xcd\x0f+&d~\xcd(0s\xf5\ +7\xc8\x92\xc7\xbf\x9fM)\xf5K\xeb\xe4\xaf\xa9\x8c\xc5\ +\xb2X\x04\xbe\xff\x17\x0b\x8aB\xaf\xdc\xe9/\x09\xcb\xb8\ +s\x0a\xed5_9\x00@\x99\xa6y/\x16\xc33\x11\ +\x04\xb8\xd4\x07~\x15z\x97\x96Z\x9b+V;\x7f\xd4\ +\x90K\xa9t\x00P\xae\xf9\xfc\xa9\x98\xcc\xa5Fh\x19\ +\xe7\xc9\x07RBD\xa4,TA\x87d\x9c\x9b\xa6,\ +\xc7\xd9\xe2\x02\x94]E\xcf\xc7\x961\xa2h\xdd\x93m\ +)!\xb3\x9d\x87N*\x8c\xed\x13\xb1\x82j\xaf<6\ +\x0c$\x0f\xb6\xc7j\x89/\xb2\x9c\xa0[\xb7\x82o\x8e\ +/\xfbHU\x88\x01\xaa\xf8\xc2\x9b1h'\xf5\xf9_\ +\x1e\x88\xd9\xaa`\xe4=\xfdc\x16\x15\xff\xf1\x17CN\ +\x18\xd3Xq\x83R\xf9\xb5\x97\xb4\x1e|=\xf6\x9cQ\ +,i\xab\x0f\xd5\xf1M\xcbY\x88\xc4\xf2\xd8\xbf#\x1e\ +\xda\xf2\ +\x8c\xc9\xaeY\x00\xd1\xce\xc1\xbd\xa5g1\xed$G\xfa\ +\xccC\xe8 \xd6$u\xcc\xd0\xd2\xa9\x87\x8f\xfeu\x94\ +\x99\xa3\xbd\x0b\xa0\xa3?<\xab)\xcf\x7f\x97\xb5\xe9$\ +\xe5y\x1d\x83\xa3\xfc\x5cT\xa8\xf2\x1b\xda\xb7\x8f\xd6\xb0\ +x\xb4\x96\xe9\x5cq\xa8vd\x9f]\xc6\xb2\xa4\xe5\xce\ +\xc8j\x15W8\xcb\xf4\x8b\xe8\x8e\xb9>\xb2\xf6bD\ +D\x97\xc9\x98\xd5e\xce#\xa8+\xdb\x93\x82L\x01{\ +\x09c38\x0cT\xe9\xba$\x97\x22+\xc9-\x93\xc9\ +d\x99INR\xa6\xa0t\x99\xf2\x1c{\xb4\xb9C\xba\ +\xdf4\xfa\x01\x19\x95w\xd4\x098\xfa\xcf$\xd1\x95\x0d\ +j\x9d\x9f\xf9\x93\xbcs\x9e\xe4t\x84,9\x8a~\xdd\ +\xb9\xe9\xe6b\xb73\x19\xf7\x02\xff\x1bCYr\x90e\ +\xcd\xd2}C\xf9\x9dHI\x884\xe0\xdc\xfa\x1fb#\ +\x80\x8d\xe8oi\x5c\xbd\x14@\xedH\x92%\xb3\xd9\xec\ +'G=\xe3P\xb8\x95\x93\x223\xfb\x1d\xb5$\xe1<\ +\xac\xf2\x00\xb0\x07\xf9\x22vd\xb7}\xfe\x9c\xdd&Q\ +\xef!\xd2d\xada\x99\x89_\x8cA3::W\xaf\ +\x1b\x00\x0eQn\x955\x8f:\xaa\xb6\xb9\x01\xa8\x7fw\ +\x8bpZ\x8a$\xa4%\xe5Y\x1f\xab\xfa\x94\x1a\x8d\x01\ +`\xc9\xee\xeb\x81\xb4\x9f\x1f\xb0*\xec\xb2Ytb\x9b\ +\xac0\x0c9D\xa7`\xb08Do\x995\x15\x81\x8a\ +J\xc8\xaa\x84\xa3\xaaA+\x92+\xce\xa9\x05\xfa\x8av\ +Dg\x9a\x93\xb0+\xd1\x91\x1f\xc1$\x88\xde\xe4\x90\x8e\ +\x5c\xaf\xf8H\xd3)L\xcd\xabc0\x8d\x10}\x02\x08\ +\xc8\x06\xd0.\xa9\xb7\xaf;G\xb7\xb3\x80T\x9e\xd3Y\ +B\xcfmTN!J\xcf\x9e-\xe8pE:X\xf7\ +[\x1c\xf6\xb2c\xe7\xeb\xa9\x1e\xe1\x93\xc4\xee\xd1Of\ +b\x9elI\x9b\xeew\xb8]\x12\xaf\xa5C\xdd\x7f\xba\ + \xe9\xaa\xefC\xe6\x9cZUG\xe1\xf9>m\x97\x08\ +\x16A\xbfs\xc4\xd4Y`\x11R\x828\x22\xe6i\x96\ +p\x10\xc1\x09g\x8du;\x08\xe8\xf6n\xa2\xbe;2\ +\xc7\xc9\xa3Fa\xb6\xbe\xa7tYE(u\x00\x009\ +\xa0\x1e(n\x0d\xd5\x1c \xc6\xc4-\x11\xf1\xfe\xcc\xe0\ +VV\xf3\xd1t\xa7\x06\xcf\xb6\xfd\x9d/(O\x159\ +K?4\x8b\xe5\xa3\x020\xbb>\x11\xf8'\xe9#\xe2\ +K\x08\x85\x08b:*\xb8\xfa\xe8\x1f\x01\x1dm\xefr\ +\x1bF[\xd8\xbe\xb9d\x7f,\xfa\x03z\xc7\xac\xa9\x99\ +!\xa1\x1bB\xae\xf9c\x81\x98\x97\x81\xec\xdc\x815\x1f\ +\x80\xf9 7l$\xa5\xf6\xc3m\xa2\xcd\x1a\xb9\xc94\ +\xe5\xaa\xc1G\xbe4\x85\x8cX\xeb(^kf F\ +\xc4t`>\xc7\xfbv?\x80+\x0b\xd9AZ\xa2\xf4\ +X\x97\xb8\xe1\xe2\x96\xa7y\xb53\xf7wW\xbe\xe29\ +p|&?\xb6{,\xcb\x8c(b,\x16\xce+\x07\ +\x0d\x17\x00\x10\x9c\xd7\xfd\xa4\xa9\x07\x93\x8c\x8adgY\ +DK\xe0\xfa\xb4\xc1\xb4\x04w\xdd\x87\xb6\xa3?<\xd5\ +\xb2cxx\xb8l:O\xf0p\xbdhs\xe6\x82\x10\ +u\xafw\x98\xf3\x8a\xa2\x1c\x00N\xad\x7f\x9c\x1d\xf6\x17\ +Y\x96B\xe3\x90>\xb95\x03\x004\xcd%\x06\xb7\xbf\ +h7P\xd5\x0c E\x8a\xe6;\x1f\x1f\xec\x1d<\xba\ +\x19\x00:\x00`\x84?7k\xc5\xbd\xce\x18\x0e\xa2\x88\ +\xe1\x9a\xa4\xf3\x9d68O\x1b(\xaa7\x03@\xc1\xd5\ +\x7fM\xd1Y\x12[2\xafGs\x86\xa9\x04\x06\xb8\xab\ +\x9a50\xcc\x7f5-\xa5W\xd5I\xfc\xcf7Z9\ +%]\xca\xfb\xce\x86\xcb\xc7fML\x141\x9cY\xea\ +\x88\xaf[\x1f`\x0f\xa4\xc1]\x1d\x00\xd0\xb1\x0f\x00\xd4\ +\x90\xb5+`N?\x89S\xe7n8\x9bx\x10\xea\x93\ +\xef(\x05\xcf[{yr\x87\x85c\x1a\xfe\x22\x89\xe1\ +\xcc\x97\xfe\xab\x01'\xdb\x1a\x05\xcd~S\xc1\x0cl\x86\ +\xff\xa1\xd5\x17\x01\x00\xb9&a\x83~<\xbb\x9d[\x8f\ +\x89\xa9L\x04\x88z\xb4\xcd\xc4\xbeV\xf8\xbb\xefG\xc3\ +\xee\xef{B\xc6}GX\x0f\x0b\xbck\x861+V\ +\x88\x22\xe6\xdd\x99,\xcf\x12\xdf\x0f\xa7\xb5\xe2\x22\xeap\ +\xe4\x83\xb1\x96 \xee9=\x96|\xca\x06\xffN\x90\xd3\ +Z1=\xaf\x1e\x0e\x9f\x8d\xb9\x04q\xc4\x5c\xc7,G\ +e\xfe\x1e\xc5n\xad\xf7\xa2Y\x1e\x14\x83&\xd1\xaf\x80\ +\x87\x85(br\xf71\x03$(\x15\xcd\xd8\x0f \xa2\ +X\xea\x12\x85=/\x8d\xbd\x0cQ\xc4tL\x0b\xb6\x0c\ +\xf1N\xc0\x95\x11\x8c\xfe\xe3h\xd5n,L\xc6\xad\xf1\ +x Q\xe4\x13\x94\xc1\x96\xd9\x11\x9c\xb7\x98\xc5G;\ +Z\xa6\x1dK3\xd4\x1d\x8fk\xdf\x18\xc5\x94\xd6\x0b\x08\ +h|;\xeae\x9b\x99\x8b_\x8f\x8bQDq-\x13\ +\xec\x035\x02\x8d \xf8\xba\xaf(\xb4\x06\x1c_\xc5\xc7\ +$\xa28bH\x7f\xe7\xde\xfdYh\xd8_\x22\x9b\xb6\ +\x8b\x84\x00s\xe1\x0b\xc1\x87zb\x87\xb8n\x96\xe3\xeb\ +\xdc\xfb?b\x82r}\x8f,\x11O\x8fA\x0a\xd5\xbf\ +3\xea\x8b\x97EDq\x13Q\x7fz\xbe\x97\xf7\x07&\ +YK\xbd\x00\xde\x1e}\xbb\x00t\x0d\x80\xf5\xfb>\x1d\ +C\x11\xa3An\xd2\xcb\xbf\xe6k\x1a\xcfH\x7f9\xe9\ +\xca\xb1\x15\xbb.\xeb\xe5Yq\xd9=\xc4\x88P\xe6\x03\ +\x96G18*\x02\xba\x89 e\x12\x93\x98\xc4$&\ +1\x89ILb\x12\x93\x98\xc4$&1\x89ILb\ +\x12\x93\x88\x86\x9f\x94E\xb3K\xa9\xca\xb6\xb1\xe4'\x90\ +\xe3\x96\xf9q\xf9yn\xdc\x83\xc7\x021e\xb4\x0d\x00\ +\x16il\x0f}+TJ<\xb0\xd8\xab\xa7\xee\xf8b\ +F\xe9\xa5'\x80\xbb\xcci\xbf<\xec\x0b\xaeW\xa4Y\ +\xc5JK\x91`\x89\x8d\xd8\xf7r\xe2^\x0d(\x16\xe9\ +\x0dO\x9b\x00,\xba\x19\xc08\xbdaVx\xd5r\x03\ +\x80u\x00\x9a\xd5;;\xef\xd7\xfb\xcd\x98jl\x0f\x00\ +O\x88l/)\x18\x95\x1b=W\xf4`q\xd0P\x85\ +A\xef\x00|\xb6\xdc\xf4\xe3\xa3\xdc\xacV\xcf6\xe8\xef\ +9r\xdf\x7f\xdd\x05\xac\xfc\xf9\xdak\x01\xbf\xa6\xcb\xd0\ +j\x00\x8f\x8aT@$\xd1\xb9\x01T\xc6\x0a\x000p\ +\xad\xd6\xedy\xd4\x00\x00w\xc92a5\x02@k%\ +`\x18\x1f\xad\xf3\xd5e\xd8N(\xb6\xe0<\xee-\xba\ +\x1fU\x80\xc1o8\xce\xf7^q\xc5\xde\x08y\x19H\ +ajoo\xf6\xab\xc8\xac,aG\xcd\xf5]\xef\x95\ +:\xdb\xdb}\xfa\xcc\xa7\x01`\xe1\xd8k\x1e\x8a\xa22\ +@\xe9\x93\x9bu\x9e\xf1\xbde\xe5\x7f\x9b\xa5\xf7\x1e@\ +\x7fD\x1c-\xfe\xcb\xa6\xcf\xae\xf7\xf9\xae`\x994\x90\ +\xff\x87\x8f\x18\xa6\xbf\x9e\xfd@\xb7\xb7u<\x86\x8cz\ +\x1a\xf0\x5cP\xd4l\xbf\x9ee\xca\xabU\xf5\x9e\xb4S\ +\xecEc\xf0\xe6l\xb7\xf1\x16\xe8\x1b\x0b[\x831\xb9\ +\x06\xec\xb8\x96\x9b\xf8\x8bQU5:R\xae\x05J\x19\ +\xb9\xb97\x12Y\x96\x16-_\x8a/'x\xa7\xd9f\ +\x06\x0c\x95\x8c}\xe4\xc2\x02\xbc\x1e\xf1\x19\x9e8B\xa1\ +\x07\xd8rQ\x03\x00Fs\x8d\x15$&\xa1\x0b`\xbf\ +\x0f\xec\xbcEo\xac\x11\xc80\x1eh3p\xcd^\xbe\ +\xb5\x0387\x8ar\x82\xc4\xf8^\x90\x1f\x08>CI\ +\xc2\xa0\xb8X\xe6\x8c\xa4\xe0\x09F5\x84\xda\xc8\x14[\ +\x0e\x00`\xbf\xf9y\x00[\x03\x8a\x0e\x9a\x7f\xc3=\xa7\ +\x13x\x89\xd5\x85\x1a\xaee\xcb\xfa%\x95\xd4\x1cy!\ +\xbf\xd0\xbc\xdb\xae\xaf\xcc\x09\xb1\x1b\x1d\x1e\xd3\x00,K\ +\xad`\x02:\xa0\xff*\xe0.,d\x95T\xa8\xa9_\ +Z\x08\x00Zy} \xacb\xe9b\x7f\x0a\xd6\xd5y\ +\x1e\x00C\x86\x7f\xe6\x18\xac\x84jp\xf7\x83\x8c\xf0E\ +\xca\xd0\x82}e\xd2\x1b\xdeH\x19\x0c\x84\xa8\xf3\x88\xdb\ +\x00\x00[<\xb5l3UE\x96\xc7\x00\xe8\xd7\xfd[\ +\xc7N\x00\xc0\x9c\x80\xad\xd1)\xe5;\xfc\xae\xaa\xc5\xcf\ +\x12\xfe{\xf3\xe5o\x03\xe9\x00\xf0d\xa3\x85\xca\xf4\xcf\ +\xc1\xce\xe7\x07\xea\xbf\x01r\xbaAbzw\xbf\xec\xd6\ +7\x01@U\xacM\xfa\xd7m8\x0a\x95l\xe62`\ +\xa8\x91\x06p{\xfak\xf7a\xc0\x9a\xde\x8e\x80\xca\x89\ +\xf4e\xfdBZ\xf3\x04\x00\xdc\xeb\x9b{\x15/\xe0\xe3\ +O\x13\x9e\x07\xf0[\x9f\xa4\xfc\xe5\xcb|\xdfiz\xce\ +_!\xad\xe9\x95`\xfd\x1b\x7f`V\x02\xc5\x0bA\xe7\ +\x1b\x07\x01\xe0\x86\xc0\x9c\xb8\xef\xc8\xbd\x81\x98\xfbm\xe4\ +&\x9fk\xf3I\xa0\xb0\x7f#\xa07\x00\xd8\xfd\x83\xf7\ +\xb27\x83\xf9\x89\xcd\x80\x1e\x06\xe0\xf8+\x00\xa0\xdd\xa0\ +7\x00X\x93P\xf9\x8c\xcf\x5c\xf0\xfd6\xe4?\xeaK\ +\xba]\xf3~`\xd7,Y\xda\xbf\xc3kk\xaa\x03p\ +t\x08\x00*\xde\xed\xdf\xbc\x17\xb2\xab\x01|\xee\xdb\xe6\ +\xc9\xbe\xef\xda7\x1b\xc0\x7f\xfaw}\xf5\x17>\xef\xbf\ +\xeb\xcb\x1d9\xaf\xed\x9b\x0f\xa47\xb6\x06*\xb0v\x85\ +\xbe\x7f\xb3\xeb\xad\xe4\xbf\xbdu-\xaa\xcf\xf7\x01p\xca\ +u\x00\xd6f\xee\xdb5\x94\xd6X\x0c`\xfb?/\x18\ +m5_m\xbb\x0e\xc0o\x17\x9e\x00\x06/\xab\xf4\xdb\ +V,\xbe\xb4~\x7f\xb6Q\xea\x17\x10\xd2\x1c\xa0>[\ +l\x00\xb0u\x18\x00\x0a\xbf\xddQ\x07\x80j|\xcb\xe0\ +\x13\x1b\xba\xda\xd9\x15x\xf3\xa0\xaa\xa5\x91!\x06;\xbc\ +0_\x03\xe0#'\x00\xcc\xcc\xc0;n\x0e1&\xe3\ +\xf9\x94\xd6\xaa\xa0\x177,\xef\xc7\xa9>\xfa\xb0y\xe8\ +\xfc\x5c\xe0\xe6\x0e\xff\x8e{\xf5L\xf4o9wh\xf8\ +p\xdf5\xe5\xc0\x5c\xefY`\xf0h\x86\x0e\xfa\x96\xf7\ +[\x5c\xae\x1f\x1a\xcb\xb4\xc0\xa9\xe3-6t\x1a\xb5\x0b\ +\x81\xf5\x03'\x00\xe0|S]\xe0\xcf\xd0g\xcd\xfcm\ +\xed\xbe\xdf\x1c\x06\x00\xdb\xd0\xd1\xae\xa6\x19\x00\xf6\x0c\x03\ +@\xff\x80\xf1\xc2,\xe0\xda\x15\x7fz\xe5\x8b\x927\xeb\ +\x00\xfd\xbf\x1e\xd4?\xf5\xfa\x17\x16\xa4\x03\xc5;i\x8e\ +\xec\x8c\xf3.=\xb0\xf16\x00\x18\x0c\xec\x8a\xd88\xcd\ +\xb2\xd2\x7fS\x15\x00M\x05\x004\xee\x00\x0c\xfe}\xc2\ +]\xb3\x01\x9c4\x03\xc0\xa7\x8f\xe8\x01\xdf\xa8\xf9\x080\ +\xdc\xe2\x9b{{\x01\xdc\xb2\x08\x00P\x0d\xbc\x17\xb0e\ +\xd7\xf4i@\xbb\xdd\x00\x18\xf0\xe4\x8c\xe09\xab\x95S\ +\x85S\x00\x0c\x06=\xed|\xb6\xe9u=\x0c\xb7\xe0\xc6\ +\xc3\x1e\xe7\xee\x1d\xdb\x01\x10\x95\xad\xec=\xe7NN\xf15\xc0\xbbQ^\x9c\x16\ +\x00_F\xd3\xc7\xaf\xd8.dw\x8e\x83\xd9\x00\xb6\xf8\ +\xb6\xedj\x86\xc7\xd1\xdeX\x09\x04\x16\xa8\x8a\xfb\x00\xfc\ +3\x105\x1d\xc0F\xc0\x00\xb4\xa6\x02X\x0d\x03\xc7\xf8\ +\xab\x9ek\x97\xc5=*\xf6\xa4\xafe.\x04u\x134\ +\xcf\x00\xc0w\x914\xe4\x01\xe0\xa6\x95\x00\xfc\x1b\xef\x8a\ +M\x08\x8a(\x1f\x063\x14\xce\x00\xc0\xd2@\x0e\x9f\xb0\ +\xef36\x04\x9e\x87{\x88\xa3\xf7k\xb8{5\xcbW\ +\xb4j\x0c\xc4,\x81\xde\xe4\x9b<\xf6\xa6\x02\x80\xdf\x92\ +\xa9\x13\x80\x9ee\xaf\xa9\x06\x81\xa7P\x0e\x02\x01V\xc7\ +\xca\x1f\x00\xc0\xaf,j\x00\xf0\xb4\xff\xd0x\x19\x80\xd7\ +\x83;k\xcb\xe3\x00P\xbd\x0f\x80\xf3\x1e\x00z\x92\xa7\ +\xc4<\x9b\xb1\x09\xb3\xb2\x10\xd8\xed\xdb\x09\xe1\x16\x80\xf5\ +:\xde|\x7f-\x00\x98\x08\xbf\xdf\xffs\x1b \x85j\ +\xc1\xa2\x9a*\x18>Q\xce\x91\xd7\xab\x81\x0a\x00\x8d{\ +\x00u\xbd\xaa\xa4\x1a\x80\x81\x92\xabn\xaa\x00\xa0R\xdd\ +\xb5\x1b\xc0\xa0V\xa5\x01,\x0f\x01p\xcb\x01\xe44l\ +\x02\x80\xbc\x95KJ\x01\x98>\x00po\x0e\x00\xac^\ +\x06lg\x99|\xac\x06\x02\xba+\xd5\x00\x0c|\x853\ +\xcc\xa9\xbb\xdd\xe7\x90\x0e\xdc\x82\xc6\xcf\x00@\xbd\xf2\xa6\ +M\x00\xa0U\xad\x04\x00U^)\x80\xddKU\x80\xba\ +\xfe6\x0b\x00R[\x01\xa8\xeej\x02\xd0,WI0\ +\x9b\xd5\xbe\x1b\xda\xa1y\x02x\xae\x09\x15\x99\xed\xf9~\ +\xa5\x7f\xfd\x9f\xda\xfam\xce\x9c\xde\xf9~\xff\xdakS\ +\xdf\x04\xb1\x19\x00\x9e e\xaf\x1a\xf0\xdc\x03\x00\xd6n\ +\xc2_\xf6\x00Hx\x1e\xd0o\xeb\xdb=s%\xf4\xd7\ +\xdd\xce\x1cy\x80\xe4\xa7\xb16\xb7\x15\x00\x0a;6a\ ++\xeby\x08\xd9K\xc0o_\xd0\x1b\xb0y\xa8\x07\xf5\ +3\xca\x80\x87(#\x00\x94\x9f+X\x07\x00\xd8\xbe\xe7\ +\x9a\x8fQ\x99\x19\xa8\x81\xac\xb09\xa0\xd4\xf10Y\xe3\ +\xf4\x077J\xf0\xdf\xac\xefml\x06\xca\x1e\xc0\xfa.\ +\xd4\xff\x99#\xe1\x7f7]y/\xe3\xfb\xc7N\xa0\xec\ +\x81@i\xaa\xae\x85\x7f0\x00\xc0\x07_\x00\xc0\xa2\xef\ +?\xf1g\xfd\xbd\x94\xb3\x8d\xa0^\xc4\x91->\xa7\xe2\ +s\xc3\xb6\xfdL\xcc\x94u\xb8\x9b\xceY\xc6\xa8\xd3\xbd\ +o\xf3\xcd\x22\xc1\xba\xe9\x0d\x0d\x9b\xb0\xf6\xe6@\x9d\x9e\ +O\xbf-\x98\xb6\xe3\x1f\xac\x9aI\xa9 \x88B\x00\xf5\ +\xd4\xf5j@\xbd\x88b\xa1R\x05\xd5\xf5\xdcd\xb8\xbd\ +\xe6\xf2\xe4\xc4\xd9\x19\xd4J\x00\x94$\xf1\x06E\xe0\xcd\ +\xb7\x9b\xae\xcf\x98\x9dx\xef\xb42\xfe\x13\xab\x15\xc9\x89\ +\x81\xe9`ibb=+&_\xb2\x1a\x00\xe6/\xac\ +\x93%&\xce\xaeK\x09\xbe\xba~;S\x85\xa5\xc0b\ +\x96gN\xb0j\x9a\xfa\xa0\x13\x93\x98\xc4$&1\x89\ +ILb\x12\x93\x98\xc4x\xe0\xff\x01\xc7\x99\xf6g\x12\ +L\xdbK\x00\x00\x00\x00IEND\xaeB`\x82\x83\ +\x06\x16\xadh\xc7c\xffg|];\x1e\xd6\x8f\x16H\ +:\xd7t\x08`\x12_\x15\xc3\x0a\x9br\xe7\xf0c\xfa\ +\xcd\xe3\xe6OP\x92\xa4}\xfb\x17\xcc\xbb\xf2\x91;?\ +b:\x07\x00t\x9a\xe5\xd8\x09\xcb\xb1_'\xe9NI\ +\xff'\xc92\x1c\x09\xdb\xba4\x97\xc9\xfe\xc3t\x08\xc0\ +o(b\xaf\x12\x00E\x8c']\xf6\xe0\ +\xad\xf3\x0f\x1eX\xdc\x96S{\xfe\xb2vU;\x1e\xd6\ +\xcf\xc2\x92\xbef96s8`\x9c\xe5\xd8GI\xe2\ +\xc8\xe3\x16Y[\x1c\xd3\x05\xff\xf9\xb3\xe9\x18\x92\xa4\xc5\ +\xc9\xfe\xf8\xe2\xd4\xc0\x0fM\xe7\x00\x80v\xb1\x1c;b\ +9\xf6\xb3,\xc7\xbeB\xd2\x7f%}B\xee\xeacx\ +\xd7\x05\xb9L\xf6A\xd3!\x00?\xa2\x88\xf1\xa0\xf9\x89\ +\xde\xaf\xa4\xa3\xf1\xb6\x9c\xd8\x93[\xfb\x9fv<\xac\xdf\ +\x1d$\xe9\x7fL\x87@\xb0\xd5\x87\xf3^!\x89\xf3\xe7\ +[\xe8\x9a\xc7\xfe\xa9?j:\x04\x10\x04\x141\x1e1'\ +\x91\xfebO$\xd6\xf2\x9f\xf9\xbf\xf8oG\xff\x1e[\ +\xdb\xea\x87\x0d\xba\xb0\xa4\xefX\x8e}@.\x93\x1d5\ +\x1d\x06\xfeb9vH\xd2w%\x1dh8J\xa0]\ +\xbc\xea\x16=8\xbe^g\xedv\xac\x92\xe1\xd6\x7f\xab\ +\xac\xaa\xa6+\x1e\xfe\xbb\xbe\xf1\xdf\x9b\x95\xaf\x94\xb6\xf7\ +j\x1f\xb5\x1c\xfb\xb2\x5c&\xbbMK\x03 \xd8\xea\xdf\ ++\x06\xeb\xff\xd9/)R\xff\xef\xfe-^\x86\xe4\x16\ +\xfa\xf3\xb6xY*i\xa1\xb8\x07\xc0\xb6n\x91\xf45\ +\xd3!\x80\xa0\xe0\x8b\xb0G\xec\xd37\xff\xf4V?\xe6\ +O\x1f\xfe\x9b~\xf1\xe8\xdd\xad~X\xb8v\x91\xf4i\ +Io7\x1d\x04\xbe\xf3\xbf\xe2t.O\xf8\xcd\x9a\xfb\ +t\xdf\xe8\x13\xfa\xd0n\xc7k\xaf\xbey-{\xdc;\ +6<\xac\x0b\xfe\xf3g\xdd\xbb\xed*\x98\xa7\x1a\x94\xf4\ +qIom\xd9\xc5\x01x\x86\xe5\xd8)IK\xe4\x16\ +#\xcb\xe4\x96&C[\xbc\xcc\xae\xff\xda+w\x9b\xea\ +\x806\x17.@+\x95$\xbd!\x97\xc9VL\x07\x01\ +\x82\x82\x22\xc6\x03~\xfa\xf0\xdf\xde\xf2\xa2E\xfb'[\ +\xf9\x98?\x7f\xf4n]\xf8\xef?\xb5\xf2!\xb1\xad\xb7\ +\xd5\xb7(\xfd\xdet\x10\xf8\x83\xe5\xd8/\x90\xf41\xd3\ +9\xb0\xd9\x03c\xeb\xf4\xe6;\xae\xd4\xc9\xf3v\xd7k\ +\x97\x1f\xaa\x05\x89\x99\xaf\xd8\xbfu\xc3C\xfa\xc1\xea\xdb\ +\xf5\x97u\xab\xa6\xf3fo\xb4\x1c\xfb\xa2\x5c&{\xd7\ +\x8c/\x0c\xc0\x08\xcb\xb1\xe3\x92v\x92\xfb\xe4\xcd\xce\xda\ +\xbc\x0dh\x85\xdc\x99+C\xc6\xc2\x01[;/\x97\xc9\ +\xdea:\x04\x10$\x141\x1e\xb0K\xcf\xec\xb3Z\xf9\ +xW<\xfcw}\xf9\xdf\x8ej\xad|PL&$\ +\xe9\xdb\xf5-J\xc3\xa6\xc3\xa0\xbbY\x8e}\xa0\xa4K\ +%\xa3\xa7'c\x12U\xd5t\xcd\xe3\xf7\xe8\xfa5\xf7\ +\xe9\x84\xb9\xbb\xe9\xe4y\xbb\xeb\xe0\xc1\xc5\x0a7\xf0O\ +\xf5H~\xa3\xfe\xf0\xe4\xbfu\xed\xe3\xf7\xea\xdf\xa3O\ +\xce\xe4\xf2Q\xb9sbN\x9e\xc9\x1b\x03h?\xcb\xb1\ +c\x92\xf6\x94;_e\x9f-~\xddU\xfc\xac\x0d\xef\ +\xbbK\xd2\xd9\xa6C\x00A\xc37\x07\xc3.[}\xeb\ +\xdeg,>py+\x1e\xabR\xab\xea\xc2mO\xde\ +@{\xad\x90t\x9e\xa47\x9b\x0e\x82\xeee9\xf6\x5c\ +I\xbf\x90\xd4c:\x0b\xb6\xafT\xab\xea\xda\xc7\xef\xd1\ +\xb5\x8f\xdf\xa3\xc1XJ{\xf7\xcd\xd3^}\xf3\xb50\ +\xd1\xa7t4\xaeZ\xad\xa6\xd1JQk\x8a\xa3z`\ +l\x9d\xee\xda\xf8\xa8\x1e\xcaol\xc5\xa5O\xb2\x1c\xfb\ +Y\xb9L\xf6\xeaV<\x18\x80\x99\xab\x0fS?\xb0\xfe\ +r\x90\xa4\x83%\xed+)n.\x150c%Ig\ +\xe62\xd9\x82\xe9 @\xd0P\xc4\x18\xb60\xd1w^\ +,\x14n\xfaq\x1e\xceo\xd49\xf7\xfeVwnd\ +\xd0\xb9\x01o\xb4\x1c\xfb\xca\x5c&{\x9d\xe9 \xe8>\ +\xf5\xa5\xeb?\x93;'\x00]b}i\x5c\x7f^\xfb\ +_\xfdy\xed\x7f;u\xc9/X\x8e}].\x93-\ +w\xea\x82\x00$\xcb\xb1\x97I:J\xd2\x91\x92,\xb9\ +\xa5K\xc4h(\xa0u\xce\xcde\xb2\xb7\x98\x0e\x01\x04\ +\x11E\x8cA\x97\xacZ\x19>y\xde\xee'6\xf3\x18\ +\x95ZU?\x7f\xf4n}\xe3\x81\xbfh\xb4RlU\ +4LOH\xd2\xb7,\xc7>0\x97\xc9rD\x15\xa6\ +\xebkr\x7f\xc0\x07vdOIo\x91t\x81\xe9 \ +\x80_\xd5\x8fu\xdeOn\xe1r\x84\xa4\x8c\xdcS\x86\ +\x00?\xbaY\xd2\xb9\xa6C\x00AE\x11cPo4\ +\xfe\xe6E\xc9\xfe\x19-e\xadI\xfa\xf3\xda\x07\xf4\x8d\ +\x07\xfe\xc2\xf1\xd4\xde\xb0T\xd2\xc5\x96c\x9f\x9e\xcbd\ +\x19\xcf\x83\x86X\x8e\xfd\x01Ig\x9a\xce\x81\xae\xf1\x09\ +\xcb\xb1\x7f\x90\xcbd\x9f0\x1d\x04\xf0\x03\xcb\xb1\x13\xda\ +\xbc\xd2\xc5\x92t\x98\xa4\x99O\xe4\x06\xba\xc7\x98\xa4W\ +\xb2\xca\x120\x87\x22\xc6\xa0\xe5=\xb3\xde=\xdd\xb7\x19\ +-\x17\xf5\xbb'\xfe\xa5\xcb\x1f\xfe;\x05\x8c\xf7o9\xf6\x9fr\x99\xecm\xa6\x83\xc0\xbb,\ +\xc7>L\xd2\x0f%5? \x0aA\xf3F\xcb\xb1\xed\ +\x5c&\xfbw\xd3A\x80nP\x1f\x86~\x92\xa4S\xea\ +\xbf\xce5\x9b\x080\xee\xf2\x5c&\xfb5\xd3!\x80\xa0\ +\xa3\x881\xe7\x0c\xfb\x81\x9bb\xf6\x037)\x19\x89i\ +Ej\x96\xfacI\xf5Db\x92\xa4\x91rA\xebJ\ +\xe3Z5\xbe^\xc5j\xc5pTLCB\xd2\x0f-\ +\xc7>,\x97\xc9n0\x1d\x06\xdec9\xf6\x12IW\ +\x8aga13\x11I_\x96t\xbc\xe9 \x80\x17Y\ +\x8e\x1d\x92{\x92\xd1\xb3\xea/O\x17\xa570\xe1\x01\ +Io0\x1d\x02\x00E\x8cI\xaf\x9b\xf8M\xbeR\xd2\ +?F\x1e7\x99\x05\xad\xb5\x87\xa4\xefX\x8e\xfd|\xe6\ +\xc5`K\x96c\x0fH\xbaZ\xd2\x22\xd3Y\xd0\xd5\x8e\ +\xab\x7f}\xb9\xd2t\x10\xc0\x0b\xeaCv-I\xa7K\ +:M\xd22\xa3\x81\x00o*Izy.\x93]o\ +:\x08\x00\x8a\x18#,\xc7\xdeO\xee34\xf0\xaf\xd3\ +$}X\xd2'\x0d\xe7\x80G\xd4o\x14~ \xf7D\ +\x0e\xa0Y\x9f\xb7\x1c\xfb\xea\x5c&\x9b7\x1d\x040\xc1\ +r\xec\xa4\xdc9/\xa7K:U\xd2\x1c\xb3\x89\x00\xcf\ +{\x7f.\x93\xfd\xb3\xe9\x10\x00\x5c\x141f\xbcn\xea\ +W\x81\x0f|\xdcr\xec\x95\xb9L\xf6Z\xd3A\xe0\x09\ +\x17\xca]&\x0f\xb4\xc2\x0aI\xef\x93t\x8e\xe9 @\ +\xa7X\x8e\xdd/\xf7\xeb\xe8\xf3%=S\x9cp\x044\ +\xearI_2\x1d\x02\xc0f\xec\x99\xed0\xcb\xb1c\ +\x92^j:\x07:\x22\x22\xe9G\x96c\xeff:\x08\ +\xcc\xaa\x1fS\x9d5\x9d\x03\xbe\xf3\x01\xcb\xb1\xd9\x82\x01\ +_\xb3\x1c\xbb\xd7r\xec\x97Y\x8e\xfdKI\x8f\xcb\x1d\ +t\xfe\x22Q\xc2\x00\x8d\xbaG\xd2\xeb\xd8.\x0fx\x0b\ ++b:\xefdI\xf3L\x87@\xc7\x0cH\xba\xdar\ +\xec#s\x99\xec\x1a\xd3a\xd0y\x96c\xbf\x5c\xd2\xa7\ +L\xe7\x80/\xf5\xc8\x1d\xdc{\xba\xe9 @+\xd5\x9f\ +\xb4:I\xd2\xcb$=OR\xdal\x22\xa0k\x0dK\ +zA.\x93\xddh:\x08\x80\xad\xb1\x22\xa6\xf3^a\ +:\x00:nWI\xbf\xb0\x1c;e:\x08:\xcbr\ +\xec\xe3%],m\xe7|z\xa0y\xa7Y\x8e}\x92\ +\xe9\x10@\xb3,\xc7\x0eY\x8e}\x94\xe5\xd8_\x95\xf4\ +\xb0\xa4_\xca-b(a\x80\x99\xa9IzU.\x93\ +\xbd\xcbt\x10\x00\xdb\xa2\x88\xe9\xa0\xfa\xde\xe6SM\xe7\ +\x80\x11\x87I\xfaf\xfdXM\x04\x80\xe5\xd8\xfb\xcb=\ +\xa6:n:\x0b|\xef\x02\xcb\xb1\x13\xa6C\x003a\ +9\xf6\xbe\x96c\x7fJ\xd2\x7f$9\x92\xde\x22\x06\xef\ +\x02\xad\xf0\x89\x5c&\xfb3\xd3!\x00L\x8e\xadI\x9d\ +\xf5BI\xac\x8a\x08\xae\x97K\xda`9\xf6\xdb\xd8\xa7\ +\xebo\x96c\xef*\xe9z\xb9[\xd3\x80v\xdbC\xd2\ +\xbb$}\xc6t\x10\xa0\x11\x96c\x0f\xc9]\xed\xf2\x1a\ +IO3\x9b\x06\xf0\xa5\xab$\x9dm:\x04\x80\xed\xa3\ +\x88\xe9\xacW\x9a\x0e\x00\xe3\xde\x22iD\xd2\xfbM\x07\ +A{X\x8e\xbdD\xd2\xef$\xcd5\x9d\x05\x81\xf2a\ +\xcb\xb1/\xcbe\xb2\x0f\x99\x0e\x02L\xc6r\xec\xb0\xa4\ +\xe3\xe5\x96//\x90\x944\x1a\x08\xf0\xaf\x95\x92^\xc1\ +\x93~\x80\xb7Q\xc4tH\xfdd\x8b\xa3M\xe7\x80'\ +\x9ce9\xf6\xc6\x5c&{\xae\xe9 h-\xcb\xb1\x17\ +I\xfa\xad\xa4\xa5\xa6\xb3 pz\xe5\x1e\x91\xfe|\xd3\ +A\x80-\xd5\x7f\xfey\xb5\xdc\x02fg\xb3i\x00\xdf\ +[-\xe9\xf4\x5c&;f:\x08\x80\x1d\xa3\x88\xe9\x9c\ +\x97\x89\x99<\xd8\xec\x93\x96c\x17s\x99\xecy\xa6\x83\ +\xa05,\xc7^ w%\xcc\xee\xa6\xb3 \xb0N\xb7\ +\x1c\xfby\xb9L\xf6\xe7\xa6\x83 \xd8\xea3\x8bN\x95\ +t\xa6\xdc\xd3\x22\xf9\xf9\x07h\xbf1I\xcf\xcee\xb2\ +\xabM\x07\x0105\xbe1v\x0e\xdb\x92\xf0T\x9f\xb3\ +\x1c\xfb\xa3\xa6C\xa0y\x96c\xcf\x93[\xc2\xeca:\ +\x0b\x02\xef+\x96c\xf7\x9a\x0e\x81`\xb2\x1c{'\xcb\ +\xb1?-\xe9AI?\x91t\x8a\xf8Y\x13\xe8\x84\x8a\ +\xa4\x97\xe62\xd9\xbf\x99\x0e\x02\xa01\xac\x88\xe9\x00\xcb\ +\xb1\x0f\x92\xb4\xb7\xe9\x1c\xf0\xa4\xb3\xebC\x0b\xdf\xcd^\ +\xde\xeed9\xf6\x5c\xb9%\xcc^\xa6\xb3\x00\x92\x96H\ +\xfa\xa4\xa4w\x1a\xce\x81\x80\xa8\xcf~9I\xee\x0c\xb4\ +g\x8b\xe2\x05\xe8\xb4\x9a\xa47\xe72\xd9\xff3\x1d\x04\ +@\xe3\xf8f\xd9\x19/1\x1d\x00\x9e\xf6NI?\xb6\ +\x1c\xbb\xc7t\x10LO\xbd\x84\xf9\xad\xa4}Lg\x01\ +\xb6\xf06\xcb\xb1\x0f1\x1d\x02\xfef9\xf6\x90\xe5\xd8\ +\xef\x95t\x8f\xa4k$=W\xfc\x5c\x09\x98\xf0\xa1\x5c\ +&\xfb-\xd3!\x00L\x0f\xdf0\xdb\xccr\xec\x90\xa4\ +\x17\x9b\xce\x01\xcf{\x91\xa4\x5c\xfd\xc4\x1dt\x01\xcb\xb1\ +\x17J\xfa\xa3\xa4\xfdLg\x01\x9e\x22\x22\xe9\xeb\x96c\ +GL\x07\x81\xffX\x8e}\xa8\xe5\xd8\x17\xcb\x1d\x0az\ +\x9e\xa4]\x0dG\x02\x82\xcc\xcee\xb2\x9f1\x1d\x02\xc0\ +\xf4\xb15\xa9\xfd\x0e\x95\xb4\xc2t\x08t\x85\x83%\xdd\ +b9\xf6\xf3s\x99\xec\x8d\xa6\xc3`\xfb,\xc7^.\ +w%\xcc.\xa6\xb3\x00\xdbq\xb0\xdc\xd5v_0\x9c\ +\x03>`9vT\xd2\x0b\xe5~L\x1df6\x0d\x80\ +\xba\xefKz\x9b\xe9\x10\x00f\x86\x151\xedw\x86\xe9\ +\x00\xe8*\x0b$\xfd\xder\xec\xd7\x99\x0e\x82\xc9Y\x8e\ +\xbd\xb7\xa4\x9c(a\xe0}\x9f\xb4\x1c{O\xd3!\xd0\ +\xbd,\xc7\x1e\xb4\x1c\xfb,I\xff\x96\xf4CQ\xc2\x00\ +^\xf1+I\xaf\xcde\xb2U\xd3A\x00\xcc\x0cEL\ +\x1b\xd5\x07\xd8\xbd\xc8t\x0et\x9d\x84\xa4oY\x8e\xfd\ +\xb5\xfa\x11\xa0\xf0\x08\xcb\xb13rK\x98\xa5\xa6\xb3\x00\ +\x0dHJ\xfa\x0e[\x940]\x96c\xefj9\xf6\x85\ +rO?\xfa\xac\xf8\x9a\x07x\xc9u\x92^\x90\xcbd\ +\x8b\xa6\x83\x00\x989\x8a\x98\xf6:R\xee\x09\x16\xc0L\ +\xbcI\xee\xea\x98\xc5\xa6\x83@\xb2\x1c\xfbt\xb9?\xfc\ +\x0c\x99\xce\x02L\xc3a\x92\xdeg:\x04\xba\x83\xe5\xd8\ +\xc7Z\x8e\xfd3\xb9\x03x\xdf&\x89\xa3\xd0\x01o\xf9\ +\xbd\xa4\xd3s\x99l\xc1t\x10\x00\xcd\xa1\x88i/\x86\ +\xf4\xa2YG\xc8\x9d\x1bs\x94\xe9 Af9\xf6\xfb\ +$].)e:\x0b0\x03\x1f\xb7\x1c{_\xd3!\ +\xe0M\x96cG,\xc7>\xc3r\xec[\xe5\xde\xe4=\ +O\xfc|\x08x\x91#\xe99\xb9Lv\xcct\x10\x00\ +\xcd\xe3\x1bm\x9b\xb0-\x09-\xb4P\xee\xca\x98\xb7\x98\ +\x0e\x124\x96c\xc7-\xc7\xbeD\xd2\xe7\xc4\xd7Kt\ +\xaf\x84\xdc-J1\xd3A\xe0\x1d\x96c'-\xc7\xce\ +J\xbaW\xee\xfc\x97\x83\x0cG\x02\xb0}7Iz6\ +%\x0c\xe0\x1f\x9c\x9a\xd4>\xc7\xc8\x1d\xbc\x0a\xb4BL\ +\xd2W-\xc7>P\xd2\xdb\xd8\x17\xdc~\xf5-a?\ +\x92\x941\x9d\x05h\x81\xa7I\xfa\xa0\xa4\xb3M\x07\x81\ +Y\x96c\xcf\x92\xf4\x16Io\x974\xcfp\x1c\x00S\ +\xbbI\xd23s\x99\xecF\xd3A\x00\xb4\x0e\xcf\xf0\xb6\ +\x0f\xdb\x92\xd0\x0eo\x90\xf4[\xcb\xb1\xf9\xe1\xb9\x8d,\ +\xc7>N\xd2\xad\xa2\x84\x81\xbf|\xb4>p\x1a\x01d\ +9\xf6b\xcb\xb1?/\xe9\xbf\x92>)J\x18\xa0\x1b\ +\xfcQ\xd2I\xb9Lv\x83\xe9 \x00Z\x8b\x22\xa6\x0d\ +\xea\xdb\x92N3\x9d\x03\xbe\x95\x91ts}u\x0cZ\ +\xa8>+\xe1#\x92~#nR\xe0?QI\xdf\xb7\ +\x1c\x9b\x81\xd3\x01b9\xf6.\x96c\x7fK\xee\x11\xd4\ +\xef\x91\xd4g8\x12\x80\xc6\x5c'\xe9Y\xb9Lv\xd8\ +t\x10\x00\xadG\x11\xd3\x1eG\x8amIh\xaf\xe5\x92\ +\x1c\xcb\xb1_h:\x88_X\x8e\xbd\x93\xdcA\x95\xe7\ +H\xe2\xb8_\xf8\xd52\xb9\xf3bB\xa6\x83\xa0\xbd,\ +\xc7\xde\xcbr\xec\xcb$\xfdS\xd2\xeb$\xc5\x0dG\x02\ +\xd0\xb8\xff\x93t*3a\x00\xff\xa2\x88i\x8f\xd3M\ +\x07@ \xa4%\xfd\xc4r\xecs,\xc7\xa68h\x82\ +\xe5\xd8\xaf\x92t\x87$\xcbt\x16\xa0\x03\x9e+\xe9\x9d\ +\xa6C\xa0=,\xc7>\xc0r\xec\x9fH\xbaS\xd2+\ +\xc4<@\xa0\xdb\xfc@\xd2\x0b9\xa2\x1a\xf07\x8a\x98\ +\xf6\xa0\x88A\xa7\x84$}D\xd2o\x98\x1b3}\x96\ +c\xaf\xb0\x1c\xfbjI\xdf\x95\xd4o:\x0f\xd0A\x9f\ +\xb1\x1c\xfb\x10\xd3!\xd0:\x96c?\xcdr\xec\xab$\ +\xdd&\xf7\xd4F~\xc6\x03\xba\xcf\x97$\xbd\x22\x97\xc9\ +\x96L\x07\x01\xd0^&\xa9\xc7p\x1c\xc0\ +\x84\xb8\xdc\x15u\x071\x04\xb2\xbb\xd5\x0b\xb5OHz\ +\x96\xe9,\x00f\xac&\xe9\x83\xb9L\xf6\xb3\xa6\x83\x00\ +\xe8\x0c\x9e-i\xbd\xd3L\x07@`-\x96\xf4;\xcb\ +\xb1\xdf\xc3\xfc\x87\xed\xb3\x1c\xfb\x99r\xb7!}V\x94\ +0\x08\xb6\x15\x92~\xc0\xd6\xc6\xeed9\xf6\xc1\x96c\ +\xff\x9f\xa4\x9bE\x09\x03t\xb3\x92\xa43)a\x80`\ +aEL\xeb\xbd\xc0t\x00\x04ZT\xd2\xe7%=\xc3\ +r\xec7\xe42\xd9\x07M\x07\xf2\x8a\xfaj\xb5\xf3%\ +\x1dk8\x0a\xe0%\xcf\x92t\xae\xa4\x0f\x98\x0e\x82\xc6\ +X\x8e\xbd\xbf\xa4\x8f\xcb}\xe2\x87\xd2\x1d\xe8n\xeb$\ +\xbd(\x97\xc9\xfe\xd6t\x10\x00\x9dE\x11\xd3B\x96c\ +\xef&i\x1f\xd39\x00I'K\xfa\xbb\xe5\xd8\xef\x93\ +\xf4\xed\x5c&[5\x1d\xc8\x14\xcb\xb1\xf7\x91;G\xe7\ +\xc5b\x15 0\x99\xb3,\xc7\xfe{.\x93\xfd\xbe\xe9\ + \xd8\xbe\xfa\xd7\xb2\x8fIz\xa1(`\x00?\xb8_\ +\xd2sr\x99\xec?M\x07\x01\xd0y\xdc\x94\xb4\x16C\ +z\xe1%\x03\x92\xbe!\xe9O\x96c\x1fn:L\xa7\ +Y\x8e}\xa4\xe5\xd8WH\xfa\x9b\xa43\xc4\xd7;`\ +{B\x92.\xb6\x1c\xfbh\xd3A\xb0-\xcb\xb1w\xb6\ +\x1c\xfbR\xb9_\xcb^$J\x18\xc0\x0f~+\xe9p\ +J\x18 \xb8X\x11\xd3Z\x141\xf0\xa2\xc3\xe5\x961\ +?\x91\xf4\xc9\x5c&{\x97\xe9@\xedb9v\xaf\xa4\ +\x97Hz\x93\xa4C\x0d\xc7\x01\xbaI\x5c\xd2\xe5\x96c\ +\x1f\x99\xcbd\xffe:\x0c$\xcb\xb1\x17K\xfa\xa8\xa4\ +3\xe5\xfe\xfb\x00\xf0\x87/Iz_.\x93-\x9b\x0e\ +\x02\xc0\x1c\x8a\x98\x16\xb1\x1c{\x91\xa4\xc3L\xe7\x00\xb6\ +#,wU\xc8\x8b\xeb\xabD.\xf4\xcb\xe9J\xf5\xc1\ +\xc4\x87Jz\x8d\xa4\x97\xc9]\x09\x04`\xfa\xe6J\xfa\ +\xb5\xe5\xd8\xc7\xe42\xd9\xd5\xa6\xc3\x04\x95\xe5\xd8s\xe4\ +\xce\xecy\x8b\xa4\x94\xe18\x00Zo\x81\xa4\x98$\x8a\ +\x18 \xc0(bZ\xe79b\xb90\xbc/,wi\ +\xfb\x8b,\xc7\xbe[\xd27%]\xdem7]\x96c\ +\x87%\x1d%\xe9\xf9\xf5\x97ef\x13\x01\xbe\xb1\xb3\xdc\ +2\xe6\xd8\x5c&\xbb\xc6t\x98 \xa9\xaf\xe8{\x87\xa4\ +\xb3$\xf5\x1b\x8e\x03\xa0}\xce\x90\xb4\xbb\xe5\xd8\xa7q\ +\xa8\x02\x10\x5c\x141\xads\xaa\xe9\x00\xc04\xed-\xe9\ +\x8b\x92\xce\xb7\x1c\xfb\xaf\x92\xae\x92\xf4{I+s\x99\ +l\xc9h\xb2I\xd4\x87a\x1f#\xf7\xd4\xa3\x13%\xcd\ +7\x1a\x08\xf0\xaf\xbd%]c9\xf6\x89\xb9Lv\xbd\ +\xe90~g9vT\xd2\xeb%\xfd\xaf\xa4\x85\x86\xe3\ +\x00\xe8\x8c\x83%\xddb9\xf6\x0br\x99\xec\x9fL\x87\ +\x01\xd0y\xa1Z\xad\xb6\xcd\x1fZG\xbf\xca@\x94\xcd\ +r\x99\xac\xd1\xebO\x97\xe5\xd8)IO\x8a%\xc4\xf0\ +\x87qI\x7f\x91t\x93\xa4\xbb\xea/\xff\xcce\xb2\xe3\ +\x9d\x0a`9\xf6\x5cI\xfbK:P\xd2!\x92\x8e\x96\ +\xb4\xa8S\xd7\x07 I\xbaU\xd2\xc9\xb9L\xf6\x09\xd3\ +A\xfc\xa8\xbe\xad\xf2\xf9\x92>%iw\xc3q\x00\x98\ +Q\x90\xf4\x9a\x5c&\xfb#\xd3A03\x96c\x9b\x8e\ +\xd0\x12\xb9\x1b.5\x1d!pX\x11\xd3\x1a\xc7\x8b\x12\ +\x06\xfe\x91\x92\xbb\xea\xe4\xd8-\xfe\xacb9\xf6C\x92\ +\x1e\x94\xf4\x90\xa4\x87\xeb\xbf\xae\x97\xb4A\xd2\xba\xfa\xaf\ +\x1b\xb4y\xcf\xf3\xb8\xa4\xfcS\x1e;)\xa9G\xd2\xa0\ +\xdcY.\x8b\xea/\x8b\xb7x\xd9]\xd2P+\xffB\ +\x98\x5c>?\xa2\xd1\xd1\x0d*\x97\x8b\x0a\x85B\x8aF\ +\xe3J$\xd2\xea\xe9\xe9W(\xc4NK\xe8`I\xbf\ +\xaf\xaf\x8cy\xcct\x18?\xb1\x1c\xfbXI\x9f\x11\xb3\ +\xe5\x80\xa0KH\xfaA}\xd5\xef's\x99\xec\xb6\xcf\ +\x90\x03\xf0%\x8a\x98\xd6x\xb6\xe9\x00@\x9bE\xe4\xce\ +aa\x16\x8bO\x8c\x8e\xae\xd7\xf0\xf0\xdaM\xff]\xab\ +\xd5T,\xe6U,\xe6\x95\xcf\x8fhhh\xa1B!\ +N\xfc\x86\xf6\x95\xf4g\xcb\xb1O\xc9e\xb2\xf7\x9a\x0e\ +\xd3\xed,\xc7\xde_n\x01s\x8a\xe9,\x00<#$\ +\xe9lI\xbbX\x8e\xfd\xc6\x5c&[4\x1d\x08@\xfb\ +\xf1Sv\x93\xeaK\x8b\x99\x0f\x03\xa0kT\xab\x15\x0d\ +\x0f\xaf\xdb\xee\xff/\x95\x0a\x1a\x19\xd9\xfe\xffG\xe0\xec\ +,\xe9F\xcb\xb1\x8f2\x1d\xa4[Y\x8e\xbd\xa7\xe5\xd8\ +?\x94t\x9b(a\x00L\xee\xd5\x92\xae\xb5\x1c\x9ba\ +\xdd@\x00P\xc44\xef \xb9\xdb)\x00\xa0+\xe4\xf3\ +\xa3\x92v\xbc\xfay||\xa43a\xd0-\x86$\xfd\ +\xd6r\xec\xee\x1a\xe2f\x98\xe5\xd8\xbb[\x8e}\xa9\xdc\ +Y[g\x88\x9f\xbb\x00\xec\xd8q\x92\xfeh96\x83\ +\xbb\x01\x9fckR\xf3\xd8\x964\x89BaL\xe3\xe3\ +\xc3*\x95\x0a\xaa\xd5j\x8a\xc5\x12J\xa7\x07\x15\x8f'\ +MG\x03\x02\xafT*L\xf9:\xd5j\xa5\xa5\xd7,\ +\x14\xc64:\xbaA\xa5R^\xa1PX\xf1xR\xc9\ +d\xaf\x92\xc9tK\xaf\x83\xb6JH\xba\xc8r\xec#\ +$es\x99\xec\xa8\xe9@^U\xdf\x82\xf4nI/\ +\x17?k\x01\x98\x9e\x03\xe5n\x09=\x99-\xa1\x80\x7f\ +\xf1\xc3A\xf3(b\xb6P\xab\xd5\xb4a\xc3\xe3\xf5g\ +\xdc7+\x14\xc6T(\x8cipp\x9e\x92\xc9\xde\x96\ +^o||X\xf9\xfch\xfd\xe6\xb2\xa6x<\xa9\xde\ +\xde!\xc5b\x89\x96]\x07\xf0\x93ry\xea\xed\xe7\x91\ +H\xeb\xbe=\x8c\x8f\x0fk\xc3\x865\x9b\xfe\xbbV\xab\ +(\x9f\x1fU>?\xaaD\x22\xad\xc1\xc1y\x0c\x07\xee\ +.\xaf\x94t\xa4\xe5\xd8\xaf\xc9e\xb2\x8e\xe90^a\ +9vD\xd2\xf3$\xfd\x8f\xb6\x1ev\x0e\x00\xd3\xb5\x93\ +\xdc2\xe6\xd9\xb9L\xf6/\xa6\xc3\x00h=\x96\xc86\ +\xc1r\xecy\x92\x0e5\x9d\xc3KFG\xd7oS\xc2\ +li\xe3\xc6'T\xabU[r\xadZ\xad\xa6u\xeb\ +\x1e\xd1\xc6\x8dO\xa8X\x1cW\xadVU\xadVS\xa1\ +0\xae\xb5k\x1fV\xb1\xf8\xd4\x03{\x00H\x8d\x151\ +\xd1h\xbc%\xd7\xaaV\xab\xda\xb8q\xfb\xa7\x1f\x17\x0a\ +\xa3\x1a\x1b\xdb\xd0\x92k\xa1\xa3v\x91\xbb|\xfe\x8b\x96\ +c\x0f\x9a\x0ec\x92\xe5\xd8\x8b,\xc7\xfe\xa0\xa4\x7fK\ +\xbaB\x940\x00Zc\xb6\xdc-\xa1<\xe9\x0b\xf8\x10\ +ELsN\x15\xef\xc3\xad\x8c\x8dm\xdc\xe1\xff\xafV\ +\xab\xca\xe7\xc7Zr\xad\x91\x91u\xdb-[j\xb5\x9a\ +\x86\x87\xb7\x7f\xf3\x07\x04U\xa5RV\xad6\xf5\xe9\x98\ +\xb1Xk\x8a\x98Bat\xca\xeb1\x8f\xa6k\x85%\ +\xbdS\xd2}\x96c\xbf\xc5r\xec\x98\xe1<\x1dc9\ +\xf6\xa0\xe5\xd8\xaf\xb4\x1c\xfbjI\xab$}J\x9c*\ +\x07\xa0\xf5\xd2\x92\xae\xb4\x1c\xfb%\xa6\x83\x00h-\xb6\ +&5\x87\x93\x0f\xb6Rkh\xaeD>?\xa2T\xaa\ +\xf9\xedI\xf9\xfc\x8eo\xdeJ\xa5\xa2*\x95\x92\x22\x91\ +\xc0\xdc\x1b\x00Sjd5\x8c\xd4\xba\x151\x85\xc2\xd4\ +\xc5k\xa5Rj\xc9\xb5`\xcc\x1cI_\x95t\x96\xe5\ +\xd8\xe7K\xfa\xb6\x1f\xe7\xc7X\x8e\xbd\x93\xa4\xe7\xc8\xdd\ +\x92|\xbc\xa4\xd6|\x92\x00\xc0\x8e\xc5%}\xdfr\xec\ +\xde\x5c&\xfbm\xd3a\x00\xb4\x06E\xcc\x0c\xd5\x9f\xf9\ +;\xc1t\x0eo\x09)\x12\x89\xaaR)\xef\xf0\xb5\x8a\ +\xc5qU\xabU\x85\xc3\xcd-&j\xa4\xf4)\x14\xc6\ +\xd5\xd3C\x11\x03L(\x95:W\xc4Ll\x15\x9c\x0a\ +e\xa9o,\x97\xf4eIg[\x8e}\x85\xa4\xefK\ +\xfac.\x93m\xed\xe4\xe7\x0e\xa8\xcf{\xd9]\xd2!\ +\x92\x8e\x96\xbb\xddhW\x93\x99\x00\x04ZD\xd27-\ +\xc7\xee\xcbe\xb2_2\x1d\x06@\xf3(bf\xee0\ +I\x03\xa6CxM\x22\x91\x9er\xde\x83{s6\xaa\ +T\xaa\xaf\xa9kE\x22Q\x95\xcb;~&\xbdX\xcc\ +\xab\xa7\xa7\xbf\xa9\xeb\x00~\xd2\xd8\x8a\x98\x90\xa2\xd1\xe6\ +\xcb\x91R)\xdf\xd0L\xa8x<\xd5\xf4\xb5\xe0)\x03\ +\x92^[\x7fYk9\xf6\x1f%\xdd(\xe9\xef\x92\x1e\ +\x90\xf4H.\x93\xf5\xc4` \xcb\xb1\xc3\x92\x16\xc9\x1d\ +\x8c\xb9\x87\xa4\x83\xea/\xfbKj\xdddy\x00h^\ +H\xd2\x17-\xc7\xee\xcfe\xb2g\x9b\x0e\x03\xa09\x14\ +13\xf7L\xd3\x01\xbc(\x99\x9c\xba\x88\x91&\xb6'\ +5W\xc4\xc4\xe3\xc9\x06\x8a\x98\xa9\x9f\x8d\x07\x82\xa4\xb1\ +A\xbd1\xb9?\xef5\xa7\x91mI\x92\x94H\xf44\ +}-x\xd6\x90\xa4\xd3\xeb/\x9bX\x8e]\x93\xb4^\ +\xd2\xba\xfa\xaf\xeb%m\xd8\xe2\xf7\x13/c\xf5?\x97\ +\xa4\xbc\xa4\x89/\xea\xc3\x92\xca\x92\xaa[\xfc\xff\xb8\xdc\ +y\x0a\x13f\xc9\xfd9gV=\xc7\xd0\x16\xbf_,\ +\xb7|Y&\xb6\x18\x01\xe8.\x9f\xb0\x1c\xbb_\xd2\xfb\ +r\x99\xec\xd4C\xdf\x00x\x12E\xcc\xcc\x9dl:\x80\ +\x17\xc5\xe3\xc9\x86\xb6'\x15\x0ayU\xab\x15\x85\xc3\x91\ +&\xae\x95\xd2\xd8\xd8\xf0\x0e_\xa7Z\xad\xa8\x5c.\xb6\ +l\xde\x05\xd0\xcdj\xb5\xda\x94\xe5\xa5\xd4\xd9\xf90\xa1\ +PX\xf1x\xb2%\xd7CW\x09\xc9-Ef\x99\x0e\ +\x02\x00]\xe8=\x92\xfa,\xc7~3e\x0c\xd0\x9d8\ +\xf1g\x06\xea\xc7V\x1fl:\x87W%\x93\xe9\xa9_\ +I\xb5\x1d\x1es\xdd\x88F\xb73\xb0*\x06p\xb9%\ +LgNL\xaaTJ\x0d\x95>\x89DJ\xa1P\xf3\ +\xabo\x00\x00\x08\x987J\xfaV}\xa6\x15\x80.C\ +\x1133'\x8a\xf7\xddv%\x93\x8dm\xabo\xb6\x88\ +\x09\x87#\x0d=s\xdf\xc8\xb0P \x08:yb\x12\ +\xdb\x92\x00\x00h\xbb\xd7J\xba\x982\x06\xe8>\x94\x09\ +3\xc3|\x98\x1d\x88\xc5\x12\x0d\x9d\x82\xe2\x9e\x9e\xd4\xdc\ +a\x1a\x8d\xac\x8a)\x95\xf2M]\x03\xf0\x0b\x8a\x18\x00\ +\x00|\xe7U\x92\xbeK\x19\x03t\x17\x8a\x98i\xb2\x1c\ +;$\xe9$\xd39\xbc\xae\xb1\xedI\xee\xd0\xdef$\ +\x12S\xcf\x96\xa8V\xab*\x95\x0aM]\x07\xf0\x83F\ +\x8a\x98P(\xacH\xa4\xb9\xf1a\xb5ZU\xc5\xe2\xd4\ +\x05h,\x96hjN\x14\x00\x00\x90$\xbd\x5c\x941\ +@W\xa1\x88\x99\xbe\x83$\xcd7\x1d\xc2\xebR\xa9\xce\ +lO\x8a\xc5\x98\x13\x034\xaa\x91\x22\xa6\x15\xf3a\x0a\ +\x85q\xd5jS\xcf\xa2\xe1\xd8j\x00\x00Z\xe6\xe5\x92\ +\xbeM\x19\x03t\x07\x8a\x98\xe9c5L\x03\xa2\xd1x\ +\xfd\x08\xdc\x1d+\x16\xf3S\x9e\xb0\xb4#\xe1pX\xb1\ +X\xa2\x81\xebP\xc4 \xd8j\xb5jC\x9fklK\ +\x02\x00\xa0k\xbdZ\xd27\xeb+\xf8\x01x\x18E\xcc\ +\xf41\x1f\xa6A\x9d\x1a\xda\xdb\xc8\xb3\xea\xc5b\xbe\xa1\ +g\xe8\x01\xbf*\x95\xbc5\x1f&\x1c\xe6\xd8j\x00\x00\ +\xda\xe0LI\xdf\xa0\x8c\x01\xbc\x8d\x22f\x1a,\xc7\xee\ +\x93t\xa4\xe9\x1c\xdd\xa2\xf1\x22\xa6\xb991\x8d\xdc\xcc\ +\xd5j5\xe6\xc4 \xd0:5\xa8\xb7T*44\x84\ +;\x1eg5\x0c\x00\x00m\xf2zI_4\x1d\x02\xc0\ +\xf6Q\xc4L\xcf1\x92\xa6\xdeo\x03IR4\x1ak\ +\xe8\xa6\xaeT*\xa8R)\xcd\xf8:\xf1xJ\xa1\xd0\ +\xd4\xa5?\xdb\x93\x10d\x9d*b\x1a\xfd>\x03\x9d\x18\xda\x1b\x8b%\x98\x13\x03lG\xa7\ +\xe6\xc3\xe4\xf3\x141\x00\x00xPH\xd2\xc5\x96c?\ +\xc7t\x10\x00.\x8a\x98\xc6\x1do:@\xb7jt{\ +R3E\x8c;'f\xea\xd3\x93(b\x10D\x8d\x17\ +1\xcd\xcd\x22odEL$\x12m\xc9\x11\xd9\x00\x00\ +`Z\xe2\x92~l96'\xc0\x02\x1e@\x11\xd3\xb8\ +\x13M\x07\xe8V\x91H\xb4\xa1\x92\xa4\x5c.5|\xc3\ +8\x99D\xa2\xb191\xd5\xea\xd4[4\x00?\xe9\xc4\ +\x8a\x98b1\xdf\xd0\xe7\x16\xaba\x00\x000\xa6G\xd2\ +\xd5\x96c\xefg:\x08\x10t\x141\x0d\xb0\x1c{\x85\ +\xa4\x9dL\xe7\xe8f\xa9T\xfb\x87\xf662'F\x92\ +J%V\xc5 X\x1a)b\xa2\xd1XC\xdb\xfb\xb6\ +\xa7\xf1\xd3\x92\x1a\xfb<\x05\x00\x00m1 \xb7\x8cY\ +b:\x08\x10d\x141\x8dy\x86\xe9\x00\xdd\xae\xf19\ +13?\xc6\xda\x9d\x133\xf5\x87t\xa1\xc0\xc0^\x04\ +I\xad\xa1A\xd8\xcdn\x17j\xa4\x88\x09\x85B\x0d\xad\ +\x5c\x03\x00\x00m\xb5Dn\x193`:\x08\x10T\x14\ +1\x8d9\xcet\x80n\x17\x0eG\x14\x8fO\xbd=\xa9\ +R)\xa9T*\xcc\xf8:\x8d\x5c\x8391\x08\x92r\ +\xb9\xd4\xd0\xb1\xed\xcd\x141\x95J\xb9\xa1U7\xf1x\ +\xb2\xa1\xb2\x14\x00\x00\xb4\xdd~\x92\xae\xb4\x1c\x9b=\xc3\ +\x80\x01\xfcD<\x05\xcb\xb1C\x92N0\x9d\xc3\x0f:\ +qzR#\xcf\xb6\x97\xcbEU\xab\x95\x19_\x03\xe8\ +&\x9d\x98\x0f\xd3\xe8\xb6$\xe6\xc3\x00\x00\xe0)\xc7K\ +\xfa\xa1\xe5\xd8\x11\xd3A\x80\xa0\xa1\x88\x99\xda\xfe\x92\xe6\ +\x9a\x0e\xe1\x07\x8d\x9e\x9e\xd4\xe8M\xddd\x1a\x9d?\xc1\ +\xaa\x18\x04E#\xdb\x92$)\x16kfPoc\x9f\ +O\x141\x00\x00x\xce\xa9\x92>g:\x04\x104\x14\ +1S;\xd6t\x00\xbfp\xb7'5\xb2b\xa5\xb1\x1b\ +\xc7\xc9D\xa3q\x85\xc3S\x97\xfa\x141\x08\x8aFV\ +\xc4\x84B!E\x223;\xba\xbaV\xab\xa9P\x98\xfa\ +\xf3)\x1a\x8d\xcd\xf8\x1a\x00\x00\xa0\xad\xdem9v\xd6\ +t\x08 H(b\xa6v\x8c\xe9\x00~\x92JM\xbd\ +=)\x12\x896u\x8dF\xca\x9eb\x91\x81\xbd\x08\x86\ +R\xa9\x91\x13\x93\x9a;\xb6\xbaV\xe3\xd8j\x00\x00\xba\ +\xdc\x85\x96c?\xdbt\x08 ((bv\xa0>\x1f\ +\xc62\x9d\xc3O\x12\x89\xf4\x94\xc3:S\xa9\xbe\xa6\xae\ +\xd1\xd8P\xe0rS\xd7\x00\xbaE#\x1f\xeb\xcc\x87\x01\ +\x00 \xf0\x22\x92\xbeo9\xf6~\xa6\x83\x00A@\x11\ +\xb3c\xfbH\x9ac:\x84\x9f\x84\xc3a\xf5\xf7\xcf\xde\ +\xee\xffO$z\x94N\x0f6u\x8dF\x06\xf66\xb2\ +}\x09\xf0\x83px\xea/\xf3\xcd\xad\x88i\xe4\xd8\xea\ +pC\x05)\x00\x000j@\xee\xb1\xd6\x8bL\x07\x01\ +\xfc\x8e\x22f\xc7\xd8\x96\xd4\x06\xa9T\x9ff\xcdZ\xa0\ +X,\xa9P(\xa4P(\xacD\xa2G\x83\x83\xf35\ +k\xd6\x02\x85B\xa1\xa6\x1e?\x12\x89M9x\xb4\x91\ +-R\x80\x1f4\xf2\xb1\x9eL\xce|\xb5J\xb9<\xf5\ +\x8a\x1b\xb7\x1cm\xee\xf3\x1a\x00\x00t\xc4\x12\xb9\xc7Z\ +\xf3\x0c\x0a\xd0F\xcd\x0d\xe3\xf0\xbf\xa3M\x07\xf0\xabD\ +\xa2\xa7\xad[\x15\xfa\xfa\xe6h\xdd\xbaGT\xab\xd5\xb6\ +\xf9\x7f\xf1xR\xe9\xf4\xac\xb6]\x1b\xf0\x92\xde\xdeY\ +*\x16\xf3*\x95\x0a\xdb\xfd\xff\xcd\x0c\xd1\x8dD\xa2\xaa\ +Tv<`\x9bmI\x00\x00t\x95\xc3$}K\xd2\ ++L\x07\x01\xfc\x8a\x151;\xc6\x8a\x98.\x15\x8f'\ +54\xb4H\x89D\xcf\xa6U7\xf1xJ\xfd\xfds\ +44\xb4\xb0\xe9U7@\xb7\x08\x85\xc2\x1a\x1aZ\xa4\ +\xbe\xbe\xd9\x8a\xc7\x93\xf5\xadJ!\xc5b\x09\x0d\x0e\xce\ +Soos\xa5\xe4T+nB\xa1\x90\x12\x89\xc6\x8e\ +\xae\x07\x00\x00\x9e\xf1r\xcb\xb1\xdfo:\x04\xe0W\xac\ +\x88\xd9\x0e\xcb\xb1\xf7\x944\xdft\x0e\xcc\x5c,\x96\xd0\ +\xacY\x0bL\xc7\x00\x8c\x0b\x85BJ\xa7\x07\x94N\x0f\ +\xb4\xfc\xb1\xd3\xe9A\x95J\x85\xed\x0e\xed\xed\xef\x9f\xd3\ +\xd0\x9c\x1a\x00\x00\xe09\xe7Z\x8e}w.\x93\xfd\x85\ +\xe9 \x80\xdf\xf0\xd3\xf1\xf6\xb1-\x09\x00\xa6\x10\x0a\x85\ +4k\xd6\x02\x0d\x0e\xceW2\x99V8\x1cQ(\x14\ +R<\x9e\xd4\xacY\x0b\x9a>\x05\x0d\x00\x00\x18\x13\x91\ +t\x99\xe5\xd8{\x9b\x0e\x02\xf8\x0dE\xcc\xf6\xb1-\x09\ +\x00\x1a\x94L\xa6588_\xf3\xe6-\xd7\xfc\xf9+\ +6m\x0d\x04\x00\x00]m@\xd2U\x96c\xb7~Y\ +-\x10`\x141\xdbG\x11\x03\x00\x00\x00 \xe8v\x97\ +\xf4]\xcb\xb1\x19\xb2\x08\xb4\x08E\xcc$,\xc7\xdeE\ +\xd2b\xd39\x00\x00\x00\x00\xc0\x03\x9e'\xe9\xa3\xa6C\ +\x00~A\x1139\xcbt\x00\x00\x00\x00\x00\xf0\x90\x8f\ +Y\x8e}\x8a\xe9\x10\x80\x1fP\xc4L\xee\x08\xd3\x01\x00\ +\x00\x00\x00\xc0C\xc2\x92~`9\xf6\xce\xa6\x83\x00\xdd\ +\x8e\x22frG\x99\x0e\x00\x00\x00\x00\x00\x1e3(\xe9\ +\xa7\x96c'L\x07\x01\xba\x19E\xccSX\x8e=$\ +i/\xd39\x00\x00\x00\x00\xc0\x83\x0e\x96\xf4E\xd3!\ +\x80nF\x11\xb3\xad\xc3\xc4\xfb\x05\x00\x00\x00\x00\xb6'\ +k9\xf6\x19\xa6C\x00\xdd\x8a\xc2a[\x19\xd3\x01\x00\ +\x00\x00\x00\xc0\xe3\xbea9\xf6\x1e\xa6C\x00\xdd\x88\x22\ +f[\x0c\xea\x05\x00\x00\x00\x80\x1d\xeb\x93\xf4#\xcb\xb1\ +S\xa6\x83\x00\xdd\x86\x22f\x0b\x96cG\xe5nM\x02\ +\x00\x00\x00\x00\xec\xd8\x81\x92\xbe`:\x04\xd0m(b\ +\xb6v\x90\xa4\x1e\xd3!\x00\x00\x00\x00\xa0Kd-\xc7\ +>\xd5t\x08\xa0\x9bP\xc4l\xedH\xd3\x01\x00\x00\x00\ +\x00\xa0\xcb\x5cl9\xf6\x22\xd3!\x80nA\x11\xb3\xb5\ +\xa3L\x07\x00\x00\x00\x00\x80.3[\xd2\xa5\x96cs\ +\x7f\x094\x80O\x94\xad1\xa8\x17\x00\x00\x00\x00\xa6\xef\ +\x04I\xef3\x1d\x02\xe8\x06\x141u\x96c/\x96\xb4\ +\xc4t\x0e\x00\x00\x00\x00\xe8Rg[\x8e\xfd4\xd3!\ +\x00\xaf\xa3\x88\xd9\xec\xe9\xa6\x03\x00\x00\x00\x00@\x17\x8b\ +K\xfa\xae\xe5\xd8I\xd3A\x00/\xa3\x88\xd9\x8c\x22\x06\ +\x00\x00\x00\x00\x9a\xb3\x8f\xa4O\x9a\x0e\x01x\x19E\xcc\ +f\x141\x00\x00\x00\x00\xd0\xbcwZ\x8em\x99\x0e\x01\ +x\x15E\x8c\xa4\xfat\xefCM\xe7\x00\x00\x00\x00\x00\ +\x1f\x88H\xba\xc4r\xec^\xd3A\x00/\xa2\x88q\xed\ +%\xa9\xcft\x08\x00\x00\x00\x00\xf0\x89]$\x9dg:\ +\x04\xe0E\x141.\xb6%\x01\x00\x00\x00@k\xbd\xc9\ +r\xec\x93L\x87\x00\xbc\x86\x22\xc6u\x98\xe9\x00\x00\x00\ +\x00\x00\xe03!I_g\x8b\x12\xb05\x8a\x18\x17\xf3\ +a\x00\x00\x00\x00\xa0\xf5v\x92\xf4\x19\xd3!\x00/\x09\ +|\x11c9v\x8f\xa4\xfdM\xe7\x00\x00\x00\x00\x00\x9f\ +z\x8b\xe5\xd8G\x99\x0e\x01xE\xe0\x8b\x18I\x07J\ +\x8a\x9a\x0e\x01\x00\x00\x00\x00>\x15\x92\xf4M\xcb\xb1\x13\ +\xa6\x83\x00^@\x11#\x1db:\x00\x00\x00\x00\x00\xf8\ +\xdc^\x92\xdeo:\x04\xe0\x05\x141\xd2\xc1\xa6\x03\x00\ +\x00\x00\x00@\x00|\xc8r\xec=L\x87\x00L\xa3\x88\ +\xa1\x88\x01\x00\x00\x00\x80NHH\xba\xc8r\xec\x90\xe9\ + \x80I\x81.b,\xc7N\xc9]\x22\x07\x00\x00\x00\ +\x00h\xbf\xe3%\xbd\xcct\x08\xc0\xa4@\x171rO\ +KbP/\x00\x00\x00\x00t\xce\x17,\xc7\x1e4\x1d\ +\x020%\xe8E\x0c\xdb\x92\x00\x00\x00\x00\xa0\xb3\xe6K\ +\xfa\x84\xe9\x10\x80)\x141\x00\x00\x00\x00\x80N{\x8b\ +\xe5\xd8\xfb\x9a\x0e\x01\x98@\x11\x03\x00\x00\x00\x00\xe8\xb4\ +\xa8\xa4\x0bM\x87\x00L\x08l\x11c9v\x5c\x12\x0d\ +,\x00\x00\x00\x00\x98q\xac\xe5\xd8\xcf7\x1d\x02\xe8\xb4\ +\xc0\x161rK\x98\xb8\xe9\x10\x00\x00\x00\x00\x10`\x9f\ +\xb5\x1c;a:\x04\xd0IA.b\xd8\x96\x04\x00\x00\ +\x00\x00f\xed*\xe9\xad\xa6C\x00\x9d\x14\xe4\x22\xe6\x00\ +\xd3\x01\x00\x00\x00\x00\x00\xfa\xa8\xe5\xd8sL\x87\x00:\ +%\xc8E\xcc~\xa6\x03\x00\x00\x00\x00\x004(\xe9c\ +\xa6C\x00\x9dB\x11\x03\x00\x00\x00\x000\xed\xcd\x96c\ +\xefe:\x04\xd0\x09\x81,b,\xc7^&i\xc8t\ +\x0e\x00\x00\x00\x00\x80$\xf78\xebsM\x87\x00:!\ +\x90E\x8cX\x0d\x03\x00\x00\x00\x00^s\x9a\xe5\xd8\x87\ +\x9a\x0e\x01\xb4\x1bE\x0c\x00\x00\x00\x00\xc0\x0bBbU\ +\x0c\x02\x80\x22\x06\x00\x00\x00\x00\xe0\x15\xcf\xb0\x1c\xfbX\ +\xd3!\x80v\x0aj\x11\xb3\xbf\xe9\x00\x00\x00\x00\x00\x80\ +I}\xcat\x00\xa0\x9d\x02W\xc4X\x8e\x9d\x90\xb4\xa7\ +\xe9\x1c\x00\x00\x00\x00\x80I\x1da9\xf6sM\x87\x00\ +\xda%pE\x8c\xa4\xbd\xe4N\xe4\x06\x00\x00\x00\x00x\ +\xd3\xd9\x96c\x87L\x87\x00\xda!\x88E\x0c\xf3a\x00\ +\x00\x00\x00\xc0\xdb\x0e\x94\xf4l\xd3!\x80v\x08b\x11\ +\xb3\x8f\xe9\x00\x00\x00\x00\x00\x80)}\xd8t\x00\xa0\x1d\ +\x82X\xc4\xecm:\x00\x00\x00\x00\x00`J\x87[\x8e\ +}\x82\xe9\x10@\xab\x05\xb1\x88\xd9\xcbt\x00\x00\x00\x00\ +\x00@CX\x15\x03\xdf\x09\xd4\xd0Z\xcb\xb1\x93\x92V\ +\x98\xce\x01\x00\xedV\xab\xd5T*\xe5M\xc7\xd8\xaeX\ +,\xa9P\x88\xf9{\x00\x00`J\xc7Y\x8e}T.\ +\x93\xfd\x93\xe9 @\xab\x04\xaa\x88\x91\xb4\xbb\xa4\x88\xe9\ +\x10\x000\x13\xb3f\xf5\xeb\xe7?\xbb\xb0\xa1\x02\xe3\xcf\ +\x7f^\xa9W\xbf\xe6\x9d\xed\x0f5C\x17\x7f\xfb\x0b\xb2\ +\xac\xc3L\xc7\xd8\xa4V\xab\xe9\xb4\xd3\xde\xae\xb5\xeb6\ +\x98\x8e\x02\x00\x00\xb6\xf5!1\xb8\x17>\x12\xb4\x22&\ +\xd0\x83z\xd3\xe9\x94\xde\x7f\xd6\xebv\xf8:k\xd7\xae\ +\xd3\xd5W_\xdf\xa1D\x8d{\xd6\xb3\x9f\xa1\xa1Y\x83\ +\xa6cL\xea\xb3\x9f\xfb\xb6FG\xc7M\xc7@\x00\x1c\ +z\xc8\xbe\x0d\xaf\x22\xb9\xf9\x96\xdb\xdb\x1b\xa6I7\xdf\ +|\xbb\xa7\x8a\x98P(\xa4C\x0e\xddG\xd7]\xf7g\ +\xd3Q\x00\x00\xc0\xb6N\xb1\x1c\xfb\xc0\x5c&{\xbb\xe9\ + @+\x04\xad\x88\x09\xf4|\x98\xfd\xf7\xdfC\xc7\x1d\ +\xf7\xf4\x1d\xbe\xce\x8f\x7f\xf2\x7f\xba!wc\x87\x125\ +\xee\x99\xcf\xbb6\xfc\xba\x0f<\xb0\xba\x8dI\x9a\xf7\xc0\ +\x03\xabLG\xd8\xc6t\xde\xbf\x00\x00\xa0\xe3\xce\xb0\x1c\ +{\xa1\xe9\x10@+\x04\xad\x88\x09\xf4\xd1\xd5\x07\x1e0\ +ua\xf0\x9f\x7f{\xef\xe6H\xf2\xf6M\xe5\x81\x141\ +\xe8\x80\xbe\xbe\xb4\x96.]\xd0\xf0\xeb?\xf1\xc4\xda6\ +\xa6i\xde\x93O\xae7\x1da\x1bK\x97.Poo\ +\x8f\xe9\x18\x00\x00`rqIo1\x1d\x02h\x85\xc0\ +\x141\x96cG\xe5\x0e\xeb\x0d\xa4\x9e\x9e\xa4\xf6\xd8c\ +\xa7)_o\xd5\x83\x0f\xb7?\xcc\x0c<\xf4\xd0#\xa6\ +#l\xd7\x1e{\xec\xa4\x9e\x9e\xa4\xe9\x18\xf0\xb9]v\ +Y:\xadS\x86FG\xc7\xda\x98\xa6y##\xa3\xa6\ +#l#\x14\x0ai\xa7\xe5\x8bL\xc7\x00\x00\x00\xdb\xf7\ +f\xcb\xb1S\xa6C\x00\xcd\x0aL\x11#i\x17I1\ +\xd3!LY\xbe|\x91\xc2\xe1\xa9\xff\xb9\xbdz\xf36\ +<\xec\xbd\x9b\xb6\x09\xe1pX\xcb\xb9yC\x9b\xed\xbc\ +b\x89\xe9\x08\x81\xb0x\xc9|\xd3\x11\x00\x00\xc0\xf6\xcd\ +\x91\xf4\x12\xd3!\x80f\x05\xa9\x88\xd9\xcdt\x00\x93\x96\ +.ilK\xc3\xd8\x987O\xff\xf1\xe2\xb3\xe7[j\ +\xf4\xfd\x0b\xcc\xd4\xa2E\xf3\xa6\xf5\xfa\xe9\xb4\xb7\xb7\xd8\ +\xf4\xf6\xa6MG\x98\xd4\xb2\xa5l=\x07\x00\xc0\xe3\xde\ +n:\x00\xd0\xac \x151\x81\xdd\x96$\xa9\xe1\xd9\x12\ +==\xde\x5c\xe9\xe7\xd5\x9b\xb6\x09\xd3\x99\xdd\x01\xcc\xc4\ +\xc2\x85s\xa7\xf5\xfa\xb3g\xcfjS\x92\xd6\x98={\ +\xd0t\x84I\xb1\x22\x06\x00\x00\xcf;\xc8r\xec#M\ +\x87\x00\x9a\x11\xa4\x22&\xd8+b\x1a,\x0a\xbc\xfa,\ +z_\x9f\xb7\x8b\x98%\xdc\xbc\xa1\xcd\xe6\xce\x9d^\xb1\ +\xb2b\xc5\xd26%i\x8d\x9dvZf:\xc2\xa4\x16\ +M\xb3\xf0\x02\x00\x00F\xbc\xd1t\x00\xa0\x19A*b\ +\x02\xbd\x22\xa6\xd1m\x0d\xcb\x96zs\xd6\xc9\xe2\xc5\xde\ +\xde.0\xddm#\xc0t\xf5\xf5O\xaf\x8c\xdcc\x8f\ +]\xda\x94\xa45\xf6\xf4h\xbe\xe9\xbe\x9f\x01\x00\x80\x11\ +/\xb6\x1c\xdb\xdb\xcb\x7f\x81\x1d\x08R\x11\xb3\xab\xe9\x00\ +&5zs\xb1bgo>K\xed\xf5g\xf7\xfb\x07\ +zMG\x80\xcf\xf5\xf7M\xefc\xec\xe9\x87\x1e\xd8\x9e\ + -\xf2\xf4\xa7\x1fh:\xc2\xa4\xa6\xfb~\x06\x00\x00\ +F\xa4$\xbd\xcat\x08`\xa6\x02Q\xc4X\x8e\x9d\x94\ +\x14\xe8#G\x1a\xbd\xb98\xf0\xc0}\xda\x9cdf\x0e\ +:p_\xd3\x11v\x88\x9b7\xb4[,\x16\x99\xd6\xeb\ +?\xedi\xfb+\x95\xf2\xe6\xb1\xea\xc9dB\x87\x1cr\ +\x80\xe9\x18\x93\x8a\xc7\xa3\xa6#\x00\x00\x80\xc6\xbc\xd6t\ +\x00`\xa6\x02Q\xc4\xc8]\x0d\x13\x94\xbf\xeb\xa4\x1a\xbd\ +\xb98\xfc\xb0\x83\xdb\x9cdf\x8e8\xe2i\xa6#\xec\ +\x107oh\xb7\xe9\x96*\xc9dB'\x9eh\xb5)\ +Ms\x8e?\xfe(O\x97D\x00\x00\xa0+\xeco9\ +\xb6\xb7o\x12\x80\xed\x08J9\x11\xe8A\xbdR\xe37\ +\x17\xcb\x97/\xd1^{y\xeb\xdd\xb5\xef\xbe{h\xc9\ +\x12o\xcf\x88\xe1\xe6\x0d^\xf4\x92\x17\x9fj:\xc2\xa4\ +^\xf6\xd2\xd3MG\x00\x00\x00\xfe\xc0\xaa\x18t\xa5\xa0\ +\x141\x81\x1e\xd4;]\xa7\x9dv\xb2\xe9\x08[9\xf5\ +\xb9'\x99\x8e\x00\x187>\x9e\x9f\xf6\xdb\x1cv\xd8A\ +\x9e\xdbnx\xe0\x81\xfb\xe8\xb0\xc3\x0e2\x1dc\xbb\xf2\ +\xf9\x82\xe9\x08\x00\x00\xa0qgX\x8e\x1d7\x1d\x02\x98\ +\xae\xa0\x141;\x9b\x0e`\xdatn.^\xf8\x82\xe7\ +\xa8\xbf\xdf\x1b3O\xd2\xe9\x1e\xbd\xe0\x05\xcf6\x1dc\ +J\xf9|\xd1t\x04\xf8\x5c\xa9T\x99\xd1\xdb\xbd\xff\xac\ +\xb7(\x14\x0a\xb58\xcd\xcc\xbd\xe7\xddo2\x1da\x87\ +J\xa5\xb2\xe9\x08\x00\x00\xa0qC\x92N1\x1d\x02\x98\ +\xae\xa0\x141\x81_\x11S,6~s\xd1\xdf\xdf\xab\ +W\xbd\xeaEmL\xd3\xb83\xcf|\x89gJ\xa1\x1d\ +)\x95J\xa6#\xc0\xe76\x0e\x8f\xcc\xe8\xed\x0e9\xe4\ +\x00=\xf7\xb9\xcfhq\x9a\x99y\xce\xb3O\xd4\xe1\x87\ +{s\x0e\xd5\x84\x0d\x1bg\xf6~\x06\x00\x00\xc6\xbc\xc2\ +t\x00`\xba\x82R\xc4\xecd:\x80i\xd3\xbd\x89{\ +\xe3\x1b^\xae\xf9\xf3\xe7\xb6)Mc\x16-\x9a\xaf7\ +\xbe\xe1\xe5F34\x8a\x9b7\xb4\xdb\xf0\xc6\xd1\x19\xbf\ +\xed\xff~\xf4]Z\xbcxA\x0b\xd3L\xdf\xc2\x85\xf3\ +\xf4\xf1\x8f\xbf\xdbh\x86F4\xf3~\x06\x00\x00F<\ +\xc7r\xec~\xd3!\x80\xe9\xf0}\x11c9vT\x01\ +?\xbaZ\x9a\xfe\xcdE*\x95\xd4\xb9\xe7\xbe\xdf\xd8\x96\ +\x86P(\xa4s\xce>\xcb\xb3'\xab<\xd5\xc6\x0d\x14\ +1h\xaf5k\xd6\xcd\xf8m\x07\x06\xfat\xc1\x97\xcf\ +6\xf6\xf9\x14\x8f\xc7t\xfe\x17>\xa6\x81\x01\xef\xff\x8c\ +\xf4\xf0#kLG\x00\x00\x00\xd3\x93\x94t\x9a\xe9\x10\ +\xc0t\xf8\xbe\x88\x91[\xc2\x04\xfel\xe1\x99\xdc\x5c\x1c\ +s\xf4\xe1z\xf5\xab\xcdlQ:\xf35/\xd1\xd1G\ +\x1ff\xe4\xda3\xf1\xf0\xc3\x8f\x9b\x8e\x00\x9f{\xa4\xc9\ +\x82`\xff\xfd\xf7\xd6\x17\xcf\xff\xb8\x22\x91\xce~\xd9\x8f\ +D\xc2\xba\xe0\xcb\xe7\xe8\x90C\x0e\xe8\xe8ug\xea\xa1\ +\xd5\x8f\x99\x8e\x00\x00\x00\xa6\xcf\x1bs\x15\x80\x06\x05\xa1\ +\x88\xd9\xc9t\x00/xp\xd5#3z\xbb\x0f\xbc\xff\ +m:\xe1\x84L\x8b\xd3\xec\xd8\x09'dt\xd6Yo\ +\xe9\xe85\x9b\xb5\x9a\x9b7\xb4Y+\xca\xbe\x13N\xc8\ +\xe8\x82/\x9f\xa3x<\xd6\x82DS\x8b\xc5b:\xff\ +\x0b\x1f\xef\xf8\xd7\x90f\xaczpf_+\x01\x00\x80\ +Q'Y\x8e=h:\x04\xd0\xa8 \x141\xbb\x98\x0e\ +\xe0\x05\x0f>\xf8\xe8\x8c\xde.\x12\x09\xeb\x8b\xe7\x7f\xbc\ +c\xabS\x8e9\xfap}\xe9\x8b\x9f\xe8\xf8\xb3\xf6\xcd\ +\x9a\xe9\xfb\x17h\xd4\xbf\xff\xb3\xba%\x8fs\xd2I\xc7\ +\xe8\x92\x8b\xbf\xa8\xb9s\x87Z\xf2x\xdb3w\xee\x90\ +.\xb9\xf8|=\xebY\xc7\xb7\xf5:\xad\xc6\x8a\x18\x00\ +\x00\xbaR\x5c\xd2\xa9\xa6C\x00\x8d\xea\xae\xbb\xdd\x99\xd9\ +\xc9t\x00/xp\xf5\xcc\x8b\x82T*\xa9\xaf\xd9\x9f\ +\xd1\xe9\xa7=\xb3\x85\x89\xb6\xf5\xfc\xe7?K\xb6\xfdi\ +%\x93\x89\xb6^\xa7\x1d\x9ay\xff\x02\x8d\xb8\xff\xfe\x07\ +U\xab\xd5Z\xf2XO\x7f\xfa\x81\xfa\xf9\xcf\xbe\xa3\xe3\ +\x8e;\xb2%\x8f\xf7T\xc7\x1e{\xa4\xae\xba\xf2\xdb:\ +\xec\xb0\x83\xda\xf2\xf8\xedR\xab\xd5\xf4\xc0\x7f\x1f6\x1d\ +\x03\x00\x00\xcc\xcci\xa6\x03\x00\x8d\xa2\x88\x09\x88\xff\xfe\ +\xf7aU\xab\xd5\x19\xbf},\x16\xd3\xe7>\xf7\x11\x9d\ +s\xf6\xfb\xd4\xd3\x93ja2)\x9d\xee\xd19\xe7\x9c\ +\xa5\xcf~\xe6C\x8a\xc5:\xb3e\xa2\x95\xaa\xd5\xaa\xfe\ +\xcb\xcd\x1b\xdalxx\xb4\xa5+\xaf\xe6\xce\x1d\xd27\ +\xbe\xfe9]t\xd1\xa7\xb5\xcb.;\xb5\xe41W\xac\ +X\xa6\x0b/8G\xdf\xfc\xc6\xe7\x8c\x9f\xba6\x13\x0f\ +>\xf8\xa8FF\xc6L\xc7\x00\x00\x003s\x92\xe5\xd8\ +\xad\xbdQ\x01\xda\x84\x22& \xc6\xc6\xf2\xba\xe7\xde\x07\ +\x9a~\x9c3\xcex\x9e\xae\xbd\xe6\xfb:\xe5\x94\xe3\x14\ +\x0e7\xf7\xe1\x13\x0e\x87u\xca)\xc7\xe9\x9a\xab\xbf\xa7\ +3^\xd2\xbd+\x09\xef\xb9\xe7\x01\x8d\x8d\xe5M\xc7@\ +\x00\xdcu\xd7\xbfZ\xfe\x98\xcf8\xd1\xd2\xd5\xbf\xbaT\ +_\xfd\xca\xb9:\xf6\x98#\xa6\xbd-0\x12\x09\xcb\xb2\ +\x0e\xd3\x97\xbft\xb6\xae\xbd\xe6{z\xe63\x8fky\ +\xc6Ni\xc7\xfb\x17\x00\x00tLZ\xd23L\x87\x00\ +\x1a\x11\x84\xd3\x84v6\x1d\xc0+n\xbf\xfd\x9f\xdak\ +\xcf\xe6\xdf\x1d\x0b\x17\xce\xd3\x05_>G\xf7\xdc{\xbf\ +\xbew\xd9\x15\xfa\xc5/\xaf\xd7\xe8h\xe3\xcf\x22\xf7\xf6\ +\xa6\xf5\x9cg\x9f\xa0W\xbc\xf2\x05\xdac\xf7\xee\x1f\xe1\ +s\xfb\x1d\xff4\x1d\x01\x01\xb1r\xe5]:\xe5\x14\xab\ +\xe5\x8f\x1b\x0e\x87u\xd2I\xc7\xe8\xa4\x93\x8e\xd1\xda\xb5\ +\xeb\xf5\xe7\x1bWj\xe5\xca;\xf4\xaf\x7f=\xa0\x07\x1e\ +X\xad\xd1\xd11\x8d\x8c\x8c\xaa\xb77\xad\x9e\x9e\x94V\ +\xacX\xaa]v\xd9I\x87\x1er\x80\x8e8\xe2i\x9a\ +={V\xcb3\x99\xb0\xf2\xafw\x99\x8e\x00\x00\x00\x9a\ +\xf3\x5cI\xffg:\x040\x15_\x171\x96c\xc7%\ +-4\x9d\xc3+n\xbb\xed\x9fz\xe9\x19\xcfj\xd9\xe3\ +\xed\xb1\xfb.:\xe7\x9c\xb3\xf4\xa1\x0f\xbd]7\xdfr\ +\xbbn\xba\xf1\xaf\xfa\xe7=\xf7\xeb\xbf\xff]\xad\x8d\x1b\ +\x875<<\xaa\xbe\xbe\xb4\x06\x07\x07\xb4t\xe9\x22\xed\ +\xb9\xc7.:\xe2\x88Ct\xe8\xa1\x07(\x95J\xb6,\ +\x87i\xb7\xddF\x11\x83\xceX\xb9\xf2.\xd5j5\x85\ +B\xa1\xb6]chhP\xcfy\xf6\x89z\xce\xb3O\ +l\xdb5\xbc\xa8V\xabi\xe5-\x141\x00\x00t\xb9\ +gY\x8e\x1d\xcae\xb2\xad\x19\xac\x07\xb4\x89\xaf\x8b\x18\ +I\x8b%\xb5\xef\x8e\xa5\xcb\xfc\xedo\xf7\xaaR\xa9(\ +\x12\x89\xb4\xf4qS\xa9\xa4\x8e9\xfap\x1ds\xf4\xe1\ +-}\xdcnP\xa9T\xf4\xb7\xbf\xddc:\x06\x02b\ +\xed\xba\x0d\xba\xeb\xee\xfb\xb5\xef>\xbb\x9a\x8e\xe2;\xff\ +\xfc\xe7\x7f\xb4v\xdd\x06\xd31\x00\x00@s\x16I\xda\ +O\xd2\xdfL\x07\x01v\xc4\xef3b\x96\x98\x0e\xe0%\ +\xa3\xa3c\xac\xdeh\xb1\xdbn\xfb\xa7FG\xc7M\xc7\ +@\x80\x5cw\xdd\x9fLG\xf0\xa5\xdf\xff\xe1f\xd3\x11\ +\x00\x00@k\x9cb:\x000\x15\x8a\x98\x80\xf9\x037\ +\x1b-\xc5\xfb\x13\x9d\xf6\xbb\xdf\xdd\xacr\xb9b:\x86\ +\xafT\xab5\xfd\xeew\x7f1\x1d\x03\x00\x00\xb4F\xb0\ +\xf6W\xa3+\xf9\xbd\x88Yf:\x80\xd7\xfc\xfe\x0f7\ +\xabT*\x9b\x8e\xe1\x0b\xa5R\x99g\xd1\xd1q\x1b6\ +\x0c\xeb\x96[\xfen:\x86\xaf\xfc\xf5\xd6\xbb\xf4\xd8c\ +O\x9a\x8e\x01\x00\x00Z\xe3(\xcb\xb1\x13\xa6C\x00;\ +\xe2\xf7\x22\x86\x151O\xb1q\xe3\xa8n\xc8\xfd\xd5t\ +\x0c_\xb8!\xf7Wm\xdc8j:\x06\x02\xe8\x9ak\ +\x1d\xd3\x11|\xe5\x17\xbf\xf8\x83\xe9\x08\x00\x00\xa0uR\ +\x92\x8e4\x1d\x02\xd8\x11\x8a\x98\x00\xfa\xf9\xcf\x7fg:\ +\x82/\xf0~\x84)7\xdc\xf0WVp\xb4\xc8c\x8f\ +=\xa9\x1bn\xa0\x9c\x06\x00\xc0gN0\x1d\x00\xd8\x11\ +\x8a\x98\x00\xba\xed\xb6\x7f\xe8\xbe\xfb\xfek:FW\xbb\ +\xef\xbe\xff\xea\xb6\xdb\xfea:\x06\x02\xaaR\xa9\xe8\xa7\ +\x97\xff\xdat\x0c_\xb8\xfc\xf2\xebT\xa90s\x07\x00\ +\x00\x9f\xc9\x98\x0e\x00\xec\x88\xdf\x8b\x98\xa5\xa6\x03x\xd5\ +\xf7\xbf\xffK\xd3\x11\xba\x1a\xef\xbf\xeeQ\xab\xd5T\xab\ +UU\xab\xd5$\xd5L\xc7i\x99\x9f\xff\xfc\xf7Z\xb7\ +n\xa3\xe9\x18]m\xdd\xba\x8d\xfa\x19+\xdb\x00\x00\xf0\ +\xa3\xc3\x98\x13\x03/\xf3m\x11c9v\x5c\xd2<\xd3\ +9\xbc\xea\xf7\x7f\xb8Y\x0f<\xf0\x90\xe9\x18]\xe9?\ +\xffy\x88!\xbd]\xa0Z\xad\xaaT*\xa8P\x18\xd5\ +\xf8\xf8\x88\xf2\xf9\x11\x15\x8byU*\xe5z)\xd3\xdd\ +\xf2\xf9\x82\xbe\xff\x03\x0a\xc1f\xfc\xf0\x87W+\x9f/\ +\x98\x8e\x01\x00\x00Z/)\xe9\x10\xd3!\x80\xed\xf1m\ +\x11#i\x91\xa4\x90\xe9\x10^U\xad\xd6\xf4\x8do^\ +n:FW\xfa\xe6\xb7.W\xb5\xda\xdd7\xf2\x9bW\ +\x89T}QJL\x03\xee\xbf\xffA\xfd\xf8\xc7\xd7\ +\x9a\x8e\xd1\x15~\xfc\xe3ku\xff\xfd\x0f\x9a\x8e1#\ +\xb5ZU\xa5R^\xe3\xe3\xc3\x1a\x1f\x1fU\xa9TP\ +\xa5RV\xa5RV\xa9TP>?\xa2\x91\x91u\x1a\ +\x1b\xdb\xd8u+Ej\xb5\xaa\x8a\xc5B}\xeb\xd1:\ +\x95\xcb\xa5)\xdf\xa6Z\xad\xa8T\xca\xabV\xeb\xd6\xe2\ +ik_8\xff;\x1a\x1b\xcb\x9b\x8e\xd1\x15\xc6\xc6\xf2\ +\xfa\xc2\xf9\xdf1\x1d\x03\x00\x00\xb4\xdf\x12\xcb\xb1\x17\x98\ +\x0e\x01L\xc6\xcfE\x0c\x9ft\x0d\xba\xf8\x92\xab\xf4\xdf\ +\xff>l:\x86\xa7\xfd\xf7\xbf\x0f\xeb\xe2K\xae2\x1d\ +c\xc6*\x95\xb2\x0a\x851\x15\x8b\xf9I\xb7 \xd5j\ +5\x95\xcb%\x8d\x8dm\xd0\xf0\xf0\xba\xed\xbe\x9e\x97\xd4\ +j5\x95JE\x8d\x8en\xd0\xc6\x8dOhllx\ +Z+z\xca\xe5\xd2vW\xcdt\x9bG\x1f}B\x17\ +\x5c\xf8=\xd31\xba\xc2\x85\x17~_\x8f>\xfa\x84\xe9\ +\x18\x00\x00\xa03\x18\xd8\x0bO\xf2s\x11\xb3\xd0t\x80\ +nQ(\x14u\xce'\xbf\xc6\xbc\x84\xed(\x95\xca:\ +\xfb\x9c\xaf\xa9P(\x9a\x8e2#\x13%K\xa94\xf5\ +\x1c\x98j\xb5\xaaBaT\xc3\xc3k\x95\xcf\x8f\xaaR\ +)\xcbk\xabc&NC\x1a\x1d]\xaf\x0d\x1b\x1e\xd7\ +\xe8\xe8z\x95\xcbEy-g\xa7\xfd\xeaW7\xb0\xdd\ +f\x0a\x7f\xf8\xc3-\xfa\xe5\xaf\xfeh:\x06\x00\x00\xe8\ +\x9c\x03M\x07\x00&\xe3\xe7\x22\x86\xadI\xd3p\xcf=\ +\x0f\xe8+_\xf9\x81\xe9\x18\x9e\xf4\x95\xaf\xfc@\xf7\xde\ +\xfb\x80\xe9\x18M\xa9V+\x0d\xaf\x16qW\x9a\x14\xb4\ +q\xe3\x93\x1a\x1e~R\x85\xc2\xb8\xaa\xd5\x8a\xd1S\x86\ +j\xb5\xda\xa6U=\xa3\xa3\xeb\xb6*`f\x9a+\x12\ +\x89)\x1c\xf6\xd7\x97\xc0\xcf|\xf6\xdbz\xf0\xc1GM\ +\xc7\xf0\xa4\xd5\xab\x1f\xd5g>\xfbm\xd31\x00\x00@\ +g\x1d`:\x000\x99\xa8\xe9\x00m\xc4\xb0\xdei\xba\ +\xf2\xaa\xeb\xb5\xcf>\xbb\xea\xa4\x93\x8e4\x1d\xc53\xae\ +\xbb\xee\xcf\xba\xf2\xaa\xebM\xc70\xa2V\xab*\x9f\x1f\ +U\xb1\x98W<\x9eT\x22\xd1\xa3x<\xa9p8\xaa\ +P\xa8\xfd'\xc3O\x1c\xb1\xed\xae\xe6)\xa8X\x1cW\ +\xb9\x5clI)\x14\x0eG\x14\x8f'\x15\x0aEZ\x94\ +\xd6\x1bFG\xc7t\xd6Y_\x90m\xff\xaf\x06\x07\xfb\ +L\xc7\xf1\x8c\xf5\xeb\x87\xf5\xbe\xf7}A\xa3\xa3c\xa6\ +\xa3\x00\x00\xd0\xd5\x22\xa1\xb0V\xf4\xcc\xd2\x1e\xbds\xb5\ +45\xa8\x05\x89>\x0d\xc4\x92JEb\x8a\x87#J\ +G\xe2JFb*V\xcb\xaa\xd6j\x1a\xab\x944R\ +.\xe8\xb1\xc2\x88\x1e/\x8c\xe8\xf1\xe2\x88\xee\x1f}R\ +\xff\x1a}R\xe3\x95\xa9\xe7\xfa\xb5\xc0\x81\x9d\xb8\x080\ +]~.bX\x113\x03\x9f\xf9\xec\xb7\xb4x\xf1<\ +\xed\xb3\xcf\xae\xa6\xa3\x18w\xf7\xdd\xf7\xeb3\x9f\xfd\x96\ +\xe9\x18-\x11\x0eG\x14\x0eG\xea[\x8d\xa6\xc7=e\ +\xc8\x9d/\x13\x8d\xc6\x14\x8f\xa7\x14\x8f'7\xad(q\ +K\x99f\x8a\x99\x9aj\xb5\xcd\xc5K\xadV\xdd4D\ +\xb8T\xca\xd7g\xb9T\xe4v/\xcd\xaf\xca\x09\x85\xc2\ +[\x94J\xed/\x94:m\xf5C\x8f\xe9\xfd\x1f8_\ +_\xfe\xd2\x07\x95L\xc6M\xc71.\x9f/\xea\xfd\x1f\ +8_\xab\x1fz\xcct\x14\x00\x00\xbaR:\x1a\xd7\xd1\ +\xb3w\xd6\xd1C;\xe9\xa0\x81\xc5JG\x9b\xff\xf9\xa2\ +\xaa\x9a\x1e\x1a\xdf\xa0;7>\xaa\x95\xebW\xeb\xe6\xf5\ +\xab\xb5\xbe4\xde\x82\xb4\xdb\xd8\xd9r\xec\x9e\x5c&\xcb\ +\xb31\xf0\x14?\x171\xcc\x88\x99\x81R\xa9\xac\x0f|\ +\xf0\x8b\xba\xf0\x82\x0fi\xa7\x9d\x16\x9b\x8ec\xcc\xea\xd5\ +\x8f\xea\xfd\x1f8\xdf\x17ssB\xa1\x90\xa2\xd1\x98\xa2\ +\xd1x\x13[yj\xaaV+*\x16+*\x95\x0a\x1a\ +\x1b\x0b+\x12\x89)\x16K(\x1eO(\x1c\x8e*\x1c\ +\x8e(\x14\x0amS\xcc\x84B\xd2\xe6K\xba\xbfqK\ +\x97\xda\xa6\xd2\xc5})m\xfa}\xb5Z\xae\x1f-\xdd\ +\xda\xedP\xa1PX\xc9dZ==\xfd\x8aDbj\ +\xae@\xf2\xae\xbb\xef\xbe_\x9f\xf8\xc4E:\xf7\xdc\xb7\ +\xfbn\xfb\xd5tT\xabU}\xe2\x13\x17\xe9\xee\xbb\xef\ +7\x1d\x05\x00\x80\xae\xb3G\xef\x5c\xbd`\xd1~:q\ +\xce\xae\x8a\x85[\xbb\x8a8\xac\x90\x96\xa6\x06\xb545\ +\xa8S\xe6\xef\xa9\xaaj\xba}\xfd\xc3\xfa\xf5\x9a{\xf5\ +\xc7'\xff\xad\xd1r\xcbf3\x86%\xed)\xe9\xd6V\ += \xd0\x0a\xbe,b,\xc7\xee\x97\x944\x9d\xa3[\ +\xad_?\xacw\xbf\xe7<]\xf4\xd5\x8fh\xc1\x829\ +\xa6\xe3t\xdc#\x8f\xac\xd1\xdb\xdf\xf1\x19\xad_?l\ +:J\xcbD\x22Q%\x12=\x9b\xb6\xf94Sp\xb8\ +\x05Je\xd3\x11\xd0\xe3\xe3\xa1z\x09\x13V(\x14V\ +8\x1c\xae\xdf\xfc\x876ma\xda\xb2x\xd9r\xe5\xcb\ +\xd6\x7f\xa6\xa6rM%\x1c\x8e(\x95\xeaS*\xd5\xa7\ +H\xa43\xdb\xabLr\xfet\xab\xce;\xef\x12\xbd\xef\ +}g\x06\xb2\x8c\xa9V\xab:\xef\xbcK\xe4\xfc\x89\x9f\ +\xbb\x00\x00\x98\x8e\xddz\xe7\xe8\xf5\xcb\x9e\xae#\x87\x96\ +w\xec\x9aa\x85t\xf0\xe0b\x1d<\xb8X\xef\xde\xc5\ +\xd2\xaf\x1f\xbfW?~\xe8\x0e\xad\x1a_\xdf\x8a\x87\xdf\ +G\x141\xf0\x18_\x161\x92\x82\xd7\x1e\xb4\xd8\x9a5\ +k\xf5\xb6\xff9W\x17|\xf9\x83Z\xb4(8\xbb\xbc\ +\x1e~\xf8q\xbd\xfd\x1d\x9f\xd6\x9a5kMGi\xa9\ +P(\xacx<\xa9Z\xad\xaa\xb11\xf7\xd8\xe7V\x95\ +\x1e\x13\x83t'\xb9\xeaS_\xb3%\xd7\x9b\xaeP(\ +\xa4X,\xa1\x9e\x9e~\xc5\xe3)\x85[\xfc\x8c\x8e\x97\ +\xfd\xf2W\x7fT\xbeP\xd4\x87>\xf8\x06\xc5b~\xfd\ +r\xbf\xadr\xb9\xa2s?\xf5\x0d]\x7f\xfd\x8d\xa6\xa3\ +\x00\x00\xd05\xfa\xa3\x09\xbda\xa7\xc3t\xea\x82\xbd\x15\ +6\xb8j8\x11\x8e\xea\xd4\x05{\xeb9\x0b\xf6R\xee\ +\xc9\xff\xe8[\xff\xbdY\x0f\x8c\xadk\xe6!\xf7nU\ +6\xa0U\xfc\xfa4\xe9l\xd3\x01\xfc\xe0\xb1\xc7\x9e\xd4\ +[\xde\xfaI\xdd\x7f\xff\x83\xa6\xa3t\xc4\xfd\xf7?\xa8\ +\xb7\xbe\xed\x5c=\xf6\xd8\x93\xa6\xa3\xb4E8\x1cQ\x22\ +\x91V:=\xa8D\x22\xd5\x81\x15!\xb5\xa7\xbctZ\ +H\x91HT\xa9T\x9f\xfa\xfaf+\x91H\x07\xaa\x84\ +\x99p\xfd\xf57\xea\xc3\x1f\xb9\xa0k\x8f_\x9f\xaeB\ +\xa1\xa8\x0f}\xf8\xcb\x940\x00\x00L\xc3\x11C\xcbu\ +\xe9\xc1g\xe8\xb4\x05\xfb\x18-a\xb6\x14VH\xc7\xcc\ +\xdeY\xdf9\xe8\xc5z\xff\xae\xc7jV,5\xd3\x87\ +\xda\xb7\x95\xb9\x80V\xf0k\x113d:\x80_<\xf9\ +\xe4z\xbd\xf5m\xe7j\xe5\xca\xbbLGi\xab[V\ +\xde\xa9\xb7\xbe\xed\x5c=\xf1DSm\xbb\xe7\x85\xc3\xee\ +\xa0\xda\xde\xdeY\xea\xe9\xe9\xf7m1\xe1\x0e\xe4M\xa9\ +\xafoH\xbd\xbd\xb3\x14\x8b\xc5}\xbf\x15iGn\xbc\ +\xf1v\xbd\xeb\xdd\x9f\xd5\x93O\xae7\x1d\xa5\xad\xd6\xae\ +\xdd\xa0w\xbd\xfb\xb3\xba\xf1\xc6\xdbMG\x01\x00\xa0+\ +DBa\xbdu\xc5\x91\xfa\xec\xde\xcf\xd2\xecx\x8f\xe9\ +8\x93\x8a\x84\xc2z\xce\x82\xbdt\xd9\xd3\xce\xd03\xe7\ +\xed1\x93\x87`E\x0c<\xc7\xafELp\xf6\xd2t\ +\xc0\xe8\xe8\x98\xde\xfb\xbe\xcf\xeb'?\xfd\xb5\xe9(m\ +\xf1\x93\x9f\xfe:PG\xdb\xba[u\xe2\xea\xe9\x19P\ +_\xdf\x90b\xb1\x84oJ\x0aw\x0bVJ\xfd\xfd\xb3\ +\xd5\xdf?g\x8bU0\xfe\xf8\xfb5\xe3\xef\x7f\xbfO\ +\xaf}\xddGu\xc7\x1d\xf7\x98\x8e\xd2\x16w\xdcq\x8f\ +\xce|\xedG\xf4\xf7\xbf\xdfg:\x0a\x00\x00]\xa1/\ +\x9a\xd0\xf9\xfb\xa0+~R\x1a\x88&\ +\xf5\xe1\xdd\x8f\xd7g\xf7~\x96\x06\xa2\xd3\x1a\x07\xba\x93\ +\xe5\xd8\xe9v\xe5\x02f\xc2\xafE\x0c[\x93Z\xacR\ +\xa9\xe8\xc2\x0b\xbf\xaf\x8f|\xf4B\x8d\x8c\xf8\xa3\xb0\x18\ +\x19\x19\xd3G>r\x81.\xbc\xf0\xfb\xaaT*\xa6\xe3\ +t\x98\xbbm'\x99\xecU\x7f\xff\x9c\xfa)B\xdd;\ +C\xc4\xddv\xd5\xa3\xbe\xbe!\xf5\xf7\xcfQ2\xd9\x1b\ +\x88\x81\xbc\xd3\xb5v\xed\x06\xbd\xe3\x9d\x9f\xd1\x0f\x7ft\ +\xf5\x0cO\xcf\xf2\x9eZ\xad\xa6\x1f\xfe\xe8j\xbd\xe3\x9d\ +\x9f\xd1\xda\xb5\x1bL\xc7\x01\x00\xa0+\xccM\xf4\xca>\ +\xe0\xf9:x\xb0\xfbNI=rh\xb9\xbe}\xd0\x8b\ +\xb4O\xdf\xfcF\xdfd\xe2\xe4$\xc03\xfcZ\xc4\xb0\ +5\xa9M\xfe\xf8\xc7[\xf4\x9a3?\xac\x9bo\xb9\xd3\ +t\x94\xa6\xdc|\xcb\x9dz\xf5k>\xa4?\xde\xb0\xd2\ +t\x14\xa3&\x06\xd9\xa6\xd3\xb3400W==\x03\ +]s\xacs(4Q&\xa5\xd5\xdb;K}}C\ +J\xa5z\x15\x8d\xc6(`v\xa0R\xa9\xe8\xa2\x8b~\ +\xa4\xf7\xbe\xef\xf3]?\x0f\xe9\xb1\xc7\x9e\xd4\xfb\xce\xfa\ +\x82.\xba\xe8G\x01,S\x01\x00\x98\x99\xb9\x89^]\ +\xb8\xdf\xf3\xb4<5h:\xca\x8c\xcd\xaf\xff\x1d\x9e1\ +w\xb7F\xdfd\xafv\xe6\x01\xa6\xab{\x9f\x02\xdf\xb1\ +\xb9\xa6\x03\xf8\xd9c\x8f=\xa9\xf7\xbe\xf7<\x9dr\x8a\ +\xa5\xb7d_\xa2\x81\x81>\xd3\x91\x1a\xb6a\xc3\xb0\xbe\ +z\xd1\x8ft\xed\xb5\x8eoV\x04\xb4B8\xec\x9e\xaa\ +\x14\x8d\xc6\x95H\xa4T(\x8c\xabX\x1cW\xa5R\xf2\ +\xd8\xfb)\xa4p8\xach4\xa6h4\xb1)s$\ +\xe2\x1e\x9f\x8d\xc6\xdd|\xf3\xdf\xf5\xaaW\x7fPg\x9e\ +y\xba^\xf8\x82\x93\x14\x8dv\xcf\xbc\xa0J\xa5\xa2\x9f\ +^~\x9d.\xb9\xe4*\x8d\x8d\xe5M\xc7\x01\x00\xa0k\ +\xccM\xf4\xea\x82\xfdN\xd5\xe2d\xbf\xe9(M\x8b\x85\ +#\xfa\xe8\x1e'jA\xb2O\x97=8\xe5\xe9\xd4\xac\ +\x88\x81\xa7\xf8\xb5\x88\xe1\xf8\xea6\xab\xd5j\xba\xfa\xea\ +\x1bt\xc3\x0d+u\xe6\x99\xa7\xeb\xf4\xd3N\xf0\xf4\xf1\ +\xb8\xa5RYW\xfd\xec\xb7\xba\xe4\x92\xab|\xb3\xb5\xaa\ +\xf5B\x0a\x87#\x8a\xc7S\x8a\xc5\x12*\x97{T,\ +\xe6U*\x15T.\x17U\xadV\x8c\x942\xa1PH\ +\xa1PX\xd1h\x5c\xb1X\x5c\xd1hB\xd1h\xac\xbe\ +\xf5(\xcc\xea\x97&\x8c\x8d\xe5\xf5\xd5\xaf\xfeP\xbf\xfa\ +\xd5\x0dz\xd3\x9b^\xa4\xccQ\x07\x9b\x8e4\xa5?\xfd\ +\xe96}\xed\xeb?\xd1\x03\x0f\xae\xd5j\xba\xe9\ +\xa6;t\xe9e\xbf\xd0\x9dw2\x8c\x17\x00\x80\xe9\x8a\ +\x85\xc2\xfa\xf4\xde\xa7hI\xca?%\xcc\x96^\xb9\xe4\ +`\xd5j5}\xf3\xbf7o\xefU(b\xe0)\xa1\ +\xc9\x9e\xe1\xb6\x8e~\x95\x81(\x9b\xe52\xd9\xa6\xde\xde\ +r\xec[%\x1d\xd4\x9a4\x98\x8e\xd9\xb3\x07\xf5\xfc\xd3\ +O\xd4s\x9es\x8c\x86\x86\xcc}\xa1_\xbbv\x83~\ +\xf9\xcb?\xea\x8a+\x7f\xc3\x00\xcf\x16\x98(]\xaa\xd5\ +\xaa\xaa\xd5\x8a\xca\xe5b\xfd\xa5\xa4j\xb5R/f\xaa\ +[\xac\x98\xa9Mk\xf5L$\x12\xab\x17?\xeeJ\x97\ +p8Z\xdfn\x14\xa9\x973\xde)\x05\x82`\xe7\x9d\ +\x97\xea\xf4\xd3O\xd0\xc9'\x1d\xa9TjZ\xa7\x12\xb4\ +\xd4\xf8x^\xd7\xfd\xe6F]y\xe5\xf5\xfa\xf7\xbf\x1f\ +4\x96\x03\x00\x80n\xf7\xa1\xdd\x8f\xd7)3;\xfa\xb9\ +\xab\xd8\x0f\xdc\xa4\x1f\xac\xbem\xb2\xff\x95\x97\x94\xcee\ +\xb2\xd5V^\xcfr\xecV>\x9c1\xb9\x1b.5\x1d\ +!p\xbc\xb3t\xa1\xb5\xfcY\xf5v\x81'\x9f\x5c\xaf\ +o~\xebr]\xf2\x9d\xabt\xc4\x11\x07\xea\xc4\x13\x0f\ +\xd7\x91G\x1c\xa4d2\xde\xf6k\xe7\xf3E\xfd\xf9\xc6\ +\xdbt\xfd\xf57\xe9\xc6\x1boW\xb9\xcc\xf0\xceVq\ +\x8b\x90\x90\x22\x91\xb0\x22\x91\xa8\xa2\xd1\xb8&\xca\x96\x89\ +\x12\xc6-d*\x9b\xca\x9aBaT\xe5r\xa9\xa1\xc7\ +N\xa5z\xd5\xd3\xd3\xbfi\xce\x0b\xc5\x8bY\xff\xfe\xf7\ +\x83\xfa\xc2\x17\xbe#\xdb\xfe\x91\x8e9\xfa\x10\x9dx\xe2\ +\x11z\xda\xd3\xf6V$\xd2\xfe92\x95JE\x7f\xfd\ +\xeb\xdd\xba\xfe\xfa\x1b\xf5\xc7\x1bV2\x03\x06\x00\x80&\ +\xbdt\xf1\x81\x81(a$\xe9\xcd;\x1d\xae5\x85\x11\ +\xfdf\xcd6+h\x93\x92\x96K\xfaO\xe7S\x01\xdb\ +\xf2k\x113h:@\xd0\x95\xcb\x15\xe5r\x7fU.\ +\xf7W%\x93q\x1dt\xe0^:\xfc\x88\x03t\xc0\xfe\ +{h\xc5\x8a%\x0a\x87\x9b\xbf\xd1\xaeVk\xfa\xcf\x7f\ +V\xeb\x8e\xbf\xdd\xa3\x9bn\xbcC\xb7\xdd\xfe\x0f\xe5\xf3\ +\xc5\x16\xa4\xc7T&\x8a\x99P\xc8=:\xdaU\xd3\xc4\ +\x22\x98\xcd\xabf\xa6.b\xdc\xc7a\xcb\x91\x17\x8d\x8d\ +\xe5u\xcd\xb5\x8e\xae\xb9\xd6Q:\xdd\xa3\xc3\x0f\xdbO\ +\x87\x1c\xba\xaf\xf6\xdfow-[\xb6\xb0e\xd7Y\xb5\ +\xea\x11\xfd\xed\xef\xf7j\xe5-w\xea\xa6\xbf\xfc]\xa3\ +\xa3\xccq\x02\x00\xa0\x15\x0e\x18X\xa47\xeft\xb8\xe9\ +\x18\x1d\x13\x92t\xd6n\xc7j\xd5\xf8z\xdd3\xb2\xe6\ +\xa9\xff{OQ\xc4\xc0#\xfcZ\xc4\xb0\x22\xc6C\xf2\ +\xf9\xa2n\xbc\xe9\x0e\xddx\xd3\x1d\x92\xa4t\xbaG\xbb\ +\xef\xbe\x5c;\xafX\xa2\xa5\xcb\x16h\xe1\x82\xb9\x9a;\ +wH\x83\x83\xbdJ&\x13J\xa7{\x14\x0e\x87T\xad\ +\xd64::\xa6|\xbe\xa0\xf5\xebG\xb4f\xcdZ=\ +\xf2\xe8\x1a=\xb8\xeaQ\xdd\xff\xef\x07u\xdf}\xab\xb8\ +a\xf3\x14\xb7\x98\x91\xa6\xbf\xa2\x85\x02\xc6\xfbFG\xc7\ +\xf4\xdb\xdf\xfdE\xbf\xfd\x9d;\x08o\xa0\xbfW\xbb\xee\ +\xb6\x5c\xbb\xec\xb2TK\x16\xcf\xd7\x82\x85s4w\xce\ +,\x0d\x0cL|\x1e\xa7\x14\x0e\x87U\xadV5::\ +\xae|\xbe\xa0\x0d\x1bF\xb4\xe6\x89uz\xf4\x91'\xb4\ +\xfa\xa1\xc7t\xff\xfd\x0f\xea_\xf7\xfdW\x1b6\x8e\x18\ +\xfe\xdb\x01\x00\xe0?\x03\xd1\xa4>\xb6\xfb\x09\x0a\x07\xec\ +\xe7\xacd8\xaaO\xed\xf5L\xbd\xf6\xb6\x9fjCy\ +\xab\x95\xb5\xbbK\xba\xc6P,`+\xbe+b,\xc7\ +\xee\x95\xd4=\xe7\xb0\x06\xd0\xe8\xe8\x98n\xbb\xed\x1f\xba\ +\xed\xb6\x7f\x98\x8e\x02\x0f\x08\x85(b\xba\xd1\x86\x8d#\ +\xfa\xeb_\xef\xd2_\xffz\x97\xe9(\x00\x00`\x12\xef\ +\xda\xd5\xd2\xdcD\xaf\xe9\x18F\xccK\xf4\xea\x83\xbb\x1f\ +\xa7\x0f\xde}\xcd\x96GKp\x845<#l:@\ +\x1b\xb0\x1a\x06\xf0\x80\xe9\x1duM\x11\x03\x00\x00\xd0*\ +\xc7\xce\xd9E'\xcc\xd9\xd5t\x0c\xa3\x8e\x1a\xdaI\xcf\ +[\xb0\xcf\x96\x7f\xb4\x8b\xa9,\xc0SQ\xc4\x000,\ +T_\x15c:\x07\x00\x00@\xf7KG\xe2z\xd7\xce\ +\x19\xd31<\xe1\xcd+\x0e\xd7\xdcxz\xe2?w3\ +\x99\x05\xd8\x92\x1f\x8b\x98A\xd3\x01\x00H\x12+b\x00\ +\x00\x00:\xedu\xcb\x0f\xd5P\xbc\xc7t\x0cOHG\ +\xe2z\xe7.\xd6\xc4\x7f.\xb5\x1c\xbb\xfdG\xb9\x02\x0d\ +\xf0c\x11\xc3\x8a\x18\xc0\x03\xa6\xb33\x89\x191\x00\x00\ +\x00\xcd\xdb-=G\xcf_\xb8\xaf\xe9\x18\x9er\xf4\xec\ +\x15\xca\x0c\xed$\xb9sDW\x98M\x03\xb8(b\x00\ +\xb4I\xe3M\xcc\xc4q\xd8\x00\x00\x00\x98\x99\x90\xa4w\ +\xefb)\x12\xf2\xe3-^s\xde\xb5\x8b\xa5d$&\ +I\xc1\x1e\x9c\x03\xcf\xf0\xe3gi\xcat\x00\x00\xd3E\ +\x09\x03\x00\x00\xd0\x8cc\xe6\xec\xa2}\xfb\x17\x98\x8e\xe1\ +I\xf3\x12\xbdz\xd1\xc2\xfd$\x06\xf6\xc2#(b\x00\ +\xb4E\xa3\xa7&\x85B!\x06\xf5\x02\x00\x004!\x12\ +\x0a\xeb\xf5\xcb\x9fn:\x86\xa7\xbdt\xc9\x81\x9a\x1d\xef\ +\xd9g\xea\xd7\x04\xda\xcf\x8fEL\xbf\xe9\x00@\xd0M\ +\xef\xe8j\x89\x151\x00\x00\x003w\xca\xbc=\xb4<\ +5h:\x86\xa7\xf5E\x13z\xcd\xb2C\x8e7\x9d\x03\ +\x90\xfcY\xc4\xa4\xa7~\x15\x00\xed7\xdd\x191\x00\x00\ +\x00\x98\xaex8\xa23\x97\x1db:FWx\xfa\xe0\ +\xd2e\xa63\x00\x92?\x8b\x18\xb6&\x01]%D\x11\ +\x03\x00\x000C\xcf[\xb0\x8f\xe6%zM\xc7\xe8\x0a\ +s\xe3\xe9\xf8%\xabV\xfa\xf1\x1e\x18]\xc6\x8f\x1f\x84\ +=\xa6\x03\x00\xa8M\xeb\xf8j\x00\x00\x00L_4\x14\ +\xd6K\x16\x1f`:F\xd7\x88\x85#\x8a\x85#\xbc\xc3\ +`\x9c\x1f\x8b\x18f\xc4\x00\x86\xb9%L\xa3\xc3z%\ +f\xc4\x00\x00\x00L\xdf\x89sw\xd3|V\xc3LK\ +\x22\x1c9\xc2t\x06\xc0\x8fE\x0c+b\x00\xe3\xa6\xb3\ +\x1c\x86\x12\x06\x00\x00`\xbaB\x92^\xb6\xe4@\xd31\ +\xbaN*\x1c\xdb\xcft\x06\xc0\x8fEL\xdct\x00 \ +\xe8\xa6\x7fj\x12\x00\x00\x00\xa6\xe3\x88\xa1\xe5Z\xd13\ +d:F\xd7IEc\xbb\x99\xce\x00\xf8\xb1\x88\xe93\ +\x1d\x00\x08\xbaZ\xad\xd6p\x19\xc3\xa0^\x00\x00\x80\xe9\ +{\xf1\xa2\xfdMG\xe8J}\x91\xc4R\xd3\x19\x00?\ +\x161~\xfc;\x01]\x86\x151\x00\x00\x00\xed\xb2,\ +5\xa8\x83\x07\x97\x98\x8e\xd1\x95\x06b\xc9y\xa63\x00\ +~,-\x92\xa6\x03\x00A7\xdd\xadI\xac\x8a\x01\x00\ +\x00h\xdc\xf3\x16\xee\xc3\x94\xbd\x19\x9a\x15K1\xdd\x18\ +\xc6\xf9\xb1\x88I\x98\x0e\x00\x04[\xe3\xdb\x92\x5c\xfc\x18\ +\x01\x00\x00\xd0\xa8D8\xaaS\xe6\xeda:F\xd7\x9a\ +\x15\xef\x89^\xb2j\xa5\x1f\xef\x83\xd1E\xfc\xf8\x01\x18\ +5\x1d\x00\x08\xb2\xe9\xce\xe9e1\x0c\x00\x00@\xe3N\ +\x98\xbb\xab\xfa\xa2<\xf7\xa2R\xa9\xb0\xe9\xcf*\ +\x95\x92*\x95\x92\xa4\xd1M\x7f\x16\x0a\x857\x952[\ +\xfe\x1a\x0a\xf9q\xb7*\x00\x00\xfep\x12\xabaZ\xa6\ +/\x9a\x184\x9d\x01\xc1\xe6\xc7\x22\x86\xb3\xdc|\xaaV\ +\xabn*]&~\x9dl\xb5\xcbt\xe5\xf3\xa3\x141\ +\xd3T\xabUU\xa9TT.\x17\xeb+\x90\x8a\xaaT\ +\xca\xaaV+\xd3\xfe7\x99X\x9d\x14\x0a\x85\x15\x89D\ +\x15\x8d\xc6\x14\x8d&6\xad\xdc\x08\x87#\x942\x0d\x1a\ +\x1b\xdb\xb8U\x09\xb3=\xb5\xda\xe6\x95c[\x8aDb\ +OY=\x93P$\xe2\xc7o\x13\x00\x00t\x97\xb0B\ +:z\xf6\xce\xa6c\xf8\xc6@,\xc9I\xbb0\xca\x8f\ +?a'M\x07@k\x94\xcb\xa5\xfa\x16\xa3\xfc\x8cV\ +\xbb4~\x9d\xa9o\x5c\xe1\xae\xb6\xa8V+*\x97K\ +*\x16\xc7U,\xe6U\xa9\x94T\xabU\x1b^\xfd\xb2\ +\xa3\xc7\xae\xd5*\xaaV+*\x95\x0a\x0a\x85\xc6\x14\x0e\ +\x87\x15\x89\xc4\x14\x8f'\x15\x8f')e\x1aP(\x8c\ +N\xfdJ;\xb0\xbd\xd53O-g\xa2\xd1\x18\xabg\ +\x00\x00\xe8\xa0\xfd\x07\x16j(\x962\x1d\xc37f\xc5\ +{\xa2\x97\xacZ\x19>s\xd9!\xcd?\xab\x0b\xcc\x80\ +\x1f\x8b\x18t!\xf7\x19\xfa\xc2V+^Z\xb1\xda\xa5\ +\xb1ks\xbc\xcf\x8e\xd4j5U*e\x15\x8by\x15\ +\x8bc*\x95\x0a\xf5\x95/\xed{\xbf\xb9+n\xaa\xaa\ +T\xca*\x95\xf2\x1a\x1bs\xcb\x80x\xbcg\x8bR&\ +$f\xcal\xad\x1de\xe5\xc4J\xb4bq\xfb\xabg\ +\xdcr&\xce\xea\x19\x00\x00\xda\xe4\xd89\x1c\xf2\xd3J\ +\xb1PX\xd1PxoIw\x9a\xce\x82`\xe2\xa7f\ +\x181\xb1\xdae\xa2t)\x97\x8b\xc6\xb2\xc4\xe3<\xbb\ +0\x99j\xb5\xaaJ\xa5\xa4b1\xafBaT\xe5r\ +iZCx[eb\xb5L\xa1\xe0\xae\xc2\x09\x87#\ +\x8a\xc7\x93J$z\x14\x8b%\x14\x0eGY%c\xc0\ +d\xabg\xc2\xe1\xf0\xa6\x953\x13\xdb\xcb\xdc\xd93\xfc\ +\xfb\x00\x000Sa\x85t\xcc\xec\x15\xa6c\xf8N\x22\ +\x12=H\x1410\x84\x22\x06m\xb7y\xb5Ka\xd3\ +\x5c\x0a\xf7\x86\xde\xbcP(\xa4\xde\xde!\xd31<\xa5\ +V\xab\xaa\x5c.\xa9P\x18S\xb18\xaer\xb9\xe8\x99\ +\x7f\xaf\x89\xd59\xe3\xe3#\xca\xe7G\x15\x8d\xc6\x94H\ +\xf4(\x91H\xb3JFR<\x9eT>\xdf\xdc\xf6\xa4\ +fT\xab\x93\xaf\x9eq\xe7\xfel]\xce\xb0z\x06\x00\ +\x80\xc6\xec\xdd?_s\xe2\x8c4i\xb5x8\xb2\xb7\ +\xe9\x0c\x08.~\x12F\xcbyi\xb5\xcb\x8e\xc4b\x09\ +\xf5\xf7\xcfQ,\x167\x1d\xc5#j\xaaT**\x14\ +\xc6\x94\xcf\x8f\xaa\x5c.x\xa6\x80\x99L\xadVS\xa9\ +TT\xa9T\xd4\xd8\xd8\xb0\x12\x89\x94\x12\x89\xb4b\xb1\ +x`W\xc9\xf4\xf6\x0e\xa9P\x18\xf3\xdcv\xbbr\xb9\ +T\xdf6\xf5\xd4\xd53\x89\xadNmb\xf5\x0c\x00\x00\ +\xdb:jh'\xd3\x11|)\x15\x8eq\x0c\x15\x8c\xa1\ +\x88AS\xdc\x9b\xe1\xfc\x16\xab]\xdc\xf9!\xde\x13\xaa\ +\xcf\x18I*\x16Kr\x1a\xccV\xdc\x02\xa6X\xcck\ +||X\xa5R\xe3GO{E\xb5Z\xd1\xf8\xf8\x88\ +\x0a\x851E\xa3\xf1\xfa*\x99\x9eMGa\x07E4\ +\x1a\xd3\xd0\xd0\x22m\xdc\xf8\xe46'\x22y\x8d\xbbz\ +f\x5c\xc5\xe2\xf8V\x7f\xbe\xe5\xa9Y\x13\xe5\x0c\x9f\xab\ +\x00\x80 ;r\xd62\xd3\x11|\xa9'\x12[b:\ +\x03\x82\x8b\x9fn1-\xee\xcc\x90\xcd\xa5K\xa9TT\ +\xa7g\x864bb\x8eH,\x96T<\x9eP4\x9a\ +\xe0\x99\xf6m\xb8\x05L\xa9\x94\xd7\xf8\xf8HG\x07$\ +\xb7\xcb\xc4\xd6\x98R\xa9\xa8|~\xb4^\xc8\xa4\xea\xdb\ +\x96\xc2\x0a\xc2\xb6\xa5X,\xa1\xd9\xb3\x17m:\x81\xca\ +=b\xbc\xa8r\xb9X_\x95\xe2\xbd\xcf\xd7-M\xac\ +\x9e\xc9o\xd1#M\xac\x9e\xd9\xb2\x9ca\xf5\x0c\x00 \ +\x08\xe6'z\xb5sz\xb6\xe9\x18\xbe\x94\x8a\xc4\xe6\x98\ +\xce\x80\xe0\xa2\x88\xc1v\xb9\xab]\x0a[\xadx\xf1\xf2\ +j\x97\x89\xd2%\x16K\xf2\x0c\xfa\x14\xaa\xd5\xaa\xca\xe5\ +B\xbd\x80\x19W\xa5R\x91\xd7o\xd0\xa7cb.\xd1\ +\xc4\xac\x9bx<\xa5D\xa2G\xd1h\xbc^\xc8\xf8_\ +8\x1c\xd9\xb42hB\xadV\xab\x172\xc5-\x0a\x1a\ +ooA\x93\xb6\xb7z&\xb4i\xf6\xcc\x96\xa77\x85\ +\xc3\x11c9\x01\x00h\xb5#\x86\x96\x9b\x8e\xe0[\xe9\ +H|\xc0t\x06\x04\x17w\xab\xd8d\xe2\xa8\xe0\xcd+\ +^\xbc\xbb\xda%\x16Kl\xb5\xcd\x88g\xc6\x1bS\xab\ +\xd5T\xad\x96\x95\xcf\x8fi||X\x95J\xa9-\xdb\ +\x90\xdc\x7f\x8f\x90\xc2\xe1\xb0\xc2\xe1\xc8\x16\xabQB\xaa\ +\xd5\xaa\xaaV+\xaaV\xcb\xf5\x13\x91\xda{\x0c\xf6D\ +!S,\x8e+\x99L\xd7\xb7,\xc5\x02\xf91\x13\x0a\ +\x85\x14\x8b%\x14\x8b%\xb6\xfa\xf3J\xa5\xbcM9S\ +.\x97\xe5\xc5\xcf\xff\xcd6\x97J[\xaf\x9e\x89l3\ +w\x86\xd53\x00\x80nu\xe4,\x8a\x98vIG\x99\ +\x80\x0cs(b\x02\xca}f|\xf3IF\xc5\xa2\xd7\ +W\xbb$6\xadx\x89Db\xa6Cu\xa5ju\xf3\ +\x1c\x98bq\xbc\xe5\x05H(\x14R8\x1cQ$\x12\ +\xdbt\xb3\x1f\x8d\xc6\xb6Y\xa1\xe0\x96/\xd5M7\xff\ +\x13EI\xb5ZQ\xadVmK1\xb3\xb9\x90)*\ +\x9f\x1fS*\xd5\xabx{%\ +\xa2px\xc7\xe5\xcbd\x8f\x13\x0aE6m'q\xb7\ +NUT\xa9\x94\xb6:\xfe\xdc]\x85\xd1\xbaR\xa6V\ +\xabmzlw\x85L\x9f\xe2\xf1\xa4\x22\x91\xc8\xb4\xf2\ +\x07\xd1\x8eV\xcfl\xb9rf\xf3\xbf\x9bw\x95Jy\ +\xad]\xfb\xb0f\xcf^\xach\x94'\xc5\x00\x00\xder\ +\xe8 \x87\xfa\xb4S8\x14R4\x14\xde]\xd2\x9d\xa6\ +\xb3 x\xfcX\xc4\xa0\xae\x5c.j\xed\xda\x87=s\ +\x14q8\x1c\xde4\xd3e\xa2|\x09\xd2\xd1\xc2\x9d\xe4\ +\xde\x18\x974>>\xac|~\xa4e\xdb\xceB\xa1\xb0\ +\xa2\xd1X}\xf8m\xaa>{#\xdc\x92\xd5$n)\ +\x13\xaa\x9f\x90\x13U<\x9eT*\xd5\xabr\xd9-e\ +\x0a\x851\x95\xcb\xc5\x96~?\xda\x92\x95\x13\ +\xeeq\xd7\x05\x0d\x0f?\xa9R\xa9\xa0d\xb2\xd7\xc3\xe5\ +TpD\x221E\x221I\xcd\xaf\x9e\x89\xc5\x12\xea\ +\xe9\xe9osb\x00\x00\x1a\x97\x8a\xc4\xb4k\x9a\xf90\ +\x9d\x90\x8c\xc4\x86Lg@0\xf9\xb1\x88\xe1\x1c\xf8\xba\ +T\xaao\xd33\xfa\xdb\xb3y\xb5KbS\xf9\xc2L\ +\x8c\xee\xe1\xce\x84\x19\xab\xff\x1b\xcf\xb4\x84\x09)\x1a\x8d\ +*\x99\xecU2\xd9\xdb\xb5Cj'\x0a\x19w\xa8p\ +J\x85\xc2\xb8\xf2\xf9\x91\x96\x9c\xb4T\xadV5>>\ +\xacr\xb9\xa4\x9e\x9e>\xc5\xe3)>O<\xa6\x91\xd5\ +3\x13\x03\x82+\x95\xb2\x22\x91\xa8\x92\xc9\xb4z{g\ +u\xe5\xc7;\x00\xc0\xbf\xf6\xe9\x9b\xaf0\xdf\x9b:\x22\ +\x1d\x893\xd2\x02F\xf8\xb1\x88\xd9~\xeb\x100\xa1P\ +HCC\x8b42\xb2n\xd3\x11\xc6\xe1ptS\xe9\ +\xc2j\x97\xee6qDu3EC8\x1cQ\x22\xd1\ +\xa3T\xaaW\xd1h\xc2\x17[\xce&Nxr\xb7,\ +\xf5\xa8P\x18kI!\xe3\xce\x8e\xc9O\x5cE\x89D\ +\x8a\x951]`\xb2\xd53\x00\x00x\xd9\xbe\xfd\x0bL\ +G\x08\x8ct4\xce\x0f\x080\xc2\x8fEL~\xeaW\ +\x09\x8eP(\xa4\xbe\xbe!\xf5\xf5\xb1\xea\xce\x8f\xaa\xd5\ +\x8a\xaa\xd5\xca\x0c\xde2\xa4X,\xaeT\xaaO\x89D\ +J\xe1pw\xae\x82\xd9\x11\xb7\x90\x89)\x12\xe9\xaf\xaf\ +\x90\x19\xd3\xf8\xf8\x88*\x95fNY\xaa\xa9T\xca\xab\ +P\x88*\x1a\x8dQd\x02\x00\x80\x96\xdb\xbf\x9f\xb1%\ +\x9d\xd2\x1fM\xf0\xc3\x1c\x8c\xf0c\x11\xd3\xa9\xf3N\x81\ +\xae\x14\x0a\x85\x95L\xf6(\x95\xea\x0f\xc4\xbc\x93\x89\x15\ +2\xe1pD\xd1hB\xf9\xfcH\xfdT\xa4\x99\xcd\xf5\ +vW\x22\x15U.\x97\ +\xa1R\xa9\xa0\x81\x81\xb9\xe6\x02\xee\xc0\xc4\x91\xbd==\ +R$\x12Q\xa9T\xdcT&\xb83Q\xdc\x93\x838\ +nyr\xeeJ\xa1\xb8\xc2\xe1A\xc5b\x09\x8d\x8dm\ +\x9cru\x8c\xfb>\x8f+\x1a\xa5\xd4\x02\x00\x00\xad\xb5\ +\x7f\x1fEL\xa7\xc5\xc2\x91\xc5\xa63 x\xfcX\xc4\ +\x8c\x9a\x0e\x80\xee\x90\xcf\x8fjll\xc3\x16G\x12O\ +n||X\xa9T\x9f\xe2\xf1d\x87\x92MO8\x1c\ +Q<\x9eR$\x12S\xb9\x5c\xda\xa6\x88\x89D\xa2\x01\ +\xde\x8a\xd4\x88\xcd\xdb\x95\xa2\xd1\xb8\xc6\xc7\x87U(\x8c\ +M:\xcc7\x14\x0a+\x1eO*\x1e\xefQ$\xe2\xc7\ +/\x9f\x00\x00\xc0\x949\xf1\xb4\x16$\xfbL\xc7\x08\x9c\ +X(\xcc~0t\x9c\x1f\xef$\x18\xd6\x8b\xed\xaa\xd5\ +\xaa\x1a\x1f\x1f\xd6\xe8\xe8FU*\x8d\x1f\xb056\xb6\ +\xc1\xb3E\x8c\xe4\x16\x04\xd1h\x5c\x91HL\x9bWs\ +\x84X\xb11\x0d\xee\xea\x98\x84\x22\x91\xa8b\xb1\xa4\x8a\ +\xc5\xb1m\x8a\xadX,\xaex\xbc'\xe0sv\x00\x00\ +@;\xec\xc5iIF\xc4\xc2\x11\x8a\x18t\x9c\x1f\x8b\ +\x18V\xc4`\x1b\xee\xfc\x97\x0d\x1a\x1f\x1fV\xb5\xba\xfd\ +\xa1\xb6\xdbS(\x8c\xb7!U\xeb\xb9\xc5\x0b\xe5K3\ +\xc2\xe1\x88\x92\xc9\x9eMC\x90\xbd\xb8\xc2hllX\ +\xe3\xe3\x1bU.\x17\xeby{\x95N\x0f\xb0\xfd\x0c\x00\ +\x80.\xb6{\xaf7\xb7\xc2\xfb]<\x1c\x9dc:\x03\ +\x82\xc7\x8fE\xcc\x06\xd3\x01\xe0\x1d\xdb\x9b\xff\x02\xec\x88\ +\x97W\x18m\xdc\xf8\xa4\xc6\xc66\x7f\x99\xabT\xca\x1a\ +\x1d]\xaf\xb1\xb1\x0d\xf5BfP\xd1h\xcc`B\x00\ +\x000\x13{R\xc4\x18\x11\x0fGf\x99\xce\x80\xe0\xf1\ +c\x11\xc3\x8a\x18(\x9f\x1f\xd5\xe8\xe8\x06\x95J;\x9e\ +\xff\xd2(/oKB\xfbxm\x85Q\xa9T\xd8\xaa\ +\x84\xd9R\xadV\xd3\xf8\xf8\xb0\xc6\xc7\x87\x95L\xa6\x95\ +N\xbb\x03\x88\x01\x00@w`E\x8c\x19\xc9p\xd4\xbb\ +G\xa4\xc2\xb7(b\xe0\x1b\xb5ZUcc\xc3\x1a\x1b\ +\xdb0\xe9\xa0\xd5\x99\x0a\x85B\xea\xeb\x1bj\xd9\xe3\x01\ +35:\xda\xd8\x82\xbf|~T\xf9\xfc\xa8\xe2\xf1\x94\ +z{\x07\x15\x8f\xa7\xda\x9c\x0c\x00\x004cn\xa2W\ +C1\xbe_\x9b@\x11\x03\x13(b\xd0\xf5&\xe6\xbf\ +\x8c\x8d\x0d\xabV\x9b\xfe\xfc\x97\x1d\x89\xc5\x12\xea\xef\x9f\ +\xa3h4\xde\xd2\xc7\x05f\xa2X\x9c\xde\xac\xa2bq\ +\x5ck\xd7\x8e+\x16K(\x9d\x1eT2\x99nS2\ +\x00\x00\xd0\x8c=X\x0dcLO\x84\x06\x0c\x9d\xe7\xc7\ +\x22\x86\x191\x01\xe1\xce\x7fY\xaf|~L\xad\x9e\xff\ +\x92H\xf4(\x9d\x1e`%\x01|\xa1T*h\xfd\xfa\ +\xc7\x14\x89\xc4\x94N\x0f*\x95\xea\xf5\xc4\xbc\x1b\x00\x00\ +\xe0\xda5=\xdbt\x84\xc0JEb<\xe3\x8a\x8e\xf3\ +c\x11\xb3\xcet\x00\xb4W\xab\xe7\xbfL\x08\x85BJ\ +\xa5\xfa\x94N\x0f\xd4\x87\xb4\x02\xde\x12\x8f'\xeb\x83\xa7\ +g\xa6R)i\xe3\xc65\x1a\x19Y\xabtz@=\ +=\xfd\xc6O\x80\x02\x00\x00\x141&%#1?\xde\ +\x13\xc3\xe3\xfc\xf8A\xb7\xdet\x00\xb4^\xbb\xe6\xbfH\ +R$\x12UOO\xbfR\xa9~\x85\xc3\xdc\x94\xc2\xbb\ +z{\x87T(\x8c7\xbd\x05\xafZ\xadhxx\xad\ +FG\xd7+\x95\xea\xe7\xe8k\x00\x00\x0c\xdb\x85\x22\xc6\ +\x98T$\xc6\x0d\x00:\xce\x8f\x1ft\xebM\x07@\xeb\ +T*e\x0d\x0f?\xa9\xc7\x1f_\xa5\xe1\xe1'[Z\ +\xc2\xc4b\x09\x0d\x0e\xce\xd3\xdc\xb9K\x95N\x0fR\xc2\ +\xc0\xf3\xa2\xd1\x98f\xcf^\xa4X\xac5\xa7xU\xab\ +U\x8d\x8e\xae\xd7\x9a5\xab\xb4q\xe3\x13\xaaTJ-\ +y\x5c\x00\x00\xd0\xb8\x9eHL\x8b\x92\xcc\x8b5%\x19\ +\x8e\xea\x92U+9\x22\x15\x1d\xe5\xbb;\xcf\x5c&\x9b\ +\x97\xd4\xda=+\xe8\xb8R)\xaf\xf5\xeb\x1f\xd3\x9a5\ +\xab4:\xba\xa1\xa5Cx\x93\xc9\xb4\x86\x86\x16i\xf6\ +\xec\xc5J&{\xe5\xa5\xe3\x89\x81\xa9D\xa3q\xcd\x9e\ +\xbdHCC\x0b\x95H\xb4f\x86Q\xadV\xd3\xd8\xd8\ +F\xadY\xb3Z\xeb\xd7?\xaer\xb9\xd8\x92\xc7\x05\x00\ +\x00S\xdb\xb9gHa~\x1e5*\x1c\x0a-6\x9d\ +\x01\xc1\xe2\xc7\xadI\x92;'f\xa1\xe9\x10\x98\xae\x9a\ +\xf2\xf91\x8d\x8e\xaeW\xa9Th\xe9#\x87B\xe1\xfa\ +\xfc\x97~\xe6\xbf\xc0\x17\xe2\xf1\x94\xe2\xf1\xd4\x16C\xab\ +[q`\x5cM\xf9\xfc\x88\xf2\xf9\x91\xfa\xc0\xeaA\xc5\ +\xe3\xafJ\xa5\ +\xbc\xd6\xad{T\xd1h\x5c\xe9\xf4\x80R)\xb6\xf3\x01\ +\x00\xd0J\xcb{f\x99\x8e\x10x\x91Ph\x9e\xe9\x0c\ +\x08\x16\x8a\x18t\x5c\xb1\x98\xd7\xd8\xd8\x86\x16m\xa5\xd8\ +Z2\x99VO\xcf\x00\xdb)\x10X\xe1pD}}\ +C\xea\xed\x1d\xd4\xd8\xd8F\x8d\x8enP\xb5Zi\xfa\ +q\xcb\xe5\xa26lX\xa3\x91\x91u\xf5B\xa6_\xa1\ +\x10\x85\x0c\x00\x00\xcdZ\x9e\x1a4\x1d!\xf0\xa2\xa10\ +E\x0c:\xca\xafE\xcc\x1a\xd3\x01\xf0T5\xe5\xf3\xa3\ +\x1a\x1d\xdd\xc0\xfc\x17\xa0\x03B\xa1\xb0\xd2\xe9A\xf5\xf4\ +\x0ch||X\xa3\xa3\x1bZr*R\xa5R\xd6\xc6\ +\x8dOjdd\xbdzz\xfa\xd5\xd33\xc0\xb6?\x00\ +\x00f\xa8'\x12\xd3\xdcD\xaf\xe9\x18\x81\x17\x0d\x85\xd9\ +\x1f\x86\x8e\xf2k\x11\xb3\xd6t\x00\xb8\xaa\xd5\xaa\xc6\xc7\ +\xdb9\xffe@\xa9T\x1f7\x82\xc0v\x84B\xa1z\ +a\xd2\xaf|~\xa4>\x0c\xbb\xf9S\x91\xaa\xd5\x8aF\ +F\xd6itts!\x13\x89\xf8\xf5[\x0a\x00\x00\xed\ +\xb1<\xc5\xb6$/\x88\x86#\xfcC\xa0\xa3\xfc\xfaS\ +\xf3\x93\xa6\x03\x04\x9d;8tc}p(\xf3_\x00\ +/H&{\x95L\xf6\xaaPpO'+\x16\xf3M\ +?f\xadV\xdb4\x93&\x99\xecU:=\xa8h\x94\ +\x95i\x00\x004\x82\xf90\xde\x10\x0d\x85\x07Mg@\ +\xb0\xf8\xb5\x88y\xdct\x80\xa0b\xfe\x0b\xe0}\x89D\ +\x8f\x12\x89\x1e\x95J\x05\x8d\x8c\xacW\xa1\xd0\xfc\xe7k\ +\xadV\xd3\xf8\xf8\xb0\xc6\xc7\x87\x95L\xa6\x95N\x0f*\ +\x16K\xb4 -\x00\x00\xfeE\x11\xe3\x0d\xd1P\x98\xfd\ +a\xe8(\xbf\x161\xac\x88\xe9\xa8\xf6\xce\x7f\xe9\xe9\xe9\ +SO\x0f\xf3_\x80V\x8b\xc5\x12\x9a5k\xbe\xca\xe5\ +b\xfd\xe8\xeb\x11I\xcd\x1f}\x9d\xcf\x8f*\x9f\x1fU\ +<\x9eR:=\xc0\xd1\xd7\x00\x00l\xc7N\x0c\xea\xf5\ +\x84p(\xc43\xbd\xe8(\xbf\x161\xac\x88\xe9\x00w\ +\xfe\xcbF\x8d\x8dml\xdb\xfc\x97\x9e\x9e>\x85B\xcc\ +\x7f\x01\xda)\x1a\x8dk``\xee\xa6\xa3\xaf\xc7\xc77\ +\xaaVk\xbe\x90)\x16\xc7U,\x8e+\x16\x8b+\x9d\ +\x1eT2\xc9\x93M\x00\x00l\x89\x151\xde\x10\x0fE\ +\xd2\xa63 X(b0m\xed\x9f\xff2\xa8d\xb2\ +G\xcc\x7f\x01:+\x12\x89\xaa\xbf\x7f\xf6\xa6\xa3\xaf\xc7\ +\xc66\xb6\xe4\xe8\xebR\xa9\xa8\xf5\xeb\x1fW$2q\ +\xf4u\x1fG_\x03\x00\x02/\x1a\x0akQ\xb2\xdft\ +\x0cH\x0a\x85B~\xbd/\x86G\xf9\xf5\x03\x8e\xe3\xab\ +\xdb\xa0\xdd\xf3_\xd2\xe9\x01\xc5b\xac\x0a\x04L\x0b\x87\ +#\xea\xed\x9d\xa5tzP\xe3\xe3\x1b\xebG_7\xbf\ +\xea\xadR)i\xe3\xc6'42\xe2\x162==\xfd\ +\xacx\x03\x00\x04\xd6\xd2\xd4\xa0\x22|\x1f\xf4\x84x(\ +\x922\x9d\x01\xc1\xe2\xcb\x22&\x97\xc9\xae\xb5\x1c\xbb(\ +)n:K\xf7\xabi||Tcc\xed\x9c\xff\xc2\ +\xb1\xb7\x80\x17\xb9G_\xbb\x85\xc9\xf8\xf8\x88FG7\ +\xa8\x5cn\xcd\xd1\xd7\xc3\xc3k52\xe2\x1e}\x9dN\ +\x0f(\x1c\x8e\xb4 1\x00\x00\xddcY\xcf\xa0\xe9\x08\ +\xa8\x8b\x84\xc3\xdc7\xa2\xa3\xfc|\xf7\xfb\xa8\xa4e\xa6\ +Ct+\xe6\xbf\x00\xd8,\xa4T\xaaO\xa9T\x9f\x0a\ +\x85Q\x8d\x8clP\xa9\xd4\x8a\xa3\xaf\xab\x1a\x1d]\xaf\ +\xb1\xb1\x0dJ\xa5\xfa\x94N\x0f0\x94\x1b\x00\x10\x18K\ +\x93\x03\xa6#\xa0.\x22\xb6&\xa1\xb3\xfc\xfc\x01G\x11\ +3\x03\xee\xfc\x97\x0d\xf5\xf9/\xcd\x0f\xeb\xdcR,\x96\ +T:=\xa0d\x92YX@\xb7J$\xd2J$\xd2\ +*\x16\xf3\x1a\x1d]\xafBa\xac\xe9\xc7\xac\xd5j\x9b\ +f\xd2$\x93\xbd\xf5m\x8a\x1c}\x0d\x00\xf07\xe6\xc3\ +xG\x22\x1ce>\x02:\xca\xcfE\xccC\xa6\x03t\ +\x93bq\x5c\xa3\xa3\x1bZrS\xb5\xb5\x90\x92\xc9\x1e\ +\xa5\xd3\x83\xdcX\x01>\x12\x8f'\x15\x8f/P\xa9T\ +\xd4\xe8\xe8\xfa\xfa\xec\xa8V\x1c}=\xa2|~D\x89\ +DJ\xe9\xf4\xa0\xe2q\xb6l\x03\x00\xfciq\x8a\x15\ +1^\x11a\x99>:\xcc\xcfE\xcc#\xa6\x03t\x83\ +R\xa9\xa0\x8d\x1b\x9f`\xfe\x0b\x80\x19\x89\xc5\xe2\x1a\x1c\ +\x9c\xd7\xf2\xd5t\x85\xc2\xb8\x0a\x85q\xc5\xe3I\xf5\xf7\ +\xcfQ4\xca\xd6m\x00\x80\xbf\xb0\x22\xc6;ban\ +X\xd0Y~\xfe\x80\xa3\x88\x99B\xb9\x5c\xd4\xda\xb5\x0f\ +\xb7t\x0bR$\x12SOO?\xf3_\x80\x80\x89D\ +b\xea\xef\x9f\xa3\xde\xdeY\xf5Bf\xa3\xaa\xd5\xe6\x8f\ +\xb7/\x16\xf3z\xf2\xc9\x875{\xf6bE\xa3\xcc\x8f\ +\x01\x00\xf8C,\x14\xd6\xbcx\xaf\xe9\x18\x00\x0c\xf1s\ +\x11\xf3\xb0\xe9\x00^7<\xbc\xb6e%\x0c\xf3_\x00\ +H\xee\xd1\xd7}}C\xea\xed\x1d\xd4\xd8\x98{\xf4u\ +\xb5Zi\xea1k\xb5\xaaFF\xd6jpp~\x8b\ +R\x02\x00`\xd6\x82d\xbf\xc2\xa1\x90\xe9\x18\xa8KE\ +b~\xbe/\x86\x07\xf9\xf9\x03\x8e\x151S(\x16\x9b\ +=\xf5$\xa4d2\xcd`M\x00\xdb\x08\x85\xc2J\xa7\ +\x07\xd5\xd33P?\xfaz\xbd*\x95\xd2\x8c\x1f\xaf\xf9\ +\xafW\x00\x00x\xc7b\xb6%\x01\x81F\x11\x83i\x0b\ +\x87\xc3J\xa5\x98\xff\x02`j\xa1P\xa8>/\xaaO\ +\xf9\xfc\xa8FG\xd7\xb7|&\x15\x00\x00\xdd\x86\xf90\ +@\xb0\xf9\xf9.z\xb5\xe9\x00^\x97H\xa4\xea'\x9d\ +4&\x12\x89)\x9d\xeeW*\xc5\xfc\x17\x00\xd3\x97L\ +\xa6\x95L\xa6U,\x8ekdd\xbd\x8a\xc5\xf1\x86\xdf\ +\x96\xd3\x93\x00\x00~\xc2\x8a\x18\xcfa\x9f\x18:\xca\xb7\ +w\xd3\xb9L\xf6\x09I\xad>\x8b\xd9Wzz\x1a;\ +2/\x1eOjpp\xbe\xe6\xce]\xaa\x9e\x9e\x01J\ +\x18\x00M\x89\xc7S\x1a\x1aZ\xa8\xd9\xb3\x177\x8cw\ +\x15\xdaW\xc4H\xeeiJ\xbf\x97\xb4S;/\x82\xee\ +\x12\x88\x22\xa6\xee.\xd3\x01\x00\x00\x00\x00\x04\xd3lV\ +\xc4x\xd6h\xb9\xd8\xeeK,\x97[\xc6,k\xf7\x85\ +\xd0\x1d\x82T\xc4\xdcm:\x00\x00\x00\x00\x80`bE\ +\x8cw\xb5qk\xd2\x96v\x92[\xc6,\xe9\xc4\xc5\xe0\ +mA*b\xfea:\x00\x00\x00\x00\x80`\x9a\x15K\ +\x99\x8e\x80\xed\x18\xad\xb4}E\xcc\x84\x9d\xe5\x961\x8b\ +;uAxS\x90\x8a\x18V\xc4\x00\x00\x00\x000\x82\ +\xadI\xde5\xd2\xfe\xadI[\xdaU\xd2\xf5\x92\xe6w\ +\xf2\xa2\xf0\x96 \x151\xac\x88\x01\x00\x00\x00`\xc4,\ +\x8a\x18\xcf\x1a)\x17:}\xc9=%\xfdV\xd2\xdcN\ +_\x18\xde\x10\x98\x22&\x97\xc9n\x94\xf4\xa0\xe9\x1c\x00\ +\x00\x00\x00\x82gv\x8c\x22\xc6\xab\x0c\x141\x92\xb4\x8f\ +\xdc\x951sL\x5c\x1cf\x05\xa6\x88\xa9\xe3\xe4$\x00\ +\x00\x00\x00\x1d7\xc4\x8a\x18\xcf\x1a\xee\xdc\x8c\x98\xa7\xda\ +_\xd2u\x92f\x99\x0a\x003\x82V\xc4\xfc\xcdt\x00\ +\x00\x00\x00\x00\xc1\x92\x08G\xd5\x13\x89\x99\x8e\x81\xed\xd8\ +P\xca\x9b\xbc\xfcAr\xcb\x98\x01\x93!\xd0YA+\ +bn7\x1d\x00\x00\x00\x00@\xb0\xcca5\x8c\xa7\xad\ +/\x8d\x9b\x8ep\x88\xa4kE\x19\x13\x18A+b\xee\ +0\x1d\x00\x00\x00\x00@\xb0pt\xb5\xb7\xad3_\xc4\ +H\xd2\xe1\x92~%\xa9\xd7t\x10\xb4_\xd0\x8a\x98{\ +%y\xe2\xb3\x0c\x00\x00\x00@0\xcc\x8e\xa7MG\xc0\ +\x0ex\xa4\x88\x91\xa4\xa3\xe4\x961,\xa1\xf2\xb9@\x15\ +1\xb9L\xb6,\x06\xf6\x02\x00\x00\x00\xe8\xa0YqV\ +\xc4x\xd5h\xb9\xa8R\xb5b:\xc6\xff\xb3w\xe7\xf1\ +u\xd5u\xfe\xc7\xdf7\xfb\xd26\xe9\xbe\xa7\x0b\xb4\x94\ +\xb5i)\xa8\xf1\x02\x05\xdc\x00\x95(\xee\x0a\xa4\xea,\ +\xf773Z\x1dg\xa9\xe3H\x99\x19'\xea\x8cc\x1d\ +\x7f?q\x99\x91\xa8\xe3\xee@p\x03A \xf5\xd6\x88\ +lMY\xca\xd2\x96\xa6\xfb\xde&m\xd2\xec\xf7\xfe\xfe\ +\xb8\xa7\x90\x96\xb4Mr\xcf9\x9fs\xeey=\x1f\x8f\ +<\xa0i\xee\xf9\xbe\xd3\xb4\xf7\x9e\xfb>\xdf\xf3\xfd\x0e\ +v\xa5\xa4\x9f\x8b2&\xa7E\xaa\x88qp{\x12\x00\ +\x00\x00\x00\xdfL`\xeb\xea\xc0\x0a\xd0l\x98\xc1\xae\x95\ +t\x97\xa4b\xeb \xf0\x06E\x0c\x00\x00\x00\x00xh\ +\x22\x8b\xf5\x06\xd6\xc1\xdeN\xeb\x08\xa7\xf3fe\xca\x98\ +\x22\xeb p\x1fE\x0c\x00\x00\x00\x00x\x88\xc5z\x83\ +k\x7fp\x8b\x18I\xba^\xd2OD\x19\x93s\xa2Z\ +\xc4\xa4\xadC\x00\x00\x00\x00\x88\x86I,\xd6\x1bX\x87\ +z\x02]\xc4H\xd2\x8d\x92~ \xa9\xc0:\x08\xdc\x13\ +\xb9\x22&\x19O\xb4Kj\xb5\xce\x01\x00\x00\x00 \x1a\ +X\xac7\xb8\xf6\xf7vXG\x18\x8e\x9b$}_R\ +\xbeu\x10\xb8#rE\x8c\x83\xdb\x93\x00\x00\x00\x00\xf8\ +b\x22\x8b\xf5\x06\xd6\x81\xe0\xcf\x889\xe1=\x92\xbe#\ +\xca\x98\x9c@\x11\x03\x00\x00\x00\x00\x1e\x19[P\xac\xc2\ +<\xde;\x07\xd5\xfe\x9eP\xcc\x889\xe1\x83\x92\xfeK\ +\xd1}\x1f\x9f3\xa2\xfa\x03\xa4\x88\x01\x00\x00\x00\xe09\ +\x16\xea\x0d\xb6}\xe1\xb85i\xb0:I\xdf\x94\x143\ +\xce\x81,P\xc4\x00\x00\x00\x00\x80G&\x17\x8f\xb1\x8e\ +\x80\xd3\xe8\x1e\xe8\xd3\xe1\xde\xe3\xd61F\xe3#\x92\xfe\ +\x9f(cB+\x92EL2\x9exI\xd2a\xeb\x1c\ +\x00\x00\x00\x00r\xdbdvL\x0a\xac\xdd=\xc7\xac#\ +d#!\xe9\xcb\xd6!0:\x91,b\x1cOX\x07\ +\x00\x00\x00\x00\x90\xdb(b\x82kO\xf7Q\xeb\x08\xd9\ +\xfa\xb8\xa4/Y\x87\xc0\xc8E\xb9\x88y\xdc:\x00\x00\ +\x00\x00\x80\xdc6\xa9\x98\x22&\xa8v\x87\xbf\x88\x91\xa4\ +OJ\xaa\xb7\x0e\x81\x91\xa1\x88\x01\x00\x00\x00\x00\x8f0\ +#&\xb8v\xe5F\x11#I\x7f/\xe9v\xeb\x10\x18\ +\xbe(\x171\x8fY\x07\x00\x00\x00\x00\x90\xdb\x98\x11\x13\ +\x5c92#\xe6\x84\xcfJ\xfa\x07\xeb\x10\x18\x9e\xc8\x16\ +1\xc9xb\x87\xa4}\xd69\x00\x00\x00\x00\xe4\xae)\ +E\xec\x9a\x14T;\xba\xda\xac#\xb8\xed_$\xad\xb4\ +\x0e\x81\xb3\x8bl\x11\xe3\xe0\xf6$\x00\x00\x00\x00\x9e\xc8\ +\x8f\xe5i|a\xa9u\x0c\x0c\xa1/5\x90k3b\ +N\xf8\x0fI\x7fj\x1d\x02g\x16\xf5\x22\xe6Q\xeb\x00\ +\x00\x00\x00\x00r\xd3\xc4\xa22\xe5\xc5b\xd610\x84\ +\x1d]mJ\xa5\xd3\xd61\xbc\x10\x93\xf4uI\xb7X\ +\x07\xc1\xe9E\xbd\x88\xf9\x83u\x00\x00\x00\x00\x00\xb9i\ +Z\xf1X\xeb\x088\x8dm\xb9w[\xd2`1I\xdf\ +\x96\xf4v\xeb \x18Z\xd4\x8b\x98\xc7%\xe5d\x0d\x0a\ +\x00\x00\x00\xc0\xd6\xb4\x12\x8a\x98\xa0\xca\xf1\x22F\x92\xf2\ +%\xfdD\xd25\xd6A\xf0j\x91.b\x92\xf1\xc4\x11\ +I/Z\xe7\x00\x00\x00\x00\x90{\xa63#&\xb0\xb6\ +\x1d?b\x1d\xc1\x0f\xc5\x92\xee\x92t\x99u\x10\x9c,\ +\xd2E\x8c\x83\xdb\x93\x00\x00\x00\x00\xb8\x8e\x191\xc1\xd5\ +z\xfc\xb0u\x04\xbfTH\xfa\x95\xa4s\xad\x83\xe0\x15\ +\x141\xd2#\xd6\x01\x00\x00\x00\x00\xe4\x9e\x19\xc5\xe3\xac\ +#`\x08\x03\xe9T\x14nM\x1al\xb2\xa4{%M\ +\xb5\x0e\x82\x0c\x8a\x18\xe91\xeb\x00\x00\x00\x00\x00r\x0f\ +3b\x82i[W\x9b\xfaR\x03\xd61\xfcv\xae\xa4\ +\x07\x94\x99!\x03c\x141\xd2\x06I\x1d\xd6!\x00\x00\ +\x00\x00\xe4\x8e\xbcXLS\x8a\xc7X\xc7\xc0\x106w\ +\x1c\xb4\x8e`\xe5be\xd6\x8c)\xb2\x0e\x12u\x91/\ +b\x92\xf1\xc4\x80X'\x06\x00\x00\x00\x80\x8b&\x17\x95\ +\xab \x16\xf9\xb7[\x81\xb4\xb9\xf3\x90u\x04K\xd7(\ +\xb3\xb5u\xcc:H\x94\xf1\xcc\x90\xf1{\xeb\x00\x00\x00\ +\x00\x00r\xc7\xb4\x12\xd6\x87\x09\xaa\xcd\x9d\x91\x9d\x11s\ +\xc2\x07%\xfd\xbdu\x88(\xa3\x88\xc9\xa0\x88\x01\x00\x00\ +\x00\xe0\x1a\xb6\xae\x0e\xaeM\xd1\x9e\x11s\xc2\xe7\x94)\ +d`\x80\x22&\xe3\x11I\x91[\xad\x09\x00\x00\x00\x80\ +7X\xa87\x98\x0e\xf6v\xaa\xad\xaf\xcb:F\x10\xc4\ +$}K\xd2k\xac\x83D\x11E\x8c\xa4d<\xd1!\ +\xa9\xc5:\x07\x00\x00\x00\x80\xdc0\x83[\x93\x02\x89\xd9\ +0')\x95\xf4\x0bIs\x8dsD\x0eE\xcc+\xb8\ +=\x09\x00\x00\x00\x80+f\x95\xb0Kp\x10m<\xb6\ +\xcf:B\xd0L\x96\xf4sIe\xd6A\xa2\x84\x22\xe6\ +\x15\x141\x00\x00\x00\x00\x5c1\xb3\x94\x22&\x886\x1e\ +\xa5\x88\x19\xc2\xc5\x92\xbe'vR\xf2\x0dE\xcc+\xd6\ +Y\x07\x00\x00\x00\x00\x10~\xe5\xf9E\x9aPXj\x1d\ +\x03\xa7HKz\xbec\xbfu\x8c\xa0z\xa7\xa4\xd5\xd6\ +!\xa2\x82\x22\xc6\x91\x8c'vK\xdaj\x9d\x03\x00\x00\ +\x00@\xb8\xcd(e}\x98 \xda\xd1\xd5\xa6\xa3\xfd=\ +\xd61\x82\xec\x1f\x95)d\xe01\x8a\x98\x93q{\x12\ +\x00\x00\x00\x80\xacT\x95TZG\xc0\x10\x9e;\xc6l\ +\x98\xb3\x88I\xfa\xb6\xa4E\xd6Ar\x1dE\xcc\xc9\xb8\ +=\x09\x00\x00\x00@VX\x1f&\x98X\xa8wX*\ +$\xdd%\x89\xfd\xd7=D\x11s2f\xc4\x00\x00\x00\ +\x00\xc8\xca,\xb6\xae\x0e$\x8a\x98a;_\x99\x991\ +,\xde\xeb\x11\x8a\x98\x93=+\xe9\xa0u\x08\x00\x00\x00\ +\x00\xe15\xab\xb4\xd2:\x02N\xd1\x9d\xea\xd7\xe6\xceC\ +\xd61\xc2\xe4]\x92>f\x1d\x22WQ\xc4\x0c\x92\x8c\ +'\xd2\x92\x9a\xacs\x00\x00\x00\x00\x08\xaf\x99\xcc\x88\x09\ +\x9cg\x8f\xeeU\x7f:e\x1d#l\xbe(i\xa9u\ +\x88\x5cD\x11\xf3jM\xd6\x01\x00\x00\x00\x00\x84Sy\ +~\x91&\x14\x95Y\xc7\xc0)Z\xdaw[G\x08\xa3\ +\x22I?\x91D\xb3\xe82\x8a\x98Wk\xb2\x0e\x00\x00\ +\x00\x00 \x9cf0\x1b&\x90Z\x8e\xee\xb1\x8e\x10V\ +\xe7H\xfa\xbau\x88\x5cC\x11\xf3j\x1b%\xb1\xaf\x19\ +\x00\x00\x00\x80\x11\xabb}\x98\xc0\xe9M\x0d\xb0Po\ +v\xde/\xe9\xa3\xd6!r\x09E\xcc)\x9cub\x1e\ +\xb6\xce\x01\x00\x00\x00 |\x98\x11\x13<\xcf\x1d\xdb\xa7\ +\xde\xd4\x80u\x8c\xb0\xfb\x8a\xa4\x0b\xadC\xe4\x0a\x8a\x98\ +\xa1=h\x1d\x00\x00\x00\x00@\xf8\xcc-\x1bo\x1d\x01\ +\xa7\xe0\xb6$W\x94I\xfa\xb1\xf3_d\x89\x22fh\ +\xbf\xb1\x0e\x00\x00\x00\x00 |f\x97UZG\xc0)\ +X\xa8\xd75\x17J\xfa\x0f\xeb\x10\xb9\x80\x22f\x08\xc9\ +xb\xbb\xa4\x17\xacs\x00\x00\x00\x00\x08\x17\xd6\x88\x09\ +\x96\xbe\xd4\x80\x9e9\xba\xd7:F.\xf9SI7X\ +\x87\x08;\x8a\x98\xd3{\xc0:\x00\x00\x00\x00\x80\xf0\x98\ +\x5c\ +)\xb6\xb3~\x15\x8a\x98\x11H\xc6\x13G$\xfd\xd6:\ +\x07\x00\x00\x00\x80`\x98S6^y\xb1\x98u\x8c\xc8\ +\xebK\x0d(yx\xabu\x0c\xbcZ\x89\xa4\xcfZ\x87\ +\x08\x1a\x8a\x98\x91\xfb\xa9u\x00\x00\x00\x00\x00\xc1\xc0\x8e\ +I\xc1\xf0h\x1b\xb7%\x05\xd8-\x92\x16X\x87\x08\x12\ +\x8a\x98\x91\xbbKR\xb7u\x08\x00\x00\x00\x00\xf6\xd81\ +)\x18\x1e<\xb0\xd9:\x02N\xaf@\xd2m\xd6!\x82\ +\x84\x22f\x84\x92\xf1\xc4Qe\xb6\xb2\x06\x00\x00\x00\x10\ +q\xf3(b\xccu\x0f\xf4)y\xb8\xd5:\x06\xce\xec\ +\xfd\x92.\xb2\x0e\x11\x14\x141\xa3\xf3\x03\xeb\x00\x00\x00\ +\x00\x00\xec\xcd/\x9fh\x1d!\xf2\x92\x87[\xd5=\xd0\ +g\x1d\x03g\x96'\xe9v\xeb\x10AA\x113:\xf7\ +I:l\x1d\x02\x00\x00\x00\x80\x9d\xb2\xfcBM)\x1e\ +c\x1d#\xf2\x1e8\xb0\xc9:\x02\x86\xe7\x1d\x92\x96Z\ +\x87\x08\x02\x8a\x98QH\xc6\x13\xbd\x92~f\x9d\x03\x00\ +\x00\x00\x80\x9dye\x13\xc4~I\xb6\xda\xfb\xba\xf5\xd8\ +\x91\x1d\xd610<1I\x9f\xb6\x0e\x11\x04\x141\xa3\ +\xf7=\xeb\x00\x00\x00\x00\x00\xec\xb0>\x8c\xbd\xdf\x1e\xd8\ +\xa4\xfet\xca:\x06\x86\xef\x1d\x92\x16Z\x87\xb0F\x11\ +3z\xbf\x97\xb4\xc5:\x04\x00\x00\x00\x00\x1b\xf3\xcb)\ +b\xac\xfdj\xff\xf3\xd6\x1102y\x92>e\x1d\xc2\ +\x1aE\xcc(%\xe3\x89\xb4\xa4\x06\xeb\x1c\x00\x00\x00\x00\ +l\x9cS\xc6B\xbd\x966u\x1c\xd4\xa6\x8e\x83\xd61\ +0r\xb7J\x9an\x1d\xc2\x12ELv\xbe+\x89y\ +p\x00\x00\x00@\x04\x9d;f\x92u\x84Hc6L\ +h\x15I\xfa\x84u\x08K\x141YH\xc6\x13\xdb%\ +=l\x9d\x03\x00\x00\x00\x80\xbf&\x17\x8f\xd1\xb8\x82b\ +\xeb\x18\x91\xd5\x97N\xe9\xb7\xfb\xd9-)\xc4\xfeTR\ +\xa5u\x08+\x141\xd9k\xb0\x0e\x00\x00\x00\x00\xc0_\ +\x0b\xca\xb9-\xc9R\xf2\xd0V\xb5\xf7w[\xc7\xc0\xe8\ +UH\xba\xd9:\x84\x15\x8a\x98\xec\xfd\xaf\xa46\xeb\x10\ +\x00\x00\x00\x00\xfcsn9\xb7%Y\xbaw\x1f\xb7%\ +\xe5\x80\x84\x14\xcd\x1d\xe0)b\xb2\x94\x8c'\xba$\xfd\ +\xc0:\x07\x00\x00\x00\x00\xff\x9c\xcb\x8c\x183\x07z;\ +\xf5h\xdb\x0e\xeb\x18\xc8\xde\xf9\x92\xae\xb6\x0ea\x81\x22\ +\xc6\x1d\xdf\xb0\x0e\x00\x00\x00\x00\xc0?\xe7P\xc4\x98\xb9\ +o\xdf\x0bJ\xa5\xd3\xd61\xe0\x8e\xbf\xb0\x0e`\x81\x22\ +\xc6\x05\xc9x\xe2)I\x8fY\xe7\x88\x8a\xb1\x05\xc5\xca\ +\x8bEr\x06\x1b\x00\x00\x00\x02\xa0$\xbfP\xb3J+\ +\xaccDRJi\xfdj\xdfs\xd61\xe0\x9e\xb7K\ +\x9ae\x1d\xc2o\x05\xd6\x01r\xc87%]f\x1d\x22\ +\xac&\x17\x95kvi\xa5f\x94\x8c\xd3\x8c\xd2q\x9a\ +Vk\x1d\x01\xee\xbbE\x141\x18\x8dd<\xd1\ +q\xc5\xba;\xbe\xa7\xcc\xca\xcf\x18\xa40/_K\xc6\ +\xcdP\xcd\x849\xbal\xfclU\x9d\xa60\xf1\xca\x84\ +\xa22\xd5L\x98\xa3\x9a\x09s$I\xc7\x07\xfa\xb4\xbe\ +}\x97\x92\x87\xb6j\xdd\xe1V\xb5\xf7\xb1\xed\x1d\x00\x00\ +\x00\x86\x8f\x22\xc6\xc6\xfe\x9e\x0e5\x1f\xdef\x1d\x03\xee\ +[ \xe9u\x92\xfe`\x1d\xc4/\x141\xee\xbaC\x14\ +1\x92\xa4<\xc5t\xd9\xf8\xd9z\xc3\xe4su\xc5\x84\ +y/\xcf\x5c\x09\x82\xb2\xfcB\xbd~\xc2\x5c\xbd~\xc2\ +\x5c\xa5\xd2i\xb5\x1c\xdd\xad\x07\x0fl\xd6\x83\x076\xab\ +s\xa0\xd7:\x1e\x00\x00\x00\x02\x8e\xad\xabm\xfcb\xdf\ +s\xccl\xcf]\x1f\x12E\x0cF#\x19O<}\xc5\ +\xba;\x92\x92\xae\xb0\xceb\xa5\xa2\xb0D7N\xbbP\ +o\x9fv\x81\xa6\x16\x07\xff.\xad\xbcXLK+f\ +ji\xc5L\xfd\xe5\xbc\x1a=tp\x8b~\xb1w\xa3\ +\x9e=\xb6\xcf:\x1a\x00\x00\x00\x02(&vL\xb2\xd0\ +\x97N\xe9\x17{7Z\xc7\x80w\xde'\xe9\x13\x92\x22\ +qe\x9c\x22\xc6}_S\x04\x8b\x98\xc9E\xe5\xbay\ +\xf6R]7u\x91J\xf2\xc2\xf9\xd7\xaa4\xbfP7\ +L]\xa4\x1b\xa6.\xd23\xc7\xf6\xe9\xfb;\xd7\xab\xf9\ +P\xabRbk<\x00\x00\x00d\xcc,\xa9P\xd9\x10\ +\x9bH\xc0[\x0f\x1d\xd8\xacCl\xc2\x91\xcb&Hz\ +\xb3\xa4_X\x07\xf1C8\xdf1\x07\xdb]\x92\xf6J\ +\x9af\x1d\xc4\x0fc\x0a\x8au\xcb\xec\xa5z\xe7\xf4\x8b\ +T\x1c\xd2\x02f(\x17\x8d\x9d\xaa\xfa\xf3\xdf\xa2\xd6\xe3\ +G\xf4?;\x9f\xd4\x03\xfb7Q\xc8\x00\x00\x00\x80\xd9\ +0F\xee\xde\xf3\x8cu\x04x\xafV\x11)b\xf2\xac\ +\x03\xe4\x9ad<\xd1+\xe9\xbf\xacs\xf8\xe1\xba)\xe7\ +\xe9\xfb\x97\xbe_\xef\x9fY\x9dS%\xcc`s\xcb\xc6\ +\xeb3\x0b\xaf\xd5\x7f/y\xb7^3\xbe\xca:\x0e\x00\ +\x00\x00\x8c\xb1P\xaf\xff\x9e=\xb6\x8f\xa5\x03\xa2\xe1\xed\ +\x92\xf2\xadC\xf8!7\xdf=\xdb\xfb\x9a\xa4\xbf\x95\x14\ +\x9c\x15j]4\xb9\xa8\x5c\x7f\xbb`\xb9^\x1b\xa1b\ +\xe2\xdc\xf2\x89\xfa\xf7\x0bo\xd0\xfa\xf6\xdd\xfa\xf2\x96\xa4\ +\xb6\x1e?l\x1d\x09\x00\x00\x00\x06(b\xfc\xf7\xbf\xbb\ +\x9f>\xf1\xbf\xdd\x92\x9a\x95Y\xd4\xf59I;$u\ +J:\xa2\xcc$\x83\xf1\x92&K\x9a#i\xbe\xa4s\ +%-\x95\x14\x9d7.\xe16I\x99e>\x9a\x8cs\ +x\x8e\x22\xc6\x03\xc9xb\xcf\x15\xeb\xee\xf8\x99\xa4\x0f\ +Xgq\xdb\xeb&\xcc\xd1?,\xbcF\x15\x05%\xd6\ +QL,\xa9\x98\xa1o/y\xb7~\xbck\x83\x1a\xb6\ +?\xae\xeeT\xbfu$\x00\x00\x00\xf8\xe8\xbc1\x93\xad\ +#D\xca\xbe\x9e\x0e=|p\xcbVI_\x90\xf4\xfd\ +d<\xd11\xd2c\x5c\xb1\xee\x8ei\x92^#)\xae\ +\xcc:$\x17\xbb\x9b\x12.\xaa\x15E\x0c\xb2\xf0U\xe5\ +P\x11\x13\x93t\xeb\xecK\xf5\xe19\x97+f\x1d\xc6\ +XA,O\x1f\x9c\xb5D\xd7N>W_\xdc\xd4\xa4\ +\xc7\xdavZG\x02\x00\x00\x80\x0f&\x14\x96jr\x08\ +v\x06\xcd%\xf7\xee\x7fas\x7f:u\xa1\xb3\x04\xc4\ +\xa8$\xe3\x89\xbd\x92\xeeq>\xfe\xe6\x8auw\xcc\x92\ +t\xbd\xa4\x1b\x94)f\x8a]\x09\x0b7\xbc\xd1:\x80\ +\x1fX#\xc6#\xc9x\xe2\x11I\x8fX\xe7pCa\ +,O\x9fYx\xad>B\x09s\x92i\xc5c\xf5\xa5\ +\x8b\xde\xa6\x95\xf3\xe39\xbbF\x0e\x00\x00\x00^\xb1\x90\ +\xd90\xbe\xea\xec\xefM\xe7+\x16\xcf\xa6\x84\x19J2\ +\x9e\xd8\x99\x8c'\xbe\x99\x8c'n\x944]\xd2\x9fJ\ +\xfa\x9d\xa4\x94\x9b\xe3`T.\x904\xd3:\x84\xd7(\ +b\xbc\xf5e\xeb\x00\xd9*\xce+\xd0\xe7\xce\x7f\x8b\xde\ +4e\xa1u\x94@\x8aI\xbai\xc6\xc5\xfa\xef%\xef\ +\xd6\x82\xf2I\xd6q\x00\x00\x00\xe0\xa1E\x141\xbez\ +\xbcmg\xf3\xcd\xb3\x97z\xbaJo2\x9e8\x92\x8c\ +'\xbe\x95\x8c'\xae\x924O\xd2g$1\xe5\xdd\xd6\ +5\xd6\x01\xbcF\x11\xe3\xad\xbb$m\xb7\x0e1Z\x85\ +\xb1<\xfd\xf3\xf9o\xd6\xeb&\xcc\xb1\x8e\x12xsJ\ ++\xf5\xf5\xc5\xef\xd4[\xa7\x9do\x1d\x05\x00\x00\x00\x1e\ +aF\x8c\x7fzR\xfd\xda\xde\xd5\xf6\x97~\x8e\x99\x8c\ +'\xb6'\xe3\x89\xcf)S\xc8\xbc[\xd2\xc3~\x8e\x8f\ +\x97\xbd\xc1:\x80\xd7(b<\x94\x8c'\xfa\x95Y+\ +&tb\x92V-\xbcF\xaf\x8b\xd0\xceH\xd9*\xca\ +\xcb\xd7\xdf\x9d\xbb\x5c\x9f^p5\xb7*\x01\x00\x00\xe4\ + \x8a\x18\xff\xb4\xb4\xef~\xfe\xe6\xd9K[,\xc6N\ +\xc6\x13\xfd\xc9x\xe2g\xc9x\xe2\x1ae\x16\xf6\xfd\x86\ +2;6\xc1\x1f\xaf\xb5\x0e\xe05\x8a\x18\xef}CR\ +\x9bu\x88\x91\xfa\xd0\xec\xa5z\xe3\xe4\x05\xd61B\xe9\ +\xba\xa9\x8b\xf4\xd5\x8bo\xd4\x84\xa22\xeb(\x00\x00\x00\ +p\xc9\xf8\xc2RMe\xa1^_\xa4\x94\xd6K\x9d\x87\ +?n\x9dC\x92\x92\xf1\xc43\xc9x\xe2\xcf%\xcd\x95\ +T/\xa9\xdd6Q$,\x90Ti\x1d\xc2K\x141\ +\x1eK\xc6\x13\xc7$\xfd\x97u\x8e\x91\xa8\x990G\x1f\ +\xad\xba\xdc:F\xa8\x9d?v\x8a\xbe\xb9\xf8&\xcd/\ +\x9fh\x1d\x05\x00\x00\x00.X0\x86\xf5\x00\xfd\xf2\xf4\ +\xd1\xbd{\xde?\xab\xfa~\xeb\x1c\x83%\xe3\x89}\xc9\ +x\xe2\xd3\x92\xe6H\xbaM\xd2\x11\xe3H\xb9,&\xe9\ +R\xeb\x10^\xa2\x88\xf1\xc7W%\xb9\xba\xd2\xb7Wf\ +\x96\x8c\xd3g\x17\xbeAy1\xf6G\xca\xd6\xd4\xe21\ +\xfa\xfa%\xef\xd0\xb2\xcaY\xd6Q\x00\x00\x00\x90\xa5\xf3\ +\xc7L\xb1\x8e\x10\x19/t\x1c\xf8\xacu\x86\xd3I\xc6\ +\x13\xed\xc9x\xe2\x9f\x94\x99!s\x9b\xa4\xa3\xb6\x89r\ +\x16E\x0c\xb2\x93\x8c'\xb6K\xfa\x91u\x8e\xb3\xc9\x8b\ +\xc5\xf4\x0f\x0b\xafUyA\x91u\x94\x9cQ\x9a_\xa8\ +/^x\x83\xae\x9et\x8eu\x14\x00\x00\x00d\x81\x19\ +1\xfe\xd8\xd4q\xf0\xe8{f\x5c\x12\xf8;\x0a\x92\xf1\ +\xc4QI\xff$\xe9\x1cI\xff\xa9\x90\x5cx\x0f\x91E\ +\xd6\x01\xbcD\x11\xe3\x9f/JJ[\x878\x93\x9b\xa6\ +_\xac\x8b\xc7M\xb3\x8e\x91s\x0acyZ}\xde\x1b\ +\xf5\xf6i\x17XG\x01\x00\x00\xc0(-bF\x8c/\ +\x9e>\xb6\xf7_\xad3\x8c\xd0AI\x1f\x97t\xbe\xa4\ +\x1f*\xe0\xef\xf9B$\xa7\xafdS\xc4\xf8$\x19O\ +<+\xe9\x17\xd69NgrQ\xb9>:\x87ua\ +\xbc\x92\x17\x8b\xe9S\xe7^\xa5\xda\xe9\x17ZG\x01\x00\ +\x00\xc0\x08U\x14\x96\xb0P\xaf\x0f\xb6t\x1e:\xf6\xce\ +\xe9\x17}\xc1:\xc7(\xbd$\xe9\x03\xca\xdcR\xf3\x80\ +q\x96\x5c\x90\xd3\xeb;P\xc4\xf8\xeb\xf3\xd6\x01N\xe7\ +O\xe6\xbeFe\xf9\x85\xd61rZL\xd2'\xcf\xb9\ +\x922\x06\x00\x00 d\xcec\xdbj_J\xc6\x13\x7f\x90\xb4\xd6:\ +\xc7\xa9\xce)\x9f\xa87OYh\x1d#\x12N\x941\ +\xdc\xa6\x04\x00\x00\x10\x1e\x141\xde\xdbz\xfcp\xe7;\ +\xa6_t\xbbu\x0e\x17\xdd'i\x89\xa4OIj\xb3\ +\x8d\x12J\xe3\xac\x03x\x89\x22\xc6\x7f\x81\xbb\xe7\xf1\xc3\ +U\x97)O\xec\x92\xe4\x97\x98\xa4\xbf>\xe7J\xc5'\ +\xcc\xb5\x8e\x02\x00\x00\x80a8\xaf\x9c\x22\xc6k\x1b\xda\ +sb6\xcc\xa9z%}I\xd2\x02I_\x93\xd4o\ +\x1b\x07AA\x11\xe3\xb3d\x22\xa9F\ +\xd2#\xc6Y\x82\xe4)\xeb\x00^\xa2\x88\xb1\xb5\xdaj\ +\xe0\xe9%\xe3xQ\x09\x98\xab&\xcd\xd7-\xb3/\xb5\ +\x8e\x01\x00\x00\x80A\x16qk\x92'\xd2\x92\x9e>\xb6\ +\xf7\x13\xd69\x02\xe4\x8f\xca\x941\x1fV\xa6\x9c\x89\xba\ +f\xeb\x00^\xa2\x88\xb1\xf5k\x19\xcd\x8a\x89O\x98\xcb\ +\xec\x8b\x00\xfap\xd5ez\xed\xf8*\xeb\x18\x00\x00\x00\ +P\xe6\x16r\xd6\xf2\xf3\xc6\xfa\xf6]\xdb\xdf3\xe3\x92\ +\xefY\xe7\x08\x98\xb4\xa4;%-Rf\xdb\xeb^\xdb\ +8f\xda\x15\x805U\xbdD\x11c(\x19O\xa4e\ +\xb4\x83R|\xc2\x5c\x8baq\x16y\xb1\x98>s\xde\ +\xb5\x9aZ<\xc6:\x0a\x00\x00@\xe4]0v\x8au\ +\x84\x9c\xd4\x9fN\xe9\xf9c\xfb?j\x9d#\xc0\x8eJ\ +\xfa\x94\xa4K$\xddg\x9c\xc5\xc2\xaf$\x0dX\x87\xf0\ +\x12E\x8c\xbd_Jz\xc2\xcf\x01K\xf2\x0at\xf1\xb8\ +i~\x0e\x89\x11\xa8((\xd1\xeaEoRa\x8c\x7f\ +\x9e\x00\x00\x00\x96\x16Q\xc4x\xe2\xb1#;\x9e\xfd\xc0\ +\xac%\x0fX\xe7\x08\x81\x17$]'\xe9FEk\xbb\ +\xeb\x1fX\x07\xf0\x1a\xef\xf4\x8c9\xb3b|\xddA\xe9\ +\x92q\xd3U\x98\x97\xef\xe7\x90\x18\xa1\x8b\xc6N\xd5G\ +\xe7\x5cn\x1d\x03\x00\x00 \xd2.\x1a\xcb\xc5K\xb7u\ +\x0f\xf4\xa57w\x1e\xfa\x90u\x8e\x90\xf9\xb92\xdb]\ +\xff\x83r\x7f\xbb\xeb\xed\x92~c\x1d\xc2k\x141\xc1\ +\xf0K\xf9\xb8V\xcc\xc5\x15\xd3\xfd\x1a\x0aYx\xdf\xac\ +j-\xad\x98i\x1d\x03\x00\x00 \x92\x0acy:w\ +\xcc$\xeb\x189\xe7\x0fG\xb6\xaf\xbdy\xf6\xd2\x16\xeb\ +\x1c!\xd4+\xe9_\x95\xd9\xee\xfa\x7f\x94YO&\x17\ +\xfd\xbb\xa4~\xeb\x10^\xa3\x88\x09\x00gV\xcc\xa7\xfd\ +\x1a\xef\x22vK\x0a\x85<\xc5\xf4\x99\x85\xd7h\x5cA\ +\xb1u\x14\x00\x00\x80\xc89w\xcc$n\x15w\xd9\xe1\ +\xde\xe3\x03\xad\xc7\x8f\xbc\xdb:G\xc8\xed\x91t\xb32\ +;,\xe5\xda\x82\xb6;$\xfd\x97u\x08?\xf0\xcc\x12\ +\x10\xc9x\xe2\x01I\x0f\xf91\xd6\xb9\xe5\x13\xfd\x18\x06\ +.\x98\x5c\ +\xa6\xe0-\xe8\xfb\xa8\xa4\xb8\xa4M\xd6A,\xf0\x8e.\ +\x80\x92\xf1\xc4.I_\xf5\xe2\xd8\xd3J\xc6yqX\ +\xf8dN\xd9x\xbdoV\xb5u\x0c\x00\x00\x80\x9cv\ +\xe18vLr\xc3\xc1\xde\xce\xfe\xad\xc7\x8f\xbc\xd3:\ +G\xc4\xf5*\xf3\xde\xf2\x1cI\x7f#i\xbfm\x1c\xa5\ +$\xad\x91t\xa5\x228\x13\xe6\x04\x8a\x98\xe0\xfa\xbc\xa4\ +#n\x1ftRQ\x99\xdb\x87\x84\xcf\xeaf/\xd3L\ +\x0a5\x00\x00\x00O\xc4$\x9d\xc7\xadI\xae\xf8\xc3\xe1\ +mw\xb0]u`tI\xfawIs%\xfd\x95\xa4\ +\xed\x06\x19\x9eT\xe6\x96\xa9OH\xea1\x18?0(\ +b\x02*\x19O\x1c\x91\xf4E\xb7\x8f;\xae\x80\x9dw\ +\xc2\xae(/_\x7f9\xff\xf5\xd61\x00\x00\x00r\xd2\ +\xec\xd2J\x8d+(\xb6\x8e\x11z\xcfw\x1c8\xf2\xb6\ +i\x17|\xcc:\x07^\xa5K\xd2\xffUf\x86\xcc\xbb\ +%%}\x18\xf3II\xef\x94\xb4L\xd2\x1f}\x18/\ +\xf0(b\x82m\x8d\x5cl*\xcb\x0b\x8a\x94\x17\x8b\xb9\ +u8\x18\x8aO\x98\xab\xa5\x953\xadc\x00\x00\x00\xe4\ +\x9c\x8b\xb9-)k}\xe9\x94\xd6\xb7\xed\xfa\x90u\x0e\ +\x9cQ\xbf\xa4\x9f)s\x8b\xd0\x05\xca\xdc\x91\xb1\xcd\xc5\ +\xe3\xef\x93\xf4\x0de\xca\x97K%\xdd\xad\xf0m\xab\xed\ +\x19\x8a\x98\x00K\xc6\x13\xdd\x92\xfe\xce\xad\xe31\x1b&\ +\xb7\xfc\xc5\xdc\xd7)O\x14k\x00\x00\x00n\xba\x88\x22\ +&k\xcd\x87[\xff\xf0\xfeY\xd5\xbf\xb6\xce\x81a{\ +N\xd2*I\xf3$-\x95\xf4\x0f\x92\xee\x97\xd46\x82\ +c\xec\x96t\x8f\xa4\xcfH\xba\x5c\xd2\x0cI\x7f.\xe9\ +\x097\x83\xe6\x8a\x02\xeb\x008\xab\x1f+\xb3\xca\xf5\xeb\ +\xb2=Pi~a\xf6i\x10\x18\x0b\xc7L\xd6\x9b\xa7\ +\x9e\xa7{\xf7=o\x1d\x05\x00\x00 g\x5c\xb0Y\xdd\xa9~\xeb(\x00\ +\x00\x00\xa17\xae\xa0XU\xa5\x95\xd61B\xed\xf7\x87\ +Z\xff\x8d\x05zsFZR\xab\xf3\x01\x17qkR\ +\x08$\xe3\x89?J\xfa~\xb6\xc7)\xcc\xa3\x88\xc95\ +\x93\x8b\xca\xf5\xee\x99\x97X\xc7\x00\x00\x00\xc8\x09\x17\x8f\ +\x9b\xce\x8d\xdfYhi\xdf\xbd\xabv\xfa\x85\x9f\xb6\xce\ +\x01\x04\x1dELx|Z\xd2q\xeb\x10\x08\x9e\xf7\xcd\ +\xacVyA\x91u\x0c\x00\x00\x80\xd0\xbbp\xdcT\xeb\ +\x08\xa1\xd5\xd1\xdf\x93~\xfa\xe8\xde\xeb\xads\x00a@\ +\x11\x13\x12\xc9xb\x872\xfb\xbe\x8fZA\x8c\x1fw\ +.\x1aWP\xac\xf7\xcc`V\x0c\x00\x00@\xb6.\x19\ +\xcbB\xbd\xa3\xf5\xbbC[\x1bn\x9e\xbd\xf4)\xeb\x1c\ +@\x18\xf0\xce<\x5c\xbe(i\xd7h\x1f\xdc\x9fN\xb9\ +\x18\x05A\xf2\xde\x19\x8b5\xae\xa0\xd8:\x06\x00\x00@\ +h\x15\xc6\xf2t\xde\xd8)\xd61B\xe9\xb9c\xfb\x0f\ +\xef\xeb\xe9\xf8\xa8u\x0e ,(bB$\x19Ot\ +*s\x8b\x12p\x92\xf2\x82\x22\xbdof\xb5u\x0c\x00\ +\x00\x80\xd0Z0f\xb2J\xf2\xd8\xcbd\xa4\xba\x07\xfa\ +\xb4\xbe}\xd7\xbbVT-\xe3\xaa/0L\x141\xe1\ +\xf3=I\x8f\x8f\xe6\x81\xc7\x07z]\x8e\x82 y\xe7\ +\xf4\x8b4\x86Y1\x00\x00\x00\xa3r\xc98nK\x1a\ +\x8d\xe4\xe1\xd6_|`\xd6\x92\x87\xads\x00aB\x11\ +\x132\xc9x\x22-\xe9\xaf\x94\xd9JlD\xa8\xa8s\ +[yA\x91j\xa7]`\x1d\x03\x00\x00 \x94\x16\x8f\ +\x9bn\x1d!t^:~\xb8sgW\xfb\xbb\xacs\ +\x00aC\x11\x13B\xc9x\xe2\x11I\x0d#}\x5cG\ +\x7f\x8f\xfba\x10(\xef\x9eq\x89\x8a\x99R\x0b\x00\x00\ +0\x221I\x17WP\xc4\x8cD\x7f:\xa5G\x8f\xec\ +\xb8eE\xd52\xa6\xdd\x03#D\x11\x13^\x7f'\xa9\ +m$\x0f\xa0\x88\xc9}\x13\x8a\xcat\xdd\xd4\xf3\xacc\ +\x00\x00\x00\x84\xca\x9c\xb2\xf1\xaa((\xb1\x8e\x11*\xeb\ +\x0em]\xf7\xbe\x99\x8b\xef\xb2\xce\x01\x84\x11ELH\ +%\xe3\x89\x03\x1a\xe1\xc2\xbd\xc7\x07\xfa\x94J\x8f\xf8\x8e\ +&\x84\xcc\xbb\xa6_\xac\x98u\x08\x00\x00\x80\x10\xa9\x1e\ +7\xc3:B\xa8\xec\xea>\xda\xb3\xf5\xf8\x91\x1b\xacs\ +\x00aE\x11\x13n\xdf\x94\xf4\xe4H\x1epl\x80Y\ +1\xb9nN\xd9x]6~\xb6u\x0c\x00\x00\x80\xd0\ +\xe0\xb6\xa4\xe1K\xa5\xd3\xfa\xfd\xe1\xd6\xbf\x5cQ\xb5\xec\ +\xa8u\x16 \xac(bB,\x19O\x0cH\xfa\x0b\x8d\ +`\x1d\xde\xb6\xde.\xef\x02!0\xde1\xedB\xeb\x08\ +\x00\x00\x00\xa1\xc1B\xbd\xc3\x97<\xb4\xb5\xf9=3.\ +\xf9/\xeb\x1c@\x98Q\xc4\x84\x9c\xb3p\xef\xb7\x87\xfb\ +\xf5\x07{;=L\x83\xa0\xa8\x998W3J\xc6Y\ +\xc7\x00\x00\x00\x08\xbci\xc5c5\xb5x\x8cu\x8cP\ +\xd8\xde\xd5\xd6\xf5\xd2\xf1\xc3o\xb6\xce\x01\x84\x1dEL\ +nX%\xe9\xd0p\xbe\xf0P\xefq\x8f\xa3 \x08\xf2\ +\x14S\xedtf\xc5\x00\x00\x00\x9c\xcd%\xe3\xa6YG\ +\x08\x85\xbe\xd4\x80\x9a\x0fo\xfb\xd0\x8a\xaae\x1d\xd6Y\ +\x80\xb0\xa3\x88\xc9\x01\xc9x\xe2\xa0\xa4\xcf\x0c\xe7k\x0f\ +\xf5Q\xc4D\xc5[\xa7\x9e\xcfV\xd6\x00\x00\x00gQ\ +]\xc1B\xbd\xc3\xb1\xf6\xd0K\xbff\x97$\xc0\x1d\x14\ +1\xb9\xe3\x9b\x92\x1e?\xdb\x17\xed\xeb>\xe6C\x14\x04\ +\xc1\xd8\x82b];\xf9\x5c\xeb\x18\x00\x00\x00\x81\xb6\xa4\ +r\xa6u\x84\xc0\xdb\xd4q\xf0\xe8\x8e\xae\xf6wX\xe7\ +\x00r\x05EL\x8eH\xc6\x13)I\x09I\x03g\xfa\ +\xba\xdd=\x141Qr\xe3\xb4\x0b\xac#\x00\x00\x00\x04\ +\xd6\xe4\xa2r\xcd*\xa9\xb0\x8e\x11h\x9d\x03\xbd\xe9G\ +\xdbv\xdc\xb0\xa2jY\xafu\x16 WP\xc4\xe4\x90\ +d<\xf1\xb8\xa4\xaf\x9c\xe9kvw\xb3\xcb\x5c\x94\x5c\ +0v\xaa\x16\x94O\xb2\x8e\x01\x00\x00\x10H\xdc\x96t\ +v\x0f\x1f\xd8\xf2\xb5\x0f\xceZ\xb2\xce:\x07\x90K(\ +br\xcfm\x92\xb6\x9d\xee7\xf7v\x1fS\xda\xc70\ +\xb0w#\x8b\xf6\x02\x00\x00\x0ci\x09E\xcc\x19=\xd1\ +\xb6\xb3\xf5\xad\xd3\xce\xffK\xeb\x1c@\xae\xa1\x88\xc91\ +\xc9x\xa2C\xd2\xff9\xdd\xef\xf7\xa4\xfa\xb5\xbf\x87\x85\ +\xce\xa3\xe4M\x93\x17\xa8,\xbf\xd0:\x06\x00\x00@\xe0\ +,\xa9`}\x98\xd39\xd0\xd3\xd1\xff\xec\xb1}q\xeb\ +\x1c@.\xa2\x88\xc9A\xc9x\xe2\xd7\x92~t\xba\xdf\ +\xdfv\xfc\x88\x8fi`\xad4\xbfPo\x9a\xb2\xd0:\ +\x06\x00\x00@\xa0L**\xd7\xacR\xd6\x87\x19J*\ +\x9dV\xd3\xa1\x97\xfe\xf2\x96\xd9\x97\xee\xb2\xce\x02\xe4\x22\ +\x8a\x98\xdc\xb5R\xd2\x90\x8dKk\x17EL\xd4\xd4N\ +\xe3\xf6$\x00\x00\x80\xc1\xb8-\xe9\xf4\x1e>\xb8\xe5\x81\ +w\xcf\xb8\xe4\x1b\xd69\x80\x5cE\x11\x93\xa3\x92\xf1\xc4\ +>I\x7f3\xd4\xef1#&z\xce)\x9f\xa8\x8b\xc6\ +M\xb3\x8e\x01\x00\x00\x10\x18\x141C{\xee\xd8\xfe\xc3\ +\xdb\xbb\xda\xae\xb7\xce\x01\xe42\x8a\x98\xdc\xf6mIk\ +O\xfd\xe4\x96\xceC\x06Q`\xed\xedle\x0d\x00\x00\ +\xf0\xb2%\x95\xac\x0fs\xaa#}]\xa9\xc7\xdbv^\ +\xbd\xa2jY\xbfu\x16 \x97Q\xc4\xe4\xb0d<\x91\ +\x96\xf4g\x92\xba\x07\x7f~\xcb\xf1\xc3J\xa5\xd9;)\ +j\xae\x99t\x8e\xc6\x16\x14[\xc7\x00\x00\x0007\xad\ +x\xacf\x95\xb0>\xcc`)\xa5\xf5\xd0\xc1-\xabn\ +\x9e\xbd\xf4)\xeb,@\xae\xa3\x88\xc9q\xc9x\xe2\x05\ +I\x9f\x1b\xfc\xb9\xee\x81>\xed\xe8n7J\x04+\xc5\ +y\x05\xban\xcay\xd61\x00\x00\x00\xcc-e6\xcc\ +\xab$\x0fnm\xbei\xfaE_\xb4\xce\x01D\x01E\ +L4|AR\xcb\xe0Ol\xea8`\x93\x04\xa6\xde\ +>\xed\x02\xc5\xacC\x00\x00\x00\x18\xbb\x94m\xabO\xf2\ +B\xc7\x81\xb6\x97\x8e\x1f\xbe\xda:\x07\x10\x15\x141\x11\ +\x90\x8c'\xfa$\xad\x90\xd4w\xe2s\xcf\x1c\xddk\x17\ +\x08f\xe6\x94\x8d\xd7%,L\x07\x00\x00\x22\xee\xd2\xca\ +Y\xd6\x11\x02\xe3p_\xd7\xc0\xa3Gv\x5c\xb1\xa2j\ +Y\xafu\x16 *(b\x22\x22\x19O\xb4H\xaa?\ +\xf1\xebg\x8e\xed\xb3\x0b\x03S7\xb2h/\x00\x00\x88\ +\xb0\xb9e\xe35\xb1\xa8\xcc:F \x0c\xa4Sz\xf0\ +\xc0\xa6\x8f\xdd<{\xe93\xd6Y\x80(\xa1\x88\x89\x96\ +\xcfIzZ\x926w\x1eRw\x8a\xc5\xd0\xa3h\xf9\ +\xa4sTQXb\x1d\x03\x00\x00\xc0\xc4RnKz\ +\xd9C\x07\xb7\xfc\xe2\xdd3.\xf9\x9au\x0e j(\ +b\x22$\x19O\xf4\xca\xb9Ei \x9d\xd2\x0b\xc7\xf6\ +[G\x82\x81\xc2X\x9e\xae\x9f\xb2\xc8:\x06\x00\x00\x80\ +\x89e\xdc\x96$Iji\xdf\xbdkgW{\xadu\ +\x0e \x8a(b\x22&\x19O\xda\xfb\xd4\xd1=\xaf[Q\xb5,\ +e\x9d\x05\x88\x22\x8a\x98h\xfa\x9c\xa4\xa7\x9ff\xc1\xde\ +\xc8\xaa*\xad\xd4bNB\x00\x00@\xc4,\x1a3E\ +c\x0b\x8a\xadc\x98\xea\x1c\xe8M\xff\xee\xe0K\xef\xb8\ +e\xf6\xa5;\xac\xb3\x00QE\x11\x13A'nQz\ +\xfa\xe8\x9e\xfe\x94\xd2\xd6q`\xe4\xed,\xda\x0b\x00\x00\ +\x22\xe6\xb2\x88\xdf\x96\x94\x96\xf4\xc0\x81M\xff\xfa\xfeY\ +\xd5\xbf\xb6\xce\x02D\x19ELD%\xe3\x89'\x8e\xf6\ +\xf7|\xf1\xc5\x8e\x83\xd6Q`\xe4\xaa\x89\xf3UQ\xc0\ +\xa2\xbd\x00\x00 :.\x1f?\xdb:\x82\xa9\xa6\x83[\ +\x9aj\xa7]\xf8\x19\xeb\x1c@\xd4Q\xc4D\xdb?m\ +<\xb6\xef\x80u\x08\xd8(\xca\xcb\xd7\x9b\xa7,\xb4\x8e\ +\x01\x00\x00\xe0\x8b\xf2\xfc\x22]0v\xaau\x0c3O\ +\x1d\xdd\xb3\xb7\xf5\xf8\x91k\xads\x00\xa0\x88\x89\xb4d\ +<\xd1s|\xa0\xef\xcf\xfa\xd2\xac\xd1\x15Uo\xe3\xf6\ +$\x00\x00\x10\x11K*g\xaa \x16\xcd\xb7?\xbb\xba\ +\x8f\xf6\xb4\xb4\xef\xbe\x9c\xc5y\x81`\x88\xe63\x11^\ +\xf6\xa1YK\xee^{p\x0b\xf7\x88F\xd4\xdc\xb2\xf1\ +\xbad\xdct\xeb\x18\x00\x00\x00\x9e\xbb<\xa2\xeb\xc3\x1c\ +\xed\xefI\xaf=\xb8\xe5\x06\x16\xe7\x05\x82\x83\x22\x06\xda\ +\xd1\xd5\xfe\x8eM\x1d\x07\xdb\xads\xc0\x06\x8b\xf6\x02\x00\ +\x80(\xb8\xac2z\xeb\xc3\xf4\xa5Sz`\xff\x8b\x7f\ +\xf3\x81YK\x1e\xb4\xce\x02\xe0\x15\x141\xd0\x8a\xaae\ +\xbd\x8f\xb6\xedx{\xd7@\x1f[(E\xd0\xf2I\xf3\ +5&\xe2\xdb8\x02\x00\x80\xdc6\xbdd\x9cf\x95V\ +X\xc7\xf0\xddo\x0fl\xfa\xe1M3.\xfe\x92u\x0e\ +\x00'\xa3\x88\x81$\xe9\x83\xb3\x96\xfc\xee\xe1\x83[\x1a\ +\xacs\xc0\x7f\xc5y\x05z\xc3\xe4s\xadc\x00\x00\x00\ +x&\x8a\xb7%5\x1f\xde\xf6\xd4uS\xce\xfb\x80u\ +\x0e\x00\xafF\x11\x83\x97]?u\xd1\x877\x1c\xdd\xb3\ +\xd7:\x07\xfc\xf7\xb6\xa9\xe7[G\x00\x00\x00\xf0\xcck\ +\xc6WYG\xf0\xd5s\xc7\xf6\x1f~\xa1\xe3\xc0e\xd6\ +9\x00\x0c\x8d\x22\x06'y\xea\xe8\x9ek\xdb\xfa\xbaX\ +M=b\x16\x8e\x99\xac\x05c&Y\xc7\x00\x00\x00p\ +]a^\xbe\x96EhF\xcc\x8e\xae\xb6\xee\xc7\xdav\ +T\xaf\xa8Z\xd6k\x9d\x05\xc0\xd0(bp\x92\x9bg\ +-\xdd\xd8t\xe8\xa5z\xeb\x1c\xf0\x1f\xb3b\x00\x00@\ +.Zx`\xf3\x9d\xd69\xe0\x8d\xb7P\xc4\ +\x00\x00\x80\x80+\xcb/\xd4\xe5\x95\xb3\xadc\x8c\xda\x1f\ +\x8fl\x7f\xe1\xc5\x8e\x83K\xads\x00\xf0\x1eE\x0c\x5c\ +s\xfd\xd4E\x1f~\xb4m\xc7&\xeb\x1cp\xdf\xbc\xb2\ +\x09Z8f\xb2u\x0c\x00\x00\x80\xd3z\xdd\xf89\xa1\ +\xdd\xed\xf1\xd1#;^\xdcxl\xffE+\xaa\x96\xa5\ +\xac\xb3\x00\xf0\x1eE\x0c\x5c\xf5\xec\xd1}5\xdb\xba\xda\ +\xba\xacs\xc0}\xd7M9\xcf:\x02\x00\x00\xc0i]\ +9i\xbeu\x84Qy\xf4\xc8\x8e\x17\x9f=\xb6\xef\xc2\ +\x15U\xcb\xb8\xcf\x1f\x88\x08\x8a\x18\xb8jE\xd5\xb2\x83\ +\xbf?\xb4\xf5\x86\xce\x81\xde\xb4u\x16\xb8\xeb\xda\xc9\xe7\ +\xaa \xe4\x8b\xdf\x01\x00\x80\xdcT\x94\x97\xaf\xd7\x8d\xaf\ +\xb2\x8e1bN\x09s>%\x0c\x10-\xbc\xab\x82\xeb\ +>0k\xc9\xc3\x0f\xec\xdf\xf4y\x9a\x98\xdc2\xbe\xb0\ +T\xaf\x0d\xe1\x09\x0e\x00\x00\xc8}\x97\x8f\xafRi~\ +\xa1u\x8c\x11\x19T\xc2p;\x12\x101\x141\xf0D\ +\xed\xf4\x0b?\x9d<\xb4\xf5\x11\xeb\x1cp\xd7[\xb8=\ +\x09\x00\x00\x04\xd05\x93\xce\xb1\x8e0\x22\x940@\xb4\ +Q\xc4\xc03[:\x0f]\xf5B\xc7\x816\xeb\x1cp\ +O\xcd\x849\x1aWPl\x1d\x03\x00\x00\xe0e\xc5y\ +\x05z\xfd\x84\xb9\xd61\x86\xed\x91#\xdb\x9f\xa3\x84\x01\ +\xa2\x8d\x22\x06\x9eYQ\xb5\xac\xf7\xd1#;\xae8\xdc\ +\xd75`\x9d\x05\xee(\xcc\xcb\xd75\x93\xce\xb5\x8e\x01\ +\x00\x00\xf0\xb2\xd7N\xa8RYHnK\xfa\xfd\xe1\xd6\ +\x0d\xcf\xb1;\x12\x10y\x141\xf0\xd4\xcd\xb3\x97>\xf3\ +\xe0\x81M\x1f\xebK\xf3Z\x93+\xde2\x95\xdb\x93\x00\ +\x00@p\x5c\x1b\x92\x8bDk\x0f\xbd\xf4\xc8\xeb'\xcc\ +\xad\xa6\x84\x01@\x11\x03\xcf\xbd{\xc6%_{\xf8\xc0\ +\xe6\x9fY\xe7\x80;.\x1c;U\xb3K+\xadc\x00\ +\x00\x00\xa8$\xbfP\xaf\x9b0\xc7:\xc6Y=tp\ +\xcbCWM\x9c\xff:\xeb\x1c\x00\x82\x81\x22\x06\xbex\ +\xd3\x94\x85\xef~\xb4m\xc7f\xeb\x1cp\xc7[\xa6,\ +\xb4\x8e\x00\x00\x00\xa0\xd7O\x98\xa3\x92\xbc\x02\xeb\x18\xa7\ +\x95\x96\xf4\xdb\x03\x9b~u\xcd\xa4s\xae\xb5\xce\x02 \ +8(b\xe0\x9bg\x8f\xee{\xcd\xd6\xe3\x87;\xads\ + {o\x9c\xbc@1\xeb\x10\x00\x00 \xf2\x82|[\ +RZ\xd2o\xf6\xbf\xf0\xe37L^\xf0V\xeb,\x00\ +\x82\x85\x22\x06\xbeYQ\xb5\xec\xf0\xba\xc3\xad\xd7\xb6\xf7\ +u\xa7\xad\xb3 ;\xd3K\xc6\xe9\xe2q\xd3\xadc\x00\ +\x00\x80\x08+/(\xd2k\xc7WY\xc7\x18R\x7f:\ +\xa5_\xed}\xee\x8e\xb7L9\xef}\xd6Y\x00\x04\x0f\ +E\x0c|u\xf3\xac\xa5\x7f\xbco\xff\x0b\x9f\x1a`\xf1\ +\xde\xd0{\xe3\xe4\x05\xd6\x11\x00\x00@\x84]=\xe9\x1c\ +\x15\xe6\xe5[\xc7x\x95\x9eT\xbf~\xb9\xf7\xb9\x7fz\ +\xeb\xb4\xf3\xff\x8fu\x16\x00\xc1D\x11\x03\xdf\xbdw\xe6\ +\xe2\xff\xf8\xfe\xce\xf5/X\xe7@v\xae\x9et\x8e\x0a\ +b<\x85\x00\x00\x00\x1bo\x9e\x1c\xbc5\xeb:\x07z\ +\xd3\xbf\xd8\xfb\xdc\xc7j\xa7_x\x9bu\x16\x00\xc1\xc5\ +\xbb(\x98\xf8\xd6\xb6G\xdf\xfc\x9b\xfd/Z\xc7@\x16\ +*\x0aK\xf4\x9a\x80N\x07\x06\x00\x00\xb9mZ\xf1X\ +-\xae\x98a\x1d\xe3$m}]\xa9_\xec}\xee\x83\ +\xef\x9aq\xf1W\xad\xb3\x00\x086\x8a\x18\x98H\xc6\x13\ +\xdb\xbe\xbc%\xf9\xc0\x8b\x1d\x07\xac\xa3 \x0bo\x9c\xc2\ +\xedI\x00\x00\xc0\x7fo\x9a\xb20P\x1b\x07\x1c\xe8\xed\ +\xec\xbfw\xdf\x0b\xd7\xbdo\xe6\xe2\x1fZg\x01\x10|\ +\x1410\xd39\xd0\xfb\xd5\xbf\x7f\xee>\x1d\xea=n\ +\x1d\x05\xa3\xf4\xfa\x09sU\x96_h\x1d\x03\x00\x00D\ +\xcc\x9b\xa6\x04\xe7\xb6\xa4\xed]m\xdd\xbf\xd9\xff\xe2\xe5\ +\xef\x9fU}\xbfu\x16\x00\xe1@\x11\x03K\xf7\x1e\xe8\ +\xe9\xd8\xf9\xe9\xe7\xeeSO\xaa\xdf:\x0bF\xa1$\xaf\ +@WL\x9cg\x1d\x03\x00\x00D\xc8\xf9c\xa6hN\ +i\xa5u\x0cI\xd2\x0b\x1d\x07\x8e4\x1d\xdc\xb2\xf0C\ +\xb3\x96\xac\xb7\xce\x02 <(b`&\x19O\xf4K\ +\xfa\xef\x8d\xc7\xf6\xe9\x8b\x9b\x9a\xc4\x9e\xd6\xe1\xf4\xa6\x00\ +.\x94\x07\x00\x00r\xd7\x9b\x032\x1b\xe6\xc9\xf6]\xdb\ +\x9b\x0fo\x9b{\xcb\xecKwXg\x01\x10.\x141\ +\xb0\xf6_\x92\xfa\xef?\xb0I\xff\xb3\xf3I\xeb,\x18\ +\x85e\x95\xb34\xa1\xa8\xcc:\x06\x00\x00\x88\x80\xc2X\ +\x9e\xae\x9d|\xaeu\x0c\xad;\xdc\xba~C\xfb\x9es\ +VT-;j\x9d\x05@\xf8P\xc4\xc0T2\x9e\xd8\ +)\xe9^I\xfaV\xeb\x1f\xb5\xee\xd0V\xe3D\x18\xa9\ +\xbcXL\xd7N\xb2?!\x02\x00\x00\xb9\xef\xf5\x13\xe7\ +\xa9\xb2\xb0\xd4l\xfc\xb4\xa4\x07\x0el\xfaE|\xc2\xdc\ +\xa5+\xaa\x96qo=\x80Q\xa1\x88A\x10|C\xca\ +\xbc\xb0\xdd\xfe\xc2o\xf5R\xe7!\xe38\x18\xa97N\ +f\xf7$\x00\x00\xe0\xbd\xb7N]d6voj@\ +\xbf\xdc\xbb\xf1+o\x9c\xbc\xe0\xedf!\x00\xe4\x04\x8a\ +\x18\x04\xc1\xbd\x92\xb6IRw\xaa_\x7f\xb3\xf1\xd7j\ +\xeb\xeb2\x8e\x84\x918\x7f\xec\x14\xcd\x0e\xc8\xa2y\x00\ +\x00 7M)\x1e\xa3\xcb\xc6\xcf6\x19\xfbh\x7fO\ +\xea\xe7{7&\xde6\xed\x82\x95&\x01\x00\xe4\x14\x8a\ +\x18\x98K\xc6\x13)e\xd6\x8a\x91$\xed\xef\xe9\xd0\xdf\ +m\xbcW\xdd\xec\xa4\x14*o\x08\xc0\xfd\xda\x00\x00 \ +w]?u\x91\xf2\x14\xf3}\xdc=\xddG\xfb~\xb9\ +w\xe3\x9b\xde5\xe3\xe2\xaf\xfb>8\x80\x9cD\x11\x83\ +\xa0\xf8\xb6\xa4\x97\x9b\x97\x8d\xc7\xf6\xe9\xf6\xe7\x1fP*\ +\xcd^Ja\xc1:1\x00\x00\xc0+y\x8a\xe9\x86)\ +\xfe\xdf\x96\xb4\xa9\xe3`\xfb\xfd\x076\x9d\xff\x81YK\ +\x1e\xf4}p\x009\x8b\x22\x06\x81\x90\x8c'vK\xfa\ +\xf9\xe0\xcf\xad;\xdc\xaa\xafo{\xc4(\x11FjN\ +\xd9x\x9dS>\xd1:\x06\x00\x00\xc8A\x97V\xce\xd4\ +\xb4\x92\xb1\xbe\x8e\xf9D\xdb\xce\xd6u\x87[\xabn\x9d\ +}\xe9\x16_\x07\x06\x90\xf3(b\x10$\xdf:\xf5\x13\ +?\xdc\xd9\xa2\xc6=\xcfZd\xc1(0+\x06\x00\x00\ +x\xe1\xad\xd3.\xf0m\xac\xb4\xa4\x87\x0fn\xf9\xddS\ +G\xf7\xb2=5\x00OP\xc4 H\xee\x97\xb4\xfd\xd4\ +O~\xf9\xa5\xa4\xd6\x1dn\xf5?\x0dF\xec\x1a\xd6\x89\ +\x01\x00\x00.\x9bXT\xa6+&\xce\xf3e\xac\x9eT\ +\xbf~\xb9w\xe3W\xae\x9et\xceU+\xaa\x96\xa5|\ +\x19\x14@\xe4P\xc4 0\x9cE{\x1bN\xfd|*\ +\x9d\xd6\xed\xcf?\xa0\x8d\xc7\xf6\xf9\x1f\x0a#2\xb3d\ +\x9c\x16\x8d\x99l\x1d\x03\x00\x00\xe4\x90\xb7M=_\x85\ +1\xef\xdf\xb6\x1c\xee=>p\xcf\xde\x8d\xb7\xb03\x12\ +\x00\xafQ\xc4 h\xee\x94\xf4\xaa\xab\x0f\xdd\xa9~\xfd\ +\xdd\xc6{\xb5\xa7\x9b\xd9\xa1Aw\xed\xe4\x05\xd6\x11\x00\ +\x00@\x8e\xc8\x8f\xe5\xe9\xed\xd3/\xf4|\x9c\x97\x8e\x1f\ +\xee\xfc\xf5\xfe\x17.{\xcf\x8cK\xbe\xe7\xf9`\x00\x22\ +\x8f\x22\x06\x81\x92\x8c'Z%=4\xd4\xef\xb5\xf5u\ +\xe9o\x9e\xfd\x95\xda\xfa\xba\xfc\x0d\x85\x11\xb9z\xd29\ +\x06\x1bK\x02\x00\x80\x5ct\xc5\xc4y\x9a\x5cT\xee\xe9\ +\x18O\xb6\xed\xda\xbe\xf6\xe0KU\x1f\x9a\xb5d\xbd\xa7\ +\x03\x01\x80\x83\x22\x06A\xf4\xed\xd3\xfd\xc6\xb6\xae6\xfd\ +\xdd\xc6{\xd5=\xd0\xe7g\x1e\x8c\xc0\xd4\xe21\xbah\ +\xdc4\xeb\x18\x00\x00 \x07\xbcs\xfaE\x9e\x1d;\xa5\ +\xb4\x1e<\xb8\xf9\xc1\x0dG\xf7\xcc[Q\xb5\xec\xb0g\ +\x03\x01\xc0)(b\x10DwK:\xed\x8b\xe1\xc6c\ +\xfb\xf4w\xcf\xdd\xab\xbe4\xeb\xa7\x05\xd55\xec\x9e\x04\ +\x00\x00\xb24\xb7l\xbc\xaa+fxr\xec\xce\x81\xde\ +\xf4\xcf\xf7l\xfc\x97k'\x9d\xfb\x06\x16\xe5\x05\xe07\ +\x8a\x18\x04N2\x9e\xe8\x96\xf4\x833}\xcd\x93m\xbb\ +\xf4\xb9\x17\x1fT*\x9d\xf6)\x15F\xe2\x9aI\xe7(\ +\x8f\x1b\x94\x00\x00@\x16\xde9\xfd\x22O\xce&vu\ +\x1f\xed\xf9\xf9\x9e\x8d\xd7\xd7N\xbf\xf0\x1f=8<\x00\ +\x9c\x15E\x0c\x82\xea\xb4\xb7'\x9d\xf0\xe0\x81\xcd\xfa\xf2\ +KI?\xb2`\x84&\x14\x95yv\x05\x0b\x00\x00\xe4\ +\xbe\x8a\xc2\x12\xbde\xcay\xae\x1f\xf7\xa9\xa3{\xf6>\ +x`\xd39\xef\x9fU}\x9f\xeb\x07\x07\x80a\xa2\x88\ +A %\xe3\x89\xf5\x926\x9c\xed\xeb\x1a\xf7<\xab\xff\ +\xde\xfe\x98\x0f\x890R\xd7L\xe6\xf6$\x00\x000:\ +\xb5\xd3.Ti~\xa1k\xc7KKz\xf8\xe0\x96\xa6\ +'\xdav\xcd\xbce\xf6\xa5\xbb\x5c;0\x00\x8c\x02E\ +\x0c\x82\xec;\xc3\xf9\xa2\x86\xed\x8f\xeb\xae=\xcfx\x9d\ +\x05#\xb4|\xe2|\xe5\xc7x\x8a\x01\x00\x00#S\x98\ +\x97\xafw\xb8\xb8H\xef\xf1\x81\xbe\xf4={\x9e\xfd\x97\ +\xab'\x9ds5\xeb\xc1\x00\x08\x02\xde%!\xc8\xbe/\ +iX\xdb#\xad\xd9\x92\xd4\xaf\xf6=\xefq\x1c\x8cD\ +Ea\x89\x96p{\x12\x00\x00\x18\xa1\xb7L9O\x13\ +\x8b\xca\x5c9\xd6\xf6\xae\xb6\xee\xc6=\xcf\xbc\x99\xf5`\ +\x00\x04\x09E\x0c\x02+\x19O\xec\x97t\xefp\xbe6\ +-\xe9\x8b\x9b\x9bt\xff\xfe\x17\xbd\x0d\x85\x11\xb9j\xd2\ +|\xeb\x08\x00\x00 Db\x92\xde3\xe3\x12W\x8e\xf5\ +x\xdb\xce-\x0f\x1e\xd8<\xfb\x03\xb3\x96<\xe0\xca\x01\ +\x01\xc0%\x141\x08\xba\x86\xe1~a*\x9d\xd6\xe76\ +=\xa4\x87\x0en\xf10\x0eF\xe2\xca\x09\xf3\xd8=\x09\ +\x00\x00\x0c[\xcd\x84\xb9\x9a[6>\xabc\xf4\xa5\x06\ +t\xef\xfe\x17\xfegY\xe5\xacsWT-;\xe8R\ +4\x00p\x0dE\x0c\x82\xeeW\x92\x86\xfd\x02\x9aJ\xa7\ +\xf5\xcf/\xfcV\xbf;\xb4\xd5\xc3H\x18\xae\x09Ee\ +\xba\xb8b\xbau\x0c\x00\x00\x10\x12\xef\x9f\xb98\xab\xc7\ +\x1f\xe8\xe9\xe8\xbf{\xef\xb3\xb7\x5c7\xe5\xbc\x9b]\x8a\ +\x04\x00\xae\xa3\x88A\xa0%\xe3\x89^I?\x1c\xc9c\ +\xfa\xd3)\xad~\xfe~\xfd\xe1\xc8v\x8fRa$\xae\ +\x9a8\xcf:\x02\x00\x00\x08\x81\xea\x8a\x19Z\x9c\xc5\xfa\ +r\xcf\x1c\xdd\xbb\xff\xd7\xfb_\xb8\xe0=3.\xf9\x9e\ +\x8b\xb1\x00\xc0u\x141\x08\x83\x86\x91>\xa0/\x9d\xd2\ +g\x9e\xbbO\x8f\xb5\xed\xf4 \x0eF\xe2\xaa\x89\xf3\xb9\ +9\x09\x00\x00\x9c\xd5\x8a\xaae\xa3z\xdc@:\xa5\x07\ +\x0fl\xbe\xf7\xb1\xb6\x9d3o\x9d}\xe9&\x97c\x01\ +\x80\xeb(b\x10x\xc9x\xe2II#\xde\x9f\xba7\ +5\xa0U\x1b\xef\xd5\x1f\x99\x19cjJ\xf1\x18-\x1a\ +;\xc5:\x06\x00\x00\x08\xb0\xc5\xe3\xa6ki\xc5\xcc\x11\ +?\xee`og\xff]{\x9e\xf9\x8bk'\x9f{\xfd\ +\x8a\xaae\xfd\x1eD\x03\x00\xd7Q\xc4 ,F5\xc5\ +\xb4'\xd5\xafU\x1b\xefU\x925cL]=\xf1\x1c\ +\xeb\x08\x00\x00 \xc0F3\x1b\xe6\x99\xa3{\xf7\xfdj\ +\xdf\xf3\x17\xbc{\xc6%_\xf3 \x12\x00x\x86\x22\x06\ +a\xf1CI\xa9\xd1<\xb0/\x9d\xd2g\x9f\xbf_\x0f\ +\x1e\xd8\xecr$\x0c\xd7\x95lc\x0d\x00\x00N\xe3\x92\ +q\xd3ui\xe5\xaca\x7f}\x7f:\xa5\xfb\x0fl\xba\ +\xe7\xb1\xb6\x9d3\xb8\x15\x09@\x18Q\xc4 \x14\x92\xf1\ +\xc4\x0eIM\xa3}|\x7f:\xa5\x7fz\xf1\xb7\xbao\ +\xff\x0b\xee\x85\xc2\xb0\xcd,\x19\xa7\x05\xe5\x93\xacc\x00\ +\x00\x80\x00\x1a\xc9l\x98\xfd=\x1d\xfdw\xedy\xe6#\ +o\x9a\xbc\xa0vE\xd5\xb2Q]\xa4\x03\x00k\x141\ +\x08\x93\xff\xc9\xe6\xc1\xa9tZ\xff\xfa\xe2C\xbag\xef\ +F\xb7\xf2`\x04\xaebV\x0c\x00\x008\xc5\xb2\xcaY\ +Z6\xcc\xd90O\xb6\xef\xda~\xdf\xfe\x17\xce}\xcf\ +\x8cK\xbe\xedq,\x00\xf0\x14E\x0c\xc2\xe4\x7f%u\ +es\x80\xb4\xa4/m^\xab\x9f\xec\xda\xe0N\x22\x0c\ +\xdbU\x13)b\x00\x00\xc0+\xf2\x14Sb\xeek\xcf\ +\xfau\xdd\x03}\xe9_\xef{\xfe\xdbK+f\xce\xb9\ +e\xf6\xa5\xdb|\x88\x06\x00\x9e\xa2\x88Ah$\xe3\x89\ +\xa3\x92~\x9e\xedq\xd2\x92\xbe\xba\xb5Y\xdfh}D\ +\xe9\xecca\x98\xe6\x96\x8d\xd7\x9c\xb2\xf1\xd61\x00\x00\ +@@\xbca\xca\x02-\x1c3\xf9\x8c_\xf3\xd2\xf1\xc3\ +\x9dw\xedy\xe6\x8d\xd7O]\xf4\x11\x9fb\x01\x80\xe7\ +(b\x106Y\xdd\x9et\xd2\x81v\xaeW\xfd\xa6\x87\ +5\x90\xe6\xf6b\xbf,gV\x0c\x00\x00\x90T\x94\x97\ +\xaf?\x99s\xf9i\x7f?\xa5\xb4\xd6\x1ez\xe9\x91\xb5\ +\x07_\x9a\xf2\x81YK\x1e\xf41\x1a\x00x\x8e\x22\x06\ +a\xf3\x1bI\x07\xdc:\xd8\xbd\xfb\x9e\xd7\xdfo\xbcW\ +\xdd\x03}n\x1d\x12gp\xe5\xc4y\xd6\x11\x00\x00@\ +\x00\xdc4\xfdbM+\x1e;\xe4\xef\x1d\xea=>p\ +\xf7\x9eg?y\xd5\xc4\xf9\xaf[Q\xb5\xec\xb8\xcf\xd1\ +\x00\xc0s\x141\x08\x95d<\xd1'\xe9\xc7n\x1e\xf3\ +\x91#\xdb\xf5\xf1g~\xa1\xf6\xben7\x0f\x8b!,\ +\x183YS\x8b\xc7X\xc7\x00\x00\x00\x86*\x0aKt\ +\xf3\xec\xa5C\xfe\xde\xfa\xf6\xdd;\x7f\xb9\xef\xb9\xf3o\ +\x9a~\xd1\x97}\x8e\x05\x00\xbe\xa1\x88A\x18\xb9v{\ +\xd2\x09\x1b\x8f\xedS\xe2\xa9\xbb\xb5\xb7\xfb\x98\xdb\x87\xc6\ + 1Iqf\xc5\x00\x00\x10i\x89\xb9\xaf\xd3\xd8\x82\ +\xe2\x93>\xd7\xd1\xdf\x93\xfe\xe5\xde\xe7\xeeXR1c\ +\xf6\xad\xb3/\xddd\x14\x0d\x00|A\x11\x830zT\ +\xd2Kn\x1ftGW\x9b\xfe\xec\xa9\xbb\xf4\xdc\xb1\xfd\ +n\x1f\x1a\x83\xc4'\xcc\xb5\x8e\x00\x00\x00\x8c\x5c\xfb\ +\xba\xb7N;\xff\xff\x18\xc5\x02\x00_Q\xc4 t\x92\ +\xf1DZ\xd2\x8f\xbc8\xf6\xe1\xde\xe3\xfa\xab\xa7\xefQ\ +\xd3\xc1-^\x1c\x1e\x92\xaa+fh\xcc)W\xc1\x00\ +\x00@\xee\xcb\x8f\xe5\xe9\xaf\xcf\xb9R1\xe7\xd7=\xa9\ +~\xdd\xbf\xff\xc5\x9f=rd\xfb\x94\x9bg-\xfd\xa3\ +i8\x00\xf0\x11E\x0c\xc2\xca\x93\x22F\xca\x9c\x14|\ +\xf6\xf9\xfb\xf5\x83\x9d\xeb\xbd\x1a\x22\xd2\x0aby\xaa\x19\ +_e\x1d\x03\x00\x00\xf8\xec=3.\xd19\xe5\x13%\ +9\xdbR\xef~\xe6\x867MY\xf8\xee\x15U\xcb\xd8\ +\xc2\x12@\xa4P\xc4 \x94\x92\xf1\xc4\xd3\x92\x9e\xf6\xea\ +\xf8iIw\xb4>\xa2\x7f~\xf1A\xf5\xa6\x06\xbc\x1a\ +&\xb2X'\x06\x00\x80h\x99\x5c\xfb\xfc\xfd\xfa\xe2\xe6\xb5\xea\ +Nq\xb1g4^\xcf6\xd6\x00\x00\xe4\xb2\x1e\xeb\x00\ +\x00\x10D\x141\xc8\x05wK\xea\xb3\x1a\xfc\x17{7\ +\xea#\xeb\x7f\xaa\x17:\x0eXE\x08\xad\x0b\xc6N\xd1\ +\xf8\xc2R\xeb\x18\x00\x00\xc0\x1b\xdd\xd6\x01\x00 \x88(\ +b\x10z\xc9x\xe2\xa0\xa4\x87,3l\xefj\xd3\x9f\ +o\xb8K?\xd8\xb9^)\xefw\xd4\xce\x19y\x8ai\ +Y\xe5,\xeb\x18\x00\x00\xc0\x1b\x1d\xd6\x01\x00 \x88(\ +b\x90+~b\x1d\xa0?\x9d\xd2\x1d\xad\x8f\xe8\x13\xcf\ +\xfcB\x07z8\xef\x18\xae\xd7\xb2\x8d5\x00\x00\xb9\xaa\ +\xd7:\x00\x00\x04\x11E\x0cr\xc5\xdd\x0a\xc8\x8b\xfd\x93\ +m\xbbT\xb7\xfe',\xe4;L\x97U\xceR\x9eb\ +\xd61\x00\x00\x80\xfb\xb82\x05\x00C\xa0\x88ANH\ +\xc6\x13G$\xfd\xd6:\xc7\x09G\xfb{\xf4\xd9\xe7\xef\ +\xd7g\x9f\xbf_G\xfa\xba\xac\xe3\x04\xda\xf8\xc2R-\ +\x1c3\xc9:\x06\x00\x00p\x1fk\xc4\x00\xc0\x10(b\ +\x90K~f\x1d\xe0T\x0f\x1f\xdc\xa2\x9b\x9f\xf8\x91\x1e\ +8\xb0\xc9:J\xa0\xbd\x96m\xac\x01\x00\xc8E\xc7\xad\ +\x03\x00@\x10\x15X\x07\x00\x5c\xd4(\xe9\x1b\x92\x0a\x8d\ +s\x9c\xa4\xbd\xbf[\xff\xf4\xc2o\xf5\xe0\x81\xcd\xfa\xeb\ +s\xaf\xd4\xe4\xa2r\xebH\x81s\xd9\xf8\xd9j\xd8\xf1\ +\x84u\x0c \xb2J\xf2\x0bU\x18\xcbSq^\x81\x8a\ +\xf2\xf2_\xfe|A,O\xa5\xf9g\x7fJ\xed\xe8\xef\ +9\xed2\xe5\xa9tZ\x9d\x03\xaf\xdc9\xda\x9b\x1aP\ +O\xaa?\xdb\xc8\x00\xc2\xe1\x88u\x00\x00\x08\x22\x8a\x18\ +\xe4\x8cd\xc3\xef\x0e\x88\xbc\xc3\xd6\x01\x00 \x88(\ +b\x90k~\xa6\x80\x161R\xe6\xcd\xc5\xe77=\xac\ +\xfb\xf7\xbf\xa8O\x9cs\x85\xe6\x96\x8d\xb7\x8e\x14\x08y\ +\xb1\xcc6\xd6,p\x0c\xbcZI~\xa1\xa6\x17\x8f\xd5\ +\xb4\xe21\x9aZ2V\xd3\x8a\xc7jj\xf1\x18M.\ +\x1e\xa3\x09\x85\xa5\x9a\x5cT\xae\x92a\xccZ\x09\xaa\xf2\ +\xfc\xa2\x97\xff\x7flA\xb1\xeb\xc7\xefO\xa7\xd4\xd1\xdf\ +\xa3c\xfd=\xea\xe8\xef\xd5\xb1\xfe\x1e\x1d\x1b\xc8\xfc\xff\ +\xd1\xben\xb5\xf5u\xa9\xad?\xf3\xdf#\xbd]/\xff\ +\xba/5\xe0z\x16 \x82(b\x00`\x08\x141\xc8\ +5\xf7H\xfa\xba\x02\xfew\xfb\xc9\xf6]\xfa\xf0\xfa\x9f\ +\xe8\xdd3\x17\xabn\xf6\xa5\xc3\x9a\xfa\x9f\xeb.\x1f?\ +\x9b\x22\x06\x91\x95\x17\x8bifI\x85\xe6\x97M\xd0\xac\ +\xd2\x8a\xccGI\x85f\x97VjbQ\x99u\xbcP\ ++\x88\xe5\xa9\xb2\xb0T\x95\x85\xa5#z\x5c\xe7@\xaf\ +\x0e\xf7\x1e\xd7\x91\xbe.\x1d\xe8\xed\xd4\xa1\xde\xe3:\xd0\ +\xd3\xa1\x83\xce\x7f\x0f\xf5\x1e\xd7\x81\xdeNn\xb3\x02\xce\ +\xec\xa0u\x00\x00\x08\xa2@\xbfY\x05F*\x19O\x1c\ +\xbcb\xdd\x1dM\x92\xde`\x9d\xe5l\xfa\xd2)\xfd`\ +\xe7z\xfd\xf6\xc0&\xfd\xd5\xbc\x1a-\x9ft\x8eu$\ +S,\xd8\x8b\xa8\x18SP\xacEc&k\xd1\x98\xc9\ +\x9a_>Qs\xcb\xc6kn\xe9x\x15\x0eZ\x9b\x05\ +\xf6\xca\xf3\x8bT^Z\xa4\xd9\xa5\x95g\xfc\xba\xf6\xfe\ +n\xed\xef\xee\xd0\xde\x9ec\x99\x8f\xeec\xda\xdd}\xf4\ +\xe5\x8fn\x8a\x1aD\xdb~\xeb\x00\x00\x10D\x141\xc8\ +Ew+\x04E\xcc\x09\xfb{:\xf4\x8f\xcf\xdf\xaf\xcb\ ++g\xeb\x13\xe7\x5c\xa1Y\xa5\x15\xd6\x91LL**\ +\xd7\xfc\xf2\x89z\xa9\xf3\x90u\x14\xc05%y\x05Z\ +0f\x92\x16\x8d\x99\xa2Ec\xa7h\xd1\x98\xc9\x9a]\ +Z\xc9\x1aQ9\xa4\xa2\xa0D\x15cJ\xb4`\xcc\xa4\ +!\x7f\xff@o\xa7v\x1co\xd3\xf6\xee6m?\xde\ +\xa6m]G\xb4\xbd\xabM\xfb\xbb;\x94:\xed\x12\xc7\ +@\xce\xd8m\x1d\x00\x00\x82\x88\x22\x06\xb9\xa8Q\xd2W\ +\x15\xb2\xed\xd9\x1fm\xdb\xa1[\x9e\xfc\x91n\x9aq\xb1\ +n\x9d}\xa9\xc6x\xb0VB\xd0\xbdv|\x15E\x0c\ +Bmj\xf1\x18-\xa9\x98\xa9K\xc6M\xd3\xa2\xb1S\ +4\xbfl\x82\xf2\x8d\x17\xc3\x85\xad\xc9E\xe5\x9a\x5cT\ +\xae\xa5\x9ay\xd2\xe7{R\xfd\xda\xde\xd5\xa6\xad\x9d\x87\ +\xb5\xf9\xf8!m\xee8\xa8M\x9d\x87\xd4\xd6\xd7e\x94\ +\x14\xf0\xc4^\xeb\x00\x00\x10D\x141\xc89\xc9xb\ +\xf7\x15\xeb\xee\xf8\xa3\xa4\xd7Yg\x19\xa9\xbetJ?\ +\xda\xb5A\x0f\x1c\xd8\xa4?\x99\xf3\x1a]7\xf5<\xe5\ +E\xe8\xda\xf9k\xc6\xcf\xd6\x0fv\xae\xb7\x8e\x01\x0c\xdb\ +\x84\xa22]V9K\x97V\xcc\xd4\x92\x8a\x99\x9aV\ +2\xd6:\x12B\xa28\xaf@\x0b\xca'iA\xf9$\ +\xbdi\xd0\xe7\x0f\xf7\x1e\xd7\xa6\xce\x83\xda\xdcyH\xcf\ +u\xec\xd7\xc6\xa3\xfbt\xa0\xb7\xd3,'\x90\xa5=\xd6\ +\x01\x00 \x88(b\x90\xab\xeeV\x08\x8b\x98\x13\x0e\xf5\ +\x1e\xd7\xe77=\xac\x9f\xee~J\x89\xb9\xaf\xd5k\x22\ +\xb2~\xca\xc5\xe3\xa6\xab4\xbf\x90\xedf\x11X\x05\xb1\ +<]R1]\xaf\xad\xac\xd2e\xe3g\xeb\x9c\xf2\x89\ +\x11\xaaJ\xe1\x87\x09EezMQ\xd5I\xcf\xfb\x07\ +z;\xb5\xf1\xe8>=sl\xaf\x9e;\xb6_\xcfw\ +\x1c`\x91`\x84\xc1\xded<\xd1c\x1d\x02\x00\x82\x88\ +\x22\x06\xb9\xeanI_\xb4\x0e\x91\xad-\x9d\x87\xf4\xa9\ +g\x7f\xa5\xa5\x953\xf5\x97skN\xbb\x06A\xae(\ +\x8c\xe5iI\xc5\x0c5\x1f\xdef\x1d\x05x\xd9\xd8\x82\ +b\xbdv|\x95^?q\xae^[Y\xa5\xf2\x82\xa2\ +\xb3?\x08p\xd1\xe4\xa2r]5i\xbe\xae\x9a4_\ +RfK\xee\xe7\x8e\xedW\xcb\xd1\xddji\xdb\xad\xa7\ +\x8e\xeeaQ`\x04\xd1K\xd6\x01\x00 \xa8(b\x90\ +\x93\x92\xf1\xc4\xe6+\xd6\xdd\xf1\xb4\xa4\x8b\xad\xb3\xb8\xe1\ +\xc9\xb6]\xfaH\xcbOu\xcd\xa4s\xf5\xe19\x97\xa9\ +\xea,\xbbx\x84\xd9\xd2\x8a\x99\x14107\xae\xa0X\ +WL\x9c\xa7\xab'\x9d\xa3K+g\xa9\x80u^\x10\ + \x05\xb1<]k\x1d\xc2m\x03\xe9\x94\xee\xdb\xff\x82~{\ +`\x93\xae\x9f\xbaH\xb7\xce\xbeTS\x8a\xc7X\xc7r\ +\xcd9c&j\x5cA\xb1\x8e\xf6s[9\xfcq\xde\ +\x98\xc9\xban\xea\x22\xbdq\xf2\x02\x8d\x8b\xe0ne\xc8\ +=S\x8b\xc7\xa8v\xfa\x85\xaa\x9d~\xa1\xba\x07\xfa\xf4\ +\xc7#;\xf4\xdb\x83\x9b\xf5\x87\xc3\xdbX[\x06~\xda\ +b\x1d\x00\x00\x82\x8a\x22\x069+\x19O\xb4\x5c\xb1\xee\ +\x8e\x97$\xcd\xb7\xce\xe2\x85\xfetJ?\xdf\xbbQ\xf7\ +\xee\x7fA7N\xbb@7\xcfZ\xaa\x09Ee\xd6\xb1\ +\xb2\x96\xa7\x98\xaa+f\xe8w\x87\xb8\x90\x06\xef\x8c/\ +,\xd5\x1b\xa7,\xd4\x0dS\xce\xd3\xfc\xf2\x89\xd6q\x00\ +\xcf\x94\xe4\x17\xbe\xbc\xbe\xcc\xf1\x81>%\x0fm\xd5o\ +\x0fl\xd2\xe3m;\xd5\x9fNY\xc7Cnc\x8d\x18\ +\x008\x0d\x8a\x18\xe4\xbaFI\x9f\xb4\x0e\xe1\xa5\xbe\xd4\ +\x80~\xb6\xfbi\xfdr\xefs\xbaa\xda\xf9z\xff\xcc\ +jM\x0d\xf9\x0c\x99\xa5\x153)b\xe0\x89\x0b\xc6N\ +\xd5\xfbf.\xd6\x15\x13\xe7q\xeb\x11\x22\xa7,\xbfP\ +o\x9e\xb2Po\x9e\xb2PG\xfa\xbat\xdf\xfe\x17\xf4\ +\xf3\xbd\x1b\xb5\xb3\xab\xdd:\x1ar\x13/\xe4\x00p\x1a\ +\x141\xc8uw)\xc7\x8b\x98\x13\xbaS\xfd\xfa\xdf\xdd\ +O\xeb\xe7{\x9e\xd5\x1b\xa7,\xd4\x87f-\xd1\xec\x90\ +.\xea\xbb\xa4b\x86u\x04\xe4\x90\xbcXLWN\x9c\ +\xaf\xf7\xce\xb8D\x17\x8d\x9bf\x1d\x07\x08\x84\xf1\x85\xa5\ +z\xff\xccj\xbdof\xb5\x9el\xdb\xa9\xc6\xbd\x1b\xb5\ +\xee\xd0Vf\xc9\xc0-\xbd\x92vY\x87\x00\x80\xa0\xa2\ +\x88A\xae\xfb\x83\xa4}\x92\xa6Z\x07\xf1K_:\xa5\ +_\xef{^\xf7\xed{A\xcb'\xcd\xd7\x87f/\xd5\ +\x82\xf2pm{=\xaf|\xa2\xc6\x17\x96\xeaH_\x97\ +u\x14\x84XY~\xa1\xde:\xf5|\xdd4\xe3\xe2\x9c\ +\x5c\xd8\x1apCL\xd2\xa5\x95\xb3ti\xe5,\x1d\xee\ +=\xae\x9f\xec~J\x8d{\x9eU\xe7@\xafu4\x84\ +\xdb\xa6d4k\x89\xde3\xe3\x12\xfdb\xef\ +F\xdd\xb9\xe3q\xb5\xf7u[\xc7B\xb8\ +\xed\x02\x95\xe7\x17Y\xc7\x1a\xd2\x92\xca\x99\xd6\x11\x10\x12\ +e\xf9\x85z\xff\xccj\xbdw\xe6b\x0a\x18\xc0EE\ +y\xf9\xbai\xc6\xc5z\xcb\x94\xf3\xf4\x83]-\xfa\xf1\ +\xae\x0dl\x7f\x8d\xe1\xa2\x88\x01\x803\x08\xf6%q\xc0\ +\x05\xc9x\xe2\xb8\xa4\x87\xacs\x04\xc9\xde\x9ec\xfa\xda\ +\xd6?\xe8\x9d\x8f~W_}\xe9\xf7\xda\xd3}\xd4:\ +\xd2\xab\xcc)\xad\xd4\xa4\xa2r\xeb\x18\x08\xb0\xc2X\x9e\ +\xde3\xe3\x12\xfdd\xd9\x87TW\xb5\x8c\x12\x06\xf0H\ +yA\x91\xfed\xce\xe5\xfa\xf1\xb2\x0f\xea\xba\xa9\x8b\x14\ +\xb3\x0e\x840x\xc6:\x00\x00\x04\x19E\x0c\xa2\x22\x92\ +\xeb\xc4\x9c\xcd\xf1\x81>\xfdd\xf7Sz\xdf\x13?\xd0\ +?>\x7f\xbfZ\xdaw[G:\x09\xeb\xc4\xe0t\xae\ +\x9c8O\xdf\xbd\xf4}\xfa\xab\xf9\xafWEa\x89u\ +\x1c \x12&\x16\x95\xe9\xd3\x0b\xae\xd6\x7f^|\xa3\xaa\ +B\xba+\x1f|\xd1)\xe9E\xeb\x10\x00\x10d\x141\ +\x88\x8a_(\xb3\x5c\x0a\x86\x90J\xa7\xd5tp\x8b\xfe\ +\xea\xe9{T\xb7\xfe'\xfa\xe5\xde\xe7\x021\xfd|i\ +\x05\xb7'\xe1dU\xa5\x95\xfa\xd2\x85o\xd5\xe7\xce\x7f\ +\x8bf\x95TX\xc7\x01\x22\xa9\xbab\x86\xee\x5c\xf2\x1e\ +\xd5\xcd\xbeT\x85\x01_o\x0c&\x9eN\xc6\x13\x03\xd6\ +!\x00 \xc8x\xf5D$$\xe3\x89\xdd\x92\xd6[\xe7\ +\x08\x83-\x9d\x87\xf4\x85\xcdM\xba\xe9\xd1\xef\xe9\x8e\xd6\ +G\xb4\xb7\xfb\x98Y\x16\xd6\x89\xc1\x09\xc5y\x05\xfa\xd3\ +9\xafQ\xc3\xd2\xf7\xea\xf2\xf1\xb3\xad\xe3\x00\x91W\x94\ +\x97\xaf\x8f\xcc\xb9\x5c\xdf\xa8\xbeIs\x98\x1d\x83\x93=\ +i\x1d\x00\x00\x82\x8e\x22\x06Qr\x8fu\x800i\xef\ +\xef\xd6\x0fv\xae\xd7{\x9f\xf8\xbe>\xfd\xdc}z\xbc\ +m\xa7\xefS\x8af\x96\x8c\xd3\x84\xa22\x9fGE\xd0\ +\x5cV9K\xdf[\xfa^\xdd<{)W\xdf\x81\x80\ +YP>I\xdf\xaa~\x97\xae\x9br\x9eu\x14\x04\x07\ +E\x0c\x00\x9c\x05\xbb&!J~)\xe9v\xeb\x10a\ +\x93J\xa7\x95<\xb4U\xc9C[5\xbb\xb4R\xb5\xd3\ +.\xd0uS\x17ilA\xb1/\xe3_2n\xba\x9a\ +\xd8\xc6:\x92\xc6\x14\x14\xeb/\xe6\xbdN7L=\x9f\ +\xc5A\x81\x00+\xcd/\xd4\xa7\x17^\xa3K+g\xe9\ +\xdf6\xaf\x0d\xc4\xad\xad0\xf5\xa8u\x00\x00\x08:.\ +-\x22J\xd6K\xdae\x1d\x22\xccvt\xb5\xe9\xab[\ +\x9b\xf5\x8eG\xbf\xab/lj\xd2\x0b\x1d\x07<\x1f\xf3\ +\xe2\xb1S=\x1f\x03\xc1sY\xe5,}w\xc9{\xf4\ +VJ\x18 4\xde\x019\xa64\xbfP\ +\xffv\xe1\x0d\xba\x842&*R\x92~o\x1d\x02\x00\ +\xc2\x80\x22\x06Qt\xafu\x80\x1c\xf7\xf2\xc2\x1e\xb7\xce\ +\xbet\xcb\x9b&/\xa8\x9dY2\xae\xf8g\xbb\x9fN\ +<\xda\xb6cs\xf7@\xdf\x88\x0fx!\x0b\xf6\xe6\xa4\ +i\xc5c\xf5\xf5K\xde\xa9\xeb\xa7.\xb2\x8e\x02\xc0#\ +'\xca\x98\x85c&[G\x81\xf7\x9eI\xc6\x13m\xd6\ +!\x00 \x0c(b\x10E\xf7Y\x07\xc8q\xf9C}\ +\xf2]3.\xfe\xfa\xe5\x95\xb3\x17\xfcd\xf7SU\xf7\ +\xee\x7f\xe1\x7f\xb6\x1e?||\xb8\x07<\x9f\x22&\xe7\ +\x5c2n\xba\xbeY}\x93\x16\x8c\x99d\x1d\x05\x80\xc7\ +\xca\xf2\x0b\xf5\xf9\xf3\xdf\xc2\x02\xdc\xb9\xefw\xd6\x01\x00\ + ,(b\x109\xc9xb\x8b\xa4\x17\xadsD\xd5\ +-\xb3/\xddq\xdd\x94\xf3n\x9eW6\xa1\xfc\xc7\xbb\ +6\xbc\xa7\xf9\xf0\xb6\xa7\x8e\xf5\xf7\xa4\xcf\xf4\x98\x09\x85\ +\xa5\x9aV2\xd6\xaf\x88\xf0\xd8uS\x17i\xcd\xc5o\ +\xd7\xf8\xc2R\xeb(\x00|2\xb9x\x8c\xea\xcf\x7f\x0b\ +\xb7 \xe66n\xfd\x06\x80a\xa2\x88AT1+&\ +\x00\xde;s\xf1Ok&\xccY\xfc\xb3\xddOW\xfe\ +|\xef\xc6/?st\xef\x81Tz\xe8Nf\xd1\x18\ +\x16\xec\x0d\xbb\x98\xa4\x0fW]\xa6O/\xb8Z\x851\ +^~\x80\xa89o\xccd\xfd\xc3\xc2k\xacc\xc0\x1b\ +)IM\xd6!\x00 ,8\x13FT\xb1NL\x80\ +\xac\xa8Zv\xf4\xed\xd3.\xf8\xe4E\xe3\xa6M\xf9\xc1\ +\xae\x96\xa5\x0f\x1e\xd8|\xef\xa9\x0b\xfc^\xc4\xedI\xa1\ +\x96\x17\x8b\xe9\xef\x17\x5c\xad\x15U\xcb\xac\xa3\x000\xb4\ +|\xd29z\xc7\xf4\x8b\xacc\xc0}\xeb\x93\xf1\xc4\x11\ +\xeb\x10\x00\x10\x16\x141\x88\xaa\xb5b\x1b\xeb@\xfa\xd0\ +\xac%\xeb\xaf\x9d|\xee\xf53K\xc6\x15\xfft\xf7S\ +\x7f\xfa\xc8\x91\xed\xcfu\x0e\xf4\xa6\x17\xb1\xd0ch\x15\ +\xe5\xe5\xebs\x8b\xde\xcc\xa2\xbc\x00$I\x7f1\xefu\ +\x9aS6\xde:\x06\xdc\xf5\x80u\x00\x00\x08\x13\x8a\x18\ +DR2\x9e\xe8\x92\xf4\xb0u\x0e\x9c\xd9\xbbg\x5c\xf2\ +\xad\xd7\x8e\xaf\xba\xe0'\xbb\x9e\x9a\xf4B\xe7\xc1/H\ +\xdak\x9d\x09#S\x92_\xa8\x7f\xbb\xe0\x06\xc5'\xce\ +\xb3\x8e\x02 \x8a\xf3\x0a\xf4\x0f\x0b\xaeQ^,f\ +\x1d\x05\xee\xb9\xdf:\x00\x00\x84\x09E\x0c\xa2\xec7\xd6\ +\x01r\xd4\x19\x17\xde\x1d\x8d\x15U\xcb\x0e\xbfg\xc6%\ +\x7f/\xe9_\xdc>6\xbcS\x96_\xa8\x7f\xbf\xf0\x06\ +-\xad\x9ci\x1d\x05@\xc0\x9c?v\x8a\xde>\xed\x02\ +\xeb\x18pG\x87\xa4u\xd6!\x00 L(b\x10e\ +\xbf\xb6\x0e\x90\xa3\x8ezxlvd\x08\x89\x92\xbc\x02\ +\xfd\xfb\x85o\xd5\xe2q\xd3\xad\xa3\x00\x08\xa8\x8f\xce\xb9\ +\x5c\x15\x05%\xd61\x90\xbd\x07\x93\xf1D\x9fu\x08\x00\ +\x08\x13\x8a\x18DV2\x9e\xd8,i\x8bu\x0e\x0c_\ +2\x9exN\xd2.\xeb\x1c8\xb3\xc2X\x9e\xbep\xc1\ +\xf5\xbax\xdc4\xeb(\x00\x02\xac\xa2\xa0D\x1f\x9ds\ +\xb9u\x0cd\xefW\xd6\x01\x00 l(b\x10u\xcc\ +\x8aqY2\x9eh\xf7x\x88\xb5\x1e\x1f\x1fY\xc8\x8b\ +\xc5\xf4O\x8b\xde\xc4\xedH\x00\x86\xe5m\xd3\xce\xd7\xac\ +\xd2\x0a\xeb\x18\x18\xbd\xb4(b\x00`\xc4(b\x10u\ +\xac\x13\xe3\xae\x94\x0fc4\xf90\x06F!&\xe9\x1f\ +\x16\x5c\xc3\xc2\xbc\x00\x86-?\x96\xa7\x9bg-\xb5\x8e\ +\x81\xd1{2\x19O\xec\xb6\x0e\x01\x00aC\x11\x83\xa8\ +k\x92\xd4k\x1d\x22\x87\x1c\xf3a\x0cv\xbb\x0a\xa8\x8f\ +\xcd\x8f\xebMS\x16Z\xc7\x00\x102o\x9e\xb2P\xd3\ +K\xc6Y\xc7\xc0\xe8\xdcc\x1d\x00\x00\xc2\x88\x22\x06\x91\ +\x96\x8c':%=b\x9d#\x87x\xbeX\x9f\xb3\xb6\ +\xcfN\xaf\xc7\xc1\xc8\xd4N\xbfP\xef\x9aq\xb1u\x0c\ +\x00!\x94\x1f\xcb\xd3\x07fV[\xc7\xc0\xe84Z\x07\ +\x00\x800\xa2\x88\x01\xa4\xdfZ\x07\xc8!\x1d>\x8d\xc3\ +:1\x01\xb2\xb4r\xa6>1\xff\x0a\xeb\x18\x00B\xec\ +MS\x16\xaa4\xbf\xd0:\x06FfS2\x9ex\xda\ +:\x04\x00\x84\x11E\x0c@\x11\xe3&/\xb7\xae\x1e\x8c\ +\x22& \xaaJ+\xf5\xaf\x8b\xde\xa2\xbcX\xcc:\x0a\ +\x80\x10+\xcb/\xd4\xb5\x93\xcf\xb5\x8e\x81\x91\xf9_\xeb\ +\x00\x00\x10V\x141\x80\xf4\xa8$\xafw\xfa\x89\x0a\xbf\ +\x8a\x18\xd6\x89\x09\x80\xf2\x82\x22}\xe1\xc2\xebU^P\ +d\x1d\x05@\x0ex\xdb\xd4\xf3\xad#`d(b\x00\ +`\x94(b\x10y\xc9xb@\xcc\xb0p\x8b/\x85\ +\x16\xeb\xc4\xd8\x8bI\xfa\xc7\x85\xd7jV\x09\xdb\xce\x02\ +p\xc7\x05c\xa7\xaa\xaa\xb4r\xc0:\x07\x86es2\ +\x9ex\xdc:\x04\x00\x84\x15E\x0c\x90\xf1\x80u\x80\x1c\ +\xe1\xe7\xcc\xa2&\x1f\xc7\xc2)>8k\x89^?a\ +\xaeu\x0c\x009\xa0?\x9d\xd23G\xf7\xee\xff\xe5\xde\ +\xe7\xbe\xde\x95\xea\xffs\xeb<\x18\x96\x1fY\x07\x00\x80\ +0\xa3\x88\x012\x1e\xb2\x0e\x90#\xfc\xba5I\x92~\ +\xe7\xe3X\x18\xe4\xa2q\xd3\xf4\xd19\x97[\xc7\x00\x10\ +b)\xa5\xf5B\xc7\x81#\xf7\xee\x7f\xe1\x7f\xbe\xbfs\ +\xfd\xb9\x17\x8d\x9b6\xf5\xad\xd3\xceO\x1c\xe8\xe9\xf8\xae\ +\xa4\xfd\xd6\xf9pV?\xb4\x0e\x00\x00aF\x11\x03H\ +J\xc6\x13\x1b\xc5\xad.n\xf0\xb3\x88I\xfa8\x16\x1c\ +\xe5\xf9E\xba\xed\xbc7(?\xc6\xcb\x07\x80\x91{\xa9\ +\xf3P\xc7\xfd\xfb_l\xfc\xc1\xce\x96\xa5\xe7\x8d\x99<\ +\xe1\xba)\xe7\xdd|\xeb\xecK\xb7\x9c\xf8\xfdd<\xd1\ ++\xe9{\x86\x11qv\x1b\x9c\xf3&\x00\xc0(\x15X\ +\x07\x00\x02\xe4AI\xb7Z\x87\x08\xb9\xc3>\x8e\xf5\x82\ +\xa4\x03\x92&\xfb8f\xe4\xad<'\xaei\xc5c\xad\ +c\x00\x08\x91\xad\xc7\x0f\x1f\x7f\xa9\xf3\xf0\xda\xfd=\x1d\ +_x\xff\xac\xea\xb5\xf3\xcb'\x9e\xed!?\x95\xf4\xd7\ +>D\xc3\xe8\xfc\x8fu\x00\x00\x08;.i\x02\xaf`\ +\x1b\xeb\xec\x1d\xf2k\xa0d<\x91\x96\xf4{\xbf\xc6\x83\ +t\xe5\xc4yz\xcb\x94\xf3\xacc\x00\x08\xb8\xb4\xa4\xcd\ +\x9d\x87\x8e\xdd\x7f`\xd3\xcf\xbf\xbfs\xfd\x15\xf3\xca&\ +\x94_;\xf9\xdc\xeb\xdf?\xabz\xb8\x0b\xe3?*i\ +\xbb\x87\x111z\x03\x92\xbeo\x1d\x02\x00\xc2\x8e\x22\x06\ +x\xc5\x83\xd6\x01r\x80\x9f3b$i\x9d\xcf\xe3E\ +\xd6\xb8\x82b\xfd\xf59WZ\xc7\x00\x10P\xa9tZ\ +/v\x1ch\xbb\x7f\xff\x8b?\xfb\xfe\xce\xf5\x97\x9f[\ +>q\xdc\x9b&/\xb8\xf1\x83\xb3\x96\x8c\xf8y\xda)\ +\xda\x1b\xddO\x09\x17<\x90\x8c'\xf6X\x87\x00\x80\xb0\ +\xe3\xd6$\xc0\x91\x8c'\xf6\x5c\xb1\xee\x8eg%]h\ +\x9d%\xc4|\x9b\x11\xe3`\x9d\x18\x9f\xfc\xe5\xfc\xd7k\ +BQ\x99u\x0c\x00\x01\xd2\x93\xea\xd7\xa6\x8e\x83\xfbv\ +t\xb5\xdd\x7f\xb0\xf7\xf8\x17o\x9e\xbd\xf4\x99\x85c\x5c\ +\xbb[\xf4W\x92>\xe6\xd6\xc1\xe0\x9a;\xad\x03\x00@\ +.\xa0\x88\x01N\xf6[Q\xc4dc\x9f\xcf\xe3=)\ +\xe9\xb8$\x1a\x02\x0f-\xae\x98\xc1-I\x00$I\xed\ +}\xdd\xa9\x17:\x0el\xde\xdds\xf4\xae#\xbd]_\ +ZQ\xb5\xec\xe0E\xe3\xa6y1\xd4ZI]\x92J\ +\xbd88F\xe5\x80\x98\xa9\x04\x00\xae\xe0\xd6$\xe0d\ +M\xd6\x01B\xee\xa0\x9f\x83%\xe3\x89~I\x8f\xf89\ +f\xd4\x14\xc4\xf2\xf4\xa9s\xaeT\xcc:\x08\x003\xbb\ +\xba\x8f\xf6\xfc\xee\xd0\xd6G~\xb6\xfb\xe9\xc4]{\x9e\ +)\xbe|\xfc\xec\xf3j\xa7]\xb8jE\xd52\xcf\x9e\ +\xf3\x93\xf1D\x8f\xa4\x87\xbd:>F\xa5\xc1\xd9\xd5\x0a\ +\x00\x90%f\xc4\x00'K*\xb3\xce \xef;G\xae\ +/\x19O\xf8Z\xc48\xd6I\xba\xc6`\xdcHx\xef\ +\xcc\xc5\x9a[6\xde:\x06\x00\x1fu\xa7\xfa\xb5\xb9\xe3\ +\xe0\xfe\x1d\xdd\xed\x0f\x1e\xee=\xfe\xb5\x0f\xceZ\xb2n\ +f\xc98\x8b(\x0fK\xba\xdeb`\xbcJZ\xd2\x7f\ +Y\x87\x00\x80\x5cA\x11\x03\x0c\x92\x8c'\x0e]\xb1\xee\ +\x8eg$]l\x9d%\x84\xf6\x1b\x8d\xcb:1\x1e\x99\ +PX\xaa[g_j\x1d\x03\x80\x0fvu\x1f\xed\xdd\ +z\xfc\xf03\xfb{:~\xd6\xde\xd7}\xc7\x8a\xaae\ +m\x1e\xddr4\x12\xbf\xb3\x0e\x80\x97\xadM\xc6\x13/\ +Z\x87\x00\x80\x5cA\x11\x03\xbc\xda\xefD\x113\x1a\xbb\ +\x8c\xc6}D\x99\xed4\xf3\x8d\xc6\xcfY+\xe6\x5c\xa6\ +\xd2\xfcB\xeb\x18\x00<\xd0\xd1\xdf\x93\xde\xd2yh\xcf\ +\xee\x9eck\x8dg\xbd\x9c\xc9\x93\x92:$\x8d\xb1\x0e\ +\x02}\xd3:\x00\x00\xe4\x12\xd6\x88\x01^\x8d+p\xa3\ +\xb3\xd3b\xd0d<\xd1!\xe9\x19\x8b\xb1s\xd9\x9c\xb2\ +\xf1z\xdb\xd4\xf3\xadc\x00pIoj@\xcfw\x1c\ +8\xf2\xe0\x81\xcd\xf7\xffd\xd7\x86\x0f\xfft\xf7\xd3%\ +\x8b+f\xcc\xbcn\xcay\x1f\x18\xcd\x16\xd3~p\xd6\ +\x01{\xcc:\x07tP\xd2]\xd6!\x00 \x970#\ +\x06x\xb5&\xeb\x00!eR\xc48\x1e\x91\xb4\xd8p\ +\xfc\x9c\xf3\xe7s^\xa3\xfc\x18]=\x10V\xa9tZ\ +\xdb\xba\x8e\x1c\xdf\xd9\xd5\xfe\xf4\x81\xde\xce{\xda\xfb\xba\ +\xbf\xb5\xa2j\xd9\xc1E\xeem/\xed\x97\xc7%]m\ +\x1d\x22\xe2\x1a\x9c\xc5\x93\x01\x00.\xa1\x88\x01N\x91\x8c\ +'\xf6_\xb1\xee\x8e\xe7$1\x1d`d\xacnM\x92\ +2E\xcc\x9f\x19\x8e\x9fS\x16\x8e\x99\xac\xd7O\x9cg\ +\x1d\x03\xc0\x08\x0c\xa4Sj=~\xa4cw\xf7\xd1\x8d\ +\x07{;\xef=\xd6\xdf\xf3\xad[f_\xbak^\xd9\ +\x04\xebh\xd9bF\x8c\xad~I_\xb5\x0e\x01\x00\xb9\ +\x86\x22\x06\x18\xda\xefD\x113R\x96E\xcc\x1f\x0d\xc7\ +\xce%{$]v\xf1\xd8\xa9\x1f\xfc\xfd\xa1\xad\xef\x9e\ +Z\xfa\xcc\xa1\xbe\xe3\xbf\xec\xec\ +\xef\xfd\xf6\xcd\xb3\x97\xee;\xa7|\xa2u4\xb7=a\ +\x1d \xe2\xeeJ\xc6\x13\xdb\xadC\x00@\xae\xa1\x88\x01\ +\x86\xf6;1\xc3b\xa4,oMzAR\xbb\xa4\x0a\ +\xc3\x0c\xb9\xe0\xf1d<\xb1K\xd2\x17\x9d\x0f\xdd\xb9\xfd\ +\xf1\x92\xb2\xfc\xc2\x1b\xc7\x15\x96\xbcmbQ\xd9\xe53\ +\x8a\xc7U\xcd(\x1dW\x9c\xc7\x0e\xef\x80\xaf\x8e\xf4u\ +\xa5\xb6w\xb5\xed\xdd\xdf\xd3\xf1D[_\xd7\xaf:\xfa\ +{\x7f\xb8\xa2j\xd9\xd1\x05c&YG\xf3Z\xab\xa4\ +NI\xe5\xc69\xa2\xea\xcb\xd6\x01\x00 \x17Q\xc4\x00\ +C[k\x1d \x84v[\x0d\x9c\x8c'RW\xac\xbb\ +\xe3QIo\xb4\xca\x90#^u\xe5yE\xd5\xb2n\ +I?v>$I\xdf\xdb\xf1\xe4\xf4\xb2\xfc\xc2w\x8f\ +-,\xb9vRa\xd9%\xd3J\xc6\xce\x98V2\xb6\ +\x88r\x06pG*\x9d\xd6\xce\xee\xf6\xae]]\xed[\ +\x0e\xf5\x1e_w\xac\xbf\xe7G\xef\x9fU\xbdv|a\ +\xa9u4\xdf9\xcf\xef\x1b%]f\x9d%\x82\x1eI\ +\xc6\x13\x8fX\x87\x00\x80\x5cD\x11\x03\x0c!\x19O\xec\ +\xbab\xdd\x1d\x9b%\x9dk\x9d%Dv\x18\x8f\xff\x07\ +Q\xc4d\xeb\xf1\xe1|\xd1\xcd\xb3\x97\xee\x91\xf4\x9f\xce\ +\x87$\xe9\xbb;\x9e\x98Y\x9e_t\x93S\xce,\x9e\ +R\ +$Iwn\x7f<\xaf$\xaf\xe0\x8a\xd2\xfc\xc27\x8f\ +-(^6\xbe\xa8\xf4\xbc\xc9E\xe5S\xa6\x97\x8c+\ +)`\xf6\x0crH\x7f:\xa5\xdd\xddG\xbb\xf6\xf6\x1c\ +\xdb\xdd\xd6\xdb\xf5\xf4\xb1\xfe\x9e\xb5\x9d\x03\xbdw\xdf2\ +\xfb\xd2mS\x8a\xc7X\xc7\x0b\x9b\x97\xac\x03D\xd0\x7f\ +&\xe3\x89~\xeb\x10\x00\x90\xab(b\x80\xd3c\x9d\x98\ +\xe13?IN\xc6\x13\x87\xafXw\xc7K\x92\xce\xb1\ +\xce\x12R\xbel\x11\xbb\xa2jYJ\x99\x7f['\xfd\ +\xfb\xbas\xfb\xe3e\xa5\xf9\x85o)\xcf/\xbcr\x5c\ +A\xc9\xb2\x8a\xc2\x92\xb9\x93\x8a\xcb'M-\x1e[\x5c\ +HA\x83\x80;\xd0\xdb\xd9\xbf\xaf\xa7\xe3\xc8\x91\xde\xe3\ +[\xdb\xfb\xbb\x9f\xea\xec\xef\xbd\xff\xf8@\xdf\xafVT\ +-;\xce\xedE\xae\xd8l\x1d b\x0eK\xfa\x86u\ +\x08\x00\xc8e\x141\xc0i$\xe3\x89mW\xac\xbbc\ +\xa7\xa4Y\xd6YB\xa0\xd5:\x80\xe3IQ\xc4\x8c\xd6\ +\x93\x96\x83\xaf\xa8Zv\x5c\x99i\xf0'M\x85\xbfs\ +\xfb\xe3%%y\x05W\x96\x16\x14^=6\xbfx\xf1\ +\xd8\xc2\xe2\x85\x13\x0b\xcb\xa6N.\x1eS6\xae\xa0\x98\ +\x86\x06\xbe:\xd8\xdb9\xb0\xbf\xa7\xa3\xedp\xef\xf1\xd6\ +\xa3\xfd=\xcfv\x0c\xf4\xae\xed\x19\xe8\xbf\xf7\xe6\xd9K\ +\xf7L.bS\x1f\x0fm\xb5\x0e\x101\xff\x99\x8c'\ +:\xacC\x00@.\xa3\x88\x01\xce\xec\x11I\xef\xb2\x0e\ +\x11\x02\xe63b\x1cOHz\xb7u\x88\x90\x0a\xe4\x1a\ +;\xce\xaeM\xf7;\x1f'\xf9\xee\x8e'f\x16\xe5\x15\ +\x5cY\x96_xiy~\xd1\x05c\x0a\x8a\xe6U\x14\ +\x96N\x9dXT6vbaYA^\x8c\xbb\xd40\ +r\x9d\xfd\xbd\xe9}\xbd\x1d\xc7\x8f\xf4\x1e?\xd0\xd6\xdf\ +\xbd\xa5\xb3\xbf\xf7\xe9\xe3\x03}\x8fv\x0d\xf4=\xb8\xa2\ +j\xd9\xfeI\x14.\xbeK\xc6\x13G\xaeXw\x07[\ +X\xfb\xe3\x98\x06\xad\xf5\x05\x00\xf0\x06E\x0cpf\x14\ +1\xc3\xf3\xa2u\x00\xc7\xab\xb6_\xc6\xb0\x0c(\xb3\xeb\ +T\xa88\x0b\x04\xff\xd0\xf98\xc9\x9d\xdb\x1f\x1fS\x92\ +W\x10/\xc9/\xb8\xac,\xbf\xe8\xe2\xf2\x82\xa2s+\ +\x0aJf\x8c/*\xad\x9cR4\xa6\xb8(/\xdf\xff\ +\xc0\x08\x84\x94\xd2:\xd2\xdb5p\xa8\xb7\xb3\xa3\xad\xbf\ +\xfb@G\x7f\xef\x8e\xe3\x03\xbd/v\x0f\xf4\xb7t\xa5\ +\xfa~w\xf3\xac\xa5\x1b\xe7\x17L\x90\xca&XG\xc5\ +\xc9vKZ`\x1d\x22\x02\xbe\x96\x8c'\x8eX\x87\x00\ +\x80\x5cG\x11\x03\x9cY\x8bu\x80\x90\xd8b\x1d\xc0a\ +z{M\x88=\x95k\xd3\xd0WT-\xeb\x90t\x9f\ +\xf3\xf1*\xdf\xdb\xf9\xe4\x05E\xb1\xfc\xa5\xc5\xf9\x05\x17\ +\x96\xe6\x15.,\xcf/\xac*/(\x9e:\xb6\xa0\xb8\ +rBaiYEaI>[o\x87Soj@\ +\x87z;\xfb\x8e\xf6\xf7t\x1c\xeb\xef9\xdc\xd1\xdf\xb3\ +\xa7+\xd5\xbf\xadk\xa0\xef\xf9\x9e\x81\xfe\xc7\xbbS\xfd\ +\xcd+\xaa\x96\x1d\x9dXTf\x1d\x15#\xb3O\x141\ +^\xeb\x92\xb4\xc6:\x04\x00D\x01E\x0cpf\xbc\xb1\ +?\xbb\x8ed<\xb1\xdb:\x84t\xd2\x82\xbd\xf3\xad\xb3\ +\x84L\xb3u\x00\xbf\xdd\xa6\x16\xc4\ +\xf2&\xe4\xc7\xf2\xc6\x16\xc4\xf2J\x0bby\xe3\xf2b\ +\xb1\x82\xc2\xbc\xfcqy\xb1Xaa,\xbf\xa40/\ +\xbf8_\xb1\xfc\xa2\xbc\xfc\xc2\xbcX,??\x96\x97\ +W\x9cW\x90/IyR\xac4\xbfp\xc8\x05p\xca\ +\xf2\x8bbC-`\xdc\x97N\xa9g\xa0/}\xea\xe7\ +S\x92\xba\x06\xfa\xfa3_3\x90\xeaK\x0d\x0cHR\ +oj\xa07\x95N\xa7\xd2J\xa7zR\x03\xdd}\xe9\ +\x81\x9eT:\xdd\xd3\x9b\x1a8:\x90N\xf5\xa4\xd2\xe9\ +\xe3\xbd\xe9\x81\xc3\xa9t\xba{ \x9d:\xda\x97N\xed\ +\x1dH\xa7\xf6\xf4\xa7\x06\xf6\x0e(\xbd\xab?\x95\xda\xb9\ +\xa2j\xd9\xd1\xa2\xbcRU\x16\x96\x8e\xe4\x8f\x0c\xd1\xb6\ +\xcf:@\x8e\xfbz2\x9e\xd8i\x1d\x02\x00\xa2\x82\x22\ +\x068\xbb\x8d\x92\xded\x1d\x22\xc0\x82V\xc4p;\xd9\ +\xc8\xecL\xc6\x13\xdb\xacCD\xd1-\xb3/\xdd!i\ +\x87u\x8e\xc2X\x9e\x0a\x0b\x8a\x87\xfc\xbdq\xa7\xf9<\ +`\x80[f\xbc\xd3!\xa9\xde:\x04\x00D\x09+\x11\ +\x02g\xf7\x9cu\x80\x80\x0b\xda\x9fO\x8bu\x80\x90Y\ +g\x1d\x00\x00\x86\xa1\xdd:@\x0e\xfbJ2\x9e\xd8o\ +\x1d\x02\x00\xa2\x84\x22\x068\xbb\xd3.\xe8\x09I\x01+\ +b\x9c\x93I\xae\x9c\x0e\xdfC\xd6\x01\x00`\x18(b\ +\xbcqD\xd2\xbf[\x87\x00\x80\xa8\xa1\x88\x01\xce\x8e\x22\ +\xe6\xf4\x06$\xbdh\x1db\x08O[\x07\x08\x91\x07\xad\ +\x03\x00\xc00\xb4Y\x07\xc8Q\xff\x9e\x8c'\xda\xacC\ +\x00@\xd4P\xc4\x00g\x91\x8c'\x0e+s\xc5\x08\xaf\ +\xb6)\x19O\xf4X\x87\x18B\x8bu\x80\x90\xd8\x96\x8c\ +'^\xb2\x0e\x01\x00\xc3\xc0\x8c\x18\xf7\xed\x93\xf4\x15\xeb\ +\x10\x00\x10E\x141\xc0\xf0\xf0fuh\x1b\xac\x03\x9c\ +\x063b\x86\x87\xdb\x92\x00\x84E\x9bu\x80\x1c\xf4\xd9\ +d<\xd1i\x1d\x02\x00\xa2\x88\x22\x06\x18\x1e\x8a\x98\xa1\ +\x05\xb5\xf0\xe0v\xb2\xe1\xa1\x88\x01\x10\x16\xcc\x88q\xd7\ +\xb3\x92\xbem\x1d\x02\x00\xa2\x8a\x22\x06\x18\x9e\xad\xd6\x01\ +\x02*\xa8E\xcc\xf3\x92R\xd6!B\x80\x22\x06@(\ +$\xe3\x89^I\xdd\xd69r\xc8\xa7\x92\xf1D\xbfu\ +\x08\x00\x88*\x8a\x18`x(b\x86\x16\xc8\x22\xc6\x99\ +j\xbd\xcd:G\xc0=\x93\x8c'v[\x87\x00\x80\x11\ +\x08\xe2\x9ada\xf4\x9bd\xde\xbc\xbe\xe21\ +\xeb\x00\xc3D\x11\xf3j\x8d\xd6\x01\x00`\x94X#f\ +\xe4\xda\xc4v\xd5\x00\x108\x141\xc0\xf0\xed\xb3\x0e\x10\ + \x7f\xb4\x0e0L/Y\x07\x08\xa0F\xeb\x00\x00\x00\ +\xdf\xfc\x03\x0b\xf4\x02@\xf0P\xc4\x00\xc3\xc7\x89\xcc+\ +\x1e\xb5\x0e0L\xdb\xad\x03\x04\xcc\xc6d<\xf1\x9cu\ +\x08\x00\x80/~/\xe9\xeb\xd6!\x00\x00\xafF\x11\x03\ +\x0c\xdf!\xeb\x00\x01\xb1=\x19O\xec\xb2\x0e1La\ +\xc9\xe9\x97\x9fZ\x07\x00\x00\xf8\xa2G\xd2\x9f\x84d=\ +7\x00\x88\x1c\x8a\x18`\xf8\xf6[\x07\x08\x88\xdfY\x07\ +\x18\x01\xd6\xf59\xd9\xcf\xac\x03\x00@\x16(\x15\x86\xaf\ +\x9e\x19\x90\x00\x10\x5c\x141\xc0\xf0\x1d\xb0\x0e\x10\x10\x14\ +1\xe1\xf4t2\x9ex\xc6:\x04\x00d\xe1\x98u\x80\ +\x90xVR\xbdu\x08\x00\xc0\xe9Q\xc4\x00\xc3wH\ +R\xda:D\x00\xac\xb5\x0e0\x02\xdc\x9a\xf4\x8a\x1fX\ +\x07\x00\x80,q\xdezv)enI\xea\xb5\x0e\x02\ +\x008=^\xd0\x80aJ\xc6\x13\xfdb\x9d\x98\xed\xc9\ +x\xe2E\xeb\x10\xc3\x95\x8c'\xba\xc5\xcfL\xca\x9c\x98\ +\xff\xd0:\x04\x00di\xacu\x80\x10\xf8j2\x9e\xf8\ +\x83u\x08\x00\xc0\x99Q\xc4\x00#s\xd0:\x80\xb1{\ +\xad\x03\x8c\x02\xb7'I\xc9d<\xb1\xcd:\x04\x00\xc0\ +S/JZe\x1d\x02\x00pv\x141\xc0\xc8\xb4[\ +\x070v\x9fu\x80Q\xa0\x88\xe1\xb6$\x00\xc8u\x03\ +\x92nI\xc6\x13]\xd6A\x00\x00gG\x11\x03\x8cL\ +\x9bu\x00C=\x92~k\x1db\x14\xa2\xbeNL\x8f\ +\xd8-\x09\x00r\xdd\x17\x93\xf1\xc4\x1f\xadC\x00\x00\x86\ +\x87\x22\x06\x18\x99(\xcf\x88\xb9?\x19OtX\x87\x18\ +\x85\xa8\xdfNvW2\x9e8l\x1d\x02\x00\xe0\x99\xa7\ +%\xad\xb6\x0e\x01\x00\x18>\x8a\x18`d\xda\xac\x03\x18\ +\xba\xdb:\xc0(\xed\xb7\x0e`\xec\xbf\xac\x03\x00\x80K\ +\x0a\xad\x03\x04P\xaf2\xb7$\xb1K\x12\x00\x84\x08E\ +\x0c02Q\x9d\x11\xd3+\xe9\xe7\xd6!F)\xca\xbb\ +&m\x96\xf4\xb0u\x08\x00pI\x99u\x80\x00\xba-\ +\x19O\xb4X\x87\x00\x00\x8c\x0cE\x0c02m\xd6\x01\ +\x8c\xdc\x97\x8c'\xc2ZhD\xf9\xd6\xa4\xffN\xc6\x13\ +i\xeb\x10\x00\x00O\xac\x95\xf4o\xd6!\x00\x00#G\ +\x11\x03\x8cLTg\xc4|\xdf:@\x16\xa2\xba>J\ +\xbf\xa4\x06\xeb\x10\x00\xe0\xa2\xb1\xd6\x01\x02\xe4\x88\xa4\x9b\ +\x93\xf1\xc4\x80u\x10\x00\xc0\xc8Q\xc4\x00#\x13\xc6\xc5\ +j\xb3\xd5\xae\xf0\xde\x96$eNV\xa3\xe8\xaed<\ +\xb1\xd7:\x04\x00\xb8\x88\xf3\xd6W\xfcI2\x9e\xd8a\ +\x1d\x02\x000:\xbc\xa0\x01#\xd3c\x1d\xc0\xc0\xf7\x93\ +\xf1D\xb7u\x88,\xb4Y\x070\xf2e\xeb\x00\x00\xe0\ +\xb2b\xeb\x00\x01\xf1\xf5d<\xf1\xbf\xd6!\x00\x00\xa3\ +G\x11\x03\x8c\xcc1\xeb\x00\x06\xbei\x1d KQ\x9c\ +\x11\xf3X2\x9ex\xc4:\x04\x00\xb8\xac\xc4:@\x00\ +<-\xe9\x93\xd6!\x00\x00\xd9\xa1\x88\x01F\xa6\xcb:\ +\x80\xcf\x1eM\xc6\x13\x1b\xacCd\xc3\x99\xcd\xd3o\x9d\ +\xc3g\xff\xd7:\x00\x00x \xeak\xc4tHzO\ +2\x9e\x88\xda\xb9\x08\x00\xe4\x1c\x8a\x18`d\xa2vk\ +\xd2\xff\xb3\x0e\xe0\x92N\xeb\x00>\xda#\xe9G\xd6!\ +\x00\xc0\x03Q\x9f\x11\x93H\xc6\x13\xcf[\x87\x00\x00d\ +\x8f\x22\x06\x18\x99\xa3\xd6\x01|\x94Ko\xe8\xa3tK\ +\xd9\x7f&\xe3\x89^\xeb\x10\x00\xe0\x81R\xeb\x00\x86\xbe\ +\x99\x8c'\xfe\xc7:\x04\x00\xc0\x1d\x141\xc0\xc8Di\ +:\xf0\xd7r\xe8\x0d\xfdq\xeb\x00>i\x93t\x87u\ +\x08\x00p\xdb\x15\xeb\xee\x18g\x9d\xc1\xd0\x13\x92>f\ +\x1d\x02\x00\xe0\x1e\x8a\x18`dr\xa5\x988\x9b\x0eI\ +_\xb7\x0e\xe1\xa2\xa8\x14h_K\xc6\x13\xed\xd6!\x00\ +\xc0\x03Q\x9d\x0dsH\xd2\xbb\x92\xf1D\xd4n\x8d\x06\ +\x80\x9cF\x11\x03`(\xdfL\xc6\x13\x07\xadC\xb8(\ +\x0a\xb7&uIZc\x1d\x02\x00<\x12\xc5\x191\x03\ +\x92>\x90\x8c'Z\xad\x83\x00\x00\xdcE\x11\x03\xe0T\ +=\x92\xbed\x1d\xc2eQX\xac\xf7\x9b\xc9x\xe2\x80\ +u\x08\x00\xf0H\x85u\x00\x03\x7f\x9f\x8c'\xee\xb7\x0e\ +\x01\x00p\x1fE\x0c02Q\xb8\xed\xe3[\xc9xb\ +\xb7u\x08\x97\xe5\xfa\x1a1\xc7%}\xde:\x04\x00x\ +(jE\xcc\x8f\x95{\x17E\x00\x00\x0e\x8a\x18\x00\x83\ +\x1d\x97\xf4\xaf\xd6!<\x90\xebk\xc4\xfc\xdfd<\xb1\ +\xd7:\x04\x00x(J\xb7&m\x90\xf4\xe1d<\x91\ +\xb6\x0e\x02\x00\xf0\x06E\x0c\x80\xc1\xfe_2\x9e\xd8c\ +\x1d\x02#\xd2.\xe9\x0b\xd6!\x00\xc0cQ\x99\x11s\ +@\xd2;\x92\xf1D\xae\xcf\xe4\x04\x80H\xa3\x88\x01p\ +\xc2!I\xf5\xd6!0b\xff\x91\x8c'\x0e[\x87\x00\ +\x00\x8fM\xb0\x0e\xe0\x83^I\xb5\xc9xb\xabu\x10\ +\x00\x80\xb7(b\x00\x9c\xf0/\xc9x\xe2\x88u\x08\x8f\ +\xe4\xea\xda>{$\xfd\x87u\x08\x00\xf0\xc1d\xeb\x00\ +\x1eK+s;R\xb3u\x10\x00\x80\xf7(b\x00H\ +\xd2&I\xff\xcf:\x04F\xec\xd3\xc9x\xa2\xc3:\x04\ +\x00\xf8`\x92u\x00\x8f}>\x19O|\xdf:\x04\x00\ +\xc0\x1f\x141\x00$ie2\x9e\xe8\xb3\x0e\x81\x11y\ +B\xd2w\xadC\x00\x80O&Z\x07\xf0\xd0O%\xfd\ +\x83u\x08\x00\x80\x7f(b\x004&\xe3\x89_[\x87\ +\xf0\xd8\x80u\x00\x0f|2\x19O\xa4\xacC\x00\x80O\ +\xa6X\x07\xf0\xc8\x1f%\xd5\xb1C\x12\x00D\x0bE\x0c\ +02\xb9\xb6}f\x87\xa4OX\x87\xf0A\xae\xcd\xf6\ +\xf9\x9fd<\xf1;\xeb\x10\x00\xe0\xa3\x19\xd6\x01<\xb0\ +Y\xd2\xdb\xd8!\x09\x00\xa2\x87\x22\x06\x18\x99\x98u\x00\ +\x97\xfdc2\x9eh\xb5\x0e\xe1\x83\x12\xeb\x00.:,\ +\xe9\xaf\xadC\x00\x80\xcfr\xad\x88\xd9/\xe9\xbad<\ +q\xc0:\x08\x00\xc0\x7f\x141\xc0\xc8TX\x07p\xd1\ +\x1f%}\xd5:\x04FlU2\x9e\xd8o\x1d\x02\x00\ +\xfcr\xc5\xba;&K*\xb6\xce\xe1\xa2vIoH\ +\xc6\x13\x9b\xad\x83\x00\x00lP\xc4\x00#\x93+'\x82\ +\xdd\xcal\x93\x99\x8bk\xa7\xe4\xb2\xdfK\xfa\x96u\x08\ +\x00\xf0\xd9\x1c\xeb\x00.\xea\x95\xf4\xced<\xf1\xb4u\ +\x10\x00\x80\x1d\x8a\x18`dr\xe5\x16\x97O'\xe3\x89\ +\x8d\xd6!|\x94\x0bk\xfbtJZ\xc1\x82\x8e\x00\x22\ +h\x81u\x00\x97\x0cH\xfa`2\x9ex\xc8:\x08\x00\ +\xc0\x16E\x0c02c\xad\x03\xb8\xe0!I_\xb1\x0e\ +\xe1\xb3\x5cX\xdbgU2\x9e\xd8d\x1d\x02\x00\x0c\xcc\ +\xb7\x0e\xe0\x82\xb4\xa4?K\xc6\x13?\xb3\x0e\x02\x00\xb0\ +G\x11\x03\x8c\xcc$\xeb\x00Y\xda\xab\xcc\xd58\xb6=\ +\x0e\x97\x87$\xfd_\xeb\x10\x00`\xa4\xda:\x80\x0b\xfe\ +&\x19O\xfc\xb7u\x08\x00@0P\xc4\x00#3\xc1\ +:@\x16\x06$}(\x19O\xec\xb5\x0eb \xcc\x8b\ +,\x1f\x12\xb7$\x01\x88\xb6\xd7Z\x07\xc8\xd2?'\xe3\ +\x89/Y\x87\x00\x00\x04\x07E\x0c02a.b\xfe\ +9\x19O+J\x18\x00\xc00P\xc4\ +\x00#\x13\x96\x9d\x0f\xbe$\xe9\x0e\xeb\x10\x01\x11\xa6u\ +}>-\xe9\xfb\xd6!\x00 @\xb6X\x07\x18\x86\xb4\ +\xa4\xbf\x91\xf4\xcf\xd6A\x00\x00\xe1@\x11\x03\x8cL\x93\ +\xa4\x07\xacC\x9c\xc5\xf7\x949!D\xc6\xb9\xd6\x01\x86\ +\xe9?\x95\x99\xd2\x0e\x00x\xc5\x01I{\xadC\x9c\xc1\ +\x80\xa4?\x93\xf4\xef\xd6A\x00\x00\xe1A\x11\x03\x8c\xdc\ +_+s\xe2\x15DwIZ\xa1\xcc\xd59d,\xb5\ +\x0e0\x0c\xff%i\xa5u\x08\x00\x08\xa8G\xac\x03\x9c\ +F\xb7\xa4wK\xfa\x96u\x10\x00@\xb8P\xc4\x00#\ +\xf7\xb4\xa4oZ\x87\x18\xc2/$\xbd_\xc1-\x89\xac\ +\xbc\xc1:\xc0Y|O\xd2\x9f\x8b\xf2\x0c\x00N\xe7!\ +\xeb\x00C8\x22\xe9\xcd\x92\xee\xb6\x0e\x02\x00\x08\x1f\x8a\ +\x18`t>\xab\xcct\xe9\xa0\xb8K\xd2\xbb$\xb1\xdd\ +\xf1\xc9\xa6K\xba\xc4:\xc4\x19\xdc\xa9\xcc\x0c&\xca3\ +\x008\xbd\x9f[\x078\xc5VI5\x92~g\x1d\x04\ +\x00\x10N\x141\xc0\xe8\x1c\x94\xf41\xeb\x10\x8e;%\ +\xbdG\x940C\xd9/i\x8fu\x88\xd3\xf8\xaa2;\ +$Q\xc2\x00\xc0\x99m\x93\xd4l\x1d\xc2\xf1\x07I\xaf\ +\x95\xf4\xbcu\x10\x00@xQ\xc4\x00\xa3\xf7#\xd9O\ +I\xfe\xb2x3\x7f&\x03\x92>e\x1d\xe2\x14ie\ +vG\xfa\x98\xb8\x1d\x09\x00\x86\xeb\xdb\xd6\x01$\xfdD\ +\xd25\xca\x94\xfc\x00\x00\x8c\x1aE\x0c\x90\x9d\xff#\x9b\ +[\x94N\xbc\x99\xff\xa4x3\x7f6?Pp\xb6\xf2\ +\xee\x96\xf4AI\xf5\xd6A\x00 d\xbe'\xbb\x19\x8e\ +\x03\x92\xfe^\xd2\xfb\x94y\x1e\x07\x00 +\x141@\ +v\xf6J\xbaE\xfe\x96!\x1d\x92\xde)\xde\xcc\x8f\xc4\ +JI\xffk\x9ca\xbb\xa4+%\xfd\xd08\x07\x00\x84\ +Q\xafl^\xf7\x8eHz\x9b\xa4/\x88\x0b\x1f\x00\x00\ +\x97P\xc4\x00\xd9\xbbO\xd2\xed>\x8d\xb5U\xd2\xeb%\ +5\xfa4^\xae\xe8\x95\xf4^I\xdf7\x1a\xff7\x92\ +\x96Iz\xcch|\x00\xc8\x05wHz\xce\xc7\xf1\x1e\ +\x97t\xa9\xa4{}\x1c\x13\x00\x10\x01\x141\x80;\xfe\ +I\x995c\xbct\xaf\xa4\xcb%=\xe5\xf18\xb9j\ +@\x99\xd9K\x9f\x93\x7fW5{\x94Y\xa3\xe6:\x05\ +k\x97-\x00\x08\xa3~Iu\xce\x7f\xbd\x94Vf\x0d\ +\xb6\xd7+s\x01\x04\x00\x00WQ\xc4\x00\xeeHK\xba\ +U\xd2C\x1e\x1c\xbb[\x99\x85]oPf\xb7&\x8c\ +^J\xd2g\x94\xb9\xb5\xeb\xa8\xc7c=\xa2\xcc\x95\xd4\ +/\x89\xe9\xec\x00\xe0\x96G%\xad\xf2\xf0\xf8{\x94\xb9\ +\x15\xe9\x93b7B\x00\x80G(b\x00\xf7\xf4Jz\ +\xbb\xa4\x07]<\xe6\x06eni\xf9\xaax3\xef\xa6\ +FeJ\x92?zp\xec\x83\x92\xfeB\x99+\xa9\xcf\ +zp|\x00\x88\xba\x7f\x97\xf45\x0f\x8e\xfb?\x92.\ +\x94\xf4+\x0f\x8e\x0d\x00\xc0\xcb(b\x00wu*3\ +s\xe5\xa7Y\x1e\xa7C\xd2\xdf)S\xc2\xf0f\xde\x1b\ +\x9b%\xc5%\xfd\xad\xa4.\x17\x8e\xd7\xa5\xcc\xec\x97\xf3\ +\x95y\x83\x90r\xe1\x98\x00\x80\xa1\xfd\xa52\xcf\xb9n\ +xQ\xd2\x9b%\xdd\xac\xcc\xe2\xbc\x00\x00x\x8a\x22\x06\ +p_\x8f2\x0b\xc3\xfe\xad\xa4\xbe\x11>\xb6_\xd2\x7f\ +KZ(\xe9\x8b\xf2\xfe>\xf8\xa8\xeb\x97\xf4o\x92\x16\ +Ij\xd0\xe8\xca\x93C\x92>/\xe9\x5ce\xd6\x83\xe1\ +\xf61\x00\xf0^Z\x99\xe7\xdc\xf7h\xf4\xcf\xbb\xfb\x95\ +\xb9\x05\xe9bI\xf7\xbb\x94\x0b\x00\x80\xb3\xa2\x88\x01\xbc\ +\x91V\xe6\x0d\xfee\x92\x9a\x86\xf1\xf5\xc7%}C\x99\ +\xd9\x14\x1fU\xe6\x1eu\xf8g\xbb\xa4\x15\x92\x96J\xfa\ +\x99\xce^\xa0\xa5$\xfd^\xd2\x9fI\xaaRf\xbd\x82\ +\xdd^\x06\x04\x00\x0c\xe9\xa7\x92\x16(S\x88\xef\x1f\xe6\ +c\x9eVfF\xcd|e\x16\xe5e-\x18\x00\x80\xaf\ +b\xe9\xf4\xab\x97\x9d\xb8\xe2\xca[\x0c\xa2\x009\xed\x0a\ +ev\xec\xb9V\xd2<\xe7s{\x95y3\xffKI\ +wKj\xb7\x89\x86!LWf\xf1\xe5k$-\x96\ +4F\xd2Ne\x16\x89\xfc\xbd\xa4\x9f\x8b\xe2\x05\x00\x82\ +\xa6P\xd2\x1b\x94y\xcd\x9d/i\xa22\x17\x1d\xf7+\ +s\x81\xe31e\x9e\xc3\xb7[\x05\x04\x00\x0c_\xf2w\ +\xdf\xb5\x8e\xe0\x19\x8a\x18\xc0\x7fe\xca\xcc\x98qc]\ +\x12\x00\x00\x00\x00\xc89\xb9\x5c\xc4\x14X\x07\x00\x22\xe8\ +\xb8u\x00\x00\x00\x00\x00\x90r\xbb\xf0\x08*\xd6\x88\x01\ +\x00\x00\x00\x00\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\x80O\ +(b\x00\x00\x00\x00\x00\x00|B\x11\x03\x00\x00\x00\x00\ +\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\x00\x00\ +\x00\x00\x00\x00\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0'\x14\ +1\x00\x00\x00\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\x00\ +\xf0\x09E\x0c\x00\x00\x00\x00\x00\x80O(b\x00\x00\x00\ +\x00\x00\x00|B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\x18\ +\x00\x00\x00\x00\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\xf8\ +\x84\x22\x06\x00\x00\x00\x00\x00\xc0'\x141\x00\x00\x00\x00\ +\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\x00\ +\x00\x00\x00\x00\x80O(b\x00\x00\x00\x00\x00\x00|B\ +\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\x00\ +\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\xf8\x84\x22\x06\x00\x00\ +\x00\x00\x00\xc0'\x141\x00\x00\x00\x00\x00\x00>\xa1\x88\ +\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\x80\ +O(b\x00\x00\x00\x00\x00\x00|B\x11\x03\x00\x00\x00\ +\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\x00\ +\x00\x00\x00\x00\x00\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0'\ +\x141\x00\x00\x00\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\ +\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\x80O(b\x00\x00\ +\x00\x00\x00\x00|B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\ +\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\ +\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0'\x141\x00\x00\x00\ +\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\ +\x00\x00\x00\x00\x00\x80O(b\x00\x00\x00\x00\x00\x00|\ +B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\ +\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\xf8\x84\x22\x06\x00\ +\x00\x00\x00\x00\xc0'\x141\x00\x00\x00\x00\x00\x00>\xa1\ +\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\ +\x80O(b\x00\x00\x00\x00\x00\x00|B\x11\x03\x00\x00\ +\x00\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\ +\x00\x00\x00\x00\x00\x00\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0\ +'\x141\x00\x00\x00\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\ +\x00\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\x80O(b\x00\ +\x00\x00\x00\x00\x00|B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\ +\x8a\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\ +\x00\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0'\x141\x00\x00\ +\x00\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\ +\x0c\x00\x00\x00\x00\x00\x80O(b\x00\x00\x00\x00\x00\x00\ +|B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\ +\x00\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\xf8\x84\x22\x06\ +\x00\x00\x00\x00\x00\xc0'\x141\x00\x00\x00\x00\x00\x00>\ +\xa1\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\x00\x00\x00\x00\ +\x00\x80Ob\xe9t\xda:\x03\x00\x00\x00\x00\x00@$\ +0#\x06\x00\x00\x00\x00\x00\xc0'\x141\x00\x00\x00\x00\ +\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\x00\ +\x00\x00\x00\x00\x80O(b\x00\x00\x00\x00\x00\x00|B\ +\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\x00\ +\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\xf8\x84\x22\x06\x00\x00\ +\x00\x00\x00\xc0'\x141\x00\x00\x00\x00\x00\x00>\xa1\x88\ +\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\x80\ +O(b\x00\x00\x00\x00\x00\x00|B\x11\x03\x00\x00\x00\ +\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\x00\ +\x00\x00\x00\x00\x00\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0'\ +\x141\x00\x00\x00\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\ +\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\x80O(b\x00\x00\ +\x00\x00\x00\x00|B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\ +\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\ +\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0'\x141\x00\x00\x00\ +\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\ +\x00\x00\x00\x00\x00\x80O(b\x00\x00\x00\x00\x00\x00|\ +B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\ +\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\xf8\x84\x22\x06\x00\ +\x00\x00\x00\x00\xc0'\x141\x00\x00\x00\x00\x00\x00>\xa1\ +\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\ +\x80O(b\x00\x00\x00\x00\x00\x00|B\x11\x03\x00\x00\ +\x00\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\ +\x00\x00\x00\x00\x00\x00\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0\ +'\x141\x00\x00\x00\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\ +\x00\x00\xf0\x09E\x0c\x00\x00\x00\x00\x00\x80O(b\x00\ +\x00\x00\x00\x00\x00|B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\ +\x8a\x18\x00\x00\x00\x00\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\ +\x00\xf8\x84\x22\x06\x00\x00\x00\x00\x00\xc0'\x141\x00\x00\ +\x00\x00\x00\x00>\xa1\x88\x01\x00\x00\x00\x00\x00\xf0\x09E\ +\x0c\x00\x00\x00\x00\x00\x80O(b\x00\x00\x00\x00\x00\x00\ +|B\x11\x03\x00\x00\x00\x00\x00\xe0\x13\x8a\x18\x00\x00\x00\ +\x00\x00\x00\x9fP\xc4\x00\x00\x00\x00\x00\x00\xf8\x84\x22\x06\ +\x00\x00\x00\x00\x00\xc0'\x141\x00\x00\x00\x00\x00\x00>\ +\xa1\x88\x01\x00\x00\x00\x00\x00\xf0I\xc1P\x9f\x8c\xc5b\ +~\xe7\x00\x00\x00\x00` \xbd\xaay\xf9\xa0_VK\ +\xaa<\xcd\x976\x9d\xf8\x9fX}M\xd3i\xbe\x06\x00\ +p\x16\xb1t:\xfd\xeaOR\xc4\x00\x00\x00\x009#\ +\xbd\xaa\xb9R\x99\x92e\xb9^)[\xaer\xe1\xd0k\ +%\xb5Jj\x91\xd4BA\x03\x00gG\x11\x03\xe4\xa0\ +\xf4\xaa\xe6\xb9\x92j\x959\xd9\x9a+i\xf1\xa0\xdf\xde\ +\xa0\xcc\x09S\x93\xa4\xc6X}M\xab\x8f\xd1\x00\x00\x80\ +O\xd2\xab\x9ak\x959\x17X\xae\x93\xcf\x05\xbc\xb6V\ +\xaf\x9cg\xb4\xf88\xee\x89\xc2\xa9E\xd2\x9c\x91<.\ +V_\x93\x13o\x80N9\x07\xac\xd6\xc9\x7f\x0e'J\ +\xb3&e~6m>F\x030\xc8Y\x8b\x98\xf4\xaa\ +\xe6j\x9d~zb\xd8\xb5\xf2&\xd4\x1b9\xfe\xf7F\ +\x92\xda\xfc>\xb1\x18\x0egj\xf1JI7\x8e\xe0a\ +\xf7HZ\xc3\x15,\x00\x00\xc2\xcf)_N|TX\ +fq\xb4KjT\xe6\x5c\xa3\xc5\xeb\xc1\xd2\xab\x9a\x1b\ +$\xdd:\xd2\xc7\x85\xbd\x88q\xce\x01Wkd\xb3\x9c\ +\xbe#i5\xef\x87\x00\xff\x9d\xb1\x88I\xafj\xae\x93\ +t\xa7\xbf\x91|uO\xac\xbe\xa6\xd6:D\xaeq\xae\ +D\xb4*\x18/\xfe^Z\x11\xab\xafi\xb0\x0e!\xbd\ +\xfcg\xbeZ\xd2\xc7\xb38\xccW\x94y1ns!\ +\x12\x00\x00\xf0\x89s\x1e\xb0RR\x9dF8\x13\xc4g\ +\xdb$\xad\x91\xd4\xe0\xc5\xf9\x86SB\xdd=\x9a\xc7\x86\ +\xb5\x88q~\xf6\x0d\x1a\xd9E\xb8S\xdd\x1e\xab\xafY\ +\xedF\x1e\x00\xc3s\xda\x22&\x02%\xcc\x09\xe3y\xe3\ +\xe9\xae\x08\xfd\xdd\x91\x02P\xc68\xb3\x8f\x1a\xe4\xce\x94\ +\xe3\x0d\x92\xea\x828\xdb\x07\x00\x00\x9c\xcc\xb9\x0de\xb5\ +F1\x03$\x00\x5c\x9d\x8d\x91\xed\x85\xc00\x161\xce\ +9`\x93\xdc\xb9\xf8\xb9A\xd2r\xde\x17\x01\xfe\x18r\ +\xfb\xea\x88\xbd\x91\xae\xb3\x0e\x90\x83j\xad\x03\xf8\xe8N\ +\xe7\xdf\x8b\x89A/\xc0n\xdd\xf7\xbdXR\x93s\x5c\ +\x00\x00\x10@\xe9U\xcd\x95\xce-8[\x15\xce\x12F\ +\xca\xe4\xde\x9a^\xd5\xdc\xe0\x14J\xd9jT\xee\xcf\xc6\ +~\x99\xcb%\x8c\xf4\xca9`\xa5K\xc7\x03p\x06C\ +\x161\x8aV9Qg\x1d \x978O\xde\xd9L\x8d\ +\x0c\xa3:\x8bA\x9d\x93\x96&\xb9\x7f\xd2Q\xa1\xcc\x0b\ +\xf1\x5c\x97\x8f\x0b\x00\x00\xb2\x94^\xd5\xbcZ\x99\x99\x1f\ +a-`Nu\xa2\x90Y3\xda\x12 \xbd\xaay\xa5\ +\xdc\xd9\x01*\x14<(aN\xa0\x8c\x01|r\xba\x22\ +&J\x16s\xf5\xdfU\xb5\xd6\x01\x22\xa4Q\xde]\xf9\ +\xa9p\x8e\x0f\x00\x00\x02 \xbd\xaa\xb9:\xbd\xaa\xb9E\ +\xd2m\xca\xcd\x99\x1f\x1f\x97\xd4\xea\x94*\xc3\xe6\x9c\xc7\ +\xaf\xf6 O 9%I\xa3\xbc\xfb;\xb0X\x9c\x03\ +\x02\x9e\xa3\x88\xc9\xa8\xb3\x0e\x90C\xea\xac\x03D\x81s\ +5\xcc\xebm(\x17;\xe3\x00\x00\x00C\xce\xeb\xf1z\ +\xf9\xbb\x05\xb5\x85\x0aI_N\xafj\x1e\xc9m\xd2\x0d\ +\xca\xcdb\xeat\xd6\xc8\xfb\x05\x99\xaf\xb2\xbc\xf5\x1e\x88\ +\x02\x8a\x98\x8c:\xeb\x00\xb9\xc0\xb9\x95%2\xd3B\xad\ +\x0c\xda\x19\xc1\x0f\xb7q\x8b\x12\x00\x006\x9c\xb5`Z\ +\x94\x99\x05\x13%WIZ\x7f\xb6\x0bB>]\x98\x0a\ +\x0c\xe7\x9c\xcc\xaf[\xd2F}\xab\x18\x80\xb3\xa3\x88\xc9\ +\xa8p\xb6\xbbCvj\xad\x03D\xc4J\xf9{\xe5g\ +\xa5\x8fc\x01\x00\x00\xbd|\xcbM\xab\x22T4\x0c\xe1\ +\xb6\xf4\xaa\xe6\x96\xa1.\x0a9\x7f>Q+\xa8V\xfb\ +8V\x858\xb7\x07)\xab`Ak\x00\x00\xfc\xe1\x940\ +wZ\xe7\x08\x98\x0aIw\xa7W5\xafq~\xbdZ\ +\xde\xaf\x93\x124\xcb\x0d\xc6\x5c\xcc\xfb#\xc0\x1b\x141\ +'\xab\xb5\x0e\x10b\xb5\xd6\x01\x22by\xc4\xc6\x05\x00\ + 2(a\xce\xea\xe3\xe9U\xcd\xad\xca\xec\xb0\x145\ +\xd5\x11\x1b\x17\xc8i\x05\xa7\xf9|\x83\xa2\xb9\xe8\xeaJ\ +eV\x22\xc7\xc8\xad\xb4\x0e`\xa8\xc1\xc7\xb1*}\x1c\ +k\xb0\xb9F\xe3\x02\x00\x10\x09\x06%\xcc6I-\xce\ +G\xab\xf3\xd1\x16\xab\xafi9\xf5\x0b\x9d\xdbb\xaa\x9d\ +_V+s^P-\x9b\xf7\x0bQ\x9b\x09s\xc2r\ +\xa3q\xab\x15\xb1\xdb\xc0\x00?\x0cY\xc4\xc4\xeak\x1a\ +\xd2\xab\x9a\xa5\xe85\xf2s\xd2\xab\x9a\xab\x87z\x01\xc2\ +\xe99\xb7\xadD\xf5EqE\xac\xbe\xa6\xc1\xc7\xf1\x96\ +\xfb8\xd6`\xd5F\xe3\x02\x00\x90\xf3|,a6(\ +s\x01\xa91V_\xd3:\xdc\x07\xc5\xeak\xda$5\ +9\xbfl\x1a\xfc{\xcey`\xad\xf3\x11\xda\xdb\xd4\xd3\ +\xab\x9a\xe7\x8e\xe4\xcf\x04\x00\xb2q\xba\x191Q.c\ +V\x8a\xc5IG\xaa\xce:\x80\x11\xbfK\x18\x00\x00\x90\ +c\x9cEh\xbd<\xdfnWf\xc6w\x83\x17E\x83\ +s\x01\xb3E\xd2jg=\x91Ze\xce\xa7\xc3v\x91\ +n\xae2\xb3\x82\x00\xc0s\xa7-b\xa4L\x19\xa3Q\ +\xdevq\xca\x14F)s%\xbf\xda\xf9o\x90W\x80\ +\xaf\xb5\x0e\x10B\xb5\xd6\x01\x86i\x832S+[$\ +\xb59\x9fk\x0d\xd9\xd5\x8f6\xeb\x00\x00\x00\xc0\x1d\xce\ +l\x92\x06\x8f\x0e\x7f\xa2\x80Y\xe3\xcch\xf1\x9csN\ +\xb5F\xd2\x9a\xf4\xaa\xe6\xe5\xca,\xaa\x1b\xc5\xe5\x0e\x00\ +\xe0\x8c\xceX\xc4d\xe3\x94)\x8c:\xf1\xffNA\xb3\ +F\xfeo\xbf6\x5c\x15\xe9U\xcdu\xcct\x18\x9e\x90\ +\xdc\x96\xb4ARm\xc8\x0a\x97\xd3i\x91t\xa3\xc1\xb8\ +M\x06c\x02\x00\x90\xb3\x9cs\xe2\x06ys\x81\xf2\x1e\ +I+-\xcf}b\xf55M\x92\x96S\xc8\xb8\xa6\xcd\ +:\x00\x00\xf7\xf8\xbekR\xac\xbe\xa6-V_S\xa7\ +\xcc\x02aAUk\x1d D\xea\xac\x03\x0c\x83\xe9\x89\ +\x88\xcbZ\x8d\xc6m3\x1a\x17\x00\x80\x5c\xd5 \xf7\xd7\ +TiW\xe6\xd6\xe9\xc0\x5c\x80\x8a\xd5\xd74\xc5\xeak\ +\x96Kz\x87\x82}\xfe\x1ft-F\xe36\x19\x8d\x0b\ +\xe44\xcb\xed\xab\x9b\x0c\xc7>\x9b\x1b\x9d{\x5cqv\ +u\xd6\x01\xce\xa2\xdd\xb9\x22\x93+\x9a\x8c\xc6m4\x1a\ +\x17\x00\x80\x9c\xe3,\xce\xeb\xf6\x0c\xd7m\x92\x96\x07u\ +Vw\xac\xbe\xa6Q\x99e\x0a\xbeb\x9b$\xb4\x1a\x8d\ +\xc6m1\x1a\x17\xc8i\x96EL\xab\xe1\xd8\xc3Qg\ +\x1d \xe8\x9c\xc5\xe5\x82\xbc\xde\x8f\x94c/\x1e\xce\xd5\ +\xad\xb5>\x0f\xbb-(W\xd5\x00\x00\x08;\xe7b\xdf\ +\x1a\x97\x0f\xbbAR\xe0w\xfetf\xc6\xaf\x94t\xb5\ +2\xb3w0L\xce\xcf\xd6\xef\x19E\xf7\xf8\xb5\xbe\x10\ +\x105\x96EL\xd0\xd5Y\x07\x08\x81Z\xeb\x00\x11\xd5\ +\xe0\xf3x\xab}\x1e\x0f\x00\x80\x5c\xb6F\xee^\xc8\xda\ +\xa0\xccL\x986\x17\x8f\xe9)g\xb6\xf2\x5ce\xb2c\ +\xf8\x1ar|< 2(bNo\x8e\xb3\xb8\x18N\ +\xaf\xd6:\xc004Y\x07p\x9b3\xe5\xd8\xaf\x13\x97\ +m\xe2\xb6$\x00\x00\x5c\xe1\x9c[\xbayKR\xe8J\ +\x98\x13\x9c\xd91\xd5\x92\xbec\x9d%D\xd6\xc8\xbf\x99\ +D\x1b\x9c\xdb\xc9\x00x\x80\x22\xe6\xcc\xea\xac\x03\x04U\ +HnK\xcae+\xfd\x1a'\x8c'w\x00\x00\x04T\ +\x83\x8b\xc7jWfW\xc86\x17\x8f\xe9;g\x13\x8f\ +OX\xe7\x08\x03\xe7g]\xe7\xd3p~\x8d\x03D\x12\ +E\xcc\x99\xd5:[\x0b\xe2\xd5j\xad\x03D\x993\xa5\ +\xf7v\x8f\x87\xf9\x0eWB\x00\x00p\x87\xb3@\xef\x1c\ +\x17\x0fY\x97+k\xb8\xc5\xeak\xd6HZa\x9d#\ +\x0c\x9cs3\xafg\x11\xdd\x1e\xf4\xf5\x86\x80\xb0\xa3\x88\ +9\xb3\x0aQ8\xbc\x8aSN\xddj\x9d#\xeab\xf5\ +5\xab\xe5\xdd\x0b\xf1Z\xe7\x0a\x15\x00\x00p\xc7j\x17\ +\x8f\xf5\x95\x5c\xbbX\xe2\xdczM\x193\x0c\xce9\x9a\ +W\x9b7|\xc79\xc7\x04\xe0!\x8a\x98\xb3\xab\xb3\x0e\ +\x10@\xb5\xd6\x01\x90\xe1\xbc\x10\xbb]\xc6\xdc#~\xc6\ +\x00\x00\xb8\xc6\xe5\xd90\xed\xca\xd1\x85\xf4)cF\xa4\ +V\x99s67}\x87\x0bq\x80?(b\xce\xee*\ +g\x9bA\xbc\xa2\xd6:\x00^\xe1\xf2\xbd\xd5_\x89\xd5\ +\xd7\x84\xfe~s\x00\x00\x02f\xa5\x9b\xc7\xca\xe5\xd7i\ +\xa7\x8ca\xcd\x98\xb3p\x16;\xae\x95{\xb7\xaa\x7f\x82\ +\x12\x06\xf0\x0fE\xcc\xf0\xd4Y\x07\x08\x0a\xe7\xb6$7\ +W\xfb\x87\x0b\x9c{\xab\xe7i\xf4\xd3T\xd7J\xba:\ +V_\xb3\xd2\xadL\x00\x00@J\xafj\xae\x96\xb4\xd8\ +\xa5\xc3ms\x8a\x8a\x9c\xe6\x9c\xd7\xb0\x9b\xd208\xb7\ +\x11-Qv\xe7\x80\xf3\x9c?s\x00>\xa1\x88\x19\x9e\ +:\xeb\x00\x01Rk\x1d\x00C\x8b\xd5\xd7\xb4\xc6\xeak\ +\x96+\xf3b\xfc\x1de\xb6\x9e>\x93v\xe7\xeb\xae\x8e\ +\xd5\xd7,w\x16\x00\x06\x00\x00\xeeZ\xe9\xe2\xb1\xd6\xb8\ +x\xac@sfgl\xb0\xce\x11\x06\xb1\xfa\x9a\x16\xe7\ +\x1c\xf0je\xce\xed\xce\xb6\xc5\xf56\xe7\xeb\x968\xe7\ +\x80\xad\xde&\x04p\xaa\x02\xeb\x00\xa3\xd4.\x7f\xb7N\ +\x9e\x93^\xd5\x5c\x9bk\x8b\xa2\x8dR\x9du\x00\x9c\x99\ +\xb3\xca}\x9d$9\xb7\xd5\xcd\x95T-\xa9RR\x9b\ +\xa4\x16Im\xac\x86\x0f\x00\x80/j]\x8f7\xc7\xd9\x8a0J\xea\xb2||\xa3\x0b\x19\ +\x00\x00\x00B\xc1\xd9i3\x9b\x8bX\xa7jq\xf1X\ +a\xb7\xda:\x00\x00d+\x17\x8a\x98F\x831\xeb\x0c\ +\xc6\xb4T\x9b\xc5c\xdb\x9dm\x07\x01\x00\x00\xa2\xa2\xda\ +:@\xae\x8a\xd5\xd7\xb4J\xfa\x8au\x0e\x00\xc8F\xe8\ +\x8b\x18\xe7\xc9\xf8\x1e\x9f\x87\xbd\xd1\xb9\xd2\x91\xf3\xdc\xb8\ +-\xc9\x9d$\x00\x00\x00\xa1Q\xed\xf2\xf1\xe6\xba|\xbc\ +\xb0[c\x1d\x00\x00\xb2\x11\xfa\x22\xc6\xd1h0f\x9d\ +\xc1\x98\x16Vf\xf9\xf8F\x172\x00\x00\x00\x84I\xa5\ +\xcb\xc7\x9b\xeb\xf2\xf1B\xcd\xb9\x10\xeb\xd5Z1\x00\xe0\ +\xb9\x9c(b\x9c\xed\xec\xda}\x1e\xb6\xce\xe7\xf1\xac\xd4\ +f\xf1\xd8m\xdc\x96\x04\x00\x00\x22\xa8\xda:@\x04\xac\ +\xb6\x0e\x00\x00\xa3\x95\x13E\x8c\xa3\xd1\xe7\xf1\x16;\xb7\ +\xed\xe4,gQ\xe2\x8a,\x0e\xd1\xe8N\x12\x00\x00\x80\ +P\xa9t\xf9xW\xb9|\xbc\xd0cV\x0c\x800\xcb\ +\xa5\x22f\x8d\xc1\x98u\x06c\xfa\xa96\xcb\xc77\xb8\ +\x90\x01\x00\x00 \xf2\xd2\xab\x9a\xe7Zg\x08\xa0\x06\xeb\ +\x00\x000\x1a9S\xc4\xc4\xeakZ$m\xf3y\xd8\ +:\x9f\xc7\xf3[m\x16\x8f\xdd\xe6\xfcL\x00\x00\x00\xa2\ +\xc6\x8b\x19,\xcb=8f\xa8\xc5\xeak\x9a\xe4\xff\xf9\ +?\x00d-g\x8a\x18\xc7\x1a\x9f\xc7\xabpn\xdf\xc9\ +9\xdc\x96\x04\x00\x00\x10(\xcb\xad\x03\x04\xd4j\xeb\x00\ +\x000R\xb9V\xc44\x1a\x8cYg0\xa6\x1f\xea\xb2\ +|\xfc\x1a\x172\x00\x00\x00 \xa36\xbd\xaa\xb9\xd2:\ +D\x005Z\x07\x00\x80\x91\xca\xa9\x22\xc6Y\xb4\xeb\x1e\ +\x9f\x87\xbd1\xd7\xee\xd9u^\xe4o\xcc\xe2\x10\x1b\x9c\ +\x9f\x05\x00\x00\x00\xdcQ\xa1\xec\xd7\xef\xcb9\xb1\xfa\x9a\ +6\xb1h/\x80\x90\xc9\xa9\x22\xc6\xd1`0f\xad\xc1\ +\x98^\xaa\xcd\xf2\xf1\x0d.d\x00\x00\x00\xc0\xc9V[\ +\x07\x08\xa8F\xeb\x00\x000\x129W\xc4\xc4\xeak\x1a\ +%\xb5\xfb<\xecJ\x9f\xc7\xf3Zm\x96\x8fot!\ +\x03\x00\x00\x00N6'\xbd\xaa\xb9\xce:D\xd0\x18\x9d\ +\xff\x03\xc0\xa8\xe5\x5c\x11\xe3h\xf0y\xbc9\xe9U\xcd\ +\xd5>\x8f\xe9\x09nK\x02\x00\x00\x08\xb45\xac\x153\ +\xa4F\xeb\x00\x000\x5c\x141\xeeYi0\xa6\x17j\ +\xb3||\x83\x0b\x19\x00\x00\x000\xb4\x0aq\xbe5\x94\ +\x06\xeb\x00\x000\x5c9Y\xc4\xc4\xeakZ$m\xf0\ +y\xd8Z\x9f\xc7\xf3\xca\xca,\x1f\xdf\xe0B\x06\x00\x00\ +\x800\xdb\xe6\xf1\xf1oL\xafj^\xe9\xf1\x18\xa1\x12\ +\xab\xafi\x12\xb7'\x01\x08\x89\x9c,b\x1c\x0d>\x8f\ +W\x11\xf6{v\x9d\xdd\x9f\x16gq\x88{\x9c\x95\xeb\ +\x01\x00\x00\xa2\xac\xd5\x871\xbe\x1c\xf6sO\x0f4Z\ +\x07\x00\x80\xe1\xa0\x88qW\x9d\xc1\x98n\xaa\xcd\xf2\xf1\ +\x8d.d\x00\x00\x00\xc0\xf0\xdcI\x19s\x92F\xeb\x00\ +\x000\x1c9[\xc4833\xee\xf1y\xd8\xab\x9cY\ +%aU\x97\xe5\xe3\x1b]\xc8\x00\x00\x00\x10v->\ +\x8eugzU\xf3\x1a\x1f\xc7\x0b,g\xf7$\x00\x08\ +\xbc\x02\xeb\x00\x1ekPv;\x00\x8dF\x9d\xa4\xd5>\ +\x8f\x995nK\x02\xdc\xe1\xfc[\x1a\xfcQ)\xa9\xfa\ +\x94/\xabVf\xb1\xc5\xc1\xb6\xe9\xe4\xa9\xecmz\xe5\ +D\xbeIR\x9b\xb3\xfe\x15\x02(\xbd\xaay\xb9^\xf9\ +Y\xcfu>N\xa8\xd6\xc9?\xefv\x9d\xfc&\xadE\ +\xaf\xfc\xbc[\xf99\x039\xa1\xcd\xe7\xf1>\xee<\x0f\ +\xd5\xf1\x1c\xa2{\xe4\xff\xf9?\x00\x8cHN\x171\xb1\ +\xfa\x9a\xc6\xf4\xaa\xe6v\xbd\xfa\x0d\x8f\x97\xea\x14\xc2\x22\ +F\xd9/\xd2\xdb\xe8B\x06 T\x9c\xd2e\xb92o\ +\xb4\xab%]\x95\xc5\xe1\xe68\x1f\x83\x9d8\x91\xbc\xcd\ +\x19O\xca,D\xde\xe2|4q\xc2\xed?g\xdb\xd8\ +\xe5\x83>FZbW\xe8\xe4\xbf+'\xfd\xbd\x19\xf4\ +sn:\xf1A\xd1\x0d\x84N\x93\x9c\xe7n\x1f-\x96\ +\xb4>\xbd\xaa\xf9vIk\x22\xfc\xbc\xd1$\x8a\x18\x8c\ +\x82\xf3\xfa^=\xe8S\xc3\xf9um\xac\xbe\xa6\xd5\xc3\ +X/\x1b\x94o\xae^\xb9\xe0\xb3\xfc4_\xde\xe4\xfc\ +\xb7U\x99\x8b\xcc\xe9\x22\xc6\ +\xd1 \xe9\xe3>\x8e7'\xbd\xaayy\x08\xff\xb2\xd7\ +f\xf1\xd8\xf6X}M\x83K9\xe0p\xael\x9d\xc9\ +\x5c\x9d|\xd5\xfdT\x95:\xfd\x13\xd4\x09\xd5:}Q\ +\xd9.i9o\xf4_\xe1\xbc\x08\xd4\xea\x957\xe0\xa7\ +\x16'~X\xec|\xdc\xead\xda\xa6\xcc\x8bm#S\ +\xb2\xbd\xe3\xfc\xec\xeb\x94\xf9\xf9gS\xb8\x0d\xd7\x89\x9f\ +\xf3\xc7\x9d\xf17(\xf3z\xd6\xe8\xd7\x09\x1f\x80\xac\xb4\ +\x1a\x8e}\x9b\xa4\x95\xce\xedJQ,d\x9aF\xf9\xb8\ +\xb9.f\x18\xb5!\xca\x80\xa1T+s\x9ew:\xc3\ +=F\xce\x9d\x03\x0eq\xfe|\xb6_g\xfb\x9a\xbe\x5c\ +\x1e\xadM\x9a\xe5y\xe7\x99.\xf24\x04\xfdg\xeb\xe6\ +\xf7\xee\x1c\xef\xc4\xf9r\x932\xe7RmY\x05tA\ +,\x9dN\xbf\xfa\x93\xb1\x98\xe7\x03\xa7W5\xaf\xd6\xe8\ +\xaf\x14\xdc\x1e\xab\xafY=\xccq\xaa%\xad\x1f\xe58\ +\xa3\xf5\x9dX}M\x9d\xcfc\x8e\x9a\x0b\x7fF\xc3\xfa\ +~\x9d'\xc6\x87\xb3\x18g4\x86\xfdw\xc5\x0f\xce\x82\ +zu\xca\xbc\xd8[\xbc\x89\x1f\x8d\x15Q/\xda\x9c\x9f\ +[\xad\x82\x7f\x85\xad]\x99\x93\x815\xbcYwGz\ +Us\xad2\xfff\x83\xf4\xb3_\xab\xccIT\x83u\ +\x90\xd1p^s\x9a\xe4\xefl\xd5l\x0d\xfbMIz\ +Us\x83\x9c\xa24\xc4\xb2z\x13\xe6\xfep\x9cx]X\x9f^\xd5\ +\xdc\x92^\xd5\xbc2\xe4\x1bK\x0cW\xd3(\x1e\xd3\xe0\ +r\x86SU+\xf3\xfc\x1d\x96\xe7\xbfQ?\x0f\xf8\xa0\ +R\x99?K\xeb\x12F:\xfb\xcc\xa3aq\xce;\x1b\ +\x94\x99Mw\xa7\xbc-a\xa4\xcc{\x91\xdb\x949g\ +l\xb0|^0:\xe7\xbeQ\xd2\xdd\xe9U\xcd\xadV\ +\xefsr\xbe\x88q4\xf8<^\x85\xb2\xdf\x0a\xdaO\ +\xb5Y<\xb6\x9d\xdb!\x22\xa1\xce:\x80_\x06\xbd\x10\ +nU\xe6\xe45,'L\xa7\xbaJ\xd2\xc3N!3\ +\xd7:LX\x0c*`\xeeT\xf0\x0b\xd3\x0aeN\xa2\ +Z\xc3P\xc8\x84\xb8\x849\xe1\x8coJr\xa8\x849\ +a\xc4o\xc2BR\xc2\x9c\xe0G\x19\xd3\xe4\xe1\xb1G\ +c\xb1\xa4/+\xf3\xc6\xab\xc5y\xde\xa86\xce\xe4\x95\ +\xa6\x11~}\xe4g\xff\x9eF\xd8\xde\xd3X\xc8\xaa\x0c\ +:\xe5\xbc\xf3V\xd9\xbcF\xde\xaa\xcc\xf3\xc2j?\x07\ +M\xafj\xae\x0c\xc09\xf7\x1ce.n\xb5\xf8\xfd|\ +H\x11\xe3\x9d:\x831G\xcc\xb9b\x9e\xcd\x9b\x8dF\ +w\x92\x00\xb6\x86x!\xcc\x15W\xc9\xe0\xc55l\xd2\ +\xab\x9a\x97\xa7W5\xb7(\x1c\x05\xcc\xa9\x06\x172+\ +\x8d\xb3\x9c\xc9\x1a\x85\xb7\x849a\xc87%\xceki\ +.=o\x9cP\xa1W\xa6\xff\x0fGXJ\x98\x13\x16\ ++\xfb\xcd\x0a\xce\xa4\xd1\xc3cgk\xb12\xcf\x1b\xeb\ +\x9d\xd9u\x0dN\x11=\xd78\x97[\x9aF\xf0\xb5\x94\ +0\xc8\xca(g\x0fV:\xb7\xab\x05\xe9\xbc\xf36\xbf\ +\x0a\x09\xe7\xbc\xb4U\xc1\xf9\xdeO,v\xbe\xda\xaf\x01\ +#Q\xc48\xf7\x00\xdf\xe3\xf3\xb0W\x85\xe4\xc5\xac.\ +\xcb\xc77\xb8\x90\x010\xe5<\xe9\x06\xe9\x85\xd0\x0b\xbe\ +\xbd\xb8\x86\xc9\xa0\xab1\x0f\xcb\xfbi\xc0^\xab\x90\xf4\ +e~\xce@08\xeb.l\xb3\xce1\x0c\x15\xca\xbc\ +\xfe\xdd\xa9Wf\xcb\xacI\xafj\x0e\xdb\xad\xf6/s\ +\xfe\xec\xaf\x1e\xc6\xc7\x12J\x18\xb8\xa0z$_\xec\xac\ +?\xd7*\x7f7\x94\x19\xae\x13\xb3\x05\xeb\xbc8\xb8s\ +\xe1\xabU\x99\x228\x88\x17gnsf\x93Wz=\ +P\x14vM:\xa1A\xfe\xdf\xe7\xbfR\xde^iq\ +Cm\x16\x8f\xdd\x16\xc2\xdd\xa1\x80\x979oV\x1b\x14\ +\xfe7\xe0\xc3\xf5\xf2\x8b+\xb7\x14\xbe<\x8b\xa1Q\xc1\ +<\x11\xc8\xc6\xcb[\xd8\x06i\xb1r \xa2\x1a\x15\xcc\ +7[gr\xea\xaem\x83w\x1bi\x09\xe2\xe2\xadC\ +\xe1\x1c\x15>\x9a;\x9c/r\xde\xdc\xafV\xf0\x9f\x13\ +*\x94\xb9]\xa72V_\xb3\xc6\xad\x83f\xb9Y\x8f\ +\x9f\xaeR\xe6|\xd9\xd3E\xdd#1#F\x92\x9c7\ +\x1d\xed>\x0f[\xeb\xf3x#\xe2\xb4\xb1\xd9\xbc\x01i\ +t'\x09\xe0?\xe7\xc5`\xbd\xa2S\xc2\x9cP\xa1\xcc\ +\xe2du\xd6A,9\xd3\x81\x1fV\xee\x950\x83\x9d\ +\x98\x055\xd7:\x08\x10ak\xac\x03\xb8`\x8e^\x99\ +1s\xe2V\xa6&g\x8d\x99\xe5a\x9d5\x03\xb8h\ +\xf9\xd9\xbe\xc0y-nR\xf0K\x98\xc1\xbe\xec\xc6\xad\ +:\xce\xec\xe3\x16\x85\xa3\x849\xc1\xf3u\xc4\x22S\xc4\ +8\x1a|\x1eo\x8eSv\x04Um\x96\x8fop!\ +\x03\xe0+\xe7\xc5\xa0I\xe1z1\xf0\xc2\x9dQ\x5c7\ +f\xd0\xcf?L'B\xd9X,\xa9\x85\x1d\xb4\x00\x1b\ +\xce-2~\xef\xde\xe9\xb5\x0ae\xae\x18\xdf\xa6L\xa1\ +}\xc4)}sm\x9d\x19`\xb8\xaa\xcf\xf4\x9b\xce\x0c\ +\xec\x16\x85\xf3\xe2\xdfm\xd9\x5c\xbcs\xbe\xf7V\x85\xf3\ +{\xf7\xb4\x8c\x89Z\x11\xb3\xc6`\xccZ\x831\x87\xab\ +6\x8b\xc7n\x0b\xcb\xd4T\xe0\x84A/\x84A\xd8\xee\ +0\x08\xb2zq\x0d\x9b\x08\xff\xfc+\x94\xd9A\xab\xce\ +:\x08\x10Qk\xac\x03\xf8`\xb1N^g\xa6-\xbd\ +\xaa\xb9\xd1\xd9.\xbb\xda6\x1a\xe0\xb9\x8a\xd3\xbdYw\ +^{\xd7+\xdc3p\xef\x1c\xcd\x05\x1d\xe7{oR\ +\xb8\xbf\xf7\xc5\xf2\xe89\xbe\xc1\x85\x0c\x91\x14\xab\xafiL\xafj\ +^\xa1\xdc|\x82\x0a\x1c\x1f\xdf\x84oS\xa6\xe4m\x1c\ +\xe6v\x99\xaf\xfa\x1a\xe7\xde\xdbZe\xde\xf4X\xcc\xdc\ +\x98\xa3\xcc\x15\xdb\x95\x06c{\xc2\xe7\x12\xa6]\x99\x17\ +\xe8\x86\xe1<\xd7;_\xd3\xaaL\xbe5\xd2\xcb;\xd9\ +\xad\x94?k\xd8\xdc\x9a^\xd5\xacX}M\x9d\x0fc\ +\xe5\x8a\x0d\x92N\xbb\x95e\xac\xbe\xa6!\xbd\xaaY\xca\ +\x9d\xe7\xf73~\xbf\x18\x95\x95\x92\xee\xb6\x0e\x11P'\ +\xb6\xcc\xbem\xd0v\xd9\x8d\xce\xae\xa79!V_\xb3\ +\xd2\xb9\xe0\xe1\xe7{\x10\xf8g\xb9\xf4\xf2ky\xae\xbc\ +\x0e\x0ceMzUs\xe3P\xaf\x0d9\x5c\xc2\x9cp\ +czUs\xad[\xcfK\x91+b\x1c\x8d\xf2\xffI\ +p\xa5\x82\xf3\x06\xa76\xcb\xc77\xba\x90!\xb2r\xf0\ +d=\x90\x9c\x93\x9d&y\xf7&\xbc]\x99\x7f\x0bk\ +\xdcX\xb8\xda)p\x9a$\xadt^\xc8V\xcb\xff\xf5\ +L>\xee\xbc\xb86\xf9<\xae\xeb|.anW\xe6\ +\xefA[6\x07q^\xd8\x1b\x9dRn\xb5\xbc/d\ +\xfc.c\x1a\x94)\x9f\xe6\x0e\xfa\xdc\x5c\x05c\xdd\x9e\ +\x0d:\xf3-8m\x92\xea\xce\xf63\x1e\xf4\xfc^7\ +\xe8\xd3\x95\x0a\xe6n\x11g\xfa\x9e\xdb4\x8c\xefw\x08\ +\xb7+\xb3NB\xe5\xa0\xcfU*X\xdf\x7f\xbb23\ +\x13Z\x94\xf9\xfb\xd8\xe8\xd7\xc0\xce\xc5\x98\xb5\x8a\xde\x82\ +\xe1#ub\xb6\xcc\xad\xe9U\xcd'^ks\xa2\x94\ +\x89\xd5\xd7\xd49\xcf\x11\x941\xd9iU\xe6\xf9\xa6R\ +\xaf\xac\xcdR-\xe3[\x90\x9ds\x8f\x06\xcb\x0c>\xa8\ +P\xe6=\xed\xea\xc1\x9ft\xbe\xf75\xbe\xa7\xf1\xdf\x1a\ +\xb9\xf4\xba\x11K\xa7\xd3\xaf\xfed,\xe6\xc6\xb1\xcf\xc8\ +\xd96u\xb4\xdb\xc7\xde\x1e\xab\xafY\x9d\xe5\xf8\xad\xf2\ +\xf7\xe4\xaf=V_S\xe9\xe3xCr\xde\x9c\x1e\xc9\ +\xe2\x10\x1bb\xf55\xd5\xa3\x1c{\xb92\xdb\x1c\xfa)\ +\xeb\xbf+^q\x9e\xb0*\x87\xf1\xa5\xcb\x9d\xffV;\ +\xffo\xf1\x22\xb36V_\xb3\xfc\xac_\x15 \xce\x16\ +\xc5^\x9d\xec~E\xd2j\xaf\xaf\x14\xa7W5\xafT\ +\xe6\x85\xce\xcf\x9fy\xe8~\xd6\xa7r\x9e\xe7Z\xe4\xfd\ +s\xfc\x06e\xde\xac\xb6xqp\x1f\x7f\xfe+\x9c\xdb\ +&L8?\xaf\xe5\xca\x5c$\xf0\xfb\xcd\x89/\xff\x96\ +\xa5\x93\xbe\xcf\xe5\xb2\x9b\xf9\xb6A\xd2J\x8b\xb2\xd5\xf9\ +\xfe\xab\xf5\xca\xcf\xda\xcfr\xe6\x1ee\x8a\xd9&\xeb\x1d\ +\x1f\x9d5\x06Z\xc4\x9aU\xa3\xd1\xae\xcc\x9b\xdc\x06\xeb\ +\x9fc\xb6\x86\xb9\x03M\xa5^)\x19\x96\xcb\xaeh\x08\ +\xec\xb9\xf4\xa9Ny\x9eY.\xffK\xcfvE\xe3\xdf\ +v\xbb\xa4\xb9'^;#\xf8\xbc\xe6\xcayS\x94\x8b\ +\x985\x92>\x9e\xcd1F\xe1\x1d\xd6m\xbesb\xff\ +\xe5,\x0e1\xea\xbfx\x141\xeep\xfe\x1cW*\xbb\ +u~F*To\xce\xb3|~9\x13O\xdfx\x0f\ +e\xd0\xd5\x15?\xdf\xb4\x5c\x1d\xe6Y1\xe9U\xcd-\ +\xf2\xfe\xcf\xeb\x1e\x8dn\xc6\xc0\x88\xf8\xf8\xf3\x0f\xc4\xcf\ +\xdc\x85\xd7\xa8\x918\xe9D\xd2O\xce\x9b\x855\xf2\xbf\ +x\x9a\x17\x94\xdb\xa4}\xf8\xbb=\xa2\xdb\x05\xfd\x14\x81\ +\xe9\xfb~8\xb1^\xd3\x90\xb7H\xe4*\x9foa=\ +!\xb4\xe7\xd2\xces\xedJ\xe7#*%\x81_n\x8f\ +\xd5\xd7\xac\x1e4\x03=H3\x1f\xbd\xb6-V_3\ +7\xdb\x83Dq\xb1\xde\x13\xd6\x18\x8cYg0\xe6\xa9\ +\xea\xb2||\xa3\x0b\x19\x90\x85X}MS\xac\xbe\xa6\ +V\x99\x85!\xfd\x5c\xe03\x14\x9c\x93{/J\x98\xef\ +(\xb3^B\x8b\x07\xc7>-g\xbc\xe5\xca\xbc\xf1\xf7\ +\xcbj\x1f\xc7r\x95S\xb2{}2\xf0\x9dX}M\ +\xad\x1f'\xff\x83~\xfe\x1b<\x1e\xaa\xd1\xed\xdd\x00F\ +#V_\xb3F\xfe\xfd]\xaf\xb0z\x03\x17\xab\xafi\ +sn\x09\xfb\x8e\x8f\xc3\x06j\xa1\xfdA\x7f\xb7\xbdx\ +\x1d\xbbG\x99\x92mu\x90\xbe\xe7\x13\x9c\x0bZ~\xfe\ +\xecs\xd1be\xca\xac\xd6\xf4\xaa\xe65Ax\xfe\xf2\ +C\xac\xbe\xa6\xd1\xb90\xf6\x09\xeb,a\xe0<\xd7\xae\ +\x96w\xcf5~9\xb1\x09\xc4Z\x05\xe7\xfbX9\xe8\ +\xa2\x82\x97\xe7]\x83\xbf\xf7\xa0\x98s\xb6E\x8b\x87#\ +\xb2E\x8c\xf3\xc2\xec\xf5\x89\xed\xa9n\xb4\xdc\x95\xc4y\ +\x91\xca\xe6\x1f\xca=Q\xba\xea\x10t\xce\x89\x5c\x9dq\ +\x8c Z\xe3\xc11\xb7)3\x9d\xbf\xcd\x83c\x9f\x95\ +s\x22Q+\xffN\xdc\xaf\x0a\xe3I\xads\xa5\xd0\xeb\ +\x99\x8e\xdf\xf1{\x81[\xe7\xef\xddry\xfb\x9a5\xec\ +m)}\xb0\xd2\xaf\x81\xac\xff\x9e;\x7f\x97\xfc:\x17\ +\x09\xdc\xd5J\xe7\xefv\x93\xcb\x87]\xe1WQ\x9a\xa5\ +\x95\xf2\xff<4\x17U(\xf3\xbc\xbf\xd5\xd9\x0e{\xae\ +q\x1e_8\xa55e\xcc09\xc5\xefJ\xe3\x18\xc3\ +\xd1\xae\xcc\xb9\xde\x0aef\xaa\x9e\xd8m\xb1:V_\ +\xb3\xdc\xf9\xa8tv_<\xb1\xf3\xa2\xd5\xf3\xc8\x89\xf3\ +\x067gv\x0e\xdeur\xfc\x10\xdf{, \xdf\xbb\ +\xe4\xc2{\xb0\xc8\x161\x8e5\x06c\xd6\x19\x8cyB\ +m\x96\x8fot!\x03\x5c\xe4\xdc\xea\xe6\xe7L\x89@\ +sn\xdb\xf2b\xba\xee\x1c\x0do=\x1f\xaf\xad\x94\x7f\ +/:+}\x1a\xc7\x15\xce\xc9w\x83\xc7\xc3l\xb0\xda\ +ehP\x19\xe3\xe5\xf6\xb7\x8b\x9d\xdb\xfaL9\x17J\ +\xfc*\x1d\x97\xfb4\xce\x99\xd4\xf95\x90SV\x06M\ +\x8b\x8b\xc72]\xefh$\x06\xfd\x9b\x0e\xca\xd5\xed\x5c\ +p\xab^)d*\xad\xc3x\xcd)c\x824K \ +\xd0\x02\xbe\x85\xfcZe\x9e\xbf*c\xf55u\xb1\xfa\ +\x9a\x86\xb3\xdd.\xec\xcc\x90_\xe3\xac\xddy\xb5l\xfe\ +.\xb8u\xce\xfd\x1dIK\x9c\xd2e\xb5\xf3\xbd\xb5\x9d\ +\xee\x8bO\xf9\xde\xe7\xc9f\x86a\xd6\x17-\xa3^\xc4\ +4\x1a\x8cYg0\xa6[c7\xba\x90\x01\xee[c\ +\x1d @V{x\xec5\x1e\x1e{X\x9c\x17\xa5Z\ +\xf9s\xe2\xbe\xdc\x871\xdc\xd4 o\xef\xffn\x97\xf1\ +\x9f\x89O?\xff\xdb\x9c\xdb\xfb\xac\xad\xf1i\x9c:\x9f\ +\xc69-\xe7J\xed\xed>\x0dW\xeb\xd38#Q\xed\ +\xd2q\xbe\x13\x96\x12\xe6\x04\xca\x18\xcf\xdc\xaa\xcc-K\ ++\xad\x83\xf8\xa0\xc1:@\xc84Y\x078E\xbb2\ +k\x88.\xcf\xe6\xf9\xcb)&\x96+|\xb3\xa4\xd6*\ +\xb3v\xd9\xa8\xd7_\x8c\xd5\xd7\xb4:\x17\xc9\xae\x96\xff\ +E\xdb\xcal\x1e\x1c\xe9\x22\xc6y\x01\xf4\xbbA[l\ +q\x92\xeb\x8c\xc9mI9(\x08\x0bl\x06\x81\xd3J\ +{\xb9x\xdd\x8dn\xdc\x0f\x9a-g\xb6\xc0J\x1f\x86\ +Z\x1c\x96+\x8a\xceU~\xaf\x17.\x0c\xc4\xad\x0e>\ +M\xafn\xf0\xf8\xf8g\xe5|\x9f~\xcc\xfe\x0a\xcam\ +xk\xe4\xcf\x09dm\x00\xff]W\xbap\x8cm\x0a\ +\xd9,\xbe\x13<^+'\xca*$}9\xbd\xaa\xb9\ +% \xe5\xb2W\x1a\xad\x03\x84L\xabu\x80AN\xac\ +e\xd5\xe8\xd6\x01\x9dYR\xefP8\x9eO>\xe1\x14\ +P\xadn\x1c\xccy?T-\x7foW\xaa\xcd\xe6\xc1\ +\x91.b\x1c\x8d\x06c\xd6\x85p\xcc\x06\x172\xc0;\ +LM\xf5\xe7$<\x10\x0b\x02\xfa8\xbd\xb6\xda\x871\ +\xb2\xe2\xbc\xa9l\xf0x\x98\xdb\x83Tx:?\x7f/\ +\xff\xcd\x07\xe2\x16%\xf97+f\xa5O\xe3\x9c\x96S\ +\xf2\xad\xf6a\xa8\x0a\x05`\x16\xd0)\xdc(Q=\xdf\ +\xc1\xccK>.\xca\x1dE\x8b%\xad\x0f\xc8s\x9a\xeb\ +\x9c\xbf\xf7ax\xd3\x1d\x14m\xd6\x01\x1c\x9e-\xfa\xef\ +\x14;un\x1f\xd7E\xed\xca\xdc\x86\xb4\xc6\xed\x03;\ +k*V\xcb\xbfe\x1b\xe6dS\xf4F\xbe\x88q\xfe\ +\xb2\xfa=\x8d\xa9\xce\xe7\xf1\xa4\xec\x1a\xbbv\xebm\xb7\ +\x81aX\xee\xc3\x18\x15\x0aN)\xb9\xda\x871\x96\xfb\ +0F\xb6V\xca\xdb[\x92\xb6)\x00\xb7\xa5\x0d\xa1\xce\ +\xe3\xe3\xaf\x0c\xc0\xcc\x89F\xf9\xf3\x06\xa3\xce\x871\xce\ +\xca\xc7\x82u\xa5\x0fc\x0c\x8bK3\x15\xd6\x06\xa9(\ +\x1d-\xca\x18\xcf\xdd\xe6\xcc\x8e\x99k\x1d\xc4\x03-\xd6\ +\x01B\xa4\xc5:\x80|X\xf4\xdfy\xdf\x16\xc4\xdb\x94\ +\xda\xe5\xcf\x0e\xa4u\xf2\xef\xb9t\xf9h\x1f\x18\xf9\x22\ +\xc6\xd1\xe8\xf3x\x15~\xde\xe2\xe0\x9c\xe8\xcc\xc9\xe2\x10\ +\x8d\xee$\x01\xbc\xe1\xbca\xf4kG\x90\xab\x82p\x8b\ +\x92\xfc\xf9w9\xd7\x871F\xcd9\xa1\xf6b\xab\xf2\ +\xc1V\x07\xf1J\xbb\x0f\x0b\xdaV\xc8\xb8\x80r\xfe\xdc\ +\x1b}\x18\xca\xd7\xd7\xe4\xb3X\xed\xc3\x18s\x9c\x85\xcd\ +\x83`\xb9\x0b\xc7X\xed\xc21\x02a\xd0\xd5\xdc\xafX\ +g\xc9Q\x8b%\xb5\x04\xe8\xef?\xa2g\xad_\x8b\xfe\ +\x07p1g\xbfJ\x18\xbf\xd7T\xac\x1d\xed\x03)b\ +2\xd6\x18\x8cY\xeb\xe3XuY>\xbe\xd1\x85\x0c\x80\ +\x97\xaa}\x1eo\xb5\xcf\xe3\xbd\x8a\xf3\x22\xe3\xf5\x0b\xec\ +\x5c\x8f\x8f\x9f\xad\xd5\x1e\x1f\x7f[\xc0\x17\xff\x5c\xed\xf1\ +\xf1o\x0d\xc0\xd5\xe35>\x8dS\xe7\xd38gS\xed\ +\xd38u>\x8ds6uY>>'f\xc3\x9c*\ +V_\xb3R6\x0bOFA\x85\xa4\x87\x03T\xbe\x22\ +:\xda\xe5\xff\x82\xe9u>\x8fw&+\xfd(aN\ +p.X\xad\xf1a\xa8Q\xdf^K\x11\xa3\x97\x7fP\ +~7\x867\xfax\x82[\x9b\xc5c\xb9-\x09a\xb0\ +\xdc\xe7\xf1\xe6\x04\xe4$\xae\xc9:\x80\x15\xe7\xf9\xf3V\ +\x8f\x87Y\xed\xf1\xf1\xb3\xe2\xd36\xcf\xab=>\xfe\x19\ +Ep\xd1\xdeZ\x9f\xc6\xb9\xd5\xfa\xd63\xe7\xcf;\xdb\ +\x99\x8c\x0d\xd9'\x09\xa6A\x0bO2;\xc6\x1bw\xe6\ +\xea\xba1\x08,\xdf\x17\xfd\xf7\xe9\xcc\x8a\x19\xedm\xb6\x141\xafh0\x18\ +\xb3\xd6\xeb\x01\x9c\xddD\xb8-\x09p_\xadu\x80\x88\ +[\xed\xf1\xf1\xdb\x15\x8e\xe7\xbf\x06\x8f\x8f\x1f\xa5Y1\ ++}\x1agH.\xbc^\x8fT\x9d\x8fc\x0d\xa56\ +\xcb\xc7\xb7\x07|\xc6Z\xd6\x9c[\x95VJ\x9a\xa7`\ +\xddb\x90+nK\xafjn\xb0\x0e\x81H\xf8\x8e\xe1\ +\xec\xbd\x06\xa3qOh\x97\xd1\xeb\x8dS|\xad\xf1a\ +\xa8\xea\xd1<\x88\x22\xe6\x15\x8d\xf2\x7f\xd5\xf1\x95>\x8c\ +Q\x9b\xe5\xe3\xd7\xb8\x90\x01\xc8E7Z\x07PDg\ +\xc48W\xf2k=\x1e\xa61\x88k\xc3\x9c\xca9\xb1\ +\xf3\xfa\xf6\x85:\x8f\x8f\x7fF\xce\x9b\xed(,\xda[\ +\xeb\xf3x+}\x1e\xefTuY>\xbe\xd1\x85\x0c\xa1\ +\x10\xab\xafi\x8d\xd5\xd7,W\xe6v%\x0a\x19w\xdd\ +\x9a^\xd5\xbc\xc6:\x04rZ\xbb\x0c\x9fo}:O\ +8\x13\xeb\xb5\xf6\x1a|\x18c\xeeh\x1eD\x11\xe3\xf0\ +qQ\xc0\xc1\xb2\xda\xf2j\x98j\xb3x\xec6?\xef\ +\xe5\x03\xb2\xb0\xdcbP\x16\xfc3S'owJ\x92\ +\xc2\xf5&\xaf\xd1\xe3\xe3\xaf\xf4\xf8\xf8\xc3\xd1\xe0\xc3\x18\ +f\x8b\xf6\xfaT.\x9e\xcal\xd1^\xe7\xdc'\xdb\xdb\ +\x92\xd6d\x9f$\x5cb\xf55M\x142\x9e\xf8x@\ +n7FnZ\x19\x80\x0b;\x8dF\xe3n\xf3b\x9b\ +\xea\x91pn\xcf\xf2\xfa\x16\xe7\xe5\xa3y\x10E\xcc\xc9\ +\x1a\x0c\xc6\x5c\xe9\xd5\x81\x9di\xce\xd9\xbcYit'\ +\x09\xe0\xb9&\xa3q\xe7\x1a\x8d\x1bu+=>~\xd8\ +\xd6\xc6j\xf0\xf8\xf8A\xd8Uh\x8dO\xe3\xd4\xf94\ +\xce\xa9j\xe5}\xb98\x94:\x831\xdd\x187\xd2\x17\ +\x8a\x06\x152\xf3\x94Y\xff\xc1\xef\x19\xdd\xb9\xe8N\xe7\ +\xbc\x19pSP\x16\xfdo2\x1aw\x8d\xd1\xb8\xa7j\ +\xf4\xf8\xf8\x95\xa3y\x10E\xcc FS\xb7j\x03|\ +\xec\x06\x172\x00\xb9l\xaeu\x80\xa8q\xae\xa4{\xbd\ +\x8eF\xa3\xc7\xc7w\x95\xf3\x86\xd4\xeb7b\xb5\x1e\x1f\ +\xff\x8c|\x5cT\xdfj\xd1\xdeZ\x831%\xbbE{\ +k\xb3||\xa3\x0b\x19B\xcf\xb9e\xa9N\x99\xd7\xa2\ +\x15\xf2ga\xeb\x5c\xd6\x10\x805\xb1\x90[V[\x07\ +p4\x19\x8c\xd9\xae\xe0\xbc\x97l\xf2\xf8\xf8\xa3\x9a\xe1\ +I\x11\xf3j\x0d>\x8f\xe7\xc9\x95F\x17\xa69G\xfa\ +j\x13B\xa7-b\xe3FY\x9d\x0fc4\xf90\x86\ +\xdb\x9a<>\xfe\x8d\xd6\xbb\xec\xc8\xbf\xd7\xe7\x95>\x8d\ +#\xe9\xe5\xdd\x83,\xd7\x9c\xaa\xf3s0\x97\x16%^\ +\x93}\x92\xdc\xe1,\xea\xdb\x10\xab\xaf\xa9\x96\xb4D\x99\ +\x9d\x96\xd8\xfaz\xe4*D\xc9\x07\xf7\x04e6\xcc\x89\ +%8\xfc~NX\x13\x80[\xb2Nh\xb1\x0e0\x14\ +\x8a\x98Wk0\x18\xb3\xce\x83c\xd6*\xbbi\xcek\ +\xdc\x89\x01\xf8\xa2%b\xe3FY\xad\x0fc4\xf90\ +\x86\xdb\x9a|\x18\xa3\xd6\x871N+\x87\x17\xed\xad\xf5\ +y\xbcS\xad\xf4y\xbc\xda,\x1f\xbf\xc1\x99!\x85!\ +\xc4\xeakZb\xf55+c\xf55s\x95YK\xe6\ +;\xa2\x94\x19\x89\xc5lk\x0d\x974X\x078E\x8b\ +\xcf\xe35\xf8<\xdei9\x85\x90\xa7\xe7\x0f\xa3Y\xf7\ +\x95\x22\xe6\x14>N\x7f\x1e\xcc\x8b\xa9\xd0\xb5Y>\xbe\ +\xd1\x85\x0c\x80/\x9c\xdb\x0a-\xee\x91o3\x183\xb2\ +|\xba-i[H\xdf\xe4\xb5\xf80F\xad\x0fc\x9c\ +M\x83\x0fc\xf8\xbd&\x8e\x9fc\x0d\xc5\xefE{k\ +\xb3||\x83\x0b\x19\x22\xc1YK\xa6\xce)e\x98)\ +3|\xb7\xf9\xb0\x99\x06r_\x83u\x80S\xb4\xf88\ +\xd6=\x01<\x97j\xf1\xf8\xf8\x95#}\x00E\xcc\xd0\ +\x1a\x0c\xc6\xacs\xeb@\xce\xf4\xf1l\xa69s\xb5\x09\ +a\xd4\xe8\xf3x\xed\xdc\xbe\xe7\xbbZ\x1f\xc6h\xf1a\ +\x0c\xd79e\xa4\xd7\x82\xb0e\xfb\x1a\x9f\xc6\xa9\xf3c\ +\x10\x97v\x0frC\x9d\x1f\x838\x05W\xb6\x8b\x127\ +f\x9f$zN\x99)3O\xd2'\xc4\xceKg\xb2\ +\xc6:\x00Bmm\x00\xdfK\xb5\xfa8V\xa3\x8fc\ +\x85\x16E\xcc\xd0\x1a\xe5\xff\xd5\xf5:\x17\x8fU\x9b\xe5\ +\xe3\x1b\x5c\xc8\x00\xf8\xad\xc1\xe7\xf1\x1a}\x1e\x0f\xfel\ +S\xde\xe2\xc3\x18^\xf1|\xa1N\xeb-\xdb\x9d\x13\xdb\ +{|\x18\xca\xafE{\xeb|\x18c8\xfcZ\xb4\xb7\ +6\xcb\xc7\x07\xf1*k\xe88\x8b\xfc\xae\x89\xd5\xd7,\ +\x8f\xd5\xd7\xc4$\xbdC\x99\xd92,\xf6\xfb\x8a\xab\x02\ +\xb0[\x1c\xc2\xab\xd1:\xc0\x10Z}\x1a\xa7=(k\ +\xe3\x04\x1dE\xcc\x10\x9c\xfb\xc8\x1a}\x1e\xd6\xcd\xa9\xc1\ +\xb5Y>\xbe\xd1\x85\x0c\x80\xaf\x9c\x19\x01~^\xddk\ +\xf0q,d\x5c\xe5\xc3\x18M>\x8c\xe1\x95V\x1f\xc6\ +X\xee\xc3\x18g\xd3\xe0\xd38+}\x18\xa3\xd6\x871\ +\x86\xab\xce\xcb\x83\xbb0[W\xe2\xfc\xc4\x13\xb1\xfa\x9a\ +Fg\xb6L\xb52\xb3eV\x88\xb5e\xa4\xe0\xecx\ +\x83\xf0i\xb4\x0e`\xa8\xd1:\xc0i4Y\x078\x15\ +E\xcc\xe95\x18\x8cY\x97\xed\x01\x5c\xd8}!\x88S\ +\xe9\x80\xe1Z\xe9\xd38k}\xba\x15\x04\x0e\x1fgb\ +\xb4\xf84\x8e\x17Z|\x18c\xb9\x0fc\x9cQ\xac\xbe\ +\xa6Q\xfe\xbcA\xac\xf3\xf2\xe0.\xed\x1e\xe4\xa6\x95\x1e\ +\x1f\xbf6\xcb\xc7\xb7+\xb8'\xf89\xc3\x99-\xd30\ +hm\x99y\x8a\xee\x8c\x999\xcc\x8a\xc1(\x04u\xad\ +\xb9\x16\x9f\xc6i\xf2i\x9c\xd0\xa3\x889\x0d\xe7M\x96\ +\xdfW\x02j]\x98\x1a\x5c\x9b\xe5\xe3\x1b\xb2|<`\ +\xc6Y\xb3\xe5v\x1f\x86Z\xe9\xc3\x188\xd9r?\x06\ +\x09\xd0V\x8b\xa3\xd1\xea\xc3\x18~\xccJ\x1a\x8e\x06\x1f\ +\xc6\xf0z\xd1\xdeZ\x0f\x8f=\x1a^/\xda\xbb2\xcb\ +\xc77\x86\xfc\xdfg(9\xc5\xcc\xe0\x193\xe3\x95\xd9\ +\x8d\xe9vEc\x8d\x99\xd5\xd6\x01\x10:-\xd6\x01\x86\ +\xe2\xe3\xf3g\x93O\xe3\x84\x1eE\xcc\x995\xf8<^\ +\x85\xb2?1\xab\xcb\xf2\xf1\x8dY>\x1e0\x15\xab\xaf\ +Y\xad\xcc\x94j\xaf\xac`\x91^\x13\xd5>\x8c\x11\xf6\ +7\x15\xad~\x0c\x12\x90\xddD\x1a|\x1a\xa7\xce\x8b\x83\ +:\x17]j\xbd8v\x96\xea\xbc8\xa83[7\xdb\ +E\x89\x1b\xb3O\x82l\xc5\xeak\xda\x9c\xdd\x98V\x0f\ +Zc&\x97\x8b\x19\xbfw\x15C\xf8\xb5X\x070\x14\ +\xd4\xd9@\x81D\x11sf\x0d\x06c\xd6\x8d\xf6\x81.\ +\x9c\xe8\xdc\xc3\xd5&\xe4\x82X}M\x9d\xbc)c\xbe\ +c\xbd\x00YzUsezU\xf3r\xe7\xb6\x86:\ +\xcb,>\xab\xb6\x0e\x10\x02\xad>\x8d3\xd7\xa7qN\ ++\x07\x16\xed\xadU\xf6\xbb\x07y\xc1\xabE{k\xb3\ +||\xbbsK\x1a\x02h\x88b&\xd7ne\xaa\xb3\ +\x0e\x80Pi\xb2\x0e`\xa8\xc5:@\x98\x14X\x07\x08\ +\xb2X}MkzU\xf3Z\xf9;\x15\xfb\xaa\xf4\xaa\ +\xe6\xb9\xa3l\x13k\xb3\x1c\xbb1\xcb\xc7\x03\x81\x11\xab\ +\xaf\xa9K\xafjn\x95t\x9bK\x87\x5c\xe1g\x09\xe3\ +\xcc:\x98\xabL\x01Q-\xa9R\xc1\xb9-\xc4\x82\x1f\ +ki4\xf90\x86g\x9c\xd7,?\x86\xaaV0^\ +/\x1a\xe4\xcf\x96\xda+\xe5\xfe\xed\x88\xb5.\x1f\xcfM\ +ur\x7f\xeb\xde\x95Y>\xbe\xc1\x85\x0c\xbeJ\xafj\ +^\xa3\xe1\x17\xc8kr\xa9hr\xbe\x97F\xe9\xa4\xd9\ +_\xcb\x15\xdc\x02\xf2lj\xd3\xab\x9a+\xb9X\x89a\ +j\xb5\x0e`\xa8\xc5:@\x98P\xc4\x9c]\x83\xfc\x7f\ +\xf3\xb3R\xa3;i\x19\xcdc\x06k\xcc\xf2\xf1@\xa0\ +\xc4\xeakV\xa7W57*\xf3\xa6b\xb4\xff\x8e\xd7\ +JZ\xe9\xe5\xedH\xce\xb4\xe7j\xe7c\xae\xa2]\xb8\ +\xbc\x0a\xd3\xc2\x03\xa7\xda:\x80\x94y\xb3\x97^\xd5\xbc\ +M\xde\x97tur\xb1\x88qaQ}\xaf\xad\x94\x8b\ +E\x8cS*g\xfb3j\xc8>\x89\x7f\xd2\xab\x9a\x1b\ +$\xdd:\x82\x874)G\xcf\xc1\x9c\xf2\xa2\xc1\xf98\ +\xf1\xf7\xe1\xff\xb7w\x07\xd9m\xe3\xca\x02\x86K\xe7\xbc\ +y|W\x10\xdd\x15Dw\xaaI\xabW\x10\xf5\x0a\xc2\ +\xac\xa0\xd5C\xbdI+#\x0d\x9bYA#+hf\ +\x05-O\xf4\x86W^\xc1\x95Wp\xad\x15\xf0\x0d\x08\ +\xc5\x8ac[\xa2\x00T\x81\xe4\xff\x9d\xe3\x93n\xc7D\ +A\x0eE\x81\xc5\x020\xf7_\xa1\xd3\xd5\xb4\xbc\x91&\ +\x91T\xd9v\x03]\xc0\xd4\x1c\x5c\x8aD\xccy\x954\ +\x03\x12\xcd\x0c\xfe\x5cZ\x0e\xfa\x22\x0ct\xbe\x90\xe9G\ +\x1f\xf9\x04\xca\xcc\xdf\xcc\x17r\xd9\x13\xb9\xe3\xee\x1c.\ +\xf6\xeeH\xfe&l\xe6\xbf&\xd2\x9d\x81\xa8\xa5\x1b\xa5\ +8{\xa58)iTq\xde$n\xbf\x8dRD\xfe\ +H\x1c\xe3M\xbd\xdc\x16\x11+\xe2\xe6\x91\xdaI\xe5m\ +\xbd\xdc\xce\x22^\xfb\x8a\xc0\xe3\xef\xbb\xb4.\xd7\x15I\ +\x18\x91\x0cv#\xd3\xe2\xff-w\x22\xb2\xf2\x9f\x87s\ +i^\x7f\xce\xc9I\x91\xa6\x9f\x95q\x1f\x80\xdc\xed\xac\ +;\xd0%$b\xce\x18\xad\xa7\x0f\xfe\x89z\xdb\x0f\xd5\ +\x10o\xeb\xe5v\xde\xb2L\xb5\x08\x8c\xd9&\x16\xd09\ +\xfe\xa6b#\xf2-q9\x91\x1f\xd7\xba\xd8\x8b\xc8>\ +f\xf2\xc5\xc7\x9a\x9d|u\xb1,\xdb\xdaD)\xce^\ +)N\xd7\xe5T\xb1\xe5$}\x22F\xa4\xf9\x8cu\x11\ +\xdb\xca]!\xf1\xa6\xea\x15\x81\xc7\xbb\x08}P\xe1\x13\ +\xfe\xd7\x8c\x17'q{\xd2\x0d\xber\xa0\x14\x91\xf2d\ +\x0a\xd3B\xf2|@1\xb7\xee\x00:\xa1\x8f\x0bV\xb7\ +\xf1`\xdd\x81.!\x11s\x99Rt\x131\x22\xed3\ +\xef\xf3\x80X,\x82\x87A9y\x22\x17\x9d\x1fL\xce\ +\xe4\xf1)\x9f\xc6\xda&\xc0 \xf9\x87%_$\xfdg\ +t\xc8\xfam\xdf\xf8\xc4l\xe8M\xe6]\x846\xce\xf9\ +P/\xb7\x8b\xd0JY\xbf\xa8xh\xf2\xd9\x05\x1e\xdf\ +\x05o\x86\xbe\x06\xc9\xe9\x14&_)SH\x93\x94\xc9\ +\xe5\xe1\xc5\x9bz\xb9\x9dt\xa9:\x0b@\xde\xd85\xe9\ +\x02\xfe\xa2{\xaf\x1c\xf6\xe2\x9d\x0b\x22LK\xaa\x02\x8e\ +\x05\x06\xaf^n\xc7\xf5r\xbb\xa8\x97\xdb\x8d\x88\xfcW\ +D\xfe\x92\xe6\xc6\x90$L\x1c3\xeb\x0e\xe0{\x89v\ +\x12\xba\x96S\x8a\xb3\x88\xd0F\x11x\xfcA\xf4\x9e\xcc\ +\x17\x11\xda\x98\x07\x1e\x7f7\xa0\xf5\x16f\xd6\x1d\xc8\xc5\ +h=\xdd\xfb]\x98nD\xe4\xa3\xe8\x8f\xc1_2\xb1\ +\xee\x00\x80\xfe \x11s\xb9\xd2 \xe6\xfc\xc2\x9f+\x02\ +\xe3T\x81\xc7\x03\x83s\x92|\xd9\x89\xc8\x7f\xa4\x99\x1e\ +\x91\xd3\x94\x0d\xb4\xb7\xb3\xee@\x04{\xa58c\xa58\ +g\xf9\xa9\x84\x1a7jE\x846\xe6\x81\xc7;\x9f\x98\ +\xd0(\x7f_\x84\x1c|2\xd5$\x84\x0b<\xbeK&\ +\xd6\x1d\xc8\xd1h=u\xa3\xf5t,y$d&\xc6\ +\xf1\x01\xf4\x08\x89\x98\xcbU\x061\x17\x17\xfe\x5c\x11\x10\ +\x83iI@\x0b\xf5r[\xf8u\xa3\x8e\xc9\x97\x1c\xe7\ +\xb2\xe3\x0a=\x99\x16\xb0\xb7\xee\x80\x91R!\xc6\x1b?\ +\xd5\xe6*\xfe\xd8X\xbb\x07\xb9W~&\x96\xb7!\xaf\ +W\xe2lU\xec\x02\x8f\xef\x92\x99u\x07rv\x92\x90\ +\xf9d\xd8\x8d\x89al\x00=C\x22\xe6B\xfe\x09\xd4\ +W\xe5\xb0\xef\xce\x95\x7fG\x98\x7f\xed\x02\x8e\x05\x06\xc1\ +W\xbf\xb8z\xb9}\x10\x91?%\xff\xdd\x1d\xfa\xe6\xc6\ +\xba\x03\xc8\x9eS\x8aS\x04\x1c;\x0f\x8c\xfdm\xf7 \ +\xbf\x83\xd3!\xb0\xbdK\x14\x01\xc7\xce\x03c\x7f\xedI\ +r\xf4RTT^`\xb4\x9e\xaeD\xe4_\xd2\xac\x95\ +\xa4mb\x10\x13@O\x91\x88i\xa72\x88\xb98\xf3\ +\xf7\xf3\xc0\xf6]\xe0\xf1@o\xd5\xcb\xed\xdc\xaf\xfb\xf2\ +\x1fi\xd6|\xc9e\xd1\xc0\xa1\xa1\xea\x08\xaf\xf27\xec\ +_\x14B\xbd\xbff}\x9cH\xd3t\xca'\xff\xef\x02\ +\xdb\xbbD\xc8\xeb\x0dMXW\x81\xc7w\x8e\xdfu\x09\ +g\x8c\xd6\xd3\xddh=\x9d\x88\xce{\xfe\x14c\x00\x00\ +\xd1\x90\x88iA\xf1\x09\xd4\xa9\xe2\xcc\xdf\xcf\x03\xda\xbe\ +g\xf5w\xe0G~\xfa\xd1^\x9aEwyJ\x09\xfc\ +hf\xdd\x81g\x94Jq\x8a+\x8e\x99K\xf8M\x5c\ +\xf5\xe4\xff\xcb\xc0\xf6.U(\x1ds\xea\xe0\xc7\x5cC\ +3\xb3\xee@\x97\x8c\xd6\xd3B\x9a\xb5c\xd4\x90,\x03\ +\x10\x0b\x89\x98\xf6*\xe5x/\xceI\x8f0-\xa9\x0a\ +8\x16\xe8\x9d\x93\x04\xcc\x9f\xc2\x8eG@\xa7\xf8\x07\x0b\ +\x1a\xd3\x15\x8a+\x8e\x99\x07\xc6\xfca\xf7 \xc5E{\ +\x0b\xa5cNU\x81\xc7w\xd5\xcc\xba\x03]\xe3\x13v\ +\xaa\xc9\x18\x00\x88\x81DL{\xa5A\xcc\xe2\x85\xef\xcf\ +\x03\xdbu\x81\xc7\x03\xbd@\x02\x06\xe8\x8dR!F\xab\ +El\xfd\xd4\x9e\xd0i:\xe5\x0b\xdfw\x81\xed^\xe2\ +\x9a\xd7\x1b:\x9d\xb0\x0a<\xbe\xab~\xf2\xd3\xba\xd0\x82\ +O\xc6X.\xe2\x0b\x00\xad\x91\x88i\xc9?q\xd3\xde\ +>\xef\xfd\xd3\x0ff\xff\xff\x1f\x02\xda\xbccZ\x12\x86\ +\xae^ng\x1dJ\xc0\xdcI3\x1f\xfe\x93\x88\xfc,\ +\x22\xff\xf4\x7f\x02xTI~\x8b\xd8\xce#\xc4\xab\x9e\ +\xfbf\xa6\x8b\xf6\xb6\xf9\xd9\xe7\xdc\x0f|7\xc7\xb9u\ +\x07\xba\xc8/\xe2\xab\xb1\xa9\xc6L!\x06\x80\x01\xf8\x1f\ +\xeb\x0etT)\xcd\xb6\xb5\x9a\x0a\xf9\xfe\x89\xd8<\xb0\ +=\x17x<\xd0Y\xfe\x89m)\xf9\xee~t/\x22\ +\x1b\x11\xd9\x89\xc8n\xb4\x9en\x9e\xfb\xa1k\x16\xd1\x04\ +\xfal\xb4\x9e>\xf8\xed\xe5C\x1eT\x5c\xe2}\xbd\xdc\ +\x8e\x9fN\x17zA\x11\x18\xeb\xdc\xeeA\xa5\x88\xfc\x1e\ +\x18\xe3\x1c\xcd\xd7[\x05\x1e\xdfusa\x8cv\xadB\ +D\xf6\xc2\xa2\xba\x00:\x80\x8a\x98\xebT\x061\x8b'\ +\xff?\x0fl\xaf\x0a<\x1e\xe8\xa4z\xb9]H\x93\xe0\ +\xc8)\x09s'\x22\x9fE\xe4\x17\x11\xf9\xc7h=\x1d\ +\x8f\xd6\xd3b\xb4\x9e\x96/%a\x80\x17\xdc(\xc5\xd9\ +(\xc5\xb9F\xa9\x14\xa78\xf7\x03\xf5r;\x91\xf0i\ +:.\xf0\xefc)\xce\xfd\x80\x7f\xbd\xa1\xd5\x85.\xf0\ +\xf8\xae\xfb\xa1\x0a\x1a\x97\xf1\x09\xcb\x95q7\x00\xe0\x22\ +$b\xae\xe0\x9f\x08i\x94?\x9ez\xe7\x0781\xb6\ +\x85\xfca\xd1?\xa0\xef\xea\xe5v\xec\xb7\xa2\xfeC\xec\ +\x9f\x96\x1d\xa4\x99f\xf4Q\x9a\xc4\xcbd\xb4\x9e.F\ +\xebiu\xe6\xc9\xf7PiO\x07\xed\xb2\x89u\x07\xac\ +e\xb6h\xef%?\xf3\x9a\xc3\xb9i:\x8ac\x92\x22\ +\xd2\xcf\xbc\x86\xdd\x1c\x1bs\xeb\x0et\xd5h=-\x85\ +\xcf\x0c\x00\x1d@\x22\xe6z\x95A\xcc\xc2\xff9\x0fl\ +\xc7\x05\x1e\x0ft\x8a_hr'\xb6[Q\xdfKS\ +\xf5\xf2\xf3h=\xbd\xf1\x15/\x8e\xc4\xcbE\xf6\xd6\x1d\ +@\xe7\x94\x0a1.Y\xc4\xf6\xdc\xdf\x9fS]\xf8s\ +.0\xce%.y\xbdE`\x8c2\xf0\xf8\xbe\x98[\ +w\xa0\xe3J\xeb\x0e\x00\xc09$b\xae\xa4\xb8@\xde\ +\xa9\xe2\xc9\x9f\xd7\xaa\x02\x8f\x07:\xa3^nK\x11\xf9\ +Kl\xaa`\x8e\x95/\xbf\xf8\xe9F\x0b\xa6\x1a\xe5\xab\ +^ng\xd6}@\x1c9,b\xeb\x93\x16*\xd3t\ +|\xd5\x8cF\x15@\xf1\xd2_\xf8\xd7\x1bz\x9d\xad\x02\ +\x8f\xef\x8b\xf7\xac\x01\x16\xa4\xb2\xee\x00\x00\x9cC\x22&\ +L\xa5\x1c\xefM\xbd\xdc\xae$\xec\xa9\xfeW\xa6%a\ +\x08\xea\xe5\xf6\xc6/\xda\xf9\xabA\xf8{i\xa6\x1d\x1d\ +\xd7z\xa9\x0c\xfa\x00\xa4\xb4\xb7\xee\xc0\x05\x9cB\x8c\xd7\ +n\x98\xe7\x81m\xdf\xb7L\xdc\xba\xc0x\x97H\xf9z\ +\x996\xfd\xbd\xc2\xba\x03]\xe5\xcf\xa3T\xd3\x13\xf7\x89\ +\xda\x0500$b\xc2\x94\x061\x17\x81\xc7W\x11\xfa\ +\x00d\xcd\xaf\xa3\xb4\x11\xfd\x05yo\xe5\xb1\xfa\x85i\ +G\xf1\xec\xac;\xd0!c\x8d \x1d\xb9a.\x95\xe2\ +\x14O\xbf\xe1\xafA\xf3\xc0v\xab\x96?\xef\x02\xe3]\ +\xaax\xfa\x0d\xffzCw\xaa*\x03\x8f\xef\x9b\xc2\xba\ +\x03\x1dW%jw\x9f\xa8]\x00\x03C\x22&\x80_\ +PN{A0\xca~\x81W\x9c$aBw*i\ +\xe3^\x9a\xb5_fT\xbf$\xf1`\xdd\x81\x0e\x09\x9d\ +\x0a\xd3\x1b>Yt\xab\x10\xaax\xe6{s\x09\xff\xbc\ +.\xdb\xfc\xb0\xf1\xa2\xbd\xf3\x08\xedV\x11\xda\xe8\x93\xb7\ +\xf5r[Xw\xa2\xc36\xd6\x1d\x00\x80\xd7\x90\x88\x09\ +WZw\xa0\x85\xaf<\xa1G\x9f\x19$a\x0e\x22\xf2\ +\x9b\xaf\x80\xd9(\xc5\x1c\xa2\x9dR\x9c\x99R\x9c\xae\xd3\ +Hn\xc4\xe2\x14b<\xb7\x88\xed\xd3\xffo\xeb\xdai\ +:.0\xee%R\xbc^\xc6'\xcf+\xac;\xd0a\ +\xfbD\xed>$j\x17\xc0\xc0\x90\x88\x09\xe7\xac;\xd0\ +Be\xdd\x01 \xb1J\xf4\x920\xb7\x222\xf1[e\ +\x22\xad\x07\xeb\x0etA\xbd\xdcN\xac\xfb\x90\x1b\x8bE\ +{\xfd\x1a*\xa1\xd3\x22\xdd5\x07Y,\xdak\xf9z\ +\x07\xe0'\x16\x11\xbfN\xaa\xe9\x93l\xaf\x0e \x16\x12\ +1\x81\xfc\x13\x1c\x8dR\xe0P\x07!\x11\x83\x1e\xf3\xbb\ +#imO\xfd\xc9OC\xda+\xc5\x1b4\xc5j\xa3\ +\xb1R\x9cTn\x94\xe2l\x94\xe2\xc4R*\xc48]\ +\xc4v\x1e\xa1\xbd*\xe0X\x17!\xfe91_\xef\x81\ +)\x9d\xafZYw\x00\xdfh\xef\x96\x0a\xa0\xc7H\xc4\ +\xc4\xe1\xac;p\x81\x8a\xb2_\xf4\x95/\x93\xd7\xda\x1d\ +\xe9\xe3h=])\xc5:gl\xdd\x01E\x1a\x03\xe0\ +\xb1B\x8c\x94\xc6Jq\xf6JqbqJq\x8a'\ +\x7f^+twC\x17\x18\xffR\xc5\x93?\xafU\x05\ +\x1e\xdfwT\xc5\xe4cg\xdd\x01\x00\xfdA\x22&\x02\ +\xff$'\xf7,ye\xdd\x01 \x05\xbf.\x8cS\x0a\ +\xf7\xd1Ou\xc8\xc5\xd8\xba\x03\x8av\x0a1\xc6\x0a1\ +R\x1a+\xc5\xd9+\xc5\x89Bs\x11[_%\x12:\ +=\xb2\x0a9\xb8\x83\xaf\xd7\x85w\xa5\xf7V\xd6\x1d\x80\ +\x88\x90\x88\x01\x10\x11\x89\x98x\x9cu\x07^A\xd9/\ +\xfa\xccI\xf8\xee$\x97\xf8\x9cY\x12fh6\x0a1\ +\xba\xbe\xe3\xd0D#HG\x17\xa6v\x0a1\xdeJ\xf8\ +C\x8fX\xd3\x88]\x846\xce\x89\xf1z\xef;z>\ +i\xfb\x89\x1d\x94\xb2\xb0\xb7\xee\x00\x80\xfe \x11\x13\x8f\ +\xb3\xee\xc0+*\xeb\x0e\x00)\xf8r\xed\xd0E\x22/\ +q7ZO\x17\x0aq\xda\x1a[w@\xd1N#H\ +\xc7\x17\xbc\xbdQ\x88q\xa7\x10#:\xc5El\x83\xab\ +abL#\xee\xd2\xeb\x8d\xd1\x89\x81X\xf9\x0aP\xd8\ +\xd9Yw\x00@\x7ft5\x113\xb1\xee\xc0S~\x15\ +\xf5\x5c\x07\xa8\x95u\x07\x80DVJq\x16Jq\xda\ +\x1a[w@\xd1F)\xceX)N\x0a\x1a\x8bUo\ +\x14b\xa4\xe2\xac;p\x81*b[.b[\xa98\ +\xeb\x0et\xc8[\xc9\xf7\xb3(;'\x8bIGC\xf5\ +\x16\x80\x98\xba\x9a\x88\xb9\xb1\xee\xc0\x0b\x9cu\x07\x9eq\ +\xcf\xb4$\xf4\x91\xaf\x86\xd1\xb8\xf1\xfc\x92\xf1\xe0kb\ +\xdd\x01-\xbeJ@#\xd9=Q\x88\x11\x9db%\xcf\ +F)N\x0a\xce\xba\x03g\xc4\x9eF\xec\x22\xb6\x95\xc2\ +\x1d[\x01\xb7\xf6{\xc7\xab\xf64\x8d#\xb7w\x1b\xb9\ +=\x00\x03\xd7\xd5DL\xae\x9cu\x07\x9eQYw\x00\ +Hd\xa5\x14\xc7)\xc5i\xc5?\xed\xd3X\x1b''\ +\x1b\x85\x183\x85\x18)L\x94\xe2l\x94\xe2D\xa7\xb8\ +\x88\xed\xb5\x5c\xcc\xc6\x86\xf6z\x07\xc4Yw\xa0#&\ +\x91\xdb\xab\x22\xb7\x07`\xe0H\xc4D\xe4\x9f\xd8\xe66\ +\xe8q\xd6\x1d\x00b\xf3I\x08\x8dj\x98\x9c\x17\x92\x9c\ +Yw\xc0@\xa5\x10c\xa2\x10#\x85\x89B\x8c\xbb\x18\ +\xeb\x97\x18+\xad;\xf0\x0a\xd7\x916c\xa9\xac;\xd0\ +Q\xef\xea\xe5ve\xdd\x89\x0e\x98Dno\x13\xb9=\ +\x00\x03g\x99\x88\x19\x07\x1c{\x13\xa9\x0f)8\xeb\x0e\ +\x9c\xb8\xa7\xec\x17=5W\x8aS)\xc5\xb9\xc6\xcc\xba\ +\x03\xda|R\xec\x908\xcc\x9b\x8e\x96\xfe\xcf\x14b8\ +\x85\x18I\xf9sHc\x11\xdb\xb6\x92|^+.\xda\ +\xdb\xd6\xad\xaf\xd8\xc1u~\xf7\xd3s\xf1\xb2Y\xc4\xb6\ +\x18O\x03\x88\xae\xab\x89\x98\xd0U\xfa\x93\xf1\x83\x9e\xd4\ +7\x0a\x97\xaa\xac;\x00$R(\xc5\xd9(\xc5\xb9\xc6\ +\xdc\xba\x03F*\x85\x183\x85\x18\xd1\xf8\x9dT4>\ +\x17+\x85\x18\x1aJ\xeb\x0e<\xa3L\xd8\xb6K\xd8\xf6\ +\xb5\x9cu\x07z\xa0b\x17\xa5\xe7\xf9d\xfa\xdb\x88M\ +V\x11\xdb\x02\x00\x11ajR*\xce\xba\x03^i\xdd\ +\x01 \x11\xadd\xecF)N+\xf5r;\x97\xe1\xad\ +\x0fs\xe4\x14b\xcc\x14b\xc44W\x88q\xd7\xa3\x0a\ +\x06g\xdd\x81gT\x09\xdbv\x09\xdb\xbeVe\xdd\x81\ +\x1ex#\x99~Fe\xa0\x88\xdc\x9e\x8b\xdc\x1e\x00\x98\ +&b\x82\xd6w\xc8\xbc$\xd3Yw@\xfa5h\x06\ +\xbe\xd1|\xefg\xbc\x1eFa\xdd\x01+JSK\xde\ +'n?\xb6\x99B\x0c\xa7\x10C\x85\x7f_\x7f\xb1\xee\ +\xc7\x89\xa4\x9f\xd7\x19.\xda\xfb5\xe3kk\xd7\xbc\xab\ +\x97[g\xdd\x89\x0c\x15\x11\xdbbw/\x00I\x98$\ +b\xfcB\x9b\xa1&\x11\xdaH\xc2_\xb05\xb6Y}\ +\x8d3\x8e\x0f\xa42Q\x8a\x93\xe5V\x95\xfe\xfa\xd9\xb5\ +DAl.u\x00_u\xd4\x15s\x85\x18N!\x86\ +&g\xdd\x81\x13\xa5B\x0c\xa7\x10\xe3R\xce\xba\x03=\ +\xf3\xa1^nK\xebN\xe4\xa2^n\x0b\x89[1Z\ +Fl\x0b\x00\xbe\xb1\xaa\x88\x99d\xd2FJ\xce8~\ +e\x1c\x1fH\xe5\xc6\xba\x03\xc6V\xd6\x1d\xc8@\xa9\x10\ +\xa3P\x88\x11Li\x9a\xda\x97\xbeU0d\xb6ho\ +\x95:@F\x8b\xf6\x1e|_\x10\xd7\xaf>\x01\x81\xb8\ +\x9f\x91\x07a<\x0d \x11\xabD\xcc,\x936Rr\ +\x86\xb1\x99\x96\x84>\x9bYw\xc0\x8a_\x80\xf0\x83u\ +?\xac)M-y\xdf\x91\x850\x0b\x85\x18\xa5B\x0c\ +\x0b\xa5u\x07Dw\x9a\x8eS\x8a\xf3\x9a\xca\xba\x03=\ +\xf6\xe7\xd0\x931\xf5r\xbb\x90\xb8\x8b\xf4\x96}KB\ +\x03\xc8G\x97\x131os\xdeb\xd4_\xb8\xad\xe6d\ +;\xa3\xb8\x00\xd2*\xad;\x90\x91\x95B\x8c\x85B\x8c\ +\xab)MS\xbb\xed\xf1\xfa\x08N\xecw9t\x8a\xb1\ +J\xc5X/)\xad;\xd0s\x83M\xc6\xf8\xc4\xf9*\ +b\x93\x07\xe1|\x05\x90\x90z\x22\xc6\x0f\x1cc\xedx\ +\xb2\x88\xd4N*n`q\x01$\xe2\x9f\xf4\x05-r\ +\xde'\xbe\xea/uUL\x91\xb8\xfdP\xab\x9e\xc40\ +\xe1\x1f\x98T\x86]P\x9d\xa6\x93\xc1\x22\xc5\xf7=N\ +\xea\xe5d\xa8\xc9\x18'\x91\xd7\x86\xa1\x1a\x06@J\x16\ +\x151E\xc4\xb6>DZ\xf87\x09\xa39\xd9\xecF\ +\x00\xc4qc\xdd\x81#_\xfd\xb72\xeeF\x8eV\x89\ +\xdb\x7f\xeb\x13`\xd9\xf1\x9f}\xa9\xa7\xa9\xdd\xfa\xb5T\ +\xfa\xac4\x8c]\x19\xc4t\x061\x8f*\xc3\xd8C\xf3\ +\xe7\x90vS\xf2\xd7\xe9\x98\xd5\x81T\xc3\x00HN5\ +\x11\xe3\xcb\x06\x17\x91\x9b-#\xb7\x17[\xd5\xf3x@\ +_\xc5\xaa\xdc\x0b\xe2\xaf\x9bN\xd2/\xc8\xfa\x9c\x89A\ +\xcc\x8b)U\xc5\xac2]+f\xa5\x10\xa3P\x88a\ +\xcax\x97C\xa7\x1d\xd0x\x91\xe2\xd2(\xeeP}\xa8\ +\x97\xdb*\xd3\xebW4\xfeA\xc5\x1f\x91\x9b]\xf0P\ +\x13@j\xda\x151\x0b\x89\x7f3\xf1>\xf3\x12\xccR\ +9^\xa5\x1c\x0f\xe8\xadL\xd6\xa1rb\x97\x14\xb2H\ +\xfe\xb4\xb5\x90\xb4\xeb|\xbc\x91\xcc\xaa\x91\xea\xe5v&\ +\xe9\xaba>\x0fh\xd1\xf7\xd2 \xe6\xbda\xb5Qi\ +\x10\x93M\x04l\xbc\x17\x91M\xce\xd5\xe3!\xfcg\xf4\ +&r\xb3\xb7\xa3\xf5\xd4En\x13\x00~\xa0\x96\x88\xf1\ +\x03\xc7\xdf\x135_fr\xc3\xf4\x03?\xf0\xd0z\xda\ +\xc6\xb4$\x0c\xc1N1\xd6L1\xd6\x0f|iy\xea\ +\xc5X\xcf\xf5al\x19\xff\x1c\x7f\xcd[%\x0e\xf3\xab\ +\xff\x0c3wR!\x95\xd2A2K>%V\x89\xfe\ +\xa2\xbd\x95r\xbcSn 1\xd1x'\x22;\xbf\xd5\ +}o\x9c$ab?0XDn\x0f\x00\x9e\xa5\x92\ +\x88\xf1\x17\xcb*a\x887\xd2d\xfc'\x09c\x84(\ +\x95\xe2TJq\xba\xe4\xc6\xba\x03\x88\xeeA1V\xa1\ +\x18\xeb;>\x09\x93\xc3V\xd5\x13\xeb\x0e\x9c3ZO\ +K\x11\xb9M\x1c&\x97\x12\x7f'q\xb7g}N1\ +\xa4\xa4\xbe\xd1\xa2\xbd\xa5r\xbco\x8c\x16\xed\xad\x94\xe3\ +\xe1{oD\xe4\xafz\xb9-3\xb9\x8e\x05I\x98\x84\ +\xf9\xc4\x82\xd2@\x90\xb1u\x07^1\xb6\xee\xc0S\xc9\ +\x131~\x01\xad\x7fK\xfa\x12\xf7c2f\x9e8\xce\ +5*\x85\x18\x07J)\x9f5\xb1\xee\x00\xa2\xdb(\xc6\ +z\xa7\x9d\xe0\xad\x97\xdb\x9b\x8c\x920\x22\xc6UA-\ +\x14\x92~\x8a\xd2&a\xfbg\xd5\xcb\xedJ\xd2WH\ +}\xd1\xdc\xc9'#\xa5b\xac\x1c\xa6\xe98\xc5X_\ +3x\xbdh\xfc*Mu\xcc\xcc\xba#\xd7\xf2}\xdf\ +H\xfc\xfb\x8a\xdb\xd1z\xba\x8a\xdc\xa6\x96\x89u\x07:\ +d\x92\xb8\xfd\x9b\xc4\xed\xe7nl\xdd\x81W\x8c\x13\xb7\ +?i{@\xb2DL\xbd\xdc\x16\xf5r\xbb\x97\xf8\x0b\ +h\xbd\xe6\x98\xf1\xcf\xe5\xc9\xa5\x88\xa8=}\xaa\x12\xb7\ +\x1f\xc3\xdc \xe6\xd8 \xa6*\x7f\xae\x0fi[\xe3\x9d\ +r\xbcR+\x90\xff\xb7\xdcH>I\x18\x91\x8e,\xd8\ +\xeao\xf4V\x89\xc3\xbc\xb3\xda\x89\xc4\xaf\x85\x96jz\ +\xef\xd1\xbd\x0c\xb4,\xdf?\x05O]Uu\xe4\x94\xe2\ +\xbcHy\xd1\xdeJ)\x0e.\xf3VD\xfe\xae\x97[\ +\x97\xd3X\xf9\x12\xfe\xe1\xee\xdf\x12?\x09s\x10\x9b1\ +j0?}8\xf5\xc3\xeeq\xe2\xf65\x8d\x13\xb7\x9f\ +\xc5F\x0f\xcfQJ\xc0\x8e\x15b\x5ck\x92\xb8\xfdq\ +\xdb\x03\xa2&b\xea\xe5v\xe2\xcb\x1e\xf7\x22\xf2\xa7\xa4\ +/\x9f~\xc9{\x11\xd9\xfb\x0f\x99\x89Q\x1f\x9e\xaa:\ +\xde~\x10\xff\xef\xf0\xabA\xe8\xb7\xfe)r\x9f-\x14\ +bL\x14b\x5c\xc4'65w9\xf9IcAp\ +_\xcd\xb7\x97\xfc>\xc4\xdf\x5c\xba\x85s\xbd\xdc\xce\xeb\ +\xe5vS/\xb7+\xff\xdf\x93\xb4]\xfb\x9e\x9f\xa2\x94\ +:\xe9\xfdA;\x19\xe3\xcf\xbf?\x13\x879\x88\xc8|\ +HS\x92\x9e\xe1\x94\xe2TJq\xce)\x95\xe2TJ\ +q\xd0\xce\x07i\xc6\xca\xb9\xee\x0c\xf7M\xbd\xdc\x8e\xeb\ +\xe5v#\xe9\x1e\xee\xce:|\xed[)\xc4\x98(\xc4\ +H\xce\x9f\xe7\x85B\x9cy\xea\x18m\xf9\xd7^*\x84\ +\x9a\xe7\xb8\xb6\xa0\x1f\xc7\xa6NX\x16m\xc7\xbd\xa3\xba\ +\xae\x7f\xfc\xe6ht\xd1\xc1>\xb36\x96\xa6t}&\ +v\x89\x97s\x0e\xd2\x0c\x04v\x22\xb2\xb3\xda\xa9\xc0'\ +\xa8R\xfc\x8e\x0e\xa3\xf5\xf4&A\xbb\xc1N\xb6,O\ +\xfd$\xf7\x9c\xaf\x22\xb2\xea\xdb\xdc_\x7f\xb1w\xa2\xb3\ +\xbb\xcd\x17\xc9dKG\x7fA\xd5\xac\xb6;H3P\ +\xdb\xc5n\xf8\xe4\xc31\xa7*\x98\xa7^}\xfd\xfeC\ +w%\xcf\xbf\x86{\x11\x99h\x9d7'UE\xa9\x13\ +Z_Ea-\x15\x9fH\xd6\xb8~~dz\xabH\ +\xbd\xdc>H\xda\xeb\xe9\xd7\xd1z:O\xd8\xfe\xc5\xfc\ +{\xe5\xbf\x89\xc3|\x19\xad\xa7E\xe2\x18\xd9\xf0\xe3\xe2\ +\xbf\xad\xfbq\x85\x834\x9fCe\x0e\x9f\xf1\xa7\xfc5\ +p!\xe9\xde\x97\x9d\xbd\xf6)\x8f\x85:\xfd^\xf6\xe3\ +\x94Jt\x1ev\x1d\xa49g\xab\x1c\xdeO\xfe\xbaT\ +\x8a\xde\x83\xbe;i\x1e\xec\xec\x95\xe2\xbd\xc8\xe0>\xf4\ +\xb8\xd9\x81\xbb\xe4\xdf\xfe\xd9D\x8c\xfc\xef\xff\x8d\xe5\xfb\ +\xf2\x9a\x894s\xden\xfc\x7f\x8f%\xdf\xa4\xcb\xa5\xee\ +\xa5y\xfa|\xfc\x92'\xff-\x22\xb2\x8fy\x12\xd5\xcb\ +m)i\xaaB\xa2^\x1c\xfd\xc5j\x1c\xd0\xc4D\x9a\ +se&\xf9M\x99\xb9\x17\x9f\x90\xf3\xff\xbf\xb9\xb2\x9d\ +\x87X7\xe5>{z\xd3\xe2\x90\xb1\xff\x9a\x8b~\xf5\ +\xc4A\x9a\xc4\xcfN\xbe\x7f\xaf\x5cb\x17\xeb\x03\xc9\x9f\ +\xa3\xff\x89\xd1V\x0b\xc7\x8a\x81M\x8c\xc6N>\x1c\x16\ +\xd2\x8dm\xa2\x0f\xd2$\x1e\xaa\xe37|\x22p.\xe7\ +\x93H\x9fG\xeb\xe9\x22U\xc7\x9e\xf2\xe7\xc7N\xd2\xff\ +^\xef\xa4\xf9\x9d\xecb7|\xb2;\x92\xc6\xaeY\xaa\ +\xff>9K\xf89}\x94\xd5M\x9f\xc2zT\xbf\x0c\ +i\xcd\xa1\x0e'b\x8e\x8e\x9f\xf1\xa5\xf5M\x94\xaf\x04\ +\x5cI\xda\xfb\x8dO\xd6\xeb\xc2\x5c9\x06\x9cH\xf3\xd9\ +\xab}/v/\x8f\x0f\xb6\xf7m\x0eL\xf1\x10\xfc\xc2\ +\xa963i~_V;P\xde\xca\xe3\xbd\xc6\xe6\xe5\ +\x1fk7F\xbe\xe0\xbc\x99\xf9\xbf\x9f\x8b\xdd=\xfb\xf1\ +\xb5\xef\xe5\xcc\xf9\xd2\xe6\xfc\xb8\xe0>u&\x8f9\x0b\ +\xcb\xfb\xd0\xe3\xeb\x7f\x90\x17\x96Ux)\x11\xb3\x91\xfc\ +n\xa0-D\xbd@'\xbcy\xfc9\xe2\xcd\xe1D\xd2\ +,\x82\xd6G\xc1\x03j\xa5)\x07\xb9\xb8\x93\x88\xe5\xbf\ +\xf5r[\x89\xcd\x07\xeb'\x09xj\xe8\xaf\x03\x0bi\ +\xcac\x87\xf4>\xfb\x97fE\x9a\xf2\xb5,\xe8\x9cx\ +\xca?\xe5\x5c\x89R\xa5[\x97\x9fr\xc6\x968\xc9{\ +\x10\x91q\x0eOH\x8f\x12'\x0e\xb2\xad\xd6M\xa5\x07\ +\x89\x98Sw\xd2\x91\x84\xb9\ +H\x19\xb9=\x17\xb9\xbdh\x22\x8fK\x8e\x5c\xe4\xf6\x86\ +\xee\xf3\xb1\xf2\xd6\xff9\x93&\xb1\x8b\xcb}\xcc$\x09\ +\x03\x00\x22B\x22\xc6J\x15\xa9\x1d\x17\xa9\x1d\xa0\xb3\xfc\ +\xc0\xea\xabu?\x94\x1d\xe7\x11\xefN\xbf\xe9\x13S\x9f\ +,:\xd4\xc2O~*\x84\xaa\x93\x9b\x17\xebd\x8c\x95\ +\x8347\x22+\xeb\x8et\x84\xcb\xbc\xbd\xd8\x5c\xe6\xed\ +\x0d\xd9\xd7\xa7S\xd0\xfd\xb5\x7f&\x22\x9f\x0d\xfa\xd35\ +\x07i\xa6\xc99\xeb\x8e\x00\xc0)\x121\x06|y\xf2\ +}\x84\xa6\x5c\x846\x80>(d8O\x07o\xe5\x99\ +$\xcc\x89R\xe2\x5c_R\x1a[\x04=\xb9y\x19\xca\ +\xb9rtL\xdc9\xeb\x8et\x85Oj\xc6J\xf0f\ +_\xbd\xea+\xebb]7\xee\xac\xb7>\xee\x91;y\ +a:\xc2h=}\xf0\x09\x9a\x9f%\xffk\xbe\x95[\ +iv*\xdbYw\x04\x00\x9e\x22\x11c\xa7\x0a<\x9e\ +\x81\x0e\xe0\xf9\xd2\xfa\x99\xf4\xff\x06\xfb\xf3h=}u\ +E}\xffw\x85V\x87\xae\xf0\xc5r'\x95\x93dL\ +\xec\xa9\x18\xb9\xfa\x22\xaf'\xee\xf02\x17\xa9\x9d2R\ +;\xa9\x95\x91\xdaq\x91\xda\x19\xba\x83\x88\x14\xe7va\ +\x1b\xad\xa7\x1b\xbf{\xe6'\x19n\xc5\xdfs~;\xf7\ +y\x09\x00\x96H\xc4\xd8)\x03\x8fw\x11\xfa\x00\xf4F\ +\xcf\x931\x07iv\x5cY\x5c\xf2\xc3\xfe\xe9v\x8eS\ +\x94\xb2X$\xd6?I.$\x8fucR\xb9\x97\xe6\ +\x9c9{#\x87\xe7E\xac^\xad\x22\xb4\xa1\xc1e\xd6\ +\xce\xd0\xcd\xdb$P\xfd\xb4\xc3\x89\x0c'\xc9\xfc\x92[\ +i\xa6\x22\x95\xd6\x1d\x01\x80\xd7\x90\x881\xe2\xabYn\ +\x03\x9a\xa8\xe2\xf4\x04\xe8\x8f\x93dL\xc8{+7\xb7\ +\x222i\xbb\xe3\x8a\x1f\x94\xe74 \xcf\x22\x09s\xca\ +O\xd5\x99H\xbf\xce\x17\x91f\xdd\x88\xd6\xe7\x0c\x9e\xe5\ +\x02\x8f\xefL\xf5j\xa4E{\xbf\x92\xf8\x8b\xe2\xb7'\ +\x0b\xb1_d\xb4\x9e\xee\xfdu\xf6g\xe9\xdfu\xed\x9c\ +\xe3:XT\x00\x02\xe8\x04\x121\xb6\xdc\x95\xc7uf\ +`\x07h\xf3\xd5\x0e3\xc9\xb3\x22\xa4\x8d\x83<\x96V\ +\xef\xaflc!yT\x08\xfd\x96[\x12\xe6\xc8\xdf\xb8\ +\xcc\xa4\x1f\xd51\xb7\x22\xf2\xcf\xd1z\xba\xe0f8\x1a\ +\x17x|\x19\xa1\x0f\x9a\x5c\xe0\xf1U\x84>\x0c\xdd\x97\ +\xd0j\x0e?]i&\xc3H\xc8\x1c\xa4\xf9\xbc\x1f\xb3\ +\x0e\x16\x80.y)\x11\xb3\x90\xee\x0fHC\xddI\xfa\ +\x01T%\xd7\xfd\x9e\xcb\xb8\xdd\xf86\x95!\xa7\xa7\xe7\ +]q\x90\xe6\xfd\xd2V)y\xdc [P9\xcf|\ +E\xc8\xbf\xa4\x9b\xbf\xe7\xaf\xd2T4\x94!\x8ddP\ +!t\x10\x91\x9f\xbbP\x22\xee\x07\xf0c\xe9\xe6:\x0b\ +\xb7\xd2\xfc\x9eC\x92vxF\x84E{\xab8=\xd1\ +\x11\xb8h\xefA:\xf6z3t\x173i}\x92\x90\ +\xf9\xa7\xf4o\x8cw\x9a\x80Yu,\xf9\x5cI\xf7>\ +gb\xf9h||\xee^{}\x0b\xe9\xffy\xf3\xec\ +\xeb\xef\xeb}\xea\xa8\xae\xeb\x1f\xbf9\x1aI\xbd\xdcN\ +Dd#\x22o\x94\xfb\x94\x83\xe3\x0e\x13\x0f\xa9\x03\xd5\ +\xcb\xad\x13\x91\x0f-\x0f\xfbG\xaa\xbe]\xd9\x9f\xa1:\ +H\xc0\x22\x98\xf5r{#\xcd{\xec]\xbc.e\xcf\ +dzJ\xbd\xdc\x16\x22\xb2\x12\x91\xb7\xda\xb1[\xba\x15\ +\x91\xd55%\xe9\xe7\xd4\xcbm)\x22\xbf\xc6n\xf7\x15\ +_\xe5\x82\x85&s\xe4\xdf\x9b\x0b\xff\x95\xf3g\xe0\x17\ +\x11q)\xce\x17<\xaa\x97\xdb\x99\x88\xfc}\xc5\xa1_\ +G\xeb\xe9\xcf\xab.~\xbe\x1c\x0d\xf4\ +>\xebc\x8c\xaa%?\xa6\xfb3\xb87\xf99\xfb\xfb\ +\xe9\xf9ys\xc9\xebw\xd2\xa3\xfb\xd4\x17\x131\x22\xbd\ +\xff\xc7~\x89Z\x12F\xe4\xaa\x0f\xed\xe4\x03\xbb\xbe\x9d\ +\xe4\x89\x04%a\x8e\x06\x96\x8c1\x1f\xa4g\x9c\x90Q\ +\xb9\xa1\xf6\xd7\x1b'i_\xff\xbd\x88,\xfa\xb0>\x89\ +\x7f\x7f\xce%\xafs\xe6^\x9a\x7fCG\xf5\x8b\x9ez\ +\xb9\xddK\xfbs\xe0\x97.\xbe\x0f\xfcy\xbf\x97\xf6c\ +\xbfN\xbe\xde\xd8\xae\x1cCE\x19S\xb4\xe1\xc7\xf8\x85\ +4\xd7\xb8\x5c\xaeo/9V[\x95}Z\xffe`\ +\xf7YQ\x920G=L\xc6\x5c\xfc\xfb\xe9\xe9y\xd3\ +\xe6\xf5;\xe9\xc9}\xea\xab\x89\x18\x00\xe8#\x9f\x90(\ +\xa4\x19\x80Z}\x90\xdd\xc9\xe3\x0d\xf5\x83V\xd0\x84\xd5\ +\x1e\xf7\xd2T\xf3\xb8\x88mf\xc3\xf8\xa6\xe5^\x9a\x9b\ +\x10\xd7\xa7\x9b\x90.\xb9\xa2J\xe40ZOo\xd2\xf4\ +&\xbd+\x06\xba\x9d~\xbd\xb1]\xf1\xfb\x8bz\x93\xda\ +V\xbd\xdc\x8e\xa5\xb9\xb6\xcd\xfcW\x0e7x\xc7\xeb\xde\ +\x86\x04\x1f\x80>\x22\x11\x03`\xd0\xfc\x0d\xf6\x5c\x9a\xc1\ +\xe7D\xd2\x0d@\xefDd'\xcdS\x8c,J\xaa\xfd\ +\x13\xa5\xb9\x88\xbc\xbf\xb2\x89\xe3S\xcajH\x03e\x7f\ +\xce\xcc$\xddM\xcb\xbd<\x9e+\x1b\x92/\xf6|\x02\ +\xf3\xbf-\x0e1\xaf\x00\x0c\xe1\xcf\xf1\x7f\xb78\xe4\xf3\ +h=]\xa4\xe9M7\xf9\xe9\xa0\x93\x0b~t\xe3\xd7\ +4\xcb\xc6\xc95n\xe2\xbf4\xaavo\xa5\xb9\xee\xed\ +\xa4\xf9\x9d\xec\x15b\x02\x80\x19\x121\x00p\xc2?\x19\ +\x1cK3\x08\x15i\x06\xa17\xfe\xbf\xc7\xf2r5\xc4\ +\x9d\x88<\xf8\xff\xde\x9f~\xe5\xbe\x86\x87\xbf\xc9\x9cI\ +\xf3Zg\xfe\xdb\x13\xf9>\xc1p/\xcd\xeby\x90\xc7\ +\x81\xf2F\xa1{\xd9{r\xce\xdc\xc8\xe3\xcd\xd7\x8d<\ +\x7f\x03s\x90\xe6w(\xf2\xf8\xfb<\xfe\xb9\xcb!I\ +\x87\x1f\xb5\xacr\xf8\xb9\xeb\xef\x8fz\xb9\xdd\xc9\xe57\ +\xe0\xff\x22a\xd8o>9s#\x8f\x9f\x11c\xffu\ +\xf4\xd3+\x87\x9f.\x18\xbf\x97\xef?K\xf6$]\x00\ +\x0c\xd1\xb3\x89\x18\x00\x00\x00\x00\x00\x00\xc4\xf7\xd2\xf6\xd5\ +\x00\x00\x00\x00\x00\x00\x88\x8cD\x0c\x00\x00\x00\x00\x00\x80\ +\x12\x121\x00\x00\x00\x00\x00\x00JH\xc4\x00\x00\x00\x00\ +\x00\x00(!\x11\x03\x00\x00\x00\x00\x00\xa0\x84D\x0c\x00\ +\x00\x00\x00\x00\x80\x12\x121\x00\x00\x00\x00\x00\x00JH\ +\xc4\x00\x00\x00\x00\x00\x00(!\x11\x03\x00\x00\x00\x00\x00\ +\xa0\x84D\x0c\x00\x00\x00\x00\x00\x80\x12\x121\x00\x00\x00\ +\x00\x00\x00JH\xc4\x00\x00\x00\x00\x00\x00(!\x11\x03\ +\x00\x00\x00\x00\x00\xa0\x84D\x0c\x00\x00\x00\x00\x00\x80\x12\ +\x121\x00\x00\x00\x00\x00\x00JH\xc4\x00\x00\x00\x00\x00\ +\x00(!\x11\x03\x00\x00\x00\x00\x00\xa0\x84D\x0c\x00\x00\ +\x00\x00\x00\x80\x12\x121\x00\x00\x00\x00\x00\x00JH\xc4\ +\x00\x00\x00\x00\x00\x00(!\x11\x03\x00\x00\x00\x00\x00\xa0\ +\x84D\x0c\x00\x00\x00\x00\x00\x80\x12\x121\x00\x00\x00\x00\ +\x00\x00JH\xc4\x00\x00\x00\x00\x00\x00(!\x11\x03\x00\ +\x00\x00\x00\x00\xa0\x84D\x0c\x00\x00\x00\x00\x00\x80\x12\x12\ +1\x00\x00\x00\x00\x00\x00JH\xc4\x00\x00\x00\x00\x00\x00\ +(!\x11\x03\x00\x00\x00\x00\x00\xa0\x84D\x0c\x00\x00\x00\ +\x00\x00\x80\x12\x121\x00\x00\x00\x00\x00\x00JH\xc4\x00\ +\x00\x00\x00\x00\x00(!\x11\x03\x00\x00\x00\x00\x00\xa0\x84\ +D\x0c\x00\x00\x00\x00\x00\x80\x12\x121\x00\x00\x00\x00\x00\ +\x00JH\xc4\x00\x00\x00\x00\x00\x00(!\x11\x03\x00\x00\ +\x00\x00\x00\xa0\x84D\x0c\x00\x00\x00\x00\x00\x80\x12\x121\ +\x00\x00\x00\x00\x00\x00JH\xc4\x00\x00\x00\x00\x00\x00(\ +!\x11\x03\x00\x00\x00\x00\x00\xa0\x84D\x0c\x00\x00\x00\x00\ +\x00\x80\x12\x121\x00\x00\x00\x00\x00\x00JH\xc4\x00\x00\ +\x00\x00\x00\x00(!\x11\x03\x00\x00\x00\x00\x00\xa0\x84D\ +\x0c\x00\x00\x00\x00\x00\x80\x12\x121\x00\x00\x00\x00\x00\x00\ +JH\xc4\x00\x00\x00\x00\x00\x00(!\x11\x03\x00\x00\x00\ +\x00\x00\xa0\x84D\x0c\x00\x00\x00\x00\x00\x80\x12\x121\x00\ +\x00\x00\x00\x00\x00JH\xc4\x00\x00\x00\x00\x00\x00(!\ +\x11\x03\x00\x00\x00\x00\x00\xa0\x84D\x0c\x00\x00\x00\x00\x00\ +\x80\x12\x121\x00\x00\x00\x00\x00\x00JH\xc4\x00\x00\x00\ +\x00\x00\x00(!\x11\x03\x00\x00\x00\x00\x00\xa0\x84D\x0c\ +\x00\x00\x00\x00\x00\x80\x12\x121\x00\x00\x00\x00\x00\x00J\ +H\xc4\x00\x00\x00\x00\x00\x00(!\x11\x03\x00\x00\x00\x00\ +\x00\xa0\x84D\x0c\x00\x00\x00\x00\x00\x80\x12\x121\x00\x00\ +\x00\x00\x00\x00JH\xc4\x00\x00\x00\x00\x00\x00(!\x11\ +\x03\x00\x00\x00\x00\x00\xa0\x84D\x0c\x00\x00\x00\x00\x00\x80\ +\x12\x121\x00\x00\x00\x00\x00\x00JH\xc4\x00\x00\x00\x00\ +\x00\x00(!\x11\x03\x00\x00\x00\x00\x00\xa0\x84D\x0c\x00\ +\x00\x00\x00\x00\x80\x12\x121\x00\x00\x00\x00\x00\x00JH\ +\xc4\x00\x00\x00\x00\x00\x00(!\x11\x03\x00\x00\x00\x00\x00\ +\xa0\xe4\xff\x01\xedXiw\xc4\xe7\xe8\x80\x00\x00\x00\x00\ +IEND\xaeB`\x82\ +\x00\x00\x00\x99\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x09\x00\x00\x00\x05\x08\x06\x00\x00\x00\x97S\xc6k\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00KIDAT\x08\x99}\ +\x8c\xc1\x09\xc00\x0c\x03\xd5\x7f\x06\xe8\x00\x1e\xa6#u\ +\x98\x0c\xe0\x01\xfa\xcfhWTR\x08~\xc4 \x90\x0e\ +Y\x02\x12\xb8\x00\xfb*\xf3\xb4\x09\xe0\x01\xeeRr6\ +\x8f\x1f4\xa0O\x9d\x8b7W\x9d\xf7\xf7\xa8\xab\xc7\xd7\ +\xdc\x9d\xa4\x17\x16\x92wb\x0b\xb4\x5c@\x00\x00\x00\x00\ +IEND\xaeB`\x82\ +\x00\x00\x01g\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1e\x00\x00\x00\x1e\x08\x06\x00\x00\x00;0\xae\xa2\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x01\x19IDATH\x89\xed\ +V\xb1\x0d\xc20\x10<\x10\x03\x84\x0dRR2Bz\ +\x1aF`\x04F\xc8\x08\x8c\x80\xa8(=BF\xc8\x08\ +))\xb3\xc1!\x8b\xb3\x04\x91\x92\xb7I$$\xe4\x93\ +^\x1f\xc9~\x9fs\x7f\xb6\xbc\x22\x89_`\xfd\x13\xd6\ +L\x9c\x89\xff\x92x3\xa3v\x0f\xa0\x00\xd0\x03h\x93\ +\xab\xfd\x052\x11\x15\xc9\xfd\xdbxA\xf2\xc2\x17:\x92\ +\x8d\xb2\x8f\xdaX\xeb#,\xa9+\x00G}\xfb\xdc\x01\ +(\x01l\x95+\xe5\x93\xc6\x1b\xa9`\x22\xb6\xc7~\xe1\ +\xeb\x1bA?\x18o\xb4\x09OZ/!\xb5\x97\xcf\x91\ +\xec\x07\x92\x8fE\xa1\xb9\xe5\x5c\xa9w\x00\x0e\x00\xee\xfa\ +\xd3Z\xa6\x1a\x83W\xc2I\x99IX\xae\xbe\x01x\x0c\ +\xa4\xed\x8c\x9a\xd6\xd8\xdc\x0b)N\x8c\x8cJn\x9f%\ +u@\x199\x0f\xfa[K\x95hb'\xd7\xc6\xe0$\ +\x97O#R\xbe3\xc9V\xae\xb5\xe6u1k\xa6\xf4\ +\xee*\xf2\xb1\xa3rN8vH}s]$\xa5S\ +\x84\x9e\x86\xe3s\x8c\xbd\xb7\xbfy\xec\x85+2\xf4\xbc\ +\x11\x993\xeaf\x13/\x82\xfc\xf4\xc9\xc4\x99x\x19\x00\ +x\x02\xa6i\xf9i\xe8\x0b\xd4\xf8\x00\x00\x00\x00IE\ +ND\xaeB`\x82\ +\x00\x00\x00\xc0\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x0c\x00\x00\x00\x0c\x08\x06\x00\x00\x00Vu\x5c\xe7\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00rIDAT(\x91c\ +\xfc\xff\xff?\x03)\x80\x89$\xd5t\xd1\xc0\x82.P\ +T?\xcd\x80\x81\x81a\x01\x94\x9b\xd0\xd7\x98u\x01\xa7\ +\x93\x8a\xea\xa7\x05000\x1c```\xd8\x00\xc5\x07\ +\xa0bp\x00\x0f\xa5\xa2\xfai\x0d\x0c\x0c\x0c\x05PS\ +7 \x19\x00\xb2mB_c\x16H\x1ebCQ\xfd\ +4\x90B\x90\xa4\x03L1\x08@\xd9\x0e 9\xa8\x1a\ +\x84\x0d\xc4\x82\xc1\x16\x0f\x0c\x0c\x0c\x00g\x06'\xfd~\ +\xc9\xc3\xd5\x00\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x00\x9a\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x09\x00\x00\x00\x05\x08\x06\x00\x00\x00\x97S\xc6k\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00LIDAT\x08\x99m\ +\x8a\xc1\x09\xc00\x0c\x03\xaf\xff\x0e\xd312RF\xe8\ +\x10\x1d\xa0\x03\xf4\x9f\x15\xba\xd1\x15\x83\x09\x86T $\ +\xcb\x87Z\xdd\xd4\x919\xf7\x0at\xf5I 2\xee\x09\ +\xed\xea\x95\x8e\xbel\x9bz\x03/p\xb2\xaa\x03G@\ +?\xbf\x22\xe0\x03\xf2\x83_\xe3\x0a\x8c{\xf2\x00\x00\x00\ +\x00IEND\xaeB`\x82\ +\x00\x00\x01u\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1e\x00\x00\x00\x1e\x08\x06\x00\x00\x00;0\xae\xa2\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x01'IDATH\x89\xed\ +\x94\xd1M\x02A\x10\x86\xbf\xdfX\x80%`\x07g\x05\ +B\x05j\x05\xd2\x01X\x81Z\x01Z\x81X\x81t\x80\ +V\x00\x1dH\x09X\xc1o&Y\x92\xcd\xe5\xd8\xcb>\ +\xf0@r\xff\xd3\xde\xcc\xde|;;;\xc3\xa0A\x83\ +\xce^\xaaM\xc0v\x03\x5c\xe56I\xdf\xb5q\xaa\xc0\ +\xb6\xc7\xc0\x17\xb0\xcd\xcc#\xe0S\xd2KM\xac\xcb\x1e\ +Pd\xd6d\xa6\x0f\xe0U\xd2[\xb6'\xfc\x1b\xdbq\ +\x98}2\xef$\xedJ\xb1\x8b\x19\xdb\xde\xa4\xe5!\xe0\ +V\xd2S\xc7\xbe)\xf0\x98\x99\xe20\x13I\xdb\xf6\xde\ +^\xc5\xb5f\xe06h\x94\xfc\xcd\x11\xff\xc2v\xf1\xea\ +/z\x0e\xb0o\x1bl\xcf\x81_\xe0\x19X\xdb^\xa7\ +\x92\xe4\xfa\xebK\xac\x0f\xdc\x86\x8e\x13\xf0F\xd2\x04\xb8\ +N/|^\x13\xa7\x1a\x0c\x04xy\xa8\x9d\xa4\xb8\x91\ +\xa8\xf9\xed\xa9\xc1\xb4{\xb8\xe3\xfb$\xe0%0Mu\ +>\xb4\xd2\x22\xfa\xf8\xa4\xe0\xd4\x9b\x0f\xc0\xcc\xb6\xe3q\ +\xa5\xe1\xb1\xac\x05\x17\x07\xc8\x11\xf8\x0aX\xd5\xfeW\x03\ +\x8e\xec\xa2W\xef\xbb\xda\xaaGw\xc0{1\x81\x923\ +Ag\x95\xd0\xd0O\xed\xec\x1e4h\xd0\x99\x09\xf8\x07\ +\x04\xfbo\xaaf\xa8\x7fa\x00\x00\x00\x00IEND\ +\xaeB`\x82\ +\x00\x00\x01\x0a\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1e\x00\x00\x00\x1e\x08\x06\x00\x00\x00;0\xae\xa2\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\xbcIDATH\x89\xed\ +\x96\xeb\x09\xc30\x0c\x84\xaf\xa5\x03x\x04\x8f\xe0\x11:\ +\x82G\xcb(\x1e!#x\x84\x8c\x90\x0d\xae\x84\xde\x0f\ +S\x90S\x97\x82i\x91A\xe4\xa5\xf3\x17\xe5\x22\xe3\x0b\ +I\xcc\x18\xd7)T\x07;\xd8\xc1\x7f\x01\xbe\x0d\xe4&\ +\x00A\xe7\xeb\xcb\xb3\xbb\x8e;\x80\xfa\xd6l\xc7\x92\xd9\ +\x89@r\xe1sl$WEj4\xa9\xb9\xbf)w\ +\x91\xd6\x9c\xfb\x0c\x5cHV\x92\xf1$\xaf\x8d(M\xf9\ +\x14\x9cTA\xf7\xcd\x8d\x08\xd2&+\xa7\xe7q\x06P\ +\xe4[\xebs6\xf2K\xe3\xef\xae\xebly>\xed\xaf\ +\x9e\xf6\xa9{\x15W\xc5\xd1:q\xa0\x96(M\xed\xb6\ +\xd6\xacv\x1a\xd9\xfa|u\x01\xf1=\x97\x83\x1d\xec\xe0\ +\x1f\x03\x03x\x00\xee\xe8\xf3\xa4\x12\xcb\x89\x9b\x00\x00\x00\ +\x00IEND\xaeB`\x82\ +\x00\x00\x00\xf8\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x14\x00\x00\x00\x14\x08\x06\x00\x00\x00\x8d\x89\x1d\x0d\ +\x00\x00\x00\x09pHYs\x00\x00\x01\x90\x00\x00\x01\x90\ +\x01!\xf7\xeb~\x00\x00\x00\x19tEXtSof\ +tware\x00www.inksca\ +pe.org\x9b\xee<\x1a\x00\x00\x00\x85ID\ +AT8\x8d\xed\x93\xb1\x0d\x83@\x10\x04\xe7^\xf4\x80\ +\x85\x13*q\x03\x88:\x1c\x92B\x07n\xc1\x91\x8bp\ +\xec\xc8\x8d\x90\x10P\xc5\x12\xd8\x01\xa0\x97O\xd6\x87\xfc\ +\x84\xab\xbb\xd1\x05\xb7\x90I\xc5\xf6\x81\xa4\x13\xd0\x03\x95\ +\xb3;\x0173\x9b\xd7a\x11\x19\x1c\x80\x06x9\xc2\ +\x16\x08@\xe7\x09k\xe0mf\xd7_6I\x8f\xef\xec\ +\x86\xe0\x5c\xf17Yx\x04a\xec\x0fG\xa0\x91tw\ +v/\xc0s\x1f\xc6\xaaW\xf2\xa9\xde\xd9\x11F\xab\x97\ +Ig\x01Tv\x19\x17\xday\x9b_\x00\x00\x00\x00I\ +END\xaeB`\x82\ +\x00\x00\x00\xc6\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1e\x00\x00\x00\x1e\x08\x06\x00\x00\x00;0\xae\xa2\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00xIDATH\x89\xed\ +\x93\xd1\x0d\x80 \x10C{\xc6\x01\x1c\x85\x0dt\x157\ +q%'\xd0\x11\x1c\xc1\x11\xd8\xa0\x86\xc4/$\xc1\x18\ +\x8c\x1a\xfb\xfeh\x81\xf6\x12\x80\x10\xe2\xbf\x90t\x8f\x0c\ +Or\x22\xd9]=_\x95\xad\xa3\xe0\x17\x06\xd7\xb9\x0d\ +\xfb\xebm\x12V\xd0\x1c\xc9\x83afs\xee^;\x11\ +<\x00h\x13V(\xb4\x02\xf0\x91\x1e\xd6\xbd\x99\xc5z\ +\x19\xf4\x9d\x14|g\xf0\x08`)\xd8E\x08\xf1%\x00\ +lGb!\xf5\x86\x1c\xbb\x9a\x00\x00\x00\x00IEN\ +D\xaeB`\x82\ +\x00\x00\x01$\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1e\x00\x00\x00\x1e\x08\x06\x00\x00\x00;0\xae\xa2\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\xd6IDATH\x89\xed\ +\x94\x81\x09\xc20\x10E\xef\xa4\x03t\x04G\xe8\x06:\ +\x82#\xd4\x09\x1c\xc1n\xe0\x08\xbaAG\xa8N\xe0\x0a\ +n\xd0n\xf0\xe4\xe0@Z\x0b\x0d\xa9\x16\xc4<\x08\x84\ +\x90\xcb\xff\xb9KN\x12\x89\xc4\x7f\x00\xecxq^\xec\ +\xd2\xc0\xdaG\x0e\xb46\x9f{\xe6*d\x93\xaa>l\ +\x88\xc8\x9b P\x01\x0dP\x03E\x94\x0b\xa0d\x9aj\ +\x10S{)\xcc@\x1b%<\x17\xe0\x0el\x97\x16-\ +w\xcc\xb3\xe4\xd6\xcf-\xb0\x0c\ +\x927Y\xcc\x0b\xd6\x82\xa4\xa3\xa4\xc6\xef\xad\xa4\xda\xef\ +\xa5\x9d$u\x92\x16\xc9\x9f\xb7\xd0\x17\xd5Jt\xc0\x1e\ +8\xb9\x92\xdar\xaa\x91\xc0\x9d[\xd9\xff\xd9I\xce>\ +\xafcDp\xf8\xe1\xa7t\xe5\x10'#R\xd0\x8c\xcc\ + U~S\x18\x11l\xbc\xc7.\xf0\x97s\x09\x09R\ +\xa56\xf0\x7f\x10\xfc=\x83\x9c\xe0}\xc3\xbec\x88M\ +\x8f)\xad\xb2\x99\xc9\xb4\xd3\xdeC\x8e\x95/\x8f\xcd\xc7\ +\xce\xe7\x22%\x05\xb6\x85O\x07p\x01n\x81\x00\xf3\xd9\ +\xb7\xd6\xdamI^\ +\xfc\x7fK\x19\xd0r@r\xa9\xc2c{\xd3U\xaf\x93\ +t\x88\xe3\xda\x17'\x11\xefQ\xc1o\x22\xf2\x19\x06u\ +\xa5\xda\x04\xac\xed\x1a6<\xbb)\xc2\xc6\x1fr\x9a\xd2\ +\xb5\xd5a]\xa9O&S\xef\xe7$!\x22\xabC\x1f\ +\xfc>I\x12\x0d`\x04`%\x22\xdf\x1b\xa2J\x06\xf0\ +\xa0\xf1R$\xc0\xca\x1b\x803\x11\x19\xd7\xe2=[L\ +\xf7\x22\xd2\xfa\xcb\x8c)\x1dM\x9ck9\xa9\xc5Up\ +\x89\x1b\xdfL\xf3&9\xaf\x02\x81\xe4\xd7\x14\xc9\xc8 \ +\xfa\x19\xc0U-6*\xb1&\xdb\xdes]\xc9\xaeI\ +\x1e\xef\xd0\xc5\xaf\xa4\x8a^h]\xb6\xcdp\xa8\xc7:\ +\x00zMS\x13\xeb\x82P6\x80m.\xc9H\x15\x1d\ +$\xa6\xe5\xe3\xd6N&\x97\xa9\x9fY\x97\x04c\x9a\xe6\ +\x92\x8c\x0c\x9ba\x95\xd8d\x87\xa6\xc5`c\x9a\xe5\xcc\ +7F\xb4\xae\xd2\xa5\x9d*b\xb99\xf6\xb3\xb4\xc44\ +\xd6\xff\x18\x00\x06-\xde\xf3.\x22\x8b\x16\xcf9\x8e\xe3\ +8\x8e\xe38\x8es\xac\x00\xf8\x02\x99\xac\xd1\x88\x18\xf6\ +`W\x00\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x00\xa7\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1e\x00\x00\x00\x1e\x08\x06\x00\x00\x00;0\xae\xa2\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00YIDATH\x89\xed\ +\xd3Q\x0d\x800\x0cE\xd1\x16\x05H\x99\x05\x9c \x01\ +GH@\xca\xe6d\x12.Y\x82\x82-\xe9\xb2\xf0\xee\ +\x7fs\xda\x8f\x9aR\xea_\x01i\xca\xc1\xc0\x03\xdc3\ +\xe0\x1d\xc8\xc2\x85G\xe1\x17P\xdb\x12\x91\xe8\xf9\xa1q\ +\xff-t\x19t\xeb\x989\xdc\xbd\x8c\xc2J\xa9\xc53\ +\xb3\x17\x86\xf0~\x89<\xbf6\x7f\x00\x00\x00\x00IE\ +ND\xaeB`\x82\ +\x00\x00\x00\xac\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x14\x00\x00\x00\x14\x08\x06\x00\x00\x00\x8d\x89\x1d\x0d\ +\x00\x00\x00\x09pHYs\x00\x00\x01\x90\x00\x00\x01\x90\ +\x01!\xf7\xeb~\x00\x00\x00\x19tEXtSof\ +tware\x00www.inksca\ +pe.org\x9b\xee<\x1a\x00\x00\x009ID\ +AT8\x8dc`\x18\x05\xa3`\x18\x02Fd\xce\xff\ +\xff\xff\x99\x18\x18\x18\x16300\x88\x11\xa9\xff%\x03\ +\x03C\x1c##\xe3?\x98\x00\x13\x16E\xff\xc9v\xde\ +(\x18\x05\xc3\x15\x00\x002*\x07\x03\xc6\xcd\xbd,\x00\ +\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x00\xf8\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x14\x00\x00\x00\x14\x08\x06\x00\x00\x00\x8d\x89\x1d\x0d\ +\x00\x00\x00\x09pHYs\x00\x00\x01\x90\x00\x00\x01\x90\ +\x01!\xf7\xeb~\x00\x00\x00\x19tEXtSof\ +tware\x00www.inksca\ +pe.org\x9b\xee<\x1a\x00\x00\x00\x85ID\ +AT8\x8d\xe5\xd2O\x0a\x81\x01\x10\x87\xe1g\xa4\xfc\ +?\x87\x10[\xf7_\xb1\xb0\x96r\x00;\x85\xb0\x1c\x0b\ +\x9c`>E\xde\x03<\xfdj\x86o/230C\ +\xa7h\xdd#b\xdb\xc6\x12\xab\xf24d\xe6\xa2\x8d#\ +\x0e\xe8\x16\xbd\x1bN\xe5U\xbfW@fN\xd1+Z\ +\xd7\x88\xd8Ef.\xb1.O{6oy^\xe6\xd2\ +\x00\xd6\x94\xf3\xf7EfN\xb0A\xbfh]\xb0ha\ +\xd4\x00\xe6\xe5\x0c\xde\x8f=\xc6\xb0\x08\x9e#b_\x9e\ +\xf5\xf1\x1e\x1e\xe8$<\xae\xc1\x8d\xb7\x00\x00\x00\x00I\ +END\xaeB`\x82\ +\x00\x00\x00k\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x05\x00\x00\x00\x1e\x08\x06\x00\x00\x00\xe4~\xd4\xbd\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\x1dIDAT(\x91c\ +\xfc\xff\xff\xbf\x03\x03\x1a`B\x17`\x18\x15\x1c\x15\xa4\ +\x96 \x03\x03\x03\x00=\xe6\x03y\xb8\xb4\x836\x00\x00\ +\x00\x00IEND\xaeB`\x82\ +\x00\x00\x01B\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x14\x00\x00\x00\x14\x08\x06\x00\x00\x00\x8d\x89\x1d\x0d\ +\x00\x00\x00\x09pHYs\x00\x00\x01\x90\x00\x00\x01\x90\ +\x01!\xf7\xeb~\x00\x00\x00\x19tEXtSof\ +tware\x00www.inksca\ +pe.org\x9b\xee<\x1a\x00\x00\x00\xcfID\ +AT8\x8d\xed\x92?N\x02A\x18G\xdfg\x08\xd8\ +J,9\x83\xb10\xb1[\xb8\x007\xa0\xe0 \x1c\x83\ +\xc4sx\x05z\x8d\x9e\x81\x82\x0e\xa8\xe4OB\x1e\x85\ +l\xb213\xec\x06\xb5\xe3%\xd3\xcco\xe7\xcdo\xf3\ +\x0d\x5c\xf9W\xd4\x81:7\xcdJ\x1d\xff<\x135\xc2\ +\x19\xf0\x09\xbc&\xe2\x07`\x12\x11\xdd\xeaf+#z\ +\x04\xee\x81\x1e\xf0Q\x89\xbe\x80\xb7\x88\xd8\xa9{\xe0\xee\ +\x5c\xa1R\xf6\x92\xf9\xc5\x92w\xb5\xa3\x16\xaaM\x84[\ +\xb5\x9f\xc9B=\xa8\xcf9\xe1M\xe2\x5c\x07H\xde\x1c\ +\x11\xe5\xfem\xaePJ\xf8+\x92Ci\xc0\x90\xef2\ +\xf3\xbf\x14.\x80Q\xed\x97\xa7I\x16g\xf2Cnh\ +\x90n\xb8\x06\x9e\xd4v\x22\x8b\xd3Z\xd56\xab4\x18\ +\xab\xcb\xcc\x1b\xdc\xa8\xd3\xc6\xb2+\x17q\x04\x10/\xb4\ +~\xc9\x0aJ\xbb\x00\x00\x00\x00IEND\xaeB`\ +\x82\ +\x00\x00\x00\xaa\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1e\x00\x00\x00\x1e\x08\x06\x00\x00\x00;0\xae\xa2\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\x5cIDATH\x89\xed\ +\xd0\xc1\x09\x80@\x0cD\xd1\x89\x15X\x8a-\xd8\x89\x9d\ +m\x09\x96b\x0dV\xa0\x1d|Y\xd8\xfb\x1e\x16\x22\xca\ +<\xc85\x9fDff\x15\xb0\xa4?\x02\xd8\x80\xeb\x95\ +h\xea\xc5\x8e\xfe/\xda\xae\xdd\xeb\xa4F[x\x06\x0e\ +\xa08\xeex\xcf4\x12\x8e\x88[\xd2*\xe9\x1c\xd9c\ +f\x1f$\xe9\x01\x7f\xc5|}\x0d8A\x1a\x00\x00\x00\ +\x00IEND\xaeB`\x82\ +\x00\x00\x01\x12\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x0b\x00\x00\x00\x0b\x08\x06\x00\x00\x00\xa9\xacw&\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\xc4IDAT\x18\x95u\ +\x91\xc1\x11\x820\x10E\x9f\x8c\x05P\x82\x1dH\x09\x94\ +@\x09\x9esb\xd2@L\x03\x99\x9cr\xa6\x04K\xb0\ +\x04\xec\x80\x12\xe8\x00\xe7k\xe20 \xb9\x84\xec\xbe\xfd\ +\xbb\x7f9-\xcb\xc2\xf6X\x97j\xe0\x06\xf49\x15\x81\ +\xe1\xbc#\xbf\xe7\x09L\xb9\xa0\xc0\xf3\x11<\x04ob\ +yX\x97\xfa\x9d\xb2u\xa9\x01:%\xfe)T\x19\xaa\ +\xadK#\xf0\x00.\xc0h]Z\x17H9V\xd9\x8c\ +f\x1c\x837\x02\xf5}\xcd\xb7\x84T\xa4\xf8 e\x99\ +\x98\x827\xc5L\x0b\xbct[\x97dR\xa3\xb5\xc1\x9b\ +Y\xf0\xa7E\xe9\x97\x8b\x04\x08\xec\x827\x8d@\xe5\x8e\ +\xb6!\xe8\xbe\x0d\x0aV0\xe6\xf5\x143\x9a\xf1\xd7m\ +\x0dk\x032Y\xdc\x7f\xfe\xd6\xae\x17\xf0\x06m\x07?\ +\x1d\xd9\xd12r\x00\x00\x00\x00IEND\xaeB`\ +\x82\ +\x00\x00\x00\xbf\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x0c\x00\x00\x00\x0c\x08\x06\x00\x00\x00Vu\x5c\xe7\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00qIDAT(\x91c\ +\xfc\xff\xff?\x03)\x80\x89$\xd5t\xd1\xc0\x02\x22\x8a\ +\xea\xa7\x15000$\x80p_c\xd6\x05d\x05E\ +\xf5\xd3\x0c\x18\x18\x18\x16\x80p_c\xd6\x04\xb0\x0d \ +\x06\x03\x03\xc3\x06\x06\x06\x86\x03E\xf5\xd3\x02\x90\x14\x83\ +\xd8\x07@rP5\x0c(\xa1\x04U\x002m\x02T\ +\x08ls_c\x16\xc800\xc0\x08V$'\x80\x00\ +\x86\x13\x87|<000\x00\x00o\x1f+\xab\x99\x00\ + H\x00\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x00\xfe\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x14\x00\x00\x00\x14\x08\x06\x00\x00\x00\x8d\x89\x1d\x0d\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\xb0IDAT8\x8dc\ +\xfc\xff\xff?\x035\x01\x13\x92Y\x02P\x8c\x0d\x10-\ +\x87l`\x01\x14c\x03D\xcb1\xe10\x80l0\xf8\ +\x0dd! \xff\x81\x81\x81\x81\x1f\x89_\xcf\xc0\xc0\xf0\ +\x11O\x04\x114\x10\xa7Fb\x0c\xbc@\xaafB\x06\ +n\xc0\xa3\xce\x80XK\x09y\x19\x06\x02\xf0\x18\x88\xe2\ +\x10\x16\xa8\x00(\xacD\xa0bo\xa0t\x02\x03\x03\xc3\ +\x03\x22,C\xb1\x04d`\x03\xd4\xc0\x04\xa8\xd8\x02(\ +M\x8ca\x18\x80\x05\xc9\x06\x07(}\x80\x08}\x0a\x0c\ +\x0c\x0c\xf7\xb1\x88?$6\x0c\xd1\x01\xc8\xf5\x8cP\xb1\ +\x06dz\x04\xe6e\xe4\x12\x1b\x96\xcd@\xf9\x17\x1d\x10\ +-G\xdd*\x80\x81\x81\x01\x00\x80n!\xdfj\x1d\x02\ +}\x00\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x01u\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x14\x00\x00\x00\x14\x08\x06\x00\x00\x00\x8d\x89\x1d\x0d\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x01'IDAT8\x8d\xad\ +\x95\xb1\x0d\x021\x0cE\x0d\x130\x02#\xdc\x02H\xd4\ +L@y#\xdc\x04\x88\x11\x18\xe1F\xc8(WQ\xa7\ +\xa4\xa0\xa0@\xa2|(\xc2\x91,\xe3\x00'\x11)\xc5\ +\xfd8?\xdf\x89\xbfo\x01\xc8?\xc7\xf2\x03W/\x22\ +ID\xb2\x88\xa0\xf3\xaaX\xdf\xdcU\x14\xba\xd9\x01\x13\ +\x90\x81A\xbf\xb7\xc0\x0d\xd8(\x965\xa6\xf3\xfb=Y\ +\xcfk\x0c\x0e/\x9b\x8f\x0e\x1b4\xb6o\x11\xee\xa2\x00\ +\xfd\xceA&V@\x17\x11\x9euqm\xb0\x95\xa6\xba\ +m\x10V\xa5\x93'\xac*N@2\xc1#\xbf\x8f\x83\ +%Lz\x92U\xb4\x0e\x14GXU\x99,a6\xf7\ +PSH\xaa\xd8\xa7\xe8\xb3\xa8\x95\x91-!.\xe0\x02\ +\xe9\x14\xc7\xf6\xdd;\x9fu\xb6{\x92\xf8\x85\ +\xf4\x7fBM\xe0\x04\xfeK\xf0\xa0\x03\x1f\x19\x90\xfb\xf6\ +\x08\x18\x02\x87\x98\x91\xe5\x00\x99{\xe7\xc7\x8a\xf1\x15\xb0\ +\xf1\x8b\x98\x01\x0f`\x1c\x0d\xd7\x81#\x9aK\xbaK*\ +j\xe6e\x92.\x92\xae\x92\xce\x06\x9f&p\x0c^B\ +\x9d.%\x9d,>\xad{|\xf1)?\xf9\xff\xbd\xff\ +fA\x9f\x1b\x9f\x02w\x8b\xc3O/\x89\xdc\xeb\xfe\x0d\ +\xd4\x04l\x0a.\xa5\x15\x94\x86\x07Hkh\x13\xf0;\ +h\x1e\xb1i\x0d\xaeZ\xa9\xeb+\x829E\x85\xfd\xab\ +\x18\xcb),\x99\xac\xa6\xd4\xe6]\x96SlO\xc3R\ +\xdbY\xd3gI\xf5\xa6\x06Z\x06\xe6t\x0b\xac\x81\x89\ +\x05\xdc\xc5co\x15\x04\xe7.\x89\x1b\xb0\xf8\x06\xb8\x91\ +\xa4\xa7O\x02'p7\x02<\x01\xe9,J\x15\x11=\ +A\xef\x00\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x01#\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x14\x00\x00\x00\x14\x08\x06\x00\x00\x00\x8d\x89\x1d\x0d\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\xd5IDAT8\x8d\xad\ +\xd5\x81\x0d\x83 \x10\x05\xd0\xaf\x138BG`\x84\x8e\ +\xe2\x08N\xd0Y\x1c\xa5#8\x02#\xb8\xc1o\x8e\x1e\ +\x0d\xb9b\xcb\xa1$\x18=\xe5\x85\xe3\x08\x0e$qe\ +\x1b\xd5\x0a\x00\x22\x00v\xf6\xa8\x06 3$\x19I\xee\ +$\x83>{z\xd0\xb11e\xab\x03\xd9\x89\xe5\x1e\xd4\ +@^C\xb9\x0cf)o\x9aJkK\xc6x\xf0\xb1\ +\xac\xc7\x06`\xf5\xd6\xab\x06\xca\xcc\x9e\x00\xeez\xbfx\ +\xc0\xa3\x94W\xc5&\x85\xf7J\x06\xd1\xc4\xdfFQ\x14\ +\xbb\xd0\x0b\xc9\xa9\x12\x9f\xf5\xfb\xcd\xbc\xa7\xadrK5\ +\xe7b{\xad\x06u\x83se\xaf\x96\xa8\x0b\xaca\x16\ +m\x06\x7fa%\xda\x04\xb6`\xcdE\xf1`\x7fA/\ +V\x05\xc3\x09\xecs8\xe4@>\xbe\x1e\x9d\xd8\xd7\xf1\ +%A\x09\xf46\x19\x9b&q\xed/\x00\xc0\x0b\xc1{\ +s}?\x1cSU\x00\x00\x00\x00IEND\xaeB\ +`\x82\ +\x00\x00\x01\x1c\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x1e\x00\x00\x00\x1e\x08\x06\x00\x00\x00;0\xae\xa2\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\xceIDATH\x89\xed\ +\x95\xe1\x09\xc20\x10\x85\xdf\x13\x07p\x04\xbbA;\x81\ +\x8e\xe2\x08\x8e\xe0\x06\x8eP\x1c\xc1\x09\xd4\x09\xda\x0d\xda\ +\x0d\x1c\xe1\xc9\xc1\x15\xfa\xcf^\x03\xad`>\x08I \ +\xc9\xe3\xdd]\x12d2\x99\xff@R)\xa9\x96\xb4[\ +\xd4\xb0\xa4\xa3\xa4\xb7\xb7\xd3\xd2\xc2\x0f\xef;\x1f\xefS\ +\xce\xdcD\x16\x93|\x02\xa8\x00\xb4\x00\x1aI\xe7\x14\xf1\ +\xaf\x0c\x8e\xc7\xeb<\xef\x8d\xb72zf\xc8\xf1\x18\x92\ +-Is\x7fw\xf7\x97E\x84\x07H\x9a`\x01\xe0\xe0\ +\xf9\x9f\x94\xfbd\xe1\xb9$\x0b{\x88;\x00/\x92\x05\ +\xc9~\xca\xbem\x82\xa0\x15T\xed\xd3\xcar\x1e\xd9\x1f\ +vl\xaf\x97\xa4+\x00\xab\xf2\x9b\x15XT\x14Q\xc7\ +v\xad\xdce\xef.'\x85u6k>\x99\xeb|\x12\ +\x99L\xe6w\x01\xf0\x01\x22\x03\x88\x1f<\x14\xde\xcd\x00\ +\x00\x00\x00IEND\xaeB`\x82\ +\x00\x00\x00\xd2\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x0b\x00\x00\x00\x0b\x08\x06\x00\x00\x00\xa9\xacw&\ +\x00\x00\x00\x09pHYs\x00\x00\x01\x90\x00\x00\x01\x90\ +\x01!\xf7\xeb~\x00\x00\x00\x19tEXtSof\ +tware\x00www.inksca\ +pe.org\x9b\xee<\x1a\x00\x00\x00_ID\ +AT\x18\x95\x95\x91\xb1\x12\x800\x08C\xdb\xfe\xbf\xbd\ +\xd3N~S]\xea\x0f=\x07\xd3\x85\x83\xab2\x86\x04\ +HH\xc0\x05l@NN\x01Y\xfd\x9e\x80\xca[\xcd\ +\x0aDl\xea\xd7\x09\xec\x02\xce)\x10~X\xdc\x13\x14\ +\x97\x18\xac\xbc\xa3\xd3\xac`\x888V\xc4\xf5d\xc7L\ +\xf1L\x87\xae\xdd\x94\xfe\xe6\xdc\xf9\xf8\xc1\x07Y>'\ +\xe9\xd5\x83\xa9\xc6\x00\x00\x00\x00IEND\xaeB`\ +\x82\ +\x00\x00\x01B\ +\x89\ +PNG\x0d\x0a\x1a\x0a\x00\x00\x00\x0dIHDR\x00\ +\x00\x00\x14\x00\x00\x00\x14\x08\x06\x00\x00\x00\x8d\x89\x1d\x0d\ +\x00\x00\x00\x09pHYs\x00\x00\x0b\x12\x00\x00\x0b\x12\ +\x01\xd2\xdd~\xfc\x00\x00\x00\xf4IDAT8\x8d\xed\ +U\xb1\x0d\xc20\x10<\x22\x0a\xca\x8c@IGF\x08\ +\x1b0BF\xc8\x08\x8c\x90\x112\x02\x1b\x90\x11BG\ +\x99\x11R\xd2\x1dzqA\x96\x95\xd8\x0e\xa2\xe4\xa4o\ +\xee\xff\xcf\xef\xcf\xc9\xd9\x90D\x02\xce*\xb9FKM\ +0\x12\x0d\xc9Q\xd1\xc4\xeaC\xc9\x9cdG\xb2'Y\ +(zq\xf9Z\xc1B\x13\xb5^s.nTM\x92\ +`\xcd7\xea\xc0\xf4\x8b5\xfe\x15\x83\xa7\xa7\xdc\xc2M\ +F\xf7\x93\xb0gd\xfa\xd8f\x8b\x01@\x09`L\xf1\ +\x910\xaag\x98\xac\x959\xc9~\x85\x90\x8fO\xef6\ +P\x94\x03\xa8\x17r\xcd\xd2M\xb29R(\x00T3\ +|\xa5\xdc,B\x13B\xbb\xb9x\x5c\x19j\x08M\xf8\ +\x15\xfe\x82\xbf\x154\xa7\x9b\xf7\xd6\xc2z\xa6\x07\x18\xd3\ +\x8bmV\xb8\x01\xb8;\xaf\xf2^|\xeb\x9d`>\xec\ +d\xa9i\x90#\x80\x93\xf1\xee/\xc0\x9a]\x8f\xed$\ +\xfa\xf0\x04\x0f\x12{:\x9c\x1d\xd0\x01\xc0\x0b\xf5^\x9d\ +\xda8f\x1e\xd7\x00\x00\x00\x00IEND\xaeB`\ +\x82\ +" + +qt_resource_name = b"\ +\x00\x05\ +\x00o\xa6S\ +\x00i\ +\x00c\x00o\x00n\x00s\ +\x00\x06\ +\x07\x03}\xc3\ +\x00i\ +\x00m\x00a\x00g\x00e\x00s\ +\x00\x0d\ +\x07\x97YG\ +\x00P\ +\x00y\x00D\x00r\x00a\x00c\x00u\x00l\x00a\x00.\x00p\x00n\x00g\ +\x00\x16\ +\x05'\x86\xa7\ +\x00P\ +\x00y\x00D\x00r\x00a\x00c\x00u\x00l\x00a\x00_\x00v\x00e\x00r\x00t\x00i\x00c\x00a\ +\x00l\x00.\x00p\x00n\x00g\ +\x00\x14\ +\x05\xaf\xa4\xe7\ +\x00c\ +\x00h\x00e\x00v\x00r\x00o\x00n\x00-\x00m\x00i\x00n\x00i\x00d\x00o\x00w\x00n\x00.\ +\x00p\x00n\x00g\ +\x00\x0e\ +\x04\xfb\x01g\ +\x00r\ +\x00o\x00t\x00a\x00t\x00e\x00-\x00c\x00c\x00w\x00.\x00p\x00n\x00g\ +\x00\x17\ +\x0ep*'\ +\x00c\ +\x00h\x00e\x00v\x00r\x00o\x00n\x00-\x00s\x00t\x00a\x00t\x00u\x00s\x00b\x00a\x00r\ +\x00u\x00p\x00.\x00p\x00n\x00g\ +\x00\x12\ +\x06\xa0\x19\x87\ +\x00c\ +\x00h\x00e\x00v\x00r\x00o\x00n\x00-\x00m\x00i\x00n\x00i\x00u\x00p\x00.\x00p\x00n\ +\x00g\ +\x00\x0a\ +\x0c\x91g'\ +\x00c\ +\x00a\x00m\x00e\x00r\x00a\x00.\x00p\x00n\x00g\ +\x00\x0a\ +\x0e\x0b7\xc7\ +\x00l\ +\x00i\x00n\x00k\x00-\x002\x00.\x00p\x00n\x00g\ +\x00\x0c\ +\x0fy\xb7\xc7\ +\x00m\ +\x00a\x00x\x00i\x00m\x00i\x00z\x00e\x00.\x00p\x00n\x00g\ +\x00\x08\ +\x03\xc6Y\xa7\ +\x00p\ +\x00l\x00u\x00s\x00.\x00p\x00n\x00g\ +\x00\x08\ +\x00GX\x87\ +\x00w\ +\x00i\x00n\x00d\x00.\x00p\x00n\x00g\ +\x00\x10\ +\x0e\x17\x0b\x07\ +\x00c\ +\x00h\x00e\x00v\x00r\x00o\x00n\x00-\x00d\x00o\x00w\x00n\x00.\x00p\x00n\x00g\ +\x00\x0b\ +\x06!\xe3\xc7\ +\x00l\ +\x00o\x00g\x00-\x00o\x00u\x00t\x00.\x00p\x00n\x00g\ +\x00\x0f\ +\x0f\x22d\xc7\ +\x00a\ +\x00r\x00r\x00o\x00w\x00-\x00r\x00i\x00g\x00h\x00t\x00.\x00p\x00n\x00g\ +\x00\x08\ +\x08\xc8Xg\ +\x00s\ +\x00a\x00v\x00e\x00.\x00p\x00n\x00g\ +\x00\x0a\ +\x08\x8b\x06'\ +\x00s\ +\x00q\x00u\x00a\x00r\x00e\x00.\x00p\x00n\x00g\ +\x00\x13\ +\x07\xe6\x94g\ +\x00c\ +\x00a\x00m\x00e\x00r\x00a\x00-\x00a\x00n\x00d\x00-\x00d\x00o\x00w\x00n\x00.\x00p\ +\x00n\x00g\ +\x00\x11\ +\x0e\x92u\xc7\ +\x00c\ +\x00h\x00e\x00v\x00r\x00o\x00n\x00-\x00r\x00i\x00g\x00h\x00t\x00.\x00p\x00n\x00g\ +\ +\x00\x0c\ +\x0f\x88\xf7\xc7\ +\x00m\ +\x00i\x00n\x00i\x00m\x00i\x00z\x00e\x00.\x00p\x00n\x00g\ +\x00\x08\ +\x0cXY'\ +\x00m\ +\x00e\x00n\x00u\x00.\x00p\x00n\x00g\ +\x00\x11\ +\x0e\xe0vg\ +\x003\ +\x000\x00-\x00h\x00e\x00i\x00g\x00h\x00t\x00-\x00s\x00e\x00p\x00.\x00p\x00n\x00g\ +\ +\x00\x0b\ +\x06y\xc2'\ +\x00r\ +\x00e\x00s\x00t\x00o\x00r\x00e\x00.\x00p\x00n\x00g\ +\x00\x10\ +\x00\xe14'\ +\x00c\ +\x00h\x00e\x00v\x00r\x00o\x00n\x00-\x00l\x00e\x00f\x00t\x00.\x00p\x00n\x00g\ +\x00\x08\ +\x00NY'\ +\x00l\ +\x00i\x00n\x00k\x00.\x00p\x00n\x00g\ +\x00\x19\ +\x05\xdc)G\ +\x00c\ +\x00h\x00e\x00v\x00r\x00o\x00n\x00-\x00s\x00t\x00a\x00t\x00u\x00s\x00b\x00a\x00r\ +\x00d\x00o\x00w\x00n\x00.\x00p\x00n\x00g\ +\x00\x0b\ +\x0cb\x08\x07\ +\x00s\ +\x00l\x00i\x00d\x00e\x00r\x00s\x00.\x00p\x00n\x00g\ +\x00\x0c\ +\x01\x8d\xc4'\ +\x00a\ +\x00p\x00e\x00r\x00t\x00u\x00r\x00e\x00.\x00p\x00n\x00g\ +\x00\x0b\ +\x0d\xd7\xa0\xc7\ +\x00s\ +\x00h\x00u\x00f\x00f\x00l\x00e\x00.\x00p\x00n\x00g\ +\x00\x09\ +\x07\xd8\xb7'\ +\x00i\ +\x00m\x00a\x00g\x00e\x00.\x00p\x00n\x00g\ +\x00\x08\ +\x02\x8cY\xa7\ +\x00p\ +\x00l\x00a\x00y\x00.\x00p\x00n\x00g\ +\x00\x09\ +\x06\x98\x83'\ +\x00c\ +\x00l\x00o\x00s\x00e\x00.\x00p\x00n\x00g\ +\x00\x08\ +\x068Z\xa7\ +\x00h\ +\x00o\x00m\x00e\x00.\x00p\x00n\x00g\ +" + +qt_resource_struct = b"\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x02\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x07\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x10\x00\x02\x00\x00\x00\x01\x00\x00\x00\x03\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x10\x00\x02\x00\x00\x00\x01\x00\x00\x00\x04\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x10\x00\x02\x00\x00\x00\x02\x00\x00\x00\x05\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00B\x00\x00\x00\x00\x00\x01\x00\x00\x11X\ +\x00\x00\x01\x87\xfa;1\x13\ +\x00\x00\x00\x22\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x01\x86[\x15\x19\xf8\ +\x00\x00\x00\x10\x00\x02\x00\x00\x00\x01\x00\x00\x00\x08\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x1e\x00\x00\x00\x09\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x01\x8a\x00\x00\x00\x00\x00\x01\x00\x01J<\ +\x00\x00\x01\x88\x10\xc2\x11\x13\ +\x00\x00\x03(\x00\x00\x00\x00\x00\x01\x00\x01VJ\ +\x00\x00\x01\x88\xaf\xe3\x0b\x1f\ +\x00\x00\x03\x02\x00\x00\x00\x00\x00\x01\x00\x01U\x9c\ +\x00\x00\x01\x88\x10-;\x10\ +\x00\x00\x03\x92\x00\x00\x00\x00\x00\x01\x00\x01Y%\ +\x00\x00\x01\x88\xafah\x83\ +\x00\x00\x03\xe4\x00\x00\x00\x00\x00\x01\x00\x01]\x18\ +\x00\x00\x01\x88\x0b~Y8\ +\x00\x00\x01t\x00\x00\x00\x00\x00\x01\x00\x01Ir\ +\x00\x00\x01\x88\x10,G\x94\ +\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x01\x00\x01C\x22\ +\x00\x00\x01\x88\x10\xd4\xce\x88\ +\x00\x00\x00t\x00\x00\x00\x00\x00\x01\x00\x01B\x85\ +\x00\x00\x01\x88\xaf\x91lz\ +\x00\x00\x03>\x00\x00\x00\x00\x00\x01\x00\x01W`\ +\x00\x00\x01\x88\xaf\xf1\xaf\xc6\ +\x00\x00\x01\xc6\x00\x00\x00\x00\x00\x01\x00\x01K\xef\ +\x00\x00\x01\x88\xafd\x17\x99\ +\x00\x00\x04\x12\x00\x00\x00\x00\x00\x01\x00\x01_\x0e\ +\x00\x00\x01\x88\xafHm\xfa\ +\x00\x00\x02\xe6\x00\x00\x00\x00\x00\x01\x00\x01TV\ +\x00\x00\x01\x86[\x15\x19\xf8\ +\x00\x00\x03\xfa\x00\x00\x00\x00\x00\x01\x00\x01^8\ +\x00\x00\x01\x86[\x15\x19\xf8\ +\x00\x00\x00\xf8\x00\x00\x00\x00\x00\x01\x00\x01EQ\ +\x00\x00\x01\x88\xaf\x91\x1d\xf7\ +\x00\x00\x03\xcc\x00\x00\x00\x00\x00\x01\x00\x01[\xf1\ +\x00\x00\x01\x88\xaf_?\xc2\ +\x00\x00\x026\x00\x00\x00\x00\x00\x01\x00\x01O\xcd\ +\x00\x00\x01\x88\x0bw[b\ +\x00\x00\x02\x1c\x00\x00\x00\x00\x00\x01\x00\x01N\xeb\ +\x00\x00\x01\x88\x10\xcb\xf4\xc9\ +\x00\x00\x02\x06\x00\x00\x00\x00\x00\x01\x00\x01M\xba\ +\x00\x00\x01\x88\xafg\x1f\x8f\ +\x00\x00\x02\xa8\x00\x00\x00\x00\x00\x01\x00\x01R\xeb\ +\x00\x00\x01\x86[\x15\x19\xf8\ +\x00\x00\x03v\x00\x00\x00\x00\x00\x01\x00\x01X#\ +\x00\x00\x01\x88\xafS\xa8p\ +\x00\x00\x01\x22\x00\x00\x00\x00\x00\x01\x00\x01E\xef\ +\x00\x00\x01\x88\x10K\x1fH\ +\x00\x00\x03\xb0\x00\x00\x00\x00\x00\x01\x00\x01Z\x9e\ +\x00\x00\x01\x88\x10\xd1\x0e[\ +\x00\x00\x01<\x00\x00\x00\x00\x00\x01\x00\x01Gh\ +\x00\x00\x01\x88\x10\xbe\xc4l\ +\x00\x00\x01\xa0\x00\x00\x00\x00\x00\x01\x00\x01Kd\ +\x00\x00\x01\x88\xaf\x94\xcb\xfc\ +\x00\x00\x00\xc4\x00\x00\x00\x00\x00\x01\x00\x01D\x8d\ +\x00\x00\x01\x88\xaf\xf1\xfa\xa8\ +\x00\x00\x02b\x00\x00\x00\x00\x00\x01\x00\x01Q\x90\ +\x00\x00\x01\x88\x10-\xf8\xba\ +\x00\x00\x02\xbe\x00\x00\x00\x00\x00\x01\x00\x01S\xe7\ +\x00\x00\x01\x88\x0b\xb5L\xa6\ +\x00\x00\x01\xe2\x00\x00\x00\x00\x00\x01\x00\x01L\xf3\ +\x00\x00\x01\x88\x10<\xf1Z\ +\x00\x00\x01V\x00\x00\x00\x00\x00\x01\x00\x01Hv\ +\x00\x00\x01\x86[\x15\x19\xf8\ +\x00\x00\x02\x8a\x00\x00\x00\x00\x00\x01\x00\x01R;\ +\x00\x00\x01\x86[\x15\x19\xf8\ +" + +def qInitResources(): + QtCore.qRegisterResourceData(0x03, qt_resource_struct, qt_resource_name, qt_resource_data) + +def qCleanupResources(): + QtCore.qUnregisterResourceData(0x03, qt_resource_struct, qt_resource_name, qt_resource_data) + +qInitResources() diff --git a/source/sim_uppermachine/modules/server.py b/source/sim_uppermachine/modules/server.py new file mode 100644 index 0000000..d645295 --- /dev/null +++ b/source/sim_uppermachine/modules/server.py @@ -0,0 +1,192 @@ +import socket +from threading import Thread, Event +from typing import Optional +from time import sleep, time +from queue import Queue +import re + + +class Server(object): + def __init__(self): + self._s = None + self._listen_th, self._receive_th = None, None + self.ip, self.port = None, None + self.client_ip, self.client_port, self.client_s = None, None, None + self._last_heartbeat = None + self._closing_callback = None + self._closing_signal = None + self._connected_callback = None + self._connected_signal = None + self._disconnected_callback = None + self._disconnected_signal = None + self._send_callback = None + self._send_signal = None + self._receive_callback = None + self._receive_signal = None + + self._receive_queue = Queue() + self._timeout = 10.0 + self._connection_status, self._need_recv_exit, self._need_listen_exit = Event(), Event(), Event() + + def set_ip_port(self, ip: Optional[str] = None, port: Optional[int] = None): + if ip is not None: + self.ip = ip + if port is not None: + self.port = port + + def set_heartbeat_timeout(self, timeout: float): + self._timeout = timeout + + def set_closing_callback(self, callback): + self._closing_callback = callback + + def set_closing_signal(self, signal): + self._closing_signal = signal + + def set_connected_callback(self, callback): + self._connected_callback = callback + + def set_connected_signal(self, signal): + self._connected_signal = signal + + def set_disconnected_callback(self, callback): + self._disconnected_callback = callback + + def set_disconnected_signal(self, signal): + self._disconnected_signal = signal + + def set_send_callback(self, callback): + self._send_callback = callback + + def set_send_signal(self, signal): + self._send_signal = signal + + def set_receive_callback(self, callback): + self._receive_callback = callback + + def set_receive_signal(self, signal): + self._receive_signal = signal + + def _listen_thread(self, ip: str, port: int): + while not self._need_listen_exit.isSet(): + if self._connection_status.isSet(): + sleep(2) + continue + try: + self._s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self._s.bind((ip, port)) + self._s.listen(1) + # print("connecting...") + self.client_s, (self.client_ip, self.client_port) = self._s.accept() + # print("connected") + self._connection_status.set() + self._need_recv_exit.clear() + self._receive_th = Thread(target=self._receive_thread) + self._receive_th.start() + if self._connected_callback is not None: + self._connected_callback() + if self._connected_signal is not None: + self._connected_signal.emit() + # print("receiving...") + except BaseException as e: + pass + self._close() + + def _close(self) -> None: + try: + self.client_s.shutdown(socket.SHUT_RDWR) + self.client_s.close() + except BaseException as e: + pass + self.client_s, self.client_ip, self.client_port = None, None, None + self._last_heartbeat = None + self._connection_status.clear() + if self._disconnected_callback is not None: + self._disconnected_callback() + if self._disconnected_signal is not None: + self._disconnected_signal.emit() + self._need_recv_exit.set() + + def close(self) -> None: + try: + self._s.close() + except BaseException as e: + pass + if self._closing_callback is not None: + self._closing_callback() + if self._closing_signal is not None: + self._closing_signal.emit() + self._close() + self._need_recv_exit.set() + self._need_listen_exit.set() + + def is_connected(self) -> bool: + return self._connection_status.isSet() + + def start_listen_thread(self, ip: Optional[str] = None, port: Optional[int] = None): + if ip is not None and port is not None: + self.ip, self.port = ip, port + self._listen_th = Thread(target=self._listen_thread, args=(self.ip, self.port)) + self._listen_th.start() + + def _receive_thread(self): + while not self._need_recv_exit.isSet(): + data = None + if not self._connection_status.isSet(): + sleep(2) + continue + try: + self.client_s.settimeout(2) + data = self.client_s.recv(1024) + except BaseException as e: + pass + if self._last_heartbeat is None: + self._last_heartbeat = time() + if time() - self._last_heartbeat > self._timeout: + # print(time() - self._last_heartbeat) + # print("timeout") + self._close() + + if data is not None and len(data) != 0: + if self._receive_callback is not None: + self._receive_callback() + if self._receive_signal is not None: + self._receive_signal.emit(data) + # if data != b"\xaa\x00\x00\x00\x03hb\xff\xff\xff\xbb": + # self._receive_queue.put(data) + # else: + # pass + self._last_heartbeat = time() + + def send_datagram(self, datagram: bytes): + try: + self.client_s.settimeout(2) + self.client_s.sendall(datagram) + if self._send_callback is not None: + self._send_callback(datagram) + if self._send_signal is not None: + self._send_signal.emit(datagram) + except BaseException as e: + # print(e) + self._close() + + @classmethod + def get_server_ip_list(cls) -> list: + addrs = socket.getaddrinfo(socket.gethostname(), None) + addrs = [i[4][0] for i in addrs] + ip4_list = [i for i in addrs if + re.match(r"^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + i) is not None] + ip6_list = [i for i in addrs if + re.match( + r"^([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}$|^([0-9a-fA-F]{1,4}:){1,7}:$|^([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}$|^([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}$|^([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}$|^([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}$|^([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}$|^[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})$|^:((:[0-9a-fA-F]{1,4}){1,7}|:)$", + i) is not None] + ip4_list_192 = [i for i in ip4_list if re.match(r"^192\.168\.\S*$", i) is not None] + + return ip4_list_192 + list(set(ip4_list) - set(ip4_list_192)) + ip6_list + + +if __name__ == '__main__': + # s = Server() + # s.start_listen_thread("192.168.2.125", 13452) + Server.get_server_ip_list() diff --git a/source/sim_uppermachine/modules/ui_functions.py b/source/sim_uppermachine/modules/ui_functions.py new file mode 100644 index 0000000..8ec6d98 --- /dev/null +++ b/source/sim_uppermachine/modules/ui_functions.py @@ -0,0 +1,262 @@ +""" +BY: Miaow, Wanderson M.Pimenta +PROJECT MADE WITH: Qt Designer and PySide6 +V: 1.0.0 + +This project can be used freely for all uses, as long as they maintain the +respective credits only in the Python scripts, any information in the visual +interface (GUI) can be modified without any implication. + +There are limitations on Qt licenses if you want to use your products +commercially, I recommend reading them on the official website: +https://doc.qt.io/qtforpython/licenses.html +""" +from typing import List + +from main import MainWindow +from PySide6.QtCore import (Qt, QPropertyAnimation, QEasingCurve, QParallelAnimationGroup, + QEvent, QTimer) +from PySide6.QtGui import QIcon, QColor, QFontMetrics +from PySide6.QtWidgets import QGraphicsDropShadowEffect, QSizeGrip, QPushButton, QComboBox, QWidget +from modules.app_settings import Settings +from widgets.custom_grips.custom_grips import CustomGrip + +GLOBAL_STATE = False +GLOBAL_TITLE_BAR = True + + +class UIFunctions(MainWindow): + + def maximize_restore(self): + """ + MAXIMIZE/RESTORE + """ + global GLOBAL_STATE + status = GLOBAL_STATE + if status == False: + self.showMaximized() + GLOBAL_STATE = True + self.ui.appMargins.setContentsMargins(0, 0, 0, 0) + self.ui.maximizeRestoreAppBtn.setToolTip("Restore") + self.ui.maximizeRestoreAppBtn.setIcon(QIcon(u":/icons/images/icons/icon_restore.png")) + self.ui.frame_size_grip.hide() + self.left_grip.hide() + self.right_grip.hide() + self.top_grip.hide() + self.bottom_grip.hide() + else: + GLOBAL_STATE = False + self.showNormal() + self.resize(self.width() + 1, self.height() + 1) + self.ui.appMargins.setContentsMargins(10, 10, 10, 10) + self.ui.maximizeRestoreAppBtn.setToolTip("Maximize") + self.ui.maximizeRestoreAppBtn.setIcon(QIcon(u":/icons/images/icons/icon_maximize.png")) + self.ui.frame_size_grip.show() + self.left_grip.show() + self.right_grip.show() + self.top_grip.show() + self.bottom_grip.show() + + def returStatus(self): + """ + RETURN STATUS + """ + return GLOBAL_STATE + + def setStatus(self, status): + """ + SET STATUS + """ + global GLOBAL_STATE + GLOBAL_STATE = status + + def toggleMenu(self, enable): + """ + TOGGLE MENU + """ + if enable: + # GET WIDTH + width = self.ui.leftMenuBg.width() + maxExtend = Settings.MENU_WIDTH + standard = 60 + + # SET MAX WIDTH + if width == 60: + widthExtended = maxExtend + else: + widthExtended = standard + + # ANIMATION + self.animation = QPropertyAnimation(self.ui.leftMenuBg, b"minimumWidth") + self.animation.setDuration(Settings.TIME_ANIMATION) + self.animation.setStartValue(width) + self.animation.setEndValue(widthExtended) + self.animation.setEasingCurve(QEasingCurve.InOutQuart) + self.animation.start() + + def start_box_animation(self, left_box_width, right_box_width, direction): + right_width = 0 + left_width = 0 + + # Check values + if left_box_width == 0 and direction == "left": + left_width = 240 + else: + left_width = 0 + # Check values + if right_box_width == 0 and direction == "right": + right_width = 240 + else: + right_width = 0 + + # ANIMATION RIGHT BOX + self.right_box = QPropertyAnimation(self.ui.extraRightBox, b"minimumWidth") + self.right_box.setDuration(Settings.TIME_ANIMATION) + self.right_box.setStartValue(right_box_width) + self.right_box.setEndValue(right_width) + self.right_box.setEasingCurve(QEasingCurve.InOutQuart) + + # GROUP ANIMATION + self.group = QParallelAnimationGroup() + # self.group.addAnimation(self.left_box) + self.group.addAnimation(self.right_box) + self.group.start() + + def selectMenu(getStyle): + """ + SELECT/DESELECT MENU + """ + select = getStyle + Settings.MENU_SELECTED_STYLESHEET + return select + + def deselectMenu(getStyle): + """ + SELECT/DESELECT MENU + :return: + """ + deselect = getStyle.replace(Settings.MENU_SELECTED_STYLESHEET, "") + return deselect + + def selectStandardMenu(self, widget): + """ + START SELECTION + """ + for w in self.ui.topMenu.findChildren(QPushButton): + if w.objectName() == widget: + w.setStyleSheet(UIFunctions.selectMenu(w.styleSheet())) + + def resetStyle(self, widget): + """ + RESET SELECTION + """ + for w in self.ui.topMenu.findChildren(QPushButton): + if w.objectName() != widget: + w.setStyleSheet(UIFunctions.deselectMenu(w.styleSheet())) + + def theme(self, file, useCustomTheme): + """ + IMPORT THEMES FILES QSS/CSS + """ + if useCustomTheme: + str = open(file, 'r').read() + self.ui.styleSheet.setStyleSheet(str) + + def uiDefinitions(self): + """ + GUI DEFINITIONS + """ + + def dobleClickMaximizeRestore(event): + # IF DOUBLE CLICK CHANGE STATUS + if event.type() == QEvent.MouseButtonDblClick: + QTimer.singleShot(250, lambda: UIFunctions.maximize_restore(self)) + + self.ui.titleRightInfo.mouseDoubleClickEvent = dobleClickMaximizeRestore + + if Settings.ENABLE_CUSTOM_TITLE_BAR: + # STANDARD TITLE BAR + self.setWindowFlags(Qt.FramelessWindowHint) + self.setAttribute(Qt.WA_TranslucentBackground) + + # MOVE WINDOW / MAXIMIZE / RESTORE + def moveWindow(event): + # IF MAXIMIZED CHANGE TO NORMAL + if UIFunctions.returStatus(self): + UIFunctions.maximize_restore(self) + # MOVE WINDOW + if event.buttons() == Qt.LeftButton: + self.move(self.pos() + event.globalPosition().toPoint() - self.drag_pos) + self.drag_pos = event.globalPosition().toPoint() + event.accept() + + def mousePressEvent(event): + self.drag_pos = event.globalPosition().toPoint() + + self.ui.titleRightInfo.mouseMoveEvent = moveWindow + self.ui.leftMenuBg.mouseMoveEvent = moveWindow + self.mousePressEvent = mousePressEvent + + # CUSTOM GRIPS + self.left_grip = CustomGrip(self, Qt.LeftEdge, True) + self.right_grip = CustomGrip(self, Qt.RightEdge, True) + self.top_grip = CustomGrip(self, Qt.TopEdge, True) + self.bottom_grip = CustomGrip(self, Qt.BottomEdge, True) + + else: + self.ui.appMargins.setContentsMargins(0, 0, 0, 0) + self.ui.minimizeAppBtn.hide() + self.ui.maximizeRestoreAppBtn.hide() + self.ui.closeAppBtn.hide() + self.ui.frame_size_grip.hide() + + # DROP SHADOW + self.shadow = QGraphicsDropShadowEffect(self) + self.shadow.setBlurRadius(17) + self.shadow.setXOffset(0) + self.shadow.setYOffset(0) + self.shadow.setColor(QColor(0, 0, 0, 150)) + self.ui.bgApp.setGraphicsEffect(self.shadow) + + # RESIZE WINDOW + def resize_grips(event): + if Settings.ENABLE_CUSTOM_TITLE_BAR: + self.left_grip.setGeometry(0, 10, 10, self.height()) + self.right_grip.setGeometry(self.width() - 10, 10, 10, self.height()) + self.top_grip.setGeometry(0, 0, self.width(), 10) + self.bottom_grip.setGeometry(0, self.height() - 10, self.width(), 10) + + self.sizegrip = QSizeGrip(self.ui.frame_size_grip) + self.sizegrip.setStyleSheet("width: 20px; height: 20px; margin 0px; padding: 0px;") + self.resizeEvent = resize_grips + + # MINIMIZE + self.ui.minimizeAppBtn.clicked.connect(lambda: self.showMinimized()) + + # MAXIMIZE/RESTORE + self.ui.maximizeRestoreAppBtn.clicked.connect(lambda: UIFunctions.maximize_restore(self)) + + # CLOSE APPLICATION + self.ui.closeAppBtn.clicked.connect(self.close) + self.ui.btn_exit.clicked.connect(self.close) + + # COMBOBOX STYLE HACK + box_list: List[QComboBox] = self.ui.styleSheet.findChildren(QComboBox, options=Qt.FindChildrenRecursively) + for box in box_list: + w = box.view().window() + w.setWindowFlags(Qt.Popup | Qt.FramelessWindowHint | Qt.NoDropShadowWindowHint) + w.setAttribute(Qt.WA_TranslucentBackground) + w.setStyleSheet(f"QComboBox QAbstractItemView:item{{height:{w.height()};}}") + + self.ui.cb_start_list = [self.ui.__dict__[f"cb_start_{i}"] for i in range(1, 6)] + self.ui.le_length_list = [self.ui.__dict__[f"le_length_{i}"] for i in range(1, 6)] + self.ui.cb_command_list = [self.ui.__dict__[f"cb_command_{i}"] for i in range(1, 6)] + self.ui.cb_data_list = [self.ui.__dict__[f"cb_data_{i}"] for i in range(1, 6)] + self.ui.le_check_list = [self.ui.__dict__[f"le_check_{i}"] for i in range(1, 6)] + self.ui.cb_end_list = [self.ui.__dict__[f"cb_end_{i}"] for i in range(1, 6)] + self.ui.pb_preset_list = [self.ui.__dict__[f"pb_preset_{i}"] for i in range(1, 6)] + self.ui.pb_send_list = [self.ui.__dict__[f"pb_send_{i}"] for i in range(1, 6)] + + @classmethod + def set_elide_text(cls, widget: QWidget, text: str): + elided_text = widget.fontMetrics().elidedText(text, Qt.ElideMiddle, widget.width() - 20) + widget.setText(elided_text) diff --git a/source/sim_uppermachine/modules/ui_main.py b/source/sim_uppermachine/modules/ui_main.py new file mode 100644 index 0000000..f11db3a --- /dev/null +++ b/source/sim_uppermachine/modules/ui_main.py @@ -0,0 +1,2957 @@ +# -*- coding: utf-8 -*- + +################################################################################ +## Form generated from reading UI file 'main.ui' +## +## Created by: Qt User Interface Compiler version 6.5.0 +## +## WARNING! All changes made in this file will be lost when recompiling UI file! +################################################################################ + +from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale, + QMetaObject, QObject, QPoint, QRect, + QSize, QTime, QUrl, Qt) +from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor, + QFont, QFontDatabase, QGradient, QIcon, + QImage, QKeySequence, QLinearGradient, QPainter, + QPalette, QPixmap, QRadialGradient, QTransform) +from PySide6.QtWidgets import (QApplication, QComboBox, QFrame, QGridLayout, + QHBoxLayout, QHeaderView, QLabel, QLineEdit, + QListView, QMainWindow, QPushButton, QSizePolicy, + QSlider, QSpacerItem, QSpinBox, QStackedWidget, + QTableView, QVBoxLayout, QWidget) +from modules import resources_rc + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + if not MainWindow.objectName(): + MainWindow.setObjectName(u"MainWindow") + MainWindow.resize(950, 650) + MainWindow.setMinimumSize(QSize(950, 650)) + self.styleSheet = QWidget(MainWindow) + self.styleSheet.setObjectName(u"styleSheet") + font = QFont() + font.setFamilies([u"Segoe UI"]) + font.setPointSize(10) + font.setBold(False) + font.setItalic(False) + self.styleSheet.setFont(font) + self.styleSheet.setStyleSheet(u"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"\n" +"SET APP STYLESHEET - FULL STYLES HERE\n" +"DARK THEME - DRACULA COLOR BASED\n" +"\n" +"///////////////////////////////////////////////////////////////////////////////////////////////// */\n" +"\n" +"QWidget{\n" +" color: rgb(221, 221, 221);\n" +" font: 10pt \"Segoe UI\";\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////Tooltip */\n" +"QToolTip {\n" +" color: #ffffff;\n" +" background-color: rgba(33, 37, 43, 180);\n" +" border: 1px solid rgb(44, 49, 58);\n" +" background-image: none;\n" +" background-position: left center;\n" +" background-repeat: no-repeat;\n" +" border: none;\n" +" border-left: 2px solid rgb(255, 121, 198);\n" +" text-align: left;\n" +" padding-left: 8px;\n" +" margin: 0px;\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////Bg App */\n" +"#bgApp { \n" +" background-color: rg" + "b(40, 44, 52);\n" +" border: 1px solid rgb(44, 49, 58);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////Left Menu */\n" +"#leftMenuBg { \n" +" background-color: rgb(33, 37, 43);\n" +"}\n" +"#topLogo {\n" +" background-color: rgb(33, 37, 43);\n" +" background-image: url(:/images/images/images/PyDracula.png);\n" +" background-position: centered;\n" +" background-repeat: no-repeat;\n" +"}\n" +"#titleLeftApp { font: 63 12pt \"Segoe UI Semibold\"; }\n" +"/* #titleLeftDescription { font: 8pt \"Segoe UI\"; color: rgb(189, 147, 249); } */\n" +"#titleLeftDescription { font: 8pt \"Segoe UI\"; color: #ff79c6; }\n" +"\n" +"/* MENUS */\n" +"#topMenu .QPushButton { \n" +" background-origin: padding;\n" +" background-position: left center;\n" +" background-repeat: no-repeat;\n" +" border: none;\n" +" border-left: 20px solid transparent;\n" +" background-color: transparent;\n" +" text-align: left;\n" +" padding-left: 40px;\n" +"}\n" +"#topMenu .QPushButton:hover {\n" +" background-co" + "lor: rgb(40, 44, 52);\n" +"}\n" +"#topMenu .QPushButton:pressed { \n" +" background-color: rgb(189, 147, 249);\n" +" color: rgb(255, 255, 255);\n" +"}\n" +"#topMenu .QLabel {\n" +" border-top: 1px solid rgba(255, 255, 255, 50); /*rgb(113, 126, 149);*/\n" +" margin: 15px 10px;\n" +" height: 2px;\n" +" min-height: 2px;\n" +" max-height: 2px;\n" +"}\n" +"#bottomMenu .QPushButton { \n" +" background-position: left center;\n" +" background-repeat: no-repeat;\n" +" border: none;\n" +" border-left: 20px solid transparent;\n" +" background-color:transparent;\n" +" text-align: left;\n" +" padding-left: 40px;\n" +"}\n" +"#bottomMenu .QPushButton:hover {\n" +" background-color: rgb(40, 44, 52);\n" +"}\n" +"#bottomMenu .QPushButton:pressed { \n" +" background-color: rgb(189, 147, 249);\n" +" color: rgb(255, 255, 255);\n" +"}\n" +"#leftMenuFrame{\n" +" border-top: 3px solid rgb(44, 49, 58);\n" +"}\n" +"\n" +"/* Toggle Button */\n" +"#toggleButton {\n" +" background-position: left center;\n" +" background-repeat: no-repeat;\n" +" border: none;\n" +" bo" + "rder-left: 20px solid transparent;\n" +" background-color: rgb(37, 41, 48);\n" +" text-align: left;\n" +" padding-left: 40px;\n" +" color: rgb(113, 126, 149);\n" +"}\n" +"#toggleButton:hover {\n" +" background-color: rgb(40, 44, 52);\n" +"}\n" +"#toggleButton:pressed {\n" +" background-color: rgb(189, 147, 249);\n" +"}\n" +"\n" +"/* Title Menu */\n" +"#titleRightInfo { padding-left: 10px; }\n" +"\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////Extra Tab */\n" +"#extraLeftBox { \n" +" background-color: rgb(44, 49, 58);\n" +"}\n" +"#extraTopBg{ \n" +" background-color: rgb(189, 147, 249)\n" +"}\n" +"\n" +"/* Icon */\n" +"#extraIcon {\n" +" background-position: center;\n" +" background-repeat: no-repeat;\n" +" background-image: url(:/icons/images/icons/icon_settings.png);\n" +"}\n" +"\n" +"/* Label */\n" +"#extraLabel { color: rgb(255, 255, 255); }\n" +"\n" +"/* Btn Close */\n" +"#extraCloseColumnBtn { background-color: rgba(255, 255, 255, 0); border: none; border-radius: 5px; }\n" +"#e" + "xtraCloseColumnBtn:hover { background-color: rgb(196, 161, 249); border-style: solid; border-radius: 4px; }\n" +"#extraCloseColumnBtn:pressed { background-color: rgb(180, 141, 238); border-style: solid; border-radius: 4px; }\n" +"\n" +"/* Extra Content */\n" +"#extraContent{\n" +" border-top: 3px solid rgb(40, 44, 52);\n" +"}\n" +"\n" +"/* Extra Top Menus */\n" +"#extraTopMenu .QPushButton {\n" +"background-position: left center;\n" +" background-repeat: no-repeat;\n" +" border: none;\n" +" border-left: 22px solid transparent;\n" +" background-color:transparent;\n" +" text-align: left;\n" +" padding-left: 38px;\n" +"}\n" +"#extraTopMenu .QPushButton:hover {\n" +" background-color: rgb(40, 44, 52);\n" +"}\n" +"#extraTopMenu .QPushButton:pressed { \n" +" background-color: rgb(189, 147, 249);\n" +" color: rgb(255, 255, 255);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////Content App */\n" +"#contentTopBg{ \n" +" background-color: rgb(33, 37, 43);\n" +"}\n" +"#contentBot" + "tom{\n" +" border-top: 3px solid rgb(44, 49, 58);\n" +"}\n" +"\n" +"/* Top Buttons */\n" +"#rightButtons .QPushButton { background-color: rgba(255, 255, 255, 0); border: none; border-radius: 5px; }\n" +"#rightButtons .QPushButton:hover { background-color: rgb(44, 49, 57); border-style: solid; border-radius: 4px; }\n" +"#rightButtons .QPushButton:pressed { background-color: rgb(23, 26, 30); border-style: solid; border-radius: 4px; }\n" +"\n" +"#themeSettingsTopDetail { background-color: rgb(189, 147, 249); }\n" +"\n" +"/* Bottom Bar */\n" +"#bottomBar { background-color: rgb(44, 49, 58); }\n" +"#bottomBar QLabel { font-size: 11px; color: rgb(113, 126, 149); padding-left: 5px; padding-right: 10px; padding-bottom: 2px; }\n" +"\n" +"/* CONTENT SETTINGS */\n" +"/* MENUS */\n" +"#contentSettings .QPushButton { \n" +" background-position: left center;\n" +" background-repeat: no-repeat;\n" +" border: none;\n" +" border-left: 22px solid transparent;\n" +" background-color:transparent;\n" +" text-align: left;\n" +" padding-left: 44px;\n" +"" + "}\n" +"#contentSettings .QPushButton:hover {\n" +" background-color: rgb(40, 44, 52);\n" +"}\n" +"#contentSettings .QPushButton:pressed { \n" +" background-color: rgb(189, 147, 249);\n" +" color: rgb(255, 255, 255);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////QTableView */\n" +"QTableView { \n" +" background-color: transparent;\n" +" padding: 10px;\n" +" border-radius: 5px;\n" +" gridline-color: rgb(44, 49, 58);\n" +" padding: 0px;\n" +"}\n" +"QTableView::item{\n" +" border-color: rgb(44, 49, 60);\n" +" padding-left: 5px;\n" +" padding-right: 5px;\n" +" gridline-color: rgb(44, 49, 60);\n" +" text-align: center;\n" +"}\n" +"QTableView::item:selected{\n" +" background-color: rgb(189, 147, 249);\n" +"}\n" +"QHeaderView::section{\n" +" background-color: rgb(33, 37, 43);\n" +" max-width: 30px;\n" +" border: 1px solid rgb(44, 49, 58);\n" +" border-style: none;\n" +" border-bottom: 1px solid rgb(44, 49, 60);\n" +" border-right: 1px solid rgb(44, 49, 60);\n" +" text-ali" + "gn: center;\n" +"}\n" +"QTableView::horizontalHeader { \n" +" background-color: rgb(33, 37, 43);\n" +"}\n" +"QHeaderView::section:horizontal\n" +"{\n" +" border: 1px solid rgb(33, 37, 43);\n" +" background-color: rgb(33, 37, 43);\n" +" padding: 3p, 0px;\n" +" border-top-left-radius: 7px;\n" +" border-top-right-radius: 7px;\n" +"}\n" +"QHeaderView::section:vertical\n" +"{\n" +" border: 1px solid rgb(33, 37, 43);\n" +" border-top-left-radius: 5px;\n" +" border-bottom-left-radius: 5px;\n" +"}\n" +"\n" +"QHeaderView .QScrollBar:horizontal {\n" +" border: none;\n" +" background: rgb(52, 59, 72);\n" +" height: 9px;\n" +" margin: 0px 21px 0 21px;\n" +" border-radius: 0px;\n" +"}\n" +"QHeaderView .QScrollBar:vertical {\n" +" border: none;\n" +" background: rgb(52, 59, 72);\n" +" width: 9px;\n" +" margin: 21px 0 21px 0;\n" +" border-radius: 0px;\n" +" }\n" +"QHeaderView .QScrollBar::handle:horizontal {\n" +" border-radius: 3.5px;\n" +"}\n" +"QHeaderView .QScrollBar:vertical {\n" +" border-radius: 3.5px;\n" +" }\n" +"QTableView ." + "QTableCornerButton::section {\n" +" background: transparent;\n" +" border: none;\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"LineEdit */\n" +"QLineEdit {\n" +" background-color: rgb(33, 37, 43);\n" +" border-radius: 5px;\n" +" border: 2px solid rgb(33, 37, 43);\n" +" padding-left: 5px;\n" +" selection-color: rgb(255, 255, 255);\n" +" selection-background-color: rgb(255, 121, 198);\n" +"}\n" +"QLineEdit:hover {\n" +" border: 2px solid rgb(64, 71, 88);\n" +"}\n" +"QLineEdit:focus {\n" +" border: 2px solid rgb(91, 101, 124);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"SpinBox */\n" +"QSpinBox {\n" +" background-color: rgb(33, 37, 43);\n" +" border-radius: 5px;\n" +" border: 2px solid rgb(33, 37, 43);\n" +" padding-left: 5px;\n" +" selection-color: rgb(255, 255, 255);\n" +" selection-background-color: rgb(255, 121, 198);\n" +"}\n" +"QSpinBox:hover {\n" +" border: 2px solid rgb(64, 71" + ", 88);\n" +"}\n" +"QSpinBox:focus {\n" +" border: 2px solid rgb(91, 101, 124);\n" +"} \n" +"QSpinBox::up-button { \n" +" subcontrol-origin: padding;\n" +" subcontrol-position: top left;\n" +" background-color: rgb(33, 37, 43);\n" +" width: 25px; \n" +" margin: 0px;\n" +" border: none;\n" +" border-right: 3px solid rgba(39, 44, 54, 150) ; \n" +" border-top-left-radius: 5px;\n" +" border-bottom-left-radius: 5px; \n" +"}\n" +"QSpinBox::up-button:pressed { \n" +" background-color: rgba(39, 44, 54, 150);\n" +"}\n" +"QSpinBox::up-arrow {\n" +" image: url(:/icons/images/icons/chevron-miniup.png);\n" +"}\n" +"QSpinBox::down-button { \n" +" subcontrol-origin: padding;\n" +" subcontrol-position: bottom left;\n" +" background-color: rgb(33, 37, 43);\n" +" width: 25px; \n" +" margin: 0px;\n" +" border: none;\n" +" border-right: 3px solid rgba(39, 44, 54, 150) ; \n" +" border-top-left-radius: 5px;\n" +" border-bottom-left-radius: 5px; \n" +"}\n" +"QSpinBox::down-button:pressed { \n" +" background-color: rgba(39, 44, 54, 150);\n" +"}\n" +"QSpinBox::down-arr" + "ow { \n" +" image: url(:/icons/images/icons/chevron-minidown.png);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"PlainTextEdit */\n" +"QPlainTextEdit {\n" +" background-color: rgb(27, 29, 35);\n" +" border-radius: 5px;\n" +" padding: 10px;\n" +" selection-color: rgb(255, 255, 255);\n" +" selection-background-color: rgb(255, 121, 198);\n" +"}\n" +"QPlainTextEdit QScrollBar:vertical {\n" +" width: 8px;\n" +" }\n" +"QPlainTextEdit QScrollBar:horizontal {\n" +" height: 8px;\n" +" }\n" +"QPlainTextEdit:hover {\n" +" border: 2px solid rgb(64, 71, 88);\n" +"}\n" +"QPlainTextEdit:focus {\n" +" border: 2px solid rgb(91, 101, 124);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"ScrollBars */\n" +"QScrollBar:horizontal {\n" +" border: none;\n" +" background: rgb(52, 59, 72);\n" +" height: 8px;\n" +" margin: 0px 21px 0 21px;\n" +" border-radius: 0px;\n" +"}\n" +"QScrollBar::handle:hor" + "izontal {\n" +" background: rgb(189, 147, 249);\n" +" min-width: 25px;\n" +" border-radius: 4px\n" +"}\n" +"QScrollBar::add-line:horizontal {\n" +" border: none;\n" +" background: rgb(55, 63, 77);\n" +" width: 20px;\n" +" border-top-right-radius: 4px;\n" +" border-bottom-right-radius: 4px;\n" +" subcontrol-position: right;\n" +" subcontrol-origin: margin;\n" +"}\n" +"QScrollBar::sub-line:horizontal {\n" +" border: none;\n" +" background: rgb(55, 63, 77);\n" +" width: 20px;\n" +" border-top-left-radius: 4px;\n" +" border-bottom-left-radius: 4px;\n" +" subcontrol-position: left;\n" +" subcontrol-origin: margin;\n" +"}\n" +"QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal\n" +"{\n" +" background: none;\n" +"}\n" +"QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal\n" +"{\n" +" background: none;\n" +"}\n" +" QScrollBar:vertical {\n" +" border: none;\n" +" background: rgb(52, 59, 72);\n" +" width: 8px;\n" +" margin: 21px 0 21px 0;\n" +" border-radius: 0px;\n" +"" + " }\n" +" QScrollBar::handle:vertical { \n" +" background: rgb(189, 147, 249);\n" +" min-height: 25px;\n" +" border-radius: 4px\n" +" }\n" +" QScrollBar::add-line:vertical {\n" +" border: none;\n" +" background: rgb(55, 63, 77);\n" +" height: 20px;\n" +" border-bottom-left-radius: 4px;\n" +" border-bottom-right-radius: 4px;\n" +" subcontrol-position: bottom;\n" +" subcontrol-origin: margin;\n" +" }\n" +" QScrollBar::sub-line:vertical {\n" +" border: none;\n" +" background: rgb(55, 63, 77);\n" +" height: 20px;\n" +" border-top-left-radius: 4px;\n" +" border-top-right-radius: 4px;\n" +" subcontrol-position: top;\n" +" subcontrol-origin: margin;\n" +" }\n" +" QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical {\n" +" background: none;\n" +" }\n" +"\n" +" QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {\n" +" background: none;\n" +" }\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"CheckBox */\n" +"QCheck" + "Box::indicator {\n" +" border: 3px solid rgb(52, 59, 72);\n" +" width: 15px;\n" +" height: 15px;\n" +" border-radius: 10px;\n" +" background: rgb(44, 49, 60);\n" +"}\n" +"QCheckBox::indicator:hover {\n" +" border: 3px solid rgb(58, 66, 81);\n" +"}\n" +"QCheckBox::indicator:checked {\n" +" background: 3px solid rgb(52, 59, 72);\n" +" border: 3px solid rgb(52, 59, 72); \n" +" background-image: url(:/icons/images/icons/cil-check-alt.png);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"RadioButton */\n" +"QRadioButton::indicator {\n" +" border: 3px solid rgb(52, 59, 72);\n" +" width: 15px;\n" +" height: 15px;\n" +" border-radius: 10px;\n" +" background: rgb(44, 49, 60);\n" +"}\n" +"QRadioButton::indicator:hover {\n" +" border: 3px solid rgb(58, 66, 81);\n" +"}\n" +"QRadioButton::indicator:checked {\n" +" background: 3px solid rgb(94, 106, 130);\n" +" border: 3px solid rgb(52, 59, 72); \n" +"}\n" +"\n" +"/* /////////////////////////////////////////" + "////////////////////////////////////////////////////////\n" +"ComboBox */\n" +"QComboBox{\n" +" background-color: rgb(33, 37, 43);\n" +" /*background-color: rgb(27, 29, 35);*/\n" +" border-radius: 5px;\n" +" border: 2px solid rgb(33, 37, 43);\n" +" padding: 5px;\n" +" padding-left: 5px;\n" +"}\n" +"QComboBox:hover{\n" +" border: 2px solid rgb(64, 71, 88);\n" +"}\n" +"QComboBox:focus {\n" +" border: 2px solid rgb(91, 101, 124);\n" +"} \n" +"QComboBox::drop-down {\n" +" subcontrol-origin: padding;\n" +" subcontrol-position: top right;\n" +" width: 25px; \n" +" border-left-width: 3px;\n" +" border-left-color: rgba(39, 44, 54, 150);\n" +" border-left-style: solid;\n" +" border-top-right-radius: 3px;\n" +" border-bottom-right-radius: 3px; \n" +" }\n" +"QComboBox::down-arrow {\n" +" image: url(:/icons/images/icons/chevron-down.png);\n" +"}\n" +"QComboBox::drop-down:pressed {\n" +" background-color: rgba(39, 44, 54, 150);\n" +" }\n" +"QComboBox QAbstractItemView {\n" +" outline: 0px;\n" +" border: 2px solid rgb(33, 37, 43);\n" +" border-radius: 5px;\n" +"" + " color: rgb(255, 121, 198); \n" +" background-color: rgb(33, 37, 43);\n" +" selection-background-color: rgb(52, 59, 72);\n" +" margin-top: 5px;\n" +"/*\n" +" padding-top:5px;\n" +" padding-bottom:5px;\n" +"*/\n" +"}\n" +"QComboBox QAbstractItemView::item {\n" +" border-radius: 5px;\n" +" height: 25px;\n" +"}\n" +"QComboBox QAbstractItemView::item:hover {\n" +" background-color: rgb(52, 59, 72);\n" +"}\n" +"QComboBox QAbstractItemView::item:selected {\n" +" color:rgb(255,255,255);\n" +" background-color: rgb(52, 59, 72);\n" +"}\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"Sliders */\n" +"QSlider::groove:horizontal {\n" +" border-radius: 5px;\n" +" height: 10px;\n" +" margin: 0px;\n" +" background-color: rgb(52, 59, 72);\n" +"}\n" +"QSlider::groove:horizontal:hover {\n" +" background-color: rgb(55, 62, 76);\n" +"}\n" +"QSlider::handle:horizontal {\n" +" background-color: rgb(189, 147, 249);\n" +" border: none;\n" +" height: 10px;\n" +" width: 10px;\n" +" marg" + "in: 0px;\n" +" border-radius: 5px;\n" +"}\n" +"QSlider::handle:horizontal:hover {\n" +" background-color: rgb(195, 155, 255);\n" +"}\n" +"QSlider::handle:horizontal:pressed {\n" +" background-color: rgb(255, 121, 198);\n" +"}\n" +"\n" +"QSlider::groove:vertical {\n" +" border-radius: 5px;\n" +" width: 10px;\n" +" margin: 0px;\n" +" background-color: rgb(52, 59, 72);\n" +"}\n" +"QSlider::groove:vertical:hover {\n" +" background-color: rgb(55, 62, 76);\n" +"}\n" +"QSlider::handle:vertical {\n" +" background-color: rgb(189, 147, 249);\n" +" border: none;\n" +" height: 10px;\n" +" width: 10px;\n" +" margin: 0px;\n" +" border-radius: 5px;\n" +"}\n" +"QSlider::handle:vertical:hover {\n" +" background-color: rgb(195, 155, 255);\n" +"}\n" +"QSlider::handle:vertical:pressed {\n" +" background-color: rgb(255, 121, 198);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"CommandLinkButton */\n" +"QCommandLinkButton { \n" +" color: rgb(255, 121, 198);\n" +"" + " border-radius: 5px;\n" +" padding: 5px;\n" +" color: rgb(255, 170, 255);\n" +"}\n" +"QCommandLinkButton:hover { \n" +" color: rgb(255, 170, 255);\n" +" background-color: rgb(44, 49, 60);\n" +"}\n" +"QCommandLinkButton:pressed { \n" +" color: rgb(189, 147, 249);\n" +" background-color: rgb(52, 58, 71);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"ListView */\n" +"QListView {\n" +" background-color: rgb(33, 37, 43);\n" +" border-radius: 5px;\n" +" border: 2px solid rgb(33, 37, 43);\n" +" outline: none;\n" +" alternate-background-color:yellow;\n" +"}\n" +"QListView::item {\n" +" height: 30px;\n" +" border-radius: 5px;\n" +"}\n" +"QListView::item:hover {\n" +" background-color: rgb(52, 59, 72);\n" +"}\n" +"QListView::item:selected {\n" +" color:rgb(255,255,255);\n" +" background-color: rgb(52, 59, 72);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"TextEdit */\n" +"QTextEdit {\n" +" background-co" + "lor: rgb(33, 37, 43);\n" +" border-radius: 5px;\n" +" border: 2px solid rgb(33, 37, 43);\n" +" padding-left: 10px;\n" +" selection-color: rgb(255, 255, 255);\n" +" selection-background-color: rgb(255, 121, 198);\n" +"}\n" +"\n" +"QTextEdit:hover {\n" +" border: 2px solid rgb(64, 71, 88);\n" +"}\n" +"QTextEdit:focus {\n" +" border: 2px solid rgb(91, 101, 124);\n" +"}\n" +"\n" +"/* /////////////////////////////////////////////////////////////////////////////////////////////////\n" +"Button */\n" +"\n" +"#pagesContainer QPushButton {\n" +" margin: 0px;\n" +" background-origin: content;\n" +" background-position: left;\n" +" background-repeat: no-repeat;\n" +" border: 2px solid rgb(52, 59, 72);\n" +" border-radius: 5px; \n" +" background-color: rgb(52, 59, 72);\n" +"}\n" +"#pagesContainer QPushButton:hover {\n" +" background-color: rgb(57, 65, 80);\n" +" border: 2px solid rgb(61, 70, 86);\n" +"}\n" +"#pagesContainer QPushButton:pressed { \n" +" background-color: rgb(35, 40, 49);\n" +" border: 2px solid rgb(43, 50, 61);\n" +"}\n" +"\n" +"/* " + "/////////////////////////////////////////////////////////////////////////////////////////////////\n" +"StackedWidget */\n" +"\n" +"#page_home, #page_connection, #page_divider, #page_valvedata {\n" +" background-color: transparent;\n" +"}\n" +"") + self.appMargins = QVBoxLayout(self.styleSheet) + self.appMargins.setSpacing(0) + self.appMargins.setObjectName(u"appMargins") + self.appMargins.setContentsMargins(10, 10, 10, 10) + self.bgApp = QFrame(self.styleSheet) + self.bgApp.setObjectName(u"bgApp") + self.bgApp.setStyleSheet(u"") + self.bgApp.setFrameShape(QFrame.NoFrame) + self.bgApp.setFrameShadow(QFrame.Raised) + self.appLayout = QHBoxLayout(self.bgApp) + self.appLayout.setSpacing(0) + self.appLayout.setObjectName(u"appLayout") + self.appLayout.setContentsMargins(0, 0, 0, 0) + self.leftMenuBg = QFrame(self.bgApp) + self.leftMenuBg.setObjectName(u"leftMenuBg") + self.leftMenuBg.setMinimumSize(QSize(60, 0)) + self.leftMenuBg.setMaximumSize(QSize(60, 16777215)) + self.leftMenuBg.setFrameShape(QFrame.NoFrame) + self.leftMenuBg.setFrameShadow(QFrame.Raised) + self.verticalLayout_3 = QVBoxLayout(self.leftMenuBg) + self.verticalLayout_3.setSpacing(0) + self.verticalLayout_3.setObjectName(u"verticalLayout_3") + self.verticalLayout_3.setContentsMargins(0, 0, 0, 0) + self.topLogoInfo = QFrame(self.leftMenuBg) + self.topLogoInfo.setObjectName(u"topLogoInfo") + self.topLogoInfo.setMinimumSize(QSize(0, 50)) + self.topLogoInfo.setMaximumSize(QSize(16777215, 50)) + self.topLogoInfo.setFrameShape(QFrame.NoFrame) + self.topLogoInfo.setFrameShadow(QFrame.Raised) + self.topLogo = QFrame(self.topLogoInfo) + self.topLogo.setObjectName(u"topLogo") + self.topLogo.setGeometry(QRect(10, 5, 42, 42)) + self.topLogo.setMinimumSize(QSize(42, 42)) + self.topLogo.setMaximumSize(QSize(42, 42)) + self.topLogo.setFrameShape(QFrame.NoFrame) + self.topLogo.setFrameShadow(QFrame.Raised) + self.titleLeftApp = QLabel(self.topLogoInfo) + self.titleLeftApp.setObjectName(u"titleLeftApp") + self.titleLeftApp.setGeometry(QRect(70, 8, 160, 20)) + font1 = QFont() + font1.setFamilies([u"Segoe UI Semibold"]) + font1.setPointSize(12) + font1.setBold(False) + font1.setItalic(False) + self.titleLeftApp.setFont(font1) + self.titleLeftApp.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignTop) + self.titleLeftDescription = QLabel(self.topLogoInfo) + self.titleLeftDescription.setObjectName(u"titleLeftDescription") + self.titleLeftDescription.setGeometry(QRect(70, 27, 160, 16)) + self.titleLeftDescription.setMaximumSize(QSize(16777215, 16)) + font2 = QFont() + font2.setFamilies([u"Segoe UI"]) + font2.setPointSize(8) + font2.setBold(False) + font2.setItalic(False) + self.titleLeftDescription.setFont(font2) + self.titleLeftDescription.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignTop) + + self.verticalLayout_3.addWidget(self.topLogoInfo) + + self.leftMenuFrame = QFrame(self.leftMenuBg) + self.leftMenuFrame.setObjectName(u"leftMenuFrame") + self.leftMenuFrame.setFrameShape(QFrame.NoFrame) + self.leftMenuFrame.setFrameShadow(QFrame.Raised) + self.verticalMenuLayout = QVBoxLayout(self.leftMenuFrame) + self.verticalMenuLayout.setSpacing(0) + self.verticalMenuLayout.setObjectName(u"verticalMenuLayout") + self.verticalMenuLayout.setContentsMargins(0, 0, 0, 0) + self.toggleBox = QFrame(self.leftMenuFrame) + self.toggleBox.setObjectName(u"toggleBox") + self.toggleBox.setMaximumSize(QSize(16777215, 45)) + self.toggleBox.setFrameShape(QFrame.NoFrame) + self.toggleBox.setFrameShadow(QFrame.Raised) + self.verticalLayout_4 = QVBoxLayout(self.toggleBox) + self.verticalLayout_4.setSpacing(0) + self.verticalLayout_4.setObjectName(u"verticalLayout_4") + self.verticalLayout_4.setContentsMargins(0, 0, 0, 0) + self.toggleButton = QPushButton(self.toggleBox) + self.toggleButton.setObjectName(u"toggleButton") + sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Fixed) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.toggleButton.sizePolicy().hasHeightForWidth()) + self.toggleButton.setSizePolicy(sizePolicy) + self.toggleButton.setMinimumSize(QSize(0, 50)) + self.toggleButton.setFont(font) + self.toggleButton.setCursor(QCursor(Qt.PointingHandCursor)) + self.toggleButton.setLayoutDirection(Qt.LeftToRight) + self.toggleButton.setStyleSheet(u"background-image: url(:/icons/images/icons/menu.png);") + + self.verticalLayout_4.addWidget(self.toggleButton) + + + self.verticalMenuLayout.addWidget(self.toggleBox) + + self.topMenu = QFrame(self.leftMenuFrame) + self.topMenu.setObjectName(u"topMenu") + self.topMenu.setFrameShape(QFrame.NoFrame) + self.topMenu.setFrameShadow(QFrame.Raised) + self.verticalLayout_8 = QVBoxLayout(self.topMenu) + self.verticalLayout_8.setSpacing(0) + self.verticalLayout_8.setObjectName(u"verticalLayout_8") + self.verticalLayout_8.setContentsMargins(0, 0, 0, 0) + self.btn_home = QPushButton(self.topMenu) + self.btn_home.setObjectName(u"btn_home") + sizePolicy.setHeightForWidth(self.btn_home.sizePolicy().hasHeightForWidth()) + self.btn_home.setSizePolicy(sizePolicy) + self.btn_home.setMinimumSize(QSize(0, 50)) + self.btn_home.setFont(font) + self.btn_home.setCursor(QCursor(Qt.PointingHandCursor)) + self.btn_home.setLayoutDirection(Qt.LeftToRight) + self.btn_home.setStyleSheet(u"background-image: url(:/icons/images/icons/home.png);") + + self.verticalLayout_8.addWidget(self.btn_home) + + self.btn_connection = QPushButton(self.topMenu) + self.btn_connection.setObjectName(u"btn_connection") + self.btn_connection.setEnabled(True) + sizePolicy.setHeightForWidth(self.btn_connection.sizePolicy().hasHeightForWidth()) + self.btn_connection.setSizePolicy(sizePolicy) + self.btn_connection.setMinimumSize(QSize(0, 50)) + self.btn_connection.setFont(font) + self.btn_connection.setCursor(QCursor(Qt.PointingHandCursor)) + self.btn_connection.setLayoutDirection(Qt.LeftToRight) + self.btn_connection.setStyleSheet(u"background-image: url(:/icons/images/icons/sliders.png);") + + self.verticalLayout_8.addWidget(self.btn_connection) + + self.btn_divider = QPushButton(self.topMenu) + self.btn_divider.setObjectName(u"btn_divider") + sizePolicy.setHeightForWidth(self.btn_divider.sizePolicy().hasHeightForWidth()) + self.btn_divider.setSizePolicy(sizePolicy) + self.btn_divider.setMinimumSize(QSize(0, 50)) + self.btn_divider.setFont(font) + self.btn_divider.setCursor(QCursor(Qt.PointingHandCursor)) + self.btn_divider.setLayoutDirection(Qt.LeftToRight) + self.btn_divider.setStyleSheet(u"background-image: url(:/icons/images/icons/aperture.png);") + + self.verticalLayout_8.addWidget(self.btn_divider) + + self.btn_valvedata = QPushButton(self.topMenu) + self.btn_valvedata.setObjectName(u"btn_valvedata") + self.btn_valvedata.setEnabled(True) + sizePolicy.setHeightForWidth(self.btn_valvedata.sizePolicy().hasHeightForWidth()) + self.btn_valvedata.setSizePolicy(sizePolicy) + self.btn_valvedata.setMinimumSize(QSize(0, 50)) + self.btn_valvedata.setFont(font) + self.btn_valvedata.setCursor(QCursor(Qt.PointingHandCursor)) + self.btn_valvedata.setLayoutDirection(Qt.LeftToRight) + self.btn_valvedata.setStyleSheet(u"background-image: url(:/icons/images/icons/image.png);") + + self.verticalLayout_8.addWidget(self.btn_valvedata) + + + self.verticalMenuLayout.addWidget(self.topMenu, 0, Qt.AlignTop) + + self.bottomMenu = QFrame(self.leftMenuFrame) + self.bottomMenu.setObjectName(u"bottomMenu") + self.bottomMenu.setFrameShape(QFrame.NoFrame) + self.bottomMenu.setFrameShadow(QFrame.Raised) + self.verticalLayout_9 = QVBoxLayout(self.bottomMenu) + self.verticalLayout_9.setSpacing(0) + self.verticalLayout_9.setObjectName(u"verticalLayout_9") + self.verticalLayout_9.setContentsMargins(0, 0, 0, 0) + self.btn_exit = QPushButton(self.bottomMenu) + self.btn_exit.setObjectName(u"btn_exit") + sizePolicy.setHeightForWidth(self.btn_exit.sizePolicy().hasHeightForWidth()) + self.btn_exit.setSizePolicy(sizePolicy) + self.btn_exit.setMinimumSize(QSize(0, 50)) + self.btn_exit.setFont(font) + self.btn_exit.setCursor(QCursor(Qt.PointingHandCursor)) + self.btn_exit.setLayoutDirection(Qt.LeftToRight) + self.btn_exit.setStyleSheet(u"background-image: url(:/icons/images/icons/log-out.png);") + + self.verticalLayout_9.addWidget(self.btn_exit) + + + self.verticalMenuLayout.addWidget(self.bottomMenu, 0, Qt.AlignBottom) + + + self.verticalLayout_3.addWidget(self.leftMenuFrame) + + + self.appLayout.addWidget(self.leftMenuBg) + + self.contentBox = QFrame(self.bgApp) + self.contentBox.setObjectName(u"contentBox") + self.contentBox.setFrameShape(QFrame.NoFrame) + self.contentBox.setFrameShadow(QFrame.Raised) + self.verticalLayout_2 = QVBoxLayout(self.contentBox) + self.verticalLayout_2.setSpacing(0) + self.verticalLayout_2.setObjectName(u"verticalLayout_2") + self.verticalLayout_2.setContentsMargins(0, 0, 0, 0) + self.contentTopBg = QFrame(self.contentBox) + self.contentTopBg.setObjectName(u"contentTopBg") + self.contentTopBg.setMinimumSize(QSize(0, 50)) + self.contentTopBg.setMaximumSize(QSize(16777215, 50)) + self.contentTopBg.setFrameShape(QFrame.NoFrame) + self.contentTopBg.setFrameShadow(QFrame.Raised) + self.horizontalLayout = QHBoxLayout(self.contentTopBg) + self.horizontalLayout.setSpacing(0) + self.horizontalLayout.setObjectName(u"horizontalLayout") + self.horizontalLayout.setContentsMargins(0, 0, 10, 0) + self.leftBox = QFrame(self.contentTopBg) + self.leftBox.setObjectName(u"leftBox") + sizePolicy1 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Preferred) + sizePolicy1.setHorizontalStretch(0) + sizePolicy1.setVerticalStretch(0) + sizePolicy1.setHeightForWidth(self.leftBox.sizePolicy().hasHeightForWidth()) + self.leftBox.setSizePolicy(sizePolicy1) + self.leftBox.setFrameShape(QFrame.NoFrame) + self.leftBox.setFrameShadow(QFrame.Raised) + self.horizontalLayout_3 = QHBoxLayout(self.leftBox) + self.horizontalLayout_3.setSpacing(0) + self.horizontalLayout_3.setObjectName(u"horizontalLayout_3") + self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0) + self.titleRightInfo = QLabel(self.leftBox) + self.titleRightInfo.setObjectName(u"titleRightInfo") + sizePolicy2 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding) + sizePolicy2.setHorizontalStretch(0) + sizePolicy2.setVerticalStretch(0) + sizePolicy2.setHeightForWidth(self.titleRightInfo.sizePolicy().hasHeightForWidth()) + self.titleRightInfo.setSizePolicy(sizePolicy2) + self.titleRightInfo.setMaximumSize(QSize(16777215, 45)) + self.titleRightInfo.setFont(font) + self.titleRightInfo.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + + self.horizontalLayout_3.addWidget(self.titleRightInfo) + + + self.horizontalLayout.addWidget(self.leftBox) + + self.rightButtons = QFrame(self.contentTopBg) + self.rightButtons.setObjectName(u"rightButtons") + self.rightButtons.setMinimumSize(QSize(0, 28)) + self.rightButtons.setFrameShape(QFrame.NoFrame) + self.rightButtons.setFrameShadow(QFrame.Raised) + self.horizontalLayout_2 = QHBoxLayout(self.rightButtons) + self.horizontalLayout_2.setSpacing(5) + self.horizontalLayout_2.setObjectName(u"horizontalLayout_2") + self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) + self.minimizeAppBtn = QPushButton(self.rightButtons) + self.minimizeAppBtn.setObjectName(u"minimizeAppBtn") + self.minimizeAppBtn.setMinimumSize(QSize(28, 28)) + self.minimizeAppBtn.setMaximumSize(QSize(28, 28)) + self.minimizeAppBtn.setCursor(QCursor(Qt.PointingHandCursor)) + icon = QIcon() + icon.addFile(u":/icons/images/icons/minimize.png", QSize(), QIcon.Normal, QIcon.Off) + self.minimizeAppBtn.setIcon(icon) + self.minimizeAppBtn.setIconSize(QSize(20, 20)) + + self.horizontalLayout_2.addWidget(self.minimizeAppBtn) + + self.maximizeRestoreAppBtn = QPushButton(self.rightButtons) + self.maximizeRestoreAppBtn.setObjectName(u"maximizeRestoreAppBtn") + self.maximizeRestoreAppBtn.setMinimumSize(QSize(28, 28)) + self.maximizeRestoreAppBtn.setMaximumSize(QSize(28, 28)) + font3 = QFont() + font3.setFamilies([u"Segoe UI"]) + font3.setPointSize(10) + font3.setBold(False) + font3.setItalic(False) + font3.setStyleStrategy(QFont.PreferDefault) + self.maximizeRestoreAppBtn.setFont(font3) + self.maximizeRestoreAppBtn.setCursor(QCursor(Qt.PointingHandCursor)) + icon1 = QIcon() + icon1.addFile(u":/icons/images/icons/maximize.png", QSize(), QIcon.Normal, QIcon.Off) + self.maximizeRestoreAppBtn.setIcon(icon1) + self.maximizeRestoreAppBtn.setIconSize(QSize(20, 20)) + + self.horizontalLayout_2.addWidget(self.maximizeRestoreAppBtn) + + self.closeAppBtn = QPushButton(self.rightButtons) + self.closeAppBtn.setObjectName(u"closeAppBtn") + self.closeAppBtn.setMinimumSize(QSize(28, 28)) + self.closeAppBtn.setMaximumSize(QSize(28, 28)) + self.closeAppBtn.setCursor(QCursor(Qt.PointingHandCursor)) + icon2 = QIcon() + icon2.addFile(u":/icons/images/icons/close.png", QSize(), QIcon.Normal, QIcon.Off) + self.closeAppBtn.setIcon(icon2) + self.closeAppBtn.setIconSize(QSize(20, 20)) + + self.horizontalLayout_2.addWidget(self.closeAppBtn) + + + self.horizontalLayout.addWidget(self.rightButtons, 0, Qt.AlignRight) + + + self.verticalLayout_2.addWidget(self.contentTopBg) + + self.contentBottom = QFrame(self.contentBox) + self.contentBottom.setObjectName(u"contentBottom") + self.contentBottom.setFrameShape(QFrame.NoFrame) + self.contentBottom.setFrameShadow(QFrame.Raised) + self.verticalLayout_6 = QVBoxLayout(self.contentBottom) + self.verticalLayout_6.setSpacing(0) + self.verticalLayout_6.setObjectName(u"verticalLayout_6") + self.verticalLayout_6.setContentsMargins(0, 0, 0, 0) + self.content = QFrame(self.contentBottom) + self.content.setObjectName(u"content") + self.content.setFrameShape(QFrame.NoFrame) + self.content.setFrameShadow(QFrame.Raised) + self.horizontalLayout_4 = QHBoxLayout(self.content) + self.horizontalLayout_4.setSpacing(0) + self.horizontalLayout_4.setObjectName(u"horizontalLayout_4") + self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0) + self.pagesContainer = QFrame(self.content) + self.pagesContainer.setObjectName(u"pagesContainer") + self.pagesContainer.setFrameShape(QFrame.NoFrame) + self.pagesContainer.setFrameShadow(QFrame.Raised) + self.verticalLayout_15 = QVBoxLayout(self.pagesContainer) + self.verticalLayout_15.setSpacing(0) + self.verticalLayout_15.setObjectName(u"verticalLayout_15") + self.verticalLayout_15.setContentsMargins(10, 0, 10, 10) + self.stackedWidget = QStackedWidget(self.pagesContainer) + self.stackedWidget.setObjectName(u"stackedWidget") + self.page_home = QWidget() + self.page_home.setObjectName(u"page_home") + self.page_home.setStyleSheet(u"background-image: url(:/images/images/images/PyDracula_vertical.png);\n" +"background-position: center;\n" +"background-repeat: no-repeat;") + self.stackedWidget.addWidget(self.page_home) + self.page_connection = QWidget() + self.page_connection.setObjectName(u"page_connection") + self.page_connection.setStyleSheet(u"") + self.verticalLayout = QVBoxLayout(self.page_connection) + self.verticalLayout.setSpacing(10) + self.verticalLayout.setObjectName(u"verticalLayout") + self.verticalLayout.setContentsMargins(10, 5, 10, 10) + self.row_1 = QFrame(self.page_connection) + self.row_1.setObjectName(u"row_1") + self.row_1.setFrameShape(QFrame.StyledPanel) + self.row_1.setFrameShadow(QFrame.Raised) + self.verticalLayout_16 = QVBoxLayout(self.row_1) + self.verticalLayout_16.setSpacing(0) + self.verticalLayout_16.setObjectName(u"verticalLayout_16") + self.verticalLayout_16.setContentsMargins(0, 0, 0, 0) + self.frame_div_content_1 = QFrame(self.row_1) + self.frame_div_content_1.setObjectName(u"frame_div_content_1") + self.frame_div_content_1.setMinimumSize(QSize(0, 110)) + self.frame_div_content_1.setMaximumSize(QSize(16777215, 110)) + self.frame_div_content_1.setFrameShape(QFrame.NoFrame) + self.frame_div_content_1.setFrameShadow(QFrame.Raised) + self.verticalLayout_17 = QVBoxLayout(self.frame_div_content_1) + self.verticalLayout_17.setSpacing(0) + self.verticalLayout_17.setObjectName(u"verticalLayout_17") + self.verticalLayout_17.setContentsMargins(0, 0, 0, 0) + self.frame_title_wid_1 = QFrame(self.frame_div_content_1) + self.frame_title_wid_1.setObjectName(u"frame_title_wid_1") + self.frame_title_wid_1.setMaximumSize(QSize(16777215, 35)) + self.frame_title_wid_1.setFrameShape(QFrame.StyledPanel) + self.frame_title_wid_1.setFrameShadow(QFrame.Raised) + self.verticalLayout_18 = QVBoxLayout(self.frame_title_wid_1) + self.verticalLayout_18.setObjectName(u"verticalLayout_18") + self.labelBoxBlenderInstalation = QLabel(self.frame_title_wid_1) + self.labelBoxBlenderInstalation.setObjectName(u"labelBoxBlenderInstalation") + self.labelBoxBlenderInstalation.setFont(font) + self.labelBoxBlenderInstalation.setStyleSheet(u"") + + self.verticalLayout_18.addWidget(self.labelBoxBlenderInstalation) + + + self.verticalLayout_17.addWidget(self.frame_title_wid_1) + + self.frame_content_wid_1 = QFrame(self.frame_div_content_1) + self.frame_content_wid_1.setObjectName(u"frame_content_wid_1") + self.frame_content_wid_1.setFrameShape(QFrame.NoFrame) + self.frame_content_wid_1.setFrameShadow(QFrame.Raised) + self.verticalLayout_28 = QVBoxLayout(self.frame_content_wid_1) + self.verticalLayout_28.setSpacing(3) + self.verticalLayout_28.setObjectName(u"verticalLayout_28") + self.horizontalLayout_9 = QHBoxLayout() + self.horizontalLayout_9.setObjectName(u"horizontalLayout_9") + self.le_profile_file = QLineEdit(self.frame_content_wid_1) + self.le_profile_file.setObjectName(u"le_profile_file") + self.le_profile_file.setMinimumSize(QSize(0, 30)) + self.le_profile_file.setStyleSheet(u"") + self.le_profile_file.setReadOnly(True) + + self.horizontalLayout_9.addWidget(self.le_profile_file) + + self.pb_load_profile = QPushButton(self.frame_content_wid_1) + self.pb_load_profile.setObjectName(u"pb_load_profile") + sizePolicy3 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed) + sizePolicy3.setHorizontalStretch(0) + sizePolicy3.setVerticalStretch(0) + sizePolicy3.setHeightForWidth(self.pb_load_profile.sizePolicy().hasHeightForWidth()) + self.pb_load_profile.setSizePolicy(sizePolicy3) + self.pb_load_profile.setMinimumSize(QSize(75, 30)) + self.pb_load_profile.setFont(font) + self.pb_load_profile.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_load_profile.setStyleSheet(u"") + icon3 = QIcon() + icon3.addFile(u":/icons/images/icons/cil-folder-open.png", QSize(), QIcon.Normal, QIcon.Off) + self.pb_load_profile.setIcon(icon3) + + self.horizontalLayout_9.addWidget(self.pb_load_profile) + + self.pb_save_profile = QPushButton(self.frame_content_wid_1) + self.pb_save_profile.setObjectName(u"pb_save_profile") + sizePolicy3.setHeightForWidth(self.pb_save_profile.sizePolicy().hasHeightForWidth()) + self.pb_save_profile.setSizePolicy(sizePolicy3) + self.pb_save_profile.setMinimumSize(QSize(75, 30)) + self.pb_save_profile.setFont(font) + self.pb_save_profile.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_save_profile.setStyleSheet(u"") + icon4 = QIcon() + icon4.addFile(u":/icons/images/icons/save.png", QSize(), QIcon.Normal, QIcon.Off) + self.pb_save_profile.setIcon(icon4) + + self.horizontalLayout_9.addWidget(self.pb_save_profile) + + + self.verticalLayout_28.addLayout(self.horizontalLayout_9) + + self.labelVersion_4 = QLabel(self.frame_content_wid_1) + self.labelVersion_4.setObjectName(u"labelVersion_4") + sizePolicy3.setHeightForWidth(self.labelVersion_4.sizePolicy().hasHeightForWidth()) + self.labelVersion_4.setSizePolicy(sizePolicy3) + self.labelVersion_4.setMinimumSize(QSize(0, 15)) + self.labelVersion_4.setMaximumSize(QSize(16777215, 15)) + self.labelVersion_4.setStyleSheet(u"color: rgb(113, 126, 149);") + self.labelVersion_4.setLineWidth(1) + self.labelVersion_4.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + + self.verticalLayout_28.addWidget(self.labelVersion_4) + + + self.verticalLayout_17.addWidget(self.frame_content_wid_1) + + + self.verticalLayout_16.addWidget(self.frame_div_content_1) + + + self.verticalLayout.addWidget(self.row_1) + + self.frame_title_wid_2 = QFrame(self.page_connection) + self.frame_title_wid_2.setObjectName(u"frame_title_wid_2") + self.frame_title_wid_2.setMaximumSize(QSize(16777215, 35)) + self.frame_title_wid_2.setFrameShape(QFrame.StyledPanel) + self.frame_title_wid_2.setFrameShadow(QFrame.Raised) + self.verticalLayout_23 = QVBoxLayout(self.frame_title_wid_2) + self.verticalLayout_23.setObjectName(u"verticalLayout_23") + self.labelBoxBlenderInstalation_3 = QLabel(self.frame_title_wid_2) + self.labelBoxBlenderInstalation_3.setObjectName(u"labelBoxBlenderInstalation_3") + self.labelBoxBlenderInstalation_3.setFont(font) + self.labelBoxBlenderInstalation_3.setStyleSheet(u"") + + self.verticalLayout_23.addWidget(self.labelBoxBlenderInstalation_3) + + + self.verticalLayout.addWidget(self.frame_title_wid_2) + + self.row_2 = QFrame(self.page_connection) + self.row_2.setObjectName(u"row_2") + self.row_2.setFrameShape(QFrame.StyledPanel) + self.row_2.setFrameShadow(QFrame.Raised) + self.horizontalLayout_10 = QHBoxLayout(self.row_2) + self.horizontalLayout_10.setSpacing(25) + self.horizontalLayout_10.setObjectName(u"horizontalLayout_10") + self.verticalLayout_26 = QVBoxLayout() + self.verticalLayout_26.setSpacing(10) + self.verticalLayout_26.setObjectName(u"verticalLayout_26") + self.lbl_server_ip = QLabel(self.row_2) + self.lbl_server_ip.setObjectName(u"lbl_server_ip") + sizePolicy3.setHeightForWidth(self.lbl_server_ip.sizePolicy().hasHeightForWidth()) + self.lbl_server_ip.setSizePolicy(sizePolicy3) + self.lbl_server_ip.setMinimumSize(QSize(0, 26)) + self.lbl_server_ip.setMaximumSize(QSize(16777215, 26)) + self.lbl_server_ip.setStyleSheet(u"color: rgb(113, 126, 149);") + self.lbl_server_ip.setLineWidth(1) + self.lbl_server_ip.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + + self.verticalLayout_26.addWidget(self.lbl_server_ip) + + self.cb_server_ip = QComboBox(self.row_2) + self.cb_server_ip.setObjectName(u"cb_server_ip") + self.cb_server_ip.setEnabled(True) + sizePolicy3.setHeightForWidth(self.cb_server_ip.sizePolicy().hasHeightForWidth()) + self.cb_server_ip.setSizePolicy(sizePolicy3) + self.cb_server_ip.setMinimumSize(QSize(0, 34)) + self.cb_server_ip.setMaximumSize(QSize(16777215, 34)) + self.cb_server_ip.setFont(font) + self.cb_server_ip.setCursor(QCursor(Qt.PointingHandCursor)) + self.cb_server_ip.setStyleSheet(u"") + self.cb_server_ip.setIconSize(QSize(16, 16)) + + self.verticalLayout_26.addWidget(self.cb_server_ip) + + self.lbl_server_port = QLabel(self.row_2) + self.lbl_server_port.setObjectName(u"lbl_server_port") + sizePolicy3.setHeightForWidth(self.lbl_server_port.sizePolicy().hasHeightForWidth()) + self.lbl_server_port.setSizePolicy(sizePolicy3) + self.lbl_server_port.setMinimumSize(QSize(0, 26)) + self.lbl_server_port.setMaximumSize(QSize(16777215, 26)) + self.lbl_server_port.setStyleSheet(u"color: rgb(113, 126, 149);") + self.lbl_server_port.setLineWidth(1) + self.lbl_server_port.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + + self.verticalLayout_26.addWidget(self.lbl_server_port) + + self.sb_server_port = QSpinBox(self.row_2) + self.sb_server_port.setObjectName(u"sb_server_port") + self.sb_server_port.setMinimumSize(QSize(0, 34)) + self.sb_server_port.setMinimum(1) + self.sb_server_port.setMaximum(65535) + self.sb_server_port.setValue(13452) + + self.verticalLayout_26.addWidget(self.sb_server_port) + + self.verticalSpacer_3 = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding) + + self.verticalLayout_26.addItem(self.verticalSpacer_3) + + + self.horizontalLayout_10.addLayout(self.verticalLayout_26) + + self.horizontalSpacer = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) + + self.horizontalLayout_10.addItem(self.horizontalSpacer) + + self.horizontalLayout_10.setStretch(0, 1) + self.horizontalLayout_10.setStretch(1, 1) + + self.verticalLayout.addWidget(self.row_2) + + self.verticalSpacer = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding) + + self.verticalLayout.addItem(self.verticalSpacer) + + self.stackedWidget.addWidget(self.page_connection) + self.page_divider = QWidget() + self.page_divider.setObjectName(u"page_divider") + self.page_divider.setEnabled(False) + self.horizontalLayout_11 = QHBoxLayout(self.page_divider) + self.horizontalLayout_11.setSpacing(20) + self.horizontalLayout_11.setObjectName(u"horizontalLayout_11") + self.verticalLayout_12 = QVBoxLayout() + self.verticalLayout_12.setObjectName(u"verticalLayout_12") + self.labelBoxBlenderInstalation_4 = QLabel(self.page_divider) + self.labelBoxBlenderInstalation_4.setObjectName(u"labelBoxBlenderInstalation_4") + sizePolicy4 = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed) + sizePolicy4.setHorizontalStretch(0) + sizePolicy4.setVerticalStretch(0) + sizePolicy4.setHeightForWidth(self.labelBoxBlenderInstalation_4.sizePolicy().hasHeightForWidth()) + self.labelBoxBlenderInstalation_4.setSizePolicy(sizePolicy4) + self.labelBoxBlenderInstalation_4.setFont(font) + self.labelBoxBlenderInstalation_4.setStyleSheet(u"") + + self.verticalLayout_12.addWidget(self.labelBoxBlenderInstalation_4) + + self.gridLayout = QGridLayout() + self.gridLayout.setSpacing(10) + self.gridLayout.setObjectName(u"gridLayout") + self.cb_end_3 = QComboBox(self.page_divider) + self.cb_end_3.addItem("") + self.cb_end_3.setObjectName(u"cb_end_3") + sizePolicy3.setHeightForWidth(self.cb_end_3.sizePolicy().hasHeightForWidth()) + self.cb_end_3.setSizePolicy(sizePolicy3) + self.cb_end_3.setMinimumSize(QSize(64, 30)) + self.cb_end_3.setMaximumSize(QSize(70, 30)) + self.cb_end_3.setEditable(True) + + self.gridLayout.addWidget(self.cb_end_3, 3, 5, 1, 1) + + self.cb_data_5 = QComboBox(self.page_divider) + self.cb_data_5.addItem("") + self.cb_data_5.setObjectName(u"cb_data_5") + sizePolicy.setHeightForWidth(self.cb_data_5.sizePolicy().hasHeightForWidth()) + self.cb_data_5.setSizePolicy(sizePolicy) + self.cb_data_5.setMinimumSize(QSize(55, 30)) + self.cb_data_5.setMaximumSize(QSize(16777215, 30)) + self.cb_data_5.setEditable(True) + + self.gridLayout.addWidget(self.cb_data_5, 5, 3, 1, 1) + + self.lbl_data = QLabel(self.page_divider) + self.lbl_data.setObjectName(u"lbl_data") + sizePolicy3.setHeightForWidth(self.lbl_data.sizePolicy().hasHeightForWidth()) + self.lbl_data.setSizePolicy(sizePolicy3) + self.lbl_data.setStyleSheet(u"color: rgb(113, 126, 149);") + + self.gridLayout.addWidget(self.lbl_data, 0, 3, 1, 1) + + self.le_check_4 = QLineEdit(self.page_divider) + self.le_check_4.setObjectName(u"le_check_4") + sizePolicy5 = QSizePolicy(QSizePolicy.Maximum, QSizePolicy.Fixed) + sizePolicy5.setHorizontalStretch(0) + sizePolicy5.setVerticalStretch(0) + sizePolicy5.setHeightForWidth(self.le_check_4.sizePolicy().hasHeightForWidth()) + self.le_check_4.setSizePolicy(sizePolicy5) + self.le_check_4.setMinimumSize(QSize(55, 30)) + self.le_check_4.setMaximumSize(QSize(50, 30)) + self.le_check_4.setReadOnly(True) + + self.gridLayout.addWidget(self.le_check_4, 4, 4, 1, 1) + + self.lbl_start = QLabel(self.page_divider) + self.lbl_start.setObjectName(u"lbl_start") + sizePolicy3.setHeightForWidth(self.lbl_start.sizePolicy().hasHeightForWidth()) + self.lbl_start.setSizePolicy(sizePolicy3) + self.lbl_start.setStyleSheet(u"color: rgb(113, 126, 149);") + + self.gridLayout.addWidget(self.lbl_start, 0, 0, 1, 1) + + self.cb_start_3 = QComboBox(self.page_divider) + self.cb_start_3.addItem("") + self.cb_start_3.setObjectName(u"cb_start_3") + sizePolicy5.setHeightForWidth(self.cb_start_3.sizePolicy().hasHeightForWidth()) + self.cb_start_3.setSizePolicy(sizePolicy5) + self.cb_start_3.setMinimumSize(QSize(64, 30)) + self.cb_start_3.setMaximumSize(QSize(70, 30)) + self.cb_start_3.setEditable(True) + + self.gridLayout.addWidget(self.cb_start_3, 3, 0, 1, 1) + + self.pb_preset_2 = QPushButton(self.page_divider) + self.pb_preset_2.setObjectName(u"pb_preset_2") + sizePolicy4.setHeightForWidth(self.pb_preset_2.sizePolicy().hasHeightForWidth()) + self.pb_preset_2.setSizePolicy(sizePolicy4) + self.pb_preset_2.setMinimumSize(QSize(25, 30)) + self.pb_preset_2.setMaximumSize(QSize(25, 30)) + self.pb_preset_2.setFont(font) + self.pb_preset_2.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_preset_2.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/plus.png);\n" +" background-position: center center;\n" +"}") + + self.gridLayout.addWidget(self.pb_preset_2, 2, 6, 1, 1) + + self.cb_start_2 = QComboBox(self.page_divider) + self.cb_start_2.addItem("") + self.cb_start_2.setObjectName(u"cb_start_2") + sizePolicy5.setHeightForWidth(self.cb_start_2.sizePolicy().hasHeightForWidth()) + self.cb_start_2.setSizePolicy(sizePolicy5) + self.cb_start_2.setMinimumSize(QSize(64, 30)) + self.cb_start_2.setMaximumSize(QSize(70, 30)) + self.cb_start_2.setEditable(True) + + self.gridLayout.addWidget(self.cb_start_2, 2, 0, 1, 1) + + self.lbl_check = QLabel(self.page_divider) + self.lbl_check.setObjectName(u"lbl_check") + sizePolicy3.setHeightForWidth(self.lbl_check.sizePolicy().hasHeightForWidth()) + self.lbl_check.setSizePolicy(sizePolicy3) + self.lbl_check.setStyleSheet(u"color: rgb(113, 126, 149);") + + self.gridLayout.addWidget(self.lbl_check, 0, 4, 1, 1) + + self.le_length_2 = QLineEdit(self.page_divider) + self.le_length_2.setObjectName(u"le_length_2") + sizePolicy5.setHeightForWidth(self.le_length_2.sizePolicy().hasHeightForWidth()) + self.le_length_2.setSizePolicy(sizePolicy5) + self.le_length_2.setMinimumSize(QSize(55, 30)) + self.le_length_2.setMaximumSize(QSize(50, 30)) + self.le_length_2.setReadOnly(True) + + self.gridLayout.addWidget(self.le_length_2, 2, 1, 1, 1) + + self.cb_end_1 = QComboBox(self.page_divider) + self.cb_end_1.addItem("") + self.cb_end_1.setObjectName(u"cb_end_1") + sizePolicy3.setHeightForWidth(self.cb_end_1.sizePolicy().hasHeightForWidth()) + self.cb_end_1.setSizePolicy(sizePolicy3) + self.cb_end_1.setMinimumSize(QSize(64, 30)) + self.cb_end_1.setMaximumSize(QSize(70, 30)) + self.cb_end_1.setEditable(True) + + self.gridLayout.addWidget(self.cb_end_1, 1, 5, 1, 1) + + self.cb_data_2 = QComboBox(self.page_divider) + self.cb_data_2.addItem("") + self.cb_data_2.setObjectName(u"cb_data_2") + sizePolicy.setHeightForWidth(self.cb_data_2.sizePolicy().hasHeightForWidth()) + self.cb_data_2.setSizePolicy(sizePolicy) + self.cb_data_2.setMinimumSize(QSize(55, 30)) + self.cb_data_2.setMaximumSize(QSize(16777215, 30)) + self.cb_data_2.setEditable(True) + + self.gridLayout.addWidget(self.cb_data_2, 2, 3, 1, 1) + + self.le_check_5 = QLineEdit(self.page_divider) + self.le_check_5.setObjectName(u"le_check_5") + sizePolicy5.setHeightForWidth(self.le_check_5.sizePolicy().hasHeightForWidth()) + self.le_check_5.setSizePolicy(sizePolicy5) + self.le_check_5.setMinimumSize(QSize(55, 30)) + self.le_check_5.setMaximumSize(QSize(50, 30)) + self.le_check_5.setReadOnly(True) + + self.gridLayout.addWidget(self.le_check_5, 5, 4, 1, 1) + + self.pb_send_4 = QPushButton(self.page_divider) + self.pb_send_4.setObjectName(u"pb_send_4") + sizePolicy4.setHeightForWidth(self.pb_send_4.sizePolicy().hasHeightForWidth()) + self.pb_send_4.setSizePolicy(sizePolicy4) + self.pb_send_4.setMinimumSize(QSize(25, 30)) + self.pb_send_4.setMaximumSize(QSize(25, 30)) + self.pb_send_4.setFont(font) + self.pb_send_4.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_4.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/arrow-right.png);\n" +" background-position: center center;\n" +" border-style: none;\n" +"}") + + self.gridLayout.addWidget(self.pb_send_4, 4, 7, 1, 1) + + self.pb_send_5 = QPushButton(self.page_divider) + self.pb_send_5.setObjectName(u"pb_send_5") + sizePolicy4.setHeightForWidth(self.pb_send_5.sizePolicy().hasHeightForWidth()) + self.pb_send_5.setSizePolicy(sizePolicy4) + self.pb_send_5.setMinimumSize(QSize(25, 30)) + self.pb_send_5.setMaximumSize(QSize(25, 30)) + self.pb_send_5.setFont(font) + self.pb_send_5.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_5.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/arrow-right.png);\n" +" background-position: center center;\n" +" border-style: none;\n" +"}") + + self.gridLayout.addWidget(self.pb_send_5, 5, 7, 1, 1) + + self.pb_preset_3 = QPushButton(self.page_divider) + self.pb_preset_3.setObjectName(u"pb_preset_3") + sizePolicy4.setHeightForWidth(self.pb_preset_3.sizePolicy().hasHeightForWidth()) + self.pb_preset_3.setSizePolicy(sizePolicy4) + self.pb_preset_3.setMinimumSize(QSize(25, 30)) + self.pb_preset_3.setMaximumSize(QSize(25, 30)) + self.pb_preset_3.setFont(font) + self.pb_preset_3.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_preset_3.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/plus.png);\n" +" background-position: center center;\n" +"}") + + self.gridLayout.addWidget(self.pb_preset_3, 3, 6, 1, 1) + + self.le_length_3 = QLineEdit(self.page_divider) + self.le_length_3.setObjectName(u"le_length_3") + sizePolicy5.setHeightForWidth(self.le_length_3.sizePolicy().hasHeightForWidth()) + self.le_length_3.setSizePolicy(sizePolicy5) + self.le_length_3.setMinimumSize(QSize(55, 30)) + self.le_length_3.setMaximumSize(QSize(50, 30)) + self.le_length_3.setReadOnly(True) + + self.gridLayout.addWidget(self.le_length_3, 3, 1, 1, 1) + + self.cb_end_2 = QComboBox(self.page_divider) + self.cb_end_2.addItem("") + self.cb_end_2.setObjectName(u"cb_end_2") + sizePolicy3.setHeightForWidth(self.cb_end_2.sizePolicy().hasHeightForWidth()) + self.cb_end_2.setSizePolicy(sizePolicy3) + self.cb_end_2.setMinimumSize(QSize(64, 30)) + self.cb_end_2.setMaximumSize(QSize(70, 30)) + self.cb_end_2.setEditable(True) + + self.gridLayout.addWidget(self.cb_end_2, 2, 5, 1, 1) + + self.pb_preset_1 = QPushButton(self.page_divider) + self.pb_preset_1.setObjectName(u"pb_preset_1") + sizePolicy4.setHeightForWidth(self.pb_preset_1.sizePolicy().hasHeightForWidth()) + self.pb_preset_1.setSizePolicy(sizePolicy4) + self.pb_preset_1.setMinimumSize(QSize(25, 30)) + self.pb_preset_1.setMaximumSize(QSize(25, 30)) + font4 = QFont() + font4.setFamilies([u"Segoe UI"]) + font4.setPointSize(10) + font4.setBold(False) + font4.setItalic(False) + font4.setKerning(True) + self.pb_preset_1.setFont(font4) + self.pb_preset_1.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_preset_1.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/plus.png);\n" +" background-position: center center;\n" +"}") + + self.gridLayout.addWidget(self.pb_preset_1, 1, 6, 1, 1) + + self.cb_start_1 = QComboBox(self.page_divider) + self.cb_start_1.addItem("") + self.cb_start_1.setObjectName(u"cb_start_1") + sizePolicy3.setHeightForWidth(self.cb_start_1.sizePolicy().hasHeightForWidth()) + self.cb_start_1.setSizePolicy(sizePolicy3) + self.cb_start_1.setMinimumSize(QSize(64, 30)) + self.cb_start_1.setMaximumSize(QSize(70, 30)) + self.cb_start_1.setEditable(True) + + self.gridLayout.addWidget(self.cb_start_1, 1, 0, 1, 1) + + self.cb_start_5 = QComboBox(self.page_divider) + self.cb_start_5.addItem("") + self.cb_start_5.setObjectName(u"cb_start_5") + sizePolicy5.setHeightForWidth(self.cb_start_5.sizePolicy().hasHeightForWidth()) + self.cb_start_5.setSizePolicy(sizePolicy5) + self.cb_start_5.setMinimumSize(QSize(64, 30)) + self.cb_start_5.setMaximumSize(QSize(70, 30)) + self.cb_start_5.setEditable(True) + + self.gridLayout.addWidget(self.cb_start_5, 5, 0, 1, 1) + + self.le_check_2 = QLineEdit(self.page_divider) + self.le_check_2.setObjectName(u"le_check_2") + sizePolicy5.setHeightForWidth(self.le_check_2.sizePolicy().hasHeightForWidth()) + self.le_check_2.setSizePolicy(sizePolicy5) + self.le_check_2.setMinimumSize(QSize(55, 30)) + self.le_check_2.setMaximumSize(QSize(50, 30)) + self.le_check_2.setReadOnly(True) + + self.gridLayout.addWidget(self.le_check_2, 2, 4, 1, 1) + + self.le_length_1 = QLineEdit(self.page_divider) + self.le_length_1.setObjectName(u"le_length_1") + sizePolicy5.setHeightForWidth(self.le_length_1.sizePolicy().hasHeightForWidth()) + self.le_length_1.setSizePolicy(sizePolicy5) + self.le_length_1.setMinimumSize(QSize(55, 30)) + self.le_length_1.setMaximumSize(QSize(50, 30)) + self.le_length_1.setReadOnly(True) + + self.gridLayout.addWidget(self.le_length_1, 1, 1, 1, 1) + + self.pb_send_1 = QPushButton(self.page_divider) + self.pb_send_1.setObjectName(u"pb_send_1") + sizePolicy4.setHeightForWidth(self.pb_send_1.sizePolicy().hasHeightForWidth()) + self.pb_send_1.setSizePolicy(sizePolicy4) + self.pb_send_1.setMinimumSize(QSize(25, 30)) + self.pb_send_1.setMaximumSize(QSize(25, 30)) + self.pb_send_1.setFont(font) + self.pb_send_1.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_1.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/arrow-right.png);\n" +" background-position: center center;\n" +" border-style: none;\n" +"}") + + self.gridLayout.addWidget(self.pb_send_1, 1, 7, 1, 1) + + self.cb_end_5 = QComboBox(self.page_divider) + self.cb_end_5.addItem("") + self.cb_end_5.setObjectName(u"cb_end_5") + sizePolicy3.setHeightForWidth(self.cb_end_5.sizePolicy().hasHeightForWidth()) + self.cb_end_5.setSizePolicy(sizePolicy3) + self.cb_end_5.setMinimumSize(QSize(64, 30)) + self.cb_end_5.setMaximumSize(QSize(70, 30)) + self.cb_end_5.setEditable(True) + + self.gridLayout.addWidget(self.cb_end_5, 5, 5, 1, 1) + + self.pb_preset_4 = QPushButton(self.page_divider) + self.pb_preset_4.setObjectName(u"pb_preset_4") + sizePolicy4.setHeightForWidth(self.pb_preset_4.sizePolicy().hasHeightForWidth()) + self.pb_preset_4.setSizePolicy(sizePolicy4) + self.pb_preset_4.setMinimumSize(QSize(25, 30)) + self.pb_preset_4.setMaximumSize(QSize(25, 30)) + self.pb_preset_4.setFont(font) + self.pb_preset_4.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_preset_4.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/plus.png);\n" +" background-position: center center;\n" +"}") + + self.gridLayout.addWidget(self.pb_preset_4, 4, 6, 1, 1) + + self.cb_data_4 = QComboBox(self.page_divider) + self.cb_data_4.addItem("") + self.cb_data_4.setObjectName(u"cb_data_4") + sizePolicy.setHeightForWidth(self.cb_data_4.sizePolicy().hasHeightForWidth()) + self.cb_data_4.setSizePolicy(sizePolicy) + self.cb_data_4.setMinimumSize(QSize(55, 30)) + self.cb_data_4.setMaximumSize(QSize(16777215, 30)) + self.cb_data_4.setEditable(True) + + self.gridLayout.addWidget(self.cb_data_4, 4, 3, 1, 1) + + self.pb_send_2 = QPushButton(self.page_divider) + self.pb_send_2.setObjectName(u"pb_send_2") + sizePolicy4.setHeightForWidth(self.pb_send_2.sizePolicy().hasHeightForWidth()) + self.pb_send_2.setSizePolicy(sizePolicy4) + self.pb_send_2.setMinimumSize(QSize(25, 30)) + self.pb_send_2.setMaximumSize(QSize(25, 30)) + self.pb_send_2.setFont(font) + self.pb_send_2.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_2.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/arrow-right.png);\n" +" background-position: center center;\n" +" border-style: none;\n" +"}") + + self.gridLayout.addWidget(self.pb_send_2, 2, 7, 1, 1) + + self.pb_send_3 = QPushButton(self.page_divider) + self.pb_send_3.setObjectName(u"pb_send_3") + sizePolicy4.setHeightForWidth(self.pb_send_3.sizePolicy().hasHeightForWidth()) + self.pb_send_3.setSizePolicy(sizePolicy4) + self.pb_send_3.setMinimumSize(QSize(25, 30)) + self.pb_send_3.setMaximumSize(QSize(25, 30)) + self.pb_send_3.setFont(font) + self.pb_send_3.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_3.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/arrow-right.png);\n" +" background-position: center center;\n" +" border-style: none;\n" +"}") + + self.gridLayout.addWidget(self.pb_send_3, 3, 7, 1, 1) + + self.cb_data_3 = QComboBox(self.page_divider) + self.cb_data_3.addItem("") + self.cb_data_3.setObjectName(u"cb_data_3") + sizePolicy.setHeightForWidth(self.cb_data_3.sizePolicy().hasHeightForWidth()) + self.cb_data_3.setSizePolicy(sizePolicy) + self.cb_data_3.setMinimumSize(QSize(55, 30)) + self.cb_data_3.setMaximumSize(QSize(16777215, 30)) + self.cb_data_3.setEditable(True) + + self.gridLayout.addWidget(self.cb_data_3, 3, 3, 1, 1) + + self.lbl_stop = QLabel(self.page_divider) + self.lbl_stop.setObjectName(u"lbl_stop") + sizePolicy3.setHeightForWidth(self.lbl_stop.sizePolicy().hasHeightForWidth()) + self.lbl_stop.setSizePolicy(sizePolicy3) + self.lbl_stop.setStyleSheet(u"color: rgb(113, 126, 149);") + + self.gridLayout.addWidget(self.lbl_stop, 0, 5, 1, 1) + + self.cb_end_4 = QComboBox(self.page_divider) + self.cb_end_4.addItem("") + self.cb_end_4.setObjectName(u"cb_end_4") + sizePolicy3.setHeightForWidth(self.cb_end_4.sizePolicy().hasHeightForWidth()) + self.cb_end_4.setSizePolicy(sizePolicy3) + self.cb_end_4.setMinimumSize(QSize(64, 30)) + self.cb_end_4.setMaximumSize(QSize(70, 30)) + self.cb_end_4.setEditable(True) + + self.gridLayout.addWidget(self.cb_end_4, 4, 5, 1, 1) + + self.cb_data_1 = QComboBox(self.page_divider) + self.cb_data_1.addItem("") + self.cb_data_1.setObjectName(u"cb_data_1") + sizePolicy.setHeightForWidth(self.cb_data_1.sizePolicy().hasHeightForWidth()) + self.cb_data_1.setSizePolicy(sizePolicy) + self.cb_data_1.setMinimumSize(QSize(55, 30)) + self.cb_data_1.setMaximumSize(QSize(16777215, 30)) + self.cb_data_1.setEditable(True) + + self.gridLayout.addWidget(self.cb_data_1, 1, 3, 1, 1) + + self.le_check_3 = QLineEdit(self.page_divider) + self.le_check_3.setObjectName(u"le_check_3") + sizePolicy5.setHeightForWidth(self.le_check_3.sizePolicy().hasHeightForWidth()) + self.le_check_3.setSizePolicy(sizePolicy5) + self.le_check_3.setMinimumSize(QSize(55, 30)) + self.le_check_3.setMaximumSize(QSize(50, 30)) + self.le_check_3.setReadOnly(True) + + self.gridLayout.addWidget(self.le_check_3, 3, 4, 1, 1) + + self.cb_start_4 = QComboBox(self.page_divider) + self.cb_start_4.addItem("") + self.cb_start_4.setObjectName(u"cb_start_4") + sizePolicy5.setHeightForWidth(self.cb_start_4.sizePolicy().hasHeightForWidth()) + self.cb_start_4.setSizePolicy(sizePolicy5) + self.cb_start_4.setMinimumSize(QSize(64, 30)) + self.cb_start_4.setMaximumSize(QSize(70, 30)) + self.cb_start_4.setEditable(True) + + self.gridLayout.addWidget(self.cb_start_4, 4, 0, 1, 1) + + self.le_length_4 = QLineEdit(self.page_divider) + self.le_length_4.setObjectName(u"le_length_4") + sizePolicy5.setHeightForWidth(self.le_length_4.sizePolicy().hasHeightForWidth()) + self.le_length_4.setSizePolicy(sizePolicy5) + self.le_length_4.setMinimumSize(QSize(55, 30)) + self.le_length_4.setMaximumSize(QSize(50, 30)) + self.le_length_4.setReadOnly(True) + + self.gridLayout.addWidget(self.le_length_4, 4, 1, 1, 1) + + self.le_length_5 = QLineEdit(self.page_divider) + self.le_length_5.setObjectName(u"le_length_5") + sizePolicy5.setHeightForWidth(self.le_length_5.sizePolicy().hasHeightForWidth()) + self.le_length_5.setSizePolicy(sizePolicy5) + self.le_length_5.setMinimumSize(QSize(55, 30)) + self.le_length_5.setMaximumSize(QSize(50, 30)) + self.le_length_5.setReadOnly(True) + + self.gridLayout.addWidget(self.le_length_5, 5, 1, 1, 1) + + self.pb_preset_5 = QPushButton(self.page_divider) + self.pb_preset_5.setObjectName(u"pb_preset_5") + sizePolicy4.setHeightForWidth(self.pb_preset_5.sizePolicy().hasHeightForWidth()) + self.pb_preset_5.setSizePolicy(sizePolicy4) + self.pb_preset_5.setMinimumSize(QSize(25, 30)) + self.pb_preset_5.setMaximumSize(QSize(25, 30)) + self.pb_preset_5.setFont(font) + self.pb_preset_5.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_preset_5.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/plus.png);\n" +" background-position: center center;\n" +"}") + + self.gridLayout.addWidget(self.pb_preset_5, 5, 6, 1, 1) + + self.le_check_1 = QLineEdit(self.page_divider) + self.le_check_1.setObjectName(u"le_check_1") + sizePolicy5.setHeightForWidth(self.le_check_1.sizePolicy().hasHeightForWidth()) + self.le_check_1.setSizePolicy(sizePolicy5) + self.le_check_1.setMinimumSize(QSize(55, 30)) + self.le_check_1.setMaximumSize(QSize(50, 30)) + self.le_check_1.setReadOnly(True) + + self.gridLayout.addWidget(self.le_check_1, 1, 4, 1, 1) + + self.cb_command_1 = QComboBox(self.page_divider) + self.cb_command_1.addItem("") + self.cb_command_1.addItem("") + self.cb_command_1.addItem("") + self.cb_command_1.setObjectName(u"cb_command_1") + sizePolicy3.setHeightForWidth(self.cb_command_1.sizePolicy().hasHeightForWidth()) + self.cb_command_1.setSizePolicy(sizePolicy3) + self.cb_command_1.setMinimumSize(QSize(64, 30)) + self.cb_command_1.setMaximumSize(QSize(70, 30)) + self.cb_command_1.setEditable(True) + + self.gridLayout.addWidget(self.cb_command_1, 1, 2, 1, 1) + + self.lbl_command = QLabel(self.page_divider) + self.lbl_command.setObjectName(u"lbl_command") + sizePolicy3.setHeightForWidth(self.lbl_command.sizePolicy().hasHeightForWidth()) + self.lbl_command.setSizePolicy(sizePolicy3) + self.lbl_command.setStyleSheet(u"color: rgb(113, 126, 149);") + + self.gridLayout.addWidget(self.lbl_command, 0, 2, 1, 1) + + self.lbl_length = QLabel(self.page_divider) + self.lbl_length.setObjectName(u"lbl_length") + sizePolicy3.setHeightForWidth(self.lbl_length.sizePolicy().hasHeightForWidth()) + self.lbl_length.setSizePolicy(sizePolicy3) + self.lbl_length.setStyleSheet(u"color: rgb(113, 126, 149);") + + self.gridLayout.addWidget(self.lbl_length, 0, 1, 1, 1) + + self.cb_command_2 = QComboBox(self.page_divider) + self.cb_command_2.addItem("") + self.cb_command_2.addItem("") + self.cb_command_2.addItem("") + self.cb_command_2.setObjectName(u"cb_command_2") + sizePolicy3.setHeightForWidth(self.cb_command_2.sizePolicy().hasHeightForWidth()) + self.cb_command_2.setSizePolicy(sizePolicy3) + self.cb_command_2.setMinimumSize(QSize(64, 30)) + self.cb_command_2.setMaximumSize(QSize(70, 30)) + self.cb_command_2.setEditable(True) + + self.gridLayout.addWidget(self.cb_command_2, 2, 2, 1, 1) + + self.cb_command_3 = QComboBox(self.page_divider) + self.cb_command_3.addItem("") + self.cb_command_3.addItem("") + self.cb_command_3.addItem("") + self.cb_command_3.setObjectName(u"cb_command_3") + sizePolicy3.setHeightForWidth(self.cb_command_3.sizePolicy().hasHeightForWidth()) + self.cb_command_3.setSizePolicy(sizePolicy3) + self.cb_command_3.setMinimumSize(QSize(64, 30)) + self.cb_command_3.setMaximumSize(QSize(70, 30)) + self.cb_command_3.setEditable(True) + + self.gridLayout.addWidget(self.cb_command_3, 3, 2, 1, 1) + + self.cb_command_4 = QComboBox(self.page_divider) + self.cb_command_4.addItem("") + self.cb_command_4.addItem("") + self.cb_command_4.addItem("") + self.cb_command_4.setObjectName(u"cb_command_4") + sizePolicy3.setHeightForWidth(self.cb_command_4.sizePolicy().hasHeightForWidth()) + self.cb_command_4.setSizePolicy(sizePolicy3) + self.cb_command_4.setMinimumSize(QSize(64, 30)) + self.cb_command_4.setMaximumSize(QSize(70, 30)) + self.cb_command_4.setAutoFillBackground(False) + self.cb_command_4.setEditable(True) + + self.gridLayout.addWidget(self.cb_command_4, 4, 2, 1, 1) + + self.cb_command_5 = QComboBox(self.page_divider) + self.cb_command_5.addItem("") + self.cb_command_5.addItem("") + self.cb_command_5.addItem("") + self.cb_command_5.setObjectName(u"cb_command_5") + sizePolicy3.setHeightForWidth(self.cb_command_5.sizePolicy().hasHeightForWidth()) + self.cb_command_5.setSizePolicy(sizePolicy3) + self.cb_command_5.setMinimumSize(QSize(64, 30)) + self.cb_command_5.setMaximumSize(QSize(70, 30)) + self.cb_command_5.setEditable(True) + + self.gridLayout.addWidget(self.cb_command_5, 5, 2, 1, 1) + + self.gridLayout.setColumnStretch(0, 1) + self.gridLayout.setColumnStretch(1, 1) + self.gridLayout.setColumnStretch(2, 1) + self.gridLayout.setColumnStretch(3, 2) + self.gridLayout.setColumnStretch(4, 1) + self.gridLayout.setColumnStretch(5, 1) + self.gridLayout.setColumnStretch(6, 1) + self.gridLayout.setColumnStretch(7, 1) + + self.verticalLayout_12.addLayout(self.gridLayout) + + self.labelBoxBlenderInstalation_5 = QLabel(self.page_divider) + self.labelBoxBlenderInstalation_5.setObjectName(u"labelBoxBlenderInstalation_5") + sizePolicy4.setHeightForWidth(self.labelBoxBlenderInstalation_5.sizePolicy().hasHeightForWidth()) + self.labelBoxBlenderInstalation_5.setSizePolicy(sizePolicy4) + self.labelBoxBlenderInstalation_5.setFont(font) + self.labelBoxBlenderInstalation_5.setStyleSheet(u"QLabel {\n" +" margin-top: 10px;\n" +"}") + + self.verticalLayout_12.addWidget(self.labelBoxBlenderInstalation_5) + + self.horizontalLayout_6 = QHBoxLayout() + self.horizontalLayout_6.setObjectName(u"horizontalLayout_6") + self.verticalLayout_19 = QVBoxLayout() + self.verticalLayout_19.setSpacing(10) + self.verticalLayout_19.setObjectName(u"verticalLayout_19") + + self.horizontalLayout_6.addLayout(self.verticalLayout_19) + + self.verticalLayout_22 = QVBoxLayout() + self.verticalLayout_22.setSpacing(20) + self.verticalLayout_22.setObjectName(u"verticalLayout_22") + self.horizontalLayout_15 = QHBoxLayout() + self.horizontalLayout_15.setSpacing(0) + self.horizontalLayout_15.setObjectName(u"horizontalLayout_15") + self.btn_preset_previous = QPushButton(self.page_divider) + self.btn_preset_previous.setObjectName(u"btn_preset_previous") + sizePolicy4.setHeightForWidth(self.btn_preset_previous.sizePolicy().hasHeightForWidth()) + self.btn_preset_previous.setSizePolicy(sizePolicy4) + self.btn_preset_previous.setMinimumSize(QSize(0, 30)) + self.btn_preset_previous.setMaximumSize(QSize(30, 30)) + self.btn_preset_previous.setStyleSheet(u"background-image: url(:/icons/images/icons/chevron-left.png);\n" +"background-position: center center;\n" +"border-top-right-radius: 0px;\n" +"border-bottom-right-radius: 0px;") + + self.horizontalLayout_15.addWidget(self.btn_preset_previous) + + self.le_preset_num = QLineEdit(self.page_divider) + self.le_preset_num.setObjectName(u"le_preset_num") + sizePolicy4.setHeightForWidth(self.le_preset_num.sizePolicy().hasHeightForWidth()) + self.le_preset_num.setSizePolicy(sizePolicy4) + self.le_preset_num.setMinimumSize(QSize(30, 30)) + self.le_preset_num.setMaximumSize(QSize(30, 30)) + self.le_preset_num.setStyleSheet(u"border-radius: 0px;") + self.le_preset_num.setReadOnly(True) + + self.horizontalLayout_15.addWidget(self.le_preset_num) + + self.btn_preset_next = QPushButton(self.page_divider) + self.btn_preset_next.setObjectName(u"btn_preset_next") + sizePolicy4.setHeightForWidth(self.btn_preset_next.sizePolicy().hasHeightForWidth()) + self.btn_preset_next.setSizePolicy(sizePolicy4) + self.btn_preset_next.setMinimumSize(QSize(30, 30)) + self.btn_preset_next.setMaximumSize(QSize(30, 30)) + self.btn_preset_next.setStyleSheet(u"background-image: url(:/icons/images/icons/chevron-right.png);\n" +"background-position: center center;\n" +"border-top-left-radius: 0px;\n" +"border-bottom-left-radius: 0px;") + + self.horizontalLayout_15.addWidget(self.btn_preset_next) + + self.le_preset_name = QLineEdit(self.page_divider) + self.le_preset_name.setObjectName(u"le_preset_name") + sizePolicy.setHeightForWidth(self.le_preset_name.sizePolicy().hasHeightForWidth()) + self.le_preset_name.setSizePolicy(sizePolicy) + self.le_preset_name.setMinimumSize(QSize(50, 30)) + self.le_preset_name.setMaximumSize(QSize(16777215, 30)) + self.le_preset_name.setStyleSheet(u"margin: 0px 0px 0px 15px;\n" +"border-top-right-radius: 0px;\n" +"border-bottom-right-radius: 0px;") + + self.horizontalLayout_15.addWidget(self.le_preset_name) + + self.btn_preset_add = QPushButton(self.page_divider) + self.btn_preset_add.setObjectName(u"btn_preset_add") + sizePolicy4.setHeightForWidth(self.btn_preset_add.sizePolicy().hasHeightForWidth()) + self.btn_preset_add.setSizePolicy(sizePolicy4) + self.btn_preset_add.setMinimumSize(QSize(0, 30)) + self.btn_preset_add.setMaximumSize(QSize(30, 30)) + self.btn_preset_add.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/plus.png);\n" +" border-top-left-radius: 0px;\n" +" border-bottom-left-radius: 0px;\n" +" background-position: center center;\n" +" background-color: rgb(54,106,206);\n" +" border-style: none;\n" +"}\n" +"QPushButton:hover {\n" +" background-color: rgb(48,95,185);\n" +"}\n" +"QPushButton:pressed {\n" +" background-color: rgb(45,89,173);\n" +"}\n" +"QPushButton:disabled {\n" +" background-color: rgb(52, 59, 72);\n" +"}") + + self.horizontalLayout_15.addWidget(self.btn_preset_add) + + + self.verticalLayout_22.addLayout(self.horizontalLayout_15) + + self.horizontalLayout_16 = QHBoxLayout() + self.horizontalLayout_16.setSpacing(25) + self.horizontalLayout_16.setObjectName(u"horizontalLayout_16") + self.gridLayout_2 = QGridLayout() + self.gridLayout_2.setObjectName(u"gridLayout_2") + self.gridLayout_2.setHorizontalSpacing(0) + self.gridLayout_2.setVerticalSpacing(10) + self.sb_camera_a = QSpinBox(self.page_divider) + self.sb_camera_a.setObjectName(u"sb_camera_a") + sizePolicy.setHeightForWidth(self.sb_camera_a.sizePolicy().hasHeightForWidth()) + self.sb_camera_a.setSizePolicy(sizePolicy) + self.sb_camera_a.setMinimumSize(QSize(0, 30)) + self.sb_camera_a.setMaximumSize(QSize(16777215, 30)) + self.sb_camera_a.setStyleSheet(u"QSpinBox {\n" +" border-top-right-radius: 0px;\n" +" border-bottom-right-radius: 0px;\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-position: center right;\n" +" background-repeat: no-repeat;\n" +"}") + self.sb_camera_a.setMaximum(2147483647) + self.sb_camera_a.setSingleStep(100) + self.sb_camera_a.setValue(100) + + self.gridLayout_2.addWidget(self.sb_camera_a, 0, 0, 1, 1) + + self.pb_send_camera_a = QPushButton(self.page_divider) + self.pb_send_camera_a.setObjectName(u"pb_send_camera_a") + sizePolicy4.setHeightForWidth(self.pb_send_camera_a.sizePolicy().hasHeightForWidth()) + self.pb_send_camera_a.setSizePolicy(sizePolicy4) + self.pb_send_camera_a.setMinimumSize(QSize(30, 30)) + self.pb_send_camera_a.setMaximumSize(QSize(30, 30)) + self.pb_send_camera_a.setFont(font) + self.pb_send_camera_a.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_camera_a.setStyleSheet(u"QPushButton {\n" +"/*\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-origin: margin;\n" +" background-position: center left;\n" +" padding-left: 24px;\n" +"*/\n" +" margin-left: -3px;\n" +" border-top-left-radius: 0px;\n" +" border-bottom-left-radius: 0px;\n" +"\n" +"}") + + self.gridLayout_2.addWidget(self.pb_send_camera_a, 0, 1, 1, 1) + + self.pb_send_camera_b = QPushButton(self.page_divider) + self.pb_send_camera_b.setObjectName(u"pb_send_camera_b") + sizePolicy4.setHeightForWidth(self.pb_send_camera_b.sizePolicy().hasHeightForWidth()) + self.pb_send_camera_b.setSizePolicy(sizePolicy4) + self.pb_send_camera_b.setMinimumSize(QSize(30, 30)) + self.pb_send_camera_b.setMaximumSize(QSize(30, 30)) + self.pb_send_camera_b.setFont(font) + self.pb_send_camera_b.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_camera_b.setStyleSheet(u"QPushButton {\n" +"/*\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-origin: margin;\n" +" background-position: center left;\n" +" padding-left: 24px;\n" +"*/\n" +" margin-left: -3px;\n" +" border-top-left-radius: 0px;\n" +" border-bottom-left-radius: 0px;\n" +"\n" +"}") + + self.gridLayout_2.addWidget(self.pb_send_camera_b, 1, 1, 1, 1) + + self.sb_camera_c = QSpinBox(self.page_divider) + self.sb_camera_c.setObjectName(u"sb_camera_c") + sizePolicy.setHeightForWidth(self.sb_camera_c.sizePolicy().hasHeightForWidth()) + self.sb_camera_c.setSizePolicy(sizePolicy) + self.sb_camera_c.setMinimumSize(QSize(0, 30)) + self.sb_camera_c.setMaximumSize(QSize(16777215, 30)) + self.sb_camera_c.setStyleSheet(u"QSpinBox {\n" +" border-top-right-radius: 0px;\n" +" border-bottom-right-radius: 0px;\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-position: center right;\n" +" background-repeat: no-repeat;\n" +"}") + self.sb_camera_c.setMaximum(2147483647) + self.sb_camera_c.setSingleStep(100) + self.sb_camera_c.setValue(100) + + self.gridLayout_2.addWidget(self.sb_camera_c, 2, 0, 1, 1) + + self.pb_send_camera_c = QPushButton(self.page_divider) + self.pb_send_camera_c.setObjectName(u"pb_send_camera_c") + sizePolicy4.setHeightForWidth(self.pb_send_camera_c.sizePolicy().hasHeightForWidth()) + self.pb_send_camera_c.setSizePolicy(sizePolicy4) + self.pb_send_camera_c.setMinimumSize(QSize(30, 30)) + self.pb_send_camera_c.setMaximumSize(QSize(30, 30)) + self.pb_send_camera_c.setFont(font) + self.pb_send_camera_c.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_camera_c.setStyleSheet(u"QPushButton {\n" +"/*\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-origin: margin;\n" +" background-position: center left;\n" +" padding-left: 24px;\n" +"*/\n" +" margin-left: -3px;\n" +" border-top-left-radius: 0px;\n" +" border-bottom-left-radius: 0px;\n" +"\n" +"}") + + self.gridLayout_2.addWidget(self.pb_send_camera_c, 2, 1, 1, 1) + + self.sb_camera_d = QSpinBox(self.page_divider) + self.sb_camera_d.setObjectName(u"sb_camera_d") + sizePolicy.setHeightForWidth(self.sb_camera_d.sizePolicy().hasHeightForWidth()) + self.sb_camera_d.setSizePolicy(sizePolicy) + self.sb_camera_d.setMinimumSize(QSize(0, 30)) + self.sb_camera_d.setMaximumSize(QSize(16777215, 30)) + self.sb_camera_d.setStyleSheet(u"QSpinBox {\n" +" border-top-right-radius: 0px;\n" +" border-bottom-right-radius: 0px;\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-position: center right;\n" +" background-repeat: no-repeat;\n" +"}") + self.sb_camera_d.setMaximum(2147483647) + self.sb_camera_d.setSingleStep(100) + self.sb_camera_d.setValue(100) + + self.gridLayout_2.addWidget(self.sb_camera_d, 3, 0, 1, 1) + + self.pb_send_camera_d = QPushButton(self.page_divider) + self.pb_send_camera_d.setObjectName(u"pb_send_camera_d") + sizePolicy4.setHeightForWidth(self.pb_send_camera_d.sizePolicy().hasHeightForWidth()) + self.pb_send_camera_d.setSizePolicy(sizePolicy4) + self.pb_send_camera_d.setMinimumSize(QSize(30, 30)) + self.pb_send_camera_d.setMaximumSize(QSize(30, 30)) + self.pb_send_camera_d.setFont(font) + self.pb_send_camera_d.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_camera_d.setStyleSheet(u"QPushButton {\n" +"/*\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-origin: margin;\n" +" background-position: center left;\n" +" padding-left: 24px;\n" +"*/\n" +" margin-left: -3px;\n" +" border-top-left-radius: 0px;\n" +" border-bottom-left-radius: 0px;\n" +"\n" +"}") + + self.gridLayout_2.addWidget(self.pb_send_camera_d, 3, 1, 1, 1) + + self.sb_camera_b = QSpinBox(self.page_divider) + self.sb_camera_b.setObjectName(u"sb_camera_b") + sizePolicy.setHeightForWidth(self.sb_camera_b.sizePolicy().hasHeightForWidth()) + self.sb_camera_b.setSizePolicy(sizePolicy) + self.sb_camera_b.setMinimumSize(QSize(0, 30)) + self.sb_camera_b.setMaximumSize(QSize(16777215, 30)) + self.sb_camera_b.setStyleSheet(u"QSpinBox {\n" +" border-top-right-radius: 0px;\n" +" border-bottom-right-radius: 0px;\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-position: center right;\n" +" background-repeat: no-repeat;\n" +"}") + self.sb_camera_b.setMaximum(2147483647) + self.sb_camera_b.setSingleStep(100) + self.sb_camera_b.setValue(100) + + self.gridLayout_2.addWidget(self.sb_camera_b, 1, 0, 1, 1) + + + self.horizontalLayout_16.addLayout(self.gridLayout_2) + + self.verticalLayout_21 = QVBoxLayout() + self.verticalLayout_21.setSpacing(10) + self.verticalLayout_21.setObjectName(u"verticalLayout_21") + self.horizontalLayout_18 = QHBoxLayout() + self.horizontalLayout_18.setSpacing(0) + self.horizontalLayout_18.setObjectName(u"horizontalLayout_18") + self.horizontalLayout_18.setContentsMargins(0, -1, -1, -1) + self.sb_valve = QSpinBox(self.page_divider) + self.sb_valve.setObjectName(u"sb_valve") + sizePolicy.setHeightForWidth(self.sb_valve.sizePolicy().hasHeightForWidth()) + self.sb_valve.setSizePolicy(sizePolicy) + self.sb_valve.setMinimumSize(QSize(0, 30)) + self.sb_valve.setMaximumSize(QSize(16777215, 30)) + self.sb_valve.setStyleSheet(u"QSpinBox {\n" +" border-top-right-radius: 0px;\n" +" border-bottom-right-radius: 0px;\n" +" background-image: url(:/icons/images/icons/wind.png);\n" +" background-position: center right;\n" +" background-repeat: no-repeat;\n" +"}") + self.sb_valve.setMaximum(2147483647) + self.sb_valve.setSingleStep(100) + self.sb_valve.setValue(100) + + self.horizontalLayout_18.addWidget(self.sb_valve) + + self.pb_send_valve = QPushButton(self.page_divider) + self.pb_send_valve.setObjectName(u"pb_send_valve") + sizePolicy4.setHeightForWidth(self.pb_send_valve.sizePolicy().hasHeightForWidth()) + self.pb_send_valve.setSizePolicy(sizePolicy4) + self.pb_send_valve.setMinimumSize(QSize(30, 30)) + self.pb_send_valve.setMaximumSize(QSize(30, 30)) + self.pb_send_valve.setFont(font) + self.pb_send_valve.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_valve.setStyleSheet(u"QPushButton {\n" +"/*\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-origin: margin;\n" +" background-position: center left;\n" +" padding-left: 24px;\n" +"*/\n" +" margin-left: -3px;\n" +" border-top-left-radius: 0px;\n" +" border-bottom-left-radius: 0px;\n" +"\n" +"}") + + self.horizontalLayout_18.addWidget(self.pb_send_valve) + + + self.verticalLayout_21.addLayout(self.horizontalLayout_18) + + self.horizontalLayout_17 = QHBoxLayout() + self.horizontalLayout_17.setSpacing(0) + self.horizontalLayout_17.setObjectName(u"horizontalLayout_17") + self.horizontalLayout_17.setContentsMargins(0, -1, -1, -1) + self.cb_from_camera = QComboBox(self.page_divider) + self.cb_from_camera.addItem("") + self.cb_from_camera.addItem("") + self.cb_from_camera.addItem("") + self.cb_from_camera.addItem("") + self.cb_from_camera.setObjectName(u"cb_from_camera") + sizePolicy4.setHeightForWidth(self.cb_from_camera.sizePolicy().hasHeightForWidth()) + self.cb_from_camera.setSizePolicy(sizePolicy4) + self.cb_from_camera.setMinimumSize(QSize(75, 30)) + self.cb_from_camera.setMaximumSize(QSize(16777215, 30)) + self.cb_from_camera.setStyleSheet(u"QComboBox {\n" +" border-radius: 5px;\n" +" border-top-right-radius: 0px;\n" +" border-bottom-right-radius: 0px;\n" +" margin-right: -1px;\n" +" padding-left: 10px;\n" +"}\n" +"\n" +"QComboBox::drop-down {\n" +" subcontrol-position: top left;\n" +" border: none;\n" +" border-right: 3px solid rgba(39, 44, 54, 150);\n" +" border-radius: 0px;\n" +" border-top-left-radius: 3px;\n" +" border-bottom-left-radius: 3px; \n" +" }") + self.cb_from_camera.setEditable(True) + + self.horizontalLayout_17.addWidget(self.cb_from_camera) + + self.le_to_valve = QLineEdit(self.page_divider) + self.le_to_valve.setObjectName(u"le_to_valve") + sizePolicy.setHeightForWidth(self.le_to_valve.sizePolicy().hasHeightForWidth()) + self.le_to_valve.setSizePolicy(sizePolicy) + self.le_to_valve.setMinimumSize(QSize(40, 30)) + self.le_to_valve.setMaximumSize(QSize(80, 30)) + self.le_to_valve.setStyleSheet(u"border-radius: 0px;\n" +"background-image: url(:/icons/images/icons/link-2.png);\n" +"background-position: center right;\n" +"background-repeat: no-repeat;") + + self.horizontalLayout_17.addWidget(self.le_to_valve) + + self.pb_send_to_valve = QPushButton(self.page_divider) + self.pb_send_to_valve.setObjectName(u"pb_send_to_valve") + sizePolicy4.setHeightForWidth(self.pb_send_to_valve.sizePolicy().hasHeightForWidth()) + self.pb_send_to_valve.setSizePolicy(sizePolicy4) + self.pb_send_to_valve.setMinimumSize(QSize(30, 30)) + self.pb_send_to_valve.setMaximumSize(QSize(30, 30)) + self.pb_send_to_valve.setFont(font) + self.pb_send_to_valve.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_to_valve.setStyleSheet(u"QPushButton {\n" +"/*\n" +" background-image: url(:/icons/images/icons/camera.png);\n" +" background-origin: margin;\n" +" background-position: center left;\n" +" padding-left: 24px;\n" +"*/\n" +" margin-left: -3px;\n" +" border-top-left-radius: 0px;\n" +" border-bottom-left-radius: 0px;\n" +"\n" +"}") + + self.horizontalLayout_17.addWidget(self.pb_send_to_valve) + + + self.verticalLayout_21.addLayout(self.horizontalLayout_17) + + self.horizontalLayout_19 = QHBoxLayout() + self.horizontalLayout_19.setSpacing(10) + self.horizontalLayout_19.setObjectName(u"horizontalLayout_19") + self.horizontalLayout_19.setContentsMargins(0, -1, -1, -1) + self.horizontalSlider = QSlider(self.page_divider) + self.horizontalSlider.setObjectName(u"horizontalSlider") + sizePolicy.setHeightForWidth(self.horizontalSlider.sizePolicy().hasHeightForWidth()) + self.horizontalSlider.setSizePolicy(sizePolicy) + self.horizontalSlider.setMinimumSize(QSize(0, 30)) + self.horizontalSlider.setOrientation(Qt.Horizontal) + + self.horizontalLayout_19.addWidget(self.horizontalSlider) + + self.horizontalSlider_2 = QSlider(self.page_divider) + self.horizontalSlider_2.setObjectName(u"horizontalSlider_2") + sizePolicy.setHeightForWidth(self.horizontalSlider_2.sizePolicy().hasHeightForWidth()) + self.horizontalSlider_2.setSizePolicy(sizePolicy) + self.horizontalSlider_2.setMinimumSize(QSize(0, 30)) + self.horizontalSlider_2.setOrientation(Qt.Horizontal) + + self.horizontalLayout_19.addWidget(self.horizontalSlider_2) + + + self.verticalLayout_21.addLayout(self.horizontalLayout_19) + + self.horizontalLayout_20 = QHBoxLayout() + self.horizontalLayout_20.setSpacing(10) + self.horizontalLayout_20.setObjectName(u"horizontalLayout_20") + self.horizontalLayout_20.setContentsMargins(0, -1, -1, -1) + self.horizontalSpacer_2 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) + + self.horizontalLayout_20.addItem(self.horizontalSpacer_2) + + self.pb_divider_restore = QPushButton(self.page_divider) + self.pb_divider_restore.setObjectName(u"pb_divider_restore") + sizePolicy4.setHeightForWidth(self.pb_divider_restore.sizePolicy().hasHeightForWidth()) + self.pb_divider_restore.setSizePolicy(sizePolicy4) + self.pb_divider_restore.setMinimumSize(QSize(30, 30)) + self.pb_divider_restore.setMaximumSize(QSize(30, 30)) + self.pb_divider_restore.setFont(font4) + self.pb_divider_restore.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_divider_restore.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/rotate-ccw.png);\n" +" background-position: center center;\n" +"}\n" +"\n" +"") + + self.horizontalLayout_20.addWidget(self.pb_divider_restore) + + self.pb_divider_random = QPushButton(self.page_divider) + self.pb_divider_random.setObjectName(u"pb_divider_random") + sizePolicy4.setHeightForWidth(self.pb_divider_random.sizePolicy().hasHeightForWidth()) + self.pb_divider_random.setSizePolicy(sizePolicy4) + self.pb_divider_random.setMinimumSize(QSize(30, 30)) + self.pb_divider_random.setMaximumSize(QSize(30, 30)) + self.pb_divider_random.setFont(font4) + self.pb_divider_random.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_divider_random.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/shuffle.png);\n" +" background-position: center center;\n" +"}\n" +"\n" +"") + + self.horizontalLayout_20.addWidget(self.pb_divider_random) + + self.pb_send_camera_all = QPushButton(self.page_divider) + self.pb_send_camera_all.setObjectName(u"pb_send_camera_all") + sizePolicy4.setHeightForWidth(self.pb_send_camera_all.sizePolicy().hasHeightForWidth()) + self.pb_send_camera_all.setSizePolicy(sizePolicy4) + self.pb_send_camera_all.setMinimumSize(QSize(30, 30)) + self.pb_send_camera_all.setMaximumSize(QSize(30, 30)) + self.pb_send_camera_all.setFont(font4) + self.pb_send_camera_all.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_camera_all.setStyleSheet(u"QPushButton {\n" +" background-image: url(:/icons/images/icons/arrow-right.png);\n" +" background-position: center center;\n" +" background-color: rgb(54,106,206);\n" +" border-style: none;\n" +"}\n" +"QPushButton:hover {\n" +" background-color: rgb(48,95,185);\n" +"}\n" +"QPushButton:pressed {\n" +" background-color: rgb(45,89,173);\n" +"}\n" +"QPushButton:disabled {\n" +" background-color: rgb(52, 59, 72);\n" +"}\n" +"") + + self.horizontalLayout_20.addWidget(self.pb_send_camera_all) + + + self.verticalLayout_21.addLayout(self.horizontalLayout_20) + + + self.horizontalLayout_16.addLayout(self.verticalLayout_21) + + + self.verticalLayout_22.addLayout(self.horizontalLayout_16) + + self.verticalSpacer_7 = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding) + + self.verticalLayout_22.addItem(self.verticalSpacer_7) + + + self.horizontalLayout_6.addLayout(self.verticalLayout_22) + + self.verticalLayout_5 = QVBoxLayout() + self.verticalLayout_5.setObjectName(u"verticalLayout_5") + self.verticalLayout_5.setContentsMargins(-1, -1, -1, 6) + self.horizontalSpacer_4 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) + + self.verticalLayout_5.addItem(self.horizontalSpacer_4) + + + self.horizontalLayout_6.addLayout(self.verticalLayout_5) + + + self.verticalLayout_12.addLayout(self.horizontalLayout_6) + + + self.horizontalLayout_11.addLayout(self.verticalLayout_12) + + self.verticalLayout_11 = QVBoxLayout() + self.verticalLayout_11.setSpacing(20) + self.verticalLayout_11.setObjectName(u"verticalLayout_11") + self.labelBoxBlenderInstalation_6 = QLabel(self.page_divider) + self.labelBoxBlenderInstalation_6.setObjectName(u"labelBoxBlenderInstalation_6") + sizePolicy4.setHeightForWidth(self.labelBoxBlenderInstalation_6.sizePolicy().hasHeightForWidth()) + self.labelBoxBlenderInstalation_6.setSizePolicy(sizePolicy4) + self.labelBoxBlenderInstalation_6.setFont(font) + self.labelBoxBlenderInstalation_6.setStyleSheet(u"") + + self.verticalLayout_11.addWidget(self.labelBoxBlenderInstalation_6) + + self.lv_packets = QListView(self.page_divider) + self.lv_packets.setObjectName(u"lv_packets") + sizePolicy6 = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) + sizePolicy6.setHorizontalStretch(0) + sizePolicy6.setVerticalStretch(0) + sizePolicy6.setHeightForWidth(self.lv_packets.sizePolicy().hasHeightForWidth()) + self.lv_packets.setSizePolicy(sizePolicy6) + self.lv_packets.setMaximumSize(QSize(16777215, 16777215)) + + self.verticalLayout_11.addWidget(self.lv_packets) + + self.horizontalLayout_14 = QHBoxLayout() + self.horizontalLayout_14.setSpacing(0) + self.horizontalLayout_14.setObjectName(u"horizontalLayout_14") + self.pb_send_start = QPushButton(self.page_divider) + self.pb_send_start.setObjectName(u"pb_send_start") + sizePolicy4.setHeightForWidth(self.pb_send_start.sizePolicy().hasHeightForWidth()) + self.pb_send_start.setSizePolicy(sizePolicy4) + self.pb_send_start.setMinimumSize(QSize(90, 30)) + self.pb_send_start.setMaximumSize(QSize(90, 30)) + self.pb_send_start.setFont(font4) + self.pb_send_start.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_start.setStyleSheet(u"QPushButton {\n" +" background-color: rgb(87,150,92);\n" +" background-origin: border;\n" +" background-image: url(:/icons/images/icons/camera-and-down.png);\n" +" padding-left: 6px;\n" +" border-top-right-radius: 0px;\n" +" border-bottom-right-radius: 0px;\n" +" border: none;\n" +" margin-right: -1px;\n" +"}\n" +"QPushButton:hover {\n" +" background-color: rgb(78,135,82);\n" +"}\n" +"QPushButton:pressed {\n" +" background-color: rgb(73,126,77);\n" +"}\n" +"QPushButton:disabled {\n" +" background-color: rgb(52, 59, 72);\n" +"}") + + self.horizontalLayout_14.addWidget(self.pb_send_start) + + self.widget = QWidget(self.page_divider) + self.widget.setObjectName(u"widget") + sizePolicy4.setHeightForWidth(self.widget.sizePolicy().hasHeightForWidth()) + self.widget.setSizePolicy(sizePolicy4) + self.widget.setMinimumSize(QSize(1, 30)) + self.widget.setMaximumSize(QSize(1, 30)) + self.widget.setStyleSheet(u"QWidget {\n" +" background-color: rgb(87,150,92);\n" +" background-image: url(:/icons/images/icons/30-height-sep.png);\n" +" border: none;\n" +" border-top: 5px solid rgb(87,150,92);\n" +" border-bottom: 5px solid rgb(87,150,92);\n" +" margin-right: -1px;\n" +"}\n" +"QWidget:disabled {\n" +" background-color: rgb(52, 59, 72);\n" +" border-top: 5px solid rgb(52, 59, 72);\n" +" border-bottom: 5px solid rgb(52, 59, 72);\n" +"}") + + self.horizontalLayout_14.addWidget(self.widget) + + self.pb_send_start_2 = QPushButton(self.page_divider) + self.pb_send_start_2.setObjectName(u"pb_send_start_2") + sizePolicy4.setHeightForWidth(self.pb_send_start_2.sizePolicy().hasHeightForWidth()) + self.pb_send_start_2.setSizePolicy(sizePolicy4) + self.pb_send_start_2.setMinimumSize(QSize(30, 30)) + self.pb_send_start_2.setMaximumSize(QSize(30, 30)) + self.pb_send_start_2.setFont(font4) + self.pb_send_start_2.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_start_2.setStyleSheet(u"QPushButton {\n" +" background-color: rgb(87,150,92);\n" +" background-origin: border;\n" +" border-style: none;\n" +" background-image: url(:/icons/images/icons/play.png);\n" +" border-top-left-radius: 0px;\n" +" border-bottom-left-radius: 0px;\n" +" border: none;\n" +"}\n" +"QPushButton:hover {\n" +" background-color: rgb(78,135,82);\n" +"}\n" +"QPushButton:pressed {\n" +" background-color: rgb(73,126,77);\n" +"}\n" +"QPushButton:disabled {\n" +" background-color: rgb(52, 59, 72);\n" +"}") + + self.horizontalLayout_14.addWidget(self.pb_send_start_2) + + self.widget_2 = QWidget(self.page_divider) + self.widget_2.setObjectName(u"widget_2") + self.widget_2.setMinimumSize(QSize(10, 0)) + + self.horizontalLayout_14.addWidget(self.widget_2) + + self.pb_send_stop = QPushButton(self.page_divider) + self.pb_send_stop.setObjectName(u"pb_send_stop") + sizePolicy4.setHeightForWidth(self.pb_send_stop.sizePolicy().hasHeightForWidth()) + self.pb_send_stop.setSizePolicy(sizePolicy4) + self.pb_send_stop.setMinimumSize(QSize(30, 30)) + self.pb_send_stop.setMaximumSize(QSize(30, 30)) + self.pb_send_stop.setFont(font4) + self.pb_send_stop.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_send_stop.setStyleSheet(u"QPushButton {\n" +" background-color: rgb(235,113,113);\n" +" border-style: none;\n" +" background-image: url(:/icons/images/icons/square.png);\n" +"}\n" +"QPushButton:hover {\n" +" background-color: rgb(227,82,82);\n" +"}\n" +"QPushButton:pressed {\n" +" background-color: rgb(201,79,79);\n" +"}\n" +"QPushButton:disabled {\n" +" background-color: rgb(52, 59, 72);\n" +"}") + + self.horizontalLayout_14.addWidget(self.pb_send_stop) + + self.horizontalSpacer_5 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) + + self.horizontalLayout_14.addItem(self.horizontalSpacer_5) + + + self.verticalLayout_11.addLayout(self.horizontalLayout_14) + + + self.horizontalLayout_11.addLayout(self.verticalLayout_11) + + self.horizontalLayout_11.setStretch(0, 3) + self.horizontalLayout_11.setStretch(1, 2) + self.stackedWidget.addWidget(self.page_divider) + self.page_valvedata = QWidget() + self.page_valvedata.setObjectName(u"page_valvedata") + self.verticalLayout_10 = QVBoxLayout(self.page_valvedata) + self.verticalLayout_10.setObjectName(u"verticalLayout_10") + self.verticalLayout_10.setContentsMargins(10, 5, 10, 10) + self.horizontalLayout_7 = QHBoxLayout() + self.horizontalLayout_7.setObjectName(u"horizontalLayout_7") + self.labelBoxBlenderInstalation_2 = QLabel(self.page_valvedata) + self.labelBoxBlenderInstalation_2.setObjectName(u"labelBoxBlenderInstalation_2") + self.labelBoxBlenderInstalation_2.setFont(font) + self.labelBoxBlenderInstalation_2.setStyleSheet(u"") + + self.horizontalLayout_7.addWidget(self.labelBoxBlenderInstalation_2) + + self.pb_export_table = QPushButton(self.page_valvedata) + self.pb_export_table.setObjectName(u"pb_export_table") + sizePolicy7 = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred) + sizePolicy7.setHorizontalStretch(0) + sizePolicy7.setVerticalStretch(0) + sizePolicy7.setHeightForWidth(self.pb_export_table.sizePolicy().hasHeightForWidth()) + self.pb_export_table.setSizePolicy(sizePolicy7) + self.pb_export_table.setMinimumSize(QSize(75, 30)) + self.pb_export_table.setMaximumSize(QSize(100, 16777215)) + self.pb_export_table.setFont(font) + self.pb_export_table.setCursor(QCursor(Qt.PointingHandCursor)) + self.pb_export_table.setStyleSheet(u"background-color: rgb(52, 59, 72);") + icon5 = QIcon() + icon5.addFile(u":/icons/images/icons/cil-save.png", QSize(), QIcon.Normal, QIcon.Off) + self.pb_export_table.setIcon(icon5) + + self.horizontalLayout_7.addWidget(self.pb_export_table) + + + self.verticalLayout_10.addLayout(self.horizontalLayout_7) + + self.tableView = QTableView(self.page_valvedata) + self.tableView.setObjectName(u"tableView") + + self.verticalLayout_10.addWidget(self.tableView) + + self.stackedWidget.addWidget(self.page_valvedata) + + self.verticalLayout_15.addWidget(self.stackedWidget) + + + self.horizontalLayout_4.addWidget(self.pagesContainer) + + + self.verticalLayout_6.addWidget(self.content) + + self.bottomBar = QFrame(self.contentBottom) + self.bottomBar.setObjectName(u"bottomBar") + self.bottomBar.setMinimumSize(QSize(0, 22)) + self.bottomBar.setMaximumSize(QSize(16777215, 22)) + self.bottomBar.setFrameShape(QFrame.NoFrame) + self.bottomBar.setFrameShadow(QFrame.Raised) + self.horizontalLayout_5 = QHBoxLayout(self.bottomBar) + self.horizontalLayout_5.setSpacing(0) + self.horizontalLayout_5.setObjectName(u"horizontalLayout_5") + self.horizontalLayout_5.setContentsMargins(0, 0, 0, 0) + self.lbl_server_addr = QLabel(self.bottomBar) + self.lbl_server_addr.setObjectName(u"lbl_server_addr") + sizePolicy7.setHeightForWidth(self.lbl_server_addr.sizePolicy().hasHeightForWidth()) + self.lbl_server_addr.setSizePolicy(sizePolicy7) + self.lbl_server_addr.setMinimumSize(QSize(0, 0)) + self.lbl_server_addr.setMaximumSize(QSize(16777215, 16)) + font5 = QFont() + font5.setFamilies([u"Segoe UI"]) + font5.setBold(False) + font5.setItalic(False) + self.lbl_server_addr.setFont(font5) + self.lbl_server_addr.setStyleSheet(u"QLabel {\n" +" text-align: right;\n" +" padding-right:0px;\n" +"}") + + self.horizontalLayout_5.addWidget(self.lbl_server_addr) + + self.label_2 = QLabel(self.bottomBar) + self.label_2.setObjectName(u"label_2") + sizePolicy8 = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Preferred) + sizePolicy8.setHorizontalStretch(0) + sizePolicy8.setVerticalStretch(0) + sizePolicy8.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth()) + self.label_2.setSizePolicy(sizePolicy8) + self.label_2.setMaximumSize(QSize(25, 16777215)) + self.label_2.setStyleSheet(u"background-image: url(:/icons/images/icons/link.png);\n" +"background-repeat: no-repeat;\n" +"background-position: center center") + + self.horizontalLayout_5.addWidget(self.label_2) + + self.lbl_client_addr = QLabel(self.bottomBar) + self.lbl_client_addr.setObjectName(u"lbl_client_addr") + self.lbl_client_addr.setStyleSheet(u"QLabel {\n" +" padding-left:0px;\n" +"}") + + self.horizontalLayout_5.addWidget(self.lbl_client_addr) + + self.lbl_datagram = QLabel(self.bottomBar) + self.lbl_datagram.setObjectName(u"lbl_datagram") + sizePolicy1.setHeightForWidth(self.lbl_datagram.sizePolicy().hasHeightForWidth()) + self.lbl_datagram.setSizePolicy(sizePolicy1) + self.lbl_datagram.setMaximumSize(QSize(16777215, 16)) + self.lbl_datagram.setFont(font5) + self.lbl_datagram.setStyleSheet(u"") + self.lbl_datagram.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + + self.horizontalLayout_5.addWidget(self.lbl_datagram) + + self.label_1 = QLabel(self.bottomBar) + self.label_1.setObjectName(u"label_1") + sizePolicy8.setHeightForWidth(self.label_1.sizePolicy().hasHeightForWidth()) + self.label_1.setSizePolicy(sizePolicy8) + self.label_1.setMinimumSize(QSize(12, 0)) + self.label_1.setMaximumSize(QSize(12, 16777215)) + self.label_1.setStyleSheet(u"QLabel {\n" +" background-image: url(:/icons/images/icons/chevron-statusbarup.png);\n" +" background-repeat:no-repeat;\n" +" background-position: center center;\n" +"}") + + self.horizontalLayout_5.addWidget(self.label_1) + + self.lbl_tx_count = QLabel(self.bottomBar) + self.lbl_tx_count.setObjectName(u"lbl_tx_count") + self.lbl_tx_count.setStyleSheet(u"QLabel {\n" +"padding-left:0px;\n" +"}\n" +"") + + self.horizontalLayout_5.addWidget(self.lbl_tx_count) + + self.label_3 = QLabel(self.bottomBar) + self.label_3.setObjectName(u"label_3") + sizePolicy8.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth()) + self.label_3.setSizePolicy(sizePolicy8) + self.label_3.setMinimumSize(QSize(12, 0)) + self.label_3.setMaximumSize(QSize(12, 16777215)) + self.label_3.setStyleSheet(u"QLabel {\n" +" background-image: url(:/icons/images/icons/chevron-statusbardown.png);\n" +" background-repeat:no-repeat;\n" +" background-position: center center;\n" +"}") + + self.horizontalLayout_5.addWidget(self.label_3) + + self.lbl_rx_count = QLabel(self.bottomBar) + self.lbl_rx_count.setObjectName(u"lbl_rx_count") + self.lbl_rx_count.setStyleSheet(u"QLabel {\n" +"padding-left:0px;\n" +"}\n" +"") + + self.horizontalLayout_5.addWidget(self.lbl_rx_count) + + self.lbl_version = QLabel(self.bottomBar) + self.lbl_version.setObjectName(u"lbl_version") + sizePolicy7.setHeightForWidth(self.lbl_version.sizePolicy().hasHeightForWidth()) + self.lbl_version.setSizePolicy(sizePolicy7) + self.lbl_version.setMaximumSize(QSize(16777215, 16)) + self.lbl_version.setFont(font5) + self.lbl_version.setTextFormat(Qt.PlainText) + self.lbl_version.setAlignment(Qt.AlignLeading|Qt.AlignLeft|Qt.AlignVCenter) + + self.horizontalLayout_5.addWidget(self.lbl_version) + + self.frame_size_grip = QFrame(self.bottomBar) + self.frame_size_grip.setObjectName(u"frame_size_grip") + self.frame_size_grip.setMinimumSize(QSize(20, 0)) + self.frame_size_grip.setMaximumSize(QSize(20, 16777215)) + self.frame_size_grip.setStyleSheet(u"background-image: url(:/icons/images/icons/cil-size-grip.png);\n" +"background-repeat: no-repeat;\n" +"background-position: right bottom") + self.frame_size_grip.setFrameShape(QFrame.NoFrame) + self.frame_size_grip.setFrameShadow(QFrame.Raised) + + self.horizontalLayout_5.addWidget(self.frame_size_grip) + + + self.verticalLayout_6.addWidget(self.bottomBar) + + + self.verticalLayout_2.addWidget(self.contentBottom) + + + self.appLayout.addWidget(self.contentBox) + + + self.appMargins.addWidget(self.bgApp) + + MainWindow.setCentralWidget(self.styleSheet) + QWidget.setTabOrder(self.toggleButton, self.btn_home) + QWidget.setTabOrder(self.btn_home, self.btn_connection) + QWidget.setTabOrder(self.btn_connection, self.btn_divider) + QWidget.setTabOrder(self.btn_divider, self.btn_valvedata) + QWidget.setTabOrder(self.btn_valvedata, self.cb_start_1) + QWidget.setTabOrder(self.cb_start_1, self.le_length_1) + QWidget.setTabOrder(self.le_length_1, self.cb_command_1) + QWidget.setTabOrder(self.cb_command_1, self.cb_data_1) + QWidget.setTabOrder(self.cb_data_1, self.le_check_1) + QWidget.setTabOrder(self.le_check_1, self.cb_end_1) + QWidget.setTabOrder(self.cb_end_1, self.pb_preset_1) + QWidget.setTabOrder(self.pb_preset_1, self.pb_send_1) + QWidget.setTabOrder(self.pb_send_1, self.cb_start_2) + QWidget.setTabOrder(self.cb_start_2, self.le_length_2) + QWidget.setTabOrder(self.le_length_2, self.cb_command_2) + QWidget.setTabOrder(self.cb_command_2, self.cb_data_2) + QWidget.setTabOrder(self.cb_data_2, self.le_check_2) + QWidget.setTabOrder(self.le_check_2, self.cb_end_2) + QWidget.setTabOrder(self.cb_end_2, self.pb_preset_2) + QWidget.setTabOrder(self.pb_preset_2, self.pb_send_2) + QWidget.setTabOrder(self.pb_send_2, self.cb_start_3) + QWidget.setTabOrder(self.cb_start_3, self.le_length_3) + QWidget.setTabOrder(self.le_length_3, self.cb_command_3) + QWidget.setTabOrder(self.cb_command_3, self.cb_data_3) + QWidget.setTabOrder(self.cb_data_3, self.le_check_3) + QWidget.setTabOrder(self.le_check_3, self.cb_end_3) + QWidget.setTabOrder(self.cb_end_3, self.pb_preset_3) + QWidget.setTabOrder(self.pb_preset_3, self.pb_send_3) + QWidget.setTabOrder(self.pb_send_3, self.cb_start_4) + QWidget.setTabOrder(self.cb_start_4, self.le_length_4) + QWidget.setTabOrder(self.le_length_4, self.cb_command_4) + QWidget.setTabOrder(self.cb_command_4, self.cb_data_4) + QWidget.setTabOrder(self.cb_data_4, self.le_check_4) + QWidget.setTabOrder(self.le_check_4, self.cb_end_4) + QWidget.setTabOrder(self.cb_end_4, self.pb_preset_4) + QWidget.setTabOrder(self.pb_preset_4, self.pb_send_4) + QWidget.setTabOrder(self.pb_send_4, self.cb_start_5) + QWidget.setTabOrder(self.cb_start_5, self.le_length_5) + QWidget.setTabOrder(self.le_length_5, self.cb_command_5) + QWidget.setTabOrder(self.cb_command_5, self.cb_data_5) + QWidget.setTabOrder(self.cb_data_5, self.le_check_5) + QWidget.setTabOrder(self.le_check_5, self.cb_end_5) + QWidget.setTabOrder(self.cb_end_5, self.pb_preset_5) + QWidget.setTabOrder(self.pb_preset_5, self.pb_send_5) + QWidget.setTabOrder(self.pb_send_5, self.le_profile_file) + QWidget.setTabOrder(self.le_profile_file, self.minimizeAppBtn) + QWidget.setTabOrder(self.minimizeAppBtn, self.pb_load_profile) + QWidget.setTabOrder(self.pb_load_profile, self.tableView) + QWidget.setTabOrder(self.tableView, self.pb_save_profile) + QWidget.setTabOrder(self.pb_save_profile, self.cb_server_ip) + QWidget.setTabOrder(self.cb_server_ip, self.pb_export_table) + QWidget.setTabOrder(self.pb_export_table, self.maximizeRestoreAppBtn) + QWidget.setTabOrder(self.maximizeRestoreAppBtn, self.closeAppBtn) + + self.retranslateUi(MainWindow) + + self.stackedWidget.setCurrentIndex(2) + self.cb_command_1.setCurrentIndex(0) + self.cb_command_2.setCurrentIndex(1) + self.cb_command_3.setCurrentIndex(2) + self.cb_command_4.setCurrentIndex(2) + self.cb_command_5.setCurrentIndex(2) + + + QMetaObject.connectSlotsByName(MainWindow) + # setupUi + + def retranslateUi(self, MainWindow): + MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"MiaowDaq - ULM7606 Data Acquisition Application", None)) + self.titleLeftApp.setText(QCoreApplication.translate("MainWindow", u"MiaowSim", None)) + self.titleLeftDescription.setText(QCoreApplication.translate("MainWindow", u"A lower machine server", None)) + self.toggleButton.setText(QCoreApplication.translate("MainWindow", u"Hide", None)) + self.btn_home.setText(QCoreApplication.translate("MainWindow", u"Home", None)) + self.btn_connection.setText(QCoreApplication.translate("MainWindow", u"Connection", None)) + self.btn_divider.setText(QCoreApplication.translate("MainWindow", u"Divider", None)) + self.btn_valvedata.setText(QCoreApplication.translate("MainWindow", u"Valve Data", None)) + self.btn_exit.setText(QCoreApplication.translate("MainWindow", u"Exit", None)) + self.titleRightInfo.setText(QCoreApplication.translate("MainWindow", u"

MiaowSim - Uppermachine Simulator

", None)) +#if QT_CONFIG(tooltip) + self.minimizeAppBtn.setToolTip(QCoreApplication.translate("MainWindow", u"Minimize", None)) +#endif // QT_CONFIG(tooltip) + self.minimizeAppBtn.setText("") +#if QT_CONFIG(tooltip) + self.maximizeRestoreAppBtn.setToolTip(QCoreApplication.translate("MainWindow", u"Maximize", None)) +#endif // QT_CONFIG(tooltip) + self.maximizeRestoreAppBtn.setText("") +#if QT_CONFIG(tooltip) + self.closeAppBtn.setToolTip(QCoreApplication.translate("MainWindow", u"Close", None)) +#endif // QT_CONFIG(tooltip) + self.closeAppBtn.setText("") + self.labelBoxBlenderInstalation.setText(QCoreApplication.translate("MainWindow", u"PROFILE", None)) + self.le_profile_file.setText(QCoreApplication.translate("MainWindow", u"./settings.json", None)) + self.le_profile_file.setPlaceholderText(QCoreApplication.translate("MainWindow", u"Default to ./profile.json", None)) + self.pb_load_profile.setText(QCoreApplication.translate("MainWindow", u"Load...", None)) + self.pb_save_profile.setText(QCoreApplication.translate("MainWindow", u"Save...", None)) + self.labelVersion_4.setText(QCoreApplication.translate("MainWindow", u"Load or save the specification", None)) + self.labelBoxBlenderInstalation_3.setText(QCoreApplication.translate("MainWindow", u"SPECIFICATION", None)) + self.lbl_server_ip.setText(QCoreApplication.translate("MainWindow", u"Server IP", None)) + self.lbl_server_port.setText(QCoreApplication.translate("MainWindow", u"Server Port", None)) + self.labelBoxBlenderInstalation_4.setText(QCoreApplication.translate("MainWindow", u"MANUAL", None)) + self.cb_end_3.setItemText(0, QCoreApplication.translate("MainWindow", u"BB", None)) + + self.cb_end_3.setCurrentText(QCoreApplication.translate("MainWindow", u"BB", None)) + self.cb_data_5.setItemText(0, QCoreApplication.translate("MainWindow", u"FF", None)) + + self.cb_data_5.setCurrentText(QCoreApplication.translate("MainWindow", u"FF", None)) + self.lbl_data.setText(QCoreApplication.translate("MainWindow", u"Data (Hex)", None)) + self.lbl_start.setText(QCoreApplication.translate("MainWindow", u"Start (Hex)", None)) + self.cb_start_3.setItemText(0, QCoreApplication.translate("MainWindow", u"AA", None)) + + self.cb_start_3.setCurrentText(QCoreApplication.translate("MainWindow", u"AA", None)) +#if QT_CONFIG(tooltip) + self.pb_preset_2.setToolTip(QCoreApplication.translate("MainWindow", u"Add to custom commands", None)) +#endif // QT_CONFIG(tooltip) + self.pb_preset_2.setText("") + self.cb_start_2.setItemText(0, QCoreApplication.translate("MainWindow", u"AA", None)) + + self.cb_start_2.setCurrentText(QCoreApplication.translate("MainWindow", u"AA", None)) + self.lbl_check.setText(QCoreApplication.translate("MainWindow", u"Chk (Hex)", None)) + self.cb_end_1.setItemText(0, QCoreApplication.translate("MainWindow", u"BB", None)) + + self.cb_data_2.setItemText(0, QCoreApplication.translate("MainWindow", u"FF", None)) + + self.cb_data_2.setCurrentText(QCoreApplication.translate("MainWindow", u"FF", None)) +#if QT_CONFIG(tooltip) + self.pb_send_4.setToolTip(QCoreApplication.translate("MainWindow", u"Send", None)) +#endif // QT_CONFIG(tooltip) + self.pb_send_4.setText("") +#if QT_CONFIG(tooltip) + self.pb_send_5.setToolTip(QCoreApplication.translate("MainWindow", u"Send", None)) +#endif // QT_CONFIG(tooltip) + self.pb_send_5.setText("") +#if QT_CONFIG(tooltip) + self.pb_preset_3.setToolTip(QCoreApplication.translate("MainWindow", u"Add to custom commands", None)) +#endif // QT_CONFIG(tooltip) + self.pb_preset_3.setText("") + self.cb_end_2.setItemText(0, QCoreApplication.translate("MainWindow", u"BB", None)) + + self.cb_end_2.setCurrentText(QCoreApplication.translate("MainWindow", u"BB", None)) +#if QT_CONFIG(tooltip) + self.pb_preset_1.setToolTip(QCoreApplication.translate("MainWindow", u"Add to custom commands", None)) +#endif // QT_CONFIG(tooltip) + self.pb_preset_1.setText("") + self.cb_start_1.setItemText(0, QCoreApplication.translate("MainWindow", u"AA", None)) + + self.cb_start_5.setItemText(0, QCoreApplication.translate("MainWindow", u"AA", None)) + +#if QT_CONFIG(tooltip) + self.pb_send_1.setToolTip(QCoreApplication.translate("MainWindow", u"Send", None)) +#endif // QT_CONFIG(tooltip) + self.pb_send_1.setText("") + self.cb_end_5.setItemText(0, QCoreApplication.translate("MainWindow", u"BB", None)) + +#if QT_CONFIG(tooltip) + self.pb_preset_4.setToolTip(QCoreApplication.translate("MainWindow", u"Add to custom commands", None)) +#endif // QT_CONFIG(tooltip) + self.pb_preset_4.setText("") + self.cb_data_4.setItemText(0, QCoreApplication.translate("MainWindow", u"FF", None)) + + self.cb_data_4.setCurrentText(QCoreApplication.translate("MainWindow", u"FF", None)) +#if QT_CONFIG(tooltip) + self.pb_send_2.setToolTip(QCoreApplication.translate("MainWindow", u"Send", None)) +#endif // QT_CONFIG(tooltip) + self.pb_send_2.setText("") +#if QT_CONFIG(tooltip) + self.pb_send_3.setToolTip(QCoreApplication.translate("MainWindow", u"Send", None)) +#endif // QT_CONFIG(tooltip) + self.pb_send_3.setText("") + self.cb_data_3.setItemText(0, QCoreApplication.translate("MainWindow", u"FF", None)) + + self.cb_data_3.setCurrentText(QCoreApplication.translate("MainWindow", u"FF", None)) + self.lbl_stop.setText(QCoreApplication.translate("MainWindow", u"End (Hex)", None)) + self.cb_end_4.setItemText(0, QCoreApplication.translate("MainWindow", u"BB", None)) + + self.cb_data_1.setItemText(0, QCoreApplication.translate("MainWindow", u"FF", None)) + + self.cb_data_1.setCurrentText(QCoreApplication.translate("MainWindow", u"FF", None)) + self.cb_start_4.setItemText(0, QCoreApplication.translate("MainWindow", u"AA", None)) + +#if QT_CONFIG(tooltip) + self.pb_preset_5.setToolTip(QCoreApplication.translate("MainWindow", u"Add to custom commands", None)) +#endif // QT_CONFIG(tooltip) + self.pb_preset_5.setText("") + self.cb_command_1.setItemText(0, QCoreApplication.translate("MainWindow", u"st", None)) + self.cb_command_1.setItemText(1, QCoreApplication.translate("MainWindow", u"sp", None)) + self.cb_command_1.setItemText(2, QCoreApplication.translate("MainWindow", u"te", None)) + + self.lbl_command.setText(QCoreApplication.translate("MainWindow", u"Cmd (Str)", None)) + self.lbl_length.setText(QCoreApplication.translate("MainWindow", u"Len (Dec)", None)) + self.cb_command_2.setItemText(0, QCoreApplication.translate("MainWindow", u"st", None)) + self.cb_command_2.setItemText(1, QCoreApplication.translate("MainWindow", u"sp", None)) + self.cb_command_2.setItemText(2, QCoreApplication.translate("MainWindow", u"te", None)) + + self.cb_command_2.setCurrentText(QCoreApplication.translate("MainWindow", u"sp", None)) + self.cb_command_3.setItemText(0, QCoreApplication.translate("MainWindow", u"st", None)) + self.cb_command_3.setItemText(1, QCoreApplication.translate("MainWindow", u"sp", None)) + self.cb_command_3.setItemText(2, QCoreApplication.translate("MainWindow", u"te", None)) + + self.cb_command_3.setCurrentText(QCoreApplication.translate("MainWindow", u"te", None)) + self.cb_command_4.setItemText(0, QCoreApplication.translate("MainWindow", u"st", None)) + self.cb_command_4.setItemText(1, QCoreApplication.translate("MainWindow", u"sp", None)) + self.cb_command_4.setItemText(2, QCoreApplication.translate("MainWindow", u"te", None)) + + self.cb_command_5.setItemText(0, QCoreApplication.translate("MainWindow", u"st", None)) + self.cb_command_5.setItemText(1, QCoreApplication.translate("MainWindow", u"sp", None)) + self.cb_command_5.setItemText(2, QCoreApplication.translate("MainWindow", u"te", None)) + + self.labelBoxBlenderInstalation_5.setText(QCoreApplication.translate("MainWindow", u"PRESET", None)) + self.btn_preset_previous.setText("") + self.le_preset_num.setText(QCoreApplication.translate("MainWindow", u"0", None)) + self.btn_preset_next.setText("") + self.le_preset_name.setPlaceholderText(QCoreApplication.translate("MainWindow", u"Name", None)) + self.btn_preset_add.setText("") + self.pb_send_camera_a.setText(QCoreApplication.translate("MainWindow", u"A", None)) + self.pb_send_camera_b.setText(QCoreApplication.translate("MainWindow", u"B", None)) + self.pb_send_camera_c.setText(QCoreApplication.translate("MainWindow", u"C", None)) + self.pb_send_camera_d.setText(QCoreApplication.translate("MainWindow", u"D", None)) + self.pb_send_valve.setText(QCoreApplication.translate("MainWindow", u"V", None)) + self.cb_from_camera.setItemText(0, QCoreApplication.translate("MainWindow", u"A", None)) + self.cb_from_camera.setItemText(1, QCoreApplication.translate("MainWindow", u"B", None)) + self.cb_from_camera.setItemText(2, QCoreApplication.translate("MainWindow", u"C", None)) + self.cb_from_camera.setItemText(3, QCoreApplication.translate("MainWindow", u"D", None)) + + self.cb_from_camera.setCurrentText(QCoreApplication.translate("MainWindow", u"A", None)) + self.le_to_valve.setText(QCoreApplication.translate("MainWindow", u"1000", None)) + self.pb_send_to_valve.setText(QCoreApplication.translate("MainWindow", u"T", None)) +#if QT_CONFIG(tooltip) + self.pb_divider_restore.setToolTip(QCoreApplication.translate("MainWindow", u"Restore dividers", None)) +#endif // QT_CONFIG(tooltip) + self.pb_divider_restore.setText("") +#if QT_CONFIG(tooltip) + self.pb_divider_random.setToolTip(QCoreApplication.translate("MainWindow", u"Fill random values", None)) +#endif // QT_CONFIG(tooltip) + self.pb_divider_random.setText("") +#if QT_CONFIG(tooltip) + self.pb_send_camera_all.setToolTip(QCoreApplication.translate("MainWindow", u"Send all values", None)) +#endif // QT_CONFIG(tooltip) + self.pb_send_camera_all.setText("") + self.labelBoxBlenderInstalation_6.setText(QCoreApplication.translate("MainWindow", u"PACKETS", None)) + self.pb_send_start.setText(QCoreApplication.translate("MainWindow", u"Start", None)) + self.pb_send_start_2.setText("") + self.pb_send_stop.setText("") + self.labelBoxBlenderInstalation_2.setText(QCoreApplication.translate("MainWindow", u"CAPTURED DATA", None)) + self.pb_export_table.setText(QCoreApplication.translate("MainWindow", u"Export...", None)) + self.lbl_server_addr.setText(QCoreApplication.translate("MainWindow", u"0.0.0.0:0", None)) + self.label_2.setText("") + self.lbl_client_addr.setText(QCoreApplication.translate("MainWindow", u"0.0.0.0:0", None)) + self.lbl_datagram.setText("") + self.label_1.setText("") + self.lbl_tx_count.setText(QCoreApplication.translate("MainWindow", u"0 bytes | 0 packets", None)) + self.label_3.setText("") + self.lbl_rx_count.setText(QCoreApplication.translate("MainWindow", u"0 bytes | 0 packets", None)) + self.lbl_version.setText(QCoreApplication.translate("MainWindow", u"v1.0", None)) + # retranslateUi + diff --git a/source/sim_uppermachine/resources.qrc b/source/sim_uppermachine/resources.qrc new file mode 100644 index 0000000..78f1696 --- /dev/null +++ b/source/sim_uppermachine/resources.qrc @@ -0,0 +1,39 @@ + + + images/images/PyDracula.png + images/images/PyDracula_vertical.png + + + images/icons/chevron-miniup.png + images/icons/chevron-down.png + images/icons/chevron-minidown.png + images/icons/chevron-statusbarup.png + images/icons/chevron-statusbardown.png + images/icons/save.png + images/icons/log-out.png + images/icons/image.png + images/icons/aperture.png + images/icons/sliders.png + images/icons/home.png + images/icons/close.png + images/icons/maximize.png + images/icons/menu.png + images/icons/minimize.png + images/icons/restore.png + images/icons/camera-and-down.png + images/icons/play.png + images/icons/30-height-sep.png + images/icons/chevron-right.png + images/icons/chevron-left.png + images/icons/plus.png + images/icons/arrow-right.png + images/icons/camera.png + images/icons/wind.png + images/icons/link-2.png + images/icons/link.png + images/icons/square.png + images/icons/shuffle.png + images/icons/rotate-ccw.png + + + diff --git a/source/sim_uppermachine/settings.json b/source/sim_uppermachine/settings.json new file mode 100644 index 0000000..83d9ac4 --- /dev/null +++ b/source/sim_uppermachine/settings.json @@ -0,0 +1 @@ +{"page_connection": {"server_port": 13452}, "page_divider": {"manual": {"cb_start_list": ["AA"], "cb_command_list": ["st", "sp", "te", "pa", "pb", "pc", "pd"], "cb_data_list": ["FF"], "cb_end_list": ["BB"], "data": [{"index": 0, "cb_start": "AA", "cb_command": "st", "cb_data": "FF", "cb_end": "BB"}, {"index": 1, "cb_start": "AA", "cb_command": "sp", "cb_data": "FF", "cb_end": "BB"}, {"index": 2, "cb_start": "AA", "cb_command": "te", "cb_data": "30 30 30 30 30 32 33 31", "cb_end": "BB"}, {"index": 3, "cb_start": "AA", "cb_command": "pa", "cb_data": "30 30 30 30 30 32 33 31", "cb_end": "BB"}, {"index": 4, "cb_start": "AA", "cb_command": "pb", "cb_data": "30 30 30 30 30 32 33 31", "cb_end": "BB"}, {"index": 5, "cb_start": "AA", "cb_command": "pc", "cb_data": "30 30 30 30 30 32 33 31", "cb_end": "BB"}]}, "preset": {"le_preset_num": 1, "data": [{"le_preset_name": "Default", "sb_camera_a": 100, "sb_camera_b": 100, "sb_camera_c": 100, "sb_camera_d": 100, "sb_valve": 100, "cb_from_camera": "A", "le_to_valve": 1000}, {"le_preset_name": "my", "sb_camera_a": 123, "sb_camera_b": 123, "sb_camera_c": 123, "sb_camera_d": 123, "sb_valve": 123, "cb_from_camera": "B", "le_to_valve": 123}]}}, "page": {}} \ No newline at end of file diff --git a/source/sim_uppermachine/themes/py_dracula_dark.qss b/source/sim_uppermachine/themes/py_dracula_dark.qss new file mode 100644 index 0000000..930d681 --- /dev/null +++ b/source/sim_uppermachine/themes/py_dracula_dark.qss @@ -0,0 +1,519 @@ +/* ///////////////////////////////////////////////////////////////////////////////////////////////// + +SET APP STYLESHEET - FULL STYLES HERE +DARK THEME - DRACULA COLOR BASED + +# BY: WANDERSON M.PIMENTA +# PROJECT MADE WITH: Qt Designer and PySide6 +# V: 1.0.0 +# +# This project can be used freely for all uses, as long as they maintain the +# respective credits only in the Python scripts, any information in the visual +# interface (GUI) can be modified without any implication. +# +# There are limitations on Qt licenses if you want to use your products +# commercially, I recommend reading them on the official website: +# https://doc.qt.io/qtforpython/licenses.html + +///////////////////////////////////////////////////////////////////////////////////////////////// */ + +QWidget{ + color: rgb(221, 221, 221); + font: 10pt "Segoe UI"; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Tooltip */ +QToolTip { + color: #ffffff; + background-color: rgba(33, 37, 43, 180); + border: 1px solid rgb(44, 49, 58); + background-image: none; + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 2px solid rgb(255, 121, 198); + text-align: left; + padding-left: 8px; + margin: 0px; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Bg App */ +#bgApp { + background-color: rgb(40, 44, 52); + border: 1px solid rgb(44, 49, 58); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Left Menu */ +#leftMenuBg { + background-color: rgb(33, 37, 43); +} +#topLogo { + background-color: rgb(33, 37, 43); + background-image: url(:/images/images/images/PyDracula.png); + background-position: centered; + background-repeat: no-repeat; +} +#titleLeftApp { font: 63 12pt "Segoe UI Semibold"; } +/* #titleLeftDescription { font: 8pt "Segoe UI"; color: rgb(189, 147, 249); } */ +#titleLeftDescription { font: 8pt "Segoe UI"; color: #ff79c6; } + +/* MENUS */ +#topMenu .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 22px solid transparent; + background-color: transparent; + text-align: left; + padding-left: 44px; +} +#topMenu .QPushButton:hover { + background-color: rgb(40, 44, 52); +} +#topMenu .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} +#bottomMenu .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 20px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 44px; +} +#bottomMenu .QPushButton:hover { + background-color: rgb(40, 44, 52); +} +#bottomMenu .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} +#leftMenuFrame{ + border-top: 3px solid rgb(44, 49, 58); +} + +/* Toggle Button */ +#toggleButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 20px solid transparent; + background-color: rgb(37, 41, 48); + text-align: left; + padding-left: 44px; + color: rgb(113, 126, 149); +} +#toggleButton:hover { + background-color: rgb(40, 44, 52); +} +#toggleButton:pressed { + background-color: rgb(189, 147, 249); +} + +/* Title Menu */ +#titleRightInfo { padding-left: 10px; } + + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Extra Tab */ +#extraLeftBox { + background-color: rgb(44, 49, 58); +} +#extraTopBg{ + background-color: rgb(189, 147, 249) +} + +/* Icon */ +#extraIcon { + background-position: center; + background-repeat: no-repeat; + background-image: url(:/icons/images/icons/icon_settings.png); +} + +/* Label */ +#extraLabel { color: rgb(255, 255, 255); } + +/* Btn Close */ +#extraCloseColumnBtn { background-color: rgba(255, 255, 255, 0); border: none; border-radius: 5px; } +#extraCloseColumnBtn:hover { background-color: rgb(196, 161, 249); border-style: solid; border-radius: 4px; } +#extraCloseColumnBtn:pressed { background-color: rgb(180, 141, 238); border-style: solid; border-radius: 4px; } + +/* Extra Content */ +#extraContent{ + border-top: 3px solid rgb(40, 44, 52); +} + +/* Extra Top Menus */ +#extraTopMenu .QPushButton { +background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 22px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 44px; +} +#extraTopMenu .QPushButton:hover { + background-color: rgb(40, 44, 52); +} +#extraTopMenu .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Content App */ +#contentTopBg{ + background-color: rgb(33, 37, 43); +} +#contentBottom{ + border-top: 3px solid rgb(44, 49, 58); +} + +/* Top Buttons */ +#rightButtons .QPushButton { background-color: rgba(255, 255, 255, 0); border: none; border-radius: 5px; } +#rightButtons .QPushButton:hover { background-color: rgb(44, 49, 57); border-style: solid; border-radius: 4px; } +#rightButtons .QPushButton:pressed { background-color: rgb(23, 26, 30); border-style: solid; border-radius: 4px; } + +/* Theme Settings */ +#extraRightBox { background-color: rgb(44, 49, 58); } +#themeSettingsTopDetail { background-color: rgb(189, 147, 249); } + +/* Bottom Bar */ +#bottomBar { background-color: rgb(44, 49, 58); } +#bottomBar QLabel { font-size: 11px; color: rgb(113, 126, 149); padding-left: 10px; padding-right: 10px; padding-bottom: 2px; } + +/* CONTENT SETTINGS */ +/* MENUS */ +#contentSettings .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 22px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 44px; +} +#contentSettings .QPushButton:hover { + background-color: rgb(40, 44, 52); +} +#contentSettings .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +QTableWidget */ +QTableWidget { + background-color: transparent; + padding: 10px; + border-radius: 5px; + gridline-color: rgb(44, 49, 58); + border-bottom: 1px solid rgb(44, 49, 60); +} +QTableWidget::item{ + border-color: rgb(44, 49, 60); + padding-left: 5px; + padding-right: 5px; + gridline-color: rgb(44, 49, 60); +} +QTableWidget::item:selected{ + background-color: rgb(189, 147, 249); +} +QHeaderView::section{ + background-color: rgb(33, 37, 43); + max-width: 30px; + border: 1px solid rgb(44, 49, 58); + border-style: none; + border-bottom: 1px solid rgb(44, 49, 60); + border-right: 1px solid rgb(44, 49, 60); +} +QTableWidget::horizontalHeader { + background-color: rgb(33, 37, 43); +} +QHeaderView::section:horizontal +{ + border: 1px solid rgb(33, 37, 43); + background-color: rgb(33, 37, 43); + padding: 3px; + border-top-left-radius: 7px; + border-top-right-radius: 7px; +} +QHeaderView::section:vertical +{ + border: 1px solid rgb(44, 49, 60); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +LineEdit */ +QLineEdit { + background-color: rgb(33, 37, 43); + border-radius: 5px; + border: 2px solid rgb(33, 37, 43); + padding-left: 10px; + selection-color: rgb(255, 255, 255); + selection-background-color: rgb(255, 121, 198); +} +QLineEdit:hover { + border: 2px solid rgb(64, 71, 88); +} +QLineEdit:focus { + border: 2px solid rgb(91, 101, 124); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +PlainTextEdit */ +QPlainTextEdit { + background-color: rgb(27, 29, 35); + border-radius: 5px; + padding: 10px; + selection-color: rgb(255, 255, 255); + selection-background-color: rgb(255, 121, 198); +} +QPlainTextEdit QScrollBar:vertical { + width: 8px; + } +QPlainTextEdit QScrollBar:horizontal { + height: 8px; + } +QPlainTextEdit:hover { + border: 2px solid rgb(64, 71, 88); +} +QPlainTextEdit:focus { + border: 2px solid rgb(91, 101, 124); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +ScrollBars */ +QScrollBar:horizontal { + border: none; + background: rgb(52, 59, 72); + height: 8px; + margin: 0px 21px 0 21px; + border-radius: 0px; +} +QScrollBar::handle:horizontal { + background: rgb(189, 147, 249); + min-width: 25px; + border-radius: 4px +} +QScrollBar::add-line:horizontal { + border: none; + background: rgb(55, 63, 77); + width: 20px; + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; + subcontrol-position: right; + subcontrol-origin: margin; +} +QScrollBar::sub-line:horizontal { + border: none; + background: rgb(55, 63, 77); + width: 20px; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; + subcontrol-position: left; + subcontrol-origin: margin; +} +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal +{ + background: none; +} +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal +{ + background: none; +} + QScrollBar:vertical { + border: none; + background: rgb(52, 59, 72); + width: 8px; + margin: 21px 0 21px 0; + border-radius: 0px; + } + QScrollBar::handle:vertical { + background: rgb(189, 147, 249); + min-height: 25px; + border-radius: 4px + } + QScrollBar::add-line:vertical { + border: none; + background: rgb(55, 63, 77); + height: 20px; + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + QScrollBar::sub-line:vertical { + border: none; + background: rgb(55, 63, 77); + height: 20px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + subcontrol-position: top; + subcontrol-origin: margin; + } + QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; + } + + QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; + } + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +CheckBox */ +QCheckBox::indicator { + border: 3px solid rgb(52, 59, 72); + width: 15px; + height: 15px; + border-radius: 10px; + background: rgb(44, 49, 60); +} +QCheckBox::indicator:hover { + border: 3px solid rgb(58, 66, 81); +} +QCheckBox::indicator:checked { + background: 3px solid rgb(52, 59, 72); + border: 3px solid rgb(52, 59, 72); + background-image: url(:/icons/images/icons/cil-check-alt.png); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +RadioButton */ +QRadioButton::indicator { + border: 3px solid rgb(52, 59, 72); + width: 15px; + height: 15px; + border-radius: 10px; + background: rgb(44, 49, 60); +} +QRadioButton::indicator:hover { + border: 3px solid rgb(58, 66, 81); +} +QRadioButton::indicator:checked { + background: 3px solid rgb(94, 106, 130); + border: 3px solid rgb(52, 59, 72); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +ComboBox */ +QComboBox{ + background-color: rgb(27, 29, 35); + border-radius: 5px; + border: 2px solid rgb(33, 37, 43); + padding: 5px; + padding-left: 10px; +} +QComboBox:hover{ + border: 2px solid rgb(64, 71, 88); +} +QComboBox::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 25px; + border-left-width: 3px; + border-left-color: rgba(39, 44, 54, 150); + border-left-style: solid; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + background-image: url(:/icons/images/icons/cil-arrow-bottom.png); + background-position: center; + background-repeat: no-reperat; + } +QComboBox QAbstractItemView { + color: rgb(255, 121, 198); + background-color: rgb(33, 37, 43); + padding: 10px; + selection-background-color: rgb(39, 44, 54); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Sliders */ +QSlider::groove:horizontal { + border-radius: 5px; + height: 10px; + margin: 0px; + background-color: rgb(52, 59, 72); +} +QSlider::groove:horizontal:hover { + background-color: rgb(55, 62, 76); +} +QSlider::handle:horizontal { + background-color: rgb(189, 147, 249); + border: none; + height: 10px; + width: 10px; + margin: 0px; + border-radius: 5px; +} +QSlider::handle:horizontal:hover { + background-color: rgb(195, 155, 255); +} +QSlider::handle:horizontal:pressed { + background-color: rgb(255, 121, 198); +} + +QSlider::groove:vertical { + border-radius: 5px; + width: 10px; + margin: 0px; + background-color: rgb(52, 59, 72); +} +QSlider::groove:vertical:hover { + background-color: rgb(55, 62, 76); +} +QSlider::handle:vertical { + background-color: rgb(189, 147, 249); + border: none; + height: 10px; + width: 10px; + margin: 0px; + border-radius: 5px; +} +QSlider::handle:vertical:hover { + background-color: rgb(195, 155, 255); +} +QSlider::handle:vertical:pressed { + background-color: rgb(255, 121, 198); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +CommandLinkButton */ +QCommandLinkButton { + color: rgb(255, 121, 198); + border-radius: 5px; + padding: 5px; +} +QCommandLinkButton:hover { + color: rgb(255, 170, 255); + background-color: rgb(44, 49, 60); +} +QCommandLinkButton:pressed { + color: rgb(189, 147, 249); + background-color: rgb(52, 58, 71); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Button */ +#pagesContainer QPushButton { + border: 2px solid rgb(52, 59, 72); + border-radius: 5px; + background-color: rgb(52, 59, 72); +} +#pagesContainer QPushButton:hover { + background-color: rgb(57, 65, 80); + border: 2px solid rgb(61, 70, 86); +} +#pagesContainer QPushButton:pressed { + background-color: rgb(35, 40, 49); + border: 2px solid rgb(43, 50, 61); +} + + + diff --git a/source/sim_uppermachine/themes/py_dracula_light.qss b/source/sim_uppermachine/themes/py_dracula_light.qss new file mode 100644 index 0000000..b96bc8b --- /dev/null +++ b/source/sim_uppermachine/themes/py_dracula_light.qss @@ -0,0 +1,532 @@ +/* ///////////////////////////////////////////////////////////////////////////////////////////////// + +SET APP STYLESHEET - FULL STYLES HERE +DARK THEME - DRACULA COLOR BASED + +# BY: WANDERSON M.PIMENTA +# PROJECT MADE WITH: Qt Designer and PySide6 +# V: 1.0.0 +# +# This project can be used freely for all uses, as long as they maintain the +# respective credits only in the Python scripts, any information in the visual +# interface (GUI) can be modified without any implication. +# +# There are limitations on Qt licenses if you want to use your products +# commercially, I recommend reading them on the official website: +# https://doc.qt.io/qtforpython/licenses.html + +///////////////////////////////////////////////////////////////////////////////////////////////// */ + +QWidget{ + color: #333; + font: 10pt "Segoe UI"; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Tooltip */ +QToolTip { + color: #333; + background-color: #f8f8f2; + border: 1px solid #CCC; + background-image: none; + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 2px solid rgb(255, 121, 198); + text-align: left; + padding-left: 8px; + margin: 0px; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Bg App */ +#bgApp { + background-color: #f8f8f2; + border: 1px solid #CCC; + color: #44475a; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Left Menu */ +#leftMenuBg { + background-color: #6272a4; +} +#topLogo { + background-color: #6272a4; + background-image: url(:/images/images/images/PyDracula.png); + background-position: centered; + background-repeat: no-repeat; +} +#titleLeftApp { font: 63 12pt "Segoe UI Semibold"; color: #f8f8f2; } +#titleLeftDescription { font: 8pt "Segoe UI"; color: #bd93f9; } + +/* MENUS */ +#topMenu .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 22px solid transparent; + background-color: transparent; + text-align: left; + padding-left: 44px; + color: #f8f8f2; +} +#topMenu .QPushButton:hover { + background-color: #bd93f9; +} +#topMenu .QPushButton:pressed { + background-color: #ff79c6; + color: rgb(255, 255, 255); +} +#bottomMenu .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 20px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 44px; + color: #f8f8f2; +} +#bottomMenu .QPushButton:hover { + background-color: #bd93f9; +} +#bottomMenu .QPushButton:pressed { + background-color: #ff79c6; + color: rgb(255, 255, 255); +} +#leftMenuFrame{ + border-top: 3px solid #6a7cb1; +} + +/* Toggle Button */ +#toggleButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 20px solid transparent; + background-color: #5b6996; + text-align: left; + padding-left: 44px; + color: #f8f8f2; +} +#toggleButton:hover { + background-color: #bd93f9; +} +#toggleButton:pressed { + background-color: #ff79c6; + color: rgb(255, 255, 255); +} + +/* Title Menu */ +#titleRightInfo { padding-left: 10px; } + + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Extra Tab */ +#extraLeftBox { + background-color: #495474; + color: #f8f8f2; +} +#extraTopBg{ + background-color: rgb(189, 147, 249) +} + +/* Icon */ +#extraIcon { + background-position: center; + background-repeat: no-repeat; + background-image: url(:/icons/images/icons/icon_settings.png); +} + +/* Label */ +#extraLabel { color: rgb(255, 255, 255); } + +/* Btn Close */ +#extraCloseColumnBtn { background-color: rgba(255, 255, 255, 0); border: none; border-radius: 5px; } +#extraCloseColumnBtn:hover { background-color: rgb(196, 161, 249); border-style: solid; border-radius: 4px; } +#extraCloseColumnBtn:pressed { background-color: rgb(180, 141, 238); border-style: solid; border-radius: 4px; } + +/* Extra Content */ +#extraContent{ + border-top: 3px solid #6272a4; +} + +/* Extra Top Menus */ +#extraTopMenu .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 22px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 44px; + color: #f8f8f2; +} +#extraTopMenu .QPushButton:hover { + background-color: #5d6c99; +} +#extraTopMenu .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Content App */ +#contentTopBg{ + background-color: #6272a4; +} +#contentBottom{ + border-top: 3px solid #bd93f9; +} +#titleRightInfo{ + color: #f8f8f2; +} + +/* Top Buttons */ +#rightButtons .QPushButton { background-color: rgba(255, 255, 255, 0); border: none; border-radius: 5px; } +#rightButtons .QPushButton:hover { background-color: #bd93f9; border-style: solid; border-radius: 4px; } +#rightButtons .QPushButton:pressed { background-color: #ff79c6; border-style: solid; border-radius: 4px; } + +/* Theme Settings */ +#extraRightBox { background-color: #495474; } +#themeSettingsTopDetail { background-color: #6272a4; } + +/* Bottom Bar */ +#bottomBar { background-color: #495474 } +#bottomBar QLabel { font-size: 11px; color: #f8f8f2; padding-left: 10px; padding-right: 10px; padding-bottom: 2px; } + +/* CONTENT SETTINGS */ +/* MENUS */ +#contentSettings .QPushButton { + background-position: left center; + background-repeat: no-repeat; + border: none; + border-left: 22px solid transparent; + background-color:transparent; + text-align: left; + padding-left: 44px; + color: #f8f8f2; +} +#contentSettings .QPushButton:hover { + background-color: #5d6c99; +} +#contentSettings .QPushButton:pressed { + background-color: rgb(189, 147, 249); + color: rgb(255, 255, 255); +} +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +QTableWidget */ +QTableWidget { + background-color: transparent; + padding: 10px; + border-radius: 5px; + gridline-color: #9faeda; + outline: none; +} +QTableWidget::item{ + border-color: #9faeda; + padding-left: 5px; + padding-right: 5px; + gridline-color: #9faeda; +} +QTableWidget::item:selected{ + background-color: rgb(189, 147, 249); + color: #f8f8f2; +} +QHeaderView::section{ + background-color: #6272a4; + max-width: 30px; + border: none; + border-style: none; +} +QTableWidget::horizontalHeader { + background-color: #6272a4; +} +QHeaderView::section:horizontal +{ + border: 1px solid #6272a4; + background-color: #6272a4; + padding: 3px; + border-top-left-radius: 7px; + border-top-right-radius: 7px; + color: #f8f8f2; +} +QHeaderView::section:vertical +{ + border: 1px solid #6272a4; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +LineEdit */ +QLineEdit { + background-color: #6272a4; + border-radius: 5px; + border: 2px solid #6272a4; + padding-left: 10px; + selection-color: rgb(255, 255, 255); + selection-background-color: rgb(255, 121, 198); + color: #f8f8f2; +} +QLineEdit:hover { + border: 2px solid rgb(64, 71, 88); +} +QLineEdit:focus { + border: 2px solid #ff79c6; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +PlainTextEdit */ +QPlainTextEdit { + background-color: #6272a4; + border-radius: 5px; + padding: 10px; + selection-color: rgb(255, 255, 255); + selection-background-color: rgb(255, 121, 198); + color: #f8f8f2; +} +QPlainTextEdit QScrollBar:vertical { + width: 8px; + } +QPlainTextEdit QScrollBar:horizontal { + height: 8px; + } +QPlainTextEdit:hover { + border: 2px solid rgb(64, 71, 88); +} +QPlainTextEdit:focus { + border: 2px solid #ff79c6; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +ScrollBars */ +QScrollBar:horizontal { + border: none; + background: #6272a4; + height: 8px; + margin: 0px 21px 0 21px; + border-radius: 0px; +} +QScrollBar::handle:horizontal { + background: rgb(189, 147, 249); + min-width: 25px; + border-radius: 4px +} +QScrollBar::add-line:horizontal { + border: none; + background: #6272a4; + width: 20px; + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; + subcontrol-position: right; + subcontrol-origin: margin; +} +QScrollBar::sub-line:horizontal { + border: none; + background: #6272a4; + width: 20px; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; + subcontrol-position: left; + subcontrol-origin: margin; +} +QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal +{ + background: none; +} +QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal +{ + background: none; +} + QScrollBar:vertical { + border: none; + background-color: #6272a4; + width: 8px; + margin: 21px 0 21px 0; + border-radius: 0px; + } + QScrollBar::handle:vertical { + background: rgb(189, 147, 249); + min-height: 25px; + border-radius: 4px + } + QScrollBar::add-line:vertical { + border: none; + background: #6272a4; + height: 20px; + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + subcontrol-position: bottom; + subcontrol-origin: margin; + } + QScrollBar::sub-line:vertical { + border: none; + background: #6272a4; + height: 20px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + subcontrol-position: top; + subcontrol-origin: margin; + } + QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical { + background: none; + } + + QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical { + background: none; + } + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +CheckBox */ +QCheckBox::indicator { + border: 3px solid #6272a4; + width: 15px; + height: 15px; + border-radius: 10px; + background: #6272a4; +} +QCheckBox::indicator:hover { + border: 3px solid rgb(119, 136, 187); +} +QCheckBox::indicator:checked { + background: 3px solid #bd93f9; + border: 3px solid #bd93f9; + background-image: url(:/icons/images/icons/cil-check-alt.png); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +RadioButton */ +QRadioButton::indicator { + border: 3px solid #6272a4; + width: 15px; + height: 15px; + border-radius: 10px; + background: #6272a4; +} +QRadioButton::indicator:hover { + border: 3px solid rgb(119, 136, 187); +} +QRadioButton::indicator:checked { + background: 3px solid #bd93f9; + border: 3px solid #bd93f9; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +ComboBox */ +QComboBox{ + background-color: #6272a4; + border-radius: 5px; + border: 2px solid #6272a4; + padding: 5px; + padding-left: 10px; + color: #f8f8f2; +} +QComboBox:hover{ + border: 2px solid #7284b9; +} +QComboBox::drop-down { + subcontrol-origin: padding; + subcontrol-position: top right; + width: 25px; + border-left-width: 3px; + border-left-color: #6272a4; + border-left-style: solid; + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; + background-image: url(:/icons/images/icons/cil-arrow-bottom.png); + background-position: center; + background-repeat: no-reperat; + } +QComboBox QAbstractItemView { + color: rgb(255, 121, 198); + background-color: #6272a4; + padding: 10px; + selection-background-color: #6272a4; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Sliders */ +QSlider::groove:horizontal { + border-radius: 5px; + height: 10px; + margin: 0px; + background-color: #6272a4; +} +QSlider::groove:horizontal:hover { + background-color: #6272a4; +} +QSlider::handle:horizontal { + background-color: rgb(189, 147, 249); + border: none; + height: 10px; + width: 10px; + margin: 0px; + border-radius: 5px; +} +QSlider::handle:horizontal:hover { + background-color: rgb(195, 155, 255); +} +QSlider::handle:horizontal:pressed { + background-color: rgb(255, 121, 198); +} + +QSlider::groove:vertical { + border-radius: 5px; + width: 10px; + margin: 0px; + background-color: #6272a4; +} +QSlider::groove:vertical:hover { + background-color: #6272a4; +} +QSlider::handle:vertical { + background-color: rgb(189, 147, 249); + border: none; + height: 10px; + width: 10px; + margin: 0px; + border-radius: 5px; +} +QSlider::handle:vertical:hover { + background-color: rgb(195, 155, 255); +} +QSlider::handle:vertical:pressed { + background-color: rgb(255, 121, 198); +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +CommandLinkButton */ +#pagesContainer QCommandLinkButton { + color: rgb(255, 121, 198); + border-radius: 5px; + padding: 5px; + border: 2px solid #ff79c6; + color: #ff79c6; +} +#pagesContainer QCommandLinkButton:hover { + color: rgb(255, 170, 255); + background-color: #6272a4; +} +#pagesContainer QCommandLinkButton:pressed { + color: rgb(189, 147, 249); + background-color: #586796; +} + +/* ///////////////////////////////////////////////////////////////////////////////////////////////// +Button */ +#pagesContainer QPushButton { + border: 2px solid #6272a4; + border-radius: 5px; + background-color: #6272a4; + color: #f8f8f2; +} +#pagesContainer QPushButton:hover { + background-color: #7082b6; + border: 2px solid #7082b6; +} +#pagesContainer QPushButton:pressed { + background-color: #546391; + border: 2px solid #ff79c6; +} + + diff --git a/source/sim_uppermachine/version b/source/sim_uppermachine/version new file mode 100644 index 0000000..9f8e9b6 --- /dev/null +++ b/source/sim_uppermachine/version @@ -0,0 +1 @@ +1.0 \ No newline at end of file diff --git a/source/sim_uppermachine/widgets/__init__.py b/source/sim_uppermachine/widgets/__init__.py new file mode 100644 index 0000000..edc45ae --- /dev/null +++ b/source/sim_uppermachine/widgets/__init__.py @@ -0,0 +1,17 @@ +# /////////////////////////////////////////////////////////////// +# +# BY: WANDERSON M.PIMENTA +# PROJECT MADE WITH: Qt Designer and PySide6 +# V: 1.0.0 +# +# This project can be used freely for all uses, as long as they maintain the +# respective credits only in the Python scripts, any information in the visual +# interface (GUI) can be modified without any implication. +# +# There are limitations on Qt licenses if you want to use your products +# commercially, I recommend reading them on the official website: +# https://doc.qt.io/qtforpython/licenses.html +# +# /////////////////////////////////////////////////////////////// + +from . custom_grips import CustomGrip diff --git a/source/sim_uppermachine/widgets/custom_grips/__init__.py b/source/sim_uppermachine/widgets/custom_grips/__init__.py new file mode 100644 index 0000000..edc45ae --- /dev/null +++ b/source/sim_uppermachine/widgets/custom_grips/__init__.py @@ -0,0 +1,17 @@ +# /////////////////////////////////////////////////////////////// +# +# BY: WANDERSON M.PIMENTA +# PROJECT MADE WITH: Qt Designer and PySide6 +# V: 1.0.0 +# +# This project can be used freely for all uses, as long as they maintain the +# respective credits only in the Python scripts, any information in the visual +# interface (GUI) can be modified without any implication. +# +# There are limitations on Qt licenses if you want to use your products +# commercially, I recommend reading them on the official website: +# https://doc.qt.io/qtforpython/licenses.html +# +# /////////////////////////////////////////////////////////////// + +from . custom_grips import CustomGrip diff --git a/source/sim_uppermachine/widgets/custom_grips/custom_grips.py b/source/sim_uppermachine/widgets/custom_grips/custom_grips.py new file mode 100644 index 0000000..effab07 --- /dev/null +++ b/source/sim_uppermachine/widgets/custom_grips/custom_grips.py @@ -0,0 +1,243 @@ +# /////////////////////////////////////////////////////////////// +# +# BY: WANDERSON M.PIMENTA +# PROJECT MADE WITH: Qt Designer and PySide6 +# V: 1.0.0 +# +# This project can be used freely for all uses, as long as they maintain the +# respective credits only in the Python scripts, any information in the visual +# interface (GUI) can be modified without any implication. +# +# There are limitations on Qt licenses if you want to use your products +# commercially, I recommend reading them on the official website: +# https://doc.qt.io/qtforpython/licenses.html +# +# /////////////////////////////////////////////////////////////// + +from PySide6.QtCore import * +from PySide6.QtGui import * +from PySide6.QtWidgets import * + + +class CustomGrip(QWidget): + def __init__(self, parent, position, disable_color=False): + + # SETUP UI + QWidget.__init__(self) + self.parent = parent + self.setParent(parent) + self.wi = Widgets() + + # SHOW TOP GRIP + if position == Qt.TopEdge: + self.wi.top(self) + self.setGeometry(0, 0, self.parent.width(), 10) + self.setMaximumHeight(10) + + # GRIPS + top_left = QSizeGrip(self.wi.top_left) + top_right = QSizeGrip(self.wi.top_right) + + # RESIZE TOP + def resize_top(event): + delta = event.pos() + height = max(self.parent.minimumHeight(), self.parent.height() - delta.y()) + geo = self.parent.geometry() + geo.setTop(geo.bottom() - height) + self.parent.setGeometry(geo) + event.accept() + + self.wi.top.mouseMoveEvent = resize_top + + # ENABLE COLOR + if disable_color: + self.wi.top_left.setStyleSheet("background: transparent") + self.wi.top_right.setStyleSheet("background: transparent") + self.wi.top.setStyleSheet("background: transparent") + + # SHOW BOTTOM GRIP + elif position == Qt.BottomEdge: + self.wi.bottom(self) + self.setGeometry(0, self.parent.height() - 10, self.parent.width(), 10) + self.setMaximumHeight(10) + + # GRIPS + self.bottom_left = QSizeGrip(self.wi.bottom_left) + self.bottom_right = QSizeGrip(self.wi.bottom_right) + + # RESIZE BOTTOM + def resize_bottom(event): + delta = event.pos() + height = max(self.parent.minimumHeight(), self.parent.height() + delta.y()) + self.parent.resize(self.parent.width(), height) + event.accept() + + self.wi.bottom.mouseMoveEvent = resize_bottom + + # ENABLE COLOR + if disable_color: + self.wi.bottom_left.setStyleSheet("background: transparent") + self.wi.bottom_right.setStyleSheet("background: transparent") + self.wi.bottom.setStyleSheet("background: transparent") + + # SHOW LEFT GRIP + elif position == Qt.LeftEdge: + self.wi.left(self) + self.setGeometry(0, 10, 10, self.parent.height()) + self.setMaximumWidth(10) + + # RESIZE LEFT + def resize_left(event): + delta = event.pos() + width = max(self.parent.minimumWidth(), self.parent.width() - delta.x()) + geo = self.parent.geometry() + geo.setLeft(geo.right() - width) + self.parent.setGeometry(geo) + event.accept() + + self.wi.leftgrip.mouseMoveEvent = resize_left + + # ENABLE COLOR + if disable_color: + self.wi.leftgrip.setStyleSheet("background: transparent") + + # RESIZE RIGHT + elif position == Qt.RightEdge: + self.wi.right(self) + self.setGeometry(self.parent.width() - 10, 10, 10, self.parent.height()) + self.setMaximumWidth(10) + + def resize_right(event): + delta = event.pos() + width = max(self.parent.minimumWidth(), self.parent.width() + delta.x()) + self.parent.resize(width, self.parent.height()) + event.accept() + + self.wi.rightgrip.mouseMoveEvent = resize_right + + # ENABLE COLOR + if disable_color: + self.wi.rightgrip.setStyleSheet("background: transparent") + + def mouseReleaseEvent(self, event): + self.mousePos = None + + def resizeEvent(self, event): + if hasattr(self.wi, 'container_top'): + self.wi.container_top.setGeometry(0, 0, self.width(), 10) + + elif hasattr(self.wi, 'container_bottom'): + self.wi.container_bottom.setGeometry(0, 0, self.width(), 10) + + elif hasattr(self.wi, 'leftgrip'): + self.wi.leftgrip.setGeometry(0, 0, 10, self.height() - 20) + + elif hasattr(self.wi, 'rightgrip'): + self.wi.rightgrip.setGeometry(0, 0, 10, self.height() - 20) + + +class Widgets(object): + def top(self, Form): + if not Form.objectName(): + Form.setObjectName(u"Form") + self.container_top = QFrame(Form) + self.container_top.setObjectName(u"container_top") + self.container_top.setGeometry(QRect(0, 0, 500, 10)) + self.container_top.setMinimumSize(QSize(0, 10)) + self.container_top.setMaximumSize(QSize(16777215, 10)) + self.container_top.setFrameShape(QFrame.NoFrame) + self.container_top.setFrameShadow(QFrame.Raised) + self.top_layout = QHBoxLayout(self.container_top) + self.top_layout.setSpacing(0) + self.top_layout.setObjectName(u"top_layout") + self.top_layout.setContentsMargins(0, 0, 0, 0) + self.top_left = QFrame(self.container_top) + self.top_left.setObjectName(u"top_left") + self.top_left.setMinimumSize(QSize(10, 10)) + self.top_left.setMaximumSize(QSize(10, 10)) + self.top_left.setCursor(QCursor(Qt.SizeFDiagCursor)) + self.top_left.setStyleSheet(u"background-color: rgb(33, 37, 43);") + self.top_left.setFrameShape(QFrame.NoFrame) + self.top_left.setFrameShadow(QFrame.Raised) + self.top_layout.addWidget(self.top_left) + self.top = QFrame(self.container_top) + self.top.setObjectName(u"top") + self.top.setCursor(QCursor(Qt.SizeVerCursor)) + self.top.setStyleSheet(u"background-color: rgb(85, 255, 255);") + self.top.setFrameShape(QFrame.NoFrame) + self.top.setFrameShadow(QFrame.Raised) + self.top_layout.addWidget(self.top) + self.top_right = QFrame(self.container_top) + self.top_right.setObjectName(u"top_right") + self.top_right.setMinimumSize(QSize(10, 10)) + self.top_right.setMaximumSize(QSize(10, 10)) + self.top_right.setCursor(QCursor(Qt.SizeBDiagCursor)) + self.top_right.setStyleSheet(u"background-color: rgb(33, 37, 43);") + self.top_right.setFrameShape(QFrame.NoFrame) + self.top_right.setFrameShadow(QFrame.Raised) + self.top_layout.addWidget(self.top_right) + + def bottom(self, Form): + if not Form.objectName(): + Form.setObjectName(u"Form") + self.container_bottom = QFrame(Form) + self.container_bottom.setObjectName(u"container_bottom") + self.container_bottom.setGeometry(QRect(0, 0, 500, 10)) + self.container_bottom.setMinimumSize(QSize(0, 10)) + self.container_bottom.setMaximumSize(QSize(16777215, 10)) + self.container_bottom.setFrameShape(QFrame.NoFrame) + self.container_bottom.setFrameShadow(QFrame.Raised) + self.bottom_layout = QHBoxLayout(self.container_bottom) + self.bottom_layout.setSpacing(0) + self.bottom_layout.setObjectName(u"bottom_layout") + self.bottom_layout.setContentsMargins(0, 0, 0, 0) + self.bottom_left = QFrame(self.container_bottom) + self.bottom_left.setObjectName(u"bottom_left") + self.bottom_left.setMinimumSize(QSize(10, 10)) + self.bottom_left.setMaximumSize(QSize(10, 10)) + self.bottom_left.setCursor(QCursor(Qt.SizeBDiagCursor)) + self.bottom_left.setStyleSheet(u"background-color: rgb(33, 37, 43);") + self.bottom_left.setFrameShape(QFrame.NoFrame) + self.bottom_left.setFrameShadow(QFrame.Raised) + self.bottom_layout.addWidget(self.bottom_left) + self.bottom = QFrame(self.container_bottom) + self.bottom.setObjectName(u"bottom") + self.bottom.setCursor(QCursor(Qt.SizeVerCursor)) + self.bottom.setStyleSheet(u"background-color: rgb(85, 170, 0);") + self.bottom.setFrameShape(QFrame.NoFrame) + self.bottom.setFrameShadow(QFrame.Raised) + self.bottom_layout.addWidget(self.bottom) + self.bottom_right = QFrame(self.container_bottom) + self.bottom_right.setObjectName(u"bottom_right") + self.bottom_right.setMinimumSize(QSize(10, 10)) + self.bottom_right.setMaximumSize(QSize(10, 10)) + self.bottom_right.setCursor(QCursor(Qt.SizeFDiagCursor)) + self.bottom_right.setStyleSheet(u"background-color: rgb(33, 37, 43);") + self.bottom_right.setFrameShape(QFrame.NoFrame) + self.bottom_right.setFrameShadow(QFrame.Raised) + self.bottom_layout.addWidget(self.bottom_right) + + def left(self, Form): + if not Form.objectName(): + Form.setObjectName(u"Form") + self.leftgrip = QFrame(Form) + self.leftgrip.setObjectName(u"left") + self.leftgrip.setGeometry(QRect(0, 10, 10, 480)) + self.leftgrip.setMinimumSize(QSize(10, 0)) + self.leftgrip.setCursor(QCursor(Qt.SizeHorCursor)) + self.leftgrip.setStyleSheet(u"background-color: rgb(255, 121, 198);") + self.leftgrip.setFrameShape(QFrame.NoFrame) + self.leftgrip.setFrameShadow(QFrame.Raised) + + def right(self, Form): + if not Form.objectName(): + Form.setObjectName(u"Form") + Form.resize(500, 500) + self.rightgrip = QFrame(Form) + self.rightgrip.setObjectName(u"right") + self.rightgrip.setGeometry(QRect(0, 0, 10, 500)) + self.rightgrip.setMinimumSize(QSize(10, 0)) + self.rightgrip.setCursor(QCursor(Qt.SizeHorCursor)) + self.rightgrip.setStyleSheet(u"background-color: rgb(255, 0, 127);") + self.rightgrip.setFrameShape(QFrame.NoFrame) + self.rightgrip.setFrameShadow(QFrame.Raised)