From 4eae3a2602f9ba4c43f871528c23c864228c3b78 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 21 Jan 2021 08:05:21 +0100 Subject: [PATCH 01/26] Add 'Ribbed Support Vaults' infill pattern. --- resources/definitions/fdmprinter.def.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index bb64e7f0dc..9d7086a0a5 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1736,7 +1736,8 @@ "zigzag": "Zig Zag", "cross": "Cross", "cross_3d": "Cross 3D", - "gyroid": "Gyroid" + "gyroid": "Gyroid", + "ribbed_vault": "Ribbed Vaults" }, "default_value": "grid", "enabled": "infill_sparse_density > 0", From ad5c85b7816eec577f231879048e270441d91e05 Mon Sep 17 00:00:00 2001 From: BagelOrb Date: Sun, 24 Jan 2021 11:05:15 +0100 Subject: [PATCH 02/26] rename infill pattern Ribbed Vault to Lightning --- resources/definitions/fdmprinter.def.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 9d7086a0a5..e00d536e75 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1737,7 +1737,7 @@ "cross": "Cross", "cross_3d": "Cross 3D", "gyroid": "Gyroid", - "ribbed_vault": "Ribbed Vaults" + "lightning": "Lightning" }, "default_value": "grid", "enabled": "infill_sparse_density > 0", @@ -1748,7 +1748,7 @@ "zig_zaggify_infill": { "label": "Connect Infill Lines", - "description": "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used.", + "description": "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the wallevs better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used.", "type": "bool", "default_value": false, "value": "infill_pattern == 'cross' or infill_pattern == 'cross_3d'", From 616aba738006107a916c605b5698ea4af25e38db Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Tue, 26 Jan 2021 10:38:54 +0100 Subject: [PATCH 03/26] Remove accidental keyboard fandango in unrelated string. --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index e00d536e75..153b72dee3 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1748,7 +1748,7 @@ "zig_zaggify_infill": { "label": "Connect Infill Lines", - "description": "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the wallevs better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used.", + "description": "Connect the ends where the infill pattern meets the inner wall using a line which follows the shape of the inner wall. Enabling this setting can make the infill adhere to the walls better and reduce the effects of infill on the quality of vertical surfaces. Disabling this setting reduces the amount of material used.", "type": "bool", "default_value": false, "value": "infill_pattern == 'cross' or infill_pattern == 'cross_3d'", From 8812b37a39fd250225ce68a3ecf27b20a26c0506 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Thu, 28 Jan 2021 17:21:09 +0100 Subject: [PATCH 04/26] Add settings for 'Lightning' infill. - The 'main' support radius will be taken from the already existing infill line distance. - New: Lightning Infill Support Prune Angle: Controls how fast the trees are eroded from the extremeties. - New: Lighning Infill Support Straightening Angle: Controls how fast the junctions of the tree smooth themselves into ever straighter lines. --- resources/definitions/fdmprinter.def.json | 66 ++++++++++++++++++++--- 1 file changed, 58 insertions(+), 8 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 153b72dee3..151ec0963a 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1763,7 +1763,7 @@ "type": "bool", "default_value": true, "value": "(infill_pattern == 'cross' or infill_pattern == 'cross_3d' or infill_multiplier % 2 == 0) and infill_wall_line_count > 0", - "enabled": "infill_pattern == 'cross' or infill_pattern == 'cross_3d' or infill_pattern == 'concentric' or infill_multiplier % 2 == 0 or infill_wall_line_count > 1", + "enabled": "infill_pattern != 'lightning' and infill_pattern == 'cross' or infill_pattern == 'cross_3d' or infill_pattern == 'concentric' or infill_multiplier % 2 == 0 or infill_wall_line_count > 1", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, @@ -1773,7 +1773,7 @@ "description": "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns).", "type": "[int]", "default_value": "[ ]", - "enabled": "infill_pattern != 'concentric' and infill_sparse_density > 0", + "enabled": "infill_pattern != 'lightning' and infill_pattern != 'concentric' and infill_sparse_density > 0", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, @@ -1784,7 +1784,7 @@ "unit": "mm", "type": "float", "default_value": 0, - "enabled": "infill_pattern == 'grid' or infill_pattern == 'lines' or infill_pattern == 'triangles' or infill_pattern == 'cubic' or infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' or infill_pattern == 'zigzag'", + "enabled": "infill_pattern != 'lightning' and infill_pattern == 'grid' or infill_pattern == 'lines' or infill_pattern == 'triangles' or infill_pattern == 'cubic' or infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' or infill_pattern == 'zigzag'", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, @@ -1795,7 +1795,7 @@ "unit": "mm", "type": "float", "default_value": 0, - "enabled": "infill_pattern == 'grid' or infill_pattern == 'lines' or infill_pattern == 'triangles' or infill_pattern == 'cubic' or infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' or infill_pattern == 'zigzag'", + "enabled": "infill_pattern != 'lightning' and infill_pattern == 'grid' or infill_pattern == 'lines' or infill_pattern == 'triangles' or infill_pattern == 'cubic' or infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' or infill_pattern == 'zigzag'", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, @@ -1806,7 +1806,7 @@ "type": "bool", "default_value": false, "warning_value": "True if infill_pattern not in ('grid', 'triangles', 'trihexagon', 'cubic', 'cubicsubdiv', 'tetrahedral', 'quarter_cubic') else None", - "enabled": "not ((infill_pattern == 'cross' and connect_infill_polygons) or infill_pattern == 'concentric')", + "enabled": "not (infill_pattern == 'lightning' or (infill_pattern == 'cross' and connect_infill_polygons) or infill_pattern == 'concentric')", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, @@ -1915,7 +1915,7 @@ "minimum_value": "0", "maximum_value_warning": "1 if (infill_pattern == 'cross' or infill_pattern == 'cross_3d' or support_pattern == 'concentric') else 5", "maximum_value": "999999 if infill_line_distance == 0 else (20 - math.log(infill_line_distance) / math.log(2))", - "enabled": "infill_sparse_density > 0 and infill_pattern != 'cubicsubdiv'", + "enabled": "infill_pattern != 'lightning' and infill_sparse_density > 0 and infill_pattern != 'cubicsubdiv'", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, @@ -1928,7 +1928,7 @@ "default_value": 1.5, "minimum_value": "0.0001", "minimum_value_warning": "3 * resolveOrValue('layer_height')", - "enabled": "infill_sparse_density > 0 and gradual_infill_steps > 0 and infill_pattern != 'cubicsubdiv'", + "enabled": "infill_pattern != 'lightning' and infill_sparse_density > 0 and gradual_infill_steps > 0 and infill_pattern != 'cubicsubdiv'", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, @@ -1958,7 +1958,7 @@ "description": "Print infill structures only where tops of the model should be supported. Enabling this reduces print time and material usage, but leads to ununiform object strength.", "type": "bool", "default_value": false, - "enabled": "infill_sparse_density > 0", + "enabled": "infill_pattern != 'lightning' and infill_sparse_density > 0", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, @@ -2123,6 +2123,56 @@ "settable_per_mesh": true } } + }, + "lightning_infill_support_angle": + { + "label": "Lightning Infill Support Angle", + "description": "The difference two lightning infill layers can have while still supporting each other. Measured in the angle given the thickness.", + "unit": "°", + "type": "float", + "minimum_value": "0", + "maximum_value": "90", + "maximum_value_warning": "75", + "default_value": 40, + "limit_to_extruder": "infill_extruder_nr", + "enabled": "infill_pattern == 'lightning'", + "settable_per_mesh": false, + "settable_per_extruder": true, + "children": + { + "lightning_infill_prune_angle": + { + "label": "Lightning Infill Support Prune Angle", + "description": "The difference a lightning infill layer can have with the one immediately above w.r.t the pruning of the outer extremities of trees. Measured in the angle given the thickness.", + "unit": "°", + "type": "float", + "minimum_value": "0", + "maximum_value": "90", + "maximum_value_warning": "75", + "default_value": 40, + "limit_to_extruder": "infill_extruder_nr", + "enabled": "infill_pattern == 'lightning'", + "settable_per_mesh": false, + "settable_per_extruder": true, + "value": "lightning_infill_support_angle" + }, + "lightning_infill_straightening_angle": + { + "label": "Lightning Infill Support Straightening Angle", + "description": "The difference a lightning infill layer can have with the one immediately above w.r.t the smoothing of trees. Measured in the angle given the thickness.", + "unit": "°", + "type": "float", + "minimum_value": "0", + "maximum_value": "90", + "maximum_value_warning": "75", + "default_value": 40, + "limit_to_extruder": "infill_extruder_nr", + "enabled": "infill_pattern == 'lightning'", + "settable_per_mesh": false, + "settable_per_extruder": true, + "value": "lightning_infill_support_angle" + } + } } } }, From 10c06954efed5fb1a6a43d9f7c3dd07e580872c8 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Wed, 3 Feb 2021 13:47:00 +0100 Subject: [PATCH 05/26] Add lightning infill overhang angle. Becasue: Should be different from the support radius. --- resources/definitions/fdmprinter.def.json | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 151ec0963a..d92736c935 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -2127,7 +2127,7 @@ "lightning_infill_support_angle": { "label": "Lightning Infill Support Angle", - "description": "The difference two lightning infill layers can have while still supporting each other. Measured in the angle given the thickness.", + "description": "Determines when a lightning infill layer has to support anything above it. Measured in the angle given the thickness of a layer.", "unit": "°", "type": "float", "minimum_value": "0", @@ -2140,9 +2140,25 @@ "settable_per_extruder": true, "children": { + "lightning_infill_overhang_angle": + { + "label": "Lightning Infill Overhang Angle", + "description": "Determines when a lightning infill layer has to support the model above it. Measured in the angle given the thickness.", + "unit": "°", + "type": "float", + "minimum_value": "0", + "maximum_value": "90", + "maximum_value_warning": "75", + "default_value": 40, + "limit_to_extruder": "infill_extruder_nr", + "enabled": "infill_pattern == 'lightning'", + "settable_per_mesh": false, + "settable_per_extruder": true, + "value": "lightning_infill_support_angle" + }, "lightning_infill_prune_angle": { - "label": "Lightning Infill Support Prune Angle", + "label": "Lightning Infill Prune Angle", "description": "The difference a lightning infill layer can have with the one immediately above w.r.t the pruning of the outer extremities of trees. Measured in the angle given the thickness.", "unit": "°", "type": "float", @@ -2158,7 +2174,7 @@ }, "lightning_infill_straightening_angle": { - "label": "Lightning Infill Support Straightening Angle", + "label": "Lightning Infill Straightening Angle", "description": "The difference a lightning infill layer can have with the one immediately above w.r.t the smoothing of trees. Measured in the angle given the thickness.", "unit": "°", "type": "float", From b3676a38d94ce5929ad146a3de7eadf4e1112be5 Mon Sep 17 00:00:00 2001 From: BagelOrb Date: Fri, 5 Feb 2021 16:07:22 +0100 Subject: [PATCH 06/26] tune lightning infill line distance based on measurements of the amount of filament from only the top layer given several line distance values --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index d92736c935..1dc4c19c9c 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1711,7 +1711,7 @@ "default_value": 2, "minimum_value": "0", "minimum_value_warning": "infill_line_width", - "value": "0 if infill_sparse_density == 0 else (infill_line_width * 100) / infill_sparse_density * (2 if infill_pattern == 'grid' else (3 if infill_pattern == 'triangles' or infill_pattern == 'trihexagon' or infill_pattern == 'cubic' or infill_pattern == 'cubicsubdiv' else (2 if infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' else (1 if infill_pattern == 'cross' or infill_pattern == 'cross_3d' else 1))))", + "value": "0 if infill_sparse_density == 0 else (infill_line_width * 100) / infill_sparse_density * (2 if infill_pattern == 'grid' else (3 if infill_pattern == 'triangles' or infill_pattern == 'trihexagon' or infill_pattern == 'cubic' or infill_pattern == 'cubicsubdiv' else (2 if infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' else (1 if infill_pattern == 'cross' or infill_pattern == 'cross_3d' else (1.6 if infill_pattern == 'lightning' else 1)))))", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true } From d4c4b11927f5457509a9c13ae078a025d74d9cca Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 1 Oct 2021 11:38:13 +0200 Subject: [PATCH 07/26] Update the copy of the connect to cloud message CURA-8601 --- .../src/Messages/CloudFlowMessage.py | 31 ++++++++----------- .../LocalClusterOutputDeviceManager.py | 3 +- 2 files changed, 14 insertions(+), 20 deletions(-) diff --git a/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py b/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py index c453537d81..58c4dacf03 100644 --- a/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py +++ b/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py @@ -15,27 +15,22 @@ I18N_CATALOG = i18nCatalog("cura") class CloudFlowMessage(Message): - def __init__(self, address: str) -> None: - - image_path = os.path.join( - CuraApplication.getInstance().getPluginRegistry().getPluginPath("UM3NetworkPrinting") or "", - "resources", "svg", "cloud-flow-start.svg" - ) + def __init__(self, printer_name: str) -> None: super().__init__( text=I18N_CATALOG.i18nc("@info:status", - "Send and monitor print jobs from anywhere using your Ultimaker account."), - lifetime=0, - dismissable=True, - option_state=False, - image_source=QUrl.fromLocalFile(image_path), - image_caption=I18N_CATALOG.i18nc("@info:status Ultimaker Cloud should not be translated.", - "Connect to Ultimaker Digital Factory"), + f"Your printer {printer_name} could be connected via cloud.\n Manage your print queue and monitor your prints from anywhere connecting your printer to Digital Factory"), + title=I18N_CATALOG.i18nc("@info:title", "Are you ready for cloud printing?") ) - self._address = address - self.addAction("", I18N_CATALOG.i18nc("@action", "Get started"), "", "") + self._printer_name = printer_name + self.addAction("get_started", I18N_CATALOG.i18nc("@action", "Get started"), "", "") + self.addAction("learn_more", I18N_CATALOG.i18nc("@action", "Learn more"), "", "", button_style=Message.ActionButtonStyle.LINK, button_align=Message.ActionButtonAlignment.ALIGN_LEFT) + self.actionTriggered.connect(self._onCloudFlowStarted) - def _onCloudFlowStarted(self, messageId: str, actionId: str) -> None: - QDesktopServices.openUrl(QUrl("http://{}/cloud_connect".format(self._address))) - self.hide() + def _onCloudFlowStarted(self, message_id: str, action_id: str) -> None: + if action_id == "get_started": + QDesktopServices.openUrl(QUrl("https://digitalfactory.ultimaker.com/app/printers?add_printer=true&utm_source=cura&utm_medium=software&utm_campaign=message-networkprinter-added")) + self.hide() + else: + QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=add-cloud-printer")) diff --git a/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDeviceManager.py b/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDeviceManager.py index e79709d3dc..0cd5304cf9 100644 --- a/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDeviceManager.py +++ b/plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDeviceManager.py @@ -52,7 +52,6 @@ class LocalClusterOutputDeviceManager: def start(self) -> None: """Start the network discovery.""" - self._zero_conf_client.start() for address in self._getStoredManualAddresses(): self.addManualDevice(address) @@ -292,4 +291,4 @@ class LocalClusterOutputDeviceManager: if not CuraApplication.getInstance().getCuraAPI().account.isLoggedIn: # Do not show the message if the user is not signed in. return - CloudFlowMessage(device.ipAddress).show() + CloudFlowMessage(device.name).show() From 6bc9aaa4bf2d8b5ad69c64c0cf081da527788ef7 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 1 Oct 2021 11:54:27 +0200 Subject: [PATCH 08/26] Add message type to cloud CURA-8601 --- plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py b/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py index 58c4dacf03..692b52a0ba 100644 --- a/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py +++ b/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py @@ -20,7 +20,8 @@ class CloudFlowMessage(Message): super().__init__( text=I18N_CATALOG.i18nc("@info:status", f"Your printer {printer_name} could be connected via cloud.\n Manage your print queue and monitor your prints from anywhere connecting your printer to Digital Factory"), - title=I18N_CATALOG.i18nc("@info:title", "Are you ready for cloud printing?") + title=I18N_CATALOG.i18nc("@info:title", "Are you ready for cloud printing?"), + message_type=Message.MessageType.CLOUD ) self._printer_name = printer_name self.addAction("get_started", I18N_CATALOG.i18nc("@action", "Get started"), "", "") From 363aa765f5f53f9345bd8696906df594d88bea62 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 1 Oct 2021 15:28:18 +0200 Subject: [PATCH 09/26] Don't show Infill Overhang Angle if lightning infill is enabled If the Infill Support setting was enabled but still hidden by Lightning Infill, this sub-setting could still be shown. Contributes to issue CURA-8550. --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 31eebcd078..723e6fc84e 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -2142,7 +2142,7 @@ "minimum_value_warning": "2", "maximum_value": "90", "default_value": 40, - "enabled": "infill_sparse_density > 0 and infill_support_enabled", + "enabled": "infill_pattern != 'lightning' and infill_sparse_density > 0 and infill_support_enabled", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, From dc7a45eacfeb5e5cb22a72143ef78f2fb3e1087f Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 1 Oct 2021 16:51:39 +0200 Subject: [PATCH 10/26] Remove cloud-flow-start icon It wasn't used anymore CURA-8601 --- .../resources/svg/cloud-flow-start.svg | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 plugins/UM3NetworkPrinting/resources/svg/cloud-flow-start.svg diff --git a/plugins/UM3NetworkPrinting/resources/svg/cloud-flow-start.svg b/plugins/UM3NetworkPrinting/resources/svg/cloud-flow-start.svg deleted file mode 100644 index 746dc269fd..0000000000 --- a/plugins/UM3NetworkPrinting/resources/svg/cloud-flow-start.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - Cloud_connection-icon - Created with Sketch. - - - - - - - - \ No newline at end of file From 9e1dc98cd139341e7d7963254afa1a31b81a511f Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 4 Oct 2021 14:31:25 +0200 Subject: [PATCH 11/26] Catch environment errors when reading license file from package The package may be inaccessible for whatever reason, which would crash Cura. New attempt to fix CURA-2RP (without breaking the unit test saying that this error should be raised by Uranium then). --- plugins/Toolbox/src/CloudSync/LicensePresenter.py | 9 ++++++++- plugins/Toolbox/src/Toolbox.py | 8 ++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/plugins/Toolbox/src/CloudSync/LicensePresenter.py b/plugins/Toolbox/src/CloudSync/LicensePresenter.py index 9a68c93d71..39ce11c8d3 100644 --- a/plugins/Toolbox/src/CloudSync/LicensePresenter.py +++ b/plugins/Toolbox/src/CloudSync/LicensePresenter.py @@ -1,3 +1,6 @@ +# Copyright (c) 2021 Ultimaker B.V. +# Cura is released under the terms of the LGPLv3 or higher. + import os from collections import OrderedDict from typing import Dict, Optional, List, Any @@ -95,7 +98,11 @@ class LicensePresenter(QObject): for package_id, item in packages.items(): item["package_id"] = package_id - item["licence_content"] = self._package_manager.getPackageLicense(item["package_path"]) + try: + item["licence_content"] = self._package_manager.getPackageLicense(item["package_path"]) + except EnvironmentError as e: + Logger.error(f"Could not open downloaded package {package_id} to read license file! {type(e)} - {e}") + continue # Skip this package. if item["licence_content"] is None: # Implicitly accept when there is no license item["accepted"] = True diff --git a/plugins/Toolbox/src/Toolbox.py b/plugins/Toolbox/src/Toolbox.py index 2c06c87047..e525a88d89 100644 --- a/plugins/Toolbox/src/Toolbox.py +++ b/plugins/Toolbox/src/Toolbox.py @@ -682,9 +682,13 @@ class Toolbox(QObject, Extension): if not package_info: Logger.log("w", "Package file [%s] was not a valid CuraPackage.", file_path) return - - license_content = self._package_manager.getPackageLicense(file_path) package_id = package_info["package_id"] + + try: + license_content = self._package_manager.getPackageLicense(file_path) + except EnvironmentError as e: + Logger.error(f"Could not open downloaded package {package_id} to read license file! {type(e)} - {e}") + return if license_content is not None: # get the icon url for package_id, make sure the result is a string, never None icon_url = next((x["icon_url"] for x in self.packagesModel.items if x["id"] == package_id), None) or "" From 1f5672accab09c975e1dbd49def4d95c5d236345 Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Mon, 4 Oct 2021 15:55:06 +0200 Subject: [PATCH 12/26] Check if new materials were installed on initialization When the MaterialManagementModel is initialized, it will check whether during this startup new materials were installed. If that's the case, then it will show the prompt message to sync those materials with the printers, which should initiate the sync materials flow. CURA-8254 --- .../Models/MaterialManagementModel.py | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index c75e16cd63..306d760d63 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -7,6 +7,8 @@ from typing import Any, Dict, Optional, TYPE_CHECKING import uuid # To generate new GUIDs for new materials. import zipfile # To export all materials in a .zip archive. +from PyQt5.QtGui import QDesktopServices + from UM.i18n import i18nCatalog from UM.Logger import Logger from UM.Message import Message @@ -21,6 +23,7 @@ if TYPE_CHECKING: catalog = i18nCatalog("cura") + class MaterialManagementModel(QObject): favoritesChanged = pyqtSignal(str) """Triggered when a favorite is added or removed. @@ -28,6 +31,56 @@ class MaterialManagementModel(QObject): :param The base file of the material is provided as parameter when this emits """ + def __init__(self, parent: Optional[QObject] = None) -> None: + super().__init__(parent = parent) + self._checkIfNewMaterialsWereInstalled() + + def _checkIfNewMaterialsWereInstalled(self): + application = cura.CuraApplication.CuraApplication.getInstance() + new_materials_installed = False + print(application.getPackageManager().installed_packages) + for package_id, package_info in application.getPackageManager().installed_packages.items(): + new_materials_installed = package_info["package_info"]["package_type"] == "material" + if new_materials_installed: + self._showSyncNewMaterialsMessage() + + def _showSyncNewMaterialsMessage(self): + sync_materials_message = Message( + text = catalog.i18nc("@action:button", + "Please sync the material profiles with your pinter before starting to print."), + title = catalog.i18nc("@action:button", "New materials installed"), + message_type = Message.MessageType.WARNING, + lifetime = 0 + ) + + sync_materials_message.addAction( + "sync", + name = catalog.i18nc("@action:button", "Sync materials with printers"), + icon = "", + description = "Sync your newly installed materials with your printers.", + button_align = Message.ActionButtonAlignment.ALIGN_RIGHT + ) + + sync_materials_message.addAction( + "learn_more", + name = catalog.i18nc("@action:button", "Learn more"), + icon = "", + description = "Learn more.", + button_align = Message.ActionButtonAlignment.ALIGN_LEFT, + button_style = Message.ActionButtonStyle.LINK + ) + sync_materials_message.actionTriggered.connect(self._onSyncMaterialsMessageActionTriggered) + sync_materials_message.show() + + @staticmethod + def _onSyncMaterialsMessageActionTriggered(sync_message: Optional[Message], sync_message_action: Optional[str]): + if sync_message_action == "sync": + QDesktopServices.openUrl(QUrl("https://example.com/sync")) + if sync_message is not None: + sync_message.hide() + elif sync_message_action == "learn_more": + QDesktopServices.openUrl(QUrl("https://example.com/learn_more")) + @pyqtSlot("QVariant", result = bool) def canMaterialBeRemoved(self, material_node: "MaterialNode") -> bool: """Can a certain material be deleted, or is it still in use in one of the container stacks anywhere? From 4b7f385077477a4d73e61007d8468f701a343cf7 Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Mon, 4 Oct 2021 16:43:17 +0200 Subject: [PATCH 13/26] Add external link to "Learn more" action CURA-8254 --- cura/Machines/Models/MaterialManagementModel.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 306d760d63..c174625bb7 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -47,7 +47,7 @@ class MaterialManagementModel(QObject): def _showSyncNewMaterialsMessage(self): sync_materials_message = Message( text = catalog.i18nc("@action:button", - "Please sync the material profiles with your pinter before starting to print."), + "Please sync the material profiles with your printer before starting to print."), title = catalog.i18nc("@action:button", "New materials installed"), message_type = Message.MessageType.WARNING, lifetime = 0 @@ -57,7 +57,6 @@ class MaterialManagementModel(QObject): "sync", name = catalog.i18nc("@action:button", "Sync materials with printers"), icon = "", - description = "Sync your newly installed materials with your printers.", button_align = Message.ActionButtonAlignment.ALIGN_RIGHT ) @@ -65,21 +64,20 @@ class MaterialManagementModel(QObject): "learn_more", name = catalog.i18nc("@action:button", "Learn more"), icon = "", - description = "Learn more.", button_align = Message.ActionButtonAlignment.ALIGN_LEFT, button_style = Message.ActionButtonStyle.LINK ) sync_materials_message.actionTriggered.connect(self._onSyncMaterialsMessageActionTriggered) sync_materials_message.show() - @staticmethod - def _onSyncMaterialsMessageActionTriggered(sync_message: Optional[Message], sync_message_action: Optional[str]): + def _onSyncMaterialsMessageActionTriggered(self, sync_message: Optional[Message], sync_message_action: Optional[str]): if sync_message_action == "sync": - QDesktopServices.openUrl(QUrl("https://example.com/sync")) + QDesktopServices.openUrl(QUrl("https://example.com/openSyncAllWindow")) + # self.openSyncAllWindow() if sync_message is not None: sync_message.hide() elif sync_message_action == "learn_more": - QDesktopServices.openUrl(QUrl("https://example.com/learn_more")) + QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer")) @pyqtSlot("QVariant", result = bool) def canMaterialBeRemoved(self, material_node: "MaterialNode") -> bool: From ce34e16cdd731ff07c6362a084c0cf7f5b5acda5 Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Mon, 4 Oct 2021 16:47:48 +0200 Subject: [PATCH 14/26] Add documentation CURA-8254 --- cura/Machines/Models/MaterialManagementModel.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index c174625bb7..8747e2279c 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -36,9 +36,12 @@ class MaterialManagementModel(QObject): self._checkIfNewMaterialsWereInstalled() def _checkIfNewMaterialsWereInstalled(self): + """ + Checks whether new material packages were installed in the latest startup. If there were, then it shows + a message prompting the user to sync the materials with their printers. + """ application = cura.CuraApplication.CuraApplication.getInstance() new_materials_installed = False - print(application.getPackageManager().installed_packages) for package_id, package_info in application.getPackageManager().installed_packages.items(): new_materials_installed = package_info["package_info"]["package_type"] == "material" if new_materials_installed: @@ -57,6 +60,7 @@ class MaterialManagementModel(QObject): "sync", name = catalog.i18nc("@action:button", "Sync materials with printers"), icon = "", + description = "Sync your newly installed materials with your printers.", button_align = Message.ActionButtonAlignment.ALIGN_RIGHT ) @@ -64,6 +68,7 @@ class MaterialManagementModel(QObject): "learn_more", name = catalog.i18nc("@action:button", "Learn more"), icon = "", + description = "Learn more about syncing your newly installed materials with your printers.", button_align = Message.ActionButtonAlignment.ALIGN_LEFT, button_style = Message.ActionButtonStyle.LINK ) From b49004a7420393de82fa9a1b658ffa4b492fd148 Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Mon, 4 Oct 2021 16:47:20 +0200 Subject: [PATCH 15/26] Reorient layout of skip, sign-in and create * Skip button - Moved to the left, such that a user won't click on it mindlessly - Made it a Tertiary button, so it will have predictable margins * Sign-in button - Moved to the right bottom, making it the logical next option * Create an account - Moved to be inline with skip and sign-in - Made it a secondary button as requested by UX Contributes to CURA-8602 --- resources/qml/WelcomePages/CloudContent.qml | 75 ++++++++++----------- 1 file changed, 34 insertions(+), 41 deletions(-) diff --git a/resources/qml/WelcomePages/CloudContent.qml b/resources/qml/WelcomePages/CloudContent.qml index 528991b38e..7dc35c7bc5 100644 --- a/resources/qml/WelcomePages/CloudContent.qml +++ b/resources/qml/WelcomePages/CloudContent.qml @@ -190,55 +190,48 @@ Item } } } - - // Sign in Button - Cura.PrimaryButton - { - id: signInButton - anchors.horizontalCenter: parent.horizontalCenter - text: catalog.i18nc("@button", "Sign in") - onClicked: Cura.API.account.login() - // Content Item is used in order to align the text inside the button. Without it, when resizing the - // button, the text will be aligned on the left - contentItem: Text { - text: signInButton.text - font: UM.Theme.getFont("medium") - color: UM.Theme.getColor("primary_text") - horizontalAlignment: Text.AlignHCenter - verticalAlignment: Text.AlignVCenter - } - } - - // Create an account button - Cura.TertiaryButton - { - id: createAccountButton - anchors.horizontalCenter: parent.horizontalCenter - text: catalog.i18nc("@text", "Create a free Ultimaker Account") - onClicked: Qt.openUrlExternally("https://ultimaker.com/app/ultimaker-cura-account-sign-up?utm_source=cura&utm_medium=software&utm_campaign=onboarding-signup") - } } } - // The "Skip" button exists on the bottom right - Label + // Skip button + Cura.TertiaryButton { id: skipButton + anchors.left: parent.left + anchors.bottom: parent.bottom + text: catalog.i18nc("@button", "Skip") + onClicked: base.showNextPage() + } + + // Create an account button + Cura.SecondaryButton + { + id: createAccountButton + anchors.right: signInButton.left + anchors.rightMargin: UM.Theme.getSize("default_margin").width + anchors.bottom: parent.bottom + + text: catalog.i18nc("@text", "Create a free Ultimaker Account") + onClicked: Qt.openUrlExternally("https://ultimaker.com/app/ultimaker-cura-account-sign-up?utm_source=cura&utm_medium=software&utm_campaign=onboarding-signup") + } + + // Sign in Button + Cura.PrimaryButton + { + id: signInButton anchors.right: parent.right anchors.bottom: parent.bottom - anchors.leftMargin: UM.Theme.getSize("default_margin").width - text: catalog.i18nc("@button", "Skip") - color: UM.Theme.getColor("secondary_button_text") - font: UM.Theme.getFont("medium") - renderType: Text.NativeRendering - MouseArea - { - anchors.fill: parent - hoverEnabled: true - onClicked: base.showNextPage() - onEntered: parent.font.underline = true - onExited: parent.font.underline = false + text: catalog.i18nc("@button", "Sign in") + onClicked: Cura.API.account.login() + // Content Item is used in order to align the text inside the button. Without it, when resizing the + // button, the text will be aligned on the left + contentItem: Text { + text: signInButton.text + font: UM.Theme.getFont("medium") + color: UM.Theme.getColor("primary_text") + horizontalAlignment: Text.AlignHCenter + verticalAlignment: Text.AlignVCenter } } } From 5732fc2b51f457da3656407dfdf8458216f6acd4 Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Mon, 4 Oct 2021 17:05:36 +0200 Subject: [PATCH 16/26] Update campaign tags CURA-8254 --- cura/Machines/Models/MaterialManagementModel.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 8747e2279c..56315be86e 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -82,7 +82,7 @@ class MaterialManagementModel(QObject): if sync_message is not None: sync_message.hide() elif sync_message_action == "learn_more": - QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer")) + QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer-message")) @pyqtSlot("QVariant", result = bool) def canMaterialBeRemoved(self, material_node: "MaterialNode") -> bool: From 527de2b6ef4ac47855d54ecea295d4d5b8d3fb35 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Tue, 5 Oct 2021 10:20:52 +0200 Subject: [PATCH 17/26] Use image instead of custom message type CURA-8601 --- .../resources/svg/CloudPlatform.svg | 353 ++++++++++++++++++ .../src/Messages/CloudFlowMessage.py | 7 +- resources/themes/cura-light/theme.json | 2 +- 3 files changed, 359 insertions(+), 3 deletions(-) create mode 100644 plugins/UM3NetworkPrinting/resources/svg/CloudPlatform.svg diff --git a/plugins/UM3NetworkPrinting/resources/svg/CloudPlatform.svg b/plugins/UM3NetworkPrinting/resources/svg/CloudPlatform.svg new file mode 100644 index 0000000000..5da9f17bbf --- /dev/null +++ b/plugins/UM3NetworkPrinting/resources/svg/CloudPlatform.svg @@ -0,0 +1,353 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py b/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py index 692b52a0ba..3ef5a6bf43 100644 --- a/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py +++ b/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py @@ -16,12 +16,15 @@ I18N_CATALOG = i18nCatalog("cura") class CloudFlowMessage(Message): def __init__(self, printer_name: str) -> None: - + image_path = os.path.join( + CuraApplication.getInstance().getPluginRegistry().getPluginPath("UM3NetworkPrinting") or "", + "resources", "svg", "CloudPlatform.svg" + ) super().__init__( text=I18N_CATALOG.i18nc("@info:status", f"Your printer {printer_name} could be connected via cloud.\n Manage your print queue and monitor your prints from anywhere connecting your printer to Digital Factory"), title=I18N_CATALOG.i18nc("@info:title", "Are you ready for cloud printing?"), - message_type=Message.MessageType.CLOUD + image_source=QUrl.fromLocalFile(image_path) ) self._printer_name = printer_name self.addAction("get_started", I18N_CATALOG.i18nc("@action", "Get started"), "", "") diff --git a/resources/themes/cura-light/theme.json b/resources/themes/cura-light/theme.json index daa12b3390..78676da926 100644 --- a/resources/themes/cura-light/theme.json +++ b/resources/themes/cura-light/theme.json @@ -626,7 +626,7 @@ "message_close": [1, 1], "message_radius": [0.25, 0.25], "message_action_button": [0, 2.5], - "message_image": [15.0, 5.0], + "message_image": [15.0, 10.0], "message_type_icon": [2, 2], "infill_button_margin": [0.5, 0.5], From 658e54c8e513366434aa8b5a8840ed92968b8d4a Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Tue, 5 Oct 2021 11:36:10 +0200 Subject: [PATCH 18/26] Simplify the check for new materials If there is at least one material, we can already show the message without checking the rest of the installed packages. CURA-8254 --- cura/Machines/Models/MaterialManagementModel.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 56315be86e..468d28709b 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -41,11 +41,11 @@ class MaterialManagementModel(QObject): a message prompting the user to sync the materials with their printers. """ application = cura.CuraApplication.CuraApplication.getInstance() - new_materials_installed = False - for package_id, package_info in application.getPackageManager().installed_packages.items(): - new_materials_installed = package_info["package_info"]["package_type"] == "material" - if new_materials_installed: - self._showSyncNewMaterialsMessage() + for package_id, package_data in application.getPackageManager().installed_packages.items(): + if package_data["package_info"]["package_type"] == "material": + # At least one new material was installed + self._showSyncNewMaterialsMessage() + break def _showSyncNewMaterialsMessage(self): sync_materials_message = Message( From 8157cedfefa7232e7dd5cac4b9a200c05d805be9 Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Tue, 5 Oct 2021 11:42:00 +0200 Subject: [PATCH 19/26] Show the message only if there are printers that support material export If none of the user's printers support exporting materials to it, then the message should not be shown. CURA-8254 --- cura/Machines/Models/MaterialManagementModel.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 468d28709b..5d56fb73ca 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -73,7 +73,10 @@ class MaterialManagementModel(QObject): button_style = Message.ActionButtonStyle.LINK ) sync_materials_message.actionTriggered.connect(self._onSyncMaterialsMessageActionTriggered) - sync_materials_message.show() + container_registry = cura.CuraApplication.CuraApplication.getInstance().getContainerRegistry() + global_stacks = container_registry.findContainerStacks(type = "machine") + if any([stack.supportsMaterialExport for stack in global_stacks]): + sync_materials_message.show() def _onSyncMaterialsMessageActionTriggered(self, sync_message: Optional[Message], sync_message_action: Optional[str]): if sync_message_action == "sync": From bdbac23fdf33e6174fa2fe8fa73c64ccf58ba02e Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Tue, 5 Oct 2021 11:43:36 +0200 Subject: [PATCH 20/26] Add comment CURA-8254 --- cura/Machines/Models/MaterialManagementModel.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 5d56fb73ca..3737e490d2 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -73,6 +73,8 @@ class MaterialManagementModel(QObject): button_style = Message.ActionButtonStyle.LINK ) sync_materials_message.actionTriggered.connect(self._onSyncMaterialsMessageActionTriggered) + + # Show the message only if there are printers that support material export container_registry = cura.CuraApplication.CuraApplication.getInstance().getContainerRegistry() global_stacks = container_registry.findContainerStacks(type = "machine") if any([stack.supportsMaterialExport for stack in global_stacks]): From cb4d5ce6e54ad74440e67bc1bf3f45cf73963ed2 Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Tue, 5 Oct 2021 13:11:52 +0200 Subject: [PATCH 21/26] Update message text CURA-8254 --- cura/Machines/Models/MaterialManagementModel.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 3737e490d2..ea7a26796e 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -50,7 +50,7 @@ class MaterialManagementModel(QObject): def _showSyncNewMaterialsMessage(self): sync_materials_message = Message( text = catalog.i18nc("@action:button", - "Please sync the material profiles with your printer before starting to print."), + "Please sync the material profiles with your printers before starting to print."), title = catalog.i18nc("@action:button", "New materials installed"), message_type = Message.MessageType.WARNING, lifetime = 0 From 501b4c4fde1d28520c03f249ee86487c5fed43b7 Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Tue, 5 Oct 2021 13:54:13 +0200 Subject: [PATCH 22/26] Spaces around assignment operator According to UM codestyle Contributes to CURA-8601 --- .../UM3NetworkPrinting/src/Messages/CloudFlowMessage.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py b/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py index 3ef5a6bf43..34687339a9 100644 --- a/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py +++ b/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py @@ -21,14 +21,14 @@ class CloudFlowMessage(Message): "resources", "svg", "CloudPlatform.svg" ) super().__init__( - text=I18N_CATALOG.i18nc("@info:status", + text = I18N_CATALOG.i18nc("@info:status", f"Your printer {printer_name} could be connected via cloud.\n Manage your print queue and monitor your prints from anywhere connecting your printer to Digital Factory"), - title=I18N_CATALOG.i18nc("@info:title", "Are you ready for cloud printing?"), - image_source=QUrl.fromLocalFile(image_path) + title = I18N_CATALOG.i18nc("@info:title", "Are you ready for cloud printing?"), + image_source = QUrl.fromLocalFile(image_path) ) self._printer_name = printer_name self.addAction("get_started", I18N_CATALOG.i18nc("@action", "Get started"), "", "") - self.addAction("learn_more", I18N_CATALOG.i18nc("@action", "Learn more"), "", "", button_style=Message.ActionButtonStyle.LINK, button_align=Message.ActionButtonAlignment.ALIGN_LEFT) + self.addAction("learn_more", I18N_CATALOG.i18nc("@action", "Learn more"), "", "", button_style = Message.ActionButtonStyle.LINK, button_align = Message.ActionButtonAlignment.ALIGN_LEFT) self.actionTriggered.connect(self._onCloudFlowStarted) From 587421f97a2f982bdbd367464edee77ff3d5e824 Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Tue, 5 Oct 2021 14:51:14 +0200 Subject: [PATCH 23/26] Make the installed_packages private CURA-8254 --- cura/Machines/Models/MaterialManagementModel.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index ea7a26796e..ae86e609ee 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -41,7 +41,7 @@ class MaterialManagementModel(QObject): a message prompting the user to sync the materials with their printers. """ application = cura.CuraApplication.CuraApplication.getInstance() - for package_id, package_data in application.getPackageManager().installed_packages.items(): + for package_id, package_data in application.getPackageManager().getPackagesInstalledOnStartup().items(): if package_data["package_info"]["package_type"] == "material": # At least one new material was installed self._showSyncNewMaterialsMessage() From e4f6c1a440eb18afd9923cd4e31fbb48acc1ddbd Mon Sep 17 00:00:00 2001 From: Konstantinos Karmas Date: Tue, 5 Oct 2021 14:53:38 +0200 Subject: [PATCH 24/26] Fix typing CURA-8254 Co-Authored-By: Jaime van Kessel <3922611+nallath@users.noreply.github.com> --- cura/Machines/Models/MaterialManagementModel.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index ae86e609ee..5c6baaf55f 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -35,7 +35,7 @@ class MaterialManagementModel(QObject): super().__init__(parent = parent) self._checkIfNewMaterialsWereInstalled() - def _checkIfNewMaterialsWereInstalled(self): + def _checkIfNewMaterialsWereInstalled(self) -> None: """ Checks whether new material packages were installed in the latest startup. If there were, then it shows a message prompting the user to sync the materials with their printers. @@ -47,7 +47,7 @@ class MaterialManagementModel(QObject): self._showSyncNewMaterialsMessage() break - def _showSyncNewMaterialsMessage(self): + def _showSyncNewMaterialsMessage(self) -> None: sync_materials_message = Message( text = catalog.i18nc("@action:button", "Please sync the material profiles with your printers before starting to print."), @@ -80,12 +80,11 @@ class MaterialManagementModel(QObject): if any([stack.supportsMaterialExport for stack in global_stacks]): sync_materials_message.show() - def _onSyncMaterialsMessageActionTriggered(self, sync_message: Optional[Message], sync_message_action: Optional[str]): + def _onSyncMaterialsMessageActionTriggered(self, sync_message: Message, sync_message_action: str): if sync_message_action == "sync": QDesktopServices.openUrl(QUrl("https://example.com/openSyncAllWindow")) # self.openSyncAllWindow() - if sync_message is not None: - sync_message.hide() + sync_message.hide() elif sync_message_action == "learn_more": QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer-message")) From 46261e328b576486fe6b2550ae555a763a8f1663 Mon Sep 17 00:00:00 2001 From: hyu7000 <82933946+hyu7000@users.noreply.github.com> Date: Tue, 5 Oct 2021 23:26:03 +0900 Subject: [PATCH 25/26] cremaker def files added (#10409) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * test test * Delete 느낌표 2개.png * Cremaker's def file Cremaker's 3 model def files added. * Cremaker's ext def file Cremaker's extruder def files added. * cremaker bed obj file 2 model size add * change value change to value from default value * change value change to value from default value * change machine value change to "cremaker_common" from "cremaker" * change value change to value from default value * change value change to value from default value * change value change to value from default value * Update cremaker_common.def.json * change some code for crashes to resolve --- .../definitions/cremaker_common.def.json | 58 + resources/definitions/cremaker_m_v1.def.json | 40 + resources/definitions/cremaker_m_v2.def.json | 38 + resources/definitions/cremaker_s_v1.def.json | 32 + .../extruders/cremaker_extruder_0.def.json | 15 + resources/meshes/cremaker_platform_200.obj | 1870 +++++++++++++++++ resources/meshes/cremaker_platform_220.obj | 1870 +++++++++++++++++ 7 files changed, 3923 insertions(+) create mode 100644 resources/definitions/cremaker_common.def.json create mode 100644 resources/definitions/cremaker_m_v1.def.json create mode 100644 resources/definitions/cremaker_m_v2.def.json create mode 100644 resources/definitions/cremaker_s_v1.def.json create mode 100644 resources/extruders/cremaker_extruder_0.def.json create mode 100644 resources/meshes/cremaker_platform_200.obj create mode 100644 resources/meshes/cremaker_platform_220.obj diff --git a/resources/definitions/cremaker_common.def.json b/resources/definitions/cremaker_common.def.json new file mode 100644 index 0000000000..6fd339f58f --- /dev/null +++ b/resources/definitions/cremaker_common.def.json @@ -0,0 +1,58 @@ +{ + "version": 2, + "name": "cremaker common", + "inherits": "fdmprinter", + "metadata": { + "visible": false, + "author": "Joyplace", + "manufacturer": "JOYPLACE CO., LTD.", + "file_formats": "text/x-gcode", + "icon": "icon_ultimaker2", + "has_materials": true, + "machine_extruder_trains": { + "0": "cremaker_extruder_0" + } + }, + + "overrides": { + "machine_heated_bed": { "default_value": true }, + "material_diameter": { "default_value": 1.75 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "layer_height": { "value": 0.2 }, + "layer_height_0": { "value": 0.3 }, + "optimize_wall_printing_order": { "value": true }, + "xy_offset": { "value": 0.1 }, + "xy_offset_layer_0": { "value": -0.1 }, + "hole_xy_offset": { "value": 0.15 }, + "material_print_temperature": { "value": 200 }, + "speed_travel": { "value": 100 }, + "speed_layer_0": { "value": 25 }, + "acceleration_enabled": { "value": true }, + "acceleration_print": { "value": 1250 }, + "acceleration_infill": { "value": 1250 }, + "acceleration_wall": { "value": 800 }, + "acceleration_wall_0": { "value": 800 }, + "acceleration_wall_x": { "value": 800 }, + "acceleration_travel": { "value": 1250 }, + "acceleration_layer_0": { "value": 1000 }, + "acceleration_print_layer_0": { "value": 1000 }, + "acceleration_travel_layer_0": { "value": 1000 }, + "retraction_amount": { "value": 1.2 }, + "retraction_speed": { "value": 40 }, + "retraction_combing": { "value": "'infill'" }, + "retraction_hop_enabled": { "value": true }, + "retraction_hop_only_when_collides": { "value": true }, + "retraction_hop": { "value": 0.3 }, + "adhesion_type": { "value": "'skirt'" }, + "relative_extrusion": { "value": true }, + "gantry_height": { "value": 28 }, + "machine_max_feedrate_z": { "value": 12 }, + "machine_max_feedrate_e": { "value": 120 }, + "machine_max_acceleration_z": { "value": 10 }, + "machine_acceleration": { "value": 1250 }, + "machine_max_jerk_xy": { "value": 10 }, + "machine_max_jerk_z": { "value": 0.3 }, + "machine_max_jerk_e": { "value": 5.0 }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" } + } +} diff --git a/resources/definitions/cremaker_m_v1.def.json b/resources/definitions/cremaker_m_v1.def.json new file mode 100644 index 0000000000..d4cd65a6da --- /dev/null +++ b/resources/definitions/cremaker_m_v1.def.json @@ -0,0 +1,40 @@ +{ + "version": 2, + "name": "Cremaker M V1", + "inherits": "cremaker_common", + "metadata": { + "visible": true, + "platform": "cremaker_platform_200.obj" + }, + + "overrides": { + "machine_name": { "default_value": "Cremaker M V1" }, + "machine_width": { "default_value": 200 }, + "machine_depth": { "default_value": 200 }, + "machine_height": { "default_value": 260 }, + "initial_layer_line_width_factor": { "default_value": 110.0 }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -35, 48 ], + [ 54, 48 ], + [ 54, -67 ], + [ -35, -67 ] + ] + }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28\nG1 Z5.0 F6000\nG1 X2 Y5 F3000\nG1 Z0.3\nG92 E0\nG1 Y100 E10 F600\nG92 E0" + }, + "machine_end_gcode": { + "default_value": "M104 S0\nM140 S0\nG92 E1\nG1 E-1 F300\nG28 X0 Y180\nM84" + }, + "jerk_enabled": { "value": true }, + "jerk_print": { "value": 8 }, + "jerk_infill": { "value": 8 }, + "jerk_wall": { "value": 8 }, + "jerk_wall_0": { "value": 8 }, + "jerk_wall_x": { "value": 8 }, + "jerk_travel": { "value": 10 }, + "jerk_layer_0": { "value": 8 } + } +} diff --git a/resources/definitions/cremaker_m_v2.def.json b/resources/definitions/cremaker_m_v2.def.json new file mode 100644 index 0000000000..2d6c4d1a7f --- /dev/null +++ b/resources/definitions/cremaker_m_v2.def.json @@ -0,0 +1,38 @@ +{ + "version": 2, + "name": "Cremaker M V2", + "inherits": "cremaker_common", + "metadata": { + "visible": true, + "platform": "cremaker_platform_220.obj" + }, + + "overrides": { + "machine_name": { "default_value": "Cremaker M V2" }, + "machine_width": { "default_value": 220 }, + "machine_depth": { "default_value": 220 }, + "machine_height": { "default_value": 260 }, + "initial_layer_line_width_factor": { "default_value": 100.0 }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -35, 48 ], + [ 54, 48 ], + [ 54, -67 ], + [ -35, -67 ] + ] + }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28\nG29\nG1 Z5.0 F6000\nG1 X2 Y5 Z0.3 F3000\nG92 E0\nG1 Y100 E10 F1500\nG0 X2.3 F3000\nG1 Y20 E8.5 F1500\nG92 E0\nG1 F2400 E-2" + }, + "machine_end_gcode": { + "default_value": "M104 S0\nM140 S0\nG92 E1\nG1 E-1 F300\nG28 X0 Y200\nM84" + }, + + "cool_fan_speed": { "value": 50 }, + "coasting_enable": { "value": true }, + "coasting_volume": { "value": 0.05 }, + "coasting_min_volume": { "value": 1.0 }, + "jerk_enabled": { "value": false } + } +} diff --git a/resources/definitions/cremaker_s_v1.def.json b/resources/definitions/cremaker_s_v1.def.json new file mode 100644 index 0000000000..101d82fac8 --- /dev/null +++ b/resources/definitions/cremaker_s_v1.def.json @@ -0,0 +1,32 @@ +{ + "version": 2, + "name": "Cremaker S V1", + "inherits": "cremaker_common", + "metadata": { + "visible": true, + "platform": "cremaker_platform_200.obj" + }, + + "overrides": { + "machine_name": { "default_value": "Cremaker S V1" }, + "machine_width": { "default_value": 200 }, + "machine_depth": { "default_value": 200 }, + "machine_height": { "default_value": 160 }, + "initial_layer_line_width_factor": { "default_value": 110.0 }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -39, 45 ], + [ 23, 45 ], + [ 23, -33 ], + [ -39, -33 ] + ] + }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28\nG1 Z5.0 F6000\nG1 X2 Y5 F3000\nG1 Z0.3\nG92 E0\nG1 Y100 E10 F600\nG92 E0" + }, + "machine_end_gcode": { + "default_value": "M104 S0 ; turn off extruder\nM140 S0 ; turn off heatbed\nG92 E1\nG1 E-1 F300\nG28 X0 Y180\nM84" + } + } +} diff --git a/resources/extruders/cremaker_extruder_0.def.json b/resources/extruders/cremaker_extruder_0.def.json new file mode 100644 index 0000000000..bf1dcce526 --- /dev/null +++ b/resources/extruders/cremaker_extruder_0.def.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "cremaker_common", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/meshes/cremaker_platform_200.obj b/resources/meshes/cremaker_platform_200.obj new file mode 100644 index 0000000000..72dd507c04 --- /dev/null +++ b/resources/meshes/cremaker_platform_200.obj @@ -0,0 +1,1870 @@ +# Blender v2.83.4 OBJ File: '' +# www.blender.org +mtllib cremaker_platform_220.mtl +o Cremaker_Bed_For_Cura_200 +v -1.890215 15.706850 0.000001 +v 6.767278 20.737940 0.000001 +v -5.775456 19.937870 0.000001 +v -6.085020 19.717300 0.000001 +v -6.206591 19.597380 0.000001 +v -6.306021 19.472389 0.000001 +v -6.404158 19.299610 0.000001 +v -6.462938 19.122049 0.000001 +v -6.482364 18.942129 0.000001 +v -6.462439 18.762270 0.000001 +v -6.403163 18.584881 0.000001 +v -6.304539 18.412380 0.000001 +v -6.204750 18.287661 0.000001 +v -6.082830 18.168079 0.000001 +v -5.772599 17.948380 0.000001 +v -0.169347 23.195789 0.000001 +v 2.503686 23.199570 0.000001 +v 0.015533 23.290100 0.000001 +v 2.318549 23.293369 0.000001 +v 0.215548 23.368071 0.000001 +v 2.118320 23.370770 0.000001 +v 0.445728 23.434031 0.000001 +v 1.887968 23.436081 0.000001 +v 0.686610 23.480829 0.000001 +v 1.646967 23.482201 0.000001 +v 1.166741 23.516991 0.000001 +v 8.977601 -31.682760 -0.000001 +v 15.463810 -27.894529 -0.000001 +v 9.126501 -31.581169 -0.000001 +v 9.251994 -31.471161 -0.000001 +v 9.354342 -31.353979 -0.000001 +v 9.435792 -31.228849 -0.000001 +v 9.497616 -31.095310 -0.000001 +v 9.540466 -30.954081 -0.000001 +v -2.474875 -23.004829 -0.000001 +v -3.486624 -14.063000 -0.000001 +v -2.653391 -22.608061 -0.000001 +v -2.900688 -22.237030 -0.000001 +v -3.052730 -22.062059 -0.000001 +v -3.221965 -21.899099 -0.000001 +v -3.400519 -21.755520 -0.000001 +v 27.762609 18.434891 0.000001 +v 1.302336 3.393586 0.000000 +v 3.475899 -0.694668 -0.000000 +v 29.570330 14.423920 0.000001 +v 29.843470 14.553590 0.000001 +v 30.123699 14.616530 0.000001 +v 30.402599 14.617650 0.000001 +v 30.671749 14.561850 0.000001 +v 30.922720 14.454050 0.000001 +v 31.147100 14.299160 0.000001 +v -26.719641 17.714270 0.000001 +v -30.969570 14.542240 0.000001 +v -30.693640 14.614890 0.000001 +v -30.396780 14.615500 0.000001 +v -30.088209 14.539130 0.000001 +v -3.517677 -0.801377 -0.000000 +v -1.435565 3.392086 0.000000 +v 2.106637 -33.573120 -0.000001 +v 2.133908 -3.020771 -0.000000 +v -2.272171 -2.965736 -0.000000 +v -2.298659 -12.744290 -0.000001 +v -2.325924 -13.082530 -0.000001 +v -2.402435 -13.372600 -0.000001 +v -2.523336 -13.613500 -0.000001 +v -2.683776 -13.804260 -0.000001 +v -2.878902 -13.943900 -0.000001 +v -3.064503 -14.020530 -0.000001 +v -3.268013 -14.060420 -0.000001 +v -2.366918 -23.413799 -0.000001 +v -2.331298 -23.821421 -0.000001 +v -2.538111 -33.729561 -0.000001 +v 2.114818 -33.739540 -0.000001 +v -100.000000 100.000000 0.000004 +v -100.000000 -100.000000 -0.000004 +v -31.579510 13.941270 0.000001 +v -31.421730 14.200490 0.000001 +v -27.414490 20.492630 0.000001 +v -27.228689 20.743530 0.000001 +v -26.998230 20.967470 0.000001 +v -26.723070 21.158649 0.000001 +v -3.097852 34.888088 0.000002 +v -3.058702 34.910809 0.000002 +v -2.760384 35.064079 0.000002 +v -2.510572 35.174419 0.000002 +v -2.024714 35.353069 0.000002 +v -1.582107 35.478981 0.000002 +v -1.080716 35.581661 0.000002 +v -0.754755 35.626011 0.000002 +v -0.411912 35.653530 0.000002 +v 0.068701 35.658569 0.000002 +v 0.572670 35.620548 0.000002 +v 1.096192 35.531940 0.000002 +v 1.635463 35.385231 0.000002 +v 2.186679 35.172890 0.000002 +v 2.746035 34.887402 0.000002 +v 100.000000 -100.000000 -0.000004 +v 20.371010 -25.084841 -0.000001 +v 15.581860 -27.858259 -0.000001 +v 3.623141 -34.783489 -0.000002 +v 3.518881 -34.835880 -0.000002 +v 3.407471 -34.868351 -0.000002 +v 3.280597 -34.881981 -0.000002 +v -3.206139 -34.884621 -0.000002 +v -3.407758 -34.910000 -0.000002 +v -3.633279 -34.894100 -0.000002 +v -3.809279 -34.856091 -0.000002 +v -3.996799 -34.794971 -0.000002 +v -4.214165 -34.700981 -0.000002 +v -4.444436 -34.577541 -0.000002 +v -31.037670 -19.223930 -0.000001 +v -31.293150 -19.038361 -0.000001 +v -31.520281 -18.799589 -0.000001 +v -31.710920 -18.522110 -0.000001 +v -31.856939 -18.220461 -0.000001 +v -31.950171 -17.909149 -0.000001 +v -31.982500 -17.602690 -0.000001 +v -31.712339 13.270770 0.000001 +v -31.679449 13.629710 0.000001 +v 100.000000 100.000000 0.000004 +v 2.771456 34.872719 0.000002 +v 7.464162 32.163349 0.000001 +v 15.253320 27.666241 0.000001 +v 27.735189 20.459780 0.000001 +v 27.760611 20.445101 0.000001 +v 27.895399 20.354771 0.000001 +v 28.012421 20.250940 0.000001 +v 28.113310 20.133301 0.000001 +v 28.195770 20.005659 0.000001 +v -31.215340 14.402460 0.000001 +v -26.995159 17.904921 0.000001 +v -27.226070 18.128401 0.000001 +v -27.412350 18.378941 0.000001 +v -27.554010 18.650749 0.000001 +v -27.623430 18.840151 0.000001 +v -27.673161 19.034679 0.000001 +v -27.703360 19.234209 0.000001 +v -27.713560 19.435499 0.000001 +v -27.703770 19.636801 0.000001 +v -27.673969 19.836390 0.000001 +v -27.624630 20.031019 0.000001 +v -27.555599 20.220551 0.000001 +v 0.976425 3.232473 0.000000 +v 0.636600 3.117338 0.000000 +v 0.287486 3.048182 0.000000 +v -0.066293 3.025005 0.000000 +v -3.345686 -0.911826 -0.000000 +v 3.139616 -0.917790 -0.000000 +v -0.420113 3.047807 0.000000 +v -0.769347 3.116588 0.000000 +v -1.109373 3.231348 0.000000 +v -3.594514 -21.626280 -0.000001 +v -12.938980 -15.140140 -0.000001 +v -12.905790 -15.448240 -0.000001 +v -12.810930 -15.763330 -0.000001 +v -12.664030 -16.069201 -0.000001 +v -12.474700 -16.349609 -0.000001 +v -12.252560 -16.588350 -0.000001 +v -12.007230 -16.769199 -0.000001 +v -2.563875 -34.102112 -0.000001 +v -2.601945 -34.265640 -0.000001 +v 2.260306 -34.209869 -0.000001 +v 2.192190 -34.059601 -0.000001 +v 2.142445 -33.897968 -0.000001 +v -3.658804 -14.040120 -0.000001 +v -3.836713 -13.995700 -0.000001 +v -4.204983 -13.841300 -0.000001 +v -12.922880 -9.899136 -0.000000 +v -11.984960 -9.349529 -0.000000 +v -12.721910 -9.347394 -0.000000 +v -12.789020 -9.421888 -0.000000 +v -12.845920 -9.517392 -0.000000 +v -12.888060 -9.630308 -0.000000 +v 9.573477 -21.213511 -0.000001 +v 9.573477 -30.649120 -0.000001 +v 15.034420 -27.542681 -0.000001 +v 15.034420 -18.158489 -0.000001 +v 10.169160 -20.177891 -0.000001 +v 9.977448 -20.309700 -0.000001 +v 9.825815 -20.460020 -0.000001 +v 9.711927 -20.627211 -0.000001 +v 9.649883 -20.762680 -0.000001 +v 9.606781 -20.906019 -0.000001 +v 15.003990 -18.001150 -0.000001 +v 14.921680 -17.866699 -0.000001 +v 14.800500 -17.765039 -0.000001 +v 14.333690 -17.755440 -0.000001 +v 15.340730 -27.890249 -0.000001 +v 15.224440 -27.849171 -0.000001 +v 15.126750 -27.775049 -0.000001 +v 15.059470 -27.671631 -0.000001 +v 28.304729 19.730980 0.000001 +v 28.341249 19.440559 0.000001 +v 31.482401 13.867730 0.000001 +v 31.576481 13.601010 0.000001 +v 31.610291 13.306840 0.000001 +v 31.698460 -17.754620 -0.000001 +v 31.678040 -18.025631 -0.000001 +v 31.618450 -18.258989 -0.000001 +v 31.522221 -18.459169 -0.000001 +v 31.427509 -18.590231 -0.000001 +v 31.314671 -18.707041 -0.000001 +v 31.184740 -18.811489 -0.000001 +v 31.038811 -18.905470 -0.000001 +v 26.822330 -21.359131 -0.000001 +v 26.698940 -21.396070 -0.000001 +v 20.966869 -24.051201 -0.000001 +v 20.956520 -24.269871 -0.000001 +v 20.904810 -24.472601 -0.000001 +v 20.816071 -24.657419 -0.000001 +v 20.727819 -24.783110 -0.000001 +v 20.623011 -24.896790 -0.000001 +v 31.336460 14.102080 0.000001 +v 28.305321 19.150070 0.000001 +v 28.196911 18.875179 0.000001 +v 28.114700 18.747379 0.000001 +v 28.014050 18.629551 0.000001 +v 27.897230 18.525490 0.000001 +v 20.966869 -14.603510 -0.000001 +v 26.274229 -21.043930 -0.000001 +v 26.274229 -11.652350 -0.000001 +v 21.562111 -13.571100 -0.000001 +v 21.370380 -13.705390 -0.000001 +v 21.218809 -13.856010 -0.000001 +v 21.105040 -14.022040 -0.000001 +v 21.043091 -14.156130 -0.000001 +v 21.000080 -14.298000 -0.000001 +v 26.574249 -21.392080 -0.000001 +v 26.458860 -21.351021 -0.000001 +v 26.363340 -21.276751 -0.000001 +v 26.298269 -21.173100 -0.000001 +v 2.856881 -1.162039 -0.000000 +v -3.183302 -1.040252 -0.000000 +v -3.017757 -1.198799 -0.000000 +v 2.624997 -1.426512 -0.000000 +v -2.865824 -1.373666 -0.000000 +v 2.441266 -1.710312 -0.000000 +v -2.616956 -1.744172 -0.000000 +v 2.344197 -1.909804 -0.000000 +v -2.429858 -2.145653 -0.000000 +v 2.266531 -2.117218 -0.000000 +v 2.207469 -2.332289 -0.000000 +v -2.312331 -2.559157 -0.000000 +v 2.166210 -2.554749 -0.000000 +v -2.282093 -2.764497 -0.000000 +v 2.434501 -34.463181 -0.000002 +v -2.656312 -34.412819 -0.000002 +v 2.651738 -34.663250 -0.000002 +v -2.753508 -34.582069 -0.000002 +v -2.878132 -34.718540 -0.000002 +v 2.895620 -34.802711 -0.000002 +v -3.029303 -34.820099 -0.000002 +v 3.149746 -34.874161 -0.000002 +v -12.348020 -9.227452 -0.000000 +v -12.458250 -9.229397 -0.000000 +v -12.230520 -9.246961 -0.000000 +v -12.555370 -9.250595 -0.000000 +v -12.643580 -9.290076 -0.000000 +v 14.493510 -17.699530 -0.000001 +v 14.653450 -17.706020 -0.000001 +v 25.891661 -11.178740 -0.000000 +v 25.733061 -11.186380 -0.000000 +v 26.037319 -11.223560 -0.000000 +v 25.573780 -11.248510 -0.000000 +v 26.157789 -11.318790 -0.000000 +v 26.240850 -11.462400 -0.000001 +v -30.088209 14.539130 -0.999999 +v -3.517677 -0.801377 -1.000000 +v -2.429858 -2.145653 -1.000000 +v -2.312331 -2.559157 -1.000000 +v -2.282093 -2.764497 -1.000000 +v -2.272171 -2.965736 -1.000000 +v -2.616956 -1.744172 -1.000000 +v -2.865824 -1.373666 -1.000000 +v -3.017757 -1.198799 -1.000000 +v -3.183302 -1.040252 -1.000000 +v -3.345686 -0.911826 -1.000000 +v -2.298659 -12.744290 -1.000001 +v -3.268013 -14.060420 -1.000001 +v -3.486624 -14.063000 -1.000001 +v -3.658804 -14.040120 -1.000001 +v -3.836713 -13.995700 -1.000001 +v -4.204983 -13.841300 -1.000001 +v -3.064503 -14.020530 -1.000001 +v -2.878902 -13.943900 -1.000001 +v -2.683776 -13.804260 -1.000001 +v -2.523336 -13.613500 -1.000001 +v -2.402435 -13.372600 -1.000001 +v -2.325924 -13.082530 -1.000001 +v -11.984960 -9.349529 -1.000000 +v -12.721910 -9.347394 -1.000000 +v -12.789020 -9.421888 -1.000000 +v -12.845920 -9.517392 -1.000000 +v -12.888060 -9.630308 -1.000000 +v -12.922880 -9.899136 -1.000000 +v -12.643580 -9.290076 -1.000000 +v -12.555370 -9.250595 -1.000000 +v -12.458250 -9.229397 -1.000000 +v -12.348020 -9.227452 -1.000000 +v -12.230520 -9.246961 -1.000000 +v -12.938980 -15.140140 -1.000001 +v -12.474700 -16.349609 -1.000001 +v -12.252560 -16.588350 -1.000001 +v -12.007230 -16.769199 -1.000001 +v -12.664030 -16.069201 -1.000001 +v -12.810930 -15.763330 -1.000001 +v -12.905790 -15.448240 -1.000001 +v -3.594514 -21.626280 -1.000001 +v -2.653391 -22.608061 -1.000001 +v -2.474875 -23.004829 -1.000001 +v -2.366918 -23.413799 -1.000001 +v -2.331298 -23.821421 -1.000001 +v -2.900688 -22.237030 -1.000001 +v -3.052730 -22.062059 -1.000001 +v -3.221965 -21.899099 -1.000001 +v -3.400519 -21.755520 -1.000001 +v -2.538111 -33.729561 -1.000001 +v -3.407758 -34.910000 -1.000002 +v -3.633279 -34.894100 -1.000002 +v -3.809279 -34.856091 -1.000002 +v -3.996799 -34.794971 -1.000002 +v -4.214165 -34.700981 -1.000002 +v -4.444436 -34.577541 -1.000002 +v -3.206139 -34.884621 -1.000002 +v -3.029303 -34.820099 -1.000002 +v -2.878132 -34.718540 -1.000002 +v -2.753508 -34.582069 -1.000002 +v -2.656312 -34.412819 -1.000002 +v -2.601945 -34.265640 -1.000002 +v -2.563875 -34.102112 -1.000002 +v -31.037670 -19.223930 -1.000001 +v -31.856939 -18.220461 -1.000001 +v -31.950171 -17.909149 -1.000001 +v -31.982500 -17.602690 -1.000001 +v -31.710920 -18.522110 -1.000001 +v -31.520281 -18.799589 -1.000001 +v -31.293150 -19.038361 -1.000001 +v -31.712339 13.270770 -0.999999 +v -30.969570 14.542240 -0.999999 +v -30.693640 14.614890 -0.999999 +v -30.396780 14.615500 -0.999999 +v -31.215340 14.402460 -0.999999 +v -31.421730 14.200490 -0.999999 +v -31.579510 13.941270 -0.999999 +v -31.679449 13.629710 -0.999999 +v 2.503686 23.199570 -0.999999 +v 6.767278 20.737940 -0.999999 +v 2.318549 23.293369 -0.999999 +v 2.118320 23.370770 -0.999999 +v 1.887968 23.436081 -0.999999 +v 1.646967 23.482201 -0.999999 +v 1.166741 23.516991 -0.999999 +v 0.686610 23.480829 -0.999999 +v 0.445728 23.434031 -0.999999 +v 0.215548 23.368071 -0.999999 +v 0.015533 23.290100 -0.999999 +v -0.169347 23.195789 -0.999999 +v -5.775456 19.937870 -0.999999 +v -6.085020 19.717300 -0.999999 +v -6.206591 19.597380 -0.999999 +v -6.306021 19.472389 -0.999999 +v -6.404158 19.299610 -0.999999 +v -6.462938 19.122049 -0.999999 +v -6.482364 18.942129 -0.999999 +v -6.462439 18.762270 -0.999999 +v -6.403163 18.584881 -0.999999 +v -6.304539 18.412380 -0.999999 +v -6.204750 18.287661 -0.999999 +v -6.082830 18.168079 -0.999999 +v -5.772599 17.948380 -0.999999 +v -1.890215 15.706850 -0.999999 +v 1.302336 3.393586 -1.000000 +v 27.762609 18.434891 -0.999999 +v 0.976425 3.232473 -1.000000 +v 0.636600 3.117338 -1.000000 +v 0.287486 3.048182 -1.000000 +v -0.066293 3.025005 -1.000000 +v -0.420113 3.047807 -1.000000 +v -0.769347 3.116588 -1.000000 +v -1.109373 3.231348 -1.000000 +v -1.435565 3.392086 -1.000000 +v -26.719641 17.714270 -0.999999 +v -26.995159 17.904921 -0.999999 +v -27.226070 18.128401 -0.999999 +v -27.412350 18.378941 -0.999999 +v -27.554010 18.650749 -0.999999 +v -27.623430 18.840151 -0.999999 +v -27.673161 19.034679 -0.999999 +v -27.703360 19.234209 -0.999999 +v -27.713560 19.435499 -0.999999 +v -27.703770 19.636801 -0.999999 +v -27.673969 19.836390 -0.999999 +v -27.624630 20.031019 -0.999999 +v -27.555599 20.220551 -0.999999 +v -27.414490 20.492630 -0.999999 +v -27.228689 20.743530 -0.999999 +v -26.998230 20.967470 -0.999999 +v -26.723070 21.158649 -0.999999 +v -3.097852 34.888088 -0.999998 +v -3.058702 34.910809 -0.999998 +v -2.760384 35.064079 -0.999998 +v -2.510572 35.174419 -0.999998 +v -2.024714 35.353069 -0.999998 +v -1.582107 35.478981 -0.999998 +v -1.080716 35.581661 -0.999998 +v -0.754755 35.626011 -0.999998 +v -0.411912 35.653530 -0.999998 +v 0.068701 35.658569 -0.999998 +v 0.572670 35.620548 -0.999998 +v 1.096192 35.531940 -0.999998 +v 1.635463 35.385231 -0.999998 +v 2.186679 35.172890 -0.999998 +v 2.746035 34.887402 -0.999998 +v 2.771456 34.872719 -0.999998 +v 7.464162 32.163349 -0.999999 +v 15.253320 27.666241 -0.999999 +v 27.735189 20.459780 -0.999999 +v 27.760611 20.445101 -0.999999 +v 27.895399 20.354771 -0.999999 +v 28.012421 20.250940 -0.999999 +v 28.113310 20.133301 -0.999999 +v 28.195770 20.005659 -0.999999 +v 28.304729 19.730980 -0.999999 +v 28.341249 19.440559 -0.999999 +v 28.305321 19.150070 -0.999999 +v 28.196911 18.875179 -0.999999 +v 28.114700 18.747379 -0.999999 +v 28.014050 18.629551 -0.999999 +v 27.897230 18.525490 -0.999999 +v 31.698460 -17.754620 -1.000001 +v 31.678040 -18.025631 -1.000001 +v 31.618450 -18.258989 -1.000001 +v 31.522221 -18.459169 -1.000001 +v 31.427509 -18.590231 -1.000001 +v 31.314671 -18.707041 -1.000001 +v 31.184740 -18.811489 -1.000001 +v 31.038811 -18.905470 -1.000001 +v 26.822330 -21.359131 -1.000001 +v 26.698940 -21.396070 -1.000001 +v 26.574249 -21.392080 -1.000001 +v 26.458860 -21.351021 -1.000001 +v 26.363340 -21.276751 -1.000001 +v 26.298269 -21.173100 -1.000001 +v 26.274229 -21.043930 -1.000001 +v 26.274229 -11.652350 -1.000000 +v 26.240850 -11.462400 -1.000000 +v 26.157789 -11.318790 -1.000000 +v 26.037319 -11.223560 -1.000000 +v 25.891661 -11.178740 -1.000000 +v 25.733061 -11.186380 -1.000000 +v 25.573780 -11.248510 -1.000000 +v 21.562111 -13.571100 -1.000001 +v 21.370380 -13.705390 -1.000001 +v 21.218809 -13.856010 -1.000001 +v 21.105040 -14.022040 -1.000001 +v 21.043091 -14.156130 -1.000001 +v 21.000080 -14.298000 -1.000001 +v 20.966869 -14.603510 -1.000001 +v 20.966869 -24.051201 -1.000001 +v 20.956520 -24.269871 -1.000001 +v 20.904810 -24.472601 -1.000001 +v 20.816071 -24.657419 -1.000001 +v 20.727819 -24.783110 -1.000001 +v 20.623011 -24.896790 -1.000001 +v 20.371010 -25.084841 -1.000001 +v 15.581860 -27.858259 -1.000001 +v 15.463810 -27.894529 -1.000001 +v 15.340730 -27.890249 -1.000001 +v 15.224440 -27.849171 -1.000001 +v 15.126750 -27.775049 -1.000001 +v 15.059470 -27.671631 -1.000001 +v 15.034420 -27.542681 -1.000001 +v 15.034420 -18.158489 -1.000001 +v 15.003990 -18.001150 -1.000001 +v 14.921680 -17.866699 -1.000001 +v 14.800500 -17.765039 -1.000001 +v 14.653450 -17.706020 -1.000001 +v 14.493510 -17.699530 -1.000001 +v 14.333690 -17.755440 -1.000001 +v 10.169160 -20.177891 -1.000001 +v 9.977448 -20.309700 -1.000001 +v 9.825815 -20.460020 -1.000001 +v 9.711927 -20.627211 -1.000001 +v 9.649883 -20.762680 -1.000001 +v 9.606781 -20.906019 -1.000001 +v 9.573477 -21.213511 -1.000001 +v 9.573477 -30.649120 -1.000001 +v 9.540466 -30.954081 -1.000001 +v 9.497616 -31.095310 -1.000001 +v 9.435792 -31.228849 -1.000001 +v 9.354342 -31.353979 -1.000001 +v 9.251994 -31.471161 -1.000001 +v 9.126501 -31.581169 -1.000001 +v 8.977601 -31.682760 -1.000001 +v 3.623141 -34.783489 -1.000002 +v 3.518881 -34.835880 -1.000002 +v 3.407471 -34.868351 -1.000002 +v 3.280597 -34.881981 -1.000002 +v 3.149746 -34.874161 -1.000002 +v 2.895620 -34.802711 -1.000002 +v 2.651738 -34.663250 -1.000002 +v 2.434501 -34.463181 -1.000002 +v 2.260306 -34.209869 -1.000002 +v 2.192190 -34.059601 -1.000001 +v 2.142445 -33.897968 -1.000001 +v 2.114818 -33.739540 -1.000001 +v 2.106637 -33.573120 -1.000001 +v 2.133908 -3.020771 -1.000000 +v 2.166210 -2.554749 -1.000000 +v 2.207469 -2.332289 -1.000000 +v 2.266531 -2.117218 -1.000000 +v 2.344197 -1.909804 -1.000000 +v 2.441266 -1.710312 -1.000000 +v 2.624997 -1.426512 -1.000000 +v 2.856881 -1.162039 -1.000000 +v 3.139616 -0.917790 -1.000000 +v 3.475899 -0.694668 -1.000000 +v 29.570330 14.423920 -0.999999 +v 29.843470 14.553590 -0.999999 +v 30.123699 14.616530 -0.999999 +v 30.402599 14.617650 -0.999999 +v 30.671749 14.561850 -0.999999 +v 30.922720 14.454050 -0.999999 +v 31.147100 14.299160 -0.999999 +v 31.336460 14.102080 -0.999999 +v 31.482401 13.867730 -0.999999 +v 31.576481 13.601010 -0.999999 +v 31.610291 13.306840 -0.999999 +v -100.000000 -100.000000 -3.000004 +v -100.000000 100.000000 -2.999996 +v 100.000000 -100.000000 -3.000004 +v 100.000000 100.000000 -2.999996 +vn 0.0000 -0.0000 1.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.9064 -0.4224 0.0000 +vn -0.9619 -0.2734 0.0000 +vn -0.9893 -0.1457 0.0000 +vn -0.9988 -0.0492 0.0000 +vn -0.8301 -0.5576 0.0000 +vn -0.7549 -0.6559 0.0000 +vn -0.6917 -0.7222 0.0000 +vn -0.6203 -0.7843 0.0000 +vn -0.5404 -0.8414 0.0000 +vn -1.0000 0.0027 0.0000 +vn -0.1924 0.9813 0.0000 +vn -0.0118 0.9999 0.0000 +vn 0.1317 0.9913 0.0000 +vn 0.2422 0.9702 0.0000 +vn 0.3866 0.9222 0.0000 +vn 0.3867 0.9222 0.0000 +vn -0.3816 0.9243 0.0000 +vn -0.5820 0.8132 0.0000 +vn -0.7653 0.6437 0.0000 +vn -0.8938 0.4486 0.0000 +vn -0.9669 0.2550 0.0000 +vn -0.9968 0.0803 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5905 0.8070 0.0000 +vn -0.7430 0.6693 0.0000 +vn -0.8591 0.5118 0.0000 +vn -0.9369 0.3497 0.0000 +vn -0.9369 0.3496 0.0000 +vn -0.9917 0.1285 0.0000 +vn -0.4085 0.9127 0.0000 +vn -0.2132 0.9770 0.0000 +vn -0.0176 0.9998 0.0000 +vn 0.1638 0.9865 0.0000 +vn 0.3854 0.9227 0.0000 +vn -1.0000 0.0031 0.0000 +vn -0.8288 -0.5596 0.0000 +vn -0.7321 -0.6812 0.0000 +vn -0.5934 -0.8049 0.0000 +vn -0.9014 -0.4329 0.0000 +vn -0.9575 -0.2883 0.0000 +vn -0.9942 -0.1071 0.0000 +vn -0.8321 -0.5546 0.0000 +vn -0.9119 -0.4103 0.0000 +vn -0.9669 -0.2552 0.0000 +vn -0.9962 -0.0871 0.0000 +vn -0.7548 -0.6559 0.0000 +vn -0.6936 -0.7203 0.0000 +vn -0.6267 -0.7793 0.0000 +vn -0.5544 -0.8322 0.0000 +vn -0.9998 0.0209 0.0000 +vn -0.1249 0.9922 0.0000 +vn 0.0703 0.9975 0.0000 +vn 0.2111 0.9775 0.0000 +vn 0.3099 0.9508 0.0000 +vn 0.3969 0.9179 0.0000 +vn 0.4725 0.8814 0.0000 +vn -0.3428 0.9394 0.0000 +vn -0.5577 0.8301 0.0000 +vn -0.7384 0.6743 0.0000 +vn -0.8672 0.4980 0.0000 +vn -0.9380 0.3465 0.0000 +vn -0.9740 0.2267 0.0000 +vn -0.9976 0.0690 0.0000 +vn 0.9001 0.4357 0.0000 +vn 0.9580 0.2869 0.0000 +vn 0.9945 0.1049 0.0000 +vn 0.8242 0.5663 0.0000 +vn 0.7245 0.6892 0.0000 +vn 0.5877 0.8091 0.0000 +vn 1.0000 -0.0088 0.0000 +vn 0.4944 -0.8692 0.0000 +vn 0.2546 -0.9670 0.0000 +vn 0.0021 -1.0000 0.0000 +vn -0.2402 -0.9707 0.0000 +vn 0.6994 -0.7147 0.0000 +vn 0.8542 -0.5199 0.0000 +vn 0.9522 -0.3054 0.0000 +vn 0.9958 -0.0913 0.0000 +vn 0.9958 -0.0912 0.0000 +vn 0.4520 0.8920 0.0000 +vn 0.3606 0.9327 0.0000 +vn 0.2728 0.9621 0.0000 +vn 0.1880 0.9822 0.0000 +vn 0.0723 0.9974 0.0000 +vn -0.0751 0.9972 0.0000 +vn -0.1907 0.9816 0.0000 +vn -0.2755 0.9613 0.0000 +vn -0.3632 0.9317 0.0000 +vn -0.4544 0.8908 0.0000 +vn -0.5025 0.8646 0.0000 +vn -0.5803 0.8144 0.0000 +vn -0.7023 0.7119 0.0000 +vn -0.7826 0.6225 0.0000 +vn -0.8695 0.4939 0.0000 +vn -0.9493 0.3143 0.0000 +vn -0.9942 0.1073 0.0000 +vn -0.9939 -0.1101 0.0000 +vn -0.9484 -0.3169 0.0000 +vn -0.8681 -0.4963 0.0000 +vn -0.7808 -0.6248 0.0000 +vn -0.7808 -0.6247 0.0000 +vn -0.7002 -0.7139 0.0000 +vn -0.5779 -0.8161 0.0000 +vn 0.5024 -0.8646 0.0000 +vn -0.4942 0.8694 0.0000 +vn -0.4432 0.8964 0.0000 +vn -0.3209 0.9471 0.0000 +vn -0.1943 0.9809 0.0000 +vn -0.0654 0.9979 0.0000 +vn 0.0643 0.9979 0.0000 +vn 0.1932 0.9812 0.0000 +vn 0.3198 0.9475 0.0000 +vn 0.4420 0.8970 0.0000 +vn 0.4929 0.8701 0.0000 +vn 0.5690 0.8223 0.0000 +vn 0.6954 0.7186 0.0000 +vn 0.8025 0.5967 0.0000 +vn 0.8868 0.4622 0.0000 +vn 0.9389 0.3441 0.0000 +vn 0.9688 0.2477 0.0000 +vn 0.9887 0.1496 0.0000 +vn 0.9887 0.1497 0.0000 +vn 0.9987 0.0506 0.0000 +vn 0.9988 -0.0486 0.0000 +vn 0.9890 -0.1477 0.0000 +vn 0.9693 -0.2457 0.0000 +vn 0.9396 -0.3422 0.0000 +vn 0.8877 -0.4604 0.0000 +vn 0.8036 -0.5951 0.0000 +vn 0.6969 -0.7172 0.0000 +vn 0.5706 -0.8212 0.0000 +vn 0.5025 -0.8646 0.0000 +vn 0.5019 -0.8649 0.0000 +vn 0.4570 -0.8895 0.0000 +vn 0.4040 -0.9147 0.0000 +vn 0.3451 -0.9386 0.0000 +vn 0.2736 -0.9618 0.0000 +vn 0.2006 -0.9797 0.0000 +vn 0.1348 -0.9909 0.0000 +vn 0.0800 -0.9968 0.0000 +vn 0.0105 -0.9999 0.0000 +vn -0.0752 -0.9972 0.0000 +vn -0.1669 -0.9860 0.0000 +vn -0.2625 -0.9649 0.0000 +vn -0.3595 -0.9332 0.0000 +vn -0.4546 -0.8907 0.0000 +vn -0.5001 -0.8659 0.0000 +vn -0.5002 -0.8659 0.0000 +vn -0.5001 -0.8660 0.0000 +vn -0.5567 -0.8307 0.0000 +vn -0.6637 -0.7480 0.0000 +vn -0.7591 -0.6510 0.0000 +vn -0.8400 -0.5427 0.0000 +vn -0.8400 -0.5426 0.0000 +vn -0.9295 -0.3687 0.0000 +vn -0.9922 -0.1248 0.0000 +vn -0.9924 0.1228 0.0000 +vn -0.9924 0.1227 0.0000 +vn -0.9303 0.3669 0.0000 +vn -0.8410 0.5410 0.0000 +vn -0.7604 0.6495 0.0000 +vn -0.6651 0.7467 0.0000 +vn -0.6652 0.7467 0.0000 +vn -0.5583 0.8296 0.0000 +vn -0.9972 0.0751 0.0000 +vn -0.9689 0.2474 0.0000 +vn -0.9013 0.4333 0.0000 +vn -0.8105 0.5857 0.0000 +vn -0.7192 0.6948 0.0000 +vn -0.6265 0.7794 0.0000 +vn -0.5414 0.8407 0.0000 +vn -0.5415 0.8407 0.0000 +vn -0.5030 0.8643 0.0000 +vn -0.2868 0.9580 0.0000 +vn 0.0320 0.9995 0.0000 +vn 0.3352 0.9421 0.0000 +vn 0.6138 0.7894 0.0000 +vn 0.8469 0.5317 0.0000 +vn 0.9831 0.1830 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.9849 0.1731 0.0000 +vn 0.8656 0.5007 0.0000 +vn 0.6201 0.7845 0.0000 +vn 0.2941 0.9558 0.0000 +vn -0.0481 0.9988 0.0000 +vn -0.3634 0.9316 0.0000 +vn -0.5010 0.8654 0.0000 +vn -0.5737 0.8191 0.0000 +vn -0.7049 0.7093 0.0000 +vn -0.8249 0.5653 0.0000 +vn -0.9078 0.4194 0.0000 +vn -0.9570 0.2901 0.0000 +vn -0.9941 0.1081 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.9989 0.0473 0.0000 +vn -0.9690 0.2472 0.0000 +vn -0.9690 0.2471 0.0000 +vn -0.9015 0.4328 0.0000 +vn -0.8184 0.5746 0.0000 +vn -0.7352 0.6778 0.0000 +vn -0.5981 0.8014 0.0000 +vn -0.5011 0.8654 0.0000 +vn -0.2937 0.9559 0.0000 +vn 0.0348 0.9994 0.0000 +vn 0.3331 0.9429 0.0000 +vn 0.6044 0.7966 0.0000 +vn 0.6045 0.7966 0.0000 +vn 0.8382 0.5453 0.0000 +vn 0.9817 0.1907 0.0000 +vn 0.9816 0.1907 0.0000 +vn 0.9818 0.1899 0.0000 +vn 0.8529 0.5221 0.0000 +vn 0.6427 0.7661 0.0000 +vn 0.3725 0.9280 0.0000 +vn 0.0405 0.9992 0.0000 +vn -0.3302 0.9439 0.0000 +vn -0.5028 0.8644 0.0000 +vn -0.5666 0.8240 0.0000 +vn -0.7040 0.7102 0.0000 +vn -0.8265 0.5630 0.0000 +vn -0.9092 0.4164 0.0000 +vn -0.9576 0.2880 0.0000 +vn -0.9942 0.1077 0.0000 +vn -0.9942 0.1076 0.0000 +vn -0.9569 0.2903 0.0000 +vn -0.9075 0.4201 0.0000 +vn -0.8381 0.5455 0.0000 +vn -0.7532 0.6578 0.0000 +vn -0.6592 0.7520 0.0000 +vn -0.5636 0.8260 0.0000 +vn -0.5636 0.8261 0.0000 +vn -0.4490 0.8935 0.0000 +vn -0.2798 0.9601 0.0000 +vn -0.1068 0.9943 0.0000 +vn 0.0597 0.9982 0.0000 +vn 0.2707 0.9627 0.0000 +vn 0.4964 0.8681 0.0000 +vn 0.6774 0.7356 0.0000 +vn 0.8240 0.5666 0.0000 +vn 0.9108 0.4129 0.0000 +vn 0.9558 0.2942 0.0000 +vn 0.9558 0.2941 0.0000 +vn 0.9851 0.1718 0.0000 +vn 0.9988 0.0491 0.0000 +vn 1.0000 -0.0009 0.0000 +vn 0.9976 -0.0691 0.0000 +vn 0.9832 -0.1824 0.0000 +vn 0.9643 -0.2648 0.0000 +vn 0.9365 -0.3507 0.0000 +vn 0.8992 -0.4375 0.0000 +vn 0.8394 -0.5435 0.0000 +vn 0.8394 -0.5434 0.0000 +vn 0.7519 -0.6593 0.0000 +vn 0.6537 -0.7567 0.0000 +vn 0.5529 -0.8333 0.0000 +vn 0.5013 -0.8653 0.0000 +vn 0.4289 -0.9034 0.0000 +vn 0.2191 -0.9757 0.0000 +vn 0.0040 -1.0000 0.0000 +vn -0.2030 -0.9792 0.0000 +vn -0.3947 -0.9188 0.0000 +vn -0.5681 -0.8230 0.0000 +vn -0.7211 -0.6928 0.0000 +vn -0.8489 -0.5286 0.0000 +vn -0.9431 -0.3326 0.0000 +vn -0.9935 -0.1142 0.0000 +vn -1.0000 -0.0028 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +usemtl None +s off +f 1//1 2//1 3//1 +f 1//1 3//1 4//1 +f 1//1 4//1 5//1 +f 1//1 5//1 6//1 +f 1//1 6//1 7//1 +f 1//1 7//1 8//1 +f 1//1 8//1 9//1 +f 1//1 9//1 10//1 +f 1//1 10//1 11//1 +f 1//1 11//1 12//1 +f 1//1 12//1 13//1 +f 1//1 13//1 14//1 +f 1//1 14//1 15//1 +f 3//1 2//1 16//1 +f 16//1 2//1 17//1 +f 16//1 17//1 18//1 +f 18//1 17//1 19//1 +f 18//1 19//1 20//1 +f 20//1 19//1 21//1 +f 20//1 21//1 22//1 +f 22//1 21//1 23//1 +f 22//1 23//1 24//1 +f 24//1 23//1 25//1 +f 24//1 25//1 26//1 +f 27//1 28//1 29//1 +f 29//1 28//1 30//1 +f 30//1 28//1 31//1 +f 31//1 28//1 32//1 +f 32//1 28//1 33//1 +f 33//1 28//1 34//1 +f 35//1 36//1 37//1 +f 37//1 36//1 38//1 +f 38//1 36//1 39//1 +f 39//1 36//1 40//1 +f 40//1 36//1 41//1 +f 42//1 43//1 44//1 +f 42//1 44//1 45//1 +f 42//1 45//1 46//1 +f 42//1 46//1 47//1 +f 42//1 47//1 48//1 +f 42//1 48//1 49//1 +f 42//1 49//1 50//1 +f 42//1 50//1 51//1 +f 52//1 53//1 54//1 +f 52//1 54//1 55//1 +f 52//1 55//1 56//1 +f 52//1 56//1 57//1 +f 52//1 57//1 58//1 +f 59//1 60//1 61//1 +f 59//1 61//1 62//1 +f 59//1 62//1 63//1 +f 59//1 63//1 64//1 +f 59//1 64//1 65//1 +f 59//1 65//1 66//1 +f 59//1 66//1 67//1 +f 59//1 67//1 68//1 +f 59//1 68//1 69//1 +f 59//1 69//1 36//1 +f 59//1 36//1 35//1 +f 59//1 35//1 70//1 +f 59//1 70//1 71//1 +f 59//1 71//1 72//1 +f 59//1 72//1 73//1 +f 74//1 75//1 76//1 +f 74//1 76//1 77//1 +f 74//1 77//1 78//1 +f 74//1 78//1 79//1 +f 74//1 79//1 80//1 +f 74//1 80//1 81//1 +f 74//1 81//1 82//1 +f 74//1 82//1 83//1 +f 74//1 83//1 84//1 +f 74//1 84//1 85//1 +f 74//1 85//1 86//1 +f 74//1 86//1 87//1 +f 74//1 87//1 88//1 +f 74//1 88//1 89//1 +f 74//1 89//1 90//1 +f 74//1 90//1 91//1 +f 74//1 91//1 92//1 +f 74//1 92//1 93//1 +f 74//1 93//1 94//1 +f 74//1 94//1 95//1 +f 74//1 95//1 96//1 +f 75//1 97//1 98//1 +f 75//1 98//1 99//1 +f 75//1 99//1 28//1 +f 75//1 28//1 27//1 +f 75//1 27//1 100//1 +f 75//1 100//1 101//1 +f 75//1 101//1 102//1 +f 75//1 102//1 103//1 +f 75//1 103//1 104//1 +f 75//1 104//1 105//1 +f 75//1 105//1 106//1 +f 75//1 106//1 107//1 +f 75//1 107//1 108//1 +f 75//1 108//1 109//1 +f 75//1 109//1 110//1 +f 75//1 110//1 111//1 +f 75//1 111//1 112//1 +f 75//1 112//1 113//1 +f 75//1 113//1 114//1 +f 75//1 114//1 115//1 +f 75//1 115//1 116//1 +f 75//1 116//1 117//1 +f 75//1 117//1 118//1 +f 75//1 118//1 119//1 +f 75//1 119//1 76//1 +f 120//1 74//1 96//1 +f 120//1 96//1 121//1 +f 120//1 121//1 122//1 +f 120//1 122//1 123//1 +f 120//1 123//1 124//1 +f 120//1 124//1 125//1 +f 120//1 125//1 126//1 +f 120//1 126//1 127//1 +f 120//1 127//1 128//1 +f 120//1 128//1 129//1 +f 120//1 129//1 97//1 +f 130//1 53//1 52//1 +f 130//1 52//1 131//1 +f 130//1 131//1 132//1 +f 130//1 132//1 133//1 +f 130//1 133//1 134//1 +f 77//1 130//1 134//1 +f 77//1 134//1 135//1 +f 77//1 135//1 136//1 +f 77//1 136//1 137//1 +f 77//1 137//1 138//1 +f 77//1 138//1 139//1 +f 77//1 139//1 140//1 +f 77//1 140//1 141//1 +f 77//1 141//1 142//1 +f 77//1 142//1 78//1 +f 44//1 43//1 143//1 +f 44//1 143//1 144//1 +f 44//1 144//1 145//1 +f 44//1 145//1 146//1 +f 57//1 147//1 148//1 +f 57//1 148//1 44//1 +f 57//1 44//1 146//1 +f 57//1 146//1 149//1 +f 57//1 149//1 150//1 +f 57//1 150//1 151//1 +f 57//1 151//1 58//1 +f 152//1 41//1 36//1 +f 152//1 36//1 153//1 +f 152//1 153//1 154//1 +f 152//1 154//1 155//1 +f 152//1 155//1 156//1 +f 152//1 156//1 157//1 +f 152//1 157//1 158//1 +f 152//1 158//1 159//1 +f 160//1 161//1 162//1 +f 160//1 162//1 163//1 +f 160//1 163//1 164//1 +f 160//1 164//1 73//1 +f 160//1 73//1 72//1 +f 153//1 36//1 165//1 +f 153//1 165//1 166//1 +f 153//1 166//1 167//1 +f 153//1 167//1 168//1 +f 167//1 169//1 170//1 +f 167//1 170//1 171//1 +f 167//1 171//1 172//1 +f 167//1 172//1 173//1 +f 167//1 173//1 168//1 +f 174//1 175//1 176//1 +f 174//1 176//1 177//1 +f 174//1 177//1 178//1 +f 174//1 178//1 179//1 +f 174//1 179//1 180//1 +f 174//1 180//1 181//1 +f 174//1 181//1 182//1 +f 174//1 182//1 183//1 +f 178//1 177//1 184//1 +f 178//1 184//1 185//1 +f 178//1 185//1 186//1 +f 178//1 186//1 187//1 +f 175//1 34//1 28//1 +f 175//1 28//1 188//1 +f 175//1 188//1 189//1 +f 175//1 189//1 190//1 +f 175//1 190//1 191//1 +f 175//1 191//1 176//1 +f 97//1 129//1 192//1 +f 97//1 192//1 193//1 +f 97//1 193//1 194//1 +f 97//1 194//1 195//1 +f 97//1 195//1 196//1 +f 97//1 196//1 197//1 +f 97//1 197//1 198//1 +f 97//1 198//1 199//1 +f 97//1 199//1 200//1 +f 97//1 200//1 201//1 +f 97//1 201//1 202//1 +f 97//1 202//1 203//1 +f 97//1 203//1 204//1 +f 97//1 204//1 205//1 +f 97//1 205//1 206//1 +f 97//1 206//1 207//1 +f 97//1 207//1 208//1 +f 97//1 208//1 209//1 +f 97//1 209//1 210//1 +f 97//1 210//1 211//1 +f 97//1 211//1 212//1 +f 97//1 212//1 98//1 +f 213//1 194//1 193//1 +f 213//1 193//1 214//1 +f 213//1 214//1 215//1 +f 213//1 215//1 216//1 +f 213//1 216//1 217//1 +f 213//1 217//1 218//1 +f 213//1 218//1 42//1 +f 213//1 42//1 51//1 +f 219//1 207//1 220//1 +f 219//1 220//1 221//1 +f 219//1 221//1 222//1 +f 219//1 222//1 223//1 +f 219//1 223//1 224//1 +f 219//1 224//1 225//1 +f 219//1 225//1 226//1 +f 219//1 226//1 227//1 +f 207//1 206//1 228//1 +f 207//1 228//1 229//1 +f 207//1 229//1 230//1 +f 207//1 230//1 231//1 +f 207//1 231//1 220//1 +f 148//1 147//1 232//1 +f 232//1 147//1 233//1 +f 232//1 233//1 234//1 +f 232//1 234//1 235//1 +f 235//1 234//1 236//1 +f 235//1 236//1 237//1 +f 237//1 236//1 238//1 +f 237//1 238//1 239//1 +f 239//1 238//1 240//1 +f 239//1 240//1 241//1 +f 241//1 240//1 242//1 +f 242//1 240//1 243//1 +f 242//1 243//1 244//1 +f 244//1 243//1 60//1 +f 60//1 243//1 245//1 +f 60//1 245//1 61//1 +f 162//1 161//1 246//1 +f 246//1 161//1 247//1 +f 246//1 247//1 248//1 +f 248//1 247//1 249//1 +f 248//1 249//1 250//1 +f 248//1 250//1 251//1 +f 251//1 250//1 252//1 +f 251//1 252//1 253//1 +f 253//1 252//1 104//1 +f 253//1 104//1 103//1 +f 254//1 255//1 256//1 +f 256//1 255//1 257//1 +f 256//1 257//1 169//1 +f 169//1 257//1 258//1 +f 169//1 258//1 170//1 +f 187//1 186//1 259//1 +f 259//1 186//1 260//1 +f 261//1 262//1 263//1 +f 263//1 262//1 264//1 +f 263//1 264//1 265//1 +f 265//1 264//1 222//1 +f 265//1 222//1 266//1 +f 266//1 222//1 221//1 +f 267//2 268//2 56//2 +f 56//2 268//2 57//2 +f 238//3 269//3 240//3 +f 240//4 269//4 270//4 +f 240//4 270//4 243//4 +f 243//5 270//5 271//5 +f 243//5 271//5 245//5 +f 245//6 271//6 272//6 +f 245//6 272//6 61//6 +f 269//3 238//3 273//3 +f 273//7 238//7 236//7 +f 273//7 236//7 274//7 +f 274//8 236//8 234//8 +f 274//8 234//8 275//8 +f 275//9 234//9 233//9 +f 275//9 233//9 276//9 +f 276//10 233//10 147//10 +f 276//10 147//10 277//10 +f 277//11 147//11 57//11 +f 277//11 57//11 268//11 +f 272//12 278//12 61//12 +f 61//12 278//12 62//12 +f 68//13 279//13 69//13 +f 69//14 279//14 280//14 +f 69//14 280//14 36//14 +f 36//15 280//15 281//15 +f 36//15 281//15 165//15 +f 165//16 281//16 282//16 +f 165//16 282//16 166//16 +f 166//17 282//17 283//17 +f 166//18 283//18 167//18 +f 279//13 68//13 284//13 +f 284//19 68//19 67//19 +f 284//19 67//19 285//19 +f 285//20 67//20 66//20 +f 285//20 66//20 286//20 +f 286//21 66//21 65//21 +f 286//21 65//21 287//21 +f 287//22 65//22 64//22 +f 287//22 64//22 288//22 +f 288//23 64//23 63//23 +f 288//23 63//23 289//23 +f 289//24 63//24 62//24 +f 289//24 62//24 278//24 +f 283//25 290//25 167//25 +f 167//25 290//25 169//25 +f 258//26 291//26 170//26 +f 170//27 291//27 292//27 +f 170//27 292//27 171//27 +f 171//28 292//28 293//28 +f 171//28 293//28 172//28 +f 172//29 293//29 294//29 +f 172//30 294//30 173//30 +f 173//31 294//31 295//31 +f 173//31 295//31 168//31 +f 291//26 258//26 296//26 +f 296//32 258//32 257//32 +f 296//32 257//32 297//32 +f 297//33 257//33 255//33 +f 297//33 255//33 298//33 +f 298//34 255//34 254//34 +f 298//34 254//34 299//34 +f 299//35 254//35 256//35 +f 299//35 256//35 300//35 +f 300//36 256//36 169//36 +f 300//36 169//36 290//36 +f 295//37 301//37 168//37 +f 168//37 301//37 153//37 +f 156//38 302//38 157//38 +f 157//39 302//39 303//39 +f 157//39 303//39 158//39 +f 158//40 303//40 304//40 +f 158//40 304//40 159//40 +f 302//38 156//38 305//38 +f 305//41 156//41 155//41 +f 305//41 155//41 306//41 +f 306//42 155//42 154//42 +f 306//42 154//42 307//42 +f 307//43 154//43 153//43 +f 307//43 153//43 301//43 +f 304//2 308//2 159//2 +f 159//2 308//2 152//2 +f 38//44 309//44 37//44 +f 37//45 309//45 310//45 +f 37//45 310//45 35//45 +f 35//46 310//46 311//46 +f 35//46 311//46 70//46 +f 70//47 311//47 312//47 +f 70//47 312//47 71//47 +f 309//44 38//44 313//44 +f 313//48 38//48 39//48 +f 313//48 39//48 314//48 +f 314//49 39//49 40//49 +f 314//49 40//49 315//49 +f 315//50 40//50 41//50 +f 315//50 41//50 316//50 +f 316//51 41//51 152//51 +f 316//51 152//51 308//51 +f 312//52 317//52 71//52 +f 71//52 317//52 72//52 +f 104//53 318//53 105//53 +f 105//54 318//54 319//54 +f 105//54 319//54 106//54 +f 106//55 319//55 320//55 +f 106//55 320//55 107//55 +f 107//56 320//56 321//56 +f 107//56 321//56 108//56 +f 108//57 321//57 322//57 +f 108//57 322//57 109//57 +f 109//58 322//58 323//58 +f 109//58 323//58 110//58 +f 318//53 104//53 324//53 +f 324//59 104//59 252//59 +f 324//59 252//59 325//59 +f 325//60 252//60 250//60 +f 325//60 250//60 326//60 +f 326//61 250//61 249//61 +f 326//61 249//61 327//61 +f 327//62 249//62 247//62 +f 327//62 247//62 328//62 +f 328//63 247//63 161//63 +f 328//63 161//63 329//63 +f 329//64 161//64 160//64 +f 329//64 160//64 330//64 +f 330//65 160//65 72//65 +f 330//65 72//65 317//65 +f 323//25 331//25 110//25 +f 110//25 331//25 111//25 +f 114//66 332//66 115//66 +f 115//67 332//67 333//67 +f 115//67 333//67 116//67 +f 116//68 333//68 334//68 +f 116//68 334//68 117//68 +f 332//66 114//66 335//66 +f 335//69 114//69 113//69 +f 335//69 113//69 336//69 +f 336//70 113//70 112//70 +f 336//70 112//70 337//70 +f 337//71 112//71 111//71 +f 337//71 111//71 331//71 +f 334//72 338//72 117//72 +f 117//72 338//72 118//72 +f 130//73 339//73 53//73 +f 53//74 339//74 340//74 +f 53//74 340//74 54//74 +f 54//75 340//75 341//75 +f 54//75 341//75 55//75 +f 55//76 341//76 267//76 +f 55//76 267//76 56//76 +f 339//73 130//73 342//73 +f 342//77 130//77 77//77 +f 342//77 77//77 343//77 +f 343//78 77//78 76//78 +f 343//78 76//78 344//78 +f 344//79 76//79 119//79 +f 344//79 119//79 345//79 +f 345//80 119//80 118//80 +f 345//81 118//81 338//81 +f 346//25 17//25 347//25 +f 347//25 17//25 2//25 +f 17//82 346//82 19//82 +f 19//82 346//82 348//82 +f 19//83 348//83 21//83 +f 21//83 348//83 349//83 +f 21//84 349//84 23//84 +f 23//84 349//84 350//84 +f 23//85 350//85 25//85 +f 25//85 350//85 351//85 +f 25//86 351//86 26//86 +f 26//86 351//86 352//86 +f 26//87 352//87 24//87 +f 24//87 352//87 353//87 +f 24//88 353//88 22//88 +f 22//88 353//88 354//88 +f 22//89 354//89 20//89 +f 20//89 354//89 355//89 +f 20//90 355//90 18//90 +f 18//90 355//90 356//90 +f 18//91 356//91 16//91 +f 16//91 356//91 357//91 +f 358//92 3//92 357//92 +f 357//92 3//92 16//92 +f 3//93 358//93 4//93 +f 4//93 358//93 359//93 +f 4//94 359//94 5//94 +f 5//94 359//94 360//94 +f 5//95 360//95 6//95 +f 6//95 360//95 361//95 +f 6//96 361//96 7//96 +f 7//96 361//96 362//96 +f 7//97 362//97 8//97 +f 8//97 362//97 363//97 +f 8//98 363//98 9//98 +f 9//98 363//98 364//98 +f 9//99 364//99 10//99 +f 10//99 364//99 365//99 +f 10//100 365//100 11//100 +f 11//100 365//100 366//100 +f 11//101 366//101 12//101 +f 12//101 366//101 367//101 +f 12//102 367//102 13//102 +f 13//103 367//103 368//103 +f 13//104 368//104 14//104 +f 14//104 368//104 369//104 +f 14//105 369//105 15//105 +f 15//105 369//105 370//105 +f 371//2 1//2 370//2 +f 370//2 1//2 15//2 +f 347//106 2//106 371//106 +f 371//106 2//106 1//106 +f 372//107 43//107 373//107 +f 373//107 43//107 42//107 +f 43//108 372//108 143//108 +f 143//108 372//108 374//108 +f 143//109 374//109 144//109 +f 144//109 374//109 375//109 +f 144//110 375//110 145//110 +f 145//110 375//110 376//110 +f 145//111 376//111 146//111 +f 146//111 376//111 377//111 +f 146//112 377//112 149//112 +f 149//112 377//112 378//112 +f 149//113 378//113 150//113 +f 150//113 378//113 379//113 +f 150//114 379//114 151//114 +f 151//114 379//114 380//114 +f 151//115 380//115 58//115 +f 58//115 380//115 381//115 +f 382//116 52//116 381//116 +f 381//116 52//116 58//116 +f 52//117 382//117 131//117 +f 131//117 382//117 383//117 +f 131//118 383//118 132//118 +f 132//118 383//118 384//118 +f 132//119 384//119 133//119 +f 133//119 384//119 385//119 +f 133//120 385//120 134//120 +f 134//120 385//120 386//120 +f 134//121 386//121 135//121 +f 135//121 386//121 387//121 +f 135//122 387//122 136//122 +f 136//122 387//122 388//122 +f 136//123 388//123 137//123 +f 137//124 388//124 389//124 +f 137//125 389//125 138//125 +f 138//125 389//125 390//125 +f 138//126 390//126 139//126 +f 139//126 390//126 391//126 +f 139//127 391//127 140//127 +f 140//127 391//127 392//127 +f 140//128 392//128 141//128 +f 141//128 392//128 393//128 +f 141//129 393//129 142//129 +f 142//129 393//129 394//129 +f 142//130 394//130 78//130 +f 78//130 394//130 395//130 +f 78//131 395//131 79//131 +f 79//131 395//131 396//131 +f 79//132 396//132 80//132 +f 80//132 396//132 397//132 +f 80//133 397//133 81//133 +f 81//133 397//133 398//133 +f 399//134 82//134 398//134 +f 398//134 82//134 81//134 +f 83//135 82//135 400//135 +f 400//135 82//135 399//135 +f 83//136 400//136 84//136 +f 84//136 400//136 401//136 +f 84//137 401//137 85//137 +f 85//137 401//137 402//137 +f 85//138 402//138 86//138 +f 86//138 402//138 403//138 +f 86//139 403//139 87//139 +f 87//139 403//139 404//139 +f 87//140 404//140 88//140 +f 88//140 404//140 405//140 +f 88//141 405//141 89//141 +f 89//141 405//141 406//141 +f 89//142 406//142 90//142 +f 90//142 406//142 407//142 +f 90//143 407//143 91//143 +f 91//143 407//143 408//143 +f 91//144 408//144 92//144 +f 92//144 408//144 409//144 +f 92//145 409//145 93//145 +f 93//145 409//145 410//145 +f 93//146 410//146 94//146 +f 94//146 410//146 411//146 +f 94//147 411//147 95//147 +f 95//147 411//147 412//147 +f 95//148 412//148 96//148 +f 96//148 412//148 413//148 +f 96//149 413//149 121//149 +f 121//150 413//150 414//150 +f 121//2 414//2 122//2 +f 122//2 414//2 415//2 +f 122//2 415//2 123//2 +f 123//2 415//2 416//2 +f 123//2 416//2 124//2 +f 124//2 416//2 417//2 +f 124//151 417//151 125//151 +f 125//151 417//151 418//151 +f 125//152 418//152 126//152 +f 126//152 418//152 419//152 +f 126//153 419//153 127//153 +f 127//153 419//153 420//153 +f 127//154 420//154 128//154 +f 128//154 420//154 421//154 +f 128//155 421//155 129//155 +f 129//156 421//156 422//156 +f 129//157 422//157 192//157 +f 192//157 422//157 423//157 +f 192//158 423//158 193//158 +f 193//158 423//158 424//158 +f 193//159 424//159 214//159 +f 214//160 424//160 425//160 +f 214//161 425//161 215//161 +f 215//161 425//161 426//161 +f 215//162 426//162 216//162 +f 216//162 426//162 427//162 +f 216//163 427//163 217//163 +f 217//163 427//163 428//163 +f 217//164 428//164 218//164 +f 218//165 428//165 429//165 +f 218//166 429//166 42//166 +f 42//166 429//166 373//166 +f 197//167 430//167 198//167 +f 198//167 430//167 431//167 +f 198//168 431//168 199//168 +f 199//168 431//168 432//168 +f 199//169 432//169 200//169 +f 200//169 432//169 433//169 +f 200//170 433//170 201//170 +f 201//170 433//170 434//170 +f 201//171 434//171 202//171 +f 202//171 434//171 435//171 +f 202//172 435//172 203//172 +f 203//172 435//172 436//172 +f 203//173 436//173 204//173 +f 204//174 436//174 437//174 +f 438//175 205//175 437//175 +f 437//175 205//175 204//175 +f 205//176 438//176 206//176 +f 206//176 438//176 439//176 +f 206//177 439//177 228//177 +f 228//177 439//177 440//177 +f 228//178 440//178 229//178 +f 229//178 440//178 441//178 +f 229//179 441//179 230//179 +f 230//179 441//179 442//179 +f 230//180 442//180 231//180 +f 231//180 442//180 443//180 +f 231//181 443//181 220//181 +f 220//181 443//181 444//181 +f 445//182 221//182 444//182 +f 444//182 221//182 220//182 +f 221//183 445//183 266//183 +f 266//183 445//183 446//183 +f 266//184 446//184 265//184 +f 265//184 446//184 447//184 +f 265//185 447//185 263//185 +f 263//185 447//185 448//185 +f 263//186 448//186 261//186 +f 261//186 448//186 449//186 +f 261//187 449//187 262//187 +f 262//187 449//187 450//187 +f 262//188 450//188 264//188 +f 264//188 450//188 451//188 +f 452//189 222//189 451//189 +f 451//189 222//189 264//189 +f 222//190 452//190 223//190 +f 223//190 452//190 453//190 +f 223//191 453//191 224//191 +f 224//191 453//191 454//191 +f 224//192 454//192 225//192 +f 225//192 454//192 455//192 +f 225//193 455//193 226//193 +f 226//193 455//193 456//193 +f 226//194 456//194 227//194 +f 227//194 456//194 457//194 +f 227//195 457//195 219//195 +f 219//195 457//195 458//195 +f 459//196 207//196 458//196 +f 458//196 207//196 219//196 +f 207//197 459//197 208//197 +f 208//197 459//197 460//197 +f 208//198 460//198 209//198 +f 209//199 460//199 461//199 +f 209//200 461//200 210//200 +f 210//200 461//200 462//200 +f 210//201 462//201 211//201 +f 211//201 462//201 463//201 +f 211//202 463//202 212//202 +f 212//202 463//202 464//202 +f 212//203 464//203 98//203 +f 98//203 464//203 465//203 +f 466//204 99//204 465//204 +f 465//204 99//204 98//204 +f 99//205 466//205 28//205 +f 28//205 466//205 467//205 +f 28//206 467//206 188//206 +f 188//206 467//206 468//206 +f 188//207 468//207 189//207 +f 189//207 468//207 469//207 +f 189//208 469//208 190//208 +f 190//209 469//209 470//209 +f 190//210 470//210 191//210 +f 191//210 470//210 471//210 +f 191//211 471//211 176//211 +f 176//212 471//212 472//212 +f 473//182 177//182 472//182 +f 472//182 177//182 176//182 +f 177//213 473//213 184//213 +f 184//213 473//213 474//213 +f 184//214 474//214 185//214 +f 185//214 474//214 475//214 +f 185//215 475//215 186//215 +f 186//215 475//215 476//215 +f 186//216 476//216 260//216 +f 260//216 476//216 477//216 +f 260//217 477//217 259//217 +f 259//217 477//217 478//217 +f 259//218 478//218 187//218 +f 187//218 478//218 479//218 +f 480//219 178//219 479//219 +f 479//219 178//219 187//219 +f 178//220 480//220 179//220 +f 179//220 480//220 481//220 +f 179//221 481//221 180//221 +f 180//221 481//221 482//221 +f 180//222 482//222 181//222 +f 181//222 482//222 483//222 +f 181//223 483//223 182//223 +f 182//223 483//223 484//223 +f 182//224 484//224 183//224 +f 183//224 484//224 485//224 +f 183//225 485//225 174//225 +f 174//225 485//225 486//225 +f 487//196 175//196 486//196 +f 486//196 175//196 174//196 +f 175//226 487//226 34//226 +f 34//226 487//226 488//226 +f 34//227 488//227 33//227 +f 33//227 488//227 489//227 +f 33//228 489//228 32//228 +f 32//228 489//228 490//228 +f 32//229 490//229 31//229 +f 31//229 490//229 491//229 +f 31//230 491//230 30//230 +f 30//230 491//230 492//230 +f 30//231 492//231 29//231 +f 29//231 492//231 493//231 +f 29//232 493//232 27//232 +f 27//233 493//233 494//233 +f 495//204 100//204 494//204 +f 494//204 100//204 27//204 +f 100//234 495//234 101//234 +f 101//234 495//234 496//234 +f 101//235 496//235 102//235 +f 102//235 496//235 497//235 +f 102//236 497//236 103//236 +f 103//236 497//236 498//236 +f 103//237 498//237 253//237 +f 253//237 498//237 499//237 +f 253//238 499//238 251//238 +f 251//238 499//238 500//238 +f 251//239 500//239 248//239 +f 248//239 500//239 501//239 +f 248//240 501//240 246//240 +f 246//240 501//240 502//240 +f 246//241 502//241 162//241 +f 162//241 502//241 503//241 +f 162//242 503//242 163//242 +f 163//242 503//242 504//242 +f 163//243 504//243 164//243 +f 164//244 504//244 505//244 +f 164//245 505//245 73//245 +f 73//245 505//245 506//245 +f 73//246 506//246 59//246 +f 59//246 506//246 507//246 +f 508//247 60//247 507//247 +f 507//247 60//247 59//247 +f 60//248 508//248 244//248 +f 244//248 508//248 509//248 +f 244//249 509//249 242//249 +f 242//249 509//249 510//249 +f 242//250 510//250 241//250 +f 241//250 510//250 511//250 +f 241//251 511//251 239//251 +f 239//251 511//251 512//251 +f 239//252 512//252 237//252 +f 237//252 512//252 513//252 +f 237//253 513//253 235//253 +f 235//254 513//254 514//254 +f 235//255 514//255 232//255 +f 232//255 514//255 515//255 +f 232//256 515//256 148//256 +f 148//256 515//256 516//256 +f 148//257 516//257 44//257 +f 44//257 516//257 517//257 +f 518//258 45//258 517//258 +f 517//258 45//258 44//258 +f 45//259 518//259 46//259 +f 46//259 518//259 519//259 +f 46//260 519//260 47//260 +f 47//260 519//260 520//260 +f 47//261 520//261 48//261 +f 48//261 520//261 521//261 +f 48//262 521//262 49//262 +f 49//262 521//262 522//262 +f 49//263 522//263 50//263 +f 50//263 522//263 523//263 +f 50//264 523//264 51//264 +f 51//264 523//264 524//264 +f 51//265 524//265 213//265 +f 213//265 524//265 525//265 +f 213//266 525//266 194//266 +f 194//266 525//266 526//266 +f 194//267 526//267 195//267 +f 195//267 526//267 527//267 +f 195//268 527//268 196//268 +f 196//268 527//268 528//268 +f 430//269 197//269 528//269 +f 528//269 197//269 196//269 +f 324//1 319//1 318//1 +f 272//1 296//1 297//1 +f 272//1 297//1 298//1 +f 272//1 298//1 299//1 +f 272//1 299//1 300//1 +f 272//1 300//1 290//1 +f 272//1 290//1 278//1 +f 334//1 308//1 304//1 +f 334//1 304//1 303//1 +f 334//1 303//1 302//1 +f 334//1 302//1 305//1 +f 334//1 305//1 306//1 +f 334//1 306//1 307//1 +f 334//1 307//1 301//1 +f 334//1 301//1 295//1 +f 334//1 295//1 294//1 +f 334//1 294//1 293//1 +f 334//1 293//1 292//1 +f 334//1 292//1 291//1 +f 334//1 291//1 296//1 +f 334//1 296//1 272//1 +f 334//1 272//1 271//1 +f 334//1 271//1 270//1 +f 334//1 270//1 269//1 +f 334//1 269//1 273//1 +f 334//1 273//1 274//1 +f 334//1 274//1 275//1 +f 334//1 275//1 276//1 +f 334//1 276//1 277//1 +f 334//1 277//1 268//1 +f 334//1 268//1 338//1 +f 268//1 267//1 339//1 +f 268//1 339//1 342//1 +f 268//1 342//1 343//1 +f 268//1 343//1 344//1 +f 268//1 344//1 345//1 +f 268//1 345//1 338//1 +f 308//1 334//1 333//1 +f 308//1 333//1 332//1 +f 308//1 332//1 335//1 +f 308//1 335//1 336//1 +f 308//1 336//1 337//1 +f 308//1 337//1 331//1 +f 323//1 322//1 326//1 +f 323//1 326//1 327//1 +f 323//1 327//1 328//1 +f 323//1 328//1 329//1 +f 323//1 329//1 330//1 +f 323//1 330//1 317//1 +f 323//1 317//1 312//1 +f 323//1 312//1 311//1 +f 323//1 311//1 310//1 +f 323//1 310//1 309//1 +f 323//1 309//1 313//1 +f 323//1 313//1 314//1 +f 323//1 314//1 315//1 +f 323//1 315//1 316//1 +f 323//1 316//1 308//1 +f 323//1 308//1 331//1 +f 283//1 282//1 285//1 +f 283//1 285//1 286//1 +f 283//1 286//1 287//1 +f 283//1 287//1 288//1 +f 283//1 288//1 289//1 +f 283//1 289//1 278//1 +f 283//1 278//1 290//1 +f 339//1 267//1 340//1 +f 340//1 267//1 341//1 +f 326//1 322//1 325//1 +f 325//1 322//1 321//1 +f 325//1 321//1 324//1 +f 324//1 321//1 320//1 +f 324//1 320//1 319//1 +f 285//1 282//1 284//1 +f 284//1 282//1 281//1 +f 284//1 281//1 279//1 +f 279//1 281//1 280//1 +f 401//1 403//1 402//1 +f 406//1 408//1 407//1 +f 371//1 370//1 382//1 +f 371//1 382//1 381//1 +f 371//1 381//1 380//1 +f 371//1 380//1 379//1 +f 371//1 379//1 378//1 +f 371//1 378//1 377//1 +f 371//1 377//1 376//1 +f 371//1 376//1 375//1 +f 371//1 375//1 374//1 +f 371//1 374//1 372//1 +f 400//1 406//1 405//1 +f 400//1 405//1 404//1 +f 400//1 404//1 403//1 +f 400//1 403//1 401//1 +f 356//1 355//1 408//1 +f 356//1 408//1 406//1 +f 356//1 406//1 400//1 +f 356//1 400//1 399//1 +f 356//1 399//1 398//1 +f 356//1 398//1 357//1 +f 358//1 357//1 398//1 +f 358//1 398//1 397//1 +f 358//1 397//1 396//1 +f 358//1 396//1 395//1 +f 358//1 395//1 394//1 +f 358//1 394//1 393//1 +f 352//1 351//1 416//1 +f 352//1 416//1 415//1 +f 352//1 415//1 414//1 +f 352//1 414//1 413//1 +f 352//1 413//1 412//1 +f 352//1 412//1 411//1 +f 352//1 411//1 410//1 +f 352//1 410//1 409//1 +f 352//1 409//1 353//1 +f 417//1 416//1 351//1 +f 417//1 351//1 350//1 +f 417//1 350//1 349//1 +f 417//1 349//1 348//1 +f 417//1 348//1 346//1 +f 417//1 346//1 347//1 +f 347//1 371//1 417//1 +f 417//1 371//1 372//1 +f 417//1 372//1 418//1 +f 418//1 372//1 373//1 +f 418//1 373//1 419//1 +f 419//1 373//1 429//1 +f 419//1 429//1 420//1 +f 420//1 429//1 428//1 +f 420//1 428//1 421//1 +f 421//1 428//1 427//1 +f 421//1 427//1 422//1 +f 422//1 427//1 426//1 +f 422//1 426//1 423//1 +f 423//1 426//1 425//1 +f 423//1 425//1 424//1 +f 353//1 409//1 354//1 +f 354//1 409//1 408//1 +f 354//1 408//1 355//1 +f 358//1 393//1 359//1 +f 359//1 393//1 392//1 +f 359//1 392//1 360//1 +f 360//1 392//1 391//1 +f 360//1 391//1 361//1 +f 361//1 391//1 390//1 +f 361//1 390//1 362//1 +f 362//1 390//1 389//1 +f 362//1 389//1 363//1 +f 363//1 389//1 388//1 +f 363//1 388//1 364//1 +f 364//1 388//1 387//1 +f 364//1 387//1 365//1 +f 365//1 387//1 366//1 +f 366//1 387//1 386//1 +f 366//1 386//1 367//1 +f 367//1 386//1 385//1 +f 367//1 385//1 368//1 +f 368//1 385//1 384//1 +f 368//1 384//1 369//1 +f 369//1 384//1 370//1 +f 370//1 384//1 383//1 +f 370//1 383//1 382//1 +f 430//1 446//1 445//1 +f 430//1 447//1 446//1 +f 499//1 497//1 496//1 +f 497//1 499//1 498//1 +f 507//1 495//1 494//1 +f 507//1 494//1 493//1 +f 507//1 493//1 492//1 +f 507//1 492//1 491//1 +f 507//1 491//1 490//1 +f 507//1 490//1 489//1 +f 507//1 489//1 488//1 +f 507//1 488//1 487//1 +f 507//1 487//1 486//1 +f 507//1 486//1 485//1 +f 507//1 485//1 484//1 +f 507//1 484//1 483//1 +f 479//1 478//1 458//1 +f 479//1 458//1 457//1 +f 479//1 457//1 456//1 +f 479//1 456//1 455//1 +f 479//1 455//1 454//1 +f 479//1 454//1 453//1 +f 479//1 453//1 452//1 +f 508//1 507//1 483//1 +f 508//1 483//1 482//1 +f 508//1 482//1 481//1 +f 508//1 481//1 480//1 +f 508//1 480//1 479//1 +f 508//1 479//1 452//1 +f 508//1 452//1 451//1 +f 508//1 451//1 450//1 +f 508//1 450//1 449//1 +f 495//1 507//1 506//1 +f 495//1 506//1 505//1 +f 495//1 505//1 504//1 +f 495//1 504//1 503//1 +f 495//1 503//1 502//1 +f 495//1 502//1 501//1 +f 495//1 501//1 500//1 +f 495//1 500//1 499//1 +f 495//1 499//1 496//1 +f 449//1 511//1 510//1 +f 449//1 510//1 509//1 +f 449//1 509//1 508//1 +f 448//1 517//1 516//1 +f 448//1 516//1 515//1 +f 448//1 515//1 514//1 +f 448//1 514//1 513//1 +f 448//1 513//1 512//1 +f 448//1 512//1 511//1 +f 448//1 511//1 449//1 +f 528//1 517//1 448//1 +f 528//1 448//1 447//1 +f 528//1 447//1 430//1 +f 517//1 528//1 527//1 +f 517//1 527//1 526//1 +f 517//1 526//1 525//1 +f 517//1 525//1 524//1 +f 517//1 524//1 523//1 +f 517//1 523//1 518//1 +f 444//1 438//1 437//1 +f 444//1 437//1 436//1 +f 444//1 436//1 435//1 +f 444//1 435//1 434//1 +f 444//1 434//1 433//1 +f 444//1 433//1 432//1 +f 444//1 432//1 431//1 +f 444//1 431//1 430//1 +f 444//1 430//1 445//1 +f 438//1 444//1 443//1 +f 438//1 443//1 442//1 +f 438//1 442//1 441//1 +f 438//1 441//1 440//1 +f 438//1 440//1 439//1 +f 458//1 478//1 477//1 +f 458//1 477//1 476//1 +f 458//1 476//1 475//1 +f 458//1 475//1 474//1 +f 458//1 474//1 473//1 +f 458//1 473//1 472//1 +f 458//1 472//1 459//1 +f 466//1 465//1 472//1 +f 466//1 472//1 471//1 +f 466//1 471//1 470//1 +f 466//1 470//1 469//1 +f 466//1 469//1 468//1 +f 466//1 468//1 467//1 +f 472//1 465//1 464//1 +f 472//1 464//1 463//1 +f 472//1 463//1 462//1 +f 472//1 462//1 461//1 +f 472//1 461//1 460//1 +f 472//1 460//1 459//1 +f 521//1 520//1 522//1 +f 522//1 520//1 519//1 +f 522//1 519//1 523//1 +f 523//1 519//1 518//1 +f 529//270 530//270 531//270 +f 531//270 530//270 532//270 +f 532//182 120//182 531//182 +f 531//182 120//182 97//182 +f 531//271 97//271 529//271 +f 529//271 97//271 75//271 +f 529//196 75//196 530//196 +f 530//196 75//196 74//196 +f 530//272 74//272 532//272 +f 532//272 74//272 120//272 diff --git a/resources/meshes/cremaker_platform_220.obj b/resources/meshes/cremaker_platform_220.obj new file mode 100644 index 0000000000..07f270912c --- /dev/null +++ b/resources/meshes/cremaker_platform_220.obj @@ -0,0 +1,1870 @@ +# Blender v2.83.4 OBJ File: '' +# www.blender.org +mtllib cremaker_platform_220.mtl +o Cremaker_Bed_For_Cura_220 +v -1.890215 15.706850 0.000001 +v 6.767278 20.737940 0.000001 +v -5.775456 19.937870 0.000001 +v -6.085020 19.717300 0.000001 +v -6.206591 19.597380 0.000001 +v -6.306021 19.472389 0.000001 +v -6.404158 19.299610 0.000001 +v -6.462938 19.122049 0.000001 +v -6.482364 18.942129 0.000001 +v -6.462439 18.762270 0.000001 +v -6.403163 18.584881 0.000001 +v -6.304539 18.412380 0.000001 +v -6.204750 18.287661 0.000001 +v -6.082830 18.168079 0.000001 +v -5.772599 17.948380 0.000001 +v -0.169347 23.195789 0.000001 +v 2.503686 23.199570 0.000001 +v 0.015533 23.290100 0.000001 +v 2.318549 23.293369 0.000001 +v 0.215548 23.368071 0.000001 +v 2.118320 23.370770 0.000001 +v 0.445728 23.434031 0.000001 +v 1.887968 23.436081 0.000001 +v 0.686610 23.480829 0.000001 +v 1.646967 23.482201 0.000001 +v 1.166741 23.516991 0.000001 +v 8.977601 -31.682760 -0.000001 +v 15.463810 -27.894529 -0.000001 +v 9.126501 -31.581169 -0.000001 +v 9.251994 -31.471161 -0.000001 +v 9.354342 -31.353979 -0.000001 +v 9.435792 -31.228849 -0.000001 +v 9.497616 -31.095310 -0.000001 +v 9.540466 -30.954081 -0.000001 +v -2.474875 -23.004829 -0.000001 +v -3.486624 -14.063000 -0.000001 +v -2.653391 -22.608061 -0.000001 +v -2.900688 -22.237030 -0.000001 +v -3.052730 -22.062059 -0.000001 +v -3.221965 -21.899099 -0.000001 +v -3.400519 -21.755520 -0.000001 +v 27.762609 18.434891 0.000001 +v 1.302336 3.393586 0.000000 +v 3.475899 -0.694668 -0.000000 +v 29.570330 14.423920 0.000001 +v 29.843470 14.553590 0.000001 +v 30.123699 14.616530 0.000001 +v 30.402599 14.617650 0.000001 +v 30.671749 14.561850 0.000001 +v 30.922720 14.454050 0.000001 +v 31.147100 14.299160 0.000001 +v -26.719641 17.714270 0.000001 +v -30.969570 14.542240 0.000001 +v -30.693640 14.614890 0.000001 +v -30.396780 14.615500 0.000001 +v -30.088209 14.539130 0.000001 +v -3.517677 -0.801377 -0.000000 +v -1.435565 3.392086 0.000000 +v 2.106637 -33.573120 -0.000001 +v 2.133908 -3.020771 -0.000000 +v -2.272171 -2.965736 -0.000000 +v -2.298659 -12.744290 -0.000001 +v -2.325924 -13.082530 -0.000001 +v -2.402435 -13.372600 -0.000001 +v -2.523336 -13.613500 -0.000001 +v -2.683776 -13.804260 -0.000001 +v -2.878902 -13.943900 -0.000001 +v -3.064503 -14.020530 -0.000001 +v -3.268013 -14.060420 -0.000001 +v -2.366918 -23.413799 -0.000001 +v -2.331298 -23.821421 -0.000001 +v -2.538111 -33.729561 -0.000001 +v 2.114818 -33.739540 -0.000001 +v -110.000000 110.000000 0.000005 +v -110.000000 -110.000000 -0.000005 +v -31.579510 13.941270 0.000001 +v -31.421730 14.200490 0.000001 +v -27.414490 20.492630 0.000001 +v -27.228689 20.743530 0.000001 +v -26.998230 20.967470 0.000001 +v -26.723070 21.158649 0.000001 +v -3.097852 34.888088 0.000002 +v -3.058702 34.910809 0.000002 +v -2.760384 35.064079 0.000002 +v -2.510572 35.174419 0.000002 +v -2.024714 35.353069 0.000002 +v -1.582107 35.478981 0.000002 +v -1.080716 35.581661 0.000002 +v -0.754755 35.626011 0.000002 +v -0.411912 35.653530 0.000002 +v 0.068701 35.658569 0.000002 +v 0.572670 35.620548 0.000002 +v 1.096192 35.531940 0.000002 +v 1.635463 35.385231 0.000002 +v 2.186679 35.172890 0.000002 +v 2.746035 34.887402 0.000002 +v 110.000000 -110.000000 -0.000005 +v 20.371010 -25.084841 -0.000001 +v 15.581860 -27.858259 -0.000001 +v 3.623141 -34.783489 -0.000002 +v 3.518881 -34.835880 -0.000002 +v 3.407471 -34.868351 -0.000002 +v 3.280597 -34.881981 -0.000002 +v -3.206139 -34.884621 -0.000002 +v -3.407758 -34.910000 -0.000002 +v -3.633279 -34.894100 -0.000002 +v -3.809279 -34.856091 -0.000002 +v -3.996799 -34.794971 -0.000002 +v -4.214165 -34.700981 -0.000002 +v -4.444436 -34.577541 -0.000002 +v -31.037670 -19.223930 -0.000001 +v -31.293150 -19.038361 -0.000001 +v -31.520281 -18.799589 -0.000001 +v -31.710920 -18.522110 -0.000001 +v -31.856939 -18.220461 -0.000001 +v -31.950171 -17.909149 -0.000001 +v -31.982500 -17.602690 -0.000001 +v -31.712339 13.270770 0.000001 +v -31.679449 13.629710 0.000001 +v 110.000000 110.000000 0.000005 +v 2.771456 34.872719 0.000002 +v 7.464162 32.163349 0.000001 +v 15.253320 27.666241 0.000001 +v 27.735189 20.459780 0.000001 +v 27.760611 20.445101 0.000001 +v 27.895399 20.354771 0.000001 +v 28.012421 20.250940 0.000001 +v 28.113310 20.133301 0.000001 +v 28.195770 20.005659 0.000001 +v -31.215340 14.402460 0.000001 +v -26.995159 17.904921 0.000001 +v -27.226070 18.128401 0.000001 +v -27.412350 18.378941 0.000001 +v -27.554010 18.650749 0.000001 +v -27.623430 18.840151 0.000001 +v -27.673161 19.034679 0.000001 +v -27.703360 19.234209 0.000001 +v -27.713560 19.435499 0.000001 +v -27.703770 19.636801 0.000001 +v -27.673969 19.836390 0.000001 +v -27.624630 20.031019 0.000001 +v -27.555599 20.220551 0.000001 +v 0.976425 3.232473 0.000000 +v 0.636600 3.117338 0.000000 +v 0.287486 3.048182 0.000000 +v -0.066293 3.025005 0.000000 +v -3.345686 -0.911826 -0.000000 +v 3.139616 -0.917790 -0.000000 +v -0.420113 3.047807 0.000000 +v -0.769347 3.116588 0.000000 +v -1.109373 3.231348 0.000000 +v -3.594514 -21.626280 -0.000001 +v -12.938980 -15.140140 -0.000001 +v -12.905790 -15.448240 -0.000001 +v -12.810930 -15.763330 -0.000001 +v -12.664030 -16.069201 -0.000001 +v -12.474700 -16.349609 -0.000001 +v -12.252560 -16.588350 -0.000001 +v -12.007230 -16.769199 -0.000001 +v -2.563875 -34.102112 -0.000001 +v -2.601945 -34.265640 -0.000001 +v 2.260306 -34.209869 -0.000001 +v 2.192190 -34.059601 -0.000001 +v 2.142445 -33.897968 -0.000001 +v -3.658804 -14.040120 -0.000001 +v -3.836713 -13.995700 -0.000001 +v -4.204983 -13.841300 -0.000001 +v -12.922880 -9.899136 -0.000000 +v -11.984960 -9.349529 -0.000000 +v -12.721910 -9.347394 -0.000000 +v -12.789020 -9.421888 -0.000000 +v -12.845920 -9.517392 -0.000000 +v -12.888060 -9.630308 -0.000000 +v 9.573477 -21.213511 -0.000001 +v 9.573477 -30.649120 -0.000001 +v 15.034420 -27.542681 -0.000001 +v 15.034420 -18.158489 -0.000001 +v 10.169160 -20.177891 -0.000001 +v 9.977448 -20.309700 -0.000001 +v 9.825815 -20.460020 -0.000001 +v 9.711927 -20.627211 -0.000001 +v 9.649883 -20.762680 -0.000001 +v 9.606781 -20.906019 -0.000001 +v 15.003990 -18.001150 -0.000001 +v 14.921680 -17.866699 -0.000001 +v 14.800500 -17.765039 -0.000001 +v 14.333690 -17.755440 -0.000001 +v 15.340730 -27.890249 -0.000001 +v 15.224440 -27.849171 -0.000001 +v 15.126750 -27.775049 -0.000001 +v 15.059470 -27.671631 -0.000001 +v 28.304729 19.730980 0.000001 +v 28.341249 19.440559 0.000001 +v 31.482401 13.867730 0.000001 +v 31.576481 13.601010 0.000001 +v 31.610291 13.306840 0.000001 +v 31.698460 -17.754620 -0.000001 +v 31.678040 -18.025631 -0.000001 +v 31.618450 -18.258989 -0.000001 +v 31.522221 -18.459169 -0.000001 +v 31.427509 -18.590231 -0.000001 +v 31.314671 -18.707041 -0.000001 +v 31.184740 -18.811489 -0.000001 +v 31.038811 -18.905470 -0.000001 +v 26.822330 -21.359131 -0.000001 +v 26.698940 -21.396070 -0.000001 +v 20.966869 -24.051201 -0.000001 +v 20.956520 -24.269871 -0.000001 +v 20.904810 -24.472601 -0.000001 +v 20.816071 -24.657419 -0.000001 +v 20.727819 -24.783110 -0.000001 +v 20.623011 -24.896790 -0.000001 +v 31.336460 14.102080 0.000001 +v 28.305321 19.150070 0.000001 +v 28.196911 18.875179 0.000001 +v 28.114700 18.747379 0.000001 +v 28.014050 18.629551 0.000001 +v 27.897230 18.525490 0.000001 +v 20.966869 -14.603510 -0.000001 +v 26.274229 -21.043930 -0.000001 +v 26.274229 -11.652350 -0.000001 +v 21.562111 -13.571100 -0.000001 +v 21.370380 -13.705390 -0.000001 +v 21.218809 -13.856010 -0.000001 +v 21.105040 -14.022040 -0.000001 +v 21.043091 -14.156130 -0.000001 +v 21.000080 -14.298000 -0.000001 +v 26.574249 -21.392080 -0.000001 +v 26.458860 -21.351021 -0.000001 +v 26.363340 -21.276751 -0.000001 +v 26.298269 -21.173100 -0.000001 +v 2.856881 -1.162039 -0.000000 +v -3.183302 -1.040252 -0.000000 +v -3.017757 -1.198799 -0.000000 +v 2.624997 -1.426512 -0.000000 +v -2.865824 -1.373666 -0.000000 +v 2.441266 -1.710312 -0.000000 +v -2.616956 -1.744172 -0.000000 +v 2.344197 -1.909804 -0.000000 +v -2.429858 -2.145653 -0.000000 +v 2.266531 -2.117218 -0.000000 +v 2.207469 -2.332289 -0.000000 +v -2.312331 -2.559157 -0.000000 +v 2.166210 -2.554749 -0.000000 +v -2.282093 -2.764497 -0.000000 +v 2.434501 -34.463181 -0.000002 +v -2.656312 -34.412819 -0.000002 +v 2.651738 -34.663250 -0.000002 +v -2.753508 -34.582069 -0.000002 +v -2.878132 -34.718540 -0.000002 +v 2.895620 -34.802711 -0.000002 +v -3.029303 -34.820099 -0.000002 +v 3.149746 -34.874161 -0.000002 +v -12.348020 -9.227452 -0.000000 +v -12.458250 -9.229397 -0.000000 +v -12.230520 -9.246961 -0.000000 +v -12.555370 -9.250595 -0.000000 +v -12.643580 -9.290076 -0.000000 +v 14.493510 -17.699530 -0.000001 +v 14.653450 -17.706020 -0.000001 +v 25.891661 -11.178740 -0.000000 +v 25.733061 -11.186380 -0.000000 +v 26.037319 -11.223560 -0.000000 +v 25.573780 -11.248510 -0.000000 +v 26.157789 -11.318790 -0.000000 +v 26.240850 -11.462400 -0.000001 +v -30.088209 14.539130 -0.999999 +v -3.517677 -0.801377 -1.000000 +v -2.429858 -2.145653 -1.000000 +v -2.312331 -2.559157 -1.000000 +v -2.282093 -2.764497 -1.000000 +v -2.272171 -2.965736 -1.000000 +v -2.616956 -1.744172 -1.000000 +v -2.865824 -1.373666 -1.000000 +v -3.017757 -1.198799 -1.000000 +v -3.183302 -1.040252 -1.000000 +v -3.345686 -0.911826 -1.000000 +v -2.298659 -12.744290 -1.000001 +v -3.268013 -14.060420 -1.000001 +v -3.486624 -14.063000 -1.000001 +v -3.658804 -14.040120 -1.000001 +v -3.836713 -13.995700 -1.000001 +v -4.204983 -13.841300 -1.000001 +v -3.064503 -14.020530 -1.000001 +v -2.878902 -13.943900 -1.000001 +v -2.683776 -13.804260 -1.000001 +v -2.523336 -13.613500 -1.000001 +v -2.402435 -13.372600 -1.000001 +v -2.325924 -13.082530 -1.000001 +v -11.984960 -9.349529 -1.000000 +v -12.721910 -9.347394 -1.000000 +v -12.789020 -9.421888 -1.000000 +v -12.845920 -9.517392 -1.000000 +v -12.888060 -9.630308 -1.000000 +v -12.922880 -9.899136 -1.000000 +v -12.643580 -9.290076 -1.000000 +v -12.555370 -9.250595 -1.000000 +v -12.458250 -9.229397 -1.000000 +v -12.348020 -9.227452 -1.000000 +v -12.230520 -9.246961 -1.000000 +v -12.938980 -15.140140 -1.000001 +v -12.474700 -16.349609 -1.000001 +v -12.252560 -16.588350 -1.000001 +v -12.007230 -16.769199 -1.000001 +v -12.664030 -16.069201 -1.000001 +v -12.810930 -15.763330 -1.000001 +v -12.905790 -15.448240 -1.000001 +v -3.594514 -21.626280 -1.000001 +v -2.653391 -22.608061 -1.000001 +v -2.474875 -23.004829 -1.000001 +v -2.366918 -23.413799 -1.000001 +v -2.331298 -23.821421 -1.000001 +v -2.900688 -22.237030 -1.000001 +v -3.052730 -22.062059 -1.000001 +v -3.221965 -21.899099 -1.000001 +v -3.400519 -21.755520 -1.000001 +v -2.538111 -33.729561 -1.000001 +v -3.407758 -34.910000 -1.000002 +v -3.633279 -34.894100 -1.000002 +v -3.809279 -34.856091 -1.000002 +v -3.996799 -34.794971 -1.000002 +v -4.214165 -34.700981 -1.000002 +v -4.444436 -34.577541 -1.000002 +v -3.206139 -34.884621 -1.000002 +v -3.029303 -34.820099 -1.000002 +v -2.878132 -34.718540 -1.000002 +v -2.753508 -34.582069 -1.000002 +v -2.656312 -34.412819 -1.000002 +v -2.601945 -34.265640 -1.000002 +v -2.563875 -34.102112 -1.000002 +v -31.037670 -19.223930 -1.000001 +v -31.856939 -18.220461 -1.000001 +v -31.950171 -17.909149 -1.000001 +v -31.982500 -17.602690 -1.000001 +v -31.710920 -18.522110 -1.000001 +v -31.520281 -18.799589 -1.000001 +v -31.293150 -19.038361 -1.000001 +v -31.712339 13.270770 -0.999999 +v -30.969570 14.542240 -0.999999 +v -30.693640 14.614890 -0.999999 +v -30.396780 14.615500 -0.999999 +v -31.215340 14.402460 -0.999999 +v -31.421730 14.200490 -0.999999 +v -31.579510 13.941270 -0.999999 +v -31.679449 13.629710 -0.999999 +v 2.503686 23.199570 -0.999999 +v 6.767278 20.737940 -0.999999 +v 2.318549 23.293369 -0.999999 +v 2.118320 23.370770 -0.999999 +v 1.887968 23.436081 -0.999999 +v 1.646967 23.482201 -0.999999 +v 1.166741 23.516991 -0.999999 +v 0.686610 23.480829 -0.999999 +v 0.445728 23.434031 -0.999999 +v 0.215548 23.368071 -0.999999 +v 0.015533 23.290100 -0.999999 +v -0.169347 23.195789 -0.999999 +v -5.775456 19.937870 -0.999999 +v -6.085020 19.717300 -0.999999 +v -6.206591 19.597380 -0.999999 +v -6.306021 19.472389 -0.999999 +v -6.404158 19.299610 -0.999999 +v -6.462938 19.122049 -0.999999 +v -6.482364 18.942129 -0.999999 +v -6.462439 18.762270 -0.999999 +v -6.403163 18.584881 -0.999999 +v -6.304539 18.412380 -0.999999 +v -6.204750 18.287661 -0.999999 +v -6.082830 18.168079 -0.999999 +v -5.772599 17.948380 -0.999999 +v -1.890215 15.706850 -0.999999 +v 1.302336 3.393586 -1.000000 +v 27.762609 18.434891 -0.999999 +v 0.976425 3.232473 -1.000000 +v 0.636600 3.117338 -1.000000 +v 0.287486 3.048182 -1.000000 +v -0.066293 3.025005 -1.000000 +v -0.420113 3.047807 -1.000000 +v -0.769347 3.116588 -1.000000 +v -1.109373 3.231348 -1.000000 +v -1.435565 3.392086 -1.000000 +v -26.719641 17.714270 -0.999999 +v -26.995159 17.904921 -0.999999 +v -27.226070 18.128401 -0.999999 +v -27.412350 18.378941 -0.999999 +v -27.554010 18.650749 -0.999999 +v -27.623430 18.840151 -0.999999 +v -27.673161 19.034679 -0.999999 +v -27.703360 19.234209 -0.999999 +v -27.713560 19.435499 -0.999999 +v -27.703770 19.636801 -0.999999 +v -27.673969 19.836390 -0.999999 +v -27.624630 20.031019 -0.999999 +v -27.555599 20.220551 -0.999999 +v -27.414490 20.492630 -0.999999 +v -27.228689 20.743530 -0.999999 +v -26.998230 20.967470 -0.999999 +v -26.723070 21.158649 -0.999999 +v -3.097852 34.888088 -0.999998 +v -3.058702 34.910809 -0.999998 +v -2.760384 35.064079 -0.999998 +v -2.510572 35.174419 -0.999998 +v -2.024714 35.353069 -0.999998 +v -1.582107 35.478981 -0.999998 +v -1.080716 35.581661 -0.999998 +v -0.754755 35.626011 -0.999998 +v -0.411912 35.653530 -0.999998 +v 0.068701 35.658569 -0.999998 +v 0.572670 35.620548 -0.999998 +v 1.096192 35.531940 -0.999998 +v 1.635463 35.385231 -0.999998 +v 2.186679 35.172890 -0.999998 +v 2.746035 34.887402 -0.999998 +v 2.771456 34.872719 -0.999998 +v 7.464162 32.163349 -0.999999 +v 15.253320 27.666241 -0.999999 +v 27.735189 20.459780 -0.999999 +v 27.760611 20.445101 -0.999999 +v 27.895399 20.354771 -0.999999 +v 28.012421 20.250940 -0.999999 +v 28.113310 20.133301 -0.999999 +v 28.195770 20.005659 -0.999999 +v 28.304729 19.730980 -0.999999 +v 28.341249 19.440559 -0.999999 +v 28.305321 19.150070 -0.999999 +v 28.196911 18.875179 -0.999999 +v 28.114700 18.747379 -0.999999 +v 28.014050 18.629551 -0.999999 +v 27.897230 18.525490 -0.999999 +v 31.698460 -17.754620 -1.000001 +v 31.678040 -18.025631 -1.000001 +v 31.618450 -18.258989 -1.000001 +v 31.522221 -18.459169 -1.000001 +v 31.427509 -18.590231 -1.000001 +v 31.314671 -18.707041 -1.000001 +v 31.184740 -18.811489 -1.000001 +v 31.038811 -18.905470 -1.000001 +v 26.822330 -21.359131 -1.000001 +v 26.698940 -21.396070 -1.000001 +v 26.574249 -21.392080 -1.000001 +v 26.458860 -21.351021 -1.000001 +v 26.363340 -21.276751 -1.000001 +v 26.298269 -21.173100 -1.000001 +v 26.274229 -21.043930 -1.000001 +v 26.274229 -11.652350 -1.000000 +v 26.240850 -11.462400 -1.000000 +v 26.157789 -11.318790 -1.000000 +v 26.037319 -11.223560 -1.000000 +v 25.891661 -11.178740 -1.000000 +v 25.733061 -11.186380 -1.000000 +v 25.573780 -11.248510 -1.000000 +v 21.562111 -13.571100 -1.000001 +v 21.370380 -13.705390 -1.000001 +v 21.218809 -13.856010 -1.000001 +v 21.105040 -14.022040 -1.000001 +v 21.043091 -14.156130 -1.000001 +v 21.000080 -14.298000 -1.000001 +v 20.966869 -14.603510 -1.000001 +v 20.966869 -24.051201 -1.000001 +v 20.956520 -24.269871 -1.000001 +v 20.904810 -24.472601 -1.000001 +v 20.816071 -24.657419 -1.000001 +v 20.727819 -24.783110 -1.000001 +v 20.623011 -24.896790 -1.000001 +v 20.371010 -25.084841 -1.000001 +v 15.581860 -27.858259 -1.000001 +v 15.463810 -27.894529 -1.000001 +v 15.340730 -27.890249 -1.000001 +v 15.224440 -27.849171 -1.000001 +v 15.126750 -27.775049 -1.000001 +v 15.059470 -27.671631 -1.000001 +v 15.034420 -27.542681 -1.000001 +v 15.034420 -18.158489 -1.000001 +v 15.003990 -18.001150 -1.000001 +v 14.921680 -17.866699 -1.000001 +v 14.800500 -17.765039 -1.000001 +v 14.653450 -17.706020 -1.000001 +v 14.493510 -17.699530 -1.000001 +v 14.333690 -17.755440 -1.000001 +v 10.169160 -20.177891 -1.000001 +v 9.977448 -20.309700 -1.000001 +v 9.825815 -20.460020 -1.000001 +v 9.711927 -20.627211 -1.000001 +v 9.649883 -20.762680 -1.000001 +v 9.606781 -20.906019 -1.000001 +v 9.573477 -21.213511 -1.000001 +v 9.573477 -30.649120 -1.000001 +v 9.540466 -30.954081 -1.000001 +v 9.497616 -31.095310 -1.000001 +v 9.435792 -31.228849 -1.000001 +v 9.354342 -31.353979 -1.000001 +v 9.251994 -31.471161 -1.000001 +v 9.126501 -31.581169 -1.000001 +v 8.977601 -31.682760 -1.000001 +v 3.623141 -34.783489 -1.000002 +v 3.518881 -34.835880 -1.000002 +v 3.407471 -34.868351 -1.000002 +v 3.280597 -34.881981 -1.000002 +v 3.149746 -34.874161 -1.000002 +v 2.895620 -34.802711 -1.000002 +v 2.651738 -34.663250 -1.000002 +v 2.434501 -34.463181 -1.000002 +v 2.260306 -34.209869 -1.000002 +v 2.192190 -34.059601 -1.000001 +v 2.142445 -33.897968 -1.000001 +v 2.114818 -33.739540 -1.000001 +v 2.106637 -33.573120 -1.000001 +v 2.133908 -3.020771 -1.000000 +v 2.166210 -2.554749 -1.000000 +v 2.207469 -2.332289 -1.000000 +v 2.266531 -2.117218 -1.000000 +v 2.344197 -1.909804 -1.000000 +v 2.441266 -1.710312 -1.000000 +v 2.624997 -1.426512 -1.000000 +v 2.856881 -1.162039 -1.000000 +v 3.139616 -0.917790 -1.000000 +v 3.475899 -0.694668 -1.000000 +v 29.570330 14.423920 -0.999999 +v 29.843470 14.553590 -0.999999 +v 30.123699 14.616530 -0.999999 +v 30.402599 14.617650 -0.999999 +v 30.671749 14.561850 -0.999999 +v 30.922720 14.454050 -0.999999 +v 31.147100 14.299160 -0.999999 +v 31.336460 14.102080 -0.999999 +v 31.482401 13.867730 -0.999999 +v 31.576481 13.601010 -0.999999 +v 31.610291 13.306840 -0.999999 +v -110.000000 -110.000000 -3.000005 +v -110.000000 110.000000 -2.999995 +v 110.000000 -110.000000 -3.000005 +v 110.000000 110.000000 -2.999995 +vn 0.0000 -0.0000 1.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.9064 -0.4224 0.0000 +vn -0.9619 -0.2734 0.0000 +vn -0.9893 -0.1457 0.0000 +vn -0.9988 -0.0492 0.0000 +vn -0.8301 -0.5576 0.0000 +vn -0.7549 -0.6559 0.0000 +vn -0.6917 -0.7222 0.0000 +vn -0.6203 -0.7843 0.0000 +vn -0.5404 -0.8414 0.0000 +vn -1.0000 0.0027 0.0000 +vn -0.1924 0.9813 0.0000 +vn -0.0118 0.9999 0.0000 +vn 0.1317 0.9913 0.0000 +vn 0.2422 0.9702 0.0000 +vn 0.3866 0.9222 0.0000 +vn 0.3867 0.9222 0.0000 +vn -0.3816 0.9243 0.0000 +vn -0.5820 0.8132 0.0000 +vn -0.7653 0.6437 0.0000 +vn -0.8938 0.4486 0.0000 +vn -0.9669 0.2550 0.0000 +vn -0.9968 0.0803 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5905 0.8070 0.0000 +vn -0.7430 0.6693 0.0000 +vn -0.8591 0.5118 0.0000 +vn -0.9369 0.3497 0.0000 +vn -0.9369 0.3496 0.0000 +vn -0.9917 0.1285 0.0000 +vn -0.4085 0.9127 0.0000 +vn -0.2132 0.9770 0.0000 +vn -0.0176 0.9998 0.0000 +vn 0.1638 0.9865 0.0000 +vn 0.3854 0.9227 0.0000 +vn -1.0000 0.0031 0.0000 +vn -0.8288 -0.5596 0.0000 +vn -0.7321 -0.6812 0.0000 +vn -0.5934 -0.8049 0.0000 +vn -0.9014 -0.4329 0.0000 +vn -0.9575 -0.2883 0.0000 +vn -0.9942 -0.1071 0.0000 +vn -0.8321 -0.5546 0.0000 +vn -0.9119 -0.4103 0.0000 +vn -0.9669 -0.2552 0.0000 +vn -0.9962 -0.0871 0.0000 +vn -0.7548 -0.6559 0.0000 +vn -0.6936 -0.7203 0.0000 +vn -0.6267 -0.7793 0.0000 +vn -0.5544 -0.8322 0.0000 +vn -0.9998 0.0209 0.0000 +vn -0.1249 0.9922 0.0000 +vn 0.0703 0.9975 0.0000 +vn 0.2111 0.9775 0.0000 +vn 0.3099 0.9508 0.0000 +vn 0.3969 0.9179 0.0000 +vn 0.4725 0.8814 0.0000 +vn -0.3428 0.9394 0.0000 +vn -0.5577 0.8301 0.0000 +vn -0.7384 0.6743 0.0000 +vn -0.8672 0.4980 0.0000 +vn -0.9380 0.3465 0.0000 +vn -0.9740 0.2267 0.0000 +vn -0.9976 0.0690 0.0000 +vn 0.9001 0.4357 0.0000 +vn 0.9580 0.2869 0.0000 +vn 0.9945 0.1049 0.0000 +vn 0.8242 0.5663 0.0000 +vn 0.7245 0.6892 0.0000 +vn 0.5877 0.8091 0.0000 +vn 1.0000 -0.0088 0.0000 +vn 0.4944 -0.8692 0.0000 +vn 0.2546 -0.9670 0.0000 +vn 0.0021 -1.0000 0.0000 +vn -0.2402 -0.9707 0.0000 +vn 0.6994 -0.7147 0.0000 +vn 0.8542 -0.5199 0.0000 +vn 0.9522 -0.3054 0.0000 +vn 0.9958 -0.0913 0.0000 +vn 0.9958 -0.0912 0.0000 +vn 0.4520 0.8920 0.0000 +vn 0.3606 0.9327 0.0000 +vn 0.2728 0.9621 0.0000 +vn 0.1880 0.9822 0.0000 +vn 0.0723 0.9974 0.0000 +vn -0.0751 0.9972 0.0000 +vn -0.1907 0.9816 0.0000 +vn -0.2755 0.9613 0.0000 +vn -0.3632 0.9317 0.0000 +vn -0.4544 0.8908 0.0000 +vn -0.5025 0.8646 0.0000 +vn -0.5803 0.8144 0.0000 +vn -0.7023 0.7119 0.0000 +vn -0.7826 0.6225 0.0000 +vn -0.8695 0.4939 0.0000 +vn -0.9493 0.3143 0.0000 +vn -0.9942 0.1073 0.0000 +vn -0.9939 -0.1101 0.0000 +vn -0.9484 -0.3169 0.0000 +vn -0.8681 -0.4963 0.0000 +vn -0.7808 -0.6248 0.0000 +vn -0.7808 -0.6247 0.0000 +vn -0.7002 -0.7139 0.0000 +vn -0.5779 -0.8161 0.0000 +vn 0.5024 -0.8646 0.0000 +vn -0.4942 0.8694 0.0000 +vn -0.4432 0.8964 0.0000 +vn -0.3209 0.9471 0.0000 +vn -0.1943 0.9809 0.0000 +vn -0.0654 0.9979 0.0000 +vn 0.0643 0.9979 0.0000 +vn 0.1932 0.9812 0.0000 +vn 0.3198 0.9475 0.0000 +vn 0.4420 0.8970 0.0000 +vn 0.4929 0.8701 0.0000 +vn 0.5690 0.8223 0.0000 +vn 0.6954 0.7186 0.0000 +vn 0.8025 0.5967 0.0000 +vn 0.8868 0.4622 0.0000 +vn 0.9389 0.3441 0.0000 +vn 0.9688 0.2477 0.0000 +vn 0.9887 0.1496 0.0000 +vn 0.9887 0.1497 0.0000 +vn 0.9987 0.0506 0.0000 +vn 0.9988 -0.0486 0.0000 +vn 0.9890 -0.1477 0.0000 +vn 0.9693 -0.2457 0.0000 +vn 0.9396 -0.3422 0.0000 +vn 0.8877 -0.4604 0.0000 +vn 0.8036 -0.5951 0.0000 +vn 0.6969 -0.7172 0.0000 +vn 0.5706 -0.8212 0.0000 +vn 0.5025 -0.8646 0.0000 +vn 0.5019 -0.8649 0.0000 +vn 0.4570 -0.8895 0.0000 +vn 0.4040 -0.9147 0.0000 +vn 0.3451 -0.9386 0.0000 +vn 0.2736 -0.9618 0.0000 +vn 0.2006 -0.9797 0.0000 +vn 0.1348 -0.9909 0.0000 +vn 0.0800 -0.9968 0.0000 +vn 0.0105 -0.9999 0.0000 +vn -0.0752 -0.9972 0.0000 +vn -0.1669 -0.9860 0.0000 +vn -0.2625 -0.9649 0.0000 +vn -0.3595 -0.9332 0.0000 +vn -0.4546 -0.8907 0.0000 +vn -0.5001 -0.8659 0.0000 +vn -0.5002 -0.8659 0.0000 +vn -0.5001 -0.8660 0.0000 +vn -0.5567 -0.8307 0.0000 +vn -0.6637 -0.7480 0.0000 +vn -0.7591 -0.6510 0.0000 +vn -0.8400 -0.5427 0.0000 +vn -0.8400 -0.5426 0.0000 +vn -0.9295 -0.3687 0.0000 +vn -0.9922 -0.1248 0.0000 +vn -0.9924 0.1228 0.0000 +vn -0.9924 0.1227 0.0000 +vn -0.9303 0.3669 0.0000 +vn -0.8410 0.5410 0.0000 +vn -0.7604 0.6495 0.0000 +vn -0.6651 0.7467 0.0000 +vn -0.6652 0.7467 0.0000 +vn -0.5583 0.8296 0.0000 +vn -0.9972 0.0751 0.0000 +vn -0.9689 0.2474 0.0000 +vn -0.9013 0.4333 0.0000 +vn -0.8105 0.5857 0.0000 +vn -0.7192 0.6948 0.0000 +vn -0.6265 0.7794 0.0000 +vn -0.5414 0.8407 0.0000 +vn -0.5415 0.8407 0.0000 +vn -0.5030 0.8643 0.0000 +vn -0.2868 0.9580 0.0000 +vn 0.0320 0.9995 0.0000 +vn 0.3352 0.9421 0.0000 +vn 0.6138 0.7894 0.0000 +vn 0.8469 0.5317 0.0000 +vn 0.9831 0.1830 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.9849 0.1731 0.0000 +vn 0.8656 0.5007 0.0000 +vn 0.6201 0.7845 0.0000 +vn 0.2941 0.9558 0.0000 +vn -0.0481 0.9988 0.0000 +vn -0.3634 0.9316 0.0000 +vn -0.5010 0.8654 0.0000 +vn -0.5737 0.8191 0.0000 +vn -0.7049 0.7093 0.0000 +vn -0.8249 0.5653 0.0000 +vn -0.9078 0.4194 0.0000 +vn -0.9570 0.2901 0.0000 +vn -0.9941 0.1081 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.9989 0.0473 0.0000 +vn -0.9690 0.2472 0.0000 +vn -0.9690 0.2471 0.0000 +vn -0.9015 0.4328 0.0000 +vn -0.8184 0.5746 0.0000 +vn -0.7352 0.6778 0.0000 +vn -0.5981 0.8014 0.0000 +vn -0.5011 0.8654 0.0000 +vn -0.2937 0.9559 0.0000 +vn 0.0348 0.9994 0.0000 +vn 0.3331 0.9429 0.0000 +vn 0.6044 0.7966 0.0000 +vn 0.6045 0.7966 0.0000 +vn 0.8382 0.5453 0.0000 +vn 0.9817 0.1907 0.0000 +vn 0.9816 0.1907 0.0000 +vn 0.9818 0.1899 0.0000 +vn 0.8529 0.5221 0.0000 +vn 0.6427 0.7661 0.0000 +vn 0.3725 0.9280 0.0000 +vn 0.0405 0.9992 0.0000 +vn -0.3302 0.9439 0.0000 +vn -0.5028 0.8644 0.0000 +vn -0.5666 0.8240 0.0000 +vn -0.7040 0.7102 0.0000 +vn -0.8265 0.5630 0.0000 +vn -0.9092 0.4164 0.0000 +vn -0.9576 0.2880 0.0000 +vn -0.9942 0.1077 0.0000 +vn -0.9942 0.1076 0.0000 +vn -0.9569 0.2903 0.0000 +vn -0.9075 0.4201 0.0000 +vn -0.8381 0.5455 0.0000 +vn -0.7532 0.6578 0.0000 +vn -0.6592 0.7520 0.0000 +vn -0.5636 0.8260 0.0000 +vn -0.5636 0.8261 0.0000 +vn -0.4490 0.8935 0.0000 +vn -0.2798 0.9601 0.0000 +vn -0.1068 0.9943 0.0000 +vn 0.0597 0.9982 0.0000 +vn 0.2707 0.9627 0.0000 +vn 0.4964 0.8681 0.0000 +vn 0.6774 0.7356 0.0000 +vn 0.8240 0.5666 0.0000 +vn 0.9108 0.4129 0.0000 +vn 0.9558 0.2942 0.0000 +vn 0.9558 0.2941 0.0000 +vn 0.9851 0.1718 0.0000 +vn 0.9988 0.0491 0.0000 +vn 1.0000 -0.0009 0.0000 +vn 0.9976 -0.0691 0.0000 +vn 0.9832 -0.1824 0.0000 +vn 0.9643 -0.2648 0.0000 +vn 0.9365 -0.3507 0.0000 +vn 0.8992 -0.4375 0.0000 +vn 0.8394 -0.5435 0.0000 +vn 0.8394 -0.5434 0.0000 +vn 0.7519 -0.6593 0.0000 +vn 0.6537 -0.7567 0.0000 +vn 0.5529 -0.8333 0.0000 +vn 0.5013 -0.8653 0.0000 +vn 0.4289 -0.9034 0.0000 +vn 0.2191 -0.9757 0.0000 +vn 0.0040 -1.0000 0.0000 +vn -0.2030 -0.9792 0.0000 +vn -0.3947 -0.9188 0.0000 +vn -0.5681 -0.8230 0.0000 +vn -0.7211 -0.6928 0.0000 +vn -0.8489 -0.5286 0.0000 +vn -0.9431 -0.3326 0.0000 +vn -0.9935 -0.1142 0.0000 +vn -1.0000 -0.0028 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +usemtl None +s off +f 1//1 2//1 3//1 +f 1//1 3//1 4//1 +f 1//1 4//1 5//1 +f 1//1 5//1 6//1 +f 1//1 6//1 7//1 +f 1//1 7//1 8//1 +f 1//1 8//1 9//1 +f 1//1 9//1 10//1 +f 1//1 10//1 11//1 +f 1//1 11//1 12//1 +f 1//1 12//1 13//1 +f 1//1 13//1 14//1 +f 1//1 14//1 15//1 +f 3//1 2//1 16//1 +f 16//1 2//1 17//1 +f 16//1 17//1 18//1 +f 18//1 17//1 19//1 +f 18//1 19//1 20//1 +f 20//1 19//1 21//1 +f 20//1 21//1 22//1 +f 22//1 21//1 23//1 +f 22//1 23//1 24//1 +f 24//1 23//1 25//1 +f 24//1 25//1 26//1 +f 27//1 28//1 29//1 +f 29//1 28//1 30//1 +f 30//1 28//1 31//1 +f 31//1 28//1 32//1 +f 32//1 28//1 33//1 +f 33//1 28//1 34//1 +f 35//1 36//1 37//1 +f 37//1 36//1 38//1 +f 38//1 36//1 39//1 +f 39//1 36//1 40//1 +f 40//1 36//1 41//1 +f 42//1 43//1 44//1 +f 42//1 44//1 45//1 +f 42//1 45//1 46//1 +f 42//1 46//1 47//1 +f 42//1 47//1 48//1 +f 42//1 48//1 49//1 +f 42//1 49//1 50//1 +f 42//1 50//1 51//1 +f 52//1 53//1 54//1 +f 52//1 54//1 55//1 +f 52//1 55//1 56//1 +f 52//1 56//1 57//1 +f 52//1 57//1 58//1 +f 59//1 60//1 61//1 +f 59//1 61//1 62//1 +f 59//1 62//1 63//1 +f 59//1 63//1 64//1 +f 59//1 64//1 65//1 +f 59//1 65//1 66//1 +f 59//1 66//1 67//1 +f 59//1 67//1 68//1 +f 59//1 68//1 69//1 +f 59//1 69//1 36//1 +f 59//1 36//1 35//1 +f 59//1 35//1 70//1 +f 59//1 70//1 71//1 +f 59//1 71//1 72//1 +f 59//1 72//1 73//1 +f 74//1 75//1 76//1 +f 74//1 76//1 77//1 +f 74//1 77//1 78//1 +f 74//1 78//1 79//1 +f 74//1 79//1 80//1 +f 74//1 80//1 81//1 +f 74//1 81//1 82//1 +f 74//1 82//1 83//1 +f 74//1 83//1 84//1 +f 74//1 84//1 85//1 +f 74//1 85//1 86//1 +f 74//1 86//1 87//1 +f 74//1 87//1 88//1 +f 74//1 88//1 89//1 +f 74//1 89//1 90//1 +f 74//1 90//1 91//1 +f 74//1 91//1 92//1 +f 74//1 92//1 93//1 +f 74//1 93//1 94//1 +f 74//1 94//1 95//1 +f 74//1 95//1 96//1 +f 75//1 97//1 98//1 +f 75//1 98//1 99//1 +f 75//1 99//1 28//1 +f 75//1 28//1 27//1 +f 75//1 27//1 100//1 +f 75//1 100//1 101//1 +f 75//1 101//1 102//1 +f 75//1 102//1 103//1 +f 75//1 103//1 104//1 +f 75//1 104//1 105//1 +f 75//1 105//1 106//1 +f 75//1 106//1 107//1 +f 75//1 107//1 108//1 +f 75//1 108//1 109//1 +f 75//1 109//1 110//1 +f 75//1 110//1 111//1 +f 75//1 111//1 112//1 +f 75//1 112//1 113//1 +f 75//1 113//1 114//1 +f 75//1 114//1 115//1 +f 75//1 115//1 116//1 +f 75//1 116//1 117//1 +f 75//1 117//1 118//1 +f 75//1 118//1 119//1 +f 75//1 119//1 76//1 +f 120//1 74//1 96//1 +f 120//1 96//1 121//1 +f 120//1 121//1 122//1 +f 120//1 122//1 123//1 +f 120//1 123//1 124//1 +f 120//1 124//1 125//1 +f 120//1 125//1 126//1 +f 120//1 126//1 127//1 +f 120//1 127//1 128//1 +f 120//1 128//1 129//1 +f 120//1 129//1 97//1 +f 130//1 53//1 52//1 +f 130//1 52//1 131//1 +f 130//1 131//1 132//1 +f 130//1 132//1 133//1 +f 130//1 133//1 134//1 +f 77//1 130//1 134//1 +f 77//1 134//1 135//1 +f 77//1 135//1 136//1 +f 77//1 136//1 137//1 +f 77//1 137//1 138//1 +f 77//1 138//1 139//1 +f 77//1 139//1 140//1 +f 77//1 140//1 141//1 +f 77//1 141//1 142//1 +f 77//1 142//1 78//1 +f 44//1 43//1 143//1 +f 44//1 143//1 144//1 +f 44//1 144//1 145//1 +f 44//1 145//1 146//1 +f 57//1 147//1 148//1 +f 57//1 148//1 44//1 +f 57//1 44//1 146//1 +f 57//1 146//1 149//1 +f 57//1 149//1 150//1 +f 57//1 150//1 151//1 +f 57//1 151//1 58//1 +f 152//1 41//1 36//1 +f 152//1 36//1 153//1 +f 152//1 153//1 154//1 +f 152//1 154//1 155//1 +f 152//1 155//1 156//1 +f 152//1 156//1 157//1 +f 152//1 157//1 158//1 +f 152//1 158//1 159//1 +f 160//1 161//1 162//1 +f 160//1 162//1 163//1 +f 160//1 163//1 164//1 +f 160//1 164//1 73//1 +f 160//1 73//1 72//1 +f 153//1 36//1 165//1 +f 153//1 165//1 166//1 +f 153//1 166//1 167//1 +f 153//1 167//1 168//1 +f 167//1 169//1 170//1 +f 167//1 170//1 171//1 +f 167//1 171//1 172//1 +f 167//1 172//1 173//1 +f 167//1 173//1 168//1 +f 174//1 175//1 176//1 +f 174//1 176//1 177//1 +f 174//1 177//1 178//1 +f 174//1 178//1 179//1 +f 174//1 179//1 180//1 +f 174//1 180//1 181//1 +f 174//1 181//1 182//1 +f 174//1 182//1 183//1 +f 178//1 177//1 184//1 +f 178//1 184//1 185//1 +f 178//1 185//1 186//1 +f 178//1 186//1 187//1 +f 175//1 34//1 28//1 +f 175//1 28//1 188//1 +f 175//1 188//1 189//1 +f 175//1 189//1 190//1 +f 175//1 190//1 191//1 +f 175//1 191//1 176//1 +f 97//1 129//1 192//1 +f 97//1 192//1 193//1 +f 97//1 193//1 194//1 +f 97//1 194//1 195//1 +f 97//1 195//1 196//1 +f 97//1 196//1 197//1 +f 97//1 197//1 198//1 +f 97//1 198//1 199//1 +f 97//1 199//1 200//1 +f 97//1 200//1 201//1 +f 97//1 201//1 202//1 +f 97//1 202//1 203//1 +f 97//1 203//1 204//1 +f 97//1 204//1 205//1 +f 97//1 205//1 206//1 +f 97//1 206//1 207//1 +f 97//1 207//1 208//1 +f 97//1 208//1 209//1 +f 97//1 209//1 210//1 +f 97//1 210//1 211//1 +f 97//1 211//1 212//1 +f 97//1 212//1 98//1 +f 213//1 194//1 193//1 +f 213//1 193//1 214//1 +f 213//1 214//1 215//1 +f 213//1 215//1 216//1 +f 213//1 216//1 217//1 +f 213//1 217//1 218//1 +f 213//1 218//1 42//1 +f 213//1 42//1 51//1 +f 219//1 207//1 220//1 +f 219//1 220//1 221//1 +f 219//1 221//1 222//1 +f 219//1 222//1 223//1 +f 219//1 223//1 224//1 +f 219//1 224//1 225//1 +f 219//1 225//1 226//1 +f 219//1 226//1 227//1 +f 207//1 206//1 228//1 +f 207//1 228//1 229//1 +f 207//1 229//1 230//1 +f 207//1 230//1 231//1 +f 207//1 231//1 220//1 +f 148//1 147//1 232//1 +f 232//1 147//1 233//1 +f 232//1 233//1 234//1 +f 232//1 234//1 235//1 +f 235//1 234//1 236//1 +f 235//1 236//1 237//1 +f 237//1 236//1 238//1 +f 237//1 238//1 239//1 +f 239//1 238//1 240//1 +f 239//1 240//1 241//1 +f 241//1 240//1 242//1 +f 242//1 240//1 243//1 +f 242//1 243//1 244//1 +f 244//1 243//1 60//1 +f 60//1 243//1 245//1 +f 60//1 245//1 61//1 +f 162//1 161//1 246//1 +f 246//1 161//1 247//1 +f 246//1 247//1 248//1 +f 248//1 247//1 249//1 +f 248//1 249//1 250//1 +f 248//1 250//1 251//1 +f 251//1 250//1 252//1 +f 251//1 252//1 253//1 +f 253//1 252//1 104//1 +f 253//1 104//1 103//1 +f 254//1 255//1 256//1 +f 256//1 255//1 257//1 +f 256//1 257//1 169//1 +f 169//1 257//1 258//1 +f 169//1 258//1 170//1 +f 187//1 186//1 259//1 +f 259//1 186//1 260//1 +f 261//1 262//1 263//1 +f 263//1 262//1 264//1 +f 263//1 264//1 265//1 +f 265//1 264//1 222//1 +f 265//1 222//1 266//1 +f 266//1 222//1 221//1 +f 267//2 268//2 56//2 +f 56//2 268//2 57//2 +f 238//3 269//3 240//3 +f 240//4 269//4 270//4 +f 240//4 270//4 243//4 +f 243//5 270//5 271//5 +f 243//5 271//5 245//5 +f 245//6 271//6 272//6 +f 245//6 272//6 61//6 +f 269//3 238//3 273//3 +f 273//7 238//7 236//7 +f 273//7 236//7 274//7 +f 274//8 236//8 234//8 +f 274//8 234//8 275//8 +f 275//9 234//9 233//9 +f 275//9 233//9 276//9 +f 276//10 233//10 147//10 +f 276//10 147//10 277//10 +f 277//11 147//11 57//11 +f 277//11 57//11 268//11 +f 272//12 278//12 61//12 +f 61//12 278//12 62//12 +f 68//13 279//13 69//13 +f 69//14 279//14 280//14 +f 69//14 280//14 36//14 +f 36//15 280//15 281//15 +f 36//15 281//15 165//15 +f 165//16 281//16 282//16 +f 165//16 282//16 166//16 +f 166//17 282//17 283//17 +f 166//18 283//18 167//18 +f 279//13 68//13 284//13 +f 284//19 68//19 67//19 +f 284//19 67//19 285//19 +f 285//20 67//20 66//20 +f 285//20 66//20 286//20 +f 286//21 66//21 65//21 +f 286//21 65//21 287//21 +f 287//22 65//22 64//22 +f 287//22 64//22 288//22 +f 288//23 64//23 63//23 +f 288//23 63//23 289//23 +f 289//24 63//24 62//24 +f 289//24 62//24 278//24 +f 283//25 290//25 167//25 +f 167//25 290//25 169//25 +f 258//26 291//26 170//26 +f 170//27 291//27 292//27 +f 170//27 292//27 171//27 +f 171//28 292//28 293//28 +f 171//28 293//28 172//28 +f 172//29 293//29 294//29 +f 172//30 294//30 173//30 +f 173//31 294//31 295//31 +f 173//31 295//31 168//31 +f 291//26 258//26 296//26 +f 296//32 258//32 257//32 +f 296//32 257//32 297//32 +f 297//33 257//33 255//33 +f 297//33 255//33 298//33 +f 298//34 255//34 254//34 +f 298//34 254//34 299//34 +f 299//35 254//35 256//35 +f 299//35 256//35 300//35 +f 300//36 256//36 169//36 +f 300//36 169//36 290//36 +f 295//37 301//37 168//37 +f 168//37 301//37 153//37 +f 156//38 302//38 157//38 +f 157//39 302//39 303//39 +f 157//39 303//39 158//39 +f 158//40 303//40 304//40 +f 158//40 304//40 159//40 +f 302//38 156//38 305//38 +f 305//41 156//41 155//41 +f 305//41 155//41 306//41 +f 306//42 155//42 154//42 +f 306//42 154//42 307//42 +f 307//43 154//43 153//43 +f 307//43 153//43 301//43 +f 304//2 308//2 159//2 +f 159//2 308//2 152//2 +f 38//44 309//44 37//44 +f 37//45 309//45 310//45 +f 37//45 310//45 35//45 +f 35//46 310//46 311//46 +f 35//46 311//46 70//46 +f 70//47 311//47 312//47 +f 70//47 312//47 71//47 +f 309//44 38//44 313//44 +f 313//48 38//48 39//48 +f 313//48 39//48 314//48 +f 314//49 39//49 40//49 +f 314//49 40//49 315//49 +f 315//50 40//50 41//50 +f 315//50 41//50 316//50 +f 316//51 41//51 152//51 +f 316//51 152//51 308//51 +f 312//52 317//52 71//52 +f 71//52 317//52 72//52 +f 104//53 318//53 105//53 +f 105//54 318//54 319//54 +f 105//54 319//54 106//54 +f 106//55 319//55 320//55 +f 106//55 320//55 107//55 +f 107//56 320//56 321//56 +f 107//56 321//56 108//56 +f 108//57 321//57 322//57 +f 108//57 322//57 109//57 +f 109//58 322//58 323//58 +f 109//58 323//58 110//58 +f 318//53 104//53 324//53 +f 324//59 104//59 252//59 +f 324//59 252//59 325//59 +f 325//60 252//60 250//60 +f 325//60 250//60 326//60 +f 326//61 250//61 249//61 +f 326//61 249//61 327//61 +f 327//62 249//62 247//62 +f 327//62 247//62 328//62 +f 328//63 247//63 161//63 +f 328//63 161//63 329//63 +f 329//64 161//64 160//64 +f 329//64 160//64 330//64 +f 330//65 160//65 72//65 +f 330//65 72//65 317//65 +f 323//25 331//25 110//25 +f 110//25 331//25 111//25 +f 114//66 332//66 115//66 +f 115//67 332//67 333//67 +f 115//67 333//67 116//67 +f 116//68 333//68 334//68 +f 116//68 334//68 117//68 +f 332//66 114//66 335//66 +f 335//69 114//69 113//69 +f 335//69 113//69 336//69 +f 336//70 113//70 112//70 +f 336//70 112//70 337//70 +f 337//71 112//71 111//71 +f 337//71 111//71 331//71 +f 334//72 338//72 117//72 +f 117//72 338//72 118//72 +f 130//73 339//73 53//73 +f 53//74 339//74 340//74 +f 53//74 340//74 54//74 +f 54//75 340//75 341//75 +f 54//75 341//75 55//75 +f 55//76 341//76 267//76 +f 55//76 267//76 56//76 +f 339//73 130//73 342//73 +f 342//77 130//77 77//77 +f 342//77 77//77 343//77 +f 343//78 77//78 76//78 +f 343//78 76//78 344//78 +f 344//79 76//79 119//79 +f 344//79 119//79 345//79 +f 345//80 119//80 118//80 +f 345//81 118//81 338//81 +f 346//25 17//25 347//25 +f 347//25 17//25 2//25 +f 17//82 346//82 19//82 +f 19//82 346//82 348//82 +f 19//83 348//83 21//83 +f 21//83 348//83 349//83 +f 21//84 349//84 23//84 +f 23//84 349//84 350//84 +f 23//85 350//85 25//85 +f 25//85 350//85 351//85 +f 25//86 351//86 26//86 +f 26//86 351//86 352//86 +f 26//87 352//87 24//87 +f 24//87 352//87 353//87 +f 24//88 353//88 22//88 +f 22//88 353//88 354//88 +f 22//89 354//89 20//89 +f 20//89 354//89 355//89 +f 20//90 355//90 18//90 +f 18//90 355//90 356//90 +f 18//91 356//91 16//91 +f 16//91 356//91 357//91 +f 358//92 3//92 357//92 +f 357//92 3//92 16//92 +f 3//93 358//93 4//93 +f 4//93 358//93 359//93 +f 4//94 359//94 5//94 +f 5//94 359//94 360//94 +f 5//95 360//95 6//95 +f 6//95 360//95 361//95 +f 6//96 361//96 7//96 +f 7//96 361//96 362//96 +f 7//97 362//97 8//97 +f 8//97 362//97 363//97 +f 8//98 363//98 9//98 +f 9//98 363//98 364//98 +f 9//99 364//99 10//99 +f 10//99 364//99 365//99 +f 10//100 365//100 11//100 +f 11//100 365//100 366//100 +f 11//101 366//101 12//101 +f 12//101 366//101 367//101 +f 12//102 367//102 13//102 +f 13//103 367//103 368//103 +f 13//104 368//104 14//104 +f 14//104 368//104 369//104 +f 14//105 369//105 15//105 +f 15//105 369//105 370//105 +f 371//2 1//2 370//2 +f 370//2 1//2 15//2 +f 347//106 2//106 371//106 +f 371//106 2//106 1//106 +f 372//107 43//107 373//107 +f 373//107 43//107 42//107 +f 43//108 372//108 143//108 +f 143//108 372//108 374//108 +f 143//109 374//109 144//109 +f 144//109 374//109 375//109 +f 144//110 375//110 145//110 +f 145//110 375//110 376//110 +f 145//111 376//111 146//111 +f 146//111 376//111 377//111 +f 146//112 377//112 149//112 +f 149//112 377//112 378//112 +f 149//113 378//113 150//113 +f 150//113 378//113 379//113 +f 150//114 379//114 151//114 +f 151//114 379//114 380//114 +f 151//115 380//115 58//115 +f 58//115 380//115 381//115 +f 382//116 52//116 381//116 +f 381//116 52//116 58//116 +f 52//117 382//117 131//117 +f 131//117 382//117 383//117 +f 131//118 383//118 132//118 +f 132//118 383//118 384//118 +f 132//119 384//119 133//119 +f 133//119 384//119 385//119 +f 133//120 385//120 134//120 +f 134//120 385//120 386//120 +f 134//121 386//121 135//121 +f 135//121 386//121 387//121 +f 135//122 387//122 136//122 +f 136//122 387//122 388//122 +f 136//123 388//123 137//123 +f 137//124 388//124 389//124 +f 137//125 389//125 138//125 +f 138//125 389//125 390//125 +f 138//126 390//126 139//126 +f 139//126 390//126 391//126 +f 139//127 391//127 140//127 +f 140//127 391//127 392//127 +f 140//128 392//128 141//128 +f 141//128 392//128 393//128 +f 141//129 393//129 142//129 +f 142//129 393//129 394//129 +f 142//130 394//130 78//130 +f 78//130 394//130 395//130 +f 78//131 395//131 79//131 +f 79//131 395//131 396//131 +f 79//132 396//132 80//132 +f 80//132 396//132 397//132 +f 80//133 397//133 81//133 +f 81//133 397//133 398//133 +f 399//134 82//134 398//134 +f 398//134 82//134 81//134 +f 83//135 82//135 400//135 +f 400//135 82//135 399//135 +f 83//136 400//136 84//136 +f 84//136 400//136 401//136 +f 84//137 401//137 85//137 +f 85//137 401//137 402//137 +f 85//138 402//138 86//138 +f 86//138 402//138 403//138 +f 86//139 403//139 87//139 +f 87//139 403//139 404//139 +f 87//140 404//140 88//140 +f 88//140 404//140 405//140 +f 88//141 405//141 89//141 +f 89//141 405//141 406//141 +f 89//142 406//142 90//142 +f 90//142 406//142 407//142 +f 90//143 407//143 91//143 +f 91//143 407//143 408//143 +f 91//144 408//144 92//144 +f 92//144 408//144 409//144 +f 92//145 409//145 93//145 +f 93//145 409//145 410//145 +f 93//146 410//146 94//146 +f 94//146 410//146 411//146 +f 94//147 411//147 95//147 +f 95//147 411//147 412//147 +f 95//148 412//148 96//148 +f 96//148 412//148 413//148 +f 96//149 413//149 121//149 +f 121//150 413//150 414//150 +f 121//2 414//2 122//2 +f 122//2 414//2 415//2 +f 122//2 415//2 123//2 +f 123//2 415//2 416//2 +f 123//2 416//2 124//2 +f 124//2 416//2 417//2 +f 124//151 417//151 125//151 +f 125//151 417//151 418//151 +f 125//152 418//152 126//152 +f 126//152 418//152 419//152 +f 126//153 419//153 127//153 +f 127//153 419//153 420//153 +f 127//154 420//154 128//154 +f 128//154 420//154 421//154 +f 128//155 421//155 129//155 +f 129//156 421//156 422//156 +f 129//157 422//157 192//157 +f 192//157 422//157 423//157 +f 192//158 423//158 193//158 +f 193//158 423//158 424//158 +f 193//159 424//159 214//159 +f 214//160 424//160 425//160 +f 214//161 425//161 215//161 +f 215//161 425//161 426//161 +f 215//162 426//162 216//162 +f 216//162 426//162 427//162 +f 216//163 427//163 217//163 +f 217//163 427//163 428//163 +f 217//164 428//164 218//164 +f 218//165 428//165 429//165 +f 218//166 429//166 42//166 +f 42//166 429//166 373//166 +f 197//167 430//167 198//167 +f 198//167 430//167 431//167 +f 198//168 431//168 199//168 +f 199//168 431//168 432//168 +f 199//169 432//169 200//169 +f 200//169 432//169 433//169 +f 200//170 433//170 201//170 +f 201//170 433//170 434//170 +f 201//171 434//171 202//171 +f 202//171 434//171 435//171 +f 202//172 435//172 203//172 +f 203//172 435//172 436//172 +f 203//173 436//173 204//173 +f 204//174 436//174 437//174 +f 438//175 205//175 437//175 +f 437//175 205//175 204//175 +f 205//176 438//176 206//176 +f 206//176 438//176 439//176 +f 206//177 439//177 228//177 +f 228//177 439//177 440//177 +f 228//178 440//178 229//178 +f 229//178 440//178 441//178 +f 229//179 441//179 230//179 +f 230//179 441//179 442//179 +f 230//180 442//180 231//180 +f 231//180 442//180 443//180 +f 231//181 443//181 220//181 +f 220//181 443//181 444//181 +f 445//182 221//182 444//182 +f 444//182 221//182 220//182 +f 221//183 445//183 266//183 +f 266//183 445//183 446//183 +f 266//184 446//184 265//184 +f 265//184 446//184 447//184 +f 265//185 447//185 263//185 +f 263//185 447//185 448//185 +f 263//186 448//186 261//186 +f 261//186 448//186 449//186 +f 261//187 449//187 262//187 +f 262//187 449//187 450//187 +f 262//188 450//188 264//188 +f 264//188 450//188 451//188 +f 452//189 222//189 451//189 +f 451//189 222//189 264//189 +f 222//190 452//190 223//190 +f 223//190 452//190 453//190 +f 223//191 453//191 224//191 +f 224//191 453//191 454//191 +f 224//192 454//192 225//192 +f 225//192 454//192 455//192 +f 225//193 455//193 226//193 +f 226//193 455//193 456//193 +f 226//194 456//194 227//194 +f 227//194 456//194 457//194 +f 227//195 457//195 219//195 +f 219//195 457//195 458//195 +f 459//196 207//196 458//196 +f 458//196 207//196 219//196 +f 207//197 459//197 208//197 +f 208//197 459//197 460//197 +f 208//198 460//198 209//198 +f 209//199 460//199 461//199 +f 209//200 461//200 210//200 +f 210//200 461//200 462//200 +f 210//201 462//201 211//201 +f 211//201 462//201 463//201 +f 211//202 463//202 212//202 +f 212//202 463//202 464//202 +f 212//203 464//203 98//203 +f 98//203 464//203 465//203 +f 466//204 99//204 465//204 +f 465//204 99//204 98//204 +f 99//205 466//205 28//205 +f 28//205 466//205 467//205 +f 28//206 467//206 188//206 +f 188//206 467//206 468//206 +f 188//207 468//207 189//207 +f 189//207 468//207 469//207 +f 189//208 469//208 190//208 +f 190//209 469//209 470//209 +f 190//210 470//210 191//210 +f 191//210 470//210 471//210 +f 191//211 471//211 176//211 +f 176//212 471//212 472//212 +f 473//182 177//182 472//182 +f 472//182 177//182 176//182 +f 177//213 473//213 184//213 +f 184//213 473//213 474//213 +f 184//214 474//214 185//214 +f 185//214 474//214 475//214 +f 185//215 475//215 186//215 +f 186//215 475//215 476//215 +f 186//216 476//216 260//216 +f 260//216 476//216 477//216 +f 260//217 477//217 259//217 +f 259//217 477//217 478//217 +f 259//218 478//218 187//218 +f 187//218 478//218 479//218 +f 480//219 178//219 479//219 +f 479//219 178//219 187//219 +f 178//220 480//220 179//220 +f 179//220 480//220 481//220 +f 179//221 481//221 180//221 +f 180//221 481//221 482//221 +f 180//222 482//222 181//222 +f 181//222 482//222 483//222 +f 181//223 483//223 182//223 +f 182//223 483//223 484//223 +f 182//224 484//224 183//224 +f 183//224 484//224 485//224 +f 183//225 485//225 174//225 +f 174//225 485//225 486//225 +f 487//196 175//196 486//196 +f 486//196 175//196 174//196 +f 175//226 487//226 34//226 +f 34//226 487//226 488//226 +f 34//227 488//227 33//227 +f 33//227 488//227 489//227 +f 33//228 489//228 32//228 +f 32//228 489//228 490//228 +f 32//229 490//229 31//229 +f 31//229 490//229 491//229 +f 31//230 491//230 30//230 +f 30//230 491//230 492//230 +f 30//231 492//231 29//231 +f 29//231 492//231 493//231 +f 29//232 493//232 27//232 +f 27//233 493//233 494//233 +f 495//204 100//204 494//204 +f 494//204 100//204 27//204 +f 100//234 495//234 101//234 +f 101//234 495//234 496//234 +f 101//235 496//235 102//235 +f 102//235 496//235 497//235 +f 102//236 497//236 103//236 +f 103//236 497//236 498//236 +f 103//237 498//237 253//237 +f 253//237 498//237 499//237 +f 253//238 499//238 251//238 +f 251//238 499//238 500//238 +f 251//239 500//239 248//239 +f 248//239 500//239 501//239 +f 248//240 501//240 246//240 +f 246//240 501//240 502//240 +f 246//241 502//241 162//241 +f 162//241 502//241 503//241 +f 162//242 503//242 163//242 +f 163//242 503//242 504//242 +f 163//243 504//243 164//243 +f 164//244 504//244 505//244 +f 164//245 505//245 73//245 +f 73//245 505//245 506//245 +f 73//246 506//246 59//246 +f 59//246 506//246 507//246 +f 508//247 60//247 507//247 +f 507//247 60//247 59//247 +f 60//248 508//248 244//248 +f 244//248 508//248 509//248 +f 244//249 509//249 242//249 +f 242//249 509//249 510//249 +f 242//250 510//250 241//250 +f 241//250 510//250 511//250 +f 241//251 511//251 239//251 +f 239//251 511//251 512//251 +f 239//252 512//252 237//252 +f 237//252 512//252 513//252 +f 237//253 513//253 235//253 +f 235//254 513//254 514//254 +f 235//255 514//255 232//255 +f 232//255 514//255 515//255 +f 232//256 515//256 148//256 +f 148//256 515//256 516//256 +f 148//257 516//257 44//257 +f 44//257 516//257 517//257 +f 518//258 45//258 517//258 +f 517//258 45//258 44//258 +f 45//259 518//259 46//259 +f 46//259 518//259 519//259 +f 46//260 519//260 47//260 +f 47//260 519//260 520//260 +f 47//261 520//261 48//261 +f 48//261 520//261 521//261 +f 48//262 521//262 49//262 +f 49//262 521//262 522//262 +f 49//263 522//263 50//263 +f 50//263 522//263 523//263 +f 50//264 523//264 51//264 +f 51//264 523//264 524//264 +f 51//265 524//265 213//265 +f 213//265 524//265 525//265 +f 213//266 525//266 194//266 +f 194//266 525//266 526//266 +f 194//267 526//267 195//267 +f 195//267 526//267 527//267 +f 195//268 527//268 196//268 +f 196//268 527//268 528//268 +f 430//269 197//269 528//269 +f 528//269 197//269 196//269 +f 324//1 319//1 318//1 +f 272//1 296//1 297//1 +f 272//1 297//1 298//1 +f 272//1 298//1 299//1 +f 272//1 299//1 300//1 +f 272//1 300//1 290//1 +f 272//1 290//1 278//1 +f 334//1 308//1 304//1 +f 334//1 304//1 303//1 +f 334//1 303//1 302//1 +f 334//1 302//1 305//1 +f 334//1 305//1 306//1 +f 334//1 306//1 307//1 +f 334//1 307//1 301//1 +f 334//1 301//1 295//1 +f 334//1 295//1 294//1 +f 334//1 294//1 293//1 +f 334//1 293//1 292//1 +f 334//1 292//1 291//1 +f 334//1 291//1 296//1 +f 334//1 296//1 272//1 +f 334//1 272//1 271//1 +f 334//1 271//1 270//1 +f 334//1 270//1 269//1 +f 334//1 269//1 273//1 +f 334//1 273//1 274//1 +f 334//1 274//1 275//1 +f 334//1 275//1 276//1 +f 334//1 276//1 277//1 +f 334//1 277//1 268//1 +f 334//1 268//1 338//1 +f 268//1 267//1 339//1 +f 268//1 339//1 342//1 +f 268//1 342//1 343//1 +f 268//1 343//1 344//1 +f 268//1 344//1 345//1 +f 268//1 345//1 338//1 +f 308//1 334//1 333//1 +f 308//1 333//1 332//1 +f 308//1 332//1 335//1 +f 308//1 335//1 336//1 +f 308//1 336//1 337//1 +f 308//1 337//1 331//1 +f 323//1 322//1 326//1 +f 323//1 326//1 327//1 +f 323//1 327//1 328//1 +f 323//1 328//1 329//1 +f 323//1 329//1 330//1 +f 323//1 330//1 317//1 +f 323//1 317//1 312//1 +f 323//1 312//1 311//1 +f 323//1 311//1 310//1 +f 323//1 310//1 309//1 +f 323//1 309//1 313//1 +f 323//1 313//1 314//1 +f 323//1 314//1 315//1 +f 323//1 315//1 316//1 +f 323//1 316//1 308//1 +f 323//1 308//1 331//1 +f 283//1 282//1 285//1 +f 283//1 285//1 286//1 +f 283//1 286//1 287//1 +f 283//1 287//1 288//1 +f 283//1 288//1 289//1 +f 283//1 289//1 278//1 +f 283//1 278//1 290//1 +f 339//1 267//1 340//1 +f 340//1 267//1 341//1 +f 326//1 322//1 325//1 +f 325//1 322//1 321//1 +f 325//1 321//1 324//1 +f 324//1 321//1 320//1 +f 324//1 320//1 319//1 +f 285//1 282//1 284//1 +f 284//1 282//1 281//1 +f 284//1 281//1 279//1 +f 279//1 281//1 280//1 +f 401//1 403//1 402//1 +f 406//1 408//1 407//1 +f 371//1 370//1 382//1 +f 371//1 382//1 381//1 +f 371//1 381//1 380//1 +f 371//1 380//1 379//1 +f 371//1 379//1 378//1 +f 371//1 378//1 377//1 +f 371//1 377//1 376//1 +f 371//1 376//1 375//1 +f 371//1 375//1 374//1 +f 371//1 374//1 372//1 +f 400//1 406//1 405//1 +f 400//1 405//1 404//1 +f 400//1 404//1 403//1 +f 400//1 403//1 401//1 +f 356//1 355//1 408//1 +f 356//1 408//1 406//1 +f 356//1 406//1 400//1 +f 356//1 400//1 399//1 +f 356//1 399//1 398//1 +f 356//1 398//1 357//1 +f 358//1 357//1 398//1 +f 358//1 398//1 397//1 +f 358//1 397//1 396//1 +f 358//1 396//1 395//1 +f 358//1 395//1 394//1 +f 358//1 394//1 393//1 +f 352//1 351//1 416//1 +f 352//1 416//1 415//1 +f 352//1 415//1 414//1 +f 352//1 414//1 413//1 +f 352//1 413//1 412//1 +f 352//1 412//1 411//1 +f 352//1 411//1 410//1 +f 352//1 410//1 409//1 +f 352//1 409//1 353//1 +f 417//1 416//1 351//1 +f 417//1 351//1 350//1 +f 417//1 350//1 349//1 +f 417//1 349//1 348//1 +f 417//1 348//1 346//1 +f 417//1 346//1 347//1 +f 347//1 371//1 417//1 +f 417//1 371//1 372//1 +f 417//1 372//1 418//1 +f 418//1 372//1 373//1 +f 418//1 373//1 419//1 +f 419//1 373//1 429//1 +f 419//1 429//1 420//1 +f 420//1 429//1 428//1 +f 420//1 428//1 421//1 +f 421//1 428//1 427//1 +f 421//1 427//1 422//1 +f 422//1 427//1 426//1 +f 422//1 426//1 423//1 +f 423//1 426//1 425//1 +f 423//1 425//1 424//1 +f 353//1 409//1 354//1 +f 354//1 409//1 408//1 +f 354//1 408//1 355//1 +f 358//1 393//1 359//1 +f 359//1 393//1 392//1 +f 359//1 392//1 360//1 +f 360//1 392//1 391//1 +f 360//1 391//1 361//1 +f 361//1 391//1 390//1 +f 361//1 390//1 362//1 +f 362//1 390//1 389//1 +f 362//1 389//1 363//1 +f 363//1 389//1 388//1 +f 363//1 388//1 364//1 +f 364//1 388//1 387//1 +f 364//1 387//1 365//1 +f 365//1 387//1 366//1 +f 366//1 387//1 386//1 +f 366//1 386//1 367//1 +f 367//1 386//1 385//1 +f 367//1 385//1 368//1 +f 368//1 385//1 384//1 +f 368//1 384//1 369//1 +f 369//1 384//1 370//1 +f 370//1 384//1 383//1 +f 370//1 383//1 382//1 +f 430//1 446//1 445//1 +f 430//1 447//1 446//1 +f 499//1 497//1 496//1 +f 497//1 499//1 498//1 +f 507//1 495//1 494//1 +f 507//1 494//1 493//1 +f 507//1 493//1 492//1 +f 507//1 492//1 491//1 +f 507//1 491//1 490//1 +f 507//1 490//1 489//1 +f 507//1 489//1 488//1 +f 507//1 488//1 487//1 +f 507//1 487//1 486//1 +f 507//1 486//1 485//1 +f 507//1 485//1 484//1 +f 507//1 484//1 483//1 +f 479//1 478//1 458//1 +f 479//1 458//1 457//1 +f 479//1 457//1 456//1 +f 479//1 456//1 455//1 +f 479//1 455//1 454//1 +f 479//1 454//1 453//1 +f 479//1 453//1 452//1 +f 508//1 507//1 483//1 +f 508//1 483//1 482//1 +f 508//1 482//1 481//1 +f 508//1 481//1 480//1 +f 508//1 480//1 479//1 +f 508//1 479//1 452//1 +f 508//1 452//1 451//1 +f 508//1 451//1 450//1 +f 508//1 450//1 449//1 +f 495//1 507//1 506//1 +f 495//1 506//1 505//1 +f 495//1 505//1 504//1 +f 495//1 504//1 503//1 +f 495//1 503//1 502//1 +f 495//1 502//1 501//1 +f 495//1 501//1 500//1 +f 495//1 500//1 499//1 +f 495//1 499//1 496//1 +f 449//1 511//1 510//1 +f 449//1 510//1 509//1 +f 449//1 509//1 508//1 +f 448//1 517//1 516//1 +f 448//1 516//1 515//1 +f 448//1 515//1 514//1 +f 448//1 514//1 513//1 +f 448//1 513//1 512//1 +f 448//1 512//1 511//1 +f 448//1 511//1 449//1 +f 528//1 517//1 448//1 +f 528//1 448//1 447//1 +f 528//1 447//1 430//1 +f 517//1 528//1 527//1 +f 517//1 527//1 526//1 +f 517//1 526//1 525//1 +f 517//1 525//1 524//1 +f 517//1 524//1 523//1 +f 517//1 523//1 518//1 +f 444//1 438//1 437//1 +f 444//1 437//1 436//1 +f 444//1 436//1 435//1 +f 444//1 435//1 434//1 +f 444//1 434//1 433//1 +f 444//1 433//1 432//1 +f 444//1 432//1 431//1 +f 444//1 431//1 430//1 +f 444//1 430//1 445//1 +f 438//1 444//1 443//1 +f 438//1 443//1 442//1 +f 438//1 442//1 441//1 +f 438//1 441//1 440//1 +f 438//1 440//1 439//1 +f 458//1 478//1 477//1 +f 458//1 477//1 476//1 +f 458//1 476//1 475//1 +f 458//1 475//1 474//1 +f 458//1 474//1 473//1 +f 458//1 473//1 472//1 +f 458//1 472//1 459//1 +f 466//1 465//1 472//1 +f 466//1 472//1 471//1 +f 466//1 471//1 470//1 +f 466//1 470//1 469//1 +f 466//1 469//1 468//1 +f 466//1 468//1 467//1 +f 472//1 465//1 464//1 +f 472//1 464//1 463//1 +f 472//1 463//1 462//1 +f 472//1 462//1 461//1 +f 472//1 461//1 460//1 +f 472//1 460//1 459//1 +f 521//1 520//1 522//1 +f 522//1 520//1 519//1 +f 522//1 519//1 523//1 +f 523//1 519//1 518//1 +f 529//270 530//270 531//270 +f 531//270 530//270 532//270 +f 532//182 120//182 531//182 +f 531//182 120//182 97//182 +f 531//271 97//271 529//271 +f 529//271 97//271 75//271 +f 529//196 75//196 530//196 +f 530//196 75//196 74//196 +f 530//272 74//272 532//272 +f 532//272 74//272 120//272 From 89070237d93b1258eec768df462f32d6f1ccc8b7 Mon Sep 17 00:00:00 2001 From: v27jain Date: Tue, 5 Oct 2021 20:08:50 +0530 Subject: [PATCH 26/26] Adding 3DI D300 (#9863) * Add files via upload * Add files via upload * Add files via upload * Delete 3di_d220.def.json * Delete 3di_d300.def.json * Add files via upload * Delete 3di_d220_extruder_0.def.json * Delete 3di_d300_extruder_0.def.json * Add files via upload * Update 3di_d220.def.json * Update 3di_d300.def.json * Delete 3di_d300_platform.stl * Add files via upload * Update 3di_d300.def.json * Delete 3di_d220.def.json * Delete 3di_d220_platform.stl --- resources/definitions/3di_base.def.json | 49 ++++++++++++++++++ resources/definitions/3di_d300.def.json | 26 ++++++++++ .../extruders/3di_base_extruder_0.def.json | 15 ++++++ resources/meshes/3di_d300_platform.STL | Bin 0 -> 332484 bytes 4 files changed, 90 insertions(+) create mode 100644 resources/definitions/3di_base.def.json create mode 100644 resources/definitions/3di_d300.def.json create mode 100644 resources/extruders/3di_base_extruder_0.def.json create mode 100644 resources/meshes/3di_d300_platform.STL diff --git a/resources/definitions/3di_base.def.json b/resources/definitions/3di_base.def.json new file mode 100644 index 0000000000..b86ff4707c --- /dev/null +++ b/resources/definitions/3di_base.def.json @@ -0,0 +1,49 @@ +{ + "version": 2, + "name": "3DI Base Printer", + "inherits": "fdmprinter", + "metadata": { + "visible": false, + "author": "Vaibhav Jain", + "manufacturer": "3Deometry Innovations", + "file_formats": "text/x-gcode", + "machine_extruder_trains": + { + "0": "3di_base_extruder_0" + } + }, + + "overrides": { + "machine_name":{ + "default_value": "3DI Base Printer" + }, + "machine_heated_bed": { + "default_value": true + }, + "machine_width": { + "default_value": 220 + }, + "machine_height": { + "default_value": 220 + }, + "machine_depth": { + "default_value": 220 + }, + "machine_center_is_zero": { + "default_value": true + }, + "machine_gcode_flavor": { + "default_value": "RepRap (Marlin/Sprinter)" + }, + "machine_start_gcode": { + "default_value": "G21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107 ;start with the fan off\nG28 ;Home all axes (max endstops)\nG1 Z15.0 F9000 ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E3 ;extrude 3mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F9000\n;Put printing message on LCD screen\nM117 Printing..." + }, + "machine_end_gcode": { + "default_value": "M104 S0 ;extruder heater off\nM140 S0 ;heated bed heater off (if you have it)\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG28 ;Home all axes (max endstops)\nM84 ;steppers off\nG90 ;absolute positioning" + }, + "machine_shape": { + "default_value": "elliptic" + } + } +} + diff --git a/resources/definitions/3di_d300.def.json b/resources/definitions/3di_d300.def.json new file mode 100644 index 0000000000..3fad62d339 --- /dev/null +++ b/resources/definitions/3di_d300.def.json @@ -0,0 +1,26 @@ +{ + "version": 2, + "name": "3DI D300", + "inherits": "3di_base", + "metadata": { + "visible": true, + "platform": "3di_d300_platform.STL", + "platform_offset": [-200, -5, 173.205] + }, + + "overrides": { + "machine_name": { + "default_value": "3DI D300" + }, + "machine_width": { + "default_value": 300 + }, + "machine_height": { + "default_value": 300 + }, + "machine_depth": { + "default_value": 300 + } + } +} + diff --git a/resources/extruders/3di_base_extruder_0.def.json b/resources/extruders/3di_base_extruder_0.def.json new file mode 100644 index 0000000000..5fbb347ede --- /dev/null +++ b/resources/extruders/3di_base_extruder_0.def.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "3di_base", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} \ No newline at end of file diff --git a/resources/meshes/3di_d300_platform.STL b/resources/meshes/3di_d300_platform.STL new file mode 100644 index 0000000000000000000000000000000000000000..6615bfb523c0f28281594e8f472787db0e3d95b1 GIT binary patch literal 332484 zcmbS!3HVi0`}U&I)I1`UA!W!^DD^w`iI-%^5K^g>C>bgZntq$tOQuBfnkDnlV0e-0 zw?k5tN-7bBkQ7Qp8NO#&d%K^rI$i(k>-vA*_0@gv=eh5D?P;BJ_8xR~|GvE&wHrLJ zXQNa4_Z&2+QOEv0uf4R<(T)B;|NK_p`9E=@gL~Vhf3u65m)G&c6aN|W->i7K8>9LE z#sB=v#1rZN@2+ogIBj8P3`G4i-uBc#TjIavKVxPe|2UP9&UCxmo^ozS9V*_%9!>w7 zqOcS0F#UUGkd7Svk8Iz$dF`|Y|4WK0WRSA`Z<&4kq{6Pa_qfGmQf@osZT-Wrs2$Z~ z{6BwU>h7OT{$UqtLI$Gv@54M;Q*q^KSE!uF|NP;uEJ~H{oN;fv6lFX7M_)FtI1~AU zy{BychkxdRpNYc2?fx_7JPH_$_BGP37=xP9G5@`DjSjeF_Urp|=61U~Vl&>m%Qa$7 zPO}{dc7aqVDdgjCbzZ83R!=rtO9d+I&p^ zmv9|Kjqge|i1BN`1=?ZO6(dsyqV73P8C!bofDwB}jHod!m2qY79Wc@wF`@$BvaXhO zZQPdoYP7I4LFKQ%s9x>${M-ojIfo2H$(XhqGPtEwIid!SQ5~0#T2N4fJ4zXdLf>px zE$+|FVotl)OOx*&)>$&{mAR29rz0HC7<3_mkA0ffmE+Zj za_>gyx^u`tl#HqOkbzwxYC>hIL5#``78cYH?f!U$s5{nb=GE6MD9(rxh51_@7hJMV zGM{zf=wxvnb@Y-3?`j^DCg+dYIOk_coXrxC!dYS&s2npm?MAKl>fbhh)tx4YsGvjg zjXQMi+wU5cFz?+ZBNNQyk)E31i>JREq3f1`C>hgsLk8+V)P_Se!HInr7SvEBdd5K% zrfIvXQK@Pfv&N4al{A}HOJ+u^yWWjNIXTVQpbO6V1mi40kCF_0HkN@p(B1bg);wN1 zZ(%_VWFV?R8)aPa>JAu8l5;Jh0!`#JYjSS*M`uWa{pJo&Fpt~=n&4BOfTAGd01#-(OfzgBVO=9WkOXP21Ion+}!)E8Q_Nx!@vAux7b=ktnA;I8AiH zIiGo)W$sa!xn*!SJ94+ezM98j2YygcgBbKj^FUP4A^FA~5_q2xl1KR?h9&6kH%l~+ zc6-l@&_l~Wl#FS+J79ngL`}L@^Ejpb2Zc3QhR*|0n2qh~!;*HA$IEAoNG@}l$46u5 zMWURX=4{Xf=X`>3mY_#rf|emod3Wcn)*5#lvnUGckqcZ;MeHb#wtp)7{Yf7bbj7k$ z2BNT@?W)hl@seQO+Jh6!V@9QVa#lOxp?MLy?i?}@C1dJ6WMEf_nmt|+c+nUGA z%WRseBFzI)L5JiUcSvWPho6-^PQ7hFg6^KsTJxxL$ovRBvicx~X733fH9uj=^ft@#nwb`BYck}>HB8K?tMNAS^y7_V$y zR8RwTAPP0vu9mz#Oya6o>^t}0zBuF!c=NP8xoS%ttHWNKc=8~UdmVr8O zmh^i@=hf74iwkNX15q!JRYtDcl90h9IoBd8&_uqmCg*-XV7Vmt)R@Z?%%kOhHNiRk z-iy$6%RrQjX}ci->uYI(V|%?9 ziE_$=(?l1X^O?t4<{pKaTL!nZBX>U^qIo=a?1u$4SVhV}RL~*$#vRhU8v20f=uqR@ zyn^Xt2e8=y(%t<&=Jc(l#FS+A%l%d-9^;?4b|P=M}AmPgF8yyMHD)1yGpmu zyi{%dQL7>ulW**F`u99`&gT(ld3Y4&VHw;~S_j=d=~SKVUmy2TK@DUeYTi-GnBHUA zP8f*VTwfUpp0J|e!LR~qNZ=wqusINR_=tcBUI)z<*)7z`gkvyS55Zq zl;AAcyFq=qPRxJ1Ai}xe95N6kW7=-WKz9)}x~0ym0lP0Ps6h-S$=Lu=ILB;P+rD{I zR-K>NSenCCM_GrZ8N;i!xF+jd!!8?S)%o?cr8z{&N+B_LwYE3|QMk5f8EsB$Bx_3x z7nbIbA!}JwgI6Gt?Hn=?g{xndv3AkE}#@`For*p;lX5u4ZHutVpNfhb&)vy4mYeJ(oUQKNIXW+j@a2Cq7!KIa1E9)-#+ z-+b&8v~vp>xPU6s~1iMzax(<^1v2`y+F~IvmyD)mqf&T%g>e zP`PC+8`Md3^yo1>hh52v4zYPv4LhVy0f2!hTm!OP}K(!1AW850K8m7~v!-e)FwELoY?qtA*t3nM&YIEM^G$(W8lA%hPj>Dd5LcwDhH z?z#Ooad-ZiLvrYqtbUOWUL!-_oI?hpaJ|ejT3>&QxO?7xLvpyDBu-NeUJ*vuoeT2t zD9pn$CN_LdbPT(8Kn}Z-H92DQ${lt{pCJPSQMig{8J|D&wCI? zGp2kH;q0N0c7cH?8PiM*88{OWb@pj`9^A5dX+aHQFiFmXh{CyRyK33+Ey-iUm;H0N zsv_BtSG>xJIXM?3=uw!UWxUZ~z2wp7`Cd76S5~Ho&Ffd_v~$Qn6s~1i#^}mxL`Q?8 z`s8pmLNrkgUL8bzw0{&T_b60u88vsQD48GI=%O5UC2K&$=2blG&^crv3RjIRqvw{x zq{bz)+9WtjrroUbYQV%r5zYnYkbx)})4U29JVnwY9HOdq*LhX)=SKxKcvhwJ3Q;)6 zY*&A_a6Aj$aTB`ba8*UJA+LC?4|8%ZNYJA&LCa`$Y8}lZcUBJFm9-OM^Ew-2rS(zdi zc>M~Urmr{w15vn^Wf>FCYAAWk>UC-k@5v<_s=;f0m=k@Ur7%H{!UQej$s1aTj;xxChHtB5G7-pS0Mvu38HY8*cyX|o+w=%x}a$ey^_^0(!^_I z=o{TZ0s~RFUS=8Y(N^Mav(t~v;XR-@O*MGk2VJMnPz&?$D9pn$ei?k4=y>A!eG~L* z(3k4&G3!5!&=Kd5fhZZ1yCH+zWrJBu{B)`AwYS$^5uv-b1|!qG7PpIR%lK{m$>LR` z?)&HPIzfCR7kCv1J){bS?s^ouYZ-L*9sp5}queHz%7 zv8sMY$>WQ9wR3oWm2Ai>Uj4wFoC^~4C``~YN;{q_Ud_C|S`OWnwJc)uiWfTV95N7v zt6!G!aMW3JEWEr@4$m^8iE8lGE9!GDQ0`Hv+%m4%+F5k;YF9DA1e@2|TUMjCv|kpX z>&_tqQ8K2?Lk1>@C`{1SIR2-Lq^m<-D4#>GWZjQ6@#-M@<{UB*g)4=YG4YX0#NDqB z{-Feq2I4f;;A=Q^-MJtSkHS1Gj8ZnHD} z(Wl|c2pyqs5(5KKGUlUCz(98qh3?uKd%vPxH7@sd33?^#`=p6K1wh}NLk6Po69LQU z^TZ%=_nU(sF2R{0PE!pzC&C%dxgd`e#aA`nY0SyFx$~|OcYA(0xeUFU)m`1~`{XAP zI${}!k}8P1V_+@3JaFcWn(urn4Qli)_pI5YYN@MFAc@;81c|09Z>1S#D zS&^-=VDhz+;OXPz%P^1C!!^OzjxY~fgW+j{xLsshM(58)N`h7AHY~yIN}A*}@AH@}UGElV z?opVzWv~kU6XybViH)D7@|dxzng@~rqG*htZKn*aKm@H(z+e>CcJ7WABP7Ai(aB|) z$D$iG!RGnZ5qfADh>|fS7&5qjuf-t>^RPAI`$kJ1M;yPrEuthF(!_f(=Hy(EphsbX zmT~QMqeOYxh^l3%Go)Dw2A{W=&X| z_VdE7JPNzA44fsXJg7%bb3OX(?x)d`;EPAUF$?opKTZ?uJMzm2w`3WJk}+*JWMEf_ z!mezMj~*$NuAbg{@hq&dWxRGZuJzgox8xi$5G7;kDrDd+nKoPV*w|@pgk9Mhr~|i) zY|Ci8RWm>DottJNN@`G=oIlp1&x8wSiAUiqv5b04)vFl~)SZROCr?nXx=;B!!fu^I z2BKt4UWE+w3Q?%Z)@c5YDnC6wd{$YRy4&)duOnfQCUzRx^g9;yD$cy}DD=uQFc0i1 zs7IQ(9(^XfNxd5R$@6Vc`B~np*IR!R;g&1|Q8K3Oh79m3Mih2sYh1cckJNLw&73vy z4fU#f({CeTkPGY^vYqqp#+kbwh3;Agbmdy}UPQh3`Tg4{s7HU#^#mWMXB^alY+Gae zhwAQw!|Sz0uY^Gzay{GfW)nMOH6Md6I z-HkJMJqq2m4APz{$4-v9Q+-?1=evR$;+9@%I79^C+>`t7q1nP&VK>_3EbM*GJM7)nMPSL;7C0x*KQidX)I%eX|Vo3OngJ zM!kwx_xomDyNKGi)H6yp6m*5|A}Y|7)mYh9uS;gGuU&#(Nj=iRU17K6E-(;< z9a_fa9}g3E&+c>3Uc5h_gIA3iGfGbQhJ69;9A<_u$5Y z8t4_Gf)2?m?$EhY{x@9CwO2Mis|1xxJ@$(7Ko=|nQP`nn)U7yJyqetcp0aIst5+Yd z+Ym`tRD*rP4r!HB-HkJMJqq2m3{?L1dFs#J?S6`adZe7|2|iAbaOl<^eC3wg0!e8@2sG zl~WCN8eMSC=MiUlcogPg8RC{d!Yw~c{TV%Ha}?Agce$S6Gq2E}C-Ta^cf_WGu85N{ z5QX(@SIv(dB<|K*_-F}wCE1WBP7r;gGbb<*g=t#GsO$QPyQjqq%f<{+cR%U+qbjEw z>@>RIoX;c9^6)6>-8*d=s2tS}udQCq-2QVx4Pr1!Izv>@A?3jx(zS(QG%e%vQN5(2_=ELj1AC}fZ`}A(BwbMr_6<99&bu3D?s}B?Lu2mU zGEjN-FX(eeQrJKDYZTO@zvp^t)Q-IRbi1;jZ2C)BBTgBJ!g{u=YOO98cP|*Zq6EE? zc}zNZwxe&(Ap=o3^DU#pxGv)EelXE8=7fL}5MK)t$>u73F)*-Y>bNfhvFf?w_?Q(!nlZht7Gg z;>;_LLa!_XyTVRp^->*ut8Xi)K@28IXNU?qB(Jzb`d;6#E;38DyjL!Vnak0RI^<&_ z=5HB@!sDZ5{IsI2bhKC5p~>gv)T?gSZi%ETs=>Ztht7F-@_SxTUE9i=?O&N&7dbX=+6ZG2&7wuauhhE9ij&$%b5q)zG z8HmE;qh&n*<677hh?C0RJ&=Dra5)k z9|bkUUq2HO6?8~>aEIjU&-%@pFDmbwL*;UOqz?J)gDzMGqVR}n8RdS`@2d5BvrTfw z*Xq@`J%5R$E2_c1VTaCncjL@mj}m{pZnX^vEX_=c|tQ4)`?^26e@nknNmT9%sru3YA+%v95x8)D_or?yd^;rK|XaGm>u4 zYFCri{2B>^>T!q2&UD0?4v#_|mVsTZxL+OZ^2MJ~P>;IedV-JBy%ya?wyjb3<0!|x zS;ron!+9m=66%o8&N#>DN*@@A!n2QM+%|J}@#?{YE=VrEMZNmpf3~U)s=>aYrp(0bY=o>xp3mAyPGqq)G>AqdQLqE1c_vEEM>Tad|e^cdDgPlefob!3a zSsorGy?duE1KmBdntHYPvcIFC9=Xf)th?wavTcoH`!$!DctGzHa;RLc2B<5(4nh~4 zLk6Po`oS_DeNumKuw?f>$yFz+SEFA0O?6NW_6;@BcWc$%ICIydq<0##TFXGM>VB>@ zRxkWJ3hI$pT+e!i{vg}dIOwi9l6hIr{>lCIw8r)me%Bh*6>GwJ^yN=g9%sruO1A4Y zSqAF3a+=n7p}NZl^+*TTvpTSMWZN1Q?mb8{AJe8?4il8?IqHh9`Y=uBkbx+?0aYCg;4naptZ^N$)gfwU$xLtDqiv#r2%K>8Wwj zRg=31CsW?iu6oqp772rDaEHit&g+OX9Ug@`ETdRgK|Sh<>p9o0-#(JZpZz=J&|SF# zqoThZnz=t%3ai1YfMOX$p`hQE3U^l{-X@kQE9BQ`&8XEU$jPyD6D50W7<^_ z<%4bs_!6&=F%No%h#zCBv)>icggzD(H~B z;tq*%W>uN(&o(|UhjUl1`l&0vr^0z`8HmFB1k2d%%DM7;=gIGnPX7C+KD+Dby|+iw z71dzhutR!IvAP>)?s^ouYZ>SjDi7+Ba<1pxePtb_tJPCVlmEV}T^)Ml_DC31k2^%R zb6!WB>F_AjVHwbs!>)c`r}ds|wM)JzBQ~hQ4oL@hNY9qo=Mi}x!23U!CgsNIc4r?? zy)%P46ivX+l*gI!6vf%3$_)c`U{||O)_OI|la6AH7*Rooq=P%;3cAPgsOAiPQpDt2 zTwcc16>CcWp2v)nKQS|9yB>u#cE})FoZxnmy(5NphTA>rXjMMoHQyoWz^;^msCqy8 zr(Zm{GsccknG0DBpLv{R?v-Qa*sU6sI*fVDx>9xYSmE+T88M=WwdGES86^{4eQvM~v*MPZ@N~U=&^lrS-JN6&=48 zr5`z_Xe%T0gv4YBYF$bPkWTQjZwF()j~xI~R22QCQD19<5fnjC))C#;9Cy zY$rCK)vz`_%c8I=kHW4jqt?sc%e*Sf_eyY zbe16M_<@@F-BrsM)L_+VCWyirW4k(g*Q3R&=6jFK1!qpu!DmkNkk%Or-SsH($NOd( zw_es=YIIz7T`su3A_iYyVQuGvt~^S%>+4y@dsA+b8XLC{$pzP<#NcaDtnFOTl}E{T zeLc(Qx$ZZ~y!)%&6HIW=OEmM@OLxg*PV@{2U?57ye7zGeIKDJ{RL%qR=Do;C|h6!MT>$ zd^Lcz=@+1dU3nCCWf^}wR8z07nx37YyHD>*pYRfUiP#j7e^+a##` zyn*UfyuN%MyLAp3h>|h65Hi@Q)T<--8R3L#HK|e_mD?H&PrbtJBHJ>qm~p6hb@nH1 zb9l}W-^c~N0zeO)3*7Z6@yGjS8RuVmoOpHJLq{j5eDgT<>cq<{kVe#wEv!@_#>ZOb*Wg;sWX5t0i=V?(Pb`@+kDmGN#PZ=i>Z2qG^IU;ulqU z>pv^xv0M68JTMR?V^SV6NI8pVE%D~lb(TcOSI(nyTZ575EHT>!wqRpqpOa(Gk|-^c~NEOzj6Q4`a5$6K0JPN(Cj7K`?6KIkP zDqt231D|gSMa$AFu=`6wRBHJ>axWZ!OK;pGk6qas3{Mlp?IPPU zI(NK|x9{f0mzUsnB~5adk1Lq0b3x`Fg_&E%E6w#6ZeLaHT!zYzzCgV?^|C$k*eyL7 z4;YA&F?kg-SVQX733sYjmp0uqkIHQghNoWPc9CrvAKk7`*f{sLgG+F`;v2cZdl!00 zPjo1B*Q3x~%UJg4NSW7lY`;X6H+yr>Ja+3GG7u$W zQXVo$Ig6J)YV%z>OP<+vuRLn9H5i`G65KAbEu-dC{pEeLQ61VMN@|b`JS(vtJ-xNi zU5`R{E#syM`s?LSdi9-!%17}pCyAY0vsWIwrEi4+15q+2uR;bpm3lSC|7Nsx`@Qn0 z$<_dd!|fv5GM0R*UVT`na$7`64bs8cU_JW2N1?kOh3;C$DZglqy_(-MbB)iu&L?~2 zr5>?a6V|3HnZm9-3cIolHY%MZs641gPIEo_l#8?x!Q$m(vKx$9Bru4SNC*Rfja zy=kW^`Jf*CJ=YTznY*Y1*|x^x^!^g&ee}wPHt3Zws6(!YTcQ;&U?2)>SjMq$YK;!j zF>R4iv$rOA=#f?P$fj>#0|QYqCbc0$wEN=~qR=Z_Lm4_7XaB9w)%xU`DtQ@G4IaP! zjlRK&#~v^L6DRU7G*6kKyFj!gGN!N1vO{b}k?VzhTWgx0? zU1eM~scNVrW9$f(b?9B7Rka%i%Pe`l`dww{mDD30+!c0f8HmCTEn`|QJ#&t_`0H6; z-KuAt8qKQeY^NH$cVU|JdmP;d<7^-FDBK4vgS}0?8rnnmsLK{q%?I^JIoDHo%D{Pr zY+K{^r}a5^ji=vRhRVfh>X7q57wD58U?2*!v5cjE>h)EHoA)jI-T#h$&8J=m)nMOH z6a6Mm-HkJMJxY4_zF7tvl`2QIvo2EKI(M&DP($4Ea~DxThvY7I=-gZ1>6Ogp8)vq~ z{aor%SDX#HZW)Ne4lU!gTL;M8ZT#4?W$5mNCbWN0jbZ0h%cIlIAp=n|rrtvadW9(5 z=WUJeH|f>ui_;sFpbqhkx?*=xlXJ*G6gq7gYaY}m75=sR*=3K6)II8l%d6!j530d4 z2D5R_&#O3_R~{uZgT|biWnkvt|4V1a%15f_gL>o}*Asl4&MWNwlyj8bf1B@chYUnv zJ=;~&1^U#}!^XZoO2*Vl$iU1Ig_+wLU+=4TcNbi6Q3)m} zn#f&Nj*d8o3`C&|mT~BvL-?BAefHKZWtR@r%+J|gP4l1{oIhscoS!9eHcLDTXNhI- z_R|Do|AdVdWi|3aJ@Sp~DLiFhYInBQ%)dCgMnP9xAY~v5>)EcpoIOPL^If`)DM7EK z9%f% zs=aR?^{UTlH4AEpzy7$3sGvj2gFB>W8~)x$yqY|JRT<9qdphX;QF&tZJkDv$K$MJW zyCDO0APV;nTjTG6{l(oHC3DK|=&bHGD_;+_8Z|lR^N6!NJW3q(PFn_gVO z5Usn`$_MpG6W0@boX$jacTy$IWB+9}3%Ww(h{AfdtDBeT%H4{?CY9h!l$lRDc>lmz z=^Qc;h5L$S{CKObw>SLemoiN7dwz>6)p)E$jXdT=zk&b;qGU||gbY-UD9qf}IPYrx zq~VeV-SRPk8yGSK){X zIwTjkL+3udRoAJ9epOb2dB`429rE!Jv#|_B;XZE}D=*Yfmqxd%lwcmeU8@OhnnAO~ zzmu1=DiRj3u@6K|OMT>j^&7ftkNN zQ`vuYu3gX-aWV#?u%7K|kM}#uakopOS_$US;5JQg!SOZo=pj9a9vFy{G4&oYM2Wu> zKIu+P@YI!c@|cIMfjV%z$hM3>dg%G%>~^b5aPG?Sk@Dbk6wYJ%Rv0i4g-2A&`1aCs zWtQ~2q*`*@0Xj?KK{Yi&s=+e`({#?yt2moi9){cmGRf$)|TUPB8OokLxVCc}mSZ=HwhQ5G7;kJ!D{4 zh{DWmja$FyCS48e`F9B>C}%iwn$LrnCVkf#7>L4iqGdc^?-a@Wu?>xq`Tm=Ltv{)$ zc~A|`AG2}J&yqNsB_1V?`ur^em171E^IJp7t2Z~>{0T3A^lX5rphIGFhtA!O-x3`DK^MUO<+KCuG^mk}+93N%rgtch07 z4?jZOJ#TXB#AN=F&XRu*sg=i^3K)puF>NBU7@>67HA%=HrFkvK@28I9*7D$ zB;UA0y560yPfz-)WZxXlUAY>d4*5C}=dooV3a=k5W7lW*m(1HuIXMw`X}g?SkDoO2 z{!1uxaNRj%AWFv6d&pqfsd7Y_1Wk>~$2Sn4%I|hsvg{pA@P)Ot^5PYB$Z4W))Rkr~ z&q6{JW^NhS73OixBbwl+CG`qw5Q9n58KQy?$p!9^KAX6tmbm-NgB=s}>Zv{TSJ z*H)*!Z|rx{ zCz!{W4w~RYFVxPX>-20xU?57y)O*MP<#AX4)PSo>>*X;)TLaz2?IPPUh8*{~Wd7n~ zeUkmI(9HjQsdir6C9gPtbei5Qr?Vu^W{F4PEU^si3KM*xre;2VZM}jTpxhxU=#YHl z4xMYz|E&^c9lW%Eg6$qnd34v-AV!=X zOK`i$wv49x&y+kau6tE-%xRiOIqF@Mlhd3Hy5O8oFwPS6C``~Yuq$+T?kcS}s#^Vm z8lc=ED(H|L;ST9t@#CAyK6v)CC+2XElDkRjkncHh@3IU;;r*v&bU1W|c=hKgSLJY} zKvwRk27V^YV^$$&=9mWoiWvC$xiY@H@FA%&<()yv)+Xvti&}N^qMR6<4Z1*|%4mXd zmY_#rf|kMEq_YIwJ@ZMeH@`*wf*Qo2KYEpcsGvj2gFAGt%i$Ac|G2Qppaf_8(f8>7 zv7v6AJkC(dK$MJWyCH*HO1nZ7&URa4>HHz$?n&1UOUCY^YP+?nlNTN28#|4f=-arO zN1Wy1QJ9BiU{~nXXIE>zeb1_2P=gpuk}C~F1s#$L+#wwkFC8WB&faZUf?my;uI`>$ zQYVj&SO%hGOxq0^&{e$hW*&^!$LJX&lCGcX^BErQ zR3|UW$!X38U7$~2HNiMb(4#Ox%fPPC-TT^T9`9aUzn}&vcZdo)B;UA0=l)u7oaFJ; ziV+FAJLn6|^SU1%ADu%6qHxv7GOp-aQ8Mo{e^gR7O*3!azfNA34R=W2pKv{o$(eyV zme?9+EcvfIDP(Gg(&Usen&7d+=={oQQdgWN`bNL))6C;6bC1HzEd#s4)Gl7G_1@@L zzn}&&m?TG0L^6lz}MB!*=z;70pG**g2&McD3Jms^iL0b@Eu-Ib~FIkHO9%15vovYZ-fNdPDM zijD=Jcg|r~vYt$AUUkL}okIqqa0S{jx;Fn=&dya%?U_S{tdUX;UZ+Mj{hAyYh{9D> z%jo^_ed5)#=U$t`RW9+3YVfBH=plV-S?I1up}UsRz4@o21<*+MRDI_+p?_!6} zAp=pkwrCk!=G-bew)Gp5!~1^GL^XI_9Q8RDDEBB-ZW$Ygzb!g0eXxHHyOPx}V)H5| zcIX^35QXbyma%Jt>qJN6vxepHepxh84PK2zee|^HLggNX$}QvAU7r^n15O{1!>(kV ziP*eyhaJ*)wt;~tT$!?r$rp7I9j{gyp2I6|(L^s&k=ok3!{^vEci=L`Q{7 z2IsIVSvw&%uaRMg^ww!$APQGoEaQb!2T6_Fo*$M&hO7rr4PKK$Hl3q@fhb%-u#7v` zwGyw^mW{~aRk8R+HF)g=J*3Zs3*Gf7bk{Ok%|BIiEUGjjhh52iG_iRt13PpM8HmC= zZ_7C7-?c@@Z7&3LggNX$}MB*1qX?a-JTek!>;6xmDs!nfF07E z7cdZo_qdiZ{6AmFb>hGQqjPxH7fn=y?_N+JJ`LzR zh|PD~*daY(0~m!7xJ4CizC&qN0C|67!*Xr8Bkq^v`j{RN7 z=MG&E?a@lF`Y*a=ZuYEVWgu!yOMh?BduI$p-E*8Ww)EN=15tPPRK`1Z%?-QCbRc7V zS7rR#Z$X4?QBMC+9f*4UMP=;u{M?X{)%fmV^=I5GbECc=>iGU~3nKK;)<6{c7BI3J z*wtXZE2ac59kn3B4s8uYUA<8mGZ)Sc8Ci|Jx@zwYKc5?&cB778{d+-#`fLqE4S!x4 zYiI6^fhcsLc#S*OYVXz8EQt1LN-Hd+d_=i-Bh(~aWjav#g|8{Q<5LTE!ax+(D_&!9 z9aVctgLk9%F4pl&=PiuTL+cfy(6{1@36)iCKw^4*VcOeO3pe8njWy6|XMb2?J5+Lh%|K4pFre`!0-f59s)*XWun0 zSRJSq+31^PTyT*puUT$h)b>vuzdz}N2pzG?5rr-kXY@T&d;k0Wh0!-lblh(5c}A1% z3VTO3x?mZXIqm(UvGby3Z|nHwWs4%zXLTTI-fCssam>ybh(Z^N*O+vzsy(Is2hog5 z^vNjgwI@6@&$wW9pju?3Z&pXYXSDaJ;}#p`=!mT`{t5k+>BC3OkB}WOh^A+Q+2d75 z|F=GfPT=Rbk&Zft%r}~B4eTA+=z`U8>&sf>?oNxMNqx1(S8vTX^=u8?F0!#hTjS-i z>Q%1W5~Ca)v5e1$DC4nXKa7waFyhp!lRB%rqvy?!kR33nkh*(>-zQ$#x+rS-UsXP* z-+RUd=_;#%YLSh;2_vgSV{EVYB4ih5-1Y(eN||QHE4AM@ z4BV3K>Y$C9`Iu)HM;qs;^1}{&-?(7ALbb?7-)xPOPSpgzKJFva6?SWD{P>#cSkm$R z2-yLHXqsTh%D(q&mPD&J>$q3N1xAytfxROeU9dXl9i=*^_gH4S!fq{N`ese=*l{bP zsTGv{Yr~JD;tWJ>uCI&_-&wvB2BNUT;x(p!u3fzneHvkh#Tn_p)E~7fLU#K1oRd|) ze?!fn_mLk)dpDr(*3zuZf4jhBWAnfakd0~D8lzikjRCtajaKq^wyDO7ISWlaTLZU? zZ0yi75Op^HDv4@r*=+0Ct`PNFAMI+!ln+dY#TnCXR>pvdiy~xOMz!wRNy(odMQ1;w zjN_&*j*xA2U{}Zv7(~-OYSJ}YV@~De(JA~UWl}zI<`PrS*1+u|8#}Z*o-WlIx7S_~ z4f;}R9JBsIQ_t4G?IIgHEMDWbKeWalbv`on3K(Oxt0^5mj+)n^-}Z6l?UzN!wq0Q- zPXl`=3_v~gfYv*4@Jdt9c7>=>O|`4BLze#^8PA-cj62_05h2^w*zkmQa@NbAM9t3h z${VhXkZqM?SI92TK-6bbwO+o0Ob zeZN?bkA+7&Tcg2i+I#=^K8scl*BZx9{w%_Jwg&1zcEBK-?t`by)EXC`yEHE^W8xcHqkGeDqt;$|pWnZYa7(r;L}8795vT6f zd_`+K`rx{#=NMHUuUH>pZCe9T$K0umMSZ^82?J5sVNfIMYQS^a)lJ8*kM=F~U6pKz zuv^;|qOik&k<~bPqShF7%lFak{#jw;fBYfB+O`IwMi0`izI$-vP8f*74ucw5SKIjM zVsu{mc-@BR?enz8-tB&huv^;|qOik&k=1C=&y%4VQQIH%t@Sh>J!f--wQUW2=lv7@ zS(EpU*t8P{qOilDM%LAsLE6TD_)ULU+txr7)(aS!4t#4p)+^4y zH_9Uew&MBJA{#eTM`ESN3VDBEjq}+E!i5uyM5>g$8QEI z&IsO|M2zg+%QVj3)*Po@1@EOI6u;G~XpI=(2#oCF418NJGH^>)Ild7X8Mr0O2;SjE zI`|D>xFyR7-l;~6?Crob)_469C-z>&_^wxE7q1b#8;-V{y}6gh>3ewpsUh!orGMeK z6e1gIiwz8Wq+YgaloDsZ7kJ#D!YkjxURaOJHi)`#r z81$dw`v<=R689Bb1NSI=?^4Pz@3j=K5QXn63K&^eh{AU&28=k>fed`l53)r^Rs&J^ z4!`0Id@~HbGY;8OBkL-7iw>ohy@ij){H90Cz^;%T)W~$;J6Q1TY}lc#fjW>KFtQr> z?h<_C7}m2jaJ$G37+DQ`cL~0!3+ve$xLsrijI0K}B?RAzh4pL=+%B?GyvL&OO-(ct`F&MZId+9?tY;aB!na4@yOL~Ih{Cr7{ofe) z9vfua8u)GoeE$owtq$x8*#U!SdKAUC2jF{Cu%4}f+eLQ3*kKKP-w4)|8W{th(~s}z zK(_4)J3)59$ZFsd@$vl@SkKnL?IJs1?63yDtpe-W8n|724n4Akk<~yHzUATn#=v(S zAluf!r@Z4k0+4NWU{}Zv7?}=y$~!(=AM4o~xLsryXCMln{*Lu*4Sb$DGH^?lfzOM^ zXQ1PjghBt&eGpMtqc{Vfvy9I`$J(|AqOe}Th|{jH20l$0w`6PJ^QrN<-s!LQ@VV!z zJpC8`MK?ZKH~ssNfhc_ba&ZQtu)~0nDaYp%i^)ojtSfx}Dn1_&yR}^*3ZI`@ zoPj9R6fm-`@Cl*#G&Ahhc7-T>=3Q|HqEJ(D2D*#SWksi@t4s$z^%9>`h5D=xM4_hQ z4D1S@HHsbDuJ9>~_@o%qt#3<@C5XbO92I9E3N;mHpbmWECTg-e@X3Mrv<=i}-9;2? zD$c;)4B`_Wu|wMx>OgjJ20jfBe?^Jn-ckzJgD zPm#mlM4}^BIim2Fn#CE2Lf?uruy=ggAG%Od4~D$c-PGUD^-utVDw z>M(40wxwm@^TF`9gs9KzKotIpvN!`#=t6M@{`L`{6^AZZ9jF%B#ToeQF8uW&I%1V0 z3SB79z)tY_XQ;{Qz^6;$?-j9I+ZCd)!{QA5MJ7Je3p=!3p$=phXW&zr@b`+S&+0%F zYAVjaPViY+sLATUXA|MC53yU@6{4`ifDxxx`q&lzo)bH?H4uf*ED9J|4SWg^{`wI0 z*&2vKO#vgTfls!wdQFX8;qy|kLt6tG z_}f=x3nQz6D0y-Rt?6b@RiQCIDaO`76#gz19kC2Vp$o+s*cGy|c2*@Cc9*uMUnLc-fvD=` zmGQ&73wOdm)a&cC_qo^XjDe`h^OR9IAtITeX}(x_E{s!FaNeQK^@W|DIZTA7H1#| zHCYBKAK7(($$WChdC~flbiDh7MG>;CazuUMlriv%oiPxFzS$ZLXLXck4t)GvX@WYW zLsHHi7H1#|HCYBKf94hKedU;W(XH3(c-Xu}5wfjvM4=0o(Racm(Q(L8r3rQ=^+*TT zE6zX^c4!%>lCJpAbJ1iO-Yq=V}f zXCMkYv<%cS@t^}`k7{+@dr`S(RmYcy((n90pVfgV)MObI77Q01yS5mXU{_L)ba1`m z3`AjvmVr7>>8Uz4RD3_W?<3W5^*bL%$hJBVg_S&RJp!`6YNUrkq)j`oPj9p z&@xcR>U&g2x4YkuKHWvfZ;o0TA=~Oe6l$`JieEe~d7M0EV1ivqJ<`GTiZc*}9a;wJ znE$T!-s{K((H)2BI63*F2-#K#qEM4%Jb%=5(J}eCs}k%=>X8nvSDb+;?9eidj$gI+ zc^@x`9zIjY&Hwl)Lbla`DAZ&b<4;~9I-YyHZ(_RQdZdHv?Sz3S=+H90dHkj_?yc{i zLvq1&JJrapmgzZ=JZ7w1@x?qyufj7FG58uDueF^Uu>4M`@zS)xx!`Vs7<@N@wVeyP z@+hol8Qe{JW%=R}2g&hj_-hNJBL-+5pDtP!%?B3d~0%6=xs{JG6}Z&zK}$Rar1F7u>5+4Zc@H4|m|MM~Oc)W_K;)h@rEj#`L9E z=7Kv&V(=X#)~0t<6?WxOvRz-#GSJ;i@74?^zP#Mzfi7qmX@Up#&;(x{|3QRo%ea2a zACgC%@fRoPuCS>qW*2853hP zR}EfjscQg_Klwp~wVj(;yRzJM4PJI(EYZ-yN9wq*;4szErignfRLhWk#1B)W8P0wySwS^@3`Rtat07W%ehh+ph zJW4w89a={HGrl~5JGN20cXi8yy4`teRz_X!*YThpD|S)? zQR62lW8~;%J7FLST`1mF`Y+Sh)XH!59bWuVm3;d5yayY19iq~4^;bXLNmqzM7Yb|W zXHi^D{)Ofeca@@WoOYEl;*`Pvl8!^hixcX~71^(ckIDt>a8!@iEOFm-F4${53in#e z$oD!)YFwKek;8Q{sYmRUv^t2joeR41DA}&BXBmJ0SKoy_|C?QM!Tv!E-p_Gg*};D9 zQL?AfnD=wbSaD5n(Q(=B*X3|sOf(UL*F{mEbAfV?LgkjBGfVHImaWiZ`>AU`Hb-ha zq6$7vk8qv8*JJya!dCSF$|+|gc%&9Kb;#`E3`Ai)%V^hEpArB0&>=Zo zdlTQN2Ct-|ht37=dK9{A8NKf9D@W>O@sbie;z<6)=A$Ui1$yUw;Vkhe$(hDHODyAt zYoCOw-P*XX-YQHGpFu_%K4YWgL1;W0_ZXul`qpvqad`A+w7!5QX(D zW5Q+AC68k#UX{Z&M9GF~@QN_zM9-%#Owgk+LCZL^>jzS!S^IuDT;G#=#OBpntnFOT zl}BM$mNBExFvCrCEL=Bp*li9P`@OfW_9br6juLAcg(?xHTcNR2h$bA zrD!4suR5bX=K|#(g~~01GK|x+LDE|jY_j4blOQ@xcXca|mIPmGc3gsa2%G9LyEp?; zSkE#xUo%>ik9qcsw!sw{)!^$=bltfi50An;EaRMhRiwtdZ=9FIRY!4}*t`~wuJ0fZ zkHS1G1NW#pN9i8bZo(?#F1ld%sBgz;9)tH>9wFN@CU4Vs-k9L+1i_Jqq2mj1HxxQlr;taoga!o!ETcj&s4eV3v54 zaO>T@no?orY^jaj*6VCK{En)$||pP2;FX`6ZP zDgG$hZAFA^%Q*17T#k8l>Ku|_g2JY*mJ+)-15sGdGWwr=qZ<`rB7T$hM3pPi-$=RcyXrg35(W9WuK( z15sGdGN#h^W4O034p`j=@6Ti&Qw_dL#W_vy?JJz^9wqaY#ys0CqvO9$kQyi4+B}EX z>XHpHctrx_f=uO5-lN;M{>DJBYjgIe(u7y%ILnV|H-{ zqOhK2G=AbFQGU_-19EsZDK1bAzTZJdoD012DD=uQI6bdCZZ%YA;)egMG0L$+g{NK} zTlrwQ-aYNWPa|YoM!nf*i&tak)JRadu&G047iS;}>siLhf9Xs-zu^xj1gi#AgV#=Q zhB_C_U5~=KYZ=#U=^%Lwczy32Ug=3T#OC`1%!%G{SeT$kVS<(+{`wWKQ^#r^a}M~@ zxQi~>JO&@2d2BCT6(QR)YJ78{u86aR#EWo@M-W)w$wT^G?-rcn%le zs0LqOqlff)L7}@Ih3;BLIt$r@G;>~ok}$d&GB$p8vE1Qvx_qjh4n0B*5J;PN2S`8 za(I4~Y^VlboncPS1qpf-CTJPSn2V*x>Uw{c;CV^v5u2|Du(oqSS0063SqAwVr@1%1 zSl#XO!)oI$y5QUom3oW2SG=;W480OI)nj&X2BNT@WenQ8wVF?Di=0& z$n4?_L}5M4czda?MxA`s;u1VYiEmVc&pzm(bAh`ah3;AgdbQ7c>QyrKTcaF1v|hOh z>eYE)eib3xGH(2-zj(D^)thCgT-ekhvx_qjh4n0>X314DuV!_dQG&-0@r`QmnE^d? zE^ybQ&|S;;{rLe>qt#c>l;F&edc@|V9oBX(=*pw8E6cz<&i_pF*t+IB<1V^j^Vn^& z=5ff@uOnnz#=wQwNFJl+O)f)sg-snYyEp?;SkE#l9WYqDS~qTd3C;}hjcV}zh#oo@ zxa(2qu4SNC$N6>Yk|p08<)%X>#OX2dr?=Fry$@U$A=@%uJo;Mk>W=5`FGJu(|9)<2&26}bnR-IQb{jkv}#|{ObdG*C| z_3DO!>my`a#!Uwd6|erj^*?2(T-ekhvx_qjh4n1s?GLXLuMV2fy#!Me->3%fE9jwf zfx8}s?pg+E&y?5tR+Tq@a)VKh9Xhvc=yjs}s1=u%p$=hFJ!ThYAPVbQ##KLz5asii zw=BU7#09FsGantHBV3_Z9)(_6hNSMVsn0B@cXw<5^OI4I9ST14YRj+c)rw<(jF4>^ z7j_vTUTr=wUxvzsO&v13I0I2w&oa999VK49maATZorrH#gJ(W^=v?5gN1?lxfnJs0 zOTB7v=+8zuc4)o2tb9|sADr~{o`$g-snYyEp?;SkE$!@1!fK z=U(_-TkJ%9qZ*t)dPwi7E_BzU&|S+wufDFSUR^ou7o!|Iv|fEyMZJ3Ko-GlwEu-JQ zqs6OlJN-5bl?$6XWOi`|qOhK2d{#s6ou8;Sr7dIUCThPuC1qD zE$#lBQH~v2uWqWNUVYSVYlLje`0@|+s>VYPFB1`Ou8*rbFjWT(4ert+cdFfTFHAfAo;vOK%r4GA6xOp0 z^a@dD_<42J6@Qx!ciPBi`nZB`vPo zC68>&cznI;II-!HHrSQ0Ne8owGZ2OKEaQQ%HID~IubYXThz_d3nWLsG!8l9Mqa-yN zbN-gWMx|b1Cy)6v^@H7aH7+=J#Tf1Ck8_633Q$yooyKmR^E%>8hex3f%g{vhdrN=R z)qU{p*}LYk9(LIeQ;LUtYEvOgY&QqpGTbK;ZfqKciJ+xHCL~$y5{k=s9d@t z25Z7@okIqqP={rZ_DngVHda>OUOK#j@lCv9QoV|Ldv z+V4L~j_o5B)GI;d(jhT!ARXv}bI3pxYO)NLy(8rlepIg(|GQEi^|4RrvtljoDqx=y%r$@oMC2ZA(zObVv-=fi5_Q z3`C(O%RuFKEmD7e9=BV*(n?j{rfKCo>Qke3)9IRyXz{>EjM0P z7IZ?&IShW+{fFd32uC3wSjWc&WO8lWQyK5PZ=IM&?+;1n8pmNbf49*-~a1I%W zLKiFpy+Y-S#;I2WI_;T9eby^P_4A*^p0!~20>=4&T`gYKZShiBfFd32uC3wSjWc&W zO8lWQyK5Pn&m15}xawP;D?#O=i5Q$YxdSyAcA|0F{dgz>YH_qJkDDj8J?5<_hou;4Hb{e*<1eHsg z#Nf=)1?P}~D9qn7RJ$tw>o2`xy|QDqe7R1le0rz7@~BVn@s7N@w4u(#P4`vZ2?J4B z&(@f6T~BfMr@@=cf=);|=V2K>k2uT2qr_1fa~_s4YeFxXiR%WeFF~(l#t?(|NA!)p z&j1WW;T*FJo>Zwh$}&RyR(IyG#=Gh??43^Jr0_N&%zB4P69%<{Rab07W`D zLG+Nmv#svNnY$h({?M4+wG7mOUA25wbxfO9J&(1m4n*Y}sE!e@R4HK8xcNNMarJ9e zk^n_rv2t6(D~~hf9wohdO_nkKw{DX8Io1Cz!31TWCk7uGFiq!>fhasmScYoX1i!pQ z{b{tVM*h1$^mj~EdREP&KEcOn=IGVLJCxn7bB&!a5QX(@jjBse7k8t(>L)=bq@44x z44+4w<>67{D2+J}%RuG$>%2Go?+35FwyOCpA+4VKZ*1+iYW9o(MK!YTd(nCskGX<4 zOMbaH{U%t3A_jgdOc{5sxBh;`@|Y7nm*r<&RlDc#M`i{ns==9ChR;0CGWRG<(=uMGr{6Gr{H2;X z%tMZ-#OCuAX5$<(5QWEJ%OK@(njq#;y`m<#_~2T3bX}cF8Hj2(JxWreF=uWW6^85g!W;b9AcxB3s7(w$<7i>G$-1Z`&#fP^5$1wKcrEag@62QQ{Ac z*zw;V=RP8*vZWBaQvuicMpKq^T zz<7U*{wn36EAvT!A|0H$t>H6|v&=n8Qll|vZW*WpyE>@9&cs`vubs!*RtKVv>8Lu! z{87Dtv3}jYve%CM*J(+BqOMrEt>Kl&nR1Vk-n}Nv(7wW%_||xxiFHq^k;nPw+#U6F zChq^+^RogJ)!?~n8Gi1@+1&LgnSC_oxoa8wUw*vI#1rm1Du?q*t~iLn*CjZ|oI?hp z@EXN3FhR`Y;A1qwEBC9DN7rqFh&tXs?d|^VH3}H}9b8=!thD-^BtVf4&fM1Una5e? z9wn*Km@~JGVhMJ>Qxn|uZjC(VU)fLChn+RrjcSZ>f_<*KLA`+E88@_a!w7 z7&r8*6^9fS>_%ksnM7-w+z&QT|GTryIQ-xP9AGp9f(@`u|5a# zwuUte7<)XsMSjCO0%h0~UW67subS8e?u4W$Rn{$_q z9WL(9+w+{V07W%;?plVQyKy#mJxXRDjd|``M){^qWF}rPJDFqSNssFBcwtIle4F zQ4O9Ymf>efoXrxClALMGv&1r}tIS>WXUgvC?tZguHmV}c15uTRXo7v-uW8bB?({Qf zi@Q%nS0(|9y5h{yb?1B@ah8WiiK8^;JS=0|qx;I--9GxX9L_|!_9X`28{n*@&z*sR zD7;#>jA98+AEF5!vv;jL=Hy(P-SyW4_w=4w7NDpr&fGG5=5dy}M@ecl=FBYv6U02G zzpHsP{gbb|@m%#<1&oK!q;K@opFUq*lLRR0iZi!0eCBbMxkpKAH0I1L z19f0m|0&h3${$iMkF~81L{0Zk0&jF$tpdi}1^0-KQ+~cS2~gA(E4MYg@;FoOQPR8D zWEt95cx<21UuQ|#<+buS7o7Y45dG~^%|q9f1t_Y)^U5;(yo$4VEAdxYfipGL!y z07YGKf|lVEjI#tiN;04^CukYi6&`mF?5TNNIHgt|U3c!;y*kOcw#5&7B>{?RaDtZM z6O6M2JxVg5F(+sl*i~t3o#9Q-sh3ZlSFgsuK=$ z?NV2qhh_LY;w%r35=Uvwc~}POczUz;zHC6f{LDc*K50=cqsi*P-jR*nIyYz9zM`Y$ zA0v}syVMnXWf@+1oGJGx>D_Cx4C*U$7iY=Bb99!p+Ego#bHTZa=jCOVJoQwQBtTIO zo>!LP=T)4|E02@ia37TWXkzdh0Pc^@Ap=o(=WQ97V8;oX z+LUqi^4A=q2|`B(D%#F~9aC&6|}2hS4A@R`S1<{l-f(U>#0 z4AikL($vmAvUVP`!DJPm?ol&Pbni-DhgO{Gq!jyZnOM=9zc42BPZM zQ%1YTcE&&yb{KROr#jwvM&H50U15jC8PQ68UrnX0werZej2EKL^3>CWz8^0CLK*Ng z`h-nmW*2853hP-0CfKvB&c2aP)XSIsteU3&UCYc$!Dq^G_8}YR8=Y$(xJzbYvx`cT zV7sJ)XS-$ixf^G5*P~?i(U|A1WmKqtgd7=`&u*RIT#}hc3_h0Ntjvxjads^6C^;I? zn2#lvLE1Crja#WdYj>?}5=5t+yZZP)<@vi)*OVrhhp?#zvx_qjh4m~$67iq@Z2d;N z8Zo(Ee&P%rzfqyKNmKBd4onT%m=pafe!wbu^6*LPN|Ru_q=RRPW%$hFEOU>N)M(6^ zTL$%&byed@?fu<~)?IYLxkuxg;_iiimL}+xu&D;Ki!%^~^(;f&^6uiEiVSo_@R<&D z6xo*X$fy!=_ip;Wez0BA!3kQ1&m+$A@F;PV#+-*`_!@Cm!}}vB&&Jx$oxgN%*`q41 z>5$-YQ1&ij@NpjZH2TCu_rW;Z2R#b+LCZMl^X(<<*!nLn&f%F;Ry>I<>(sFJ?i?}@ zg=?gE-gRzGn{uL~$-*v4aBQaWK!%V1zXR=kR^j&l} zm#bsWyUxvj|5Z`GrqR_&fTFJW?2L}k)slJ@XI^=fsHHJ`Wf{e~`u=I{s^h73@>tus z{SJFXx@tdsP!gc12J5g4uOrTMc$9SFJG6{ls^}X-_MX-^hwjQ6DKU6`7oBzv8HmDF zRm&)*Jk5sR2Z{Qe8#qm$toqrNL-f6U^bLUwMP0F1mf^jMGp{^K)Y6!}vW)b)hr3HV z$*z5f!S&L==W*6moOR__#uew*lp2Sh|Nj^}3vj!NYmX1^7D0m) zC^UFzfgrhub8rvt4r!54ptxlhEp3q&cc-{p3Av|0Nw5e3La-Ls;uH(=)><=X`dfGI z&iC@YN9Rk{Z~vF=efF8N_ssDP685cFG;}_Iw7ee$f>!(eUn6 zU4wg$(nIsA>ePeBzWk z2oZ|i&K2>w^Cms?Uh%l33nFW9wR-M~Nji$QoQ#oI5>I&uj3wqzfWzaK&%#!bm-@!Q+xHh^)bNuen1a^}Gg;OS&Mk z2G@(`u7A|?8a%F}b-zow?&|)NMq~}H<;E4FfNWa@bh#zDFu1dAG6>6B{czM_UeSuH_x}F~t}jd4Yj7=2uChwnM^3Lu7ldFjyIl2>tCKoC6{$J|k4w5B zvIbX+1uc+cqFeuf-BgO_8MGKj0BJ5HAt+aYsHC&d1X8q>xzP2gX@El;F0PHTT4xj zo7aa+dfqE)aNRJ{p5VG#BzPoGaCIrJx5Xp*IA}$Uf~Y!Y6jx>9I#ty68nmKbL1c}e z=}KIZMP1E^YZg)4YtV`-Le&$rqK5^Mz2YiBTfXK;bykh|-`y+U2j|-g^wxVtE583zPtb}n6-17M zZ{acy#%Eq-f^S9h`EADM)1-p>TsXD82A^)DUO{9HzP-xGnGw^- z1mD8t6Jqq%dqpdHSP)r*?}_rMCu(~QS~)#^LtgTx?+hD}HTbq9BWFfD!M8s7v=F`Z zUeSsk7DV=n@AJ_sdh5O7dx?C$h~9dyXhjbTB74QR^Z0xbwY>(ds8j}QE#5fqA_lnOgQG?pvE54~kx}M-Yx#pjUg30g6xg2<8c$us7PIrNe9 zX@1hRM1ICgv&-k!m}%3A~kvx2OwC-_7(2_DH4#q-VLyVizBazw6Re)=yFJdzUeU1uGAe&jN?`;a}? zr(+@XX|vAX^T{*2+i$Gh9kBAlAY22Gl8;g~WnL|&oYNS1({gisE zYV0w{YS90=3C+nH#__&KPUxXQV&|)))xyIjHjh0cj`th;%v1{ zeH`?ClNF=JI!jM24q8=xB60TXybw`iff{L`tX{lW3{zwZl#0HXH>T8@i`cYXJ$LoGVpN>+BooQw(OPC)2n1fuRPK3aU?6o;fXr03O(^k^+I@hqe14?gj)tTRvj9>>U-e$ zrV*m29+K`Qj%39+JfVr|Emwt}c%^zViWEzuxWb8^UK5#hwT<6`b!7h{R{t10C0lW< zv?Hnxk&oMh?hr<4zN&+Fjk!AcqlUj=%Wmne1Vyap<3- z)vS*_+az7D!Q-xWSfnQ`J2eej{dT`dtbNjisdz;zW})7zi!X@BJ@XHfn_Hg~$L9=~ zG!+e6Eq!(*2E6jzR0vuzZ}nbv{zW@u%7sxwpX=)UeNm4kcy*EOtsXy) zp0!b28HCX5BkL4GQNd)z3VP!AuRdtGT6_D08pSs+q4k>=;|rmPJXx9VGSn?LBYxeidZnCoc z$XK)MiPIOG$u!PCXvaqJy;cbQ=FRv*C?Zc*jNB8m4vniJt~>3>uHq9%X#K=te6l`6 z&&ZRN`7UFP+!F`>av_W3!}B+36yNBD&~NmNFN7lUWM#g~SR?nu==O4^@yCzWYVf

6zVRW%-e@X4ezV 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


Tl<>$xJdp+;m!LoAyz?YD_b92I#_ZfOj{JTX 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 z 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 literal 0 HcmV?d00001