From b499b7a8de0ed3cf0a5ad727c303d5a77a99d337 Mon Sep 17 00:00:00 2001 From: Guilherme Costa Date: Fri, 9 Jan 2026 17:50:03 +0000 Subject: [PATCH 1/3] babystepPage: make buttons update instantly and respond to all Z-offset changes --- BlocksScreen/lib/panels/printTab.py | 86 +- .../lib/panels/widgets/babystepPage.py | 44 +- .../lib/panels/widgets/jobStatusPage.py | 6 + .../lib/ui/resources/icon_resources.qrc | 4 + .../lib/ui/resources/icon_resources_rc.py | 871 ++++++++++-------- .../media/btn_icons/move_nozzle_away.svg | 15 + .../media/btn_icons/move_nozzle_close.svg | 12 + 7 files changed, 619 insertions(+), 419 deletions(-) create mode 100644 BlocksScreen/lib/ui/resources/media/btn_icons/move_nozzle_away.svg create mode 100644 BlocksScreen/lib/ui/resources/media/btn_icons/move_nozzle_close.svg diff --git a/BlocksScreen/lib/panels/printTab.py b/BlocksScreen/lib/panels/printTab.py index 104a765a..c15d32af 100644 --- a/BlocksScreen/lib/panels/printTab.py +++ b/BlocksScreen/lib/panels/printTab.py @@ -1,24 +1,28 @@ +import logging import os import typing from functools import partial -from lib.panels.widgets.babystepPage import BabystepPage -from lib.panels.widgets.tunePage import TuneWidget +from configfile import BlocksScreenConfig, get_configparser from lib.files import Files from lib.moonrakerComm import MoonWebSocket +from lib.panels.widgets.babystepPage import BabystepPage +from lib.panels.widgets.basePopup import BasePopup from lib.panels.widgets.confirmPage import ConfirmWidget from lib.panels.widgets.filesPage import FilesPage from lib.panels.widgets.jobStatusPage import JobStatusWidget +from lib.panels.widgets.loadWidget import LoadingOverlayWidget +from lib.panels.widgets.numpadPage import CustomNumpad from lib.panels.widgets.sensorsPanel import SensorsWindow -from lib.printer import Printer from lib.panels.widgets.slider_selector_page import SliderPage +from lib.panels.widgets.tunePage import TuneWidget +from lib.printer import Printer from lib.utils.blocks_button import BlocksCustomButton -from lib.panels.widgets.numpadPage import CustomNumpad -from lib.panels.widgets.loadWidget import LoadingOverlayWidget -from lib.panels.widgets.basePopup import BasePopup -from configfile import BlocksScreenConfig, get_configparser +from lib.utils.display_button import DisplayButton from PyQt6 import QtCore, QtGui, QtWidgets +logger = logging.getLogger(name="logs/BlocksScreen.log") + class PrintTab(QtWidgets.QStackedWidget): """QStackedWidget that contains the following widget panels: @@ -61,6 +65,7 @@ class PrintTab(QtWidgets.QStackedWidget): ) _z_offset: float = 0.0 + _finish_print_handled: bool = False def __init__( self, @@ -97,6 +102,7 @@ def __init__( self.addWidget(self.filesPage_widget) self.BasePopup = BasePopup(self) + self.BasePopup_z_offset = BasePopup(self, floating=True) self.confirmPage_widget = ConfirmWidget(self) self.addWidget(self.confirmPage_widget) @@ -137,7 +143,6 @@ def __init__( lambda: self.change_page(self.indexOf(self.jobStatusPage_widget)) ) self.jobStatusPage_widget.hide_request.connect( - # lambda: self.change_page(self.indexOf(self.panel.print_page)) lambda: self.change_page(self.indexOf(self.print_page)) ) self.jobStatusPage_widget.request_file_info.connect( @@ -148,6 +153,7 @@ def __init__( self.jobStatusPage_widget.print_resume.connect(self.ws.api.resume_print) self.jobStatusPage_widget.print_cancel.connect(self.handle_cancel_print) self.jobStatusPage_widget.print_pause.connect(self.ws.api.pause_print) + self.jobStatusPage_widget.print_finish.connect(self.finish_print_signal) self.jobStatusPage_widget.request_query_print_stats.connect( self.ws.api.object_query ) @@ -176,6 +182,7 @@ def __init__( self.printer.gcode_move_update[str, list].connect( self.jobStatusPage_widget.on_gcode_move_update ) + self.printer.request_available_objects_signal.connect(self.klipper_ready_signal) self.babystepPage = BabystepPage(self) self.babystepPage.request_back.connect(self.back_button) self.addWidget(self.babystepPage) @@ -203,6 +210,7 @@ def __init__( self.printer.gcode_move_update[str, list].connect( self.babystepPage.on_gcode_move_update ) + self.printer.gcode_move_update[str, list].connect(self.activate_save_button) self.tune_page.run_gcode.connect(self.ws.api.run_gcode) self.tune_page.request_sliderPage[str, int, "PyQt_PyObject"].connect( self.on_slidePage_request @@ -245,6 +253,8 @@ def __init__( self.run_gcode_signal.connect(self.ws.api.run_gcode) self.confirmPage_widget.on_delete.connect(self.delete_file) self.change_page(self.indexOf(self.print_page)) # force set the initial page + self.save_config_btn.clicked.connect(self.save_config) + self.BasePopup_z_offset.accepted.connect(self.update_configuration_file) @QtCore.pyqtSlot(str, dict, name="on_print_stats_update") @QtCore.pyqtSlot(str, float, name="on_print_stats_update") @@ -305,6 +315,30 @@ def delete_file(self, filename: str, directory: str = "gcodes") -> None: ) self.BasePopup.open() + def save_config(self) -> None: + """Handle Save configuration behaviour, shows confirmation dialog""" + self.run_gcode_signal.emit("Z_OFFSET_APPLY_PROBE") + self.BasePopup_z_offset.set_message( + f"There is a change in the Z-Offset of {self._z_offset:.3f} mm,\n do you wish to save it permanently?\nThe machine will restart" + ) + self.BasePopup_z_offset.cancel_button_text("Later") + self.BasePopup_z_offset.open() + + def update_configuration_file(self): + """Runs the `SAVE_CONFIG` gcode""" + self.run_gcode_signal.emit("SAVE_CONFIG") + self.BasePopup_z_offset.disconnect() + + @QtCore.pyqtSlot(str, list, name="activate_save_button") + def activate_save_button(self, name: str, value: list) -> None: + """Sync the `Save config` popup with the save_config_pending state""" + if not value: + return + + if name == "homing_origin": + self._z_offset = value[2] + self.save_config_btn.setVisible(value[2] != 0) + def _on_delete_file_confirmed(self, filename: str, directory: str) -> None: """Handle confirmed file deletion after user accepted the dialog""" self.file_data.on_request_delete_file(filename, directory) @@ -360,6 +394,21 @@ def back_button(self) -> None: """Goes back to the previous page""" self.request_back.emit() + @QtCore.pyqtSlot(name="klipper_ready_signal") + def klipper_ready_signal(self) -> None: + """React to klipper ready signal""" + self.babystepPage.baby_stepchange = False + self._finish_print_handled = False + + @QtCore.pyqtSlot(name="finish_print_signal") + def finish_print_signal(self) -> None: + """Behaviour when the print ends — but only once.""" + if self._finish_print_handled: + return + if self._z_offset != 0 and self.babystepPage.baby_stepchange: + self._finish_print_handled = True + self.save_config() + def setupMainPrintPage(self) -> None: """Setup UI for print page""" self.setObjectName("printStackedWidget") @@ -424,6 +473,27 @@ def setupMainPrintPage(self) -> None: "icon_pixmap", QtGui.QPixmap(":/ui/media/btn_icons/print.svg") ) self.main_print_btn.setObjectName("main_print_btn") + self.save_config_btn = DisplayButton(parent=self.print_page) + self.save_config_btn.setGeometry(QtCore.QRect(540, 20, 170, 50)) + font.setPointSize(8) + font.setFamily("Montserrat") + self.save_config_btn.setFont(font) + self.save_config_btn.setMouseTracking(False) + self.save_config_btn.setTabletTracking(True) + self.save_config_btn.setContextMenuPolicy( + QtCore.Qt.ContextMenuPolicy.NoContextMenu + ) + self.save_config_btn.setProperty( + "icon_pixmap", QtGui.QPixmap(":/ui/media/btn_icons/save.svg") + ) + self.save_config_btn.setLayoutDirection(QtCore.Qt.LayoutDirection.LeftToRight) + self.save_config_btn.setStyleSheet("") + self.save_config_btn.setAutoDefault(False) + self.save_config_btn.setFlat(True) + self.save_config_btn.setMinimumSize(QtCore.QSize(170, 50)) + self.save_config_btn.setMaximumSize(QtCore.QSize(170, 50)) + self.save_config_btn.setText("Save\nZ-Offset") + self.save_config_btn.hide() self.main_text_label = QtWidgets.QLabel(parent=self.print_page) self.main_text_label.setEnabled(True) self.main_text_label.setGeometry(QtCore.QRect(105, 180, 500, 200)) diff --git a/BlocksScreen/lib/panels/widgets/babystepPage.py b/BlocksScreen/lib/panels/widgets/babystepPage.py index 6505c0aa..daa2e15b 100644 --- a/BlocksScreen/lib/panels/widgets/babystepPage.py +++ b/BlocksScreen/lib/panels/widgets/babystepPage.py @@ -1,9 +1,8 @@ import typing -from lib.utils.blocks_button import BlocksCustomButton from lib.utils.blocks_label import BlocksLabel -from lib.utils.icon_button import IconButton from lib.utils.check_button import BlocksCustomCheckButton +from lib.utils.icon_button import IconButton from PyQt6 import QtCore, QtGui, QtWidgets @@ -33,8 +32,18 @@ def __init__(self, parent) -> None: self.bbp_nozzle_offset_025.toggled.connect(self.handle_z_offset_change) self.bbp_nozzle_offset_05.toggled.connect(self.handle_z_offset_change) self.bbp_nozzle_offset_1.toggled.connect(self.handle_z_offset_change) + self._baby_stepchange = False + + @property + def baby_stepchange(self): + """Returns if the babystep was changed during print""" + return self._baby_stepchange - self.savebutton.clicked.connect(self.save_value) + @baby_stepchange.setter + def baby_stepchange(self, value: bool) -> None: + if not isinstance(value, bool): + raise ValueError("Value must be a bool") + self._baby_stepchange = value @QtCore.pyqtSlot(name="on_move_nozzle_close") def on_move_nozzle_close(self) -> None: @@ -42,9 +51,9 @@ def on_move_nozzle_close(self) -> None: by the amount set in **` self._z_offset`** """ self.run_gcode.emit( - f"SET_GCODE_OFFSET Z_ADJUST=-{self._z_offset}" # Z_ADJUST adds the value to the existing offset + f"SET_GCODE_OFFSET Z_ADJUST=-{self._z_offset} MOVE=1" # Z_ADJUST adds the value to the existing offset ) - self.savebutton.setVisible(True) + self._baby_stepchange = True @QtCore.pyqtSlot(name="on_move_nozzle_away") def on_move_nozzle_away(self) -> None: @@ -52,9 +61,9 @@ def on_move_nozzle_away(self) -> None: bed by **` self._z_offset`** amount """ self.run_gcode.emit( - f"SET_GCODE_OFFSET Z_ADJUST=+{self._z_offset}" # Z_ADJUST adds the value to the existing offset + f"SET_GCODE_OFFSET Z_ADJUST=+{self._z_offset} MOVE=1" # Z_ADJUST adds the value to the existing offset ) - self.savebutton.setVisible(True) + self._baby_stepchange = True @QtCore.pyqtSlot(name="handle_z_offset_change") def handle_z_offset_change(self) -> None: @@ -67,18 +76,11 @@ def handle_z_offset_change(self) -> None: Possible values are: 0.01, 0.025, 0.05, 0.1 **mm** """ - _possible_z_values: typing.List = [0.01, 0.025, 0.05, 0.1] _sender: QtCore.QObject | None = self.sender() if self._z_offset == float(_sender.text()[:-3]): return self._z_offset = float(_sender.text()[:-3]) - def save_value(self): - """Save new z offset value""" - self.run_gcode.emit("Z_OFFSET_APPLY_PROBE") - self.savebutton.setVisible(False) - self.bbp_z_offset_title_label.setText(self.bbp_z_offset_current_value.text()) - def on_gcode_move_update(self, name: str, value: list) -> None: """Handle gcode move updates""" if not value: @@ -143,16 +145,6 @@ def setupUI(self): self.bbp_header_title.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter) self.bbp_header_title.setObjectName("bbp_header_title") - self.savebutton = BlocksCustomButton(self) - self.savebutton.setGeometry(QtCore.QRect(460, 340, 200, 60)) - self.savebutton.setText("Save?") - self.savebutton.setObjectName("savebutton") - self.savebutton.setPixmap(QtGui.QPixmap(":/ui/media/btn_icons/save.svg")) - self.savebutton.setVisible(False) - font = QtGui.QFont() - font.setPointSize(15) - self.savebutton.setFont(font) - spacerItem = QtWidgets.QSpacerItem( 60, 20, @@ -399,7 +391,7 @@ def setupUI(self): self.bbp_mvup.setText("") self.bbp_mvup.setFlat(True) self.bbp_mvup.setPixmap( - QtGui.QPixmap(":/arrow_icons/media/btn_icons/up_arrow.svg") + QtGui.QPixmap(":/baby_step/media/btn_icons/move_nozzle_close.svg") ) self.bbp_mvup.setObjectName("bbp_away_from_bed") self.bbp_option_button_group = QtWidgets.QButtonGroup(self) @@ -416,7 +408,7 @@ def setupUI(self): self.bbp_mvdown.setText("") self.bbp_mvdown.setFlat(True) self.bbp_mvdown.setPixmap( - QtGui.QPixmap(":/arrow_icons/media/btn_icons/down_arrow.svg") + QtGui.QPixmap(":/baby_step/media/btn_icons/move_nozzle_away.svg") ) self.bbp_mvdown.setObjectName("bbp_close_to_bed") self.bbp_option_button_group.addButton(self.bbp_mvdown) diff --git a/BlocksScreen/lib/panels/widgets/jobStatusPage.py b/BlocksScreen/lib/panels/widgets/jobStatusPage.py index bbce76a3..354c2784 100644 --- a/BlocksScreen/lib/panels/widgets/jobStatusPage.py +++ b/BlocksScreen/lib/panels/widgets/jobStatusPage.py @@ -1,5 +1,6 @@ import logging import typing + import events from helper_methods import calculate_current_layer, estimate_print_time from lib.panels.widgets.basePopup import BasePopup @@ -34,6 +35,9 @@ class JobStatusWidget(QtWidgets.QWidget): print_cancel: typing.ClassVar[QtCore.pyqtSignal] = QtCore.pyqtSignal( name="print_cancel" ) + print_finish: typing.ClassVar[QtCore.pyqtSignal] = QtCore.pyqtSignal( + name="print_finish" + ) tune_clicked: typing.ClassVar[QtCore.pyqtSignal] = QtCore.pyqtSignal( name="tune_clicked" ) @@ -222,6 +226,8 @@ def _handle_print_state(self, state: str) -> None: self.show_request.emit() lstate = "start" elif lstate in invalid_states: + if lstate != "standby": + self.print_finish.emit() self._current_file_name = "" self._internal_print_status = "" self.total_layers = "?" diff --git a/BlocksScreen/lib/ui/resources/icon_resources.qrc b/BlocksScreen/lib/ui/resources/icon_resources.qrc index a3bf6d57..ac647262 100644 --- a/BlocksScreen/lib/ui/resources/icon_resources.qrc +++ b/BlocksScreen/lib/ui/resources/icon_resources.qrc @@ -10,6 +10,10 @@ media/btn_icons/no_wifi.svg media/btn_icons/retry_wifi.svg + + media/btn_icons/move_nozzle_away.svg + media/btn_icons/move_nozzle_close.svg + media/btn_icons/blocks_contacts.svg media/btn_icons/logo_BLOCKS.svg diff --git a/BlocksScreen/lib/ui/resources/icon_resources_rc.py b/BlocksScreen/lib/ui/resources/icon_resources_rc.py index 1346a1f1..3561d704 100644 --- a/BlocksScreen/lib/ui/resources/icon_resources_rc.py +++ b/BlocksScreen/lib/ui/resources/icon_resources_rc.py @@ -9278,6 +9278,78 @@ \x37\x34\x2e\x32\x31\x2c\x30\x2c\x30\x2c\x30\x2d\x39\x39\x2e\x36\ \x39\x2c\x37\x36\x2e\x32\x36\x5a\x22\x2f\x3e\x3c\x2f\x73\x76\x67\ \x3e\ +\x00\x00\x02\x27\ +\x3c\ +\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\ +\x30\x22\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x22\x55\x54\x46\ +\x2d\x38\x22\x3f\x3e\x0a\x3c\x73\x76\x67\x20\x69\x64\x3d\x22\x4c\ +\x61\x79\x65\x72\x5f\x31\x22\x20\x64\x61\x74\x61\x2d\x6e\x61\x6d\ +\x65\x3d\x22\x4c\x61\x79\x65\x72\x20\x31\x22\x20\x78\x6d\x6c\x6e\ +\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\x33\ +\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\x20\x76\ +\x69\x65\x77\x42\x6f\x78\x3d\x22\x30\x20\x30\x20\x36\x30\x30\x20\ +\x36\x30\x30\x22\x3e\x0a\x20\x20\x3c\x64\x65\x66\x73\x3e\x0a\x20\ +\x20\x20\x20\x3c\x73\x74\x79\x6c\x65\x3e\x0a\x20\x20\x20\x20\x20\ +\x20\x2e\x63\x6c\x73\x2d\x31\x20\x7b\x0a\x20\x20\x20\x20\x20\x20\ +\x20\x20\x66\x69\x6c\x6c\x3a\x20\x23\x65\x30\x65\x30\x64\x66\x3b\ +\x0a\x20\x20\x20\x20\x20\x20\x7d\x0a\x20\x20\x20\x20\x3c\x2f\x73\ +\x74\x79\x6c\x65\x3e\x0a\x20\x20\x3c\x2f\x64\x65\x66\x73\x3e\x0a\ +\x20\x20\x3c\x67\x3e\x0a\x20\x20\x20\x20\x3c\x72\x65\x63\x74\x20\ +\x63\x6c\x61\x73\x73\x3d\x22\x63\x6c\x73\x2d\x31\x22\x20\x78\x3d\ +\x22\x32\x33\x38\x2e\x39\x31\x22\x20\x79\x3d\x22\x37\x33\x2e\x37\ +\x34\x22\x20\x77\x69\x64\x74\x68\x3d\x22\x38\x31\x2e\x39\x32\x22\ +\x20\x68\x65\x69\x67\x68\x74\x3d\x22\x34\x39\x33\x2e\x34\x37\x22\ +\x20\x74\x72\x61\x6e\x73\x66\x6f\x72\x6d\x3d\x22\x74\x72\x61\x6e\ +\x73\x6c\x61\x74\x65\x28\x33\x30\x38\x2e\x35\x38\x20\x2d\x31\x30\ +\x34\x2e\x30\x34\x29\x20\x72\x6f\x74\x61\x74\x65\x28\x34\x35\x29\ +\x22\x2f\x3e\x0a\x20\x20\x20\x20\x3c\x70\x6f\x6c\x79\x67\x6f\x6e\ +\x20\x63\x6c\x61\x73\x73\x3d\x22\x63\x6c\x73\x2d\x31\x22\x20\x70\ +\x6f\x69\x6e\x74\x73\x3d\x22\x33\x34\x31\x2e\x33\x38\x20\x39\x31\ +\x2e\x38\x32\x20\x35\x34\x34\x2e\x36\x32\x20\x35\x34\x2e\x30\x32\ +\x20\x35\x30\x37\x2e\x31\x34\x20\x32\x35\x38\x2e\x39\x37\x20\x33\ +\x34\x31\x2e\x33\x38\x20\x39\x31\x2e\x38\x32\x22\x2f\x3e\x0a\x20\ +\x20\x3c\x2f\x67\x3e\x0a\x20\x20\x3c\x70\x6f\x6c\x79\x67\x6f\x6e\ +\x20\x63\x6c\x61\x73\x73\x3d\x22\x63\x6c\x73\x2d\x31\x22\x20\x70\ +\x6f\x69\x6e\x74\x73\x3d\x22\x32\x35\x38\x2e\x36\x32\x20\x35\x30\ +\x38\x2e\x31\x38\x20\x35\x35\x2e\x33\x38\x20\x35\x34\x35\x2e\x39\ +\x38\x20\x39\x32\x2e\x38\x36\x20\x33\x34\x31\x2e\x30\x33\x20\x32\ +\x35\x38\x2e\x36\x32\x20\x35\x30\x38\x2e\x31\x38\x22\x2f\x3e\x0a\ +\x3c\x2f\x73\x76\x67\x3e\ +\x00\x00\x02\x02\ +\x3c\ +\x3f\x78\x6d\x6c\x20\x76\x65\x72\x73\x69\x6f\x6e\x3d\x22\x31\x2e\ +\x30\x22\x20\x65\x6e\x63\x6f\x64\x69\x6e\x67\x3d\x22\x55\x54\x46\ +\x2d\x38\x22\x3f\x3e\x0a\x3c\x73\x76\x67\x20\x69\x64\x3d\x22\x4c\ +\x61\x79\x65\x72\x5f\x31\x22\x20\x64\x61\x74\x61\x2d\x6e\x61\x6d\ +\x65\x3d\x22\x4c\x61\x79\x65\x72\x20\x31\x22\x20\x78\x6d\x6c\x6e\ +\x73\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x77\x33\ +\x2e\x6f\x72\x67\x2f\x32\x30\x30\x30\x2f\x73\x76\x67\x22\x20\x76\ +\x69\x65\x77\x42\x6f\x78\x3d\x22\x30\x20\x30\x20\x36\x30\x30\x20\ +\x36\x30\x30\x22\x3e\x0a\x20\x20\x3c\x64\x65\x66\x73\x3e\x0a\x20\ +\x20\x20\x20\x3c\x73\x74\x79\x6c\x65\x3e\x0a\x20\x20\x20\x20\x20\ +\x20\x2e\x63\x6c\x73\x2d\x31\x20\x7b\x0a\x20\x20\x20\x20\x20\x20\ +\x20\x20\x66\x69\x6c\x6c\x3a\x20\x23\x65\x30\x65\x30\x64\x66\x3b\ +\x0a\x20\x20\x20\x20\x20\x20\x7d\x0a\x20\x20\x20\x20\x3c\x2f\x73\ +\x74\x79\x6c\x65\x3e\x0a\x20\x20\x3c\x2f\x64\x65\x66\x73\x3e\x0a\ +\x20\x20\x3c\x70\x6f\x6c\x79\x67\x6f\x6e\x20\x63\x6c\x61\x73\x73\ +\x3d\x22\x63\x6c\x73\x2d\x31\x22\x20\x70\x6f\x69\x6e\x74\x73\x3d\ +\x22\x35\x37\x38\x2e\x30\x35\x20\x37\x38\x2e\x33\x20\x35\x31\x39\ +\x2e\x36\x33\x20\x32\x30\x2e\x38\x36\x20\x33\x39\x39\x2e\x31\x37\ +\x20\x31\x34\x31\x2e\x33\x33\x20\x33\x34\x35\x2e\x34\x38\x20\x38\ +\x37\x2e\x31\x39\x20\x33\x30\x37\x2e\x39\x39\x20\x32\x39\x32\x2e\ +\x31\x33\x20\x35\x31\x31\x2e\x32\x34\x20\x32\x35\x34\x2e\x33\x34\ +\x20\x34\x35\x36\x2e\x38\x35\x20\x31\x39\x39\x2e\x35\x20\x35\x37\ +\x38\x2e\x30\x35\x20\x37\x38\x2e\x33\x22\x2f\x3e\x0a\x20\x20\x3c\ +\x70\x6f\x6c\x79\x67\x6f\x6e\x20\x63\x6c\x61\x73\x73\x3d\x22\x63\ +\x6c\x73\x2d\x31\x22\x20\x70\x6f\x69\x6e\x74\x73\x3d\x22\x31\x35\ +\x2e\x33\x38\x20\x35\x33\x31\x2e\x33\x37\x20\x37\x33\x2e\x38\x20\ +\x35\x38\x38\x2e\x38\x31\x20\x31\x39\x39\x2e\x33\x33\x20\x34\x36\ +\x33\x2e\x32\x37\x20\x32\x35\x33\x2e\x33\x37\x20\x35\x31\x37\x2e\ +\x37\x36\x20\x32\x39\x30\x2e\x38\x36\x20\x33\x31\x32\x2e\x38\x31\ +\x20\x38\x37\x2e\x36\x31\x20\x33\x35\x30\x2e\x36\x31\x20\x31\x34\ +\x31\x2e\x36\x35\x20\x34\x30\x35\x2e\x31\x20\x31\x35\x2e\x33\x38\ +\x20\x35\x33\x31\x2e\x33\x37\x22\x2f\x3e\x0a\x3c\x2f\x73\x76\x67\ +\x3e\ \x00\x00\x0a\x60\ \x3c\ \x73\x76\x67\x20\x78\x6d\x6c\x6e\x73\x3d\x22\x68\x74\x74\x70\x3a\ @@ -25370,6 +25442,10 @@ \x08\xf1\x7e\xd4\ \x00\x66\ \x00\x69\x00\x6c\x00\x61\x00\x6d\x00\x65\x00\x6e\x00\x74\x00\x5f\x00\x72\x00\x65\x00\x6c\x00\x61\x00\x74\x00\x65\x00\x64\ +\x00\x09\ +\x09\xf6\x7a\x20\ +\x00\x62\ +\x00\x61\x00\x62\x00\x79\x00\x5f\x00\x73\x00\x74\x00\x65\x00\x70\ \x00\x11\ \x0b\x8b\xba\x63\ \x00\x6c\ @@ -25525,6 +25601,16 @@ \x0c\x4a\x5a\x07\ \x00\x65\ \x00\x6e\x00\x67\x00\x2e\x00\x73\x00\x76\x00\x67\ +\x00\x14\ +\x02\x84\x9e\x27\ +\x00\x6d\ +\x00\x6f\x00\x76\x00\x65\x00\x5f\x00\x6e\x00\x6f\x00\x7a\x00\x7a\x00\x6c\x00\x65\x00\x5f\x00\x61\x00\x77\x00\x61\x00\x79\x00\x2e\ +\x00\x73\x00\x76\x00\x67\ +\x00\x15\ +\x06\x1c\x09\x47\ +\x00\x6d\ +\x00\x6f\x00\x76\x00\x65\x00\x5f\x00\x6e\x00\x6f\x00\x7a\x00\x7a\x00\x6c\x00\x65\x00\x5f\x00\x63\x00\x6c\x00\x6f\x00\x73\x00\x65\ +\x00\x2e\x00\x73\x00\x76\x00\x67\ \x00\x06\ \x07\xb6\x68\x82\ \x00\x74\ @@ -26035,581 +26121,596 @@ " qt_resource_struct_v1 = b"\ -\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0f\x00\x00\x00\x01\ -\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x95\ -\x00\x00\x00\x0a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x92\ -\x00\x00\x00\x1a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x86\ -\x00\x00\x00\x46\x00\x02\x00\x00\x00\x01\x00\x00\x00\x7b\ -\x00\x00\x00\x5a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x77\ -\x00\x00\x00\x6c\x00\x02\x00\x00\x00\x01\x00\x00\x00\x71\ -\x00\x00\x00\x7e\x00\x02\x00\x00\x00\x01\x00\x00\x00\x63\ -\x00\x00\x00\x90\x00\x02\x00\x00\x00\x01\x00\x00\x00\x59\ -\x00\x00\x00\xa2\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4a\ -\x00\x00\x00\xc0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x45\ -\x00\x00\x00\xdc\x00\x02\x00\x00\x00\x01\x00\x00\x00\x35\ -\x00\x00\x01\x02\x00\x02\x00\x00\x00\x01\x00\x00\x00\x31\ -\x00\x00\x01\x2a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x25\ -\x00\x00\x01\x50\x00\x02\x00\x00\x00\x01\x00\x00\x00\x1f\ -\x00\x00\x01\x6c\x00\x02\x00\x00\x00\x01\x00\x00\x00\x10\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x11\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0d\x00\x00\x00\x12\ -\x00\x00\x01\xb0\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ -\x00\x00\x01\xd0\x00\x00\x00\x00\x00\x01\x00\x00\x08\x66\ -\x00\x00\x01\xf8\x00\x00\x00\x00\x00\x01\x00\x00\x09\x52\ -\x00\x00\x02\x20\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x35\ -\x00\x00\x02\x48\x00\x00\x00\x00\x00\x01\x00\x00\x0b\x18\ -\x00\x00\x02\x70\x00\x00\x00\x00\x00\x01\x00\x00\x0c\x06\ -\x00\x00\x02\xa4\x00\x00\x00\x00\x00\x01\x00\x00\x14\x42\ -\x00\x00\x02\xd0\x00\x00\x00\x00\x00\x01\x00\x00\x1d\xf7\ -\x00\x00\x02\xfa\x00\x00\x00\x00\x00\x01\x00\x00\x22\x41\ -\x00\x00\x03\x1a\x00\x00\x00\x00\x00\x01\x00\x00\x26\x90\ -\x00\x00\x03\x36\x00\x00\x00\x00\x00\x01\x00\x00\x2c\x6e\ -\x00\x00\x03\x52\x00\x00\x00\x00\x00\x01\x00\x00\x30\xca\ -\x00\x00\x03\x7a\x00\x00\x00\x00\x00\x01\x00\x00\x32\xb1\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x20\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x04\x00\x00\x00\x21\ -\x00\x00\x03\x9a\x00\x00\x00\x00\x00\x01\x00\x00\x3a\x55\ -\x00\x00\x03\xbe\x00\x00\x00\x00\x00\x01\x00\x00\x3c\xcf\ -\x00\x00\x03\xe0\x00\x00\x00\x00\x00\x01\x00\x00\x3f\x43\ -\x00\x00\x03\xfe\x00\x00\x00\x00\x00\x01\x00\x00\x41\xbf\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x26\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x27\ -\x00\x00\x04\x20\x00\x00\x00\x00\x00\x01\x00\x00\x44\x3b\ -\x00\x00\x04\x3a\x00\x00\x00\x00\x00\x01\x00\x00\x45\x3c\ -\x00\x00\x04\x6a\x00\x00\x00\x00\x00\x01\x00\x00\x4a\x54\ -\x00\x00\x04\x9a\x00\x00\x00\x00\x00\x01\x00\x00\x56\x16\ -\x00\x00\x04\xc4\x00\x00\x00\x00\x00\x01\x00\x00\x58\x86\ -\x00\x00\x04\xea\x00\x00\x00\x00\x00\x01\x00\x00\x5e\x1e\ -\x00\x00\x05\x0e\x00\x00\x00\x00\x00\x01\x00\x00\x62\x7a\ -\x00\x00\x05\x48\x00\x00\x00\x00\x00\x01\x00\x00\x69\x07\ -\x00\x00\x05\x64\x00\x00\x00\x00\x00\x01\x00\x00\x6c\x03\ -\x00\x00\x05\x8c\x00\x00\x00\x00\x00\x01\x00\x00\x6d\x01\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x32\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x02\x00\x00\x00\x33\ -\x00\x00\x05\xbe\x00\x01\x00\x00\x00\x01\x00\x00\x77\x6b\ -\x00\x00\x05\xd0\x00\x00\x00\x00\x00\x01\x00\x02\x3a\xc0\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x02\x00\x00\x00\x36\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x06\x00\x00\x00\x3f\ -\x00\x00\x05\xe4\x00\x02\x00\x00\x00\x07\x00\x00\x00\x38\ -\x00\x00\x05\xf6\x00\x00\x00\x00\x00\x01\x00\x02\x3f\x46\ -\x00\x00\x06\x2a\x00\x00\x00\x00\x00\x01\x00\x02\x49\xaa\ -\x00\x00\x06\x5e\x00\x00\x00\x00\x00\x01\x00\x02\x53\xd3\ -\x00\x00\x06\x98\x00\x00\x00\x00\x00\x01\x00\x02\x5e\x2b\ -\x00\x00\x06\xcc\x00\x00\x00\x00\x00\x01\x00\x02\x68\x43\ -\x00\x00\x07\x02\x00\x00\x00\x00\x00\x01\x00\x02\x72\x6c\ -\x00\x00\x07\x3a\x00\x00\x00\x00\x00\x01\x00\x02\x7c\x82\ -\x00\x00\x07\x70\x00\x00\x00\x00\x00\x01\x00\x02\x86\xe8\ -\x00\x00\x07\x98\x00\x00\x00\x00\x00\x01\x00\x02\x91\x17\ -\x00\x00\x07\xc4\x00\x00\x00\x00\x00\x01\x00\x02\x9b\x5e\ -\x00\x00\x08\x00\x00\x00\x00\x00\x00\x01\x00\x02\x9d\x5f\ -\x00\x00\x08\x2c\x00\x00\x00\x00\x00\x01\x00\x02\xb8\xa4\ -\x00\x00\x08\x58\x00\x00\x00\x00\x00\x01\x00\x02\xbd\xed\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x46\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x03\x00\x00\x00\x47\ -\x00\x00\x08\x8c\x00\x00\x00\x00\x00\x01\x00\x02\xc1\x65\ -\x00\x00\x08\xaa\x00\x00\x00\x00\x00\x01\x00\x02\xca\x47\ -\x00\x00\x08\xbe\x00\x00\x00\x00\x00\x01\x00\x02\xcf\x7c\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4b\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0d\x00\x00\x00\x4c\ -\x00\x00\x08\xd8\x00\x00\x00\x00\x00\x01\x00\x02\xd9\x51\ -\x00\x00\x09\x00\x00\x00\x00\x00\x00\x01\x00\x02\xde\x4c\ -\x00\x00\x09\x38\x00\x00\x00\x00\x00\x01\x00\x02\xe7\x20\ -\x00\x00\x09\x70\x00\x00\x00\x00\x00\x01\x00\x02\xef\xc4\ -\x00\x00\x09\xa0\x00\x00\x00\x00\x00\x01\x00\x02\xf7\x63\ -\x00\x00\x09\xc4\x00\x00\x00\x00\x00\x01\x00\x02\xff\x3f\ -\x00\x00\x09\xe8\x00\x00\x00\x00\x00\x01\x00\x03\x06\xf5\ -\x00\x00\x0a\x1c\x00\x00\x00\x00\x00\x01\x00\x03\x0f\x03\ -\x00\x00\x0a\x50\x00\x00\x00\x00\x00\x01\x00\x03\x16\xe5\ -\x00\x00\x0a\x84\x00\x00\x00\x00\x00\x01\x00\x03\x1e\xaf\ -\x00\x00\x0a\xbe\x00\x00\x00\x00\x00\x01\x00\x03\x26\x16\ -\x00\x00\x0a\xe2\x00\x00\x00\x00\x00\x01\x00\x03\x29\xd3\ -\x00\x00\x0b\x10\x00\x00\x00\x00\x00\x01\x00\x03\x2d\xac\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x5a\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x08\x00\x00\x00\x5b\ -\x00\x00\x0b\x36\x00\x00\x00\x00\x00\x01\x00\x03\x33\xb5\ -\x00\x00\x0b\x62\x00\x00\x00\x00\x00\x01\x00\x03\x56\x39\ -\x00\x00\x0b\x90\x00\x00\x00\x00\x00\x01\x00\x03\x5c\x26\ -\x00\x00\x0b\xba\x00\x00\x00\x00\x00\x01\x00\x03\x5e\x46\ -\x00\x00\x0b\xe2\x00\x00\x00\x00\x00\x01\x00\x03\x66\xde\ -\x00\x00\x0b\xfc\x00\x00\x00\x00\x00\x01\x00\x03\x76\x27\ -\x00\x00\x0c\x28\x00\x00\x00\x00\x00\x01\x00\x03\x7c\xa5\ -\x00\x00\x0c\x50\x00\x00\x00\x00\x00\x01\x00\x03\x87\x1f\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x64\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0c\x00\x00\x00\x65\ -\x00\x00\x0c\x86\x00\x00\x00\x00\x00\x01\x00\x03\x90\x66\ -\x00\x00\x0c\xb4\x00\x00\x00\x00\x00\x01\x00\x03\x93\x0d\ -\x00\x00\x0c\xe2\x00\x01\x00\x00\x00\x01\x00\x03\x9f\x8a\ -\x00\x00\x0d\x0e\x00\x00\x00\x00\x00\x01\x00\x03\xcd\x09\ -\x00\x00\x0d\x2e\x00\x00\x00\x00\x00\x01\x00\x03\xd1\xc0\ -\x00\x00\x0d\x60\x00\x01\x00\x00\x00\x01\x00\x04\x2a\xb9\ -\x00\x00\x0d\x92\x00\x00\x00\x00\x00\x01\x00\x04\x5f\x53\ -\x00\x00\x0d\xac\x00\x00\x00\x00\x00\x01\x00\x04\x64\x9d\ -\x00\x00\x0d\xc6\x00\x00\x00\x00\x00\x01\x00\x04\x6a\x2c\ -\x00\x00\x0d\xe0\x00\x00\x00\x00\x00\x01\x00\x04\x6f\x95\ -\x00\x00\x0d\xf8\x00\x00\x00\x00\x00\x01\x00\x04\x7b\x73\ -\x00\x00\x0e\x16\x00\x00\x00\x00\x00\x01\x00\x04\x81\x77\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x72\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x04\x00\x00\x00\x73\ -\x00\x00\x0e\x3e\x00\x00\x00\x00\x00\x01\x00\x04\x86\xac\ -\x00\x00\x0e\x52\x00\x00\x00\x00\x00\x01\x00\x04\x8c\xa9\ -\x00\x00\x0e\x64\x00\x00\x00\x00\x00\x01\x00\x04\x8e\x2f\ -\x00\x00\x0e\x76\x00\x00\x00\x00\x00\x01\x00\x04\x94\x29\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x78\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x02\x00\x00\x00\x79\ -\x00\x00\x0e\x8a\x00\x00\x00\x00\x00\x01\x00\x04\x96\x7f\ -\x00\x00\x0e\xb6\x00\x00\x00\x00\x00\x01\x00\x04\x9d\x66\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x7c\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x09\x00\x00\x00\x7d\ -\x00\x00\x0e\xda\x00\x00\x00\x00\x00\x01\x00\x04\xa6\xca\ -\x00\x00\x0e\xfa\x00\x01\x00\x00\x00\x01\x00\x04\xa9\x76\ -\x00\x00\x0f\x1e\x00\x00\x00\x00\x00\x01\x00\x04\xb4\xc7\ -\x00\x00\x0f\x40\x00\x00\x00\x00\x00\x01\x00\x04\xbc\x6c\ -\x00\x00\x0f\x5c\x00\x00\x00\x00\x00\x01\x00\x04\xcd\x6c\ -\x00\x00\x0f\x80\x00\x00\x00\x00\x00\x01\x00\x04\xd6\xed\ -\x00\x00\x0f\xa0\x00\x00\x00\x00\x00\x01\x00\x04\xdc\x8a\ -\x00\x00\x0f\xc8\x00\x00\x00\x00\x00\x01\x00\x04\xe6\x53\ -\x00\x00\x0f\xe8\x00\x00\x00\x00\x00\x01\x00\x04\xea\x36\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x87\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x88\ -\x00\x00\x10\x04\x00\x00\x00\x00\x00\x01\x00\x04\xf0\x71\ -\x00\x00\x10\x34\x00\x00\x00\x00\x00\x01\x00\x04\xfa\x07\ -\x00\x00\x10\x64\x00\x00\x00\x00\x00\x01\x00\x05\x05\xe3\ -\x00\x00\x10\x88\x00\x00\x00\x00\x00\x01\x00\x05\x0c\x27\ -\x00\x00\x10\xb2\x00\x00\x00\x00\x00\x01\x00\x05\x13\xb0\ -\x00\x00\x10\xde\x00\x00\x00\x00\x00\x01\x00\x05\x1a\x0e\ -\x00\x00\x11\x14\x00\x00\x00\x00\x00\x01\x00\x05\x21\xfd\ -\x00\x00\x08\xaa\x00\x00\x00\x00\x00\x01\x00\x05\x2f\xa0\ -\x00\x00\x08\xbe\x00\x00\x00\x00\x00\x01\x00\x05\x34\xd5\ -\x00\x00\x11\x32\x00\x00\x00\x00\x00\x01\x00\x05\x3e\xaa\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x93\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x01\x00\x00\x00\x94\ -\x00\x00\x11\x5a\x00\x00\x00\x00\x00\x01\x00\x05\x46\x74\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x96\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x28\x00\x00\x00\x97\ -\x00\x00\x11\x7a\x00\x00\x00\x00\x00\x01\x00\x05\x4b\x3a\ -\x00\x00\x11\x90\x00\x00\x00\x00\x00\x01\x00\x05\x52\xee\ -\x00\x00\x11\xa8\x00\x00\x00\x00\x00\x01\x00\x05\x55\x13\ -\x00\x00\x11\xe0\x00\x00\x00\x00\x00\x01\x00\x05\x56\x93\ -\x00\x00\x11\xfc\x00\x00\x00\x00\x00\x01\x00\x05\x5e\x40\ -\x00\x00\x12\x1c\x00\x00\x00\x00\x00\x01\x00\x05\x63\x15\ -\x00\x00\x12\x32\x00\x00\x00\x00\x00\x01\x00\x05\x64\x05\ -\x00\x00\x12\x48\x00\x00\x00\x00\x00\x01\x00\x05\x66\xe9\ -\x00\x00\x12\x6e\x00\x00\x00\x00\x00\x01\x00\x05\x6d\x20\ -\x00\x00\x12\x88\x00\x00\x00\x00\x00\x01\x00\x05\x82\x2d\ -\x00\x00\x12\xaa\x00\x00\x00\x00\x00\x01\x00\x05\x87\x1d\ -\x00\x00\x12\xc0\x00\x00\x00\x00\x00\x01\x00\x05\x8a\x1c\ -\x00\x00\x12\xd6\x00\x00\x00\x00\x00\x01\x00\x05\x90\x26\ -\x00\x00\x13\x08\x00\x00\x00\x00\x00\x01\x00\x05\x93\x75\ -\x00\x00\x13\x20\x00\x00\x00\x00\x00\x01\x00\x05\x9c\xf6\ -\x00\x00\x13\x36\x00\x00\x00\x00\x00\x01\x00\x05\xa2\xed\ -\x00\x00\x13\x4a\x00\x00\x00\x00\x00\x01\x00\x05\xa4\xfe\ -\x00\x00\x13\x62\x00\x00\x00\x00\x00\x01\x00\x05\xa8\xc1\ -\x00\x00\x13\x88\x00\x00\x00\x00\x00\x01\x00\x05\xb2\x75\ -\x00\x00\x13\xb2\x00\x00\x00\x00\x00\x01\x00\x05\xb5\xc3\ -\x00\x00\x13\xd4\x00\x00\x00\x00\x00\x01\x00\x05\xb9\x51\ -\x00\x00\x13\xfa\x00\x00\x00\x00\x00\x01\x00\x05\xbd\xf2\ -\x00\x00\x14\x0e\x00\x00\x00\x00\x00\x01\x00\x05\xc7\xc4\ -\x00\x00\x14\x3a\x00\x00\x00\x00\x00\x01\x00\x05\xcd\x0e\ -\x00\x00\x14\x62\x00\x00\x00\x00\x00\x01\x00\x05\xd3\x15\ -\x00\x00\x14\x78\x00\x00\x00\x00\x00\x01\x00\x05\xd3\xf9\ -\x00\x00\x14\xa4\x00\x00\x00\x00\x00\x01\x00\x05\xd6\x42\ -\x00\x00\x14\xba\x00\x00\x00\x00\x00\x01\x00\x05\xdc\xf2\ -\x00\x00\x14\xd6\x00\x00\x00\x00\x00\x01\x00\x05\xe0\x36\ -\x00\x00\x14\xee\x00\x00\x00\x00\x00\x01\x00\x05\xe1\x62\ -\x00\x00\x15\x08\x00\x00\x00\x00\x00\x01\x00\x05\xe7\x23\ -\x00\x00\x15\x2a\x00\x00\x00\x00\x00\x01\x00\x05\xe8\x45\ -\x00\x00\x15\x48\x00\x00\x00\x00\x00\x01\x00\x05\xee\x38\ -\x00\x00\x15\x68\x00\x00\x00\x00\x00\x01\x00\x05\xf1\x3c\ -\x00\x00\x15\x8a\x00\x00\x00\x00\x00\x01\x00\x05\xf2\x5d\ -\x00\x00\x15\xaa\x00\x00\x00\x00\x00\x01\x00\x05\xf5\x31\ -\x00\x00\x15\xd8\x00\x00\x00\x00\x00\x01\x00\x05\xfd\x9d\ -\x00\x00\x15\xfc\x00\x00\x00\x00\x00\x01\x00\x06\x05\x5d\ -\x00\x00\x16\x20\x00\x00\x00\x00\x00\x01\x00\x06\x0a\x78\ -\x00\x00\x16\x48\x00\x00\x00\x00\x00\x01\x00\x06\x0b\xcb\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x10\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x9a\ +\x00\x00\x00\x0a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x97\ +\x00\x00\x00\x1a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x8b\ +\x00\x00\x00\x46\x00\x02\x00\x00\x00\x01\x00\x00\x00\x80\ +\x00\x00\x00\x5a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x7c\ +\x00\x00\x00\x6c\x00\x02\x00\x00\x00\x01\x00\x00\x00\x76\ +\x00\x00\x00\x7e\x00\x02\x00\x00\x00\x01\x00\x00\x00\x68\ +\x00\x00\x00\x90\x00\x02\x00\x00\x00\x01\x00\x00\x00\x5e\ +\x00\x00\x00\xa2\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4f\ +\x00\x00\x00\xc0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4a\ +\x00\x00\x00\xdc\x00\x02\x00\x00\x00\x01\x00\x00\x00\x3a\ +\x00\x00\x01\x02\x00\x02\x00\x00\x00\x01\x00\x00\x00\x36\ +\x00\x00\x01\x1a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x32\ +\x00\x00\x01\x42\x00\x02\x00\x00\x00\x01\x00\x00\x00\x26\ +\x00\x00\x01\x68\x00\x02\x00\x00\x00\x01\x00\x00\x00\x20\ +\x00\x00\x01\x84\x00\x02\x00\x00\x00\x01\x00\x00\x00\x11\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x12\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0d\x00\x00\x00\x13\ +\x00\x00\x01\xc8\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x01\xe8\x00\x00\x00\x00\x00\x01\x00\x00\x08\x66\ +\x00\x00\x02\x10\x00\x00\x00\x00\x00\x01\x00\x00\x09\x52\ +\x00\x00\x02\x38\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x35\ +\x00\x00\x02\x60\x00\x00\x00\x00\x00\x01\x00\x00\x0b\x18\ +\x00\x00\x02\x88\x00\x00\x00\x00\x00\x01\x00\x00\x0c\x06\ +\x00\x00\x02\xbc\x00\x00\x00\x00\x00\x01\x00\x00\x14\x42\ +\x00\x00\x02\xe8\x00\x00\x00\x00\x00\x01\x00\x00\x1d\xf7\ +\x00\x00\x03\x12\x00\x00\x00\x00\x00\x01\x00\x00\x22\x41\ +\x00\x00\x03\x32\x00\x00\x00\x00\x00\x01\x00\x00\x26\x90\ +\x00\x00\x03\x4e\x00\x00\x00\x00\x00\x01\x00\x00\x2c\x6e\ +\x00\x00\x03\x6a\x00\x00\x00\x00\x00\x01\x00\x00\x30\xca\ +\x00\x00\x03\x92\x00\x00\x00\x00\x00\x01\x00\x00\x32\xb1\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x21\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x04\x00\x00\x00\x22\ +\x00\x00\x03\xb2\x00\x00\x00\x00\x00\x01\x00\x00\x3a\x55\ +\x00\x00\x03\xd6\x00\x00\x00\x00\x00\x01\x00\x00\x3c\xcf\ +\x00\x00\x03\xf8\x00\x00\x00\x00\x00\x01\x00\x00\x3f\x43\ +\x00\x00\x04\x16\x00\x00\x00\x00\x00\x01\x00\x00\x41\xbf\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x27\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x28\ +\x00\x00\x04\x38\x00\x00\x00\x00\x00\x01\x00\x00\x44\x3b\ +\x00\x00\x04\x52\x00\x00\x00\x00\x00\x01\x00\x00\x45\x3c\ +\x00\x00\x04\x82\x00\x00\x00\x00\x00\x01\x00\x00\x4a\x54\ +\x00\x00\x04\xb2\x00\x00\x00\x00\x00\x01\x00\x00\x56\x16\ +\x00\x00\x04\xdc\x00\x00\x00\x00\x00\x01\x00\x00\x58\x86\ +\x00\x00\x05\x02\x00\x00\x00\x00\x00\x01\x00\x00\x5e\x1e\ +\x00\x00\x05\x26\x00\x00\x00\x00\x00\x01\x00\x00\x62\x7a\ +\x00\x00\x05\x60\x00\x00\x00\x00\x00\x01\x00\x00\x69\x07\ +\x00\x00\x05\x7c\x00\x00\x00\x00\x00\x01\x00\x00\x6c\x03\ +\x00\x00\x05\xa4\x00\x00\x00\x00\x00\x01\x00\x00\x6d\x01\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x33\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x02\x00\x00\x00\x34\ +\x00\x00\x05\xd6\x00\x01\x00\x00\x00\x01\x00\x00\x77\x6b\ +\x00\x00\x05\xe8\x00\x00\x00\x00\x00\x01\x00\x02\x3a\xc0\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x37\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x02\x00\x00\x00\x38\ +\x00\x00\x05\xfc\x00\x00\x00\x00\x00\x01\x00\x02\x3f\x46\ +\x00\x00\x06\x2a\x00\x00\x00\x00\x00\x01\x00\x02\x41\x71\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x02\x00\x00\x00\x3b\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x06\x00\x00\x00\x44\ +\x00\x00\x06\x5a\x00\x02\x00\x00\x00\x07\x00\x00\x00\x3d\ +\x00\x00\x06\x6c\x00\x00\x00\x00\x00\x01\x00\x02\x43\x77\ +\x00\x00\x06\xa0\x00\x00\x00\x00\x00\x01\x00\x02\x4d\xdb\ +\x00\x00\x06\xd4\x00\x00\x00\x00\x00\x01\x00\x02\x58\x04\ +\x00\x00\x07\x0e\x00\x00\x00\x00\x00\x01\x00\x02\x62\x5c\ +\x00\x00\x07\x42\x00\x00\x00\x00\x00\x01\x00\x02\x6c\x74\ +\x00\x00\x07\x78\x00\x00\x00\x00\x00\x01\x00\x02\x76\x9d\ +\x00\x00\x07\xb0\x00\x00\x00\x00\x00\x01\x00\x02\x80\xb3\ +\x00\x00\x07\xe6\x00\x00\x00\x00\x00\x01\x00\x02\x8b\x19\ +\x00\x00\x08\x0e\x00\x00\x00\x00\x00\x01\x00\x02\x95\x48\ +\x00\x00\x08\x3a\x00\x00\x00\x00\x00\x01\x00\x02\x9f\x8f\ +\x00\x00\x08\x76\x00\x00\x00\x00\x00\x01\x00\x02\xa1\x90\ +\x00\x00\x08\xa2\x00\x00\x00\x00\x00\x01\x00\x02\xbc\xd5\ +\x00\x00\x08\xce\x00\x00\x00\x00\x00\x01\x00\x02\xc2\x1e\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4b\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x03\x00\x00\x00\x4c\ +\x00\x00\x09\x02\x00\x00\x00\x00\x00\x01\x00\x02\xc5\x96\ +\x00\x00\x09\x20\x00\x00\x00\x00\x00\x01\x00\x02\xce\x78\ +\x00\x00\x09\x34\x00\x00\x00\x00\x00\x01\x00\x02\xd3\xad\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x50\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0d\x00\x00\x00\x51\ +\x00\x00\x09\x4e\x00\x00\x00\x00\x00\x01\x00\x02\xdd\x82\ +\x00\x00\x09\x76\x00\x00\x00\x00\x00\x01\x00\x02\xe2\x7d\ +\x00\x00\x09\xae\x00\x00\x00\x00\x00\x01\x00\x02\xeb\x51\ +\x00\x00\x09\xe6\x00\x00\x00\x00\x00\x01\x00\x02\xf3\xf5\ +\x00\x00\x0a\x16\x00\x00\x00\x00\x00\x01\x00\x02\xfb\x94\ +\x00\x00\x0a\x3a\x00\x00\x00\x00\x00\x01\x00\x03\x03\x70\ +\x00\x00\x0a\x5e\x00\x00\x00\x00\x00\x01\x00\x03\x0b\x26\ +\x00\x00\x0a\x92\x00\x00\x00\x00\x00\x01\x00\x03\x13\x34\ +\x00\x00\x0a\xc6\x00\x00\x00\x00\x00\x01\x00\x03\x1b\x16\ +\x00\x00\x0a\xfa\x00\x00\x00\x00\x00\x01\x00\x03\x22\xe0\ +\x00\x00\x0b\x34\x00\x00\x00\x00\x00\x01\x00\x03\x2a\x47\ +\x00\x00\x0b\x58\x00\x00\x00\x00\x00\x01\x00\x03\x2e\x04\ +\x00\x00\x0b\x86\x00\x00\x00\x00\x00\x01\x00\x03\x31\xdd\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x5f\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x08\x00\x00\x00\x60\ +\x00\x00\x0b\xac\x00\x00\x00\x00\x00\x01\x00\x03\x37\xe6\ +\x00\x00\x0b\xd8\x00\x00\x00\x00\x00\x01\x00\x03\x5a\x6a\ +\x00\x00\x0c\x06\x00\x00\x00\x00\x00\x01\x00\x03\x60\x57\ +\x00\x00\x0c\x30\x00\x00\x00\x00\x00\x01\x00\x03\x62\x77\ +\x00\x00\x0c\x58\x00\x00\x00\x00\x00\x01\x00\x03\x6b\x0f\ +\x00\x00\x0c\x72\x00\x00\x00\x00\x00\x01\x00\x03\x7a\x58\ +\x00\x00\x0c\x9e\x00\x00\x00\x00\x00\x01\x00\x03\x80\xd6\ +\x00\x00\x0c\xc6\x00\x00\x00\x00\x00\x01\x00\x03\x8b\x50\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x69\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0c\x00\x00\x00\x6a\ +\x00\x00\x0c\xfc\x00\x00\x00\x00\x00\x01\x00\x03\x94\x97\ +\x00\x00\x0d\x2a\x00\x00\x00\x00\x00\x01\x00\x03\x97\x3e\ +\x00\x00\x0d\x58\x00\x01\x00\x00\x00\x01\x00\x03\xa3\xbb\ +\x00\x00\x0d\x84\x00\x00\x00\x00\x00\x01\x00\x03\xd1\x3a\ +\x00\x00\x0d\xa4\x00\x00\x00\x00\x00\x01\x00\x03\xd5\xf1\ +\x00\x00\x0d\xd6\x00\x01\x00\x00\x00\x01\x00\x04\x2e\xea\ +\x00\x00\x0e\x08\x00\x00\x00\x00\x00\x01\x00\x04\x63\x84\ +\x00\x00\x0e\x22\x00\x00\x00\x00\x00\x01\x00\x04\x68\xce\ +\x00\x00\x0e\x3c\x00\x00\x00\x00\x00\x01\x00\x04\x6e\x5d\ +\x00\x00\x0e\x56\x00\x00\x00\x00\x00\x01\x00\x04\x73\xc6\ +\x00\x00\x0e\x6e\x00\x00\x00\x00\x00\x01\x00\x04\x7f\xa4\ +\x00\x00\x0e\x8c\x00\x00\x00\x00\x00\x01\x00\x04\x85\xa8\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x77\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x04\x00\x00\x00\x78\ +\x00\x00\x0e\xb4\x00\x00\x00\x00\x00\x01\x00\x04\x8a\xdd\ +\x00\x00\x0e\xc8\x00\x00\x00\x00\x00\x01\x00\x04\x90\xda\ +\x00\x00\x0e\xda\x00\x00\x00\x00\x00\x01\x00\x04\x92\x60\ +\x00\x00\x0e\xec\x00\x00\x00\x00\x00\x01\x00\x04\x98\x5a\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x7d\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x02\x00\x00\x00\x7e\ +\x00\x00\x0f\x00\x00\x00\x00\x00\x00\x01\x00\x04\x9a\xb0\ +\x00\x00\x0f\x2c\x00\x00\x00\x00\x00\x01\x00\x04\xa1\x97\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x81\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x09\x00\x00\x00\x82\ +\x00\x00\x0f\x50\x00\x00\x00\x00\x00\x01\x00\x04\xaa\xfb\ +\x00\x00\x0f\x70\x00\x01\x00\x00\x00\x01\x00\x04\xad\xa7\ +\x00\x00\x0f\x94\x00\x00\x00\x00\x00\x01\x00\x04\xb8\xf8\ +\x00\x00\x0f\xb6\x00\x00\x00\x00\x00\x01\x00\x04\xc0\x9d\ +\x00\x00\x0f\xd2\x00\x00\x00\x00\x00\x01\x00\x04\xd1\x9d\ +\x00\x00\x0f\xf6\x00\x00\x00\x00\x00\x01\x00\x04\xdb\x1e\ +\x00\x00\x10\x16\x00\x00\x00\x00\x00\x01\x00\x04\xe0\xbb\ +\x00\x00\x10\x3e\x00\x00\x00\x00\x00\x01\x00\x04\xea\x84\ +\x00\x00\x10\x5e\x00\x00\x00\x00\x00\x01\x00\x04\xee\x67\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x8c\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x8d\ +\x00\x00\x10\x7a\x00\x00\x00\x00\x00\x01\x00\x04\xf4\xa2\ +\x00\x00\x10\xaa\x00\x00\x00\x00\x00\x01\x00\x04\xfe\x38\ +\x00\x00\x10\xda\x00\x00\x00\x00\x00\x01\x00\x05\x0a\x14\ +\x00\x00\x10\xfe\x00\x00\x00\x00\x00\x01\x00\x05\x10\x58\ +\x00\x00\x11\x28\x00\x00\x00\x00\x00\x01\x00\x05\x17\xe1\ +\x00\x00\x11\x54\x00\x00\x00\x00\x00\x01\x00\x05\x1e\x3f\ +\x00\x00\x11\x8a\x00\x00\x00\x00\x00\x01\x00\x05\x26\x2e\ +\x00\x00\x09\x20\x00\x00\x00\x00\x00\x01\x00\x05\x33\xd1\ +\x00\x00\x09\x34\x00\x00\x00\x00\x00\x01\x00\x05\x39\x06\ +\x00\x00\x11\xa8\x00\x00\x00\x00\x00\x01\x00\x05\x42\xdb\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x98\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x99\ +\x00\x00\x11\xd0\x00\x00\x00\x00\x00\x01\x00\x05\x4a\xa5\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x9b\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x28\x00\x00\x00\x9c\ +\x00\x00\x11\xf0\x00\x00\x00\x00\x00\x01\x00\x05\x4f\x6b\ +\x00\x00\x12\x06\x00\x00\x00\x00\x00\x01\x00\x05\x57\x1f\ +\x00\x00\x12\x1e\x00\x00\x00\x00\x00\x01\x00\x05\x59\x44\ +\x00\x00\x12\x56\x00\x00\x00\x00\x00\x01\x00\x05\x5a\xc4\ +\x00\x00\x12\x72\x00\x00\x00\x00\x00\x01\x00\x05\x62\x71\ +\x00\x00\x12\x92\x00\x00\x00\x00\x00\x01\x00\x05\x67\x46\ +\x00\x00\x12\xa8\x00\x00\x00\x00\x00\x01\x00\x05\x68\x36\ +\x00\x00\x12\xbe\x00\x00\x00\x00\x00\x01\x00\x05\x6b\x1a\ +\x00\x00\x12\xe4\x00\x00\x00\x00\x00\x01\x00\x05\x71\x51\ +\x00\x00\x12\xfe\x00\x00\x00\x00\x00\x01\x00\x05\x86\x5e\ +\x00\x00\x13\x20\x00\x00\x00\x00\x00\x01\x00\x05\x8b\x4e\ +\x00\x00\x13\x36\x00\x00\x00\x00\x00\x01\x00\x05\x8e\x4d\ +\x00\x00\x13\x4c\x00\x00\x00\x00\x00\x01\x00\x05\x94\x57\ +\x00\x00\x13\x7e\x00\x00\x00\x00\x00\x01\x00\x05\x97\xa6\ +\x00\x00\x13\x96\x00\x00\x00\x00\x00\x01\x00\x05\xa1\x27\ +\x00\x00\x13\xac\x00\x00\x00\x00\x00\x01\x00\x05\xa7\x1e\ +\x00\x00\x13\xc0\x00\x00\x00\x00\x00\x01\x00\x05\xa9\x2f\ +\x00\x00\x13\xd8\x00\x00\x00\x00\x00\x01\x00\x05\xac\xf2\ +\x00\x00\x13\xfe\x00\x00\x00\x00\x00\x01\x00\x05\xb6\xa6\ +\x00\x00\x14\x28\x00\x00\x00\x00\x00\x01\x00\x05\xb9\xf4\ +\x00\x00\x14\x4a\x00\x00\x00\x00\x00\x01\x00\x05\xbd\x82\ +\x00\x00\x14\x70\x00\x00\x00\x00\x00\x01\x00\x05\xc2\x23\ +\x00\x00\x14\x84\x00\x00\x00\x00\x00\x01\x00\x05\xcb\xf5\ +\x00\x00\x14\xb0\x00\x00\x00\x00\x00\x01\x00\x05\xd1\x3f\ +\x00\x00\x14\xd8\x00\x00\x00\x00\x00\x01\x00\x05\xd7\x46\ +\x00\x00\x14\xee\x00\x00\x00\x00\x00\x01\x00\x05\xd8\x2a\ +\x00\x00\x15\x1a\x00\x00\x00\x00\x00\x01\x00\x05\xda\x73\ +\x00\x00\x15\x30\x00\x00\x00\x00\x00\x01\x00\x05\xe1\x23\ +\x00\x00\x15\x4c\x00\x00\x00\x00\x00\x01\x00\x05\xe4\x67\ +\x00\x00\x15\x64\x00\x00\x00\x00\x00\x01\x00\x05\xe5\x93\ +\x00\x00\x15\x7e\x00\x00\x00\x00\x00\x01\x00\x05\xeb\x54\ +\x00\x00\x15\xa0\x00\x00\x00\x00\x00\x01\x00\x05\xec\x76\ +\x00\x00\x15\xbe\x00\x00\x00\x00\x00\x01\x00\x05\xf2\x69\ +\x00\x00\x15\xde\x00\x00\x00\x00\x00\x01\x00\x05\xf5\x6d\ +\x00\x00\x16\x00\x00\x00\x00\x00\x00\x01\x00\x05\xf6\x8e\ +\x00\x00\x16\x20\x00\x00\x00\x00\x00\x01\x00\x05\xf9\x62\ +\x00\x00\x16\x4e\x00\x00\x00\x00\x00\x01\x00\x06\x01\xce\ +\x00\x00\x16\x72\x00\x00\x00\x00\x00\x01\x00\x06\x09\x8e\ +\x00\x00\x16\x96\x00\x00\x00\x00\x00\x01\x00\x06\x0e\xa9\ +\x00\x00\x16\xbe\x00\x00\x00\x00\x00\x01\x00\x06\x0f\xfc\ " qt_resource_struct_v2 = b"\ -\x00\x00\x00\x00\x00\x02\x00\x00\x00\x0f\x00\x00\x00\x01\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x10\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\x95\ +\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x9a\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x0a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x92\ +\x00\x00\x00\x0a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x97\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x1a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x86\ +\x00\x00\x00\x1a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x8b\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x46\x00\x02\x00\x00\x00\x01\x00\x00\x00\x7b\ +\x00\x00\x00\x46\x00\x02\x00\x00\x00\x01\x00\x00\x00\x80\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x5a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x77\ +\x00\x00\x00\x5a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x7c\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x6c\x00\x02\x00\x00\x00\x01\x00\x00\x00\x71\ +\x00\x00\x00\x6c\x00\x02\x00\x00\x00\x01\x00\x00\x00\x76\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x7e\x00\x02\x00\x00\x00\x01\x00\x00\x00\x63\ +\x00\x00\x00\x7e\x00\x02\x00\x00\x00\x01\x00\x00\x00\x68\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x90\x00\x02\x00\x00\x00\x01\x00\x00\x00\x59\ +\x00\x00\x00\x90\x00\x02\x00\x00\x00\x01\x00\x00\x00\x5e\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\xa2\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4a\ +\x00\x00\x00\xa2\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4f\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\xc0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x45\ +\x00\x00\x00\xc0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4a\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\xdc\x00\x02\x00\x00\x00\x01\x00\x00\x00\x35\ +\x00\x00\x00\xdc\x00\x02\x00\x00\x00\x01\x00\x00\x00\x3a\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x02\x00\x02\x00\x00\x00\x01\x00\x00\x00\x31\ +\x00\x00\x01\x02\x00\x02\x00\x00\x00\x01\x00\x00\x00\x36\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x2a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x25\ +\x00\x00\x01\x1a\x00\x02\x00\x00\x00\x01\x00\x00\x00\x32\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x50\x00\x02\x00\x00\x00\x01\x00\x00\x00\x1f\ +\x00\x00\x01\x42\x00\x02\x00\x00\x00\x01\x00\x00\x00\x26\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x6c\x00\x02\x00\x00\x00\x01\x00\x00\x00\x10\ +\x00\x00\x01\x68\x00\x02\x00\x00\x00\x01\x00\x00\x00\x20\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x11\ +\x00\x00\x01\x84\x00\x02\x00\x00\x00\x01\x00\x00\x00\x11\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0d\x00\x00\x00\x12\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x12\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\xb0\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0d\x00\x00\x00\x13\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x01\xc8\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x01\xd0\x00\x00\x00\x00\x00\x01\x00\x00\x08\x66\ +\x00\x00\x01\xe8\x00\x00\x00\x00\x00\x01\x00\x00\x08\x66\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x01\xf8\x00\x00\x00\x00\x00\x01\x00\x00\x09\x52\ +\x00\x00\x02\x10\x00\x00\x00\x00\x00\x01\x00\x00\x09\x52\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x02\x20\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x35\ +\x00\x00\x02\x38\x00\x00\x00\x00\x00\x01\x00\x00\x0a\x35\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x02\x48\x00\x00\x00\x00\x00\x01\x00\x00\x0b\x18\ +\x00\x00\x02\x60\x00\x00\x00\x00\x00\x01\x00\x00\x0b\x18\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x02\x70\x00\x00\x00\x00\x00\x01\x00\x00\x0c\x06\ +\x00\x00\x02\x88\x00\x00\x00\x00\x00\x01\x00\x00\x0c\x06\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x02\xa4\x00\x00\x00\x00\x00\x01\x00\x00\x14\x42\ +\x00\x00\x02\xbc\x00\x00\x00\x00\x00\x01\x00\x00\x14\x42\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x02\xd0\x00\x00\x00\x00\x00\x01\x00\x00\x1d\xf7\ +\x00\x00\x02\xe8\x00\x00\x00\x00\x00\x01\x00\x00\x1d\xf7\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x02\xfa\x00\x00\x00\x00\x00\x01\x00\x00\x22\x41\ +\x00\x00\x03\x12\x00\x00\x00\x00\x00\x01\x00\x00\x22\x41\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x03\x1a\x00\x00\x00\x00\x00\x01\x00\x00\x26\x90\ +\x00\x00\x03\x32\x00\x00\x00\x00\x00\x01\x00\x00\x26\x90\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x03\x36\x00\x00\x00\x00\x00\x01\x00\x00\x2c\x6e\ +\x00\x00\x03\x4e\x00\x00\x00\x00\x00\x01\x00\x00\x2c\x6e\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x03\x52\x00\x00\x00\x00\x00\x01\x00\x00\x30\xca\ +\x00\x00\x03\x6a\x00\x00\x00\x00\x00\x01\x00\x00\x30\xca\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x03\x7a\x00\x00\x00\x00\x00\x01\x00\x00\x32\xb1\ +\x00\x00\x03\x92\x00\x00\x00\x00\x00\x01\x00\x00\x32\xb1\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x20\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x21\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x04\x00\x00\x00\x21\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x04\x00\x00\x00\x22\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x03\x9a\x00\x00\x00\x00\x00\x01\x00\x00\x3a\x55\ +\x00\x00\x03\xb2\x00\x00\x00\x00\x00\x01\x00\x00\x3a\x55\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x03\xbe\x00\x00\x00\x00\x00\x01\x00\x00\x3c\xcf\ +\x00\x00\x03\xd6\x00\x00\x00\x00\x00\x01\x00\x00\x3c\xcf\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x03\xe0\x00\x00\x00\x00\x00\x01\x00\x00\x3f\x43\ +\x00\x00\x03\xf8\x00\x00\x00\x00\x00\x01\x00\x00\x3f\x43\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x03\xfe\x00\x00\x00\x00\x00\x01\x00\x00\x41\xbf\ +\x00\x00\x04\x16\x00\x00\x00\x00\x00\x01\x00\x00\x41\xbf\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x26\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x27\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x27\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x28\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x04\x20\x00\x00\x00\x00\x00\x01\x00\x00\x44\x3b\ +\x00\x00\x04\x38\x00\x00\x00\x00\x00\x01\x00\x00\x44\x3b\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x04\x3a\x00\x00\x00\x00\x00\x01\x00\x00\x45\x3c\ +\x00\x00\x04\x52\x00\x00\x00\x00\x00\x01\x00\x00\x45\x3c\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x04\x6a\x00\x00\x00\x00\x00\x01\x00\x00\x4a\x54\ +\x00\x00\x04\x82\x00\x00\x00\x00\x00\x01\x00\x00\x4a\x54\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x04\x9a\x00\x00\x00\x00\x00\x01\x00\x00\x56\x16\ +\x00\x00\x04\xb2\x00\x00\x00\x00\x00\x01\x00\x00\x56\x16\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x04\xc4\x00\x00\x00\x00\x00\x01\x00\x00\x58\x86\ +\x00\x00\x04\xdc\x00\x00\x00\x00\x00\x01\x00\x00\x58\x86\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x04\xea\x00\x00\x00\x00\x00\x01\x00\x00\x5e\x1e\ +\x00\x00\x05\x02\x00\x00\x00\x00\x00\x01\x00\x00\x5e\x1e\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x05\x0e\x00\x00\x00\x00\x00\x01\x00\x00\x62\x7a\ +\x00\x00\x05\x26\x00\x00\x00\x00\x00\x01\x00\x00\x62\x7a\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x05\x48\x00\x00\x00\x00\x00\x01\x00\x00\x69\x07\ +\x00\x00\x05\x60\x00\x00\x00\x00\x00\x01\x00\x00\x69\x07\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x05\x64\x00\x00\x00\x00\x00\x01\x00\x00\x6c\x03\ +\x00\x00\x05\x7c\x00\x00\x00\x00\x00\x01\x00\x00\x6c\x03\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x05\x8c\x00\x00\x00\x00\x00\x01\x00\x00\x6d\x01\ +\x00\x00\x05\xa4\x00\x00\x00\x00\x00\x01\x00\x00\x6d\x01\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x32\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x33\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x02\x00\x00\x00\x33\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x02\x00\x00\x00\x34\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x05\xbe\x00\x01\x00\x00\x00\x01\x00\x00\x77\x6b\ +\x00\x00\x05\xd6\x00\x01\x00\x00\x00\x01\x00\x00\x77\x6b\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x05\xd0\x00\x00\x00\x00\x00\x01\x00\x02\x3a\xc0\ +\x00\x00\x05\xe8\x00\x00\x00\x00\x00\x01\x00\x02\x3a\xc0\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x02\x00\x00\x00\x36\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x37\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x02\x00\x00\x00\x38\ +\x00\x00\x00\x00\x00\x00\x00\x00\ +\x00\x00\x05\xfc\x00\x00\x00\x00\x00\x01\x00\x02\x3f\x46\ +\x00\x00\x01\x9b\xa3\xc0\xdd\x25\ +\x00\x00\x06\x2a\x00\x00\x00\x00\x00\x01\x00\x02\x41\x71\ +\x00\x00\x01\x9b\xa3\xc0\xdd\x25\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x02\x00\x00\x00\x3b\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x06\x00\x00\x00\x3f\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x06\x00\x00\x00\x44\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x05\xe4\x00\x02\x00\x00\x00\x07\x00\x00\x00\x38\ +\x00\x00\x06\x5a\x00\x02\x00\x00\x00\x07\x00\x00\x00\x3d\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x05\xf6\x00\x00\x00\x00\x00\x01\x00\x02\x3f\x46\ +\x00\x00\x06\x6c\x00\x00\x00\x00\x00\x01\x00\x02\x43\x77\ \x00\x00\x01\x9a\x72\xe1\x95\x8f\ -\x00\x00\x06\x2a\x00\x00\x00\x00\x00\x01\x00\x02\x49\xaa\ +\x00\x00\x06\xa0\x00\x00\x00\x00\x00\x01\x00\x02\x4d\xdb\ \x00\x00\x01\x9a\x72\xe1\x95\x93\ -\x00\x00\x06\x5e\x00\x00\x00\x00\x00\x01\x00\x02\x53\xd3\ +\x00\x00\x06\xd4\x00\x00\x00\x00\x00\x01\x00\x02\x58\x04\ \x00\x00\x01\x9a\x72\xe1\x95\x8f\ -\x00\x00\x06\x98\x00\x00\x00\x00\x00\x01\x00\x02\x5e\x2b\ +\x00\x00\x07\x0e\x00\x00\x00\x00\x00\x01\x00\x02\x62\x5c\ \x00\x00\x01\x9a\x72\xe1\x95\x93\ -\x00\x00\x06\xcc\x00\x00\x00\x00\x00\x01\x00\x02\x68\x43\ +\x00\x00\x07\x42\x00\x00\x00\x00\x00\x01\x00\x02\x6c\x74\ \x00\x00\x01\x9a\x72\xe1\x95\x8f\ -\x00\x00\x07\x02\x00\x00\x00\x00\x00\x01\x00\x02\x72\x6c\ +\x00\x00\x07\x78\x00\x00\x00\x00\x00\x01\x00\x02\x76\x9d\ \x00\x00\x01\x9a\x72\xe1\x95\x93\ -\x00\x00\x07\x3a\x00\x00\x00\x00\x00\x01\x00\x02\x7c\x82\ +\x00\x00\x07\xb0\x00\x00\x00\x00\x00\x01\x00\x02\x80\xb3\ \x00\x00\x01\x9a\x72\xe1\x95\x93\ -\x00\x00\x07\x70\x00\x00\x00\x00\x00\x01\x00\x02\x86\xe8\ +\x00\x00\x07\xe6\x00\x00\x00\x00\x00\x01\x00\x02\x8b\x19\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x07\x98\x00\x00\x00\x00\x00\x01\x00\x02\x91\x17\ +\x00\x00\x08\x0e\x00\x00\x00\x00\x00\x01\x00\x02\x95\x48\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x07\xc4\x00\x00\x00\x00\x00\x01\x00\x02\x9b\x5e\ +\x00\x00\x08\x3a\x00\x00\x00\x00\x00\x01\x00\x02\x9f\x8f\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x08\x00\x00\x00\x00\x00\x00\x01\x00\x02\x9d\x5f\ +\x00\x00\x08\x76\x00\x00\x00\x00\x00\x01\x00\x02\xa1\x90\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x08\x2c\x00\x00\x00\x00\x00\x01\x00\x02\xb8\xa4\ +\x00\x00\x08\xa2\x00\x00\x00\x00\x00\x01\x00\x02\xbc\xd5\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x08\x58\x00\x00\x00\x00\x00\x01\x00\x02\xbd\xed\ +\x00\x00\x08\xce\x00\x00\x00\x00\x00\x01\x00\x02\xc2\x1e\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x46\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4b\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x03\x00\x00\x00\x47\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x03\x00\x00\x00\x4c\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x08\x8c\x00\x00\x00\x00\x00\x01\x00\x02\xc1\x65\ +\x00\x00\x09\x02\x00\x00\x00\x00\x00\x01\x00\x02\xc5\x96\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x08\xaa\x00\x00\x00\x00\x00\x01\x00\x02\xca\x47\ +\x00\x00\x09\x20\x00\x00\x00\x00\x00\x01\x00\x02\xce\x78\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x08\xbe\x00\x00\x00\x00\x00\x01\x00\x02\xcf\x7c\ +\x00\x00\x09\x34\x00\x00\x00\x00\x00\x01\x00\x02\xd3\xad\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x4b\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x50\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0d\x00\x00\x00\x4c\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0d\x00\x00\x00\x51\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x08\xd8\x00\x00\x00\x00\x00\x01\x00\x02\xd9\x51\ +\x00\x00\x09\x4e\x00\x00\x00\x00\x00\x01\x00\x02\xdd\x82\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x09\x00\x00\x00\x00\x00\x00\x01\x00\x02\xde\x4c\ +\x00\x00\x09\x76\x00\x00\x00\x00\x00\x01\x00\x02\xe2\x7d\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x09\x38\x00\x00\x00\x00\x00\x01\x00\x02\xe7\x20\ +\x00\x00\x09\xae\x00\x00\x00\x00\x00\x01\x00\x02\xeb\x51\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x09\x70\x00\x00\x00\x00\x00\x01\x00\x02\xef\xc4\ +\x00\x00\x09\xe6\x00\x00\x00\x00\x00\x01\x00\x02\xf3\xf5\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x09\xa0\x00\x00\x00\x00\x00\x01\x00\x02\xf7\x63\ +\x00\x00\x0a\x16\x00\x00\x00\x00\x00\x01\x00\x02\xfb\x94\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x09\xc4\x00\x00\x00\x00\x00\x01\x00\x02\xff\x3f\ +\x00\x00\x0a\x3a\x00\x00\x00\x00\x00\x01\x00\x03\x03\x70\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x09\xe8\x00\x00\x00\x00\x00\x01\x00\x03\x06\xf5\ +\x00\x00\x0a\x5e\x00\x00\x00\x00\x00\x01\x00\x03\x0b\x26\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x0a\x1c\x00\x00\x00\x00\x00\x01\x00\x03\x0f\x03\ +\x00\x00\x0a\x92\x00\x00\x00\x00\x00\x01\x00\x03\x13\x34\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x0a\x50\x00\x00\x00\x00\x00\x01\x00\x03\x16\xe5\ +\x00\x00\x0a\xc6\x00\x00\x00\x00\x00\x01\x00\x03\x1b\x16\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x0a\x84\x00\x00\x00\x00\x00\x01\x00\x03\x1e\xaf\ +\x00\x00\x0a\xfa\x00\x00\x00\x00\x00\x01\x00\x03\x22\xe0\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x0a\xbe\x00\x00\x00\x00\x00\x01\x00\x03\x26\x16\ +\x00\x00\x0b\x34\x00\x00\x00\x00\x00\x01\x00\x03\x2a\x47\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0a\xe2\x00\x00\x00\x00\x00\x01\x00\x03\x29\xd3\ +\x00\x00\x0b\x58\x00\x00\x00\x00\x00\x01\x00\x03\x2e\x04\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0b\x10\x00\x00\x00\x00\x00\x01\x00\x03\x2d\xac\ +\x00\x00\x0b\x86\x00\x00\x00\x00\x00\x01\x00\x03\x31\xdd\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x5a\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x5f\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x08\x00\x00\x00\x5b\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x08\x00\x00\x00\x60\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x0b\x36\x00\x00\x00\x00\x00\x01\x00\x03\x33\xb5\ +\x00\x00\x0b\xac\x00\x00\x00\x00\x00\x01\x00\x03\x37\xe6\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x0b\x62\x00\x00\x00\x00\x00\x01\x00\x03\x56\x39\ +\x00\x00\x0b\xd8\x00\x00\x00\x00\x00\x01\x00\x03\x5a\x6a\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x0b\x90\x00\x00\x00\x00\x00\x01\x00\x03\x5c\x26\ +\x00\x00\x0c\x06\x00\x00\x00\x00\x00\x01\x00\x03\x60\x57\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0b\xba\x00\x00\x00\x00\x00\x01\x00\x03\x5e\x46\ +\x00\x00\x0c\x30\x00\x00\x00\x00\x00\x01\x00\x03\x62\x77\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0b\xe2\x00\x00\x00\x00\x00\x01\x00\x03\x66\xde\ +\x00\x00\x0c\x58\x00\x00\x00\x00\x00\x01\x00\x03\x6b\x0f\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x0b\xfc\x00\x00\x00\x00\x00\x01\x00\x03\x76\x27\ +\x00\x00\x0c\x72\x00\x00\x00\x00\x00\x01\x00\x03\x7a\x58\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x0c\x28\x00\x00\x00\x00\x00\x01\x00\x03\x7c\xa5\ +\x00\x00\x0c\x9e\x00\x00\x00\x00\x00\x01\x00\x03\x80\xd6\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x0c\x50\x00\x00\x00\x00\x00\x01\x00\x03\x87\x1f\ +\x00\x00\x0c\xc6\x00\x00\x00\x00\x00\x01\x00\x03\x8b\x50\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x64\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x69\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0c\x00\x00\x00\x65\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0c\x00\x00\x00\x6a\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x0c\x86\x00\x00\x00\x00\x00\x01\x00\x03\x90\x66\ +\x00\x00\x0c\xfc\x00\x00\x00\x00\x00\x01\x00\x03\x94\x97\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x0c\xb4\x00\x00\x00\x00\x00\x01\x00\x03\x93\x0d\ +\x00\x00\x0d\x2a\x00\x00\x00\x00\x00\x01\x00\x03\x97\x3e\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0c\xe2\x00\x01\x00\x00\x00\x01\x00\x03\x9f\x8a\ +\x00\x00\x0d\x58\x00\x01\x00\x00\x00\x01\x00\x03\xa3\xbb\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0d\x0e\x00\x00\x00\x00\x00\x01\x00\x03\xcd\x09\ +\x00\x00\x0d\x84\x00\x00\x00\x00\x00\x01\x00\x03\xd1\x3a\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x0d\x2e\x00\x00\x00\x00\x00\x01\x00\x03\xd1\xc0\ +\x00\x00\x0d\xa4\x00\x00\x00\x00\x00\x01\x00\x03\xd5\xf1\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x0d\x60\x00\x01\x00\x00\x00\x01\x00\x04\x2a\xb9\ +\x00\x00\x0d\xd6\x00\x01\x00\x00\x00\x01\x00\x04\x2e\xea\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x0d\x92\x00\x00\x00\x00\x00\x01\x00\x04\x5f\x53\ +\x00\x00\x0e\x08\x00\x00\x00\x00\x00\x01\x00\x04\x63\x84\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0d\xac\x00\x00\x00\x00\x00\x01\x00\x04\x64\x9d\ +\x00\x00\x0e\x22\x00\x00\x00\x00\x00\x01\x00\x04\x68\xce\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0d\xc6\x00\x00\x00\x00\x00\x01\x00\x04\x6a\x2c\ +\x00\x00\x0e\x3c\x00\x00\x00\x00\x00\x01\x00\x04\x6e\x5d\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0d\xe0\x00\x00\x00\x00\x00\x01\x00\x04\x6f\x95\ +\x00\x00\x0e\x56\x00\x00\x00\x00\x00\x01\x00\x04\x73\xc6\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x0d\xf8\x00\x00\x00\x00\x00\x01\x00\x04\x7b\x73\ +\x00\x00\x0e\x6e\x00\x00\x00\x00\x00\x01\x00\x04\x7f\xa4\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0e\x16\x00\x00\x00\x00\x00\x01\x00\x04\x81\x77\ +\x00\x00\x0e\x8c\x00\x00\x00\x00\x00\x01\x00\x04\x85\xa8\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x72\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x77\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x04\x00\x00\x00\x73\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x04\x00\x00\x00\x78\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x0e\x3e\x00\x00\x00\x00\x00\x01\x00\x04\x86\xac\ +\x00\x00\x0e\xb4\x00\x00\x00\x00\x00\x01\x00\x04\x8a\xdd\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x0e\x52\x00\x00\x00\x00\x00\x01\x00\x04\x8c\xa9\ +\x00\x00\x0e\xc8\x00\x00\x00\x00\x00\x01\x00\x04\x90\xda\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x0e\x64\x00\x00\x00\x00\x00\x01\x00\x04\x8e\x2f\ +\x00\x00\x0e\xda\x00\x00\x00\x00\x00\x01\x00\x04\x92\x60\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x0e\x76\x00\x00\x00\x00\x00\x01\x00\x04\x94\x29\ +\x00\x00\x0e\xec\x00\x00\x00\x00\x00\x01\x00\x04\x98\x5a\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x78\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x7d\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x02\x00\x00\x00\x79\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x02\x00\x00\x00\x7e\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x0e\x8a\x00\x00\x00\x00\x00\x01\x00\x04\x96\x7f\ +\x00\x00\x0f\x00\x00\x00\x00\x00\x00\x01\x00\x04\x9a\xb0\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x0e\xb6\x00\x00\x00\x00\x00\x01\x00\x04\x9d\x66\ +\x00\x00\x0f\x2c\x00\x00\x00\x00\x00\x01\x00\x04\xa1\x97\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x7c\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x81\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x09\x00\x00\x00\x7d\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x09\x00\x00\x00\x82\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x0e\xda\x00\x00\x00\x00\x00\x01\x00\x04\xa6\xca\ -\x00\x00\x01\x9b\x13\x3e\xbb\x62\ -\x00\x00\x0e\xfa\x00\x01\x00\x00\x00\x01\x00\x04\xa9\x76\ +\x00\x00\x0f\x50\x00\x00\x00\x00\x00\x01\x00\x04\xaa\xfb\ +\x00\x00\x01\x9b\x7f\x73\xe2\xad\ +\x00\x00\x0f\x70\x00\x01\x00\x00\x00\x01\x00\x04\xad\xa7\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x0f\x1e\x00\x00\x00\x00\x00\x01\x00\x04\xb4\xc7\ +\x00\x00\x0f\x94\x00\x00\x00\x00\x00\x01\x00\x04\xb8\xf8\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x0f\x40\x00\x00\x00\x00\x00\x01\x00\x04\xbc\x6c\ +\x00\x00\x0f\xb6\x00\x00\x00\x00\x00\x01\x00\x04\xc0\x9d\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x0f\x5c\x00\x00\x00\x00\x00\x01\x00\x04\xcd\x6c\ +\x00\x00\x0f\xd2\x00\x00\x00\x00\x00\x01\x00\x04\xd1\x9d\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x0f\x80\x00\x00\x00\x00\x00\x01\x00\x04\xd6\xed\ -\x00\x00\x01\x9b\x13\x3e\xbb\x62\ -\x00\x00\x0f\xa0\x00\x00\x00\x00\x00\x01\x00\x04\xdc\x8a\ +\x00\x00\x0f\xf6\x00\x00\x00\x00\x00\x01\x00\x04\xdb\x1e\ +\x00\x00\x01\x9b\x7f\x73\xe2\xad\ +\x00\x00\x10\x16\x00\x00\x00\x00\x00\x01\x00\x04\xe0\xbb\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x0f\xc8\x00\x00\x00\x00\x00\x01\x00\x04\xe6\x53\ -\x00\x00\x01\x9b\x13\x3e\xbb\x62\ -\x00\x00\x0f\xe8\x00\x00\x00\x00\x00\x01\x00\x04\xea\x36\ +\x00\x00\x10\x3e\x00\x00\x00\x00\x00\x01\x00\x04\xea\x84\ +\x00\x00\x01\x9b\x7f\x73\xe2\xad\ +\x00\x00\x10\x5e\x00\x00\x00\x00\x00\x01\x00\x04\xee\x67\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x87\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x8c\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x88\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x8d\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x10\x04\x00\x00\x00\x00\x00\x01\x00\x04\xf0\x71\ +\x00\x00\x10\x7a\x00\x00\x00\x00\x00\x01\x00\x04\xf4\xa2\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x10\x34\x00\x00\x00\x00\x00\x01\x00\x04\xfa\x07\ +\x00\x00\x10\xaa\x00\x00\x00\x00\x00\x01\x00\x04\xfe\x38\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x10\x64\x00\x00\x00\x00\x00\x01\x00\x05\x05\xe3\ +\x00\x00\x10\xda\x00\x00\x00\x00\x00\x01\x00\x05\x0a\x14\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x10\x88\x00\x00\x00\x00\x00\x01\x00\x05\x0c\x27\ +\x00\x00\x10\xfe\x00\x00\x00\x00\x00\x01\x00\x05\x10\x58\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x10\xb2\x00\x00\x00\x00\x00\x01\x00\x05\x13\xb0\ +\x00\x00\x11\x28\x00\x00\x00\x00\x00\x01\x00\x05\x17\xe1\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x10\xde\x00\x00\x00\x00\x00\x01\x00\x05\x1a\x0e\ +\x00\x00\x11\x54\x00\x00\x00\x00\x00\x01\x00\x05\x1e\x3f\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x11\x14\x00\x00\x00\x00\x00\x01\x00\x05\x21\xfd\ +\x00\x00\x11\x8a\x00\x00\x00\x00\x00\x01\x00\x05\x26\x2e\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x08\xaa\x00\x00\x00\x00\x00\x01\x00\x05\x2f\xa0\ +\x00\x00\x09\x20\x00\x00\x00\x00\x00\x01\x00\x05\x33\xd1\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x08\xbe\x00\x00\x00\x00\x00\x01\x00\x05\x34\xd5\ +\x00\x00\x09\x34\x00\x00\x00\x00\x00\x01\x00\x05\x39\x06\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x11\x32\x00\x00\x00\x00\x00\x01\x00\x05\x3e\xaa\ +\x00\x00\x11\xa8\x00\x00\x00\x00\x00\x01\x00\x05\x42\xdb\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x93\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x98\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x01\x00\x00\x00\x94\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x99\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x11\x5a\x00\x00\x00\x00\x00\x01\x00\x05\x46\x74\ +\x00\x00\x11\xd0\x00\x00\x00\x00\x00\x01\x00\x05\x4a\xa5\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x01\x88\x00\x02\x00\x00\x00\x01\x00\x00\x00\x96\ +\x00\x00\x01\xa0\x00\x02\x00\x00\x00\x01\x00\x00\x00\x9b\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x01\x98\x00\x02\x00\x00\x00\x28\x00\x00\x00\x97\ +\x00\x00\x01\xb0\x00\x02\x00\x00\x00\x28\x00\x00\x00\x9c\ \x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x11\x7a\x00\x00\x00\x00\x00\x01\x00\x05\x4b\x3a\ +\x00\x00\x11\xf0\x00\x00\x00\x00\x00\x01\x00\x05\x4f\x6b\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x11\x90\x00\x00\x00\x00\x00\x01\x00\x05\x52\xee\ +\x00\x00\x12\x06\x00\x00\x00\x00\x00\x01\x00\x05\x57\x1f\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x11\xa8\x00\x00\x00\x00\x00\x01\x00\x05\x55\x13\ +\x00\x00\x12\x1e\x00\x00\x00\x00\x00\x01\x00\x05\x59\x44\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x11\xe0\x00\x00\x00\x00\x00\x01\x00\x05\x56\x93\ +\x00\x00\x12\x56\x00\x00\x00\x00\x00\x01\x00\x05\x5a\xc4\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x11\xfc\x00\x00\x00\x00\x00\x01\x00\x05\x5e\x40\ +\x00\x00\x12\x72\x00\x00\x00\x00\x00\x01\x00\x05\x62\x71\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x12\x1c\x00\x00\x00\x00\x00\x01\x00\x05\x63\x15\ +\x00\x00\x12\x92\x00\x00\x00\x00\x00\x01\x00\x05\x67\x46\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x12\x32\x00\x00\x00\x00\x00\x01\x00\x05\x64\x05\ +\x00\x00\x12\xa8\x00\x00\x00\x00\x00\x01\x00\x05\x68\x36\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x12\x48\x00\x00\x00\x00\x00\x01\x00\x05\x66\xe9\ +\x00\x00\x12\xbe\x00\x00\x00\x00\x00\x01\x00\x05\x6b\x1a\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x12\x6e\x00\x00\x00\x00\x00\x01\x00\x05\x6d\x20\ +\x00\x00\x12\xe4\x00\x00\x00\x00\x00\x01\x00\x05\x71\x51\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x12\x88\x00\x00\x00\x00\x00\x01\x00\x05\x82\x2d\ +\x00\x00\x12\xfe\x00\x00\x00\x00\x00\x01\x00\x05\x86\x5e\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x12\xaa\x00\x00\x00\x00\x00\x01\x00\x05\x87\x1d\ +\x00\x00\x13\x20\x00\x00\x00\x00\x00\x01\x00\x05\x8b\x4e\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x12\xc0\x00\x00\x00\x00\x00\x01\x00\x05\x8a\x1c\ +\x00\x00\x13\x36\x00\x00\x00\x00\x00\x01\x00\x05\x8e\x4d\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x12\xd6\x00\x00\x00\x00\x00\x01\x00\x05\x90\x26\ +\x00\x00\x13\x4c\x00\x00\x00\x00\x00\x01\x00\x05\x94\x57\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x13\x08\x00\x00\x00\x00\x00\x01\x00\x05\x93\x75\ +\x00\x00\x13\x7e\x00\x00\x00\x00\x00\x01\x00\x05\x97\xa6\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x13\x20\x00\x00\x00\x00\x00\x01\x00\x05\x9c\xf6\ +\x00\x00\x13\x96\x00\x00\x00\x00\x00\x01\x00\x05\xa1\x27\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x13\x36\x00\x00\x00\x00\x00\x01\x00\x05\xa2\xed\ +\x00\x00\x13\xac\x00\x00\x00\x00\x00\x01\x00\x05\xa7\x1e\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x13\x4a\x00\x00\x00\x00\x00\x01\x00\x05\xa4\xfe\ +\x00\x00\x13\xc0\x00\x00\x00\x00\x00\x01\x00\x05\xa9\x2f\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x13\x62\x00\x00\x00\x00\x00\x01\x00\x05\xa8\xc1\ +\x00\x00\x13\xd8\x00\x00\x00\x00\x00\x01\x00\x05\xac\xf2\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ -\x00\x00\x13\x88\x00\x00\x00\x00\x00\x01\x00\x05\xb2\x75\ +\x00\x00\x13\xfe\x00\x00\x00\x00\x00\x01\x00\x05\xb6\xa6\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x13\xb2\x00\x00\x00\x00\x00\x01\x00\x05\xb5\xc3\ +\x00\x00\x14\x28\x00\x00\x00\x00\x00\x01\x00\x05\xb9\xf4\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x13\xd4\x00\x00\x00\x00\x00\x01\x00\x05\xb9\x51\ +\x00\x00\x14\x4a\x00\x00\x00\x00\x00\x01\x00\x05\xbd\x82\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x13\xfa\x00\x00\x00\x00\x00\x01\x00\x05\xbd\xf2\ +\x00\x00\x14\x70\x00\x00\x00\x00\x00\x01\x00\x05\xc2\x23\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x14\x0e\x00\x00\x00\x00\x00\x01\x00\x05\xc7\xc4\ +\x00\x00\x14\x84\x00\x00\x00\x00\x00\x01\x00\x05\xcb\xf5\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x14\x3a\x00\x00\x00\x00\x00\x01\x00\x05\xcd\x0e\ +\x00\x00\x14\xb0\x00\x00\x00\x00\x00\x01\x00\x05\xd1\x3f\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x14\x62\x00\x00\x00\x00\x00\x01\x00\x05\xd3\x15\ +\x00\x00\x14\xd8\x00\x00\x00\x00\x00\x01\x00\x05\xd7\x46\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x14\x78\x00\x00\x00\x00\x00\x01\x00\x05\xd3\xf9\ +\x00\x00\x14\xee\x00\x00\x00\x00\x00\x01\x00\x05\xd8\x2a\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x14\xa4\x00\x00\x00\x00\x00\x01\x00\x05\xd6\x42\ +\x00\x00\x15\x1a\x00\x00\x00\x00\x00\x01\x00\x05\xda\x73\ \x00\x00\x01\x9a\x72\xe1\x94\x5b\ -\x00\x00\x14\xba\x00\x00\x00\x00\x00\x01\x00\x05\xdc\xf2\ +\x00\x00\x15\x30\x00\x00\x00\x00\x00\x01\x00\x05\xe1\x23\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x14\xd6\x00\x00\x00\x00\x00\x01\x00\x05\xe0\x36\ +\x00\x00\x15\x4c\x00\x00\x00\x00\x00\x01\x00\x05\xe4\x67\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x14\xee\x00\x00\x00\x00\x00\x01\x00\x05\xe1\x62\ +\x00\x00\x15\x64\x00\x00\x00\x00\x00\x01\x00\x05\xe5\x93\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x15\x08\x00\x00\x00\x00\x00\x01\x00\x05\xe7\x23\ +\x00\x00\x15\x7e\x00\x00\x00\x00\x00\x01\x00\x05\xeb\x54\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x15\x2a\x00\x00\x00\x00\x00\x01\x00\x05\xe8\x45\ +\x00\x00\x15\xa0\x00\x00\x00\x00\x00\x01\x00\x05\xec\x76\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x15\x48\x00\x00\x00\x00\x00\x01\x00\x05\xee\x38\ +\x00\x00\x15\xbe\x00\x00\x00\x00\x00\x01\x00\x05\xf2\x69\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x15\x68\x00\x00\x00\x00\x00\x01\x00\x05\xf1\x3c\ +\x00\x00\x15\xde\x00\x00\x00\x00\x00\x01\x00\x05\xf5\x6d\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x15\x8a\x00\x00\x00\x00\x00\x01\x00\x05\xf2\x5d\ +\x00\x00\x16\x00\x00\x00\x00\x00\x00\x01\x00\x05\xf6\x8e\ \x00\x00\x01\x9a\x72\xe1\x94\x57\ -\x00\x00\x15\xaa\x00\x00\x00\x00\x00\x01\x00\x05\xf5\x31\ +\x00\x00\x16\x20\x00\x00\x00\x00\x00\x01\x00\x05\xf9\x62\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x15\xd8\x00\x00\x00\x00\x00\x01\x00\x05\xfd\x9d\ +\x00\x00\x16\x4e\x00\x00\x00\x00\x00\x01\x00\x06\x01\xce\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x15\xfc\x00\x00\x00\x00\x00\x01\x00\x06\x05\x5d\ +\x00\x00\x16\x72\x00\x00\x00\x00\x00\x01\x00\x06\x09\x8e\ \x00\x00\x01\x9a\x72\xe1\x94\x53\ -\x00\x00\x16\x20\x00\x00\x00\x00\x00\x01\x00\x06\x0a\x78\ +\x00\x00\x16\x96\x00\x00\x00\x00\x00\x01\x00\x06\x0e\xa9\ \x00\x00\x01\x9a\x72\xe1\x94\x4f\ -\x00\x00\x16\x48\x00\x00\x00\x00\x00\x01\x00\x06\x0b\xcb\ +\x00\x00\x16\xbe\x00\x00\x00\x00\x00\x01\x00\x06\x0f\xfc\ \x00\x00\x01\x9a\x72\xe1\x94\x4b\ " diff --git a/BlocksScreen/lib/ui/resources/media/btn_icons/move_nozzle_away.svg b/BlocksScreen/lib/ui/resources/media/btn_icons/move_nozzle_away.svg new file mode 100644 index 00000000..ac52e9a5 --- /dev/null +++ b/BlocksScreen/lib/ui/resources/media/btn_icons/move_nozzle_away.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/BlocksScreen/lib/ui/resources/media/btn_icons/move_nozzle_close.svg b/BlocksScreen/lib/ui/resources/media/btn_icons/move_nozzle_close.svg new file mode 100644 index 00000000..6b633e62 --- /dev/null +++ b/BlocksScreen/lib/ui/resources/media/btn_icons/move_nozzle_close.svg @@ -0,0 +1,12 @@ + + + + + + + + \ No newline at end of file From f533975b4defffedf5da54436a8741e3055de23b Mon Sep 17 00:00:00 2001 From: Guilherme Costa Date: Mon, 12 Jan 2026 14:15:24 +0000 Subject: [PATCH 2/3] babystepPage and printTab: bugfix showing the current saved z-offset --- BlocksScreen/lib/panels/printTab.py | 30 +++++------ .../lib/panels/widgets/babystepPage.py | 53 +++++++++---------- 2 files changed, 37 insertions(+), 46 deletions(-) diff --git a/BlocksScreen/lib/panels/printTab.py b/BlocksScreen/lib/panels/printTab.py index c15d32af..baaaf314 100644 --- a/BlocksScreen/lib/panels/printTab.py +++ b/BlocksScreen/lib/panels/printTab.py @@ -65,6 +65,7 @@ class PrintTab(QtWidgets.QStackedWidget): ) _z_offset: float = 0.0 + _active_z_offset: float = 0.0 _finish_print_handled: bool = False def __init__( @@ -317,15 +318,21 @@ def delete_file(self, filename: str, directory: str = "gcodes") -> None: def save_config(self) -> None: """Handle Save configuration behaviour, shows confirmation dialog""" - self.run_gcode_signal.emit("Z_OFFSET_APPLY_PROBE") + if self._finish_print_handled: + self.run_gcode_signal.emit("Z_OFFSET_APPLY_PROBE") + self._z_offset = self._active_z_offset + self.babystepPage.bbp_z_offset_title_label.setText( + f"Z: {self._z_offset:.3f}mm" + ) self.BasePopup_z_offset.set_message( - f"There is a change in the Z-Offset of {self._z_offset:.3f} mm,\n do you wish to save it permanently?\nThe machine will restart" + f"There is a change in the Z-Offset of {self._active_z_offset:.3f} mm,\n do you wish to save it permanently?\nThe machine will restart" ) self.BasePopup_z_offset.cancel_button_text("Later") self.BasePopup_z_offset.open() def update_configuration_file(self): """Runs the `SAVE_CONFIG` gcode""" + self.run_gcode_signal.emit("Z_OFFSET_APPLY_PROBE") self.run_gcode_signal.emit("SAVE_CONFIG") self.BasePopup_z_offset.disconnect() @@ -336,7 +343,7 @@ def activate_save_button(self, name: str, value: list) -> None: return if name == "homing_origin": - self._z_offset = value[2] + self._active_z_offset = value[2] self.save_config_btn.setVisible(value[2] != 0) def _on_delete_file_confirmed(self, filename: str, directory: str) -> None: @@ -346,19 +353,6 @@ def _on_delete_file_confirmed(self, filename: str, directory: str) -> None: self.filesPage_widget.reset_dir() self.BasePopup.disconnect() - def paintEvent(self, a0: QtGui.QPaintEvent) -> None: - """Widget painting""" - if self.babystepPage.isVisible(): - _button_name_str = f"nozzle_offset_{self._z_offset}" - if hasattr(self, _button_name_str): - _button_attr = getattr(self, _button_name_str) - if callable(_button_attr) and isinstance( - _button_attr, BlocksCustomButton - ): - _button_attr.setChecked(True) - - return super().paintEvent(a0) - def setProperty(self, name: str, value: typing.Any) -> bool: """Intercept the set property method @@ -405,9 +399,9 @@ def finish_print_signal(self) -> None: """Behaviour when the print ends — but only once.""" if self._finish_print_handled: return - if self._z_offset != 0 and self.babystepPage.baby_stepchange: - self._finish_print_handled = True + if self._active_z_offset != 0 and self.babystepPage.baby_stepchange: self.save_config() + self._finish_print_handled = True def setupMainPrintPage(self) -> None: """Setup UI for print page""" diff --git a/BlocksScreen/lib/panels/widgets/babystepPage.py b/BlocksScreen/lib/panels/widgets/babystepPage.py index daa2e15b..273e8f9c 100644 --- a/BlocksScreen/lib/panels/widgets/babystepPage.py +++ b/BlocksScreen/lib/panels/widgets/babystepPage.py @@ -89,8 +89,6 @@ def on_gcode_move_update(self, name: str, value: list) -> None: if name == "homing_origin": self._z_offset_text = value[2] self.bbp_z_offset_current_value.setText(f"Z: {self._z_offset_text:.3f}mm") - if self.bbp_z_offset_title_label.text() == "smth": - self.bbp_z_offset_title_label.setText(f"Z: {self._z_offset_text:.3f}mm") def setupUI(self): """Setup babystep page ui""" @@ -226,6 +224,30 @@ def setupUI(self): QtCore.Qt.AlignmentFlag.AlignHCenter | QtCore.Qt.AlignmentFlag.AlignVCenter, ) + # 0.05mm button + self.bbp_nozzle_offset_05 = BlocksCustomCheckButton( + parent=self.bbp_offset_steps_buttons_group_box + ) + self.bbp_nozzle_offset_05.setMinimumSize(QtCore.QSize(100, 70)) + self.bbp_nozzle_offset_05.setMaximumSize( + QtCore.QSize(100, 70) + ) # Increased max width by 5 pixels + self.bbp_nozzle_offset_05.setText("0.05 mm") + + font = QtGui.QFont() + font.setPointSize(14) + self.bbp_nozzle_offset_05.setFont(font) + self.bbp_nozzle_offset_05.setCheckable(True) + self.bbp_nozzle_offset_05.setFlat(True) + self.bbp_nozzle_offset_05.setProperty("button_type", "") + self.bbp_nozzle_offset_05.setObjectName("bbp_nozzle_offset_05") + self.bbp_offset_value_selector_group.addButton(self.bbp_nozzle_offset_05) + self.bbp_offset_steps_buttons.addWidget( + self.bbp_nozzle_offset_05, + 0, + QtCore.Qt.AlignmentFlag.AlignHCenter | QtCore.Qt.AlignmentFlag.AlignVCenter, + ) + # Line separator for 0.1mm - set size policy to expanding horizontally # 0.01mm button @@ -252,30 +274,6 @@ def setupUI(self): QtCore.Qt.AlignmentFlag.AlignHCenter | QtCore.Qt.AlignmentFlag.AlignVCenter, ) - # 0.05mm button - self.bbp_nozzle_offset_05 = BlocksCustomCheckButton( - parent=self.bbp_offset_steps_buttons_group_box - ) - self.bbp_nozzle_offset_05.setMinimumSize(QtCore.QSize(100, 70)) - self.bbp_nozzle_offset_05.setMaximumSize( - QtCore.QSize(100, 70) - ) # Increased max width by 5 pixels - self.bbp_nozzle_offset_05.setText("0.05 mm") - - font = QtGui.QFont() - font.setPointSize(14) - self.bbp_nozzle_offset_05.setFont(font) - self.bbp_nozzle_offset_05.setCheckable(True) - self.bbp_nozzle_offset_05.setFlat(True) - self.bbp_nozzle_offset_05.setProperty("button_type", "") - self.bbp_nozzle_offset_05.setObjectName("bbp_nozzle_offset_05") - self.bbp_offset_value_selector_group.addButton(self.bbp_nozzle_offset_05) - self.bbp_offset_steps_buttons.addWidget( - self.bbp_nozzle_offset_05, - 0, - QtCore.Qt.AlignmentFlag.AlignHCenter | QtCore.Qt.AlignmentFlag.AlignVCenter, - ) - # 0.025mm button self.bbp_nozzle_offset_025 = BlocksCustomCheckButton( parent=self.bbp_offset_steps_buttons_group_box @@ -343,9 +341,8 @@ def setupUI(self): self.bbp_z_offset_title_label.setStyleSheet( "color: gray; background: transparent;" ) - self.bbp_z_offset_title_label.setText("Z-Offset") self.bbp_z_offset_title_label.setObjectName("bbp_z_offset_title_label") - self.bbp_z_offset_title_label.setText("smth") + self.bbp_z_offset_title_label.setText("Z: 0.000mm") self.bbp_z_offset_title_label.setGeometry(420, 270, 200, 30) # === END OF NEW LABEL === From 50260795e01688ff1e8c0fffae232124dbc5accb Mon Sep 17 00:00:00 2001 From: Guilherme Costa Date: Mon, 12 Jan 2026 14:52:21 +0000 Subject: [PATCH 3/3] printTab: change save message --- BlocksScreen/lib/panels/printTab.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/BlocksScreen/lib/panels/printTab.py b/BlocksScreen/lib/panels/printTab.py index baaaf314..795aba0a 100644 --- a/BlocksScreen/lib/panels/printTab.py +++ b/BlocksScreen/lib/panels/printTab.py @@ -325,7 +325,9 @@ def save_config(self) -> None: f"Z: {self._z_offset:.3f}mm" ) self.BasePopup_z_offset.set_message( - f"There is a change in the Z-Offset of {self._active_z_offset:.3f} mm,\n do you wish to save it permanently?\nThe machine will restart" + f"The Z‑Offset is now {self._active_z_offset:.3f} mm.\n" + "Would you like to save this change permanently?\n" + "The machine will restart." ) self.BasePopup_z_offset.cancel_button_text("Later") self.BasePopup_z_offset.open()