diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml deleted file mode 100644 index 9cbb634e..00000000 --- a/.github/workflows/ci.yml +++ /dev/null @@ -1,30 +0,0 @@ -name: CI - -on: - push: - branches: - - master - pull_request: - -env: - CI: true - -jobs: - test: - uses: ./.github/workflows/test.yml - with: - versions: >- - ["3.2.0", "3.1.2", "2.93.9"] - - publish: - runs-on: ubuntu-latest - timeout-minutes: 20 - needs: test - steps: - - uses: actions/checkout@v2 - - name: Upload addon artifacts - uses: actions/upload-artifact@v2 - with: - name: io_hubs_addon - path: addons - if-no-files-found: error diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 00000000..f46b0718 --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,48 @@ +name: Lint + +on: + push: + branches: + - master + pull_request: + +jobs: + test: + runs-on: ubuntu-latest + timeout-minutes: 20 + steps: + - uses: actions/checkout@v3 + - name: Python Linter + uses: weibullguy/python-lint-plus@v1.9.0 + with: + python-root-list: 'addons' + use-black: false + use-yapf: false + use-isort: false + use-docformatter: false + use-pycodestyle: true + use-autopep8: false + use-pydocstyle: false + use-mypy: false + use-pylint: false + use-flake8: false + use-mccabe: false + use-radon: false + use-rstcheck: false + use-check-manifest: false + use-pyroma: false + extra-black-options: '' + extra-yapf-options: '' + extra-isort-options: '' + extra-docformatter-options: '' + # This should work with **/models but it doesn't + extra-pycodestyle-options: '--exclude=models --ignore=E501,W504' + extra-pydocstyle-options: '' + extra-mypy-options: '' + extra-pylint-options: '' + extra-flake8-options: '' + extra-mccabe-options: '' + extra-radon-options: '' + extra-rstcheck-options: '' + extra-manifest-options: '' + extra-pyroma-options: '' diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 00000000..80028d4e --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,26 @@ +name: Publish + +on: + workflow_run: + workflows: [Test] + types: + - completed + +env: + CI: true + +jobs: + publish: + runs-on: ubuntu-latest + timeout-minutes: 20 + steps: + - uses: actions/checkout@v3 + - name: Update build number + run: | + sed -i'' 's/"dev_build"/${{ github.run_number }}/g' $GITHUB_WORKSPACE/addons/io_hubs_addon/__init__.py + - name: Upload addon artifacts + uses: actions/upload-artifact@v3 + with: + name: io_hubs_addon + path: addons + if-no-files-found: error diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4957bbe2..c6fef209 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,21 +1,20 @@ name: Test on: - workflow_call: - inputs: - versions: - required: true - type: string + workflow_run: + workflows: [Lint] + types: + - completed jobs: test: runs-on: ubuntu-latest strategy: matrix: - version: ${{fromJson(inputs.versions)}} + version: ["3.4.0", "3.3.1", "2.93.9"] timeout-minutes: 20 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 # Finds latest Blender build, and outputs the hosted build's download URL. - name: Find latest Blender build id: blender_version @@ -26,11 +25,11 @@ jobs: patch=$(echo ${{ matrix.version }} | cut -d. -f3) echo "Looking for Blender $BLENDER_MAJOR.$BLENDER_MINOR.${BLENDER_PATCH}" BLENDER_URL="https://download.blender.org/release/Blender$major.$minor/blender-$major.$minor.$patch-linux-x64.tar.xz" - echo "::set-output name=blender-url::$BLENDER_URL" + echo "blender-url=$BLENDER_URL" >> $GITHUB_OUTPUT # Loads a cached build of Blender if available. If not available, this step # enqueues the /opt/blender directory to be cached after tests pass. - id: blender_cache - uses: actions/cache@v2 + uses: actions/cache@v3 env: cache-name: cache-blender with: @@ -61,7 +60,7 @@ jobs: cd tests OUT_PREFIX=$GITHUB_WORKSPACE/tests/out yarn test-bail --reporter-options reportDir=out/mochawesome - name: Upload test artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: test-output-${{ matrix.version }} path: tests/out/mochawesome diff --git a/.vscode/launch.json b/.vscode/launch.json index 9abad92c..50aab312 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -29,7 +29,7 @@ "pathMappings": [ { "localRoot": "${workspaceFolder}", - "remoteRoot": "." + "remoteRoot": "${workspaceFolder}" } ], "justMyCode": true diff --git a/.vscode/settings.json b/.vscode/settings.json index 66c43efc..ccec46fb 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,13 +1,13 @@ { "python.autoComplete.extraPaths": [ - "../fake_bpy_modules_3.0-20211212" + "./fake_bpy_modules_3.3-20221006" ], "python.formatting.provider": "autopep8", "python.formatting.autopep8Args": [ - "--exclude=**/models/**/*.py" + "--exclude=models", "--max-line-length", "120", "--experimental" ], "python.analysis.extraPaths": [ - "../fake_bpy_modules_3.0-20211212" + "./fake_bpy_modules_3.3-20221006" ], "editor.formatOnSave": true } \ No newline at end of file diff --git a/README.md b/README.md index 96037b23..d48824ec 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,24 @@ -# Hubs Exporter for Blender +# Hubs Blender Exporter and Importer This addon extends the glTF 2.0 exporter to support the `MOZ_hubs_components` and `MOZ_lightmap` extensions allowing you to add behavior to glTF assets for [Mozilla Hubs](https://hubs.mozilla.com). +[![Test](https://github.com/MozillaReality/hubs-blender-exporter/actions/workflows/test.yml/badge.svg)](https://github.com/MozillaReality/hubs-blender-exporter/actions/workflows/test.yml) +[![Publish](https://github.com/MozillaReality/hubs-blender-exporter/actions/workflows/publish.yml/badge.svg)](https://github.com/MozillaReality/hubs-blender-exporter/actions/workflows/publish.yml) # To Install -Find the latest [release](https://github.com/MozillaReality/hubs-blender-exporter/releases) and download the add-on zip file. -select add-on zip file -In Blender: `Edit > Preferences > Add-ons` -Click install and select the zip file of the latest release. -in blender prefs install addon +Find the latest [release](https://github.com/MozillaReality/hubs-blender-exporter/releases) and download the add-on zip file. -Ensure the hubs component exporter is checked and enabled. -hubs blender exporter installed +select add-on zip file + +In Blender: `Edit > Preferences > Add-ons` +Click install and select the zip file of the latest release. + +in blender prefs install addon + +Ensure the Hubs add-on is checked and enabled. + +hubs blender add-on installed # Adding Components @@ -24,17 +30,17 @@ Click "Add Component" and select the component you wish to add from the list. On # Using Lightmaps -To use a lightmap, create a `MOZ_lightmap` node from the `Add > Hubs` menu and hook up a image texture to the `Lightmap` input. Use a `UV Map` node to control what UV set should be used for the lightmap, as you would any other texture in Blender. +To use a lightmap, create a `MOZ_lightmap` node from the `Add > Hubs` menu and hook up a image texture to the `Lightmap` input. Use a `UV Map` node to control what UV set should be used for the lightmap, as you would any other texture in Blender. ![lightmap node](https://user-images.githubusercontent.com/130735/83931408-65c7bd80-a751-11ea-86b9-a2ae889ec5df.png) -Note that for use in Hubs, you currently **MUST** use the second UV set, as ThreeJS is currently hardcoded to use that for lightmaps. This will likely be fixed in the future so the exporter does not enforce this. +Note that for use in Hubs, you currently **MUST** use the second UV set, as ThreeJS is currently hardcoded to use that for lightmaps. This will likely be fixed in the future so the add-on does not enforce this. ![setting bake UV](https://user-images.githubusercontent.com/130735/83697782-b9e96b00-a5b4-11ea-986b-6690c69d8a3f.png) # Exporting -This addon works in conjunction with the official glTF exporter, so exporting is done through it. Select "File > Export > glTF 2.0" and then ensure "Hubs Components" is enabled under "Extensions". +This addon works in conjunction with the official glTF add-on, so exporting is done through it. Select "File > Export > glTF 2.0" and then ensure "Hubs Components" is enabled under "Extensions". ![gltf export window](https://user-images.githubusercontent.com/130735/84547591-be9ad700-acb8-11ea-8c58-7b1104f0a3a7.png) @@ -53,13 +59,21 @@ It is also possible to use the GLB file to replace the scene for an existing Hub # Development ## Code Completion -To enable code completion for the Blender Python API you can install the [Fake Blender Python API module collection]([](https://github.com/nutti/fake-bpy-module/)). You can download the modules using the `setup.sh` script from the repository root or using [pip]([](https://github.com/nutti/fake-bpy-module/#install-via-pip-package)). +To enable code completion for the Blender Python API you can install the [Fake Blender Python API module collection](https://github.com/nutti/fake-bpy-module/). You can download the modules using the `setup.sh` script from the repository root or using [pip](https://github.com/nutti/fake-bpy-module/#install-via-pip-package). +## Code style + +Tis repository follows the [PEP8](https://peps.python.org/pep-0008/) style convention for python files. If you use VSCode this repository already includes a setting to autoformat every python file when saved. If you don't use VSCode you can probably add a similar setting in your favorite editor. We are happy to add settings for other editors so feel free to open a PR if you want you editor's settings included. + +We also includes a `format.py` python script that will formats the whole codebase when run. You can run it before pushing the PR to make sure that all the new code follows PEP8. + +Both the python script and the VSCode settings rely on the [autopep8](https://pypi.org/project/autopep8/) command line tool for formatting so make sure that it's installed in your system. ## Addon development + It might be useful while developing to be able to load the addon directly from the checkout folder without needing to install it. You can do it in two ways: - ### Overriding the Blender user scripts directory -You can override the Blender user scripts directory from the console to point to the addon repo directory. + You can override the Blender user scripts directory from the console to point to the addon repo directory. **MacOS** @@ -69,8 +83,8 @@ You can override the Blender user scripts directory from the console to point to `BLENDER_USER_SCRIPTS=full_path_to_/hubs-blender-exporter blender` -- ### Symlinking you addon to the Blender user scripts directory -You can create a symbolic link pointing to `full_path_to_/hubs-blender-exporter/addons/io_hubs_addon` in your current Python scripts directory in Blender. This way you will also load any other addons that you have in that directory. +- ### Symlinking your addon to the Blender user scripts directory + You can create a symbolic link pointing to `full_path_to_/hubs-blender-exporter/addons/io_hubs_addon` in your current Python scripts directory in Blender. This way you will also load any other addons that you have in that directory. **MacOS and Linux** @@ -78,7 +92,6 @@ You can create a symbolic link pointing to `full_path_to_/hubs-blender-exporter/ You can set or see the current Blender user scripts in the Preferences -> File Paths -> Scripts - # Debugging You can debug the addon code with PyCharm or VSCode: @@ -87,6 +100,7 @@ You can debug the addon code with PyCharm or VSCode: - [Debug with VSCode](DEBUGGING.md) # Continuous Integration Tests + To run the tests locally, your system should have a blender executable in the path that launches the desired version of Blender. The latest version of [Yarn](https://yarnpkg.com/en/) should also be installed. diff --git a/addons/gizmos/box.blend b/addons/gizmos/box.blend new file mode 100644 index 00000000..9c8e1bf1 Binary files /dev/null and b/addons/gizmos/box.blend differ diff --git a/addons/gizmos/reflection_probe.blend b/addons/gizmos/reflection_probe.blend new file mode 100644 index 00000000..786ac190 Binary files /dev/null and b/addons/gizmos/reflection_probe.blend differ diff --git a/addons/gizmos/spawn_point.blend b/addons/gizmos/spawn_point.blend new file mode 100644 index 00000000..d5a08a11 Binary files /dev/null and b/addons/gizmos/spawn_point.blend differ diff --git a/addons/io_hubs_addon/__init__.py b/addons/io_hubs_addon/__init__.py index e331f7b8..ee90718a 100644 --- a/addons/io_hubs_addon/__init__.py +++ b/addons/io_hubs_addon/__init__.py @@ -1,14 +1,15 @@ +from . import preferences +from .io import gltf_exporter, gltf_importer from . import (nodes, components) -from .io import gltf_exporter, gltf_importer, panels +from .io import gltf_exporter import bpy -from . import preferences bl_info = { "name": "Hubs Blender Addon", "author": "Mozilla Hubs", "description": "Tools for developing glTF assets for Mozilla Hubs", "blender": (3, 1, 2), - "version": (1, 0, 0), + "version": (1, 1, 0), "location": "", "wiki_url": "https://github.com/MozillaReality/hubs-blender-exporter", "tracker_url": "https://github.com/MozillaReality/hubs-blender-exporter/issues", @@ -20,19 +21,25 @@ def register(): preferences.register() - panels.register() - gltf_exporter.register() - gltf_importer.register() nodes.register() components.register() + gltf_importer.register() + gltf_exporter.register() + + # Migrate components if the add-on is enabled in the middle of a session. + if bpy.context.preferences.is_dirty: + def registration_migration(): + # Passing True as the first argument of the operator forces an undo step to be created. + bpy.ops.wm.migrate_hubs_components( + True, is_registration=True) + bpy.app.timers.register(registration_migration) def unregister(): + gltf_exporter.unregister() + gltf_importer.unregister() components.unregister() nodes.unregister() - gltf_importer.unregister() - gltf_exporter.unregister() - panels.unregister() preferences.unregister() diff --git a/addons/io_hubs_addon/components/__init__.py b/addons/io_hubs_addon/components/__init__.py index c63bd50b..9f139961 100644 --- a/addons/io_hubs_addon/components/__init__.py +++ b/addons/io_hubs_addon/components/__init__.py @@ -1,4 +1,4 @@ -from . import (handlers, gizmos, components_registry, panels, operators) +from . import (handlers, gizmos, components_registry, ui, operators) def register(): @@ -6,11 +6,11 @@ def register(): gizmos.register() components_registry.register() operators.register() - panels.register() + ui.register() def unregister(): - panels.unregister() + ui.unregister() operators.unregister() components_registry.unregister() gizmos.unregister() diff --git a/addons/io_hubs_addon/components/components_registry.py b/addons/io_hubs_addon/components/components_registry.py index 73da9707..c57b7b71 100644 --- a/addons/io_hubs_addon/components/components_registry.py +++ b/addons/io_hubs_addon/components/components_registry.py @@ -78,6 +78,9 @@ def register_component(component_class): PointerProperty(type=component_class) ) + from ..io.gltf_exporter import glTF2ExportUserExtension + glTF2ExportUserExtension.add_excluded_property(component_class.get_id()) + def unregister_component(component_class): component_id = component_class.get_id() @@ -92,6 +95,9 @@ def unregister_component(component_class): bpy.utils.unregister_class(component_class) + from ..io.gltf_exporter import glTF2ExportUserExtension + glTF2ExportUserExtension.remove_excluded_property(component_class.get_id()) + print("Component unregistered: " + component_class.get_name()) @@ -101,7 +107,7 @@ def load_components_registry(): __components_registry = {} for module in get_component_definitions(): for _, member in inspect.getmembers(module): - if inspect.isclass(member) and issubclass(member, HubsComponent) and member != HubsComponent: + if inspect.isclass(member) and issubclass(member, HubsComponent) and module.__name__ == member.__module__: if hasattr(module, 'register_module'): module.register_module() register_component(member) @@ -152,7 +158,10 @@ def get_components_icons(): def get_component_by_name(component_name): global __components_registry - return next((component_class for _, component_class in __components_registry.items() if component_class.get_name() == component_name), None) + return next( + (component_class for _, component_class in __components_registry.items() + if component_class.get_name() == component_name), + None) def register(): @@ -173,6 +182,9 @@ def register(): bpy.types.EditBone.hubs_component_list = PointerProperty( type=HubsComponentList) + from ..io.gltf_exporter import glTF2ExportUserExtension + glTF2ExportUserExtension.add_excluded_property("hubs_component_list") + def unregister(): del bpy.types.Object.hubs_component_list @@ -184,6 +196,9 @@ def unregister(): bpy.utils.unregister_class(HubsComponentName) bpy.utils.unregister_class(HubsComponentList) + from ..io.gltf_exporter import glTF2ExportUserExtension + glTF2ExportUserExtension.remove_excluded_property("hubs_component_list") + unload_components_registry() unload_icons() diff --git a/addons/io_hubs_addon/components/consts.py b/addons/io_hubs_addon/components/consts.py index cee64023..63f23995 100644 --- a/addons/io_hubs_addon/components/consts.py +++ b/addons/io_hubs_addon/components/consts.py @@ -1,11 +1,11 @@ from math import pi -DISTACE_MODELS = [("inverse", "Inverse drop off (inverse)", - "Volume will decrease inversely with distance"), - ("linear", "Linear drop off (linear)", - "Volume will decrease linearly with distance"), - ("exponential", "Exponential drop off (exponential)", - "Volume will decrease expoentially with distance")] +DISTANCE_MODELS = [("inverse", "Inverse drop off (inverse)", + "Volume will decrease inversely with distance"), + ("linear", "Linear drop off (linear)", + "Volume will decrease linearly with distance"), + ("exponential", "Exponential drop off (exponential)", + "Volume will decrease expoentially with distance")] MAX_ANGLE = 2 * pi diff --git a/addons/io_hubs_addon/components/definitions/ambient_light.py b/addons/io_hubs_addon/components/definitions/ambient_light.py index b257c406..aeeca5ac 100644 --- a/addons/io_hubs_addon/components/definitions/ambient_light.py +++ b/addons/io_hubs_addon/components/definitions/ambient_light.py @@ -10,12 +10,13 @@ class AmbientLight(HubsComponent): 'category': Category.LIGHTS, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'LIGHT_HEMI' + 'icon': 'LIGHT_HEMI', + 'version': (1, 0, 0) } color: FloatVectorProperty(name="Color", description="Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, diff --git a/addons/io_hubs_addon/components/definitions/ammo_shape.py b/addons/io_hubs_addon/components/definitions/ammo_shape.py index 7802a3be..737722be 100644 --- a/addons/io_hubs_addon/components/definitions/ammo_shape.py +++ b/addons/io_hubs_addon/components/definitions/ammo_shape.py @@ -11,54 +11,54 @@ class AmmoShape(HubsComponent): 'category': Category.OBJECT, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'SCENE_DATA' + 'icon': 'SCENE_DATA', + 'version': (1, 0, 0) } type: EnumProperty( - name="Type", - description="Type", + name="Type", description="Type", items=[("box", "Box Collider", "A box-shaped primitive collision shape"), - ("sphere", "Sphere Collider", - "A primitive collision shape which is represents a sphere"), - ("hull", "Convex Hull", "A convex hull wrapped around the objects vertices. A good analogy for a convex hull is an elastic membrane or balloon under pressure which is placed around a given set of vertices. When released the membrane will assume the shape of the convex hull."), - ("mesh", "Mesh Collider", "A shape made of the actual vertecies of the object. This can be expensive for large meshes.")], + ("sphere", "Sphere Collider", "A primitive collision shape which represents a sphere"), + ("hull", "Convex Hull", + "A convex hull wrapped around the object's vertices. A good analogy for a convex hull is an elastic membrane or balloon under pressure which is placed around a given set of vertices. When released the membrane will assume the shape of the convex hull"), + ("mesh", "Mesh Collider", + "A shape made of the actual vertices of the object. This can be expensive for large meshes")], default="hull") - # TODO Add conditional UI to show only the required properties per type + #  TODO Add conditional UI to show only the required properties per type fit: EnumProperty( name="Shape Fitting Mode", description="Shape fitting mode", - items=[("all", "Automatic fit all", "Automatically match the shape to fit the object's vertecies"), - ("manual", "Manual fit", "Use the manually specified dimensions to define the shape, ignoring the object's vertecies")], + items=[("all", "Automatic fit all", "Automatically match the shape to fit the object's vertices"), + ("manual", "Manual fit", "Use the manually specified dimensions to define the shape, ignoring the object's vertices")], default="all") halfExtents: FloatVectorProperty( name="Half Extents", - description="Half dimensions of the collider. (Only used when fit is set to \"manual\" and type is set ot \"box\").", + description="Half dimensions of the collider. (Only used when fit is set to \"manual\" and type is set to \"box\")", unit='LENGTH', subtype="XYZ", default=(0.5, 0.5, 0.5)) minHalfExtent: FloatProperty( name="Min Half Extent", - description="The minimum size to use when automatically generating half extents. (Only used when fit is set to \"all\" and type is set ot \"box\")", + description="The minimum size to use when automatically generating half extents. (Only used when fit is set to \"all\" and type is set to \"box\")", unit="LENGTH", default=0.0) maxHalfExtent: FloatProperty( name="Max Half Extent", - description="The maximum size to use when automatically generating half extents. (Only used when fit is set to \"all\" and type is set ot \"box\")", + description="The maximum size to use when automatically generating half extents. (Only used when fit is set to \"all\" and type is set to \"box\")", unit="LENGTH", default=1000.0) sphereRadius: FloatProperty( name="Sphere Radius", - description="Radius of the sphere collider. (Only used when fit is set to \"manual\" and type is set ot \"sphere\")", - unit="LENGTH", - default=0.5) + description="Radius of the sphere collider. (Only used when fit is set to \"manual\" and type is set to \"sphere\")", + unit="LENGTH", default=0.5) offset: FloatVectorProperty( - name="Offset", description="An offset to apply to the collider relative to the object's origin.", + name="Offset", description="An offset to apply to the collider relative to the object's origin", unit='LENGTH', subtype="XYZ", default=(0.0, 0.0, 0.0)) @@ -78,7 +78,7 @@ def draw(self, context, layout, panel): col = layout.column() col.alert = True col.label( - text="The ammo-shape object, and it's parents, scale needs to be [1,1,1]", icon='ERROR') + text="The ammo-shape object, and its parents' scale need to be [1,1,1]", icon='ERROR') break diff --git a/addons/io_hubs_addon/components/definitions/audio.py b/addons/io_hubs_addon/components/definitions/audio.py index 16c355da..5dba4c79 100644 --- a/addons/io_hubs_addon/components/definitions/audio.py +++ b/addons/io_hubs_addon/components/definitions/audio.py @@ -1,3 +1,5 @@ +from ..models import audio +from ..gizmos import CustomModelGizmo, bone_matrix_world from bpy.props import BoolProperty, StringProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType @@ -12,7 +14,8 @@ class Audio(HubsComponent): 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'deps': ['networked', 'audio-params'], - 'icon': 'OUTLINER_OB_SPEAKER' + 'icon': 'OUTLINER_OB_SPEAKER', + 'version': (1, 0, 0) } src: StringProperty( @@ -22,14 +25,46 @@ class Audio(HubsComponent): description="Auto Play", default=True) - controls: BoolProperty(name="Show controls", - description="Show Controls", - default=True) + controls: BoolProperty( + name="Show controls", + description="When enabled, shows play/pause, skip forward/back, and volume controls when hovering your cursor over it in Hubs", + default=True) loop: BoolProperty(name="Loop", description="Loop", default=True) + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migrate_networked(host) + + return migration_occurred + @classmethod - def migrate(cls, version): - migrate_networked(cls.get_name()) + def update_gizmo(cls, ob, bone, target, gizmo): + if bone: + mat = bone_matrix_world(ob, bone) + else: + mat = ob.matrix_world.copy() + + gizmo.hide = not ob.visible_get() + gizmo.matrix_basis = mat + + @classmethod + def create_gizmo(cls, ob, gizmo_group): + gizmo = gizmo_group.gizmos.new(CustomModelGizmo.bl_idname) + gizmo.object = ob + setattr(gizmo, "hubs_gizmo_shape", audio.SHAPE) + gizmo.setup() + gizmo.use_draw_scale = False + gizmo.use_draw_modal = False + gizmo.color = (0.8, 0.8, 0.8) + gizmo.alpha = 0.5 + gizmo.scale_basis = 1.0 + gizmo.hide_select = True + gizmo.color_highlight = (0.8, 0.8, 0.8) + gizmo.alpha_highlight = 1.0 + + return gizmo diff --git a/addons/io_hubs_addon/components/definitions/audio_params.py b/addons/io_hubs_addon/components/definitions/audio_params.py index 5aefab8a..c0cb57e6 100644 --- a/addons/io_hubs_addon/components/definitions/audio_params.py +++ b/addons/io_hubs_addon/components/definitions/audio_params.py @@ -1,8 +1,9 @@ import bpy -from bpy.props import FloatProperty, EnumProperty +from bpy.props import BoolProperty, FloatProperty, EnumProperty from ..hubs_component import HubsComponent -from ..types import PanelType, NodeType -from ..consts import DISTACE_MODELS, MAX_ANGLE +from ..types import PanelType, NodeType, MigrationType +from ..utils import is_linked, get_host_reference_message +from ..consts import DISTANCE_MODELS, MAX_ANGLE from math import degrees, radians AUDIO_TYPES = [("pannernode", "Positional audio (pannernode)", @@ -16,9 +17,15 @@ class AudioParams(HubsComponent): 'name': 'audio-params', 'display_name': 'Audio Params', 'node_type': NodeType.NODE, - 'panel_type': [PanelType.OBJECT, PanelType.BONE] + 'panel_type': [PanelType.OBJECT, PanelType.BONE], + 'version': (1, 0, 0) } + overrideAudioSettings: BoolProperty( + name="Override Audio Settings", + description="Override Audio Settings", + default=True) + audioType: EnumProperty( name="Audio Type", description="Audio Type", @@ -28,98 +35,109 @@ class AudioParams(HubsComponent): distanceModel: EnumProperty( name="Distance Model", description="Distance Model", - items=DISTACE_MODELS, + items=DISTANCE_MODELS, default="inverse") gain: FloatProperty( name="Gain", description="How much to amplify the source audio by", default=1.0, - min=0.0, - soft_min=0.0) - - # TODO Add conditional UI to show only the required properties per type + min=0.0) refDistance: FloatProperty( name="Ref Distance", - description="A double value representing the reference distance for reducing volume as the audio source moves further from the listener. For distances greater than this the volume will be reduced based on rolloffFactor and distanceModel.", + description="A double value representing the reference distance for reducing volume as the audio source moves further from the listener. For distances greater than this the volume will be reduced based on rolloffFactor and distanceModel", subtype="DISTANCE", unit="LENGTH", default=1.0, - min=0.0, - soft_min=0.0) + min=0.0) rolloffFactor: FloatProperty( name="Rolloff Factor", - description="A double value describing how quickly the volume is reduced as the source moves away from the listener. This value is used by all distance models.", + description="A double value describing how quickly the volume is reduced as the source moves away from the listener. This value is used by all distance models", default=1.0, - min=0.0, - soft_min=0.0) + min=0.0) maxDistance: FloatProperty( name="Max Distance", - description="A double value representing the maximum distance between the audio source and the listener, after which the volume is not reduced any further. This value is used only by the linear distance model.", + description="A double value representing the maximum distance between the audio source and the listener, after which the volume is not reduced any further. This value is used only by the linear distance model", subtype="DISTANCE", unit="LENGTH", default=10000.0, - min=0.0, - soft_min=0.0) + min=0.0) coneInnerAngle: FloatProperty( name="Cone Inner Angle", - description="A double value describing the angle, in degrees, of a cone inside of which there will be no volume reduction.", + description="A double value describing the angle, in degrees, of a cone inside of which there will be no volume reduction", subtype="ANGLE", default=MAX_ANGLE, min=0.0, - soft_min=0.0, max=MAX_ANGLE, - soft_max=MAX_ANGLE, precision=2) coneOuterAngle: FloatProperty( name="Cone Outer Angle", - description="A double value describing the angle, in degrees, of a cone outside of which the volume will be reduced by a constant value, defined by the coneOuterGain attribute.", + description="A double value describing the angle, in degrees, of a cone outside of which the volume will be reduced by a constant value, defined by the coneOuterGain attribute", subtype="ANGLE", default=0.0, min=0.0, - soft_min=0.0, max=MAX_ANGLE, - soft_max=MAX_ANGLE, precision=2) coneOuterGain: FloatProperty( name="Cone Outer Gain", - description="A double value describing the amount of volume reduction outside the cone defined by the coneOuterAngle attribute.", + description="A double value describing the amount of volume reduction outside the cone defined by the coneOuterAngle attribute", default=0.0, min=0.0, - soft_min=0.0) + max=1.0) def gather(self, export_settings, object): - return { - 'audioType': self.audioType, - 'distanceModel': self.distanceModel, - 'gain': self.gain, - 'refDistance': self.refDistance, - 'rolloffFactor': self.rolloffFactor, - 'maxDistance': self.maxDistance, - 'coneInnerAngle': round(degrees(self.coneInnerAngle), 2), - 'coneOuterAngle': round(degrees(self.coneOuterAngle), 2), - 'coneOuterGain': self.coneOuterGain - } + if (self.overrideAudioSettings): + return { + 'audioType': self.audioType, + 'distanceModel': self.distanceModel, + 'gain': self.gain, + 'refDistance': self.refDistance, + 'rolloffFactor': self.rolloffFactor, + 'maxDistance': self.maxDistance, + 'coneInnerAngle': round(degrees(self.coneInnerAngle), 2), + 'coneOuterAngle': round(degrees(self.coneOuterAngle), 2), + 'coneOuterGain': self.coneOuterGain + } + + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + self.coneInnerAngle = radians( + self.coneInnerAngle) + self.coneOuterAngle = radians( + self.coneOuterAngle) + + if migration_type != MigrationType.GLOBAL or is_linked(ob) or type(ob) == bpy.types.Armature: + host_reference = get_host_reference_message(panel_type, host, ob=ob) + migration_report.append( + f"Warning: The Media Cone angles may not have migrated correctly for the Audio Params component on the {panel_type.value} {host_reference}") + + return migration_occurred + + def draw(self, context, layout, panel): + layout.prop(data=self, property="overrideAudioSettings") + if not self.overrideAudioSettings: + return + + layout.prop(data=self, property="audioType") + layout.prop(data=self, property="gain") + + if self.audioType == "pannernode": + layout.prop(data=self, property="distanceModel") + layout.prop(data=self, property="rolloffFactor") + layout.prop(data=self, property="refDistance") + layout.prop(data=self, property="maxDistance") + layout.prop(data=self, property="coneInnerAngle") + layout.prop(data=self, property="coneOuterAngle") + layout.prop(data=self, property="coneOuterGain") @classmethod - def migrate(cls, version): - if version < (1, 0, 0): - def migrate_data(ob): - if cls.get_name() in ob.hubs_component_list.items: - ob.hubs_component_audio_params.coneInnerAngle = radians( - ob.hubs_component_audio_params.coneInnerAngle) - ob.hubs_component_audio_params.coneOuterAngle = radians( - ob.hubs_component_audio_params.coneOuterAngle) - - for ob in bpy.data.objects: - migrate_data(ob) - - if ob.type == 'ARMATURE': - for bone in ob.data.bones: - migrate_data(bone) + def gather_import(cls, gltf, blender_object, component_name, component_value): + blender_object.hubs_component_audio_params.overrideAudioSettings = True diff --git a/addons/io_hubs_addon/components/definitions/audio_settings.py b/addons/io_hubs_addon/components/definitions/audio_settings.py index 778a45cd..425a6e6e 100644 --- a/addons/io_hubs_addon/components/definitions/audio_settings.py +++ b/addons/io_hubs_addon/components/definitions/audio_settings.py @@ -1,8 +1,9 @@ import bpy from bpy.props import FloatProperty, EnumProperty from ..hubs_component import HubsComponent -from ..types import Category, PanelType, NodeType -from ..consts import DISTACE_MODELS, MAX_ANGLE +from ..types import Category, PanelType, NodeType, MigrationType +from ..utils import is_linked +from ..consts import DISTANCE_MODELS, MAX_ANGLE from math import degrees, radians @@ -13,72 +14,66 @@ class AudioSettings(HubsComponent): 'category': Category.SCENE, 'node_type': NodeType.SCENE, 'panel_type': [PanelType.SCENE], - 'icon': 'SPEAKER' + 'icon': 'SPEAKER', + 'version': (1, 0, 0) } avatarDistanceModel: EnumProperty( name="Avatar Distance Model", description="Avatar Distance Model", - items=DISTACE_MODELS, + items=DISTANCE_MODELS, default="inverse") avatarRolloffFactor: FloatProperty( name="Avatar Rolloff Factor", default=2.0, - min=0.0, - soft_min=0.0) + min=0.0) avatarRefDistance: FloatProperty( name="Avatar Ref Distance", description="Avatar Ref Distance", subtype="DISTANCE", default=1.0, - min=0.0, - soft_min=0.0) + min=0.0) avatarMaxDistance: FloatProperty( name="Avatar Max Distance", description="Avatar Max Distance", subtype="DISTANCE", default=10000.0, - min=0.0, - soft_min=0.0) + min=0.0) mediaVolume: FloatProperty( name="Media Volume", description="Media Volume", default=0.5, - min=0.0, - soft_min=0.0) + min=0.0) mediaDistanceModel: EnumProperty( name="Media Distance Model", description="Media Distance Model", - items=DISTACE_MODELS, + items=DISTANCE_MODELS, default="inverse") mediaRolloffFactor: FloatProperty( name="Media Rolloff Factor", description="Media Rolloff Factor", default=2.0, - min=0.0, - soft_min=0.0) + min=0.0) mediaRefDistance: FloatProperty( name="Media Ref Distance", description="Media Rolloff Factor", subtype="DISTANCE", default=2.0, - min=0.0, - soft_min=0.0) + min=0.0) mediaMaxDistance: FloatProperty( name="Media Max Distance", description="Media Max Distance", subtype="DISTANCE", default=10000.0, - min=0.0, - soft_min=0.0) + min=0.0) mediaConeInnerAngle: FloatProperty( name="Media Cone Inner Angle", @@ -86,9 +81,7 @@ class AudioSettings(HubsComponent): subtype="ANGLE", default=MAX_ANGLE, min=0.0, - soft_min=0.0, - max=MAX_ANGLE, - soft_max=MAX_ANGLE) + max=MAX_ANGLE) mediaConeOuterAngle: FloatProperty( name="Media Cone Outer Angle", @@ -96,16 +89,14 @@ class AudioSettings(HubsComponent): subtype="ANGLE", default=0.0, min=0.0, - soft_min=0.0, - max=MAX_ANGLE, - soft_max=MAX_ANGLE) + max=MAX_ANGLE) mediaConeOuterGain: FloatProperty( name="Media Cone Outer Gain", description="Media Cone Outer Gain", default=0.0, min=0.0, - soft_min=0.0) + max=1.0) def gather(self, export_settings, object): return { @@ -123,12 +114,17 @@ def gather(self, export_settings, object): 'mediaConeOuterGain': self.mediaConeOuterGain, } - @classmethod - def migrate(cls, version): - if version < (1, 0, 0): - for scene in bpy.data.scenes: - if cls.get_name() in scene.hubs_component_list.items: - scene.hubs_component_audio_settings.mediaConeInnerAngle = radians( - scene.hubs_component_audio_settings.mediaConeInnerAngle) - scene.hubs_component_audio_settings.mediaConeOuterAngle = radians( - scene.hubs_component_audio_settings.mediaConeOuterAngle) + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + self.mediaConeInnerAngle = radians( + self.mediaConeInnerAngle) + self.mediaConeOuterAngle = radians( + self.mediaConeOuterAngle) + + if migration_type != MigrationType.GLOBAL or is_linked(host): + migration_report.append( + f"Warning: The Media Cone angles may not have migrated correctly for the Audio Settings component on scene \"{host.name_full}\"") + + return migration_occurred diff --git a/addons/io_hubs_addon/components/definitions/audio_source.py b/addons/io_hubs_addon/components/definitions/audio_source.py index b6faa3e4..f5fc7987 100644 --- a/addons/io_hubs_addon/components/definitions/audio_source.py +++ b/addons/io_hubs_addon/components/definitions/audio_source.py @@ -10,14 +10,15 @@ class AudioSource(HubsComponent): 'category': Category.MEDIA, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'MOD_WAVE' + 'icon': 'MOD_WAVE', + 'version': (1, 0, 0) } onlyMods: BoolProperty( - name="Only Mods", description="Only room moderators should be able to transmit audio from this source.", default=True) + name="Only Mods", description="Only room moderators are able to transmit audio from this source", default=True) muteSelf: BoolProperty( - name="Mute Self", description="Do not transmit your own audio to audio targets.", default=True) + name="Mute Self", description="Do not transmit your own audio to audio targets", default=True) debug: BoolProperty( - name="Debug", description="Play white noise when no audio source is in the zone.", default=False) + name="Debug", description="Play white noise when no audio source is in the zone", default=False) diff --git a/addons/io_hubs_addon/components/definitions/audio_target.py b/addons/io_hubs_addon/components/definitions/audio_target.py index a5513fd7..9be112f4 100644 --- a/addons/io_hubs_addon/components/definitions/audio_target.py +++ b/addons/io_hubs_addon/components/definitions/audio_target.py @@ -1,16 +1,18 @@ from email.policy import default from bpy.props import FloatProperty, BoolProperty, PointerProperty, EnumProperty, StringProperty from ..hubs_component import HubsComponent -from ..utils import has_component +from ..utils import has_component, is_linked from ..types import Category, PanelType, NodeType +from ..ui import add_link_indicator from bpy.types import Object -from ...io.utils import gather_joint_property, gather_node_property +from ...utils import delayed_gather +from .audio_source import AudioSource + BLANK_ID = "374e54CMHFCipSk" def filter_on_component(self, ob): - from .audio_source import AudioSource dep_name = AudioSource.get_name() if hasattr(ob, 'type') and ob.type == 'ARMATURE': if ob.mode == 'EDIT': @@ -29,12 +31,11 @@ def get_bones(self, context): global bones bones = [] count = 0 - from .audio_source import AudioSource dep_name = AudioSource.get_name() bones.append((BLANK_ID, "Select a bone", "None", "BLANK", count)) count += 1 - if self.srcNode.mode == 'EDIT': + if self.srcNode and self.srcNode.mode == 'EDIT': self.srcNode.update_from_editmode() found = False @@ -79,19 +80,21 @@ class AudioTarget(HubsComponent): 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'deps': ['audio-params'], - 'icon': 'SPEAKER' + 'icon': 'SPEAKER', + 'version': (1, 0, 0) } srcNode: PointerProperty( name="Source", - description="Node with a audio-source-zone to pull audio from", + description="The object with an audio-source component to pull audio from", type=Object, - poll=filter_on_component + poll=filter_on_component, + update=lambda self, context: setattr(self, 'bone', BLANK_ID) ) bone: EnumProperty( name="Bone", - description="Bone", + description="The bone with an audio-source component to pull audio from. If a bone is selected, this will override the object source, otherwise if no bone is selected, the source will be pulled from the object", items=get_bones, get=get_bone, set=set_bone @@ -106,15 +109,13 @@ class AudioTarget(HubsComponent): name="Min Delay", description="Minimum random delay applied to the source audio", default=0.01, - min=0.0, - soft_min=0.0) + min=0.0) maxDelay: FloatProperty( name="Max Delay", description="Maximum random delay applied to the source audio", default=0.03, - min=0.0, - soft_min=0.0) + min=0.0) debug: BoolProperty( name="Debug", @@ -122,12 +123,21 @@ class AudioTarget(HubsComponent): default=False) def draw(self, context, layout, panel): - from .audio_source import AudioSource dep_name = AudioSource.get_name() has_obj_component = False has_bone_component = False - layout.prop(data=self, property="srcNode") + row = layout.row(align=True) + sub_row = row.row(align=True) + sub_row.prop(data=self, property="srcNode") + if is_linked(context.active_object): + # Manually disable the PointerProperty, needed for Blender 3.2+. + sub_row.enabled = False + if is_linked(self.srcNode): + sub_row = row.row(align=True) + sub_row.enabled = False + add_link_indicator(sub_row, self.srcNode) + if hasattr(self.srcNode, 'type'): has_obj_component = has_component(self.srcNode, dep_name) if self.srcNode.type == 'ARMATURE': @@ -140,18 +150,20 @@ def draw(self, context, layout, panel): col = layout.column() col.alert = True col.label( - text=f'The selected source doesn\'t have a {AudioSource.get_display_name()} component', icon='ERROR') + text=f'The selected source doesn\'t have an {AudioSource.get_display_name()} component', icon='ERROR') elif self.srcNode and self.bone_id != BLANK_ID and not has_bone_component: col = layout.column() col.alert = True col.label( - text=f'The selected bone doesn\'t have a {AudioSource.get_display_name()} component', icon='ERROR') + text=f'The selected bone doesn\'t have an {AudioSource.get_display_name()} component', icon='ERROR') layout.prop(data=self, property="minDelay") layout.prop(data=self, property="maxDelay") layout.prop(data=self, property="debug") + @delayed_gather def gather(self, export_settings, object): + from ...io.utils import gather_joint_property, gather_node_property return { 'srcNode': gather_joint_property(export_settings, self.srcNode, self, 'bone') if self.bone_id != BLANK_ID else gather_node_property( export_settings, object, self, 'srcNode'), diff --git a/addons/io_hubs_addon/components/definitions/audio_zone.py b/addons/io_hubs_addon/components/definitions/audio_zone.py index 06dacc39..ed009e3d 100644 --- a/addons/io_hubs_addon/components/definitions/audio_zone.py +++ b/addons/io_hubs_addon/components/definitions/audio_zone.py @@ -14,16 +14,19 @@ class AudioZone(HubsComponent): 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'deps': ['networked', 'audio-params'], - 'icon': 'MATCUBE' + 'icon': 'MATCUBE', + 'version': (1, 0, 0) } - inOut: BoolProperty(name="In Out", - description="The zone audio parameters affect the sources inside the zone when the listener is outside", - default=True) + inOut: BoolProperty( + name="In Out", + description="The zone audio parameters affect the sources inside the zone when the listener is outside", + default=True) - outIn: BoolProperty(name="Out In", - description="The zone audio parameters affect the sources outside the zone when the listener is inside", - default=True) + outIn: BoolProperty( + name="Out In", + description="The zone audio parameters affect the sources outside the zone when the listener is inside", + default=True) @classmethod def update_gizmo(cls, ob, bone, target, gizmo): @@ -53,6 +56,10 @@ def create_gizmo(cls, ob, gizmo_group): return gizmo - @classmethod - def migrate(cls, version): - migrate_networked(cls.get_name()) + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migrate_networked(host) + + return migration_occurred diff --git a/addons/io_hubs_addon/components/definitions/background.py b/addons/io_hubs_addon/components/definitions/background.py index c51875ca..49667c7a 100644 --- a/addons/io_hubs_addon/components/definitions/background.py +++ b/addons/io_hubs_addon/components/definitions/background.py @@ -11,7 +11,7 @@ class Background(HubsComponent): } @classmethod - def gather_import(cls, import_settings, blender_object, component_name, component_value): + def gather_import(cls, gltf, blender_object, component_name, component_value): blender_component = import_component( 'environment-settings', blender_object) blender_component.toneMapping = "LinearToneMapping" diff --git a/addons/io_hubs_addon/components/definitions/billboard.py b/addons/io_hubs_addon/components/definitions/billboard.py index 8d335263..8662270e 100644 --- a/addons/io_hubs_addon/components/definitions/billboard.py +++ b/addons/io_hubs_addon/components/definitions/billboard.py @@ -10,8 +10,9 @@ class Billboard(HubsComponent): 'category': Category.OBJECT, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'IMAGE_PLANE' + 'icon': 'IMAGE_PLANE', + 'version': (1, 0, 0) } onlyY: BoolProperty( - name="Only Y", description="Rotate only in Y axis", default=False) + name="Only Y", description="Rotate only on the Y axis", default=False) diff --git a/addons/io_hubs_addon/components/definitions/directional_light.py b/addons/io_hubs_addon/components/definitions/directional_light.py index 769f0083..66accd16 100644 --- a/addons/io_hubs_addon/components/definitions/directional_light.py +++ b/addons/io_hubs_addon/components/definitions/directional_light.py @@ -1,3 +1,5 @@ +from ..models import directional_light +from ..gizmos import CustomModelGizmo, bone_matrix_world, update_gizmos from bpy.props import FloatVectorProperty, FloatProperty, BoolProperty, IntVectorProperty from ..hubs_component import HubsComponent from ..types import Category, NodeType, PanelType @@ -10,16 +12,18 @@ class DirectionalLight(HubsComponent): 'category': Category.LIGHTS, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'LIGHT_SUN' + 'icon': 'LIGHT_SUN', + 'version': (1, 0, 0) } color: FloatVectorProperty(name="Color", description="Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, - max=1) + max=1, + update=lambda self, context: update_gizmos()) intensity: FloatProperty(name="Intensity", description="Intensity", @@ -39,3 +43,30 @@ class DirectionalLight(HubsComponent): shadowRadius: FloatProperty(name="Shadow Radius", description="Shadow Radius", default=1.0) + + @classmethod + def update_gizmo(cls, ob, bone, target, gizmo): + if bone: + mat = bone_matrix_world(ob, bone) + else: + mat = ob.matrix_world.copy() + + gizmo.hide = not ob.visible_get() + gizmo.matrix_basis = mat + + @classmethod + def create_gizmo(cls, ob, gizmo_group): + gizmo = gizmo_group.gizmos.new(CustomModelGizmo.bl_idname) + gizmo.object = ob + setattr(gizmo, "hubs_gizmo_shape", directional_light.SHAPE) + gizmo.setup() + gizmo.use_draw_scale = False + gizmo.use_draw_modal = False + gizmo.color = getattr(ob, cls.get_id()).color[:3] + gizmo.alpha = 0.5 + gizmo.scale_basis = 1.0 + gizmo.hide_select = True + gizmo.color_highlight = (0.8, 0.8, 0.8) + gizmo.alpha_highlight = 1.0 + + return gizmo diff --git a/addons/io_hubs_addon/components/definitions/environment_settings.py b/addons/io_hubs_addon/components/definitions/environment_settings.py index 9c2b11b4..932c7f8d 100644 --- a/addons/io_hubs_addon/components/definitions/environment_settings.py +++ b/addons/io_hubs_addon/components/definitions/environment_settings.py @@ -1,13 +1,14 @@ -from bpy.props import FloatProperty, EnumProperty, FloatVectorProperty, PointerProperty +from bpy.props import FloatProperty, EnumProperty, FloatVectorProperty, PointerProperty, BoolProperty from bpy.types import Image -from ...io.utils import import_component, assign_property, gather_texture_property, gather_color_property +from ...io.utils import import_component, assign_property from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType +from ..utils import is_linked +from ..ui import add_link_indicator import bpy -from io_scene_gltf2.blender.imp.gltf2_blender_image import BlenderImage -TOME_MAPPING = [("NoToneMapping", "None", "No tone mapping."), +TOME_MAPPING = [("NoToneMapping", "None", "No tone mapping"), ("LinearToneMapping", "Linear", "Linear tone mapping"), ("ReinhardToneMapping", "ThreeJS 'Reinhard'", "ThreeJS 'Reinhard' tone mapping"), @@ -25,7 +26,8 @@ class EnvironmentSettings(HubsComponent): 'category': Category.SCENE, 'node_type': NodeType.SCENE, 'panel_type': [PanelType.SCENE], - 'icon': 'WORLD' + 'icon': 'WORLD', + 'version': (1, 0, 0) } toneMapping: EnumProperty( @@ -35,11 +37,11 @@ class EnvironmentSettings(HubsComponent): default="LUTToneMapping") toneMappingExposure: FloatProperty( - name="Exposure", description="Exposure level of tone mapping", default=1.0, min=0.0, soft_min=0.0) + name="Exposure", description="Exposure level of tone mapping", default=1.0, min=0.0) backgroundColor: FloatVectorProperty(name="Background Color", description="Background Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, @@ -56,11 +58,75 @@ class EnvironmentSettings(HubsComponent): type=Image ) + enableHDRPipeline: BoolProperty( + name="Enable HDR Pipeline", + description="Enable the new (experimental) HDR render pipeline with post processing effects and modified lighting + tonemapping model. NOTE: This checkbox is an opt-in to breaking changes. New versions of the Hubs client may break scenes with this option checked without warning and may reqquire re-export with a later Blender exporter.", + default=False + ) + + enableBloom: BoolProperty( + name="Bloom", + description="Add a Bloom effect to bright objects.", + default=False + ) + bloomThreshold: FloatProperty( + name="Threshold", + description="Values brighter than this in the final render (before tone mapping) will have bloom applied to them. The threshold is applied starting at 1, so a value of 0 will cover all 'HDR' values. You can specify a number below 0 to have bloom effect SDR values (not recommended)", + default=1.0, min=0.0, soft_min=1.0) + bloomIntensity: FloatProperty( + name="Intensity", description="Scales the intensity of the bloom effect", default=1.0, min=0.0) + bloomRadius: FloatProperty( + name="Radius", description="Spread distance of the bloom effect", default=0.6, min=0.0, soft_max=1.0) + bloomSmoothing: FloatProperty(name="Smoothing", + description="Makes transition between under/over-threshold more gradual.", + default=0.025, min=0.0, soft_max=1.0) + + def draw(self, context, layout, panel): + layout.prop(data=self, property="enableHDRPipeline") + + layout.prop(data=self, property="backgroundColor") + + row = layout.row(align=True) + sub_row = row.row(align=True) + sub_row.prop(data=self, property="backgroundTexture") + if is_linked(context.scene): + # Manually disable the PointerProperty, needed for Blender 3.2+. + sub_row.enabled = False + if is_linked(self.backgroundTexture): + sub_row = row.row(align=True) + sub_row.enabled = False + add_link_indicator(sub_row, self.backgroundTexture) + + row = layout.row(align=True) + sub_row = row.row(align=True) + sub_row.prop(data=self, property="envMapTexture") + if is_linked(context.scene): + # Manually disable the PointerProperty, needed for Blender 3.2+. + sub_row.enabled = False + if is_linked(self.envMapTexture): + sub_row = row.row(align=True) + sub_row.enabled = False + add_link_indicator(sub_row, self.envMapTexture) + + layout.prop(data=self, property="toneMapping") + layout.prop(data=self, property="toneMappingExposure") + + if self.enableHDRPipeline: + layout = layout.box() + top_row = layout.row() + top_row.prop(data=self, property="enableBloom") + if self.enableBloom: + layout.prop(data=self, property="bloomThreshold") + layout.prop(data=self, property="bloomIntensity") + layout.prop(data=self, property="bloomRadius") + layout.prop(data=self, property="bloomSmoothing") + def gather(self, export_settings, object): - return { + from ...io.utils import gather_texture_property, gather_color_property + output = { 'toneMapping': self.toneMapping, 'toneMappingExposure': self.toneMappingExposure, - 'backgroundColor': gather_color_property(export_settings, object, self, 'backgroundColor'), + 'backgroundColor': gather_color_property(export_settings, object, self, 'backgroundColor', 'COLOR_GAMMA'), 'backgroundTexture': gather_texture_property( export_settings, object, @@ -71,15 +137,29 @@ def gather(self, export_settings, object): object, self, 'envMapTexture') + } + if self.enableHDRPipeline: + output["enableHDRPipeline"] = True + if self.enableBloom: + output["enableBloom"] = True + output["bloom"] = { + "threshold": self.bloomThreshold, + "intensity": self.bloomIntensity, + "radius": self.bloomRadius, + "smoothing": self.bloomSmoothing, + } + + return output + @classmethod - def gather_import(cls, import_settings, blender_object, component_name, component_value): + def gather_import(cls, gltf, blender_object, component_name, component_value): blender_component = import_component( component_name, blender_object) images = {} - for gltf_texture in import_settings.data.textures: + for gltf_texture in gltf.data.textures: extensions = gltf_texture.extensions source = None if extensions: @@ -89,9 +169,10 @@ def gather_import(cls, import_settings, blender_object, component_name, componen else: source = gltf_texture.source + from io_scene_gltf2.blender.imp.gltf2_blender_image import BlenderImage BlenderImage.create( - import_settings, source) - pyimg = import_settings.data.images[source] + gltf, source) + pyimg = gltf.data.images[source] blender_image_name = pyimg.blender_image_name images[source] = blender_image_name @@ -99,8 +180,10 @@ def gather_import(cls, import_settings, blender_object, component_name, componen if isinstance(property_value, dict) and property_value['__mhc_link_type'] == "texture": blender_image_name = images[property_value['index']] blender_image = bpy.data.images[blender_image_name] + if blender_image.file_format == 'HDR': + blender_image.colorspace_settings.name = 'Linear' setattr(blender_component, property_name, blender_image) else: - assign_property(import_settings.vnodes, blender_component, + assign_property(gltf.vnodes, blender_component, property_name, property_value) diff --git a/addons/io_hubs_addon/components/definitions/fog.py b/addons/io_hubs_addon/components/definitions/fog.py index ae71fde2..5135d56d 100644 --- a/addons/io_hubs_addon/components/definitions/fog.py +++ b/addons/io_hubs_addon/components/definitions/fog.py @@ -10,7 +10,8 @@ class Fog(HubsComponent): 'category': Category.SCENE, 'node_type': NodeType.SCENE, 'panel_type': [PanelType.SCENE], - 'icon': 'MOD_OCEAN' + 'icon': 'MOD_OCEAN', + 'version': (1, 0, 0) } type: EnumProperty( @@ -22,7 +23,7 @@ class Fog(HubsComponent): default="linear") color: FloatVectorProperty(name="Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, diff --git a/addons/io_hubs_addon/components/definitions/frustrum.py b/addons/io_hubs_addon/components/definitions/frustrum.py index 939491e7..5c627528 100644 --- a/addons/io_hubs_addon/components/definitions/frustrum.py +++ b/addons/io_hubs_addon/components/definitions/frustrum.py @@ -6,12 +6,15 @@ class Frustrum(HubsComponent): _definition = { 'name': 'frustrum', - 'display_name': 'Frustrum', + 'display_name': 'Frustum', 'category': Category.OBJECT, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT], - 'icon': 'IMAGE_PLANE' + 'icon': 'IMAGE_PLANE', + 'version': (1, 0, 0) } culled: BoolProperty( - name="Culled", description="Ignore entities outside of the camera frustrum. Frustrum culling can cause problems with some animations", default=True) + name="Culled", + description="Ignore entities outside of the camera frustum. Frustum culling can cause problems with some animations", + default=True) diff --git a/addons/io_hubs_addon/components/definitions/hemisphere_light.py b/addons/io_hubs_addon/components/definitions/hemisphere_light.py index af42556c..00deef73 100644 --- a/addons/io_hubs_addon/components/definitions/hemisphere_light.py +++ b/addons/io_hubs_addon/components/definitions/hemisphere_light.py @@ -10,12 +10,13 @@ class HemisphereLight(HubsComponent): 'category': Category.LIGHTS, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'LIGHT_AREA' + 'icon': 'LIGHT_AREA', + 'version': (1, 0, 0) } skyColor: FloatVectorProperty(name="Sky Color", description="Sky Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, @@ -23,7 +24,7 @@ class HemisphereLight(HubsComponent): groundColor: FloatVectorProperty(name="Ground Color", description="Ground Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, diff --git a/addons/io_hubs_addon/components/definitions/image.py b/addons/io_hubs_addon/components/definitions/image.py index 8c28bc65..8f54d688 100644 --- a/addons/io_hubs_addon/components/definitions/image.py +++ b/addons/io_hubs_addon/components/definitions/image.py @@ -1,3 +1,5 @@ +from ..models import image +from ..gizmos import CustomModelGizmo from bpy.props import EnumProperty, StringProperty, BoolProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType @@ -13,13 +15,17 @@ class Image(HubsComponent): 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'icon': 'FILE_IMAGE', - 'deps': ['networked'] + 'deps': ['networked'], + 'version': (1, 0, 0) } src: StringProperty( - name="Image URL", description="Image URL", default="https://mozilla.org") + name="Image URL", description="The web address of the image", default="https://mozilla.org") - controls: BoolProperty(name="Controls", default=True) + controls: BoolProperty( + name="Controls", + description="When enabled, shows an \"open link\" button when hovering your cursor over it in Hubs that allows you to open the image in a new tab", + default=True) alphaMode: EnumProperty( name="Transparency Mode", @@ -33,6 +39,37 @@ class Image(HubsComponent): items=PROJECTION_MODE, default="flat") + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migrate_networked(host) + + return migration_occurred + + @classmethod + def update_gizmo(cls, ob, bone, target, gizmo): + if bone: + mat = bone_matrix_world(ob, bone) + else: + mat = ob.matrix_world.copy() + + gizmo.hide = not ob.visible_get() + gizmo.matrix_basis = mat + @classmethod - def migrate(cls, version): - migrate_networked(cls.get_name()) + def create_gizmo(cls, ob, gizmo_group): + gizmo = gizmo_group.gizmos.new(CustomModelGizmo.bl_idname) + gizmo.object = ob + setattr(gizmo, "hubs_gizmo_shape", image.SHAPE) + gizmo.setup() + gizmo.use_draw_scale = False + gizmo.use_draw_modal = False + gizmo.color = (0.8, 0.8, 0.8) + gizmo.alpha = 0.5 + gizmo.scale_basis = 1.0 + gizmo.hide_select = True + gizmo.color_highlight = (0.8, 0.8, 0.8) + gizmo.alpha_highlight = 1.0 + + return gizmo diff --git a/addons/io_hubs_addon/components/definitions/link.py b/addons/io_hubs_addon/components/definitions/link.py index 0aaebc71..a0cb5c84 100644 --- a/addons/io_hubs_addon/components/definitions/link.py +++ b/addons/io_hubs_addon/components/definitions/link.py @@ -1,3 +1,5 @@ +from ..models import link +from ..gizmos import CustomModelGizmo, bone_matrix_world from bpy.props import StringProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType @@ -12,12 +14,44 @@ class Link(HubsComponent): 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'icon': 'LINKED', - 'deps': ['networked'] + 'deps': ['networked'], + 'version': (1, 0, 0) } href: StringProperty(name="Link URL", description="Link URL", default="https://mozilla.org") + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migrate_networked(host) + + return migration_occurred + + @classmethod + def update_gizmo(cls, ob, bone, target, gizmo): + if bone: + mat = bone_matrix_world(ob, bone) + else: + mat = ob.matrix_world.copy() + + gizmo.hide = not ob.visible_get() + gizmo.matrix_basis = mat + @classmethod - def migrate(cls, version): - migrate_networked(cls.get_name()) + def create_gizmo(cls, ob, gizmo_group): + gizmo = gizmo_group.gizmos.new(CustomModelGizmo.bl_idname) + gizmo.object = ob + setattr(gizmo, "hubs_gizmo_shape", link.SHAPE) + gizmo.setup() + gizmo.use_draw_scale = False + gizmo.use_draw_modal = False + gizmo.color = (0.8, 0.8, 0.8) + gizmo.alpha = 0.5 + gizmo.scale_basis = 1.0 + gizmo.hide_select = True + gizmo.color_highlight = (0.8, 0.8, 0.8) + gizmo.alpha_highlight = 1.0 + + return gizmo diff --git a/addons/io_hubs_addon/components/definitions/loop_animation.py b/addons/io_hubs_addon/components/definitions/loop_animation.py index a3c1891c..4e2c61e4 100644 --- a/addons/io_hubs_addon/components/definitions/loop_animation.py +++ b/addons/io_hubs_addon/components/definitions/loop_animation.py @@ -1,13 +1,15 @@ import bpy from bpy.app.handlers import persistent -from bpy.props import StringProperty, CollectionProperty, IntProperty, BoolProperty, EnumProperty, FloatProperty +from bpy.props import StringProperty, CollectionProperty, IntProperty, EnumProperty, FloatProperty from bpy.types import PropertyGroup, Menu, Operator from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType from ...io.utils import import_component, assign_property -from ..utils import redraw_component_ui +from ..utils import redraw_component_ui, get_host_reference_message +from ...utils import delayed_gather + +msgbus_owners = [] -msgbus_owner = None class TrackPropertyType(PropertyGroup): name: StringProperty( @@ -18,11 +20,11 @@ class TrackPropertyType(PropertyGroup): name="Track Name", description="Track Name", ) - strip_name: StringProperty( # Will only contain data if the track name is generic + strip_name: StringProperty( # Will only contain data if the track name is generic name="Strip Name", description="Strip Name", ) - action_name: StringProperty( # Will only contain data if the track name is generic + action_name: StringProperty( # Will only contain data if the track name is generic name="Action Name", description="Action Name", ) @@ -32,32 +34,34 @@ class TrackPropertyType(PropertyGroup): items=[ ("object", "Object", "Object"), ("shape_key", "Shape Key", "Shape Key") - ], + ], default="object" ) + class Errors(): _errors = {} @classmethod def log(cls, track, error_type, error_message, severity='Error'): - has_error = cls._errors.get(track.track_type+track.name, '') + has_error = cls._errors.get(track.track_type + track.name, '') if not has_error: - cls._errors[track.track_type+track.name] = {'type': error_type, 'message': error_message, 'severity': severity} + cls._errors[track.track_type + track.name] = { + 'type': error_type, 'message': error_message, 'severity': severity} - @classmethod + @ classmethod def get(cls, track): - return cls._errors.get(track.track_type+track.name, '') + return cls._errors.get(track.track_type + track.name, '') - @classmethod + @ classmethod def clear(cls): cls._errors.clear() - @classmethod + @ classmethod def are_present(cls): return bool(cls._errors) - @classmethod + @ classmethod def display_error(cls, layout, error): message_lines = error['message'].split('\n') padding = layout.row(align=False) @@ -68,7 +72,8 @@ def display_error(cls, layout, error): error_row.scale_y = 0.7 if i == 0: - error_row.label(text=f"{error['severity']}: {line}", icon='ERROR') + error_row.label( + text=f"{error['severity']}: {line}", icon='ERROR') else: error_row.label(text=line, icon='BLANK1') @@ -76,73 +81,69 @@ def display_error(cls, layout, error): padding.scale_y = 0.2 padding.label() + def register_msgbus(): - global msgbus_owner + global msgbus_owners - if msgbus_owner: + if msgbus_owners: return - msgbus_owner = object() + for animtype in [bpy.types.NlaTrack, bpy.types.NlaStrip, bpy.types.Action]: + owner = object() + msgbus_owners.append(owner) + bpy.msgbus.subscribe_rna( + key=(animtype, "name"), + owner=owner, + args=(bpy.context,), + notify=redraw_component_ui, + ) - bpy.msgbus.subscribe_rna( - key=(bpy.types.NlaTrack, "name"), - owner=msgbus_owner, - args=(bpy.context,), - notify=redraw_component_ui, - ) - - bpy.msgbus.subscribe_rna( - key=(bpy.types.NlaStrip, "name"), - owner=msgbus_owner, - args=(bpy.context,), - notify=redraw_component_ui, - ) - - bpy.msgbus.subscribe_rna( - key=(bpy.types.Action, "name"), - owner=msgbus_owner, - args=(bpy.context,), - notify=redraw_component_ui, - ) def unregister_msgbus(): - global msgbus_owner - if not msgbus_owner: - return + global msgbus_owners - bpy.msgbus.clear_by_owner(msgbus_owner) - msgbus_owner = None + for owner in msgbus_owners: + bpy.msgbus.clear_by_owner(owner) + msgbus_owners.clear() -@persistent + +@ persistent def load_post(dummy): unregister_msgbus() register_msgbus() -@persistent + +@ persistent def undo_redo_post(dummy): unregister_msgbus() register_msgbus() + def is_default_name(track_name): return bool(track_name.startswith("NlaTrack") or track_name.startswith("[Action Stash]")) + def get_display_name(track_name, strip_name): return track_name if not is_default_name(track_name) else f"{track_name} ({strip_name})" + def get_strip_name(nla_track): try: return nla_track.strips[0].name except IndexError: return '' + def get_action_name(nla_track): try: return nla_track.strips[0].action.name except (IndexError, AttributeError): return '' + def get_menu_id(nla_track, track_type, display_name): - return display_name if not is_default_name(nla_track.name) else track_type+display_name + return display_name if not is_default_name(nla_track.name) else track_type + display_name + def is_unique_action(animation_data, target_nla_track): try: @@ -164,6 +165,7 @@ def is_unique_action(animation_data, target_nla_track): return True + def has_track(tracks_list, nla_track, invalid_track=None): strip_name = get_strip_name(nla_track) action_name = get_action_name(nla_track) @@ -181,6 +183,7 @@ def has_track(tracks_list, nla_track, invalid_track=None): return exists + def is_matching_track(nla_track_type, nla_track, track): if nla_track_type != track.track_type: return False @@ -191,7 +194,8 @@ def is_matching_track(nla_track_type, nla_track, track): if get_action_name(nla_track) == track.action_name: return True - Errors.log(track, 'INVALID_ACTION', "The action has changed for this strip/track.\nChoose the track again to update.") + Errors.log(track, 'INVALID_ACTION', + "The action has changed for this strip/track.\nChoose the track again to update.") else: if nla_track.name == track.track_name: @@ -199,6 +203,7 @@ def is_matching_track(nla_track_type, nla_track, track): return False + def is_useable_nla_track(animation_data, nla_track, track): track_name = nla_track.name action_name = get_action_name(nla_track) @@ -210,16 +215,19 @@ def is_useable_nla_track(animation_data, nla_track, track): forbidden_chars = [",", " "] if not is_default_name(track_name): if any([c for c in forbidden_chars if c in track_name]): - Errors.log(track, 'FORBIDDEN_NAME', "Custom track names can't contain commas or spaces.") + Errors.log(track, 'FORBIDDEN_NAME', + "Custom track names can't contain commas or spaces.") return False else: if any([c for c in forbidden_chars if c in action_name]): - Errors.log(track, 'FORBIDDEN_NAME', "Action names can't contain commas or spaces.") + Errors.log(track, 'FORBIDDEN_NAME', + "Action names can't contain commas or spaces.") return False if len(nla_track.strips) > 1: - Errors.log(track, 'MULTIPLE_STRIPS', "Only one strip is allowed in the track.") + Errors.log(track, 'MULTIPLE_STRIPS', + "Only one strip is allowed in the track.") return False if not nla_track.strips: @@ -227,23 +235,30 @@ def is_useable_nla_track(animation_data, nla_track, track): return False if nla_track.strips[0].mute: - Errors.log(track, 'MUTED_STRIP', "The strip is muted and won't export.") + Errors.log(track, 'MUTED_STRIP', + "The strip is muted and won't export.") return False if not action_name: - Errors.log(track, 'NO_ACTION', "The strip/track doesn't have an action.") + Errors.log(track, 'NO_ACTION', + "The strip/track doesn't have an action.") return False if not nla_track.strips[0].action.fcurves: - Errors.log(track, 'NO_FCURVES', "The strip/track's action doesn't have any animation and\nwon't be exported.") + Errors.log(track, 'NO_FCURVES', + "The strip/track's action doesn't have any animation and\nwon't be exported.") return False if not is_unique_action(animation_data, nla_track): - Errors.log(track, 'NON_UNIQUE_ACTION', "This strip/track contains an action that is present in multiple\nstrips/tracks on this object and may not export correctly.", severity="Warning") + Errors.log( + track, 'NON_UNIQUE_ACTION', + "This strip/track contains an action that is present in multiple\nstrips/tracks on this object and may not export correctly.", + severity="Warning") return False return True + def is_valid_regular_track(ob, track): if ob.animation_data: for nla_track in ob.animation_data.nla_tracks: @@ -257,6 +272,7 @@ def is_valid_regular_track(ob, track): return False + def is_valid_shape_key_track(ob, track): if hasattr(ob.data, 'shape_keys') and ob.data.shape_keys and ob.data.shape_keys.animation_data: for nla_track in ob.data.shape_keys.animation_data.nla_tracks: @@ -271,6 +287,36 @@ def is_valid_shape_key_track(ob, track): return False +def migrate_data(tracks, ob, host=None): + host = host or ob + if LoopAnimation.get_name() in host.hubs_component_list.items: + for track_name in tracks: + try: + nla_track = ob.animation_data.nla_tracks[track_name] + track_type = "object" + except (AttributeError, KeyError): + try: + nla_track = ob.data.shape_keys.animation_data.nla_tracks[track_name] + track_type = "shape_key" + except (AttributeError, KeyError): + track = host.hubs_component_loop_animation.tracks_list.add() + track.name = track_name + continue + + if not has_track(host.hubs_component_loop_animation.tracks_list, nla_track): + track = host.hubs_component_loop_animation.tracks_list.add() + strip_name = get_strip_name(nla_track) + action_name = get_action_name(nla_track) + track.name = get_display_name( + nla_track.name, strip_name) + track.track_name = nla_track.name + track.strip_name = strip_name if is_default_name( + nla_track.name) else '' + track.action_name = action_name if is_default_name( + nla_track.name) else '' + track.track_type = track_type + + class TracksList(bpy.types.UIList): bl_idname = "HUBS_UL_TRACKS_list" @@ -288,15 +334,17 @@ def draw_item(self, context, layout, data, item, icon, active_data, active_propn emboss=False, icon='SHAPEKEY_DATA') split.enabled = False else: - spacer = ' ' # needed so the menu arrow doesn't intersect with the name + spacer = ' ' # needed so the menu arrow doesn't intersect with the name row = split.row(align=False) row.emboss = 'NONE' row.alignment = 'LEFT' row.context_pointer_set('hubs_component', data) row.context_pointer_set('track', item) - row.menu(UpdateTrackContextMenu.bl_idname, text=item.name+spacer, icon='ERROR') + row.menu(UpdateTrackContextMenu.bl_idname, + text=item.name + spacer, icon='ERROR') row = split.row(align=True) - row.emboss = 'UI_EMBOSS_NONE_OR_STATUS' if bpy.app.version < (3, 0, 0) else 'NONE_OR_STATUS' + row.emboss = 'UI_EMBOSS_NONE_OR_STATUS' if bpy.app.version < ( + 3, 0, 0) else 'NONE_OR_STATUS' elif self.layout_type == 'GRID': layout.alignment = 'CENTER' layout.label(text="", icon_value=icon) @@ -322,7 +370,6 @@ class UpdateTrack(Operator): track_type: StringProperty( name="Track Type", description="Track Type", default="") - def execute(self, context): track = context.track track.name = self.name @@ -441,16 +488,19 @@ def draw(self, context): track_type = "object" menu_id = get_menu_id(nla_track, track_type, display_name) - if menu_id not in menu_tracks and not has_track(hubs_component.tracks_list, nla_track, invalid_track=track): + if menu_id not in menu_tracks and not has_track( + hubs_component.tracks_list, nla_track, invalid_track=track): row = layout.row(align=False) row.context_pointer_set('track', track) update_track = row.operator(UpdateTrack.bl_idname, - icon='OBJECT_DATA', text=display_name) + icon='OBJECT_DATA', text=display_name) update_track.name = display_name update_track.track_name = nla_track.name - update_track.strip_name = strip_name if is_default_name(nla_track.name) else '' - update_track.action_name = action_name if is_default_name(nla_track.name) else '' + update_track.strip_name = strip_name if is_default_name( + nla_track.name) else '' + update_track.action_name = action_name if is_default_name( + nla_track.name) else '' update_track.track_type = track_type no_tracks = False @@ -464,16 +514,19 @@ def draw(self, context): track_type = "shape_key" menu_id = get_menu_id(nla_track, track_type, display_name) - if menu_id not in menu_tracks and not has_track(hubs_component.tracks_list, nla_track, invalid_track=track): + if menu_id not in menu_tracks and not has_track( + hubs_component.tracks_list, nla_track, invalid_track=track): row = layout.row(align=False) row.context_pointer_set('track', track) update_track = row.operator(UpdateTrack.bl_idname, - icon='SHAPEKEY_DATA', text=display_name) + icon='SHAPEKEY_DATA', text=display_name) update_track.name = display_name update_track.track_name = nla_track.name - update_track.strip_name = strip_name if is_default_name(nla_track.name) else '' - update_track.action_name = action_name if is_default_name(nla_track.name) else '' + update_track.strip_name = strip_name if is_default_name( + nla_track.name) else '' + update_track.action_name = action_name if is_default_name( + nla_track.name) else '' update_track.track_type = track_type no_tracks = False @@ -506,11 +559,13 @@ def draw(self, context): if menu_id not in menu_tracks and not has_track(component_tracks_list, nla_track): add_track = layout.operator(AddTrackOperator.bl_idname, - icon='OBJECT_DATA', text=display_name) + icon='OBJECT_DATA', text=display_name) add_track.name = display_name add_track.track_name = nla_track.name - add_track.strip_name = strip_name if is_default_name(nla_track.name) else '' - add_track.action_name = action_name if is_default_name(nla_track.name) else '' + add_track.strip_name = strip_name if is_default_name( + nla_track.name) else '' + add_track.action_name = action_name if is_default_name( + nla_track.name) else '' add_track.track_type = track_type add_track.panel_type = panel_type.value @@ -527,11 +582,13 @@ def draw(self, context): if menu_id not in menu_tracks and not has_track(component_tracks_list, nla_track): add_track = layout.operator(AddTrackOperator.bl_idname, - icon='SHAPEKEY_DATA', text=display_name) + icon='SHAPEKEY_DATA', text=display_name) add_track.name = display_name add_track.track_name = nla_track.name - add_track.strip_name = strip_name if is_default_name(nla_track.name) else '' - add_track.action_name = action_name if is_default_name(nla_track.name) else '' + add_track.strip_name = strip_name if is_default_name( + nla_track.name) else '' + add_track.action_name = action_name if is_default_name( + nla_track.name) else '' add_track.track_type = track_type add_track.panel_type = panel_type.value @@ -549,7 +606,8 @@ class LoopAnimation(HubsComponent): 'category': Category.ANIMATION, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'LOOP_BACK' + 'icon': 'LOOP_BACK', + 'version': (1, 0, 0) } tracks_list: CollectionProperty( @@ -575,7 +633,7 @@ class LoopAnimation(HubsComponent): timeScale: FloatProperty( name="Time Scale", - description="Scale animation playback speed by this factor. Normal playback rate being 1. Negative values will play the animation backwards.", + description="Scale animation playback speed by this factor. Normal playback rate being 1. Negative values will play the animation backwards", default=1.0 ) @@ -609,18 +667,18 @@ def draw(self, context, layout, panel): def gather(self, export_settings, object): final_track_names = [] for track in object.hubs_component_loop_animation.tracks_list.values(): - final_track_names.append(track.track_name if not is_default_name(track.track_name) else track.action_name) + final_track_names.append(track.track_name if not is_default_name( + track.track_name) else track.action_name) - fps = bpy.context.scene.render.fps/bpy.context.scene.render.fps_base + fps = bpy.context.scene.render.fps / bpy.context.scene.render.fps_base return { 'clip': ",".join( final_track_names), - 'startOffset': self.startOffset/fps, + 'startOffset': self.startOffset / fps, 'timeScale': self.timeScale } - @staticmethod def register(): bpy.utils.register_class(TracksList) @@ -630,16 +688,15 @@ def register(): bpy.utils.register_class(AddTrackOperator) bpy.utils.register_class(RemoveTrackOperator) - if not load_post in bpy.app.handlers.load_post: + if load_post not in bpy.app.handlers.load_post: bpy.app.handlers.load_post.append(load_post) - if not undo_redo_post in bpy.app.handlers.undo_post: - bpy.app.handlers.load_post.append(undo_redo_post) - if not undo_redo_post in bpy.app.handlers.redo_post: - bpy.app.handlers.load_post.append(undo_redo_post) + if undo_redo_post not in bpy.app.handlers.undo_post: + bpy.app.handlers.undo_post.append(undo_redo_post) + if undo_redo_post not in bpy.app.handlers.redo_post: + bpy.app.handlers.redo_post.append(undo_redo_post) register_msgbus() - @staticmethod def unregister(): bpy.utils.unregister_class(TracksList) @@ -652,65 +709,63 @@ def unregister(): if load_post in bpy.app.handlers.load_post: bpy.app.handlers.load_post.remove(load_post) if undo_redo_post in bpy.app.handlers.undo_post: - bpy.app.handlers.load_post.remove(undo_redo_post) + bpy.app.handlers.undo_post.remove(undo_redo_post) if undo_redo_post in bpy.app.handlers.redo_post: - bpy.app.handlers.load_post.remove(undo_redo_post) + bpy.app.handlers.redo_post.remove(undo_redo_post) unregister_msgbus() @classmethod - def migrate(cls, version): - if version < (1, 0, 0): - def migrate_data(ob, host): - if cls.get_name() in host.hubs_component_list.items: - tracks = host.hubs_component_loop_animation.clip.split(",") - for track_name in tracks: - try: - nla_track = ob.animation_data.nla_tracks[track_name] - track_type = "object" - except (AttributeError, KeyError): - try: - nla_track = ob.data.shape_keys.animation_data.nla_tracks[track_name] - track_type = "shape_key" - except (AttributeError, KeyError): - track = host.hubs_component_loop_animation.tracks_list.add() - track.name = track_name - continue - - if not has_track(host.hubs_component_loop_animation.tracks_list, nla_track): - track = host.hubs_component_loop_animation.tracks_list.add() - strip_name = get_strip_name(nla_track) - action_name = get_action_name(nla_track) - track.name = get_display_name(nla_track.name, strip_name) - track.track_name = nla_track.name - track.strip_name = strip_name if is_default_name(nla_track.name) else '' - track.action_name = action_name if is_default_name(nla_track.name) else '' - track.track_type = track_type - - for ob in bpy.data.objects: - migrate_data(ob, ob) - - if ob.type == 'ARMATURE': - for bone in ob.data.bones: - migrate_data(bone) - - @classmethod - def gather_import(cls, import_settings, blender_object, component_name, component_value): + @delayed_gather + def gather_import(cls, gltf, blender_object, component_name, component_value): blender_component = import_component( component_name, blender_object) for property_name, property_value in component_value.items(): if property_name == 'clip': tracks = property_value.split(",") - for track_name in tracks: - if not has_track(blender_component.tracks_list, track_name): - track = blender_component.tracks_list.add() - track.name = track_name.strip() - + migrate_data(tracks, blender_object) else: - assign_property(import_settings.vnodes, blender_component, + assign_property(gltf.vnodes, blender_component, property_name, property_value) + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migration_warning = False + tracks = self.clip.split(",") + for track_name in tracks: + try: + nla_track = ob.animation_data.nla_tracks[track_name] + track_type = "object" + except (AttributeError, KeyError): + try: + nla_track = ob.data.shape_keys.animation_data.nla_tracks[track_name] + track_type = "shape_key" + except (AttributeError, KeyError): + track = self.tracks_list.add() + track.name = track_name + migration_warning = True + continue + + if not has_track(self.tracks_list, nla_track): + track = self.tracks_list.add() + strip_name = get_strip_name(nla_track) + action_name = get_action_name(nla_track) + track.name = get_display_name(nla_track.name, strip_name) + track.track_name = nla_track.name + track.strip_name = strip_name if is_default_name(nla_track.name) else '' + track.action_name = action_name if is_default_name(nla_track.name) else '' + track.track_type = track_type + + if migration_warning: + host_reference = get_host_reference_message(panel_type, host, ob=ob) + migration_report.append( + f"Warning: The Loop Animation component on the {panel_type.value} {host_reference} may not have migrated correctly") + + return migration_occurred + def register_module(): bpy.utils.register_class(TrackPropertyType) diff --git a/addons/io_hubs_addon/components/definitions/media_frame.py b/addons/io_hubs_addon/components/definitions/media_frame.py index 47f26ece..6365372f 100644 --- a/addons/io_hubs_addon/components/definitions/media_frame.py +++ b/addons/io_hubs_addon/components/definitions/media_frame.py @@ -4,8 +4,8 @@ from ..gizmos import bone_matrix_world from ..models import box from ..hubs_component import HubsComponent -from ..types import Category, PanelType, NodeType -from ..utils import V_S1 +from ..types import Category, PanelType, NodeType, MigrationType +from ..utils import V_S1, is_linked, get_host_reference_message from .networked import migrate_networked from mathutils import Matrix, Vector from ...io.utils import import_component, assign_property @@ -56,12 +56,13 @@ class MediaFrame(HubsComponent): 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'icon': 'OBJECT_DATA', - 'deps': ['networked'] + 'deps': ['networked'], + 'version': (1, 0, 0) } bounds: FloatVectorProperty( name="Bounds", - description="Bounding box to fit objects into when they are snapped into the media frame.", + description="Bounding box to fit objects into when they are snapped into the media frame", unit='LENGTH', subtype="XYZ", default=(1.0, 1.0, 1.0)) @@ -69,17 +70,17 @@ class MediaFrame(HubsComponent): mediaType: EnumProperty( name="Media Type", description="Limit what type of media this frame will capture", - items=[("all", "All Media", "Allow any type of media."), - ("all-2d", "Only 2D Media", "Allow only Images, Videos, and PDFs."), - ("model", "Only 3D Models", "Allow only 3D models."), - ("image", "Only Images", "Allow only images."), - ("video", "Only Videos", "Allow only videos."), - ("pdf", "Only PDFs", "Allow only PDFs.")], + items=[("all", "All Media", "Allow any type of media"), + ("all-2d", "Only 2D Media", "Allow only Images, Videos, and PDFs"), + ("model", "Only 3D Models", "Allow only 3D models"), + ("image", "Only Images", "Allow only images"), + ("video", "Only Videos", "Allow only videos"), + ("pdf", "Only PDFs", "Allow only PDFs")], default="all-2d") snapToCenter: BoolProperty( name="Snap To Center", - description="Snap the media to the center of the media frame when capturing. If set to false the object will just remain in the place it was dorpped but still be considered \"captured\" by the media frame.", + description="Snap the media to the center of the media frame when capturing. If set to false the object will just remain in the place it was dropped but still be considered \"captured\" by the media frame", default=True ) @@ -118,23 +119,21 @@ def create_gizmo(cls, ob, gizmo_group): return gizmo - @classmethod - def migrate(cls, version): - migrate_networked(cls.get_name()) - - if version < (1, 0, 0): - def migrate_data(ob): - if cls.get_name() in ob.hubs_component_list.items: - bounds = ob.hubs_component_media_frame.bounds.copy() - bounds = Vector((bounds.x, bounds.z, bounds.y)) - ob.hubs_component_media_frame.bounds = bounds + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migrate_networked(host) + bounds = self.bounds.copy() + bounds = Vector((bounds.x, bounds.z, bounds.y)) + self.bounds = bounds - for ob in bpy.data.objects: - migrate_data(ob) + if migration_type != MigrationType.GLOBAL or is_linked(ob) or type(ob) == bpy.types.Armature: + host_reference = get_host_reference_message(panel_type, host, ob=ob) + migration_report.append( + f"Warning: The Media Frame component's Y and Z bounds on the {panel_type.value} {host_reference} may not have migrated correctly") - if ob.type == 'ARMATURE': - for bone in ob.data.bones: - migrate_data(bone) + return migration_occurred @staticmethod def register(): @@ -170,7 +169,7 @@ def draw(self, context, layout, panel): col = layout.column() col.alert = True col.label( - text="The media-frame object, and it's parents, scale needs to be [1,1,1]", icon='ERROR') + text="The media-frame object, and its parents' scale need to be [1,1,1]", icon='ERROR') break @@ -181,15 +180,15 @@ def draw(self, context, layout, panel): parents.insert(0, parent.parent.pose.bones[parent.parent_bone]) @classmethod - def gather_import(cls, import_settings, blender_object, component_name, component_value): + def gather_import(cls, gltf, blender_object, component_name, component_value): blender_component = import_component( component_name, blender_object) - gltf_yup = import_settings.import_settings.get('gltf_yup', True) + gltf_yup = gltf.import_settings.get('gltf_yup', True) for property_name, property_value in component_value.items(): if property_name == 'bounds' and gltf_yup: property_value['y'], property_value['z'] = property_value['z'], property_value['y'] - assign_property(import_settings.vnodes, blender_component, - property_name, property_value) + assign_property(gltf.vnodes, blender_component, + property_name, property_value) diff --git a/addons/io_hubs_addon/components/definitions/model.py b/addons/io_hubs_addon/components/definitions/model.py index 84ad362b..f2072cbf 100644 --- a/addons/io_hubs_addon/components/definitions/model.py +++ b/addons/io_hubs_addon/components/definitions/model.py @@ -12,12 +12,17 @@ class Model(HubsComponent): 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'icon': 'SCENE_DATA', - 'deps': ['networked'] + 'deps': ['networked'], + 'version': (1, 0, 0) } src: StringProperty(name="Model URL", description="Model URL", default="https://mozilla.org") - @classmethod - def migrate(cls, version): - migrate_networked(cls.get_name()) + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migrate_networked(host) + + return migration_occurred diff --git a/addons/io_hubs_addon/components/definitions/morph_audio_feedback.py b/addons/io_hubs_addon/components/definitions/morph_audio_feedback.py index f1d9ea23..a9b90ac6 100644 --- a/addons/io_hubs_addon/components/definitions/morph_audio_feedback.py +++ b/addons/io_hubs_addon/components/definitions/morph_audio_feedback.py @@ -65,7 +65,8 @@ class MorphAudioFeedback(HubsComponent): 'category': Category.AVATAR, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT], - 'icon': 'MOD_SMOOTH' + 'icon': 'MOD_SMOOTH', + 'version': (1, 0, 0) } name: StringProperty( @@ -91,19 +92,19 @@ class MorphAudioFeedback(HubsComponent): default=1.0) @classmethod - def poll(cls, context, panel_type): - return context.object.type == 'MESH' - - @classmethod - def migrate(cls, version): - if version < (1, 0, 0): - for ob in bpy.data.objects: - if cls.get_name() in ob.hubs_component_list.items: - component = ob.hubs_component_morph_audio_feedback - shape_keys = get_object_shape_keys(component, ob) - list_ids = list(map(lambda x: x[0], shape_keys)) - if not component.name in list_ids: - component.name = component.name + def poll(cls, panel_type, host, ob=None): + return host.type == 'MESH' + + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + shape_keys = get_object_shape_keys(self, host) + list_ids = list(map(lambda x: x[0], shape_keys)) + if self.name not in list_ids: + self.name = self.name + + return migration_occurred def draw(self, context, layout, panel): layout.prop(data=self, property="shape_key") diff --git a/addons/io_hubs_addon/components/definitions/nav_mesh.py b/addons/io_hubs_addon/components/definitions/nav_mesh.py index 95b256ba..8d344ee8 100644 --- a/addons/io_hubs_addon/components/definitions/nav_mesh.py +++ b/addons/io_hubs_addon/components/definitions/nav_mesh.py @@ -9,9 +9,10 @@ class NavMesh(HubsComponent): 'category': Category.SCENE, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT], - 'icon': 'GRID' + 'icon': 'GRID', + 'version': (1, 0, 0) } @classmethod - def poll(cls, context, panel_type): - return context.object.type == 'MESH' + def poll(cls, panel_type, host, ob=None): + return host.type == 'MESH' diff --git a/addons/io_hubs_addon/components/definitions/networked.py b/addons/io_hubs_addon/components/definitions/networked.py index 0c574c51..2b0a062a 100644 --- a/addons/io_hubs_addon/components/definitions/networked.py +++ b/addons/io_hubs_addon/components/definitions/networked.py @@ -11,29 +11,16 @@ class Networked(HubsComponent): 'name': 'networked', 'display_name': 'Networked', 'node_type': NodeType.NODE, - 'panel_type': [PanelType.OBJECT, PanelType.BONE] + 'panel_type': [PanelType.OBJECT, PanelType.BONE], + 'version': (1, 0, 0) } - id: StringProperty( - name="Network ID", - description="Network ID", - default=str(uuid.uuid4()).upper() - ) + def gather(self, export_settings, object): + return { + 'id': str(uuid.uuid4()).upper() + } - def draw(self, context, layout, panel): - layout.label(text="Network ID:") - layout.label(text=self.id) - -def migrate_networked(component_name): - def migrate_data(ob): - if component_name in ob.hubs_component_list.items: - if Networked.get_name() not in ob.hubs_component_list.items: - add_component(ob, Networked.get_name()) - - for ob in bpy.data.objects: - migrate_data(ob) - - if ob.type == 'ARMATURE': - for bone in ob.data.bones: - migrate_data(bone) +def migrate_networked(host): + if Networked.get_name() not in host.hubs_component_list.items: + add_component(host, Networked.get_name()) diff --git a/addons/io_hubs_addon/components/definitions/particle_emitter.py b/addons/io_hubs_addon/components/definitions/particle_emitter.py index 4f09cad5..1b8638f7 100644 --- a/addons/io_hubs_addon/components/definitions/particle_emitter.py +++ b/addons/io_hubs_addon/components/definitions/particle_emitter.py @@ -11,15 +11,17 @@ class ParticleEmitter(HubsComponent): 'category': Category.ELEMENTS, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'PARTICLES' + 'icon': 'PARTICLES', + 'version': (1, 0, 0) } src: StringProperty( - name="Source", description="Source", default="https://mozilla.org") + name="Image Source", description="The web address (URL) of the image to use for each particle", + default="https://mozilla.org") startColor: FloatVectorProperty(name="Start Color", description="Start Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, @@ -27,7 +29,7 @@ class ParticleEmitter(HubsComponent): middleColor: FloatVectorProperty(name="Middle Color", description="Middle Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, @@ -35,7 +37,7 @@ class ParticleEmitter(HubsComponent): endColor: FloatVectorProperty(name="End Color", description="End Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, @@ -75,7 +77,7 @@ class ParticleEmitter(HubsComponent): name="Age Randomness", description="Age Randomness", default=0.0) lifetime: FloatProperty( - name="Lifetime", description="Lifetime ", unit="TIME", subtype="TIME", default=1.0) + name="Lifetime", description="Lifetime", unit="TIME", subtype="TIME", default=1.0) lifetimeRandomness: FloatProperty( name="Lifetime Randomness", description="Lifetime Randomness", default=0.0) diff --git a/addons/io_hubs_addon/components/definitions/personal_space_invader.py b/addons/io_hubs_addon/components/definitions/personal_space_invader.py index 217faab9..1a9b9368 100644 --- a/addons/io_hubs_addon/components/definitions/personal_space_invader.py +++ b/addons/io_hubs_addon/components/definitions/personal_space_invader.py @@ -3,14 +3,15 @@ from ..types import Category, PanelType, NodeType -class AmbientLight(HubsComponent): +class PersonalSpaceInvader(HubsComponent): _definition = { 'name': 'personal-space-invader', 'display_name': 'Personal Space Invader', 'category': Category.AVATAR, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'MATSHADERBALL' + 'icon': 'MATSHADERBALL', + 'version': (1, 0, 0) } radius: FloatProperty(name="Radius", diff --git a/addons/io_hubs_addon/components/definitions/point_light.py b/addons/io_hubs_addon/components/definitions/point_light.py index ac525d91..ee968a6d 100644 --- a/addons/io_hubs_addon/components/definitions/point_light.py +++ b/addons/io_hubs_addon/components/definitions/point_light.py @@ -1,3 +1,5 @@ +from ..models import point_light +from ..gizmos import CustomModelGizmo, bone_matrix_world, update_gizmos from bpy.props import FloatVectorProperty, FloatProperty, BoolProperty, IntVectorProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType @@ -10,16 +12,18 @@ class PointLight(HubsComponent): 'category': Category.LIGHTS, 'node_type': NodeType. NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'LIGHT_POINT' + 'icon': 'LIGHT_POINT', + 'version': (1, 0, 0) } color: FloatVectorProperty(name="Color", description="Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, - max=1) + max=1, + update=lambda self, context: update_gizmos()) intensity: FloatProperty(name="Intensity", description="Intensity", @@ -48,3 +52,30 @@ class PointLight(HubsComponent): shadowRadius: FloatProperty(name="Shadow Radius", description="Shadow Radius", default=1.0) + + @classmethod + def update_gizmo(cls, ob, bone, target, gizmo): + if bone: + mat = bone_matrix_world(ob, bone) + else: + mat = ob.matrix_world.copy() + + gizmo.hide = not ob.visible_get() + gizmo.matrix_basis = mat + + @classmethod + def create_gizmo(cls, ob, gizmo_group): + gizmo = gizmo_group.gizmos.new(CustomModelGizmo.bl_idname) + gizmo.object = ob + setattr(gizmo, "hubs_gizmo_shape", point_light.SHAPE) + gizmo.setup() + gizmo.use_draw_scale = False + gizmo.use_draw_modal = False + gizmo.color = getattr(ob, cls.get_id()).color[:3] + gizmo.alpha = 0.5 + gizmo.scale_basis = 1.0 + gizmo.hide_select = True + gizmo.color_highlight = (0.8, 0.8, 0.8) + gizmo.alpha_highlight = 1.0 + + return gizmo diff --git a/addons/io_hubs_addon/components/definitions/reflection_probe.py b/addons/io_hubs_addon/components/definitions/reflection_probe.py index f80de234..eb27e749 100644 --- a/addons/io_hubs_addon/components/definitions/reflection_probe.py +++ b/addons/io_hubs_addon/components/definitions/reflection_probe.py @@ -1,17 +1,20 @@ import bpy -from bpy.props import PointerProperty, EnumProperty, StringProperty -from bpy.types import Image, PropertyGroup +from bpy.props import PointerProperty, EnumProperty, StringProperty, BoolProperty, CollectionProperty, FloatProperty +from bpy.types import Image, PropertyGroup, Operator, Gizmo -from ...components.utils import is_gpu_available - -from ...preferences import get_addon_pref +from ...components.utils import is_gpu_available, redraw_component_ui, is_linked from ..components_registry import get_components_registry from ..hubs_component import HubsComponent -from ..types import Category, PanelType, NodeType -from ... import io +from ..types import Category, PanelType, NodeType, MigrationType +from ..ui import add_link_indicator +from ...io.utils import import_component, assign_property from ...utils import rgetattr, rsetattr +from ..utils import get_host_reference_message +from ..models import reflection_probe +from mathutils import Matrix, Vector import math +import os DEFAULT_RESOLUTION_ITEMS = [ @@ -58,9 +61,10 @@ def set_resolution(self, value): self.resolution_id = RESOLUTION_ITEMS[value][0] -def get_probes(): +def get_probes(all_objects=False, include_locked=False, include_linked=False): probes = [] - for ob in bpy.context.view_layer.objects: + objects = bpy.data.objects if all_objects else bpy.context.view_layer.objects + for ob in objects: component_list = ob.hubs_component_list registered_hubs_components = get_components_registry() @@ -70,11 +74,38 @@ def get_probes(): component_name = component_item.name if component_name in registered_hubs_components: if component_name == 'reflection-probe': + probe_component = ob.hubs_component_reflection_probe + if is_linked(ob) and not include_linked: + continue + if probe_component.locked and not include_locked: + continue probes.append(ob) return probes +def get_probe_image_path(probe): + return f"{bpy.app.tempdir}/{probe.name}.hdr" + + +def update_image_editors(old_img, img): + for window in bpy.context.window_manager.windows: + for area in window.screen.areas: + if area.type == 'IMAGE_EDITOR': + if area.spaces.active.image == old_img: + area.spaces.active.image = img + + +def import_menu_draw(self, context): + self.layout.operator("image.hubs_import_reflection_probe_envmaps", + text="Import Reflection Probe EnvMaps") + + +def export_menu_draw(self, context): + self.layout.operator("image.hubs_export_reflection_probe_envmaps", + text="Export Reflection Probe EnvMaps") + + class ReflectionProbeSceneProps(PropertyGroup): resolution: EnumProperty(name='Resolution', description='Reflection Probe Selected Environment Map Resolution', @@ -90,8 +121,12 @@ class ReflectionProbeSceneProps(PropertyGroup): resolution_id: StringProperty(name='Current Resolution Id', default='256x128', options={'HIDDEN'}) + use_compositor: BoolProperty( + name="Use Compositor", + description="Controls whether the baked images will be processed by the compositor after baking", default=False) + -class BakeProbeOperator(bpy.types.Operator): +class BakeProbeOperator(Operator): bl_idname = "render.hubs_render_reflection_probe" bl_label = "Render Hubs Reflection Probe" @@ -101,7 +136,7 @@ class BakeProbeOperator(bpy.types.Operator): cancelled = False probes = [] probe_index = 0 - post_render_wait = 0 + probe_is_setup = False bake_mode: EnumProperty( name="bake_mode", @@ -110,14 +145,35 @@ class BakeProbeOperator(bpy.types.Operator): ('ALL', 'Bake All', 'Bake All')], default='ACTIVE') + disabled_message = "Can't bake linked reflection probes. Please make it local first" + + @ classmethod + def description(cls, context, properties): + if properties.bake_mode == 'ACTIVE': + description_text = "Generate a 360 equirectangular HDR environment map of the current area in the scene" + if bpy.app.version < (3, 0, 0) and is_linked(context.active_object): + description_text += f"\nDisabled: {cls.disabled_message}" + elif properties.bake_mode == 'SELECTED': + description_text = "Bake the selected unlocked/local reflection probes" + else: + description_text = "Bake all the unlocked/local reflection probes in the current view layer" + + return description_text + @ classmethod def poll(cls, context): + if hasattr(context, 'bake_active_probe') and is_linked(context.active_object): + if bpy.app.version >= (3, 0, 0): + cls.poll_message_set(f"{cls.disabled_message}.") + return False + return not probe_baking and hasattr(bpy.context.scene, "cycles") def render_post(self, scene, depsgraph): print("Finished render") self.rendering = False + self.probe_is_setup = False if self.probe_index == 0: self.done = True @@ -129,13 +185,43 @@ def render_cancelled(self, scene, depsgraph): self.cancelled = True def execute(self, context): - if self.bake_mode == 'SELECTED' and len(context.selected_objects) == 0: + modes = { + 'ACTIVE': lambda: [context.active_object], + 'SELECTED': lambda: [ob for ob in get_probes() if ob in context.selected_objects], + 'ALL': lambda: get_probes(), + } + self.probes = modes[self.bake_mode]() + + if self.bake_mode == 'SELECTED' and len(self.probes) == 0: + def draw(self, context): + self.layout.label( + text="No probes selected to bake or the selected probes are locked/linked. Please select some unlocked/local probes first.") + bpy.context.window_manager.popup_menu( + draw, title="No unlocked/local probes selected", icon='ERROR') + return {'CANCELLED'} + if self.bake_mode == 'ALL' and len(self.probes) == 0: + def draw(self, context): + self.layout.label( + text="No unlocked/local probes to bake. Please unlock/make local the desired probes first.") + bpy.context.window_manager.popup_menu( + draw, title="No unlocked/local probes", icon='ERROR') + return {'CANCELLED'} + if self.bake_mode == 'ACTIVE' and is_linked(self.probes[0]): + # This isn't likely to ever happen, but just in case.... + def draw(self, context): + self.layout.label( + text="The active probe is linked. Please make it local first.") + bpy.context.window_manager.popup_menu( + draw, title="Active probe linked", icon='ERROR') + return {'CANCELLED'} + if self.bake_mode == 'ACTIVE' and self.probes[0].hubs_component_reflection_probe.locked: + # This isn't likely to ever happen, but just in case.... def draw(self, context): self.layout.label( - text="No objects selected to bake. Please select some objects first.") + text="The active probe is locked. Please unlock it first.") bpy.context.window_manager.popup_menu( - draw, title="No object selected", icon='ERROR') - return {"FINISHED"} + draw, title="Active probe locked", icon='ERROR') + return {'CANCELLED'} bpy.app.handlers.render_post.append(self.render_post) bpy.app.handlers.render_cancel.append(self.render_cancelled) @@ -145,7 +231,6 @@ def draw(self, context): context.window_manager.modal_handler_add(self) global probe_baking, bake_mode - probe_baking = True bake_mode = self.bake_mode self.camera_data = bpy.data.cameras.new(name='Temp EnvMap Camera') @@ -153,20 +238,16 @@ def draw(self, context): 'Temp EnvMap Camera', self.camera_data) bpy.context.scene.collection.objects.link(self.camera_object) - modes = { - 'ACTIVE': lambda: [context.active_object], - 'SELECTED': lambda: [ob for ob in get_probes() if ob in context.selected_objects], - 'ALL': lambda: get_probes(), - } - self.probes = modes[self.bake_mode]() - self.saved_props = {} + self.preferences_is_dirty_state = bpy.context.preferences.is_dirty self.cancelled = False self.done = False self.rendering = False - self.post_render_wait = 500 + self.probe_is_setup = False self.probe_index = len(self.probes) - 1 + probe_baking = True + return {"RUNNING_MODAL"} def modal(self, context, event): @@ -175,6 +256,7 @@ def modal(self, context, event): # print("ev: %s" % event.type) if event.type == 'TIMER': if self.cancelled or self.done: + probe_baking = False bpy.app.handlers.render_post.remove(self.render_post) bpy.app.handlers.render_cancel.remove(self.render_cancelled) context.window_manager.event_timer_remove(self._timer) @@ -184,27 +266,55 @@ def modal(self, context, event): self.restore_render_props() self.rendering = False - probe_baking = False + self.probe_is_setup = False if self.cancelled: + for probe in self.probes: + img_path = get_probe_image_path(probe) + if os.path.exists(img_path): + os.remove(img_path) self.report( {'WARNING'}, 'Reflection probe baking cancelled') return {"CANCELLED"} for probe in self.probes: - image_name = "generated_cubemap-%s" % probe.name - img = bpy.data.images.get(image_name) - img_path = "%s/%s.hdr" % (get_addon_pref(context).tmp_path, - probe.name) - if not img: - img = bpy.data.images.load(filepath=img_path) - img.name = image_name - else: - img.reload() - self.report( - {'INFO'}, 'Reflection probe environment map saved at %s' % img_path) - - probe.hubs_component_reflection_probe['envMapTexture'] = img + probe_component = probe.hubs_component_reflection_probe + old_img = probe_component.envMapTexture + image_name = f"generated_cubemap-{probe.name}" + # Store the old image's name in case of name juggling. + old_img_name = old_img.name if old_img else "" + + conflicting_img = None + for img in bpy.data.images: + if img.name == image_name and not is_linked(img): + conflicting_img = img + break + + if conflicting_img and conflicting_img != old_img: + # Rename the conflicting image to help avoid problems caused by Blender's name juggling and allow name juggled images to be more easily found. + conflicting_img.name = f"{conflicting_img.name}-old" + + img_path = get_probe_image_path(probe) + img = bpy.data.images.load(filepath=img_path) + img.name = image_name + if old_img: + if image_name == old_img_name and not is_linked(old_img): + old_img.user_remap(img) + bpy.data.images.remove(old_img) + else: + update_image_editors(old_img, img) + + probe_component['envMapTexture'] = img + + # Pack image and update filepaths so that it displays/unpacks nicely for the user. + # Note: updating the filepaths prints an error to the terminal, but otherwise seems to work fine. + img.pack() + new_filepath = f"//{image_name}.hdr" + img.packed_files[0].filepath = new_filepath + img.filepath_raw = new_filepath + img.filepath = new_filepath + if os.path.exists(img_path): + os.remove(img_path) props = context.scene.hubs_scene_reflection_probe_properties props.render_resolution = props.resolution @@ -213,16 +323,15 @@ def modal(self, context, event): return {"FINISHED"} elif not self.rendering: - # There seems to be some sort of deadlock if we don't wait some time time between renders. - # It would be nice to get to the bottom of this. - if self.post_render_wait < 500: - self.post_render_wait += 500 - return {"PASS_THROUGH"} - else: - self.post_render_wait = 0 try: - self.rendering = True - self.render_probe(context) + if not self.probe_is_setup: + self.setup_probe_render(context) + + # Rendering can sometimes fail if the old render is still being cleaned up. Keep trying until it works. + # For more details see https://developer.blender.org/T52258 + if bpy.ops.render.render("INVOKE_DEFAULT", write_still=True) != {'CANCELLED'}: + self.rendering = True + except Exception as e: print(e) self.cancelled = True @@ -233,9 +342,11 @@ def modal(self, context, event): def restore_render_props(self): for prop in self.saved_props: - rsetattr(bpy.context, prop, self.saved_props[prop]) + rsetattr(bpy.context, prop, self.saved_props[prop]) + bpy.context.preferences.is_dirty = self.preferences_is_dirty_state + self.preferences_is_dirty_state = None - def render_probe(self, context): + def setup_probe_render(self, context): probe = self.probes[self.probe_index] self.camera_data.type = "PANO" @@ -243,19 +354,20 @@ def render_probe(self, context): self.camera_data.cycles.longitude_min = -math.pi self.camera_data.cycles.longitude_max = math.pi - self.camera_data.cycles.latitude_min = -math.pi/2 - self.camera_data.cycles.latitude_max = math.pi/2 + self.camera_data.cycles.latitude_min = -math.pi / 2 + self.camera_data.cycles.latitude_max = math.pi / 2 - self.camera_data.clip_start = probe.data.clip_start - self.camera_data.clip_end = probe.data.clip_end + self.camera_data.clip_start = probe.hubs_component_reflection_probe.clipStart + self.camera_data.clip_end = probe.hubs_component_reflection_probe.clipEnd self.camera_object.matrix_world = probe.matrix_world.copy() - self.camera_object.rotation_euler.x += math.pi/2 - self.camera_object.rotation_euler.z += -math.pi/2 + self.camera_object.rotation_euler.x += math.pi / 2 + self.camera_object.rotation_euler.z += -math.pi / 2 resolution = context.scene.hubs_scene_reflection_probe_properties.resolution (x, y) = [int(i) for i in resolution.split('x')] - output_path = "%s/%s.hdr" % (get_addon_pref(context).tmp_path, probe.name) + output_path = get_probe_image_path(probe) + use_compositor = context.scene.hubs_scene_reflection_probe_properties.use_compositor overrides = [ ("preferences.view.render_display_type", "NONE"), @@ -267,8 +379,8 @@ def render_probe(self, context): ("scene.render.resolution_percentage", 100), ("scene.render.image_settings.file_format", "HDR"), ("scene.render.filepath", output_path), - ("scene.render.use_compositing", False), - ("scene.use_nodes", False) + ("scene.render.use_compositing", use_compositor), + ("scene.use_nodes", use_compositor) ] for (prop, value) in overrides: @@ -277,7 +389,356 @@ def render_probe(self, context): rsetattr(bpy.context, prop, value) self.report({'INFO'}, 'Baking probe %s' % probe.name) - bpy.ops.render.render("INVOKE_DEFAULT", write_still=True) + self.probe_is_setup = True + + +class OpenReflectionProbeEnvMap(Operator): + bl_idname = "image.hubs_open_reflection_probe_envmap" + bl_label = "Open EnvMap" + bl_options = {'REGISTER', 'UNDO'} + + filepath: StringProperty(subtype="FILE_PATH") + files: CollectionProperty(type=PropertyGroup) + filter_folder: BoolProperty(default=True, options={"HIDDEN"}) + filter_image: BoolProperty(default=True, options={"HIDDEN"}) + + relative_path: BoolProperty( + name="Relative Path", description="Select the file relative to the blend file", default=True) + + disabled_message = "Can't open/assign environment maps to linked reflection probes. Please make it local first" + + @ classmethod + def description(cls, context, properties): + description_text = "Load an external image to be used as this probe's environment map" + if bpy.app.version < (3, 0, 0) and is_linked(context.active_object): + description_text += f"\nDisabled: {cls.disabled_message}" + + return description_text + + @ classmethod + def poll(cls, context): + if is_linked(context.active_object): + if bpy.app.version >= (3, 0, 0): + cls.poll_message_set(f"{cls.disabled_message}.") + return False + + probe_component = context.active_object.hubs_component_reflection_probe + if probe_component.locked: + return False + + return True + + def draw(self, context): + layout = self.layout + layout.prop(self, "relative_path") + + def execute(self, context): + dirname = os.path.dirname(self.filepath) + + if not self.files[0].name: + self.report({'INFO'}, "Open EnvMap cancelled. No image selected.") + return {'CANCELLED'} + + probe_component = context.active_object.hubs_component_reflection_probe + old_img = probe_component['envMapTexture'] + + # Load/Reload the first image and assign it to the reflection probe, then load the rest of the images if they're not already loaded. This mimics Blender's default open files behavior. + primary_filepath = os.path.join(dirname, self.files[0].name) + primary_img = bpy.data.images.load( + filepath=primary_filepath, check_existing=True) + primary_img.reload() + probe_component['envMapTexture'] = primary_img + + for f in self.files[1:]: + img = bpy.data.images.load(filepath=os.path.join( + dirname, f.name), check_existing=True) + + update_image_editors(old_img, primary_img) + redraw_component_ui(context) + return {'FINISHED'} + + def invoke(self, context, event): + self.filepath = "" + context.window_manager.fileselect_add(self) + return {'RUNNING_MODAL'} + + +class ImportReflectionProbeEnvMaps(Operator): + bl_idname = "image.hubs_import_reflection_probe_envmaps" + bl_label = "Import EnvMaps" + bl_description = "Batch open environment maps and assign them to their corresponding reflection probes" + bl_options = {'REGISTER', 'UNDO'} + + filepath: StringProperty(subtype="FILE_PATH") + files: CollectionProperty(type=PropertyGroup) + filter_folder: BoolProperty(default=True, options={"HIDDEN"}) + filter_image: BoolProperty(default=True, options={"HIDDEN"}) + + relative_path: BoolProperty( + name="Relative Path", description="Select the file relative to the blend file", default=True) + overwrite_images: BoolProperty( + name="Overwrite Probe Images", + description="Overwrite/Remove the current images of the reflection probes being imported to", default=False) + + def draw(self, context): + layout = self.layout + layout.prop(self, "relative_path") + layout.prop(self, "overwrite_images") + layout.separator() + info_col = layout.column() + info_col.scale_y = 0.7 + info_col.label(text="Load the selected images", icon='INFO') + info_col.label(text="into the matching probes.", icon='BLANK1') + info_col.label(text="Images must start with the", icon='BLANK1') + info_col.label(text="respective probe's name", icon='BLANK1') + info_col.label(text="formatted like this:", icon='BLANK1') + info_col.label(text="\" - EnvMap\"", icon='BLANK1') + + def execute(self, context): + dirname = os.path.dirname(self.filepath) + + if not self.files[0].name: + self.report( + {'INFO'}, "Import EnvMaps cancelled. No images selected.") + return {'CANCELLED'} + + num_imported = 0 + num_failed = 0 + probes = get_probes(all_objects=True) + for f in self.files: + imported_file = False + for probe in probes: + if f.name.startswith(f"{probe.name} - EnvMap"): + probe_component = probe.hubs_component_reflection_probe + old_img = probe_component['envMapTexture'] + + img = bpy.data.images.load( + filepath=os.path.join(dirname, f.name)) + probe_component['envMapTexture'] = img + + if old_img: + if self.overwrite_images: + if old_img.name == f.name: + img.name = f.name + + old_img.user_remap(img) + + if not is_linked(old_img): + bpy.data.images.remove(old_img) + + else: + update_image_editors(old_img, img) + + imported_file = True + num_imported += 1 + self.report( + {'INFO'}, f"Imported {f.name} to probe {probe.name}") + + if not imported_file: + num_failed += 1 + self.report( + {'WARNING'}, + f"Warning: Couldn't import {f.name}. The corresponding probe either doesn't exist or is locked/linked.") + + if num_failed: + final_report_message = f"Warning: {num_failed} environment maps failed to import. {num_imported} environment maps imported to probes" + else: + final_report_message = f"{num_imported} environment maps imported to probes" + self.report({'INFO'}, final_report_message) + + redraw_component_ui(context) + return {'FINISHED'} + + def invoke(self, context, event): + self.filepath = "" + context.window_manager.fileselect_add(self) + return {'RUNNING_MODAL'} + + +class ExportReflectionProbeEnvMaps(Operator): + bl_idname = "image.hubs_export_reflection_probe_envmaps" + bl_label = "Export EnvMaps" + bl_description = "Batch save out the current environment maps from reflection probes" + + directory: StringProperty(subtype="DIR_PATH") + filter_folder: BoolProperty(default=True, options={"HIDDEN"}) + filter_image: BoolProperty(default=True, options={"HIDDEN"}) + + batch_type: EnumProperty( + name="Batch Type", + description="Choose which probes to export", + items=( + ('ALL', "All Probes", + "Export the environment maps from all probes in the current view layer"), + ('SELECTED', "Selected Probes", + "Export the environment maps from the selected probes"), + ), + default='ALL', + ) + + include_locked: BoolProperty( + name="Include Locked", description="Include environment maps from locked probes", default=False) + + naming_scheme: StringProperty( + name="Output Naming Scheme", + description="How exported files will be named", + default=" - EnvMap.hdr" + ) + + def draw(self, context): + layout = self.layout + layout.label(text="Export EnvMaps for:") + layout.prop(self, "batch_type", expand=True) + layout.prop(self, "include_locked") + layout.separator() + row = layout.row() + row.prop(self, "naming_scheme", text="To") + row.enabled = False + + def execute(self, context): + if self.batch_type == 'SELECTED': + probes = [ob for ob in get_probes( + include_locked=self.include_locked) if ob in context.selected_objects] + else: + probes = get_probes(include_locked=self.include_locked) + + if not probes: + self.report( + {'WARNING'}, "Export EnvMaps cancelled. No local probes matching the criteria were found.") + return {'CANCELLED'} + + num_exported = 0 + for probe in probes: + envMapTexture = probe.hubs_component_reflection_probe.envMapTexture + if envMapTexture: + export_path = f"{self.directory}/{probe.name} - EnvMap.hdr" + orig_filepath_raw = envMapTexture.filepath_raw + envMapTexture.filepath_raw = export_path + envMapTexture.save() + envMapTexture.filepath_raw = orig_filepath_raw + self.report( + {'INFO'}, f"Exported environment map for probe {probe.name}") + num_exported += 1 + else: + self.report( + {'WARNING'}, f"Reflection probe {probe.name} doesn't have an environment map to export") + self.report( + {'INFO'}, f"Exported {num_exported} environment maps to {self.directory}") + return {'FINISHED'} + + def invoke(self, context, event): + context.window_manager.fileselect_add(self) + return {'RUNNING_MODAL'} + + +class SelectMismatchedReflectionProbes(Operator): + bl_idname = "wm.hubs_select_mismatched_reflection_probes" + bl_label = "Select Mismatched Reflection Probes" + bl_description = "Select reflection probes in the current view layer with environment maps that don't match the global resolution" + bl_options = {'REGISTER', 'UNDO'} + + select_all: BoolProperty(default=False) + mismatched_probe_indexes: StringProperty() + + def execute(self, context): + if self.select_all: + bpy.ops.object.select_all(action='DESELECT') + probes = get_probes(include_locked=True, include_linked=True) + for index in map(int, self.mismatched_probe_indexes.split(',')): + probe = probes[index] + probe.select_set(True) + context.view_layer.objects.active = None + return {'FINISHED'} + + probe = context.probe + + # Check if the probe can be selected. + probe.select_set(True) + if not probe.select_get(): + self.report({'INFO'}, f"Couldn't select probe {probe.name_full}") + return {'CANCELLED'} + + bpy.ops.object.select_all(action='DESELECT') + probe.select_set(True) + context.view_layer.objects.active = probe + return {'FINISHED'} + + def invoke(self, context, event): + probes = get_probes(include_locked=True, include_linked=True) + + def draw(self, context): + layout = self.layout + layout.label(text="Select Mismatched Probes") + layout.separator() + + props = context.scene.hubs_scene_reflection_probe_properties + mismatched_probe_indexes = [] + mismatched_probes = [] + for i, probe in enumerate(probes): + envmap = probe.hubs_component_reflection_probe.envMapTexture + if envmap: + envmap_resolution = f"{envmap.size[0]}x{envmap.size[1]}" + if envmap_resolution != props.resolution: + mismatched_probe_indexes.append(i) + mismatched_probes.append(probe) + + is_selected = (context.selected_objects == mismatched_probes and not context.active_object) + icon = 'RADIOBUT_ON' if is_selected else 'RADIOBUT_OFF' + op = layout.operator( + SelectMismatchedReflectionProbes.bl_idname, text="Select All", icon=icon) + op.select_all = True + op.mismatched_probe_indexes = ','.join( + map(str, mismatched_probe_indexes)) + + layout.separator() + + for probe in mismatched_probes: + is_selected = (probe == context.active_object and probe in context.selected_objects and len( + context.selected_objects) == 1) + icon = 'RADIOBUT_ON' if is_selected else 'RADIOBUT_OFF' + row = layout.row() + row.context_pointer_set("probe", probe) + op = row.operator( + SelectMismatchedReflectionProbes.bl_idname, text=probe.name_full, icon=icon) + op.select_all = False + op.mismatched_probe_indexes = '' + + bpy.context.window_manager.popup_menu(draw) + return {'RUNNING_MODAL'} + + +class ReflectionProbeGizmo(Gizmo): + """ReflectionProbe gizmo""" + bl_idname = "GIZMO_GT_hba_reflectionprobe_gizmo" + bl_target_properties = ( + {"id": "influence_distance", "type": 'FLOAT'}, + ) + + __slots__ = ( + "hubs_gizmo_shape", + "custom_shape", + ) + + def _update_offset_matrix(self): + loc, rot, _ = self.matrix_basis.decompose() + radius = self.target_get_value("influence_distance") + mat_out = Matrix.Translation( + loc) @ rot.normalized().to_matrix().to_4x4() @ Matrix.Diagonal(Vector((radius, radius, radius))).to_4x4() + self.matrix_basis = mat_out + + def draw(self, context): + self._update_offset_matrix() + self.draw_custom_shape(self.custom_shape) + + def draw_select(self, context, select_id): + self._update_offset_matrix() + self.draw_custom_shape(self.custom_shape, select_id=select_id) + + def setup(self): + if hasattr(self, "hubs_gizmo_shape"): + self.custom_shape = self.new_custom_shape( + 'TRIS', self.hubs_gizmo_shape) + class ReflectionProbe(HubsComponent): _definition = { @@ -286,7 +747,8 @@ class ReflectionProbe(HubsComponent): 'category': Category.SCENE, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT], - 'icon': 'MATERIAL' + 'icon': 'MATERIAL', + 'version': (1, 0, 0) } envMapTexture: PointerProperty( @@ -295,20 +757,110 @@ class ReflectionProbe(HubsComponent): type=Image ) + locked: BoolProperty( + name="Probe Lock", + description="Toggle whether new environment maps can be assigned/baked to this reflection probe", default=False) + + influence_distance: FloatProperty( + name="Influence Distance", + description="Influence distance of the probe", + default=2.5, + min=0, + subtype="DISTANCE", + unit="LENGTH" + ) + + clipStart: FloatProperty( + name="Clip Start", + description="Probe clip start, below which objects won't appear in the reflections", + default=0.8, + min=0.001, + subtype="DISTANCE", + unit="LENGTH" + ) + + clipEnd: FloatProperty( + name="Clip Start", + description="Probe clip end, beyond which objects won't appear in the reflections", + default=40, + min=0.001, + subtype="DISTANCE", + unit="LENGTH" + ) + def draw(self, context, layout, panel): row = layout.row() - row.label(text="Resolution settings, as well as the option to bake all reflection probes at once, can be accessed from the scene settings.", - icon='INFO') - super().draw(context, layout, panel) + row.alignment = 'LEFT' + icon = 'LOCKED' if self.locked else 'UNLOCKED' + row.prop(self, "locked", text='', icon=icon, toggle=True) + + if not context.scene.hubs_component_environment_settings.envMapTexture: + row = layout.row() + row.alert = True + row.label( + text="No scene environment map found. Please add an environment map to the environment settings scene component for reflection probes to work in Hubs.", + icon='ERROR') + + if any(context.active_object.matrix_world.to_euler()): + row = layout.row() + row.alert = True + row.label(text="Rotation detected! The reflection probe must have no rotation applied to it.", + icon='ERROR') + + row = layout.row() + row.label( + text="Resolution settings, as well as the option to bake all reflection probes at once, can be accessed from the scene settings.", + icon='INFO') + + row = layout.row(align=True) + sub_row = row.row(align=True) + sub_row.prop(self, "envMapTexture") + if is_linked(context.active_object): + # Manually disable the PointerProperty, needed for Blender 3.2+. + sub_row.enabled = False + + if is_linked(self.envMapTexture): + sub_row = row.row(align=True) + sub_row.enabled = False + add_link_indicator(sub_row, self.envMapTexture) + row.operator("image.hubs_open_reflection_probe_envmap", + text='', icon='FILE_FOLDER') + + if self.locked: + row.enabled = False + + envmap = self.envMapTexture + if envmap: + envmap_resolution = f"{envmap.size[0]}x{envmap.size[1]}" + props = context.scene.hubs_scene_reflection_probe_properties + if not envmap.has_data: + row = layout.row() + row.alert = True + row.label(text="Can't load image.", + icon='ERROR') + elif envmap_resolution != props.resolution: + row = layout.row() + row.alert = True + row.label(text=f"{envmap_resolution} EnvMap doesn't match the scene probe resolution.", + icon='ERROR') + + layout.prop(self, "influence_distance") + layout.prop(self, "clipStart") + layout.prop(self, "clipEnd") global bake_mode + row = layout.row() + row.context_pointer_set("bake_active_probe", None) bake_msg = "Baking..." if probe_baking and bake_mode == 'ACTIVE' else "Bake" - bake_op = layout.operator( + bake_op = row.operator( "render.hubs_render_reflection_probe", text=bake_msg ) bake_op.bake_mode = 'ACTIVE' + if self.locked: + row.enabled = False + if not hasattr(bpy.context.scene, "cycles"): row = layout.row() row.alert = True @@ -316,32 +868,78 @@ def draw(self, context, layout, panel): icon='ERROR') def gather(self, export_settings, object): + from ...io.utils import gather_texture return { - "size": object.data.influence_distance, + "size": self.influence_distance, + "clipStart": self.clipStart, + "clipEnd": self.clipEnd, "envMapTexture": { "__mhc_link_type": "texture", - "index": io.utils.gather_texture(self.envMapTexture, export_settings) + "index": gather_texture(self.envMapTexture, export_settings) } } + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + + if host.type == 'LIGHT_PROBE' and instance_version < (1, 0, 1): + self.influence_distance = self.data.influence_distance + self.clipStart = self.data.clip_start + self.clipEnd = self.data.clip_end + + if migration_type != MigrationType.GLOBAL or is_linked(ob) or type(ob) == bpy.types.Armature: + host_reference = get_host_reference_message(panel_type, host, ob=ob) + migration_report.append( + f"Warning: The Reflection Probe component's influence_distance, clip_start and clip_end properties on the {panel_type.value} {host_reference} may not have migrated correctly") + + return migration_occurred + @ classmethod def draw_global(cls, context, layout, panel): panel_type = PanelType(panel.bl_context) - if len(get_probes()) > 0 and panel_type == PanelType.SCENE: + probes = get_probes(include_locked=True, include_linked=True) + if len(probes) > 0 and panel_type == PanelType.SCENE: row = layout.row() col = row.box().column() row = col.row() row.label(text="Reflection Probes Resolution:") + + if not context.scene.hubs_component_environment_settings.envMapTexture: + row = col.row() + row.alert = True + row.label( + text="No scene environment map found. Please add an environment map to the environment settings scene component for reflection probes to work in Hubs.", + icon='ERROR') + row = col.row() row.prop(context.scene.hubs_scene_reflection_probe_properties, "resolution", text="") props = context.scene.hubs_scene_reflection_probe_properties - if props.resolution != props.render_resolution: + mismatched_probes = 0 + for probe in probes: + envmap = probe.hubs_component_reflection_probe.envMapTexture + if envmap: + envmap_resolution = f"{envmap.size[0]}x{envmap.size[1]}" + if envmap_resolution != props.resolution: + mismatched_probes += 1 + + if mismatched_probes: + if props.resolution != props.render_resolution: + row = col.row() + row.alert = True + row.label(text="Reflection probe resolution has changed. Bake again to apply the new resolution.", + icon='ERROR') row = col.row() row.alert = True - row.label(text="Reflection probe resolution has changed. Bake again to apply the new resolution.", + row.label(text=f"{mismatched_probes} probes don't match the current resolution.", icon='ERROR') + row.operator("wm.hubs_select_mismatched_reflection_probes", + text="", icon='RESTRICT_SELECT_OFF') + + row = col.row() + row.prop( + context.scene.hubs_scene_reflection_probe_properties, "use_compositor") global bake_mode @@ -365,19 +963,78 @@ def draw_global(cls, context, layout, panel): row.label(text="Baking requires Cycles addon to be enabled.", icon='ERROR') - @ classmethod - def poll(cls, context, panel_type): - return context.object.type == 'LIGHT_PROBE' + @classmethod + def create_gizmo(cls, ob, gizmo_group): + gizmo = gizmo_group.gizmos.new(ReflectionProbeGizmo.bl_idname) + setattr(gizmo, "hubs_gizmo_shape", reflection_probe.SHAPE) + gizmo.setup() + gizmo.use_draw_scale = False + gizmo.use_draw_modal = False + gizmo.color = (0.5, 0.8, 0.2) + gizmo.alpha = 1.0 + gizmo.scale_basis = 1.0 + gizmo.hide_select = True + gizmo.color_highlight = (0.5, 0.8, 0.2) + gizmo.alpha_highlight = 0.5 + + gizmo.target_set_prop( + "influence_distance", ob.hubs_component_reflection_probe, "influence_distance") + + return gizmo + + @classmethod + def gather_import(cls, gltf, blender_object, component_name, component_value): + blender_component = import_component( + component_name, blender_object) + images = {} + from io_scene_gltf2.blender.imp.gltf2_blender_image import BlenderImage + for gltf_texture in gltf.data.textures: + extensions = gltf_texture.extensions + source = None + if extensions: + MOZ_texture_rgbe = extensions.get('MOZ_texture_rgbe') + if MOZ_texture_rgbe: + source = MOZ_texture_rgbe['source'] + BlenderImage.create(gltf, source) + pyimg = gltf.data.images[source] + blender_image_name = pyimg.blender_image_name + images[source] = blender_image_name + for property_name, property_value in component_value.items(): + if isinstance(property_value, dict) and property_value['__mhc_link_type'] == "texture": + blender_image_name = images[property_value['index']] + blender_image = bpy.data.images[blender_image_name] + setattr(blender_component, property_name, blender_image) + else: + assign_property(gltf.vnodes, blender_component, + property_name, property_value) @ staticmethod def register(): + bpy.utils.register_class(ReflectionProbeGizmo) bpy.utils.register_class(BakeProbeOperator) bpy.utils.register_class(ReflectionProbeSceneProps) + bpy.utils.register_class(OpenReflectionProbeEnvMap) + bpy.utils.register_class(ImportReflectionProbeEnvMaps) + bpy.utils.register_class(ExportReflectionProbeEnvMaps) + bpy.utils.register_class(SelectMismatchedReflectionProbes) bpy.types.Scene.hubs_scene_reflection_probe_properties = PointerProperty( type=ReflectionProbeSceneProps) + bpy.types.TOPBAR_MT_file_import.append(import_menu_draw) + bpy.types.TOPBAR_MT_file_export.append(export_menu_draw) + from ...io.gltf_exporter import glTF2ExportUserExtension + glTF2ExportUserExtension.add_excluded_property("hubs_scene_reflection_probe_properties") @ staticmethod def unregister(): bpy.utils.unregister_class(BakeProbeOperator) bpy.utils.unregister_class(ReflectionProbeSceneProps) + bpy.utils.unregister_class(OpenReflectionProbeEnvMap) + bpy.utils.unregister_class(ImportReflectionProbeEnvMaps) + bpy.utils.unregister_class(ExportReflectionProbeEnvMaps) + bpy.utils.unregister_class(SelectMismatchedReflectionProbes) + bpy.utils.unregister_class(ReflectionProbeGizmo) del bpy.types.Scene.hubs_scene_reflection_probe_properties + bpy.types.TOPBAR_MT_file_import.remove(import_menu_draw) + bpy.types.TOPBAR_MT_file_export.remove(export_menu_draw) + from ...io.gltf_exporter import glTF2ExportUserExtension + glTF2ExportUserExtension.remove_excluded_property("hubs_scene_reflection_probe_properties") diff --git a/addons/io_hubs_addon/components/definitions/scale_audio_feedback.py b/addons/io_hubs_addon/components/definitions/scale_audio_feedback.py index c61b353a..de8d0089 100644 --- a/addons/io_hubs_addon/components/definitions/scale_audio_feedback.py +++ b/addons/io_hubs_addon/components/definitions/scale_audio_feedback.py @@ -10,7 +10,8 @@ class ScaleAudioFeedback(HubsComponent): 'category': Category.AVATAR, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'GRAPH' + 'icon': 'GRAPH', + 'version': (1, 0, 0) } minScale: FloatProperty(name="Min Scale", diff --git a/addons/io_hubs_addon/components/definitions/shadow.py b/addons/io_hubs_addon/components/definitions/shadow.py index e87d5420..c01bf056 100644 --- a/addons/io_hubs_addon/components/definitions/shadow.py +++ b/addons/io_hubs_addon/components/definitions/shadow.py @@ -10,7 +10,8 @@ class Shadow(HubsComponent): 'category': Category.OBJECT, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT], - 'icon': 'MOD_MASK' + 'icon': 'MOD_MASK', + 'version': (1, 0, 0) } cast: BoolProperty( diff --git a/addons/io_hubs_addon/components/definitions/simple_water.py b/addons/io_hubs_addon/components/definitions/simple_water.py index 5ae28f21..43198589 100644 --- a/addons/io_hubs_addon/components/definitions/simple_water.py +++ b/addons/io_hubs_addon/components/definitions/simple_water.py @@ -10,12 +10,13 @@ class SimpleWater(HubsComponent): 'category': Category.ELEMENTS, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'MOD_FLUIDSIM' + 'icon': 'MOD_FLUIDSIM', + 'version': (1, 0, 0) } color: FloatVectorProperty(name="Color", description="Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, diff --git a/addons/io_hubs_addon/components/definitions/skybox.py b/addons/io_hubs_addon/components/definitions/skybox.py index 29fdb5cb..f5e2c963 100644 --- a/addons/io_hubs_addon/components/definitions/skybox.py +++ b/addons/io_hubs_addon/components/definitions/skybox.py @@ -10,7 +10,8 @@ class Skybox(HubsComponent): 'category': Category.SCENE, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'MAT_SPHERE_SKY' + 'icon': 'MAT_SPHERE_SKY', + 'version': (1, 0, 0) } azimuth: FloatProperty(name="Time of Day", diff --git a/addons/io_hubs_addon/components/definitions/spawner.py b/addons/io_hubs_addon/components/definitions/spawner.py index 4cd0d41f..8a81dadb 100644 --- a/addons/io_hubs_addon/components/definitions/spawner.py +++ b/addons/io_hubs_addon/components/definitions/spawner.py @@ -12,11 +12,13 @@ class Spawner(HubsComponent): 'category': Category.ELEMENTS, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'MOD_PARTICLE_INSTANCE' + 'icon': 'MOD_PARTICLE_INSTANCE', + 'version': (1, 0, 0) } src: StringProperty( - name="URL", description="Source image URL", default="https://mozilla.org") + name="Model Source", description="The web address (URL) of the glTF to be spawned", + default="https://mozilla.org") applyGravity: BoolProperty( name="Apply Gravity", description="Apply gravity to spawned object", default=False) @@ -29,23 +31,20 @@ def gather(self, export_settings, object): } } - @classmethod - def migrate(cls, version): - if version < (1, 0, 0): - def migrate_data(ob): - if cls.get_name() in ob.hubs_component_list.items: - ob.hubs_component_spawner.applyGravity = ob.hubs_component_spawner[ - 'mediaOptions']['applyGravity'] - - for ob in bpy.data.objects: - migrate_data(ob) + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + try: + self.applyGravity = self[ + 'mediaOptions']['applyGravity'] + except Exception: # applyGravity was never saved, so it must have been left on the default value: False. + self.applyGravity = False - if ob.type == 'ARMATURE': - for bone in ob.data.bones: - migrate_data(bone) + return migration_occurred @classmethod - def gather_import(cls, import_settings, blender_object, component_name, component_value): + def gather_import(cls, gltf, blender_object, component_name, component_value): blender_component = import_component( component_name, blender_object) @@ -54,5 +53,5 @@ def gather_import(cls, import_settings, blender_object, component_name, componen setattr(blender_component, "applyGravity", property_value["applyGravity"]) else: - assign_property(import_settings.vnodes, blender_component, + assign_property(gltf.vnodes, blender_component, property_name, property_value) diff --git a/addons/io_hubs_addon/components/definitions/spoke/box_collider.py b/addons/io_hubs_addon/components/definitions/spoke/box_collider.py new file mode 100644 index 00000000..8ed349ce --- /dev/null +++ b/addons/io_hubs_addon/components/definitions/spoke/box_collider.py @@ -0,0 +1,17 @@ +from ...types import NodeType +from ...hubs_component import HubsComponent +from ...utils import add_component +from ....io.utils import assign_property, import_component + + +class BoxCollider(HubsComponent): + _definition = { + 'name': 'box-collider' + } + + @classmethod + def gather_import(cls, gltf, blender_object, component_name, component_value): + add_component(blender_object, 'ammo-shape') + blender_component = import_component('ammo-shape', blender_object) + assign_property(gltf.vnodes, blender_component, + "type", 'box') diff --git a/addons/io_hubs_addon/components/definitions/spoke/spawn_point.py b/addons/io_hubs_addon/components/definitions/spoke/spawn_point.py new file mode 100644 index 00000000..32e6c65b --- /dev/null +++ b/addons/io_hubs_addon/components/definitions/spoke/spawn_point.py @@ -0,0 +1,17 @@ +from ...types import NodeType +from ...hubs_component import HubsComponent +from ...utils import add_component +from ....io.utils import assign_property, import_component + + +class SpawnPoint(HubsComponent): + _definition = { + 'name': 'spawn-point' + } + + @classmethod + def gather_import(cls, gltf, blender_object, component_name, component_value): + add_component(blender_object, 'waypoint') + blender_component = import_component('waypoint', blender_object) + assign_property(gltf.vnodes, blender_component, + "canBeSpawnPoint", True) diff --git a/addons/io_hubs_addon/components/definitions/spot_light.py b/addons/io_hubs_addon/components/definitions/spot_light.py index 5686d266..f361a86e 100644 --- a/addons/io_hubs_addon/components/definitions/spot_light.py +++ b/addons/io_hubs_addon/components/definitions/spot_light.py @@ -1,3 +1,5 @@ +from ..models import spot_light +from ..gizmos import CustomModelGizmo, bone_matrix_world, update_gizmos from bpy.props import FloatVectorProperty, FloatProperty, BoolProperty, IntVectorProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType @@ -11,16 +13,18 @@ class SpotLight(HubsComponent): 'category': Category.LIGHTS, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'LIGHT_SPOT' + 'icon': 'LIGHT_SPOT', + 'version': (1, 0, 0) } color: FloatVectorProperty(name="Color", description="Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4, min=0, - max=1) + max=1, + update=lambda self, context: update_gizmos()) intensity: FloatProperty(name="Intensity", description="Intensity", @@ -36,23 +40,19 @@ class SpotLight(HubsComponent): innerConeAngle: FloatProperty( name="Cone Inner Angle", - description="A double value describing the angle, in degrees, of a cone inside of which there will be no volume reduction.", + description="A double value describing the angle, in degrees, of a cone inside of which there will be no volume reduction", subtype="ANGLE", default=0.0, min=0.0, - soft_min=0.0, - max=pi / 2, - soft_max=pi / 2) + max=pi / 2) outerConeAngle: FloatProperty( name="Cone Outer Angle", - description="A double value describing the angle, in degrees, of a cone outside of which the volume will be reduced by a constant value, defined by the coneOuterGain attribute.", + description="A double value describing the angle, in degrees, of a cone outside of which the volume will be reduced by a constant value, defined by the coneOuterGain attribute", subtype="ANGLE", default=pi / 4, min=0.0, - soft_min=0.0, - max=pi / 2, - soft_max=pi / 2) + max=pi / 2) decay: FloatProperty(name="Decay", description="Decay", @@ -73,3 +73,30 @@ class SpotLight(HubsComponent): shadowRadius: FloatProperty(name="Shadow Radius", description="Shadow Radius", default=1.0) + + @classmethod + def update_gizmo(cls, ob, bone, target, gizmo): + if bone: + mat = bone_matrix_world(ob, bone) + else: + mat = ob.matrix_world.copy() + + gizmo.hide = not ob.visible_get() + gizmo.matrix_basis = mat + + @classmethod + def create_gizmo(cls, ob, gizmo_group): + gizmo = gizmo_group.gizmos.new(CustomModelGizmo.bl_idname) + gizmo.object = ob + setattr(gizmo, "hubs_gizmo_shape", spot_light.SHAPE) + gizmo.setup() + gizmo.use_draw_scale = False + gizmo.use_draw_modal = False + gizmo.color = getattr(ob, cls.get_id()).color[:3] + gizmo.alpha = 0.5 + gizmo.scale_basis = 1.0 + gizmo.hide_select = True + gizmo.color_highlight = (0.8, 0.8, 0.8) + gizmo.alpha_highlight = 1.0 + + return gizmo diff --git a/addons/io_hubs_addon/components/definitions/text.py b/addons/io_hubs_addon/components/definitions/text.py index f406e042..94b1baa6 100644 --- a/addons/io_hubs_addon/components/definitions/text.py +++ b/addons/io_hubs_addon/components/definitions/text.py @@ -1,6 +1,10 @@ from bpy.props import FloatProperty, EnumProperty, FloatVectorProperty, StringProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType +from ...io.utils import assign_property, import_component + +SPOKE_PROPS_TO_FIX = ['outlineBlur', 'outlineOffsetX', + 'outlineOffsetY', 'outlineWidth', 'strokeWidth'] class Text(HubsComponent): @@ -10,23 +14,24 @@ class Text(HubsComponent): 'category': Category.ELEMENTS, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'FONT_DATA' + 'icon': 'FONT_DATA', + 'version': (1, 0, 0) } value: StringProperty( name="Text", - description="The string of text to be rendered. Newlines and repeating whitespace characters are honored.", + description="The string of text to be rendered. Newlines and repeating whitespace characters are honored", default="Hello world!") fontSize: FloatProperty( name="Font Size", - description="Font size, in local meters.", + description="Font size, in local meters", unit='LENGTH', default=0.075) textAlign: EnumProperty( name="Alignment", - description="The horizontal alignment of each line of text within the overall text bounding box.", + description="The horizontal alignment of each line of text within the overall text bounding box", items=[("left", "Left", "Text will be aligned to the left"), ("right", "Right", "Text will be aligned to the right"), ("center", "Center", "Text will be centered"), @@ -35,65 +40,67 @@ class Text(HubsComponent): anchorX: EnumProperty( name="Anchor X", - description="Defines the horizontal position in the text block that should line up with the local origin.", - items=[("left", "Left", "Left side of the text will be at the pivot point of this object."), + description="Defines the horizontal position in the text block that should line up with the local origin", + items=[("left", "Left", "Left side of the text will be at the pivot point of this object"), ("center", "Center", - "Center of the text will be at the pivot point of this object."), - ("right", "Right", "Right side of the text will be at the pivot point of this object.")], + "Center of the text will be at the pivot point of this object"), + ("right", "Right", "Right side of the text will be at the pivot point of this object")], default="center") anchorY: EnumProperty( name="Anchor Y", - description="Defines the vertical position in the text block that should line up with the local origin.", - items=[("top", "Top", "Top of the text will be at the pivot point of this object."), + description="Defines the vertical position in the text block that should line up with the local origin", + items=[("top", "Top", "Top of the text will be at the pivot point of this object"), ("top-baseline", "Top Baseline", - "Top baseline of the text will be at the pivot point of this object."), + "Top baseline of the text will be at the pivot point of this object"), ("middle", "Middle", - "Middle of the text will be at the pivot point of this object."), + "Middle of the text will be at the pivot point of this object"), ("bottom-baseline", "Bottom Baseline", - "Bottom baseline of the text will be at the pivot point of this object."), - ("bottom", "Bottom", "Bottom of the text will be at the pivot point of this object.")], + "Bottom baseline of the text will be at the pivot point of this object"), + ("bottom", "Bottom", "Bottom of the text will be at the pivot point of this object")], default="middle") color: FloatVectorProperty(name="Color", description="Color", - subtype='COLOR', + subtype='COLOR_GAMMA', default=(1.0, 1.0, 1.0, 1.0), size=4) letterSpacing: FloatProperty( name="Letter Space", - description="Sets a uniform adjustment to spacing between letters after kerning is applied, in local meters. Positive numbers increase spacing and negative numbers decrease it.", + description="Sets a uniform adjustment to spacing between letters after kerning is applied, in local meters. Positive numbers increase spacing and negative numbers decrease it", unit='LENGTH', default=0.0) lineHeight: FloatProperty( name="Line Height", - description="Sets the height of each line of text. If 0, a reasonable height based on the chosen font's ascender/descender metrics will be used, otherwise it is interpreted as a multiple of the fontSize.", + description="Sets the height of each line of text. If 0, a reasonable height based on the chosen font's ascender/descender metrics will be used, otherwise it is interpreted as a multiple of the fontSize", default=0.0) outlineWidth: StringProperty( name="Outline Width", - description="The width of an outline/halo to be drawn around each text glyph using the outlineColor and outlineOpacity. This can help improve readability when the text is displayed against a background of low or varying contrast.\n\n The width can be specified as either an absolute number in local units, or as a percentage string e.g. \"10%\" which is interpreted as a percentage of the fontSize.", + description="The width of an outline/halo to be drawn around each text glyph using the outlineColor and outlineOpacity. This can help improve readability when the text is displayed against a background of low or varying contrast.\n\n The width can be specified as either an absolute number in local units, or as a percentage string e.g. \"10%\" which is interpreted as a percentage of the fontSize", default="0") - outlineColor: FloatVectorProperty(name="Outline Color", - description="The color to use for the text outline when outlineWidth, outlineBlur, and/or outlineOffsetX/Y are set.", - subtype='COLOR', - default=(0.0, 0.0, 0.0, 1.0), - size=4) + outlineColor: FloatVectorProperty( + name="Outline Color", + description="The color to use for the text outline when outlineWidth, outlineBlur, and/or outlineOffsetX/Y are set", + subtype='COLOR_GAMMA', default=(0.0, 0.0, 0.0, 1.0), + size=4) outlineBlur: StringProperty(name="Outline Blur", - description="Specifies a blur radius applied to the outer edge of the text's outlineWidth. If the outlineWidth is zero, the blur will be applied at the glyph edge, like CSS's text-shadow blur radius. A blur plus a nonzero outlineWidth can give a solid outline with a fuzzy outer edge.\n\nThe blur radius can be specified as either an absolute number in local meters, or as a percentage string e.g. \"12%\" which is treated as a percentage of the fontSize.", + description="Specifies a blur radius applied to the outer edge of the text's outlineWidth. If the outlineWidth is zero, the blur will be applied at the glyph edge, like CSS's text-shadow blur radius. A blur plus a nonzero outlineWidth can give a solid outline with a fuzzy outer edge.\n\nThe blur radius can be specified as either an absolute number in local meters, or as a percentage string e.g. \"12%\" which is treated as a percentage of the fontSize", default="0") - outlineOffsetX: StringProperty(name="Outline X Offset", - description="This defines a horizontal offset of the text outline. Using an offset with outlineWidth: 0 creates a drop-shadow effect like CSS's text-shadow; also see outlineBlur.\n\n The offsets can be specified as either an absolute number in local units, or as a percentage string e.g. \"12%\" which is treated as a percentage of the fontSize.", - default="0") + outlineOffsetX: StringProperty( + name="Outline X Offset", + description="This defines a horizontal offset of the text outline. Using an offset with outlineWidth: 0 creates a drop-shadow effect like CSS's text-shadow; also see outlineBlur.\n\n The offsets can be specified as either an absolute number in local units, or as a percentage string e.g. \"12%\" which is treated as a percentage of the fontSize", + default="0") - outlineOffsetY: StringProperty(name="Outline Y Offset", - description="This defines a vertical offset of the text outline. Using an offset with outlineWidth: 0 creates a drop-shadow effect like CSS's text-shadow; also see outlineBlur.\n\n The offsets can be specified as either an absolute number in local units, or as a percentage string e.g. \"12%\" which is treated as a percentage of the fontSize.", - default="0") + outlineOffsetY: StringProperty( + name="Outline Y Offset", + description="This defines a vertical offset of the text outline. Using an offset with outlineWidth: 0 creates a drop-shadow effect like CSS's text-shadow; also see outlineBlur.\n\n The offsets can be specified as either an absolute number in local units, or as a percentage string e.g. \"12%\" which is treated as a percentage of the fontSize", + default="0") outlineOpacity: FloatProperty( name="Outline Opacity", @@ -104,55 +111,57 @@ class Text(HubsComponent): fillOpacity: FloatProperty( name="Fill Opacity", - description="Controls the opacity of just the glyph's fill area, separate from any configured strokeOpacity, outlineOpacity, and the material's opacity. A fillOpacity of 0 will make the fill invisible, leaving just the stroke and/or outline.", + description="Controls the opacity of just the glyph's fill area, separate from any configured strokeOpacity, outlineOpacity, and the material's opacity. A fillOpacity of 0 will make the fill invisible, leaving just the stroke and/or outline", min=0.0, max=1.0, default=1.0) - strokeWidth: StringProperty(name="Stroke Width", - description="Sets the width of a stroke drawn inside the edge of each text glyph, using the strokeColor and strokeOpacity.\n\n The width can be specified as either an absolute number in local units, or as a percentage string e.g. \"10%\" which is interpreted as a percentage of the fontSize.", - default="0") + strokeWidth: StringProperty( + name="Stroke Width", + description="Sets the width of a stroke drawn inside the edge of each text glyph, using the strokeColor and strokeOpacity.\n\n The width can be specified as either an absolute number in local units, or as a percentage string e.g. \"10%\" which is interpreted as a percentage of the fontSize", + default="0") strokeColor: FloatVectorProperty(name="Stroke Color", - description="The color of the text stroke, when strokeWidth is nonzero.", - subtype='COLOR', + description="The color of the text stroke, when strokeWidth is nonzero", + subtype='COLOR_GAMMA', default=(0.0, 0.0, 0.0, 1.0), size=4) strokeOpacity: FloatProperty(name="Stroke Opacity", - description="The opacity of the text stroke, when strokeWidth is nonzero.", + description="The opacity of the text stroke, when strokeWidth is nonzero", min=0.0, max=1.0, default=1.0) - textIndent: FloatProperty(name="Text Indent", - description="An indentation applied to the first character of each hard newline. Behaves like CSS text-indent.", - default=0.0) + textIndent: FloatProperty( + name="Text Indent", + description="An indentation applied to the first character of each hard newline. Behaves like CSS text-indent", + default=0.0) whiteSpace: EnumProperty( name="Wrapping", - description="Defines whether text should wrap when a line reaches the maxWidth.", - items=[("normal", "Normal", "Allow wrapping according to the 'wrapping mode'."), - ("nowrap", "No Wrapping", "Prevent wrapping.")], + description="Defines whether text should wrap when a line reaches the maxWidth", + items=[("normal", "Normal", "Allow wrapping according to the 'wrapping mode'"), + ("nowrap", "No Wrapping", "Prevent wrapping")], default="normal") overflowWrap: EnumProperty( name="Wrapping Mode", - description="Defines how text wraps if the whiteSpace property is 'normal'.", - items=[("normal", "Normal", "Break only at whitespace characters."), - ("break-word", "Break Word", "Allow breaking within words.")], + description="Defines how text wraps if the whiteSpace property is 'normal'", + items=[("normal", "Normal", "Break only at whitespace characters"), + ("break-word", "Break Word", "Allow breaking within words")], default="normal") opacity: FloatProperty( name="Opacity", - description="The opacity of the entire text object.", + description="The opacity of the entire text object", min=0.0, max=1.0, default=1.0) side: EnumProperty( name="Display Side", - description="Defines how text wraps if the whiteSpace property is 'normal'.", + description="Defines how text wraps if the whiteSpace property is 'normal'", items=[("front", "Show on front", "Text will be shown on the front (-Y)"), ("back", "Show on back", "Text will be shown on the back (+Y)"), ("double", "Show on both", "Text will be shown on both sides")], @@ -160,20 +169,31 @@ class Text(HubsComponent): maxWidth: FloatProperty( name="Max Width", - description="The maximum width of the text block, above which text may start wrapping according to the whiteSpace and overflowWrap properties.", + description="The maximum width of the text block, above which text may start wrapping according to the whiteSpace and overflowWrap properties", unit='LENGTH', default=1.0) curveRadius: FloatProperty( name="Curve Radius", - description="Defines a cylindrical radius along which the text's plane will be curved. Positive numbers put the cylinder's centerline (oriented vertically) that distance in front of the text, for a concave curvature, while negative numbers put it behind the text for a convex curvature. The centerline will be aligned with the text's local origin; you can use anchorX to offset it.", + description="Defines a cylindrical radius along which the text's plane will be curved. Positive numbers put the cylinder's centerline (oriented vertically) that distance in front of the text, for a concave curvature, while negative numbers put it behind the text for a convex curvature. The centerline will be aligned with the text's local origin; you can use anchorX to offset it", unit='LENGTH', default=0.0) direction: EnumProperty( name="Direction", - description="Sets the base direction for the text.", - items=[("auto", "Auto", "Use the default text direction defined by the system and font."), - ("ltr", "Left to Right", "Order text left to right."), - ("rtl", "Right to Left", "Order text right to left.")], + description="Sets the base direction for the tex", + items=[("auto", "Auto", "Use the default text direction defined by the system and font"), + ("ltr", "Left to Right", "Order text left to right"), + ("rtl", "Right to Left", "Order text right to left")], default="auto") + + @classmethod + def gather_import(cls, gltf, blender_object, component_name, component_value): + blender_component = import_component(component_name, blender_object) + + for property_name, property_value in component_value.items(): + if property_name in SPOKE_PROPS_TO_FIX and type(property_value == int): + property_value = str(property_value) + + assign_property(gltf.vnodes, blender_component, + property_name, property_value) diff --git a/addons/io_hubs_addon/components/definitions/uv_scroll.py b/addons/io_hubs_addon/components/definitions/uv_scroll.py index 000b4461..1f5b46ed 100644 --- a/addons/io_hubs_addon/components/definitions/uv_scroll.py +++ b/addons/io_hubs_addon/components/definitions/uv_scroll.py @@ -10,7 +10,8 @@ class UVScroll(HubsComponent): 'category': Category.ANIMATION, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT], - 'icon': 'TEXTURE_DATA' + 'icon': 'TEXTURE_DATA', + 'version': (1, 0, 0) } speed: FloatVectorProperty(name="Speed", @@ -25,15 +26,20 @@ class UVScroll(HubsComponent): subtype="XYZ", default=[0, 0]) + @classmethod + def poll(cls, panel_type, host, ob=None): + return hasattr(ob.data, 'materials') + def draw(self, context, layout, panel): has_texture = False for material in context.object.data.materials: - for node in material.node_tree.nodes: - if node.type == 'TEX_IMAGE': - has_texture = True + if material: + for node in material.node_tree.nodes: + if node.type == 'TEX_IMAGE' and node.image is not None: + has_texture = True super().draw(context, layout, panel) if not has_texture: layout.alert = True - layout.label(text='This component requires a texture', + layout.label(text='This component requires an image texture', icon='ERROR') diff --git a/addons/io_hubs_addon/components/definitions/video.py b/addons/io_hubs_addon/components/definitions/video.py index 5a3f33f5..bb847b11 100644 --- a/addons/io_hubs_addon/components/definitions/video.py +++ b/addons/io_hubs_addon/components/definitions/video.py @@ -1,3 +1,5 @@ +from ..models import video +from ..gizmos import CustomModelGizmo, bone_matrix_world from bpy.props import BoolProperty, EnumProperty, StringProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType @@ -13,11 +15,12 @@ class Video(HubsComponent): 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'deps': ['networked', 'audio-params'], - 'icon': 'FILE_MOVIE' + 'icon': 'FILE_MOVIE', + 'version': (1, 0, 0) } src: StringProperty( - name="Video URL", description="Video URL", default='https://') + name="Video URL", description="The web address of the video", default='https://mozilla.org') projection: EnumProperty( name="Projection", @@ -29,14 +32,46 @@ class Video(HubsComponent): description="Auto Play", default=True) - controls: BoolProperty(name="Show controls", - description="Show Controls", - default=True) + controls: BoolProperty( + name="Show controls", + description="When enabled, shows play/pause, skip forward/back, and, if the video contains audio, volume controls when hovering your cursor over it in Hubs", + default=True) loop: BoolProperty(name="Loop", description="Loop", default=True) + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migrate_networked(host) + + return migration_occurred + @classmethod - def migrate(cls, version): - migrate_networked(cls.get_name()) + def update_gizmo(cls, ob, bone, target, gizmo): + if bone: + mat = bone_matrix_world(ob, bone) + else: + mat = ob.matrix_world.copy() + + gizmo.hide = not ob.visible_get() + gizmo.matrix_basis = mat + + @classmethod + def create_gizmo(cls, ob, gizmo_group): + gizmo = gizmo_group.gizmos.new(CustomModelGizmo.bl_idname) + gizmo.object = ob + setattr(gizmo, "hubs_gizmo_shape", video.SHAPE) + gizmo.setup() + gizmo.use_draw_scale = False + gizmo.use_draw_modal = False + gizmo.color = (0.8, 0.8, 0.8) + gizmo.alpha = 0.5 + gizmo.scale_basis = 1.0 + gizmo.hide_select = True + gizmo.color_highlight = (0.8, 0.8, 0.8) + gizmo.alpha_highlight = 1.0 + + return gizmo diff --git a/addons/io_hubs_addon/components/definitions/video_texture_source.py b/addons/io_hubs_addon/components/definitions/video_texture_source.py index 47fdfbe0..c8caadf3 100644 --- a/addons/io_hubs_addon/components/definitions/video_texture_source.py +++ b/addons/io_hubs_addon/components/definitions/video_texture_source.py @@ -1,4 +1,4 @@ -from ..utils import children_recursive +from ..utils import children_recursive, get_host_reference_message from bpy.props import IntVectorProperty, IntProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType @@ -11,7 +11,8 @@ class VideoTextureSource(HubsComponent): 'category': Category.MEDIA, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'VIEW_CAMERA' + 'icon': 'VIEW_CAMERA', + 'version': (1, 0, 0) } resolution: IntVectorProperty(name="Resolution", @@ -23,19 +24,25 @@ class VideoTextureSource(HubsComponent): name="FPS", description="FPS", default=15) @classmethod - def poll(cls, context, panel_type): - ob = context.object + def poll(cls, panel_type, host, ob=None): if panel_type == PanelType.OBJECT: - return hasattr(ob, 'type') and (ob.type == 'CAMERA' or [x for x in children_recursive(ob) if x.type == "CAMERA" and not x.parent_bone]) + return hasattr( + host, 'type') and ( + host.type == 'CAMERA' or + [x for x in children_recursive(host) if x.type == "CAMERA" and not x.parent_bone]) elif panel_type == PanelType.BONE: - bone = context.active_bone - return [x for x in children_recursive(ob) if x.type == "CAMERA" and x.parent_bone == bone.name] + return [x for x in children_recursive(ob) if x.type == "CAMERA" and x.parent_bone == host.name] return False - def draw(self, context, layout, panel): - super().draw(context, layout, panel) - if not VideoTextureSource.poll(context, PanelType(panel.bl_context)): - col = layout.column() - col.alert = True - col.label(text='No camera found in the object hierarchy', - icon='ERROR') + @classmethod + def get_unsupported_host_message(cls, panel_type, host, ob=None): + host_reference = get_host_reference_message(panel_type, host, ob=ob) + if panel_type == PanelType.BONE: + object_message = "" + else: + object_message = " aren't cameras themselves and" + + host_type = panel_type.value + message = f"Warning: Unsupported component on {host_type} {host_reference}, {host_type}s that{object_message} don't have a camera somewhere in their child hierarchy don't support {cls.get_display_name()} components" + + return message diff --git a/addons/io_hubs_addon/components/definitions/video_texture_target.py b/addons/io_hubs_addon/components/definitions/video_texture_target.py index 14193afa..642d9f37 100644 --- a/addons/io_hubs_addon/components/definitions/video_texture_target.py +++ b/addons/io_hubs_addon/components/definitions/video_texture_target.py @@ -1,16 +1,17 @@ from bpy.props import BoolProperty, PointerProperty, EnumProperty, StringProperty from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType -from ..utils import has_component +from ..utils import has_component, is_linked +from ..ui import add_link_indicator from bpy.types import Object -from ...io.utils import gather_joint_property, gather_node_property +from ...utils import delayed_gather +from .video_texture_source import VideoTextureSource BLANK_ID = "pXph8WBzMu9fung" def filter_on_component(self, ob): - from .video_texture_source import VideoTextureSource dep_name = VideoTextureSource.get_name() if hasattr(ob, 'type') and ob.type == 'ARMATURE': if ob.mode == 'EDIT': @@ -29,12 +30,11 @@ def get_bones(self, context): global bones bones = [] count = 0 - from .video_texture_source import VideoTextureSource dep_name = VideoTextureSource.get_name() bones.append((BLANK_ID, "Select a bone", "None", "BLANK", count)) count += 1 - if self.srcNode.mode == 'EDIT': + if self.srcNode and self.srcNode.mode == 'EDIT': self.srcNode.update_from_editmode() found = False @@ -78,24 +78,28 @@ class VideoTextureTarget(HubsComponent): 'category': Category.MEDIA, 'node_type': NodeType.MATERIAL, 'panel_type': [PanelType.MATERIAL], - 'icon': 'IMAGE_DATA' + 'icon': 'IMAGE_DATA', + 'version': (1, 0, 0) } targetBaseColorMap: BoolProperty( - name="Override Base Color Map", description="Should the video texture override the base color map?", default=True) + name="Override Base Color Map", + description="Causes the video texture to be displayed in place of the base color map", default=True) targetEmissiveMap: BoolProperty( - name="Override Emissive Color Map", description="Should the video texture override the emissive map?", default=False) + name="Override Emissive Color Map", + description="Causes the video texture to be displayed in place of the emissive map", default=False) srcNode: PointerProperty( name="Source", - description="Node with a vide-texture-source to pull video from", + description="The object with a video-texture-source component to pull video from", type=Object, - poll=filter_on_component) + poll=filter_on_component, + update=lambda self, context: setattr(self, 'bone', BLANK_ID)) bone: EnumProperty( name="Bone", - description="Bone", + description="The bone with a video-texture-source component to pull video from. If a bone is selected, this will override the object source, otherwise if no bone is selected, the source will be pulled from the object", items=get_bones, get=get_bone, set=set_bone @@ -107,12 +111,20 @@ class VideoTextureTarget(HubsComponent): options={'HIDDEN'}) def draw(self, context, layout, panel): - from .video_texture_source import VideoTextureSource dep_name = VideoTextureSource.get_name() has_obj_component = False has_bone_component = False - layout.prop(data=self, property="srcNode") + row = layout.row(align=True) + sub_row = row.row(align=True) + sub_row.prop(data=self, property="srcNode") + if is_linked(self.id_data): + # Manually disable the PointerProperty, needed for Blender 3.2+. + sub_row.enabled = False + if is_linked(self.srcNode): + sub_row = row.row(align=True) + sub_row.enabled = False + add_link_indicator(sub_row, self.srcNode) if hasattr(self.srcNode, 'type'): has_obj_component = has_component(self.srcNode, dep_name) if self.srcNode.type == 'ARMATURE': @@ -125,12 +137,14 @@ def draw(self, context, layout, panel): col = layout.column() col.alert = True col.label( - text=f'The selected source doesn\'t have a {VideoTextureSource.get_display_name()} component', icon='ERROR') + text=f'The selected source doesn\'t have a {VideoTextureSource.get_display_name()} component', + icon='ERROR') elif self.srcNode and self.bone_id != BLANK_ID and not has_bone_component: col = layout.column() col.alert = True col.label( - text=f'The selected bone doesn\'t have a {VideoTextureSource.get_display_name()} component', icon='ERROR') + text=f'The selected bone doesn\'t have a {VideoTextureSource.get_display_name()} component', + icon='ERROR') layout.prop(data=self, property="targetBaseColorMap") layout.prop(data=self, property="targetEmissiveMap") @@ -142,8 +156,9 @@ def draw(self, context, layout, panel): col.label(text='This component requires a material', icon='ERROR') + @delayed_gather def gather(self, export_settings, object): - + from ...io.utils import gather_joint_property, gather_node_property return { 'targetBaseColorMap': self.targetBaseColorMap, 'targetEmissiveMap': self.targetEmissiveMap, diff --git a/addons/io_hubs_addon/components/definitions/visible.py b/addons/io_hubs_addon/components/definitions/visible.py index 479ed5e0..9642d6b9 100644 --- a/addons/io_hubs_addon/components/definitions/visible.py +++ b/addons/io_hubs_addon/components/definitions/visible.py @@ -3,6 +3,7 @@ from ..hubs_component import HubsComponent from ..types import Category, PanelType, NodeType + class Visible(HubsComponent): _definition = { 'name': 'visible', @@ -10,7 +11,8 @@ class Visible(HubsComponent): 'category': Category.OBJECT, 'node_type': NodeType.NODE, 'panel_type': [PanelType.OBJECT, PanelType.BONE], - 'icon': 'HIDE_OFF' + 'icon': 'HIDE_OFF', + 'version': (1, 0, 0) } visible: BoolProperty(name="Visible", default=True) diff --git a/addons/io_hubs_addon/components/definitions/waypoint.py b/addons/io_hubs_addon/components/definitions/waypoint.py index fa432d7b..fdf431db 100644 --- a/addons/io_hubs_addon/components/definitions/waypoint.py +++ b/addons/io_hubs_addon/components/definitions/waypoint.py @@ -15,7 +15,8 @@ class Waypoint(HubsComponent): 'panel_type': [PanelType.OBJECT, PanelType.BONE], 'gizmo': 'waypoint', 'icon': 'spawn-point.png', - 'deps': ['networked'] + 'deps': ['networked'], + 'version': (1, 0, 0) } canBeSpawnPoint: BoolProperty( @@ -35,7 +36,7 @@ class Waypoint(HubsComponent): willDisableMotion: BoolProperty( name="Disable Motion", - description="Avatars will not be able to move while occupying his waypoint", + description="Avatars will not be able to move while occupying this waypoint", default=False) willDisableTeleporting: BoolProperty( @@ -80,6 +81,10 @@ def create_gizmo(cls, ob, gizmo_group): return gizmo - @classmethod - def migrate(cls, version): - migrate_networked(cls.get_name()) + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + migration_occurred = False + if instance_version < (1, 0, 0): + migration_occurred = True + migrate_networked(host) + + return migration_occurred diff --git a/addons/io_hubs_addon/components/gizmos.py b/addons/io_hubs_addon/components/gizmos.py index f5b25f85..5e3fc75b 100644 --- a/addons/io_hubs_addon/components/gizmos.py +++ b/addons/io_hubs_addon/components/gizmos.py @@ -66,6 +66,9 @@ class HubsGizmoGroup(GizmoGroup): bl_region_type = 'WINDOW' bl_options = {'3D', 'PERSISTENT', 'SHOW_MODAL_ALL', 'SELECT'} + has_widgets = False + windows_processed = 0 + def add_gizmo(self, ob, host, host_type): for component_item in host.hubs_component_list.items: component_name = component_item.name @@ -74,33 +77,23 @@ def add_gizmo(self, ob, host, host_type): continue gizmo = component_class.create_gizmo(host, self) if gizmo: - if not component_name in self.widgets: + if component_name not in self.widgets: self.widgets[component_name] = {} - host_key = ob.name+host.name + host_key = ob.name_full + host.name if host_key not in self.widgets[component_name]: self.widgets[component_name][host_key] = { 'ob': ob, 'host_name': host.name, 'host_type': host_type, 'gizmo': gizmo - } - - if host_type == 'OBJECT': - owner = object() - msgbus_owners.append(owner) - subscribe_to = host.path_resolve("name", False) - bpy.msgbus.subscribe_rna( - key=subscribe_to, - owner=owner, - args=(bpy.context,), - notify=msgbus_callback, - ) + } def setup(self, context): + # A new instance of the gizmo group is instantiated, and setup is called once for each instance, for each open window. self.widgets = {} - for ob in bpy.data.objects: + for ob in context.scene.objects: self.add_gizmo(ob, ob, 'OBJECT') if ob.type == 'ARMATURE': if ob.mode == 'EDIT': @@ -110,11 +103,15 @@ def setup(self, context): for bone in ob.data.bones: self.add_gizmo(ob, bone, 'BONE') - if not self.widgets: - unregister_gizmo_system() - return + if self.widgets: + HubsGizmoGroup.has_widgets = True + + HubsGizmoGroup.windows_processed += 1 - self.refresh(context) + if HubsGizmoGroup.windows_processed == len(context.window_manager.windows): + if not HubsGizmoGroup.has_widgets: + bpy.app.timers.register(unregister_gizmo_system) + return def update_gizmo(self, component_name, ob, bone, target, gizmo): component_class = get_component_by_name(component_name) @@ -128,31 +125,40 @@ def update_bone_gizmo(self, component_name, ob, bone, pose_bone, gizmo): def refresh(self, context): for component_name in self.widgets: - components_widgets = self.widgets[component_name].copy() - for widget in components_widgets.values(): + component_widgets = self.widgets[component_name].copy() + for widget in component_widgets.values(): gizmo = widget['gizmo'] ob = widget['ob'] host_name = widget['host_name'] - if widget['host_type'] == 'BONE': - # https://docs.blender.org/api/current/info_gotcha.html#editbones-posebones-bone-bones - if ob.mode == 'EDIT': - edit_bone = ob.data.edit_bones[host_name] - self.update_bone_gizmo( - component_name, ob, edit_bone, edit_bone, gizmo) + + try: + if widget['host_type'] == 'BONE': + # https://docs.blender.org/api/current/info_gotcha.html#editbones-posebones-bone-bones + if ob.mode == 'EDIT': + edit_bone = ob.data.edit_bones[host_name] + self.update_bone_gizmo( + component_name, ob, edit_bone, edit_bone, gizmo) + else: + bone = ob.data.bones[host_name] + pose_bone = ob.pose.bones[host_name] + self.update_bone_gizmo( + component_name, ob, bone, pose_bone, gizmo) else: - bone = ob.data.bones[host_name] - pose_bone = ob.pose.bones[host_name] - self.update_bone_gizmo( - component_name, ob, bone, pose_bone, gizmo) - else: - self.update_object_gizmo( + self.update_object_gizmo( component_name, ob, gizmo) + except (ReferenceError, KeyError): + # ReferenceErrors shouldn't happen, but if objects and widgets have gotten out of sync refresh the whole system. + # KeyErrors can happen when an object's armature is changed, so refresh the whole system for this as well. + bpy.app.timers.register(update_gizmos) + return -global objects_count + +objects_count = -1 gizmo_system_registered = False msgbus_owners = [] + def msgbus_callback(*args): update_gizmos() @@ -170,21 +176,34 @@ def redo_post(dummy): @persistent def depsgraph_update_post(dummy): global objects_count - if bpy.context.mode == 'OBJECT': - if len(bpy.data.objects) != objects_count: - update_gizmos() - objects_count = len(bpy.data.objects) - elif bpy.context.mode == 'EDIT_ARMATURE': - for ob in bpy.context.objects_in_mode: - if len(ob.data.edit_bones) != ob.data.hubs_old_bones_length: - update_gizmos() - ob.data.hubs_old_bones_length = len(ob.data.edit_bones) + do_gizmo_update = False + open_scenes_object_count = 0 + wm = bpy.context.window_manager + for window in wm.windows: + open_scenes_object_count += len(window.scene.objects) + active_object = window.view_layer.objects.active + if active_object: + if active_object.type == 'ARMATURE' and active_object.mode == 'EDIT': + edited_objects = set(window.view_layer.objects.selected) + edited_objects.add(active_object) + for ob in edited_objects: + if len(ob.data.edit_bones) != ob.data.hubs_old_bones_length: + do_gizmo_update = True + ob.data.hubs_old_bones_length = len(ob.data.edit_bones) + + if open_scenes_object_count != objects_count: + do_gizmo_update = True + + objects_count = open_scenes_object_count + + if do_gizmo_update: + update_gizmos() @persistent def load_post(dummy): global objects_count - objects_count = len(bpy.data.objects) + objects_count = -1 unregister_gizmo_system() register_gizmo_system() @@ -193,13 +212,10 @@ def register_gizmo_system(): global gizmo_system_registered global msgbus_owners - if not depsgraph_update_post in bpy.app.handlers.depsgraph_update_post: - bpy.app.handlers.depsgraph_update_post.append( - depsgraph_update_post) - if not undo_post in bpy.app.handlers.undo_post: + if undo_post not in bpy.app.handlers.undo_post: bpy.app.handlers.undo_post.append( undo_post) - if not redo_post in bpy.app.handlers.redo_post: + if redo_post not in bpy.app.handlers.redo_post: bpy.app.handlers.redo_post.append( redo_post) @@ -213,24 +229,24 @@ def register_gizmo_system(): notify=msgbus_callback, ) - register_gizmos() gizmo_system_registered = True + def register_gizmos(): try: + HubsGizmoGroup.has_widgets = False + HubsGizmoGroup.windows_processed = 0 bpy.utils.register_class(CustomModelGizmo) bpy.utils.register_class(HubsGizmoGroup) - except: + except Exception: pass + def unregister_gizmo_system(): global gizmo_system_registered global msgbus_owners - if depsgraph_update_post in bpy.app.handlers.depsgraph_update_post: - bpy.app.handlers.depsgraph_update_post.remove( - depsgraph_update_post) if undo_post in bpy.app.handlers.undo_post: bpy.app.handlers.undo_post.remove( undo_post) @@ -245,31 +261,43 @@ def unregister_gizmo_system(): unregister_gizmos() gizmo_system_registered = False + def unregister_gizmos(): try: bpy.utils.unregister_class(HubsGizmoGroup) bpy.utils.unregister_class(CustomModelGizmo) - except: + except Exception: pass + def update_gizmos(): global gizmo_system_registered unregister_gizmos() register_gizmos() if gizmo_system_registered else register_gizmo_system() + def register_functions(): def register(): - if not load_post in bpy.app.handlers.load_post: + global objects_count + objects_count = -1 + + if load_post not in bpy.app.handlers.load_post: bpy.app.handlers.load_post.append(load_post) + if depsgraph_update_post not in bpy.app.handlers.depsgraph_update_post: + bpy.app.handlers.depsgraph_update_post.append( + depsgraph_update_post) - bpy.types.Armature.hubs_old_bones_length = IntProperty(options={'HIDDEN', 'SKIP_SAVE'}) + bpy.types.Armature.hubs_old_bones_length = IntProperty( + options={'HIDDEN', 'SKIP_SAVE'}) register_gizmo_system() def unregister(): if load_post in bpy.app.handlers.load_post: bpy.app.handlers.load_post.remove(load_post) - + if depsgraph_update_post in bpy.app.handlers.depsgraph_update_post: + bpy.app.handlers.depsgraph_update_post.remove( + depsgraph_update_post) unregister_gizmo_system() diff --git a/addons/io_hubs_addon/components/handlers.py b/addons/io_hubs_addon/components/handlers.py index fd0033c3..7c028f61 100644 --- a/addons/io_hubs_addon/components/handlers.py +++ b/addons/io_hubs_addon/components/handlers.py @@ -1,33 +1,416 @@ import bpy from bpy.app.handlers import persistent from .components_registry import get_components_registry +from .utils import redirect_c_stdout, get_host_components, is_linked, get_host_reference_message +from .gizmos import update_gizmos +from .types import MigrationType, PanelType +import io +import sys +import traceback + +previous_undo_steps_dump = "" +previous_undo_step_index = 0 +previous_window_setups = [] +file_loading = False +msgbus_owners = [] +object_data_switched = False + + +def migrate(component, migration_type, panel_type, host, migration_report, ob=None): + instance_version = tuple(component.instance_version) + definition_version = component.__class__.get_definition_version() + was_migrated = False + + if instance_version < definition_version: + was_migrated = component.migrate( + migration_type, panel_type, instance_version, host, migration_report, ob=ob) + + if type(was_migrated) != bool: + print(f"Warning: the {component.get_display_name()} component didn't return whether a migration occurred.") + # Fall back to assuming there was a migration since the version increased. + was_migrated = True + + component.instance_version = definition_version + + if instance_version > definition_version: + host_reference = get_host_reference_message(panel_type, host, ob=ob) + migration_report.append( + f"Warning: The {component.get_display_name()} component on the {panel_type.value} {host_reference} is from a future version v{instance_version} and may not be correct.") + + try: + unsupported_host = panel_type not in component.__class__.get_panel_type( + ) or not component.__class__.poll(panel_type, host, ob=ob) + except Exception: + # The poll likely failed on an armature without an object. + unsupported_host = True + + if unsupported_host: + message = component.__class__.get_unsupported_host_message(panel_type, host, ob=ob) + migration_report.append(message) + + return was_migrated + + +def migrate_components( + migration_type, *, do_beta_versioning=False, do_update_gizmos=True, display_report=True, + override_report_title=""): + migration_report = [] + migrated_linked_components = [] + armature_objects = {} + link_migration_occurred = False + display_registration_message = False + + if do_beta_versioning: + display_registration_message |= handle_beta_versioning() + + for scene in bpy.data.scenes: + for component in get_host_components(scene): + try: + was_migrated = migrate( + component, migration_type, PanelType.SCENE, scene, migration_report) + except Exception as e: + was_migrated = True + error = f"Error: Migration failed for component {component.get_display_name()} on scene \"{scene.name_full}\"" + migration_report.append(f"{error}\n{e} (See Blender's console for details)") + print(error) + traceback.print_exc() + + display_registration_message |= was_migrated + if was_migrated and is_linked(scene): + link_migration_occurred = True + component_info = f"{component.get_display_name()} component on scene \"{scene.name_full}\"" + migrated_linked_components.append(component_info) + + for ob in bpy.data.objects: + for component in get_host_components(ob): + try: + was_migrated = migrate( + component, migration_type, PanelType.OBJECT, ob, migration_report, ob=ob) + except Exception as e: + was_migrated = True + error = f"Error: Migration failed for component {component.get_display_name()} on object \"{ob.name_full}\"" + migration_report.append(f"{error}\n{e} (See Blender's console for details)") + print(error) + traceback.print_exc() + + display_registration_message |= was_migrated + if was_migrated and is_linked(ob): + link_migration_occurred = True + component_info = f"{component.get_display_name()} component on object \"{ob.name_full}\"" + migrated_linked_components.append(component_info) + + if ob.type == 'ARMATURE': + if ob.mode == 'EDIT': + ob.update_from_editmode() + + armature_name = ob.data.name_full + if armature_name not in armature_objects: + # Store the first object to use this armature for later when armatures are migrated (armatures can only be migrated once anyway) + armature_objects[armature_name] = ob + + for armature in bpy.data.armatures: + ob = armature_objects.get(armature.name_full, armature) + for bone in armature.bones: + for component in get_host_components(bone): + try: + was_migrated = migrate( + component, migration_type, PanelType.BONE, bone, migration_report, ob=ob) + except Exception as e: + was_migrated = True + error = f"Error: Migration failed for component {component.get_display_name()} on bone \"{bone.name}\" in \"{ob.name_full}\"" + migration_report.append(f"{error}\n{e} (See Blender's console for details)") + print(error) + traceback.print_exc() + + display_registration_message |= was_migrated + if was_migrated and is_linked(ob): + link_migration_occurred = True + component_info = f"{component.get_display_name()} component on bone \"{bone.name}\" in \"{ob.name_full}\"" + migrated_linked_components.append(component_info) + + for material in bpy.data.materials: + for component in get_host_components(material): + try: + was_migrated = migrate( + component, migration_type, PanelType.MATERIAL, material, migration_report) + except Exception as e: + was_migrated = True + error = f"Error: Migration failed for component {component.get_display_name()} on material \"{material.name_full}\"" + migration_report.append(f"{error}\n{e} (See Blender's console for details)") + print(error) + traceback.print_exc() + + display_registration_message |= was_migrated + if was_migrated and is_linked(material): + link_migration_occurred = True + component_info = f"{component.get_display_name()} component on material \"{material.name_full}\"" + migrated_linked_components.append(component_info) + + if do_update_gizmos: + update_gizmos() + + if link_migration_occurred: + migration_report.insert( + 0, + "WARNING: A MIGRATION WAS PERFORMED ON LINKED COMPONENTS, THIS IS UNSTABLE AND MAY NOT BE PERMANENT. RESAVE THE LINKED BLEND FILES WITH THE NEW VERSION TO AVOID THIS.") + migration_report.append("MIGRATED LINKED COMPONENTS:") + migration_report.extend(migrated_linked_components) + + if migration_type == MigrationType.REGISTRATION and display_registration_message: + migration_report.insert(0, "WARNING: A MIGRATION WAS PERFORMED AFTER ADD-ON REGISTRATION. AN UNDO STEP HAS BEEN ADDED TO STORE THE RESULTS OF THE MIGRATION. IF YOU UNDO PAST THIS UNDO STEP YOU WILL HAVE TO INITIATE ANOTHER MIGRATION.\nRELOADING THE FILE WITH THE ADD-ON ALREADY ENABLED IS ADVISED.") + + if migration_report and display_report: + title = "Component Migration Report" + if override_report_title: + title = override_report_title + + def report_migration(): + bpy.ops.wm.hubs_report_viewer('INVOKE_DEFAULT', title=title, report_string='\n\n'.join(migration_report)) + bpy.app.timers.register(report_migration) + + +def version_beta_components(): + for scene in bpy.data.scenes: + if not is_linked(scene): + for component in get_host_components(scene): + component.instance_version = (1, 0, 0) + + for ob in bpy.data.objects: + if not is_linked(ob): + for component in get_host_components(ob): + component.instance_version = (1, 0, 0) + if ob.type == 'ARMATURE': + for bone in ob.data.bones: + for component in get_host_components(bone): + component.instance_version = (1, 0, 0) + + for material in bpy.data.materials: + if not is_linked(material): + for component in get_host_components(material): + component.instance_version = (1, 0, 0) + + +def handle_beta_versioning(): + did_versioning = False + extension_properties = bpy.context.scene.HubsComponentsExtensionProperties + if extension_properties: + file_version = extension_properties.get('version') + if file_version: + if tuple(file_version) == (1, 0, 0): + did_versioning = True + version_beta_components() + + del bpy.context.scene.HubsComponentsExtensionProperties['version'] + + return did_versioning @persistent -def migrate_components(dummy): - components_registry = get_components_registry() - for _, component_class in components_registry.items(): - component_class.migrate(tuple( - bpy.context.scene.HubsComponentsExtensionProperties.version)) +def load_post(dummy): + global previous_undo_steps_dump + global previous_undo_step_index + global previous_window_setups + global file_loading + previous_undo_steps_dump = "" + previous_undo_step_index = 0 + previous_window_setups = [] + file_loading = True + + migrate_components(MigrationType.GLOBAL, do_beta_versioning=True) + register_msgbus() + + +def find_active_undo_step_index(undo_steps): + index = 0 + for step in undo_steps: + if "[*" in step: + return index + + index += 1 + + return None @persistent -def version_update(dummy): - from .. import (bl_info) - bpy.context.scene.HubsComponentsExtensionProperties.version = bl_info['version'] +def undo_stack_handler(dummy, depsgraph): + global previous_undo_steps_dump + global previous_undo_step_index + global file_loading + global object_data_switched + + # Return if Blender isn't in a fully loaded state. (Prevents Blender crashing) + if file_loading and not bpy.context.space_data: + file_loading = False + return + + file_loading = False + + # Get a representation of the undo stack. + binary_stream = io.BytesIO() + + with redirect_c_stdout(binary_stream): + bpy.context.window_manager.print_undo_steps() + + undo_steps_dump = binary_stream.getvalue().decode(sys.stdout.encoding) + binary_stream.close() + + if undo_steps_dump == previous_undo_steps_dump: + # The undo stack hasn't changed, so return early. Note: this prevents modal operators (and anything else) from triggering things repeatedly when nothing has changed. + return + + # Convert the undo stack representation into a list of undo steps (removing the unneeded header and footer in the process) and find the active undo step index. + undo_steps = undo_steps_dump.split("\n")[1:-1] + undo_step_index = find_active_undo_step_index(undo_steps) + + # Get the interim undo steps that need to be processed (can be more than one) and whether the change has been forward ('DO') or backward ('UNDO'). 'UNDO' includes the previous index, while 'DO' does not. + try: + if undo_step_index < previous_undo_step_index: # UNDO + start = previous_undo_step_index + stop = undo_step_index + interim_undo_steps = [undo_steps[i] for i in range(start, stop, -1)] + step_type = 'UNDO' + else: # DO + start = previous_undo_step_index + 1 + stop = undo_step_index + interim_undo_steps = [undo_steps[i] for i in range(start, stop)] + step_type = 'DO' + + except Exception: # Fall back to just processing the current undo step. + print("Warning: Couldn't get the full range of undo steps to process. Falling back to the current one.") + interim_undo_steps = [] + step_type = 'DO' + + # Multiple undo steps/operations are being processed at once in this handler, so allow tasks to be combined into one that is executed at the end. This also allows performance heavy tasks to be run as little as possible. In general, any actual work performed should be scheduled as a task. + task_scheduler = set() + # task options + display_report = False + + # Handle the undo steps that have passed since the previous time this executed. This accounts for steps undone, users jumping around in the history ,and any updates that might have been missed. + for undo_step in interim_undo_steps: + step_name = undo_step.split("name=")[-1][1:-1] + + if step_type == 'DO' and step_name in {'Link'}: + # Components need to be migrated after they are linked, but don't need to be remigrated when returning to the link step, and don't store the migrated values in subsequent undo steps until after they have been made local. + task_scheduler.add('migrate_components') + display_report = False + + if step_type == 'UNDO' and step_name in {'Make Local', 'Localized Data'}: + # Components need to be migrated again if they are returned to a linked state. + task_scheduler.add('migrate_components') + display_report = False + task_scheduler.add('update_gizmos') + + if step_type == 'UNDO' and step_name in {'Delete', 'Unlink Object'}: + # Linked components need to be migrated again if their removal was undone. + task_scheduler.add('migrate_components') + display_report = False + + if step_name in {'Add Hubs Component', 'Remove Hubs Component'}: + task_scheduler.add('update_gizmos') + + # If the user has jumped ahead/back multiple undo steps, update the gizmos in case the number of objects/bones in the scene has remained the same, but gizmo objects have been added/removed. + if abs(previous_undo_step_index - undo_step_index) > 1: + task_scheduler.add('update_gizmos') + + # Handle the active undo step. Migrations (or anything that modifies blend data) need to be handled here because the undo step in which they occurred holds the unmodified data, so the modifications need to be applied each time it becomes active. + active_step_name = undo_steps[undo_step_index].split("name=")[-1][1:-1] + + if step_type == 'DO' and active_step_name in {'Link'}: + # Components need to be migrated after they are linked, but don't need to be remigrated when returning to the link step, and don't store the migrated values in subsequent undo steps until after they have been made local. + task_scheduler.add('migrate_components') + display_report = True + + if step_type == 'DO' and active_step_name in {'Add Hubs Component', 'Remove Hubs Component'}: + task_scheduler.add('update_gizmos') + + if active_step_name in {'Append'}: + task_scheduler.add('migrate_components') + display_report = (step_type == 'DO') + + # Handle specific depsgraph updates. + if depsgraph.id_type_updated('ARMATURE') and object_data_switched: + # Update gizmos when switching the armature for an object. + object_data_switched = False + task_scheduler.add('update_gizmos') + + # Execute the scheduled tasks. + # Note: Blender seems to somehow be caching calls to update_gizmos, so having it as a scheduled task may not affect performance. Calls to migrate_components are not cached by Blender. + for task in task_scheduler: + if task == 'update_gizmos': + update_gizmos() + elif task == 'migrate_components': + migrate_components(MigrationType.LOCAL, do_update_gizmos=False, display_report=display_report, + override_report_title="Append/Link: Component Migration Report") + else: + print('Error: unrecognized task scheduled') + + # Store things for comparison next time. + previous_undo_steps_dump = undo_steps_dump + previous_undo_step_index = undo_step_index + + +def scene_and_view_layer_update_notifier(self, context): + """Some scene/view layer actions/changes don't trigger a depsgraph update so watch the top bar for changes to the scene or view layer by hooking into it's draw method. Known actions that don't trigger a depsgraph update: + - Creating a new scene. + - Switching the scene. + - Creating a new view layer. + - Switching the view layer - if the last action was also a view layer switch""" + global previous_window_setups + wm = context.window_manager + current_window_setups = [w.scene.name + w.view_layer.name for w in wm.windows] + if sorted(current_window_setups) != sorted(previous_window_setups): + bpy.app.timers.register(update_gizmos) + previous_window_setups = current_window_setups + + +def register_msgbus(): + global msgbus_owners + owner = object() + msgbus_owners.append(owner) + + def msgbus_update(*args): + global object_data_switched + object_data_switched = True + + bpy.msgbus.subscribe_rna( + key=(bpy.types.Object, "data"), + owner=owner, + args=(bpy.context,), + notify=msgbus_update, + ) def register(): - if not migrate_components in bpy.app.handlers.load_post: - bpy.app.handlers.load_post.append(migrate_components) + global previous_undo_steps_dump + global previous_undo_step_index + global previous_window_setups + previous_undo_steps_dump = "" + previous_undo_step_index = 0 + previous_window_setups = [] + + if load_post not in bpy.app.handlers.load_post: + bpy.app.handlers.load_post.append(load_post) + + # Calling undo_stack_handler in background mode causes a segmentation fault so we skip in that mode. + if undo_stack_handler not in bpy.app.handlers.depsgraph_update_post and not bpy.app.background: + bpy.app.handlers.depsgraph_update_post.append(undo_stack_handler) - if not version_update in bpy.app.handlers.save_pre: - bpy.app.handlers.save_pre.append(version_update) + bpy.types.TOPBAR_HT_upper_bar.append(scene_and_view_layer_update_notifier) + + register_msgbus() def unregister(): - if migrate_components in bpy.app.handlers.load_post: - bpy.app.handlers.load_post.remove(migrate_components) + global msgbus_owners + + if load_post in bpy.app.handlers.load_post: + bpy.app.handlers.load_post.remove(load_post) + + if undo_stack_handler in bpy.app.handlers.depsgraph_update_post and not bpy.app.background: + bpy.app.handlers.depsgraph_update_post.remove(undo_stack_handler) + + bpy.types.TOPBAR_HT_upper_bar.remove(scene_and_view_layer_update_notifier) - if version_update in bpy.app.handlers.save_pre: - bpy.app.handlers.save_pre.remove(version_update) + for owner in msgbus_owners: + bpy.msgbus.clear_by_owner(owner) + msgbus_owners.clear() diff --git a/addons/io_hubs_addon/components/hubs_component.py b/addons/io_hubs_addon/components/hubs_component.py index 6a267267..ed411cf4 100644 --- a/addons/io_hubs_addon/components/hubs_component.py +++ b/addons/io_hubs_addon/components/hubs_component.py @@ -1,5 +1,5 @@ from bpy.types import PropertyGroup -from ..io.utils import gather_properties +from bpy.props import IntVectorProperty from .types import Category, PanelType, NodeType from ..io.utils import import_component, assign_property @@ -19,9 +19,16 @@ class HubsComponent(PropertyGroup): # The dependencies of this component (by id). They will be added as a result of adding this component. 'deps': [], # Name of the icon to load. It can be a image file in the icons directory or one of the Blender builtin icons id - 'icon': 'icon.png' + 'icon': 'icon.png', + # Version of the component. This will be used to trigger component migrations. + 'version': (0, 0, 1) } + # Properties defined here are for internal use and won't be displayed by default in components or exported. + + # The internal version of the component. This is first set when a component is added and is updated during migrations, if necessary. + instance_version: IntVectorProperty(size=3) + @classmethod def __get_definition(cls, key, default): if key in cls._definition and cls._definition[key]: @@ -57,11 +64,20 @@ def get_category(cls): def get_category_name(cls): return cls.get_category().value + @classmethod + def get_definition_version(cls): + return cls.__get_definition('version', (0, 0, 0)) + @classmethod def init(cls, obj): '''Called right after the component is added to give the component a chance to initialize''' pass + @classmethod + def init_instance_version(cls, obj): + component = getattr(obj, cls.get_id()) + component.instance_version = cls.get_definition_version() + @classmethod def create_gizmo(cls, obj, gizmo_group): return None @@ -90,29 +106,42 @@ def __init__(self): def draw(self, context, layout, panel): '''Draw method to be called by the panel. The base class method will print all the component properties''' - for key in self.__annotations__.keys(): + for key in self.get_properties(): if not self.bl_rna.properties[key].is_hidden: layout.prop(data=self, property=key) - def pre_export(self, export_settings, object): + def pre_export(self, export_settings, host, ob=None): '''This is called by the exporter before starting the export process''' pass def gather(self, export_settings, blender_object): '''This is called by the exporter and will return all the component properties by default''' - return gather_properties(export_settings, blender_object, self) + from ..io.utils import gather_properties + return gather_properties(export_settings, object, self) @classmethod - def gather_import(cls, import_settings, blender_object, component_name, component_value): + def gather_import(cls, gltf, blender_object, component_name, component_value): component = import_component(component_name, blender_object) for property_name, property_value in component_value.items(): - assign_property(import_settings.vnodes, component, + assign_property(gltf.vnodes, component, property_name, property_value) - def post_export(self, export_settings, object): + def post_export(self, export_settings, host, ob=None): '''This is called by the exporter after the export process has finished''' pass + def migrate(self, migration_type, panel_type, instance_version, host, migration_report, ob=None): + '''This is called when an object component needs to migrate the data from previous add-on versions. + The migration_type argument is the type of migration, GLOBAL represents file loads, and LOCAL represents things like append/link. + The panel_type argument is used to determine what data-block the component is on. + The instance_version argument represents the version of the component that will be migrated from, as a tuple. + The host argument is what the component is attached to, object/bone. + The migration_report argument is a list that you can append messages to and they will be displayed to the user after the migration has finished. + The ob argument is used for bone migrations and is the armature object that the bone is part of. Note: this is passed for object migrations as well, and will fall back to passing the armature if the object isn't available. + Returns a boolean to indicate whether a migration was performed. + ''' + return False + @classmethod def draw_global(cls, context, layout, panel): '''Draw method to be called by the panel. This can be used to draw global component properties in a panel before the component properties.''' @@ -120,22 +149,31 @@ def draw_global(cls, context, layout, panel): @classmethod def get_properties(cls): if hasattr(cls, '__annotations__'): - return cls.__annotations__.keys() + # Python versions below 3.10 will sometimes return the base class' annotations if there are none in the subclass, so make sure only the subclass' annotations are returned. + baseclass_properties = HubsComponent.__annotations__.keys() + subclass_properties = cls.__annotations__.keys() + return [prop for prop in subclass_properties if prop not in baseclass_properties] return {} @classmethod - def migrate(cls, version): - '''This is called when a new file is loaded to give the components a chance to migrate the data from previous add-on versions. - The addon version used when the blend was last saved, as a tuple. - ''' - pass - - @classmethod - def poll(cls, context, panel_type): + def poll(cls, panel_type, host, ob=None): '''This method will return true if this component's shown be shown or run. - This is currently called when checking if the component should be added to the components pop-up and when the components properties panel is drawn''' + This is currently called when checking if the component should be added to the components pop-up, when the components properties panel is drawn, and during migrations to warn about unsupported hosts. + The ob argument is guaranteed to be present only for objects/bones, although it will fall back to using the armature for bones if the object isn't available.''' return True + @classmethod + def get_unsupported_host_message(cls, panel_type, host, ob=None): + '''This method will return the message to use if this component isn't supported on this host. + This is currently called during migrations. + The ob argument will fall back to an armature for bones if an object isn't available.''' + from .utils import get_host_reference_message + host_reference = get_host_reference_message(panel_type, host, ob=ob) + host_type = panel_type.value + message = f"Warning: Unsupported component on {host_type} {host_reference}, {host_type}s don't support {cls.get_display_name()} components" + + return message + @staticmethod def register(): '''This is called by the Blender runtime when the component is registered. diff --git a/addons/io_hubs_addon/components/models/audio.py b/addons/io_hubs_addon/components/models/audio.py new file mode 100644 index 00000000..3962e660 --- /dev/null +++ b/addons/io_hubs_addon/components/models/audio.py @@ -0,0 +1 @@ +SHAPE = ((-0.500000, 0.000000, -0.362840),(0.500000, 0.000000, -0.362840),(0.500000, 0.000000, 0.362840),(-0.500000, 0.000000, -0.362840),(0.500000, 0.000000, 0.362840),(-0.500000, 0.000000, 0.362840),(0.228459, -0.095301, 0.228459),(0.128507, -0.080516, 0.310241),(0.123642, -0.095301, 0.298496),(0.298496, -0.095301, 0.123641),(0.237449, -0.080516, 0.237448),(0.228459, -0.095301, 0.228459),(0.323090, -0.095301, 0.000000),(0.310242, -0.080516, 0.128506),(0.298496, -0.095301, 0.123641),(0.298496, -0.095301, -0.123641),(0.335803, -0.080516, 0.000000),(0.323090, -0.095301, 0.000000),(0.298496, -0.095301, -0.123641),(0.237449, -0.080516, -0.237448),(0.310242, -0.080516, -0.128506),(0.228459, -0.095301, -0.228458),(0.128507, -0.080516, -0.310241),(0.237449, -0.080516, -0.237448),(0.123642, -0.095301, -0.298495),(0.000001, -0.080516, -0.335802),(0.128507, -0.080516, -0.310241),(0.000001, -0.095301, -0.323089),(-0.128505, -0.080516, -0.310241),(0.000001, -0.080516, -0.335802),(-0.228458, -0.095301, -0.228458),(-0.128505, -0.080516, -0.310241),(-0.123640, -0.095301, -0.298495),(-0.298495, -0.095301, -0.123641),(-0.237447, -0.080516, -0.237448),(-0.228458, -0.095301, -0.228458),(-0.298495, -0.095301, -0.123641),(-0.335801, -0.080516, 0.000000),(-0.310240, -0.080516, -0.128506),(-0.298495, -0.095301, 0.123641),(-0.335801, -0.080516, 0.000000),(-0.323088, -0.095301, 0.000000),(-0.228458, -0.095301, 0.228459),(-0.310240, -0.080516, 0.128506),(-0.298495, -0.095301, 0.123641),(-0.123640, -0.095301, 0.298496),(-0.237447, -0.080516, 0.237448),(-0.228458, -0.095301, 0.228459),(0.000001, -0.095301, 0.323089),(-0.128505, -0.080516, 0.310241),(-0.123640, -0.095301, 0.298496),(-0.196763, -0.067532, 0.196764),(-0.076460, 0.000000, 0.184591),(-0.106487, -0.067532, 0.257084),(0.000001, -0.067532, -0.278266),(0.076460, 0.000000, -0.184591),(0.000000, 0.000000, -0.199800),(0.000001, -0.067532, 0.278266),(0.076460, 0.000000, 0.184591),(0.106488, -0.067532, 0.257084),(-0.106487, -0.067532, 0.257084),(0.000000, 0.000000, 0.199800),(0.000001, -0.067532, 0.278266),(-0.106487, -0.067532, -0.257084),(0.000000, 0.000000, -0.199800),(-0.076460, 0.000000, -0.184591),(0.106488, -0.067532, 0.257084),(0.141280, 0.000000, 0.141280),(0.196764, -0.067532, 0.196764),(-0.196763, -0.067532, -0.196764),(-0.076460, 0.000000, -0.184591),(-0.141280, 0.000000, -0.141280),(0.196764, -0.067532, 0.196764),(0.184591, 0.000000, 0.076460),(0.257085, -0.067532, 0.106488),(-0.257084, -0.067532, -0.106488),(-0.141280, 0.000000, -0.141280),(-0.184591, 0.000000, -0.076460),(0.257085, -0.067532, 0.106488),(0.199800, 0.000000, 0.000000),(0.278266, -0.067532, 0.000000),(-0.257084, -0.067532, -0.106488),(-0.199800, 0.000000, 0.000000),(-0.278265, -0.067532, 0.000000),(0.257085, -0.067532, -0.106488),(0.199800, 0.000000, 0.000000),(0.184591, 0.000000, -0.076460),(-0.278265, -0.067532, 0.000000),(-0.184591, 0.000000, 0.076460),(-0.257084, -0.067532, 0.106488),(0.196764, -0.067532, -0.196764),(0.184591, 0.000000, -0.076460),(0.141280, 0.000000, -0.141280),(-0.257084, -0.067532, 0.106488),(-0.141280, 0.000000, 0.141280),(-0.196763, -0.067532, 0.196764),(-0.128505, -0.080516, 0.310241),(0.000000, -0.000000, 0.236914),(-0.090663, 0.000000, 0.218880),(-0.237447, -0.080516, 0.237448),(-0.090663, 0.000000, 0.218880),(-0.167523, 0.000000, 0.167523),(-0.310240, -0.080516, 0.128506),(-0.167523, 0.000000, 0.167523),(-0.218879, 0.000000, 0.090663),(-0.335801, -0.080516, 0.000000),(-0.218879, 0.000000, 0.090663),(-0.236913, 0.000000, 0.000000),(-0.218879, 0.000000, -0.090663),(-0.335801, -0.080516, 0.000000),(-0.236913, 0.000000, 0.000000),(-0.167523, 0.000000, -0.167523),(-0.310240, -0.080516, -0.128506),(-0.218879, 0.000000, -0.090663),(-0.090663, 0.000000, -0.218879),(-0.237447, -0.080516, -0.237448),(-0.167523, 0.000000, -0.167523),(0.000000, 0.000000, -0.236913),(-0.128505, -0.080516, -0.310241),(-0.090663, 0.000000, -0.218879),(0.090663, 0.000000, -0.218879),(0.000001, -0.080516, -0.335802),(0.000000, 0.000000, -0.236913),(0.167523, 0.000000, -0.167523),(0.128507, -0.080516, -0.310241),(0.090663, 0.000000, -0.218879),(0.218880, 0.000000, -0.090663),(0.237449, -0.080516, -0.237448),(0.167523, 0.000000, -0.167523),(0.236914, 0.000000, 0.000000),(0.310242, -0.080516, -0.128506),(0.218880, 0.000000, -0.090663),(0.310242, -0.080516, 0.128506),(0.236914, 0.000000, 0.000000),(0.218880, 0.000000, 0.090663),(0.237449, -0.080516, 0.237448),(0.218880, 0.000000, 0.090663),(0.167523, 0.000000, 0.167523),(0.128507, -0.080516, 0.310241),(0.167523, 0.000000, 0.167523),(0.090663, 0.000000, 0.218880),(0.000001, -0.080516, 0.335802),(0.090663, 0.000000, 0.218880),(0.000000, -0.000000, 0.236914),(0.123642, -0.095301, -0.298495),(0.211498, -0.082967, -0.211497),(0.114462, -0.082967, -0.276334),(-0.298495, -0.095301, 0.123641),(-0.211496, -0.082967, 0.211497),(-0.228458, -0.095301, 0.228459),(0.228459, -0.095301, -0.228458),(0.276335, -0.082967, -0.114461),(0.211498, -0.082967, -0.211497),(-0.323088, -0.095301, 0.000000),(-0.276333, -0.082967, 0.114461),(-0.298495, -0.095301, 0.123641),(0.298496, -0.095301, -0.123641),(0.299102, -0.082967, 0.000000),(0.276335, -0.082967, -0.114461),(-0.298495, -0.095301, -0.123641),(-0.299101, -0.082967, 0.000000),(-0.323088, -0.095301, 0.000000),(0.298496, -0.095301, 0.123641),(0.299102, -0.082967, 0.000000),(0.323090, -0.095301, 0.000000),(-0.228458, -0.095301, -0.228458),(-0.276333, -0.082967, -0.114461),(-0.298495, -0.095301, -0.123641),(0.228459, -0.095301, 0.228459),(0.276335, -0.082967, 0.114461),(0.298496, -0.095301, 0.123641),(-0.123640, -0.095301, -0.298495),(-0.211496, -0.082967, -0.211497),(-0.228458, -0.095301, -0.228458),(0.123642, -0.095301, 0.298496),(0.211498, -0.082967, 0.211497),(0.228459, -0.095301, 0.228459),(0.000001, -0.095301, -0.323089),(-0.114461, -0.082967, -0.276334),(-0.123640, -0.095301, -0.298495),(-0.123640, -0.095301, 0.298496),(0.000001, -0.082967, 0.299102),(0.000001, -0.095301, 0.323089),(0.000001, -0.095301, 0.323089),(0.114462, -0.082967, 0.276334),(0.123642, -0.095301, 0.298496),(0.000001, -0.095301, -0.323089),(0.114462, -0.082967, -0.276334),(0.000001, -0.082967, -0.299102),(-0.228458, -0.095301, 0.228459),(-0.114461, -0.082967, 0.276334),(-0.123640, -0.095301, 0.298496),(0.362201, -0.107929, -0.150028),(0.348407, -0.107762, -0.069303),(0.387390, -0.108020, -0.077057),(-0.348405, -0.107762, -0.069303),(-0.362199, -0.107929, -0.150028),(-0.387388, -0.108020, -0.077057),(0.277329, -0.107941, 0.277148),(0.195801, -0.107931, 0.295860),(0.219479, -0.108088, 0.328575),(-0.195798, -0.107931, 0.295860),(-0.277327, -0.107941, 0.277148),(-0.219477, -0.108088, 0.328575),(0.277329, -0.107941, -0.277148),(0.295367, -0.107762, -0.197358),(0.328413, -0.108020, -0.219438),(-0.348405, -0.107762, 0.069302),(-0.392041, -0.107929, -0.000000),(-0.387388, -0.108020, 0.077056),(-0.295365, -0.107762, -0.197358),(-0.277327, -0.107941, -0.277148),(-0.328411, -0.108020, -0.219438),(0.392043, -0.107929, -0.000000),(0.348407, -0.107762, 0.069302),(0.387390, -0.108020, 0.077056),(-0.295365, -0.107762, 0.197358),(-0.362199, -0.107929, 0.150028),(-0.328411, -0.108020, 0.219438),(0.362201, -0.107929, 0.150028),(0.295367, -0.107762, 0.197358),(0.328413, -0.108020, 0.219438),(0.252395, -0.145456, -0.382567),(0.354805, -0.145454, -0.354519),(0.280016, -0.145617, -0.420616),(-0.449813, -0.145227, -0.089474),(-0.463371, -0.145448, -0.191935),(-0.495566, -0.145548, -0.098575),(0.449816, -0.145227, -0.089474),(0.501553, -0.145448, -0.000000),(0.495569, -0.145548, -0.098575),(-0.252392, -0.145456, 0.382567),(-0.354802, -0.145454, 0.354519),(-0.280013, -0.145617, 0.420616),(0.381338, -0.145226, 0.254800),(0.354805, -0.145454, 0.354519),(0.420123, -0.145548, 0.280717),(-0.449813, -0.145227, 0.089473),(-0.501550, -0.145448, -0.000000),(-0.495566, -0.145548, 0.098574),(0.381338, -0.145226, -0.254800),(0.463374, -0.145448, -0.191935),(0.420123, -0.145548, -0.280717),(-0.381335, -0.145226, -0.254800),(-0.354802, -0.145454, -0.354520),(-0.420120, -0.145548, -0.280717),(0.449816, -0.145227, 0.089473),(0.463374, -0.145448, 0.191935),(0.495569, -0.145548, 0.098574),(-0.381335, -0.145226, 0.254800),(-0.463371, -0.145448, 0.191935),(-0.420120, -0.145548, 0.280717),(0.354805, -0.145454, 0.354519),(0.252395, -0.145456, 0.382567),(0.280016, -0.145617, 0.420616),(-0.354802, -0.145454, 0.354519),(-0.381335, -0.145226, 0.254800),(-0.420120, -0.145548, 0.280717),(0.501553, -0.145448, -0.000000),(0.449816, -0.145227, 0.089473),(0.495569, -0.145548, 0.098574),(-0.463371, -0.145448, -0.191935),(-0.381335, -0.145226, -0.254800),(-0.420120, -0.145548, -0.280717),(0.354805, -0.145454, -0.354519),(0.381338, -0.145226, -0.254800),(0.420123, -0.145548, -0.280717),(-0.463371, -0.145448, 0.191935),(-0.449813, -0.145227, 0.089473),(-0.495566, -0.145548, 0.098574),(0.463374, -0.145448, 0.191935),(0.381338, -0.145226, 0.254800),(0.420123, -0.145548, 0.280717),(-0.354802, -0.145454, -0.354520),(-0.252392, -0.145456, -0.382567),(-0.280013, -0.145617, -0.420616),(0.463374, -0.145448, -0.191935),(0.449816, -0.145227, -0.089474),(0.495569, -0.145548, -0.098575),(-0.501550, -0.145448, -0.000000),(-0.449813, -0.145227, -0.089474),(-0.495566, -0.145548, -0.098575),(-0.277327, -0.107941, 0.277148),(-0.295365, -0.107762, 0.197358),(-0.328411, -0.108020, 0.219438),(-0.362199, -0.107929, -0.150028),(-0.295365, -0.107762, -0.197358),(-0.328411, -0.108020, -0.219438),(-0.362199, -0.107929, 0.150028),(-0.348405, -0.107762, 0.069302),(-0.387388, -0.108020, 0.077056),(-0.277327, -0.107941, -0.277148),(-0.195798, -0.107931, -0.295861),(-0.219477, -0.108088, -0.328576),(-0.392041, -0.107929, -0.000000),(-0.348405, -0.107762, -0.069303),(-0.387388, -0.108020, -0.077057),(0.277329, -0.107941, 0.277148),(0.295367, -0.107762, 0.197358),(0.249662, -0.107816, 0.249649),(0.362201, -0.107929, -0.150028),(0.295367, -0.107762, -0.197358),(0.326163, -0.107826, -0.135101),(0.362201, -0.107929, 0.150028),(0.348407, -0.107762, 0.069302),(0.326163, -0.107826, 0.135101),(0.277329, -0.107941, -0.277148),(0.195801, -0.107931, -0.295861),(0.249662, -0.107816, -0.249649),(0.392043, -0.107929, -0.000000),(0.348407, -0.107762, -0.069303),(0.353036, -0.107826, -0.000000),(0.219479, -0.108088, -0.328576),(0.185681, -0.112150, -0.314268),(0.195801, -0.107931, -0.295861),(0.280016, -0.145617, 0.420616),(0.242157, -0.149913, 0.402607),(0.257907, -0.150086, 0.424342),(0.219479, -0.108088, 0.328575),(0.185681, -0.112150, 0.314268),(0.199198, -0.112320, 0.332804),(0.280016, -0.145617, -0.420616),(0.242157, -0.149913, -0.402608),(0.252395, -0.145456, -0.382567),(-0.219477, -0.108088, 0.328575),(-0.185679, -0.112150, 0.314268),(-0.195798, -0.107931, 0.295860),(-0.219477, -0.108088, -0.328576),(-0.185679, -0.112150, -0.314268),(-0.199196, -0.112320, -0.332804),(-0.280013, -0.145617, 0.420616),(-0.242153, -0.149913, 0.402607),(-0.252392, -0.145456, 0.382567),(-0.280013, -0.145617, -0.420616),(-0.242154, -0.149913, -0.402608),(-0.257904, -0.150086, -0.424342),(-0.002862, 0.000000, 0.066096),(-0.027207, 0.000000, 0.116094),(-0.027207, 0.000000, -0.031918),(0.000001, -0.080516, 0.335802),(0.123642, -0.095301, 0.298496),(0.128507, -0.080516, 0.310241),(0.106488, -0.067532, -0.257084),(0.141280, 0.000000, -0.141280),(0.076460, 0.000000, -0.184591),(-0.027207, 0.000000, -0.031918),(-0.043270, 0.000000, -0.025400),(-0.002768, 0.000000, -0.084581),(-0.043270, 0.000000, -0.025400),(-0.059014, 0.000000, -0.022269),(-0.080924, 0.000000, -0.026627),(-0.099498, 0.000000, -0.039038),(-0.043270, 0.000000, -0.025400),(-0.080924, 0.000000, -0.026627),(-0.099498, 0.000000, -0.039038),(-0.111909, 0.000000, -0.057612),(-0.043270, 0.000000, -0.025400),(-0.111909, 0.000000, -0.057612),(-0.116267, 0.000000, -0.079521),(-0.043270, 0.000000, -0.025400),(-0.116267, 0.000000, -0.079521),(-0.111909, 0.000000, -0.101431),(-0.043270, 0.000000, -0.025400),(-0.111909, 0.000000, -0.101431),(-0.099498, 0.000000, -0.120005),(-0.043270, 0.000000, -0.025400),(-0.099498, 0.000000, -0.120005),(-0.080924, 0.000000, -0.132416),(-0.002768, 0.000000, -0.084581),(-0.080924, 0.000000, -0.132416),(-0.059014, 0.000000, -0.136774),(-0.002768, 0.000000, -0.084581),(-0.059014, 0.000000, -0.136774),(-0.037105, 0.000000, -0.132416),(-0.002768, 0.000000, -0.084581),(-0.037105, 0.000000, -0.132416),(-0.018531, 0.000000, -0.120005),(-0.002768, 0.000000, -0.084581),(-0.018531, 0.000000, -0.120005),(-0.006120, 0.000000, -0.101431),(-0.002768, 0.000000, -0.084581),(-0.002862, 0.000000, 0.066096),(0.097449, 0.000000, 0.052513),(0.097449, 0.000000, 0.130106),(-0.002768, 0.000000, -0.084581),(-0.002862, 0.000000, 0.066096),(-0.027207, 0.000000, -0.031918),(-0.002862, 0.000000, 0.066096),(0.097449, 0.000000, 0.130106),(-0.027207, 0.000000, 0.116094),(-0.043270, 0.000000, -0.025400),(-0.099498, 0.000000, -0.120005),(-0.002768, 0.000000, -0.084581),(0.228459, -0.095301, 0.228459),(0.237449, -0.080516, 0.237448),(0.128507, -0.080516, 0.310241),(0.298496, -0.095301, 0.123641),(0.310242, -0.080516, 0.128506),(0.237449, -0.080516, 0.237448),(0.323090, -0.095301, 0.000000),(0.335803, -0.080516, 0.000000),(0.310242, -0.080516, 0.128506),(0.298496, -0.095301, -0.123641),(0.310242, -0.080516, -0.128506),(0.335803, -0.080516, 0.000000),(0.298496, -0.095301, -0.123641),(0.228459, -0.095301, -0.228458),(0.237449, -0.080516, -0.237448),(0.228459, -0.095301, -0.228458),(0.123642, -0.095301, -0.298495),(0.128507, -0.080516, -0.310241),(0.123642, -0.095301, -0.298495),(0.000001, -0.095301, -0.323089),(0.000001, -0.080516, -0.335802),(0.000001, -0.095301, -0.323089),(-0.123640, -0.095301, -0.298495),(-0.128505, -0.080516, -0.310241),(-0.228458, -0.095301, -0.228458),(-0.237447, -0.080516, -0.237448),(-0.128505, -0.080516, -0.310241),(-0.298495, -0.095301, -0.123641),(-0.310240, -0.080516, -0.128506),(-0.237447, -0.080516, -0.237448),(-0.298495, -0.095301, -0.123641),(-0.323088, -0.095301, 0.000000),(-0.335801, -0.080516, 0.000000),(-0.298495, -0.095301, 0.123641),(-0.310240, -0.080516, 0.128506),(-0.335801, -0.080516, 0.000000),(-0.228458, -0.095301, 0.228459),(-0.237447, -0.080516, 0.237448),(-0.310240, -0.080516, 0.128506),(-0.123640, -0.095301, 0.298496),(-0.128505, -0.080516, 0.310241),(-0.237447, -0.080516, 0.237448),(0.000001, -0.095301, 0.323089),(0.000001, -0.080516, 0.335802),(-0.128505, -0.080516, 0.310241),(-0.196763, -0.067532, 0.196764),(-0.141280, 0.000000, 0.141280),(-0.076460, 0.000000, 0.184591),(0.000001, -0.067532, -0.278266),(0.106488, -0.067532, -0.257084),(0.076460, 0.000000, -0.184591),(0.000001, -0.067532, 0.278266),(0.000000, 0.000000, 0.199800),(0.076460, 0.000000, 0.184591),(-0.106487, -0.067532, 0.257084),(-0.076460, 0.000000, 0.184591),(0.000000, 0.000000, 0.199800),(-0.106487, -0.067532, -0.257084),(0.000001, -0.067532, -0.278266),(0.000000, 0.000000, -0.199800),(0.106488, -0.067532, 0.257084),(0.076460, 0.000000, 0.184591),(0.141280, 0.000000, 0.141280),(-0.196763, -0.067532, -0.196764),(-0.106487, -0.067532, -0.257084),(-0.076460, 0.000000, -0.184591),(0.196764, -0.067532, 0.196764),(0.141280, 0.000000, 0.141280),(0.184591, 0.000000, 0.076460),(-0.257084, -0.067532, -0.106488),(-0.196763, -0.067532, -0.196764),(-0.141280, 0.000000, -0.141280),(0.257085, -0.067532, 0.106488),(0.184591, 0.000000, 0.076460),(0.199800, 0.000000, 0.000000),(-0.257084, -0.067532, -0.106488),(-0.184591, 0.000000, -0.076460),(-0.199800, 0.000000, 0.000000),(0.257085, -0.067532, -0.106488),(0.278266, -0.067532, 0.000000),(0.199800, 0.000000, 0.000000),(-0.278265, -0.067532, 0.000000),(-0.199800, 0.000000, 0.000000),(-0.184591, 0.000000, 0.076460),(0.196764, -0.067532, -0.196764),(0.257085, -0.067532, -0.106488),(0.184591, 0.000000, -0.076460),(-0.257084, -0.067532, 0.106488),(-0.184591, 0.000000, 0.076460),(-0.141280, 0.000000, 0.141280),(-0.128505, -0.080516, 0.310241),(0.000001, -0.080516, 0.335802),(0.000000, -0.000000, 0.236914),(-0.237447, -0.080516, 0.237448),(-0.128505, -0.080516, 0.310241),(-0.090663, 0.000000, 0.218880),(-0.310240, -0.080516, 0.128506),(-0.237447, -0.080516, 0.237448),(-0.167523, 0.000000, 0.167523),(-0.335801, -0.080516, 0.000000),(-0.310240, -0.080516, 0.128506),(-0.218879, 0.000000, 0.090663),(-0.218879, 0.000000, -0.090663),(-0.310240, -0.080516, -0.128506),(-0.335801, -0.080516, 0.000000),(-0.167523, 0.000000, -0.167523),(-0.237447, -0.080516, -0.237448),(-0.310240, -0.080516, -0.128506),(-0.090663, 0.000000, -0.218879),(-0.128505, -0.080516, -0.310241),(-0.237447, -0.080516, -0.237448),(0.000000, 0.000000, -0.236913),(0.000001, -0.080516, -0.335802),(-0.128505, -0.080516, -0.310241),(0.090663, 0.000000, -0.218879),(0.128507, -0.080516, -0.310241),(0.000001, -0.080516, -0.335802),(0.167523, 0.000000, -0.167523),(0.237449, -0.080516, -0.237448),(0.128507, -0.080516, -0.310241),(0.218880, 0.000000, -0.090663),(0.310242, -0.080516, -0.128506),(0.237449, -0.080516, -0.237448),(0.236914, 0.000000, 0.000000),(0.335803, -0.080516, 0.000000),(0.310242, -0.080516, -0.128506),(0.310242, -0.080516, 0.128506),(0.335803, -0.080516, 0.000000),(0.236914, 0.000000, 0.000000),(0.237449, -0.080516, 0.237448),(0.310242, -0.080516, 0.128506),(0.218880, 0.000000, 0.090663),(0.128507, -0.080516, 0.310241),(0.237449, -0.080516, 0.237448),(0.167523, 0.000000, 0.167523),(0.000001, -0.080516, 0.335802),(0.128507, -0.080516, 0.310241),(0.090663, 0.000000, 0.218880),(0.123642, -0.095301, -0.298495),(0.228459, -0.095301, -0.228458),(0.211498, -0.082967, -0.211497),(-0.298495, -0.095301, 0.123641),(-0.276333, -0.082967, 0.114461),(-0.211496, -0.082967, 0.211497),(0.228459, -0.095301, -0.228458),(0.298496, -0.095301, -0.123641),(0.276335, -0.082967, -0.114461),(-0.323088, -0.095301, 0.000000),(-0.299101, -0.082967, 0.000000),(-0.276333, -0.082967, 0.114461),(0.298496, -0.095301, -0.123641),(0.323090, -0.095301, 0.000000),(0.299102, -0.082967, 0.000000),(-0.298495, -0.095301, -0.123641),(-0.276333, -0.082967, -0.114461),(-0.299101, -0.082967, 0.000000),(0.298496, -0.095301, 0.123641),(0.276335, -0.082967, 0.114461),(0.299102, -0.082967, 0.000000),(-0.228458, -0.095301, -0.228458),(-0.211496, -0.082967, -0.211497),(-0.276333, -0.082967, -0.114461),(0.228459, -0.095301, 0.228459),(0.211498, -0.082967, 0.211497),(0.276335, -0.082967, 0.114461),(-0.123640, -0.095301, -0.298495),(-0.114461, -0.082967, -0.276334),(-0.211496, -0.082967, -0.211497),(0.123642, -0.095301, 0.298496),(0.114462, -0.082967, 0.276334),(0.211498, -0.082967, 0.211497),(0.000001, -0.095301, -0.323089),(0.000001, -0.082967, -0.299102),(-0.114461, -0.082967, -0.276334),(-0.123640, -0.095301, 0.298496),(-0.114461, -0.082967, 0.276334),(0.000001, -0.082967, 0.299102),(0.000001, -0.095301, 0.323089),(0.000001, -0.082967, 0.299102),(0.114462, -0.082967, 0.276334),(0.000001, -0.095301, -0.323089),(0.123642, -0.095301, -0.298495),(0.114462, -0.082967, -0.276334),(-0.228458, -0.095301, 0.228459),(-0.211496, -0.082967, 0.211497),(-0.114461, -0.082967, 0.276334),(0.362201, -0.107929, -0.150028),(0.326163, -0.107826, -0.135101),(0.348407, -0.107762, -0.069303),(-0.348405, -0.107762, -0.069303),(-0.326161, -0.107826, -0.135101),(-0.362199, -0.107929, -0.150028),(0.277329, -0.107941, 0.277148),(0.249662, -0.107816, 0.249649),(0.195801, -0.107931, 0.295860),(-0.195798, -0.107931, 0.295860),(-0.249660, -0.107816, 0.249649),(-0.277327, -0.107941, 0.277148),(0.277329, -0.107941, -0.277148),(0.249662, -0.107816, -0.249649),(0.295367, -0.107762, -0.197358),(-0.348405, -0.107762, 0.069302),(-0.353034, -0.107826, -0.000000),(-0.392041, -0.107929, -0.000000),(-0.295365, -0.107762, -0.197358),(-0.249660, -0.107816, -0.249649),(-0.277327, -0.107941, -0.277148),(0.392043, -0.107929, -0.000000),(0.353036, -0.107826, -0.000000),(0.348407, -0.107762, 0.069302),(-0.295365, -0.107762, 0.197358),(-0.326161, -0.107826, 0.135101),(-0.362199, -0.107929, 0.150028),(0.362201, -0.107929, 0.150028),(0.326163, -0.107826, 0.135101),(0.295367, -0.107762, 0.197358),(0.252395, -0.145456, -0.382567),(0.322367, -0.145291, -0.322310),(0.354805, -0.145454, -0.354519),(-0.449813, -0.145227, -0.089474),(-0.421138, -0.145297, -0.174442),(-0.463371, -0.145448, -0.191935),(0.449816, -0.145227, -0.089474),(0.455839, -0.145297, -0.000000),(0.501553, -0.145448, -0.000000),(-0.252392, -0.145456, 0.382567),(-0.322364, -0.145291, 0.322310),(-0.354802, -0.145454, 0.354519),(0.381338, -0.145226, 0.254800),(0.322367, -0.145291, 0.322310),(0.354805, -0.145454, 0.354519),(-0.449813, -0.145227, 0.089473),(-0.455836, -0.145297, -0.000000),(-0.501550, -0.145448, -0.000000),(0.381338, -0.145226, -0.254800),(0.421140, -0.145297, -0.174442),(0.463374, -0.145448, -0.191935),(-0.381335, -0.145226, -0.254800),(-0.322364, -0.145291, -0.322310),(-0.354802, -0.145454, -0.354520),(0.449816, -0.145227, 0.089473),(0.421140, -0.145297, 0.174441),(0.463374, -0.145448, 0.191935),(-0.381335, -0.145226, 0.254800),(-0.421138, -0.145297, 0.174441),(-0.463371, -0.145448, 0.191935),(0.354805, -0.145454, 0.354519),(0.322367, -0.145291, 0.322310),(0.252395, -0.145456, 0.382567),(-0.354802, -0.145454, 0.354519),(-0.322364, -0.145291, 0.322310),(-0.381335, -0.145226, 0.254800),(0.501553, -0.145448, -0.000000),(0.455839, -0.145297, -0.000000),(0.449816, -0.145227, 0.089473),(-0.463371, -0.145448, -0.191935),(-0.421138, -0.145297, -0.174442),(-0.381335, -0.145226, -0.254800),(0.354805, -0.145454, -0.354519),(0.322367, -0.145291, -0.322310),(0.381338, -0.145226, -0.254800),(-0.463371, -0.145448, 0.191935),(-0.421138, -0.145297, 0.174441),(-0.449813, -0.145227, 0.089473),(0.463374, -0.145448, 0.191935),(0.421140, -0.145297, 0.174441),(0.381338, -0.145226, 0.254800),(-0.354802, -0.145454, -0.354520),(-0.322364, -0.145291, -0.322310),(-0.252392, -0.145456, -0.382567),(0.463374, -0.145448, -0.191935),(0.421140, -0.145297, -0.174442),(0.449816, -0.145227, -0.089474),(-0.501550, -0.145448, -0.000000),(-0.455836, -0.145297, -0.000000),(-0.449813, -0.145227, -0.089474),(-0.277327, -0.107941, 0.277148),(-0.249660, -0.107816, 0.249649),(-0.295365, -0.107762, 0.197358),(-0.362199, -0.107929, -0.150028),(-0.326161, -0.107826, -0.135101),(-0.295365, -0.107762, -0.197358),(-0.362199, -0.107929, 0.150028),(-0.326161, -0.107826, 0.135101),(-0.348405, -0.107762, 0.069302),(-0.277327, -0.107941, -0.277148),(-0.249660, -0.107816, -0.249649),(-0.195798, -0.107931, -0.295861),(-0.392041, -0.107929, -0.000000),(-0.353034, -0.107826, -0.000000),(-0.348405, -0.107762, -0.069303),(0.277329, -0.107941, 0.277148),(0.328413, -0.108020, 0.219438),(0.295367, -0.107762, 0.197358),(0.362201, -0.107929, -0.150028),(0.328413, -0.108020, -0.219438),(0.295367, -0.107762, -0.197358),(0.362201, -0.107929, 0.150028),(0.387390, -0.108020, 0.077056),(0.348407, -0.107762, 0.069302),(0.277329, -0.107941, -0.277148),(0.219479, -0.108088, -0.328576),(0.195801, -0.107931, -0.295861),(0.392043, -0.107929, -0.000000),(0.387390, -0.108020, -0.077057),(0.348407, -0.107762, -0.069303),(0.219479, -0.108088, -0.328576),(0.199198, -0.112320, -0.332804),(0.185681, -0.112150, -0.314268),(0.280016, -0.145617, 0.420616),(0.252395, -0.145456, 0.382567),(0.242157, -0.149913, 0.402607),(0.219479, -0.108088, 0.328575),(0.195801, -0.107931, 0.295860),(0.185681, -0.112150, 0.314268),(0.280016, -0.145617, -0.420616),(0.257907, -0.150086, -0.424342),(0.242157, -0.149913, -0.402608),(-0.219477, -0.108088, 0.328575),(-0.199196, -0.112320, 0.332804),(-0.185679, -0.112150, 0.314268),(-0.219477, -0.108088, -0.328576),(-0.195798, -0.107931, -0.295861),(-0.185679, -0.112150, -0.314268),(-0.280013, -0.145617, 0.420616),(-0.257904, -0.150086, 0.424342),(-0.242153, -0.149913, 0.402607),(-0.280013, -0.145617, -0.420616),(-0.252392, -0.145456, -0.382567),(-0.242154, -0.149913, -0.402608),(0.000001, -0.080516, 0.335802),(0.000001, -0.095301, 0.323089),(0.123642, -0.095301, 0.298496),(0.106488, -0.067532, -0.257084),(0.196764, -0.067532, -0.196764),(0.141280, 0.000000, -0.141280),) \ No newline at end of file diff --git a/addons/io_hubs_addon/components/models/directional_light.py b/addons/io_hubs_addon/components/models/directional_light.py new file mode 100644 index 00000000..87c1cd06 --- /dev/null +++ b/addons/io_hubs_addon/components/models/directional_light.py @@ -0,0 +1 @@ +SHAPE = ((0.000000, 0.181373, 0.036077),(0.128250, 0.128250, -0.036077),(0.000000, 0.181373, -0.036077),(-0.072648, 0.072648, -0.153760),(0.000000, 0.036077, -0.181373),(-0.025510, 0.025511, -0.181373),(0.128250, 0.128250, 0.036077),(0.000000, 0.153760, 0.102740),(0.108725, 0.108725, 0.102740),(0.025511, 0.025510, -0.181373),(0.000000, 0.102739, -0.153760),(0.072648, 0.072648, -0.153760),(0.181373, -0.000000, -0.036077),(0.128250, -0.128250, 0.036077),(0.128250, -0.128250, -0.036077),(0.000000, 0.153760, 0.102740),(-0.072648, 0.072648, 0.153761),(0.000000, 0.102739, 0.153761),(0.000000, 0.102739, 0.153761),(0.025511, 0.025510, 0.181373),(0.072648, 0.072648, 0.153761),(0.102739, -0.000000, 0.153761),(0.025510, -0.025511, 0.181373),(0.072648, -0.072648, 0.153761),(0.000000, 0.153760, 0.102740),(0.072648, 0.072648, 0.153761),(0.108725, 0.108725, 0.102740),(0.000000, 0.181373, 0.036077),(-0.108725, 0.108725, 0.102740),(0.000000, 0.153760, 0.102740),(0.181373, -0.000000, 0.036077),(0.108725, -0.108725, 0.102740),(0.128250, -0.128250, 0.036077),(0.128250, 0.128250, -0.036077),(0.181373, -0.000000, 0.036077),(0.181373, -0.000000, -0.036077),(0.000000, -0.000000, 0.184926),(0.036077, -0.000000, 0.181373),(0.025511, 0.025510, 0.181373),(0.108725, 0.108725, 0.102740),(0.102739, -0.000000, 0.153761),(0.153760, -0.000000, 0.102740),(0.025511, 0.025510, -0.181373),(0.102739, -0.000000, -0.153760),(0.036077, -0.000000, -0.181373),(0.000000, 0.181373, -0.036077),(0.108725, 0.108725, -0.102739),(0.000000, 0.153760, -0.102739),(-0.072648, 0.072648, 0.153761),(0.000000, 0.036077, 0.181373),(0.000000, 0.102739, 0.153761),(0.000000, -0.000000, -0.184926),(0.000000, 0.036077, -0.181373),(0.025511, 0.025510, -0.181373),(0.153760, -0.000000, -0.102739),(0.128250, -0.128250, -0.036077),(0.108725, -0.108725, -0.102739),(0.108725, -0.108725, 0.102740),(0.102739, -0.000000, 0.153761),(0.072648, -0.072648, 0.153761),(0.128250, -0.128250, -0.036077),(-0.000000, -0.181373, 0.036077),(-0.000000, -0.181373, -0.036077),(0.102739, -0.000000, -0.153760),(0.108725, -0.108725, -0.102739),(0.072648, -0.072648, -0.153760),(0.000000, -0.000000, -0.184926),(0.025511, 0.025510, -0.181373),(0.036077, -0.000000, -0.181373),(0.072648, -0.072648, 0.153761),(-0.000000, -0.036077, 0.181373),(-0.000000, -0.102739, 0.153761),(0.036077, -0.000000, -0.181373),(0.072648, -0.072648, -0.153760),(0.025510, -0.025511, -0.181373),(0.128250, -0.128250, 0.036077),(-0.000000, -0.153760, 0.102740),(-0.000000, -0.181373, 0.036077),(0.000000, -0.000000, 0.184926),(0.025510, -0.025511, 0.181373),(0.036077, -0.000000, 0.181373),(-0.000000, -0.153760, 0.102740),(0.072648, -0.072648, 0.153761),(-0.000000, -0.102739, 0.153761),(-0.000000, -0.181373, -0.036077),(-0.128250, -0.128250, 0.036077),(-0.128250, -0.128250, -0.036077),(0.108725, -0.108725, -0.102739),(-0.000000, -0.181373, -0.036077),(-0.000000, -0.153760, -0.102739),(0.000000, -0.000000, -0.184926),(0.036077, -0.000000, -0.181373),(0.025510, -0.025511, -0.181373),(-0.000000, -0.102739, 0.153761),(-0.025511, -0.025510, 0.181373),(-0.072648, -0.072648, 0.153761),(0.025510, -0.025511, -0.181373),(-0.000000, -0.102739, -0.153760),(-0.000000, -0.036077, -0.181373),(-0.000000, -0.181373, 0.036077),(-0.108725, -0.108725, 0.102740),(-0.128250, -0.128250, 0.036077),(0.072648, -0.072648, -0.153760),(-0.000000, -0.153760, -0.102739),(-0.000000, -0.102739, -0.153760),(0.000000, -0.000000, 0.184926),(-0.000000, -0.036077, 0.181373),(0.025510, -0.025511, 0.181373),(-0.000000, -0.153760, 0.102740),(-0.072648, -0.072648, 0.153761),(-0.108725, -0.108725, 0.102740),(-0.128250, -0.128250, -0.036077),(-0.181373, 0.000000, 0.036077),(-0.181373, 0.000000, -0.036077),(-0.000000, -0.153760, -0.102739),(-0.128250, -0.128250, -0.036077),(-0.108725, -0.108725, -0.102739),(0.000000, -0.000000, -0.184926),(0.025510, -0.025511, -0.181373),(-0.000000, -0.036077, -0.181373),(-0.108725, -0.108725, 0.102740),(-0.102739, 0.000000, 0.153761),(-0.153760, 0.000000, 0.102740),(-0.000000, -0.036077, -0.181373),(-0.072648, -0.072648, -0.153760),(-0.025511, -0.025510, -0.181373),(-0.128250, -0.128250, 0.036077),(-0.153760, 0.000000, 0.102740),(-0.181373, 0.000000, 0.036077),(-0.000000, -0.102739, -0.153760),(-0.108725, -0.108725, -0.102739),(-0.072648, -0.072648, -0.153760),(-0.102739, 0.000000, 0.153761),(-0.025511, -0.025510, 0.181373),(-0.036077, 0.000000, 0.181373),(0.000000, -0.000000, 0.184926),(-0.025511, -0.025510, 0.181373),(-0.000000, -0.036077, 0.181373),(-0.181373, 0.000000, -0.036077),(-0.128250, 0.128250, 0.036077),(-0.128250, 0.128250, -0.036077),(-0.102739, 0.000000, -0.153760),(-0.108725, -0.108725, -0.102739),(-0.153760, 0.000000, -0.102739),(-0.108725, -0.108725, -0.102739),(-0.181373, 0.000000, -0.036077),(-0.153760, 0.000000, -0.102739),(-0.025511, -0.025510, -0.181373),(-0.102739, 0.000000, -0.153760),(-0.036077, 0.000000, -0.181373),(-0.181373, 0.000000, 0.036077),(-0.108725, 0.108725, 0.102740),(-0.128250, 0.128250, 0.036077),(-0.072648, 0.072648, 0.153761),(-0.036077, 0.000000, 0.181373),(-0.025510, 0.025511, 0.181373),(0.000000, -0.000000, 0.184926),(-0.036077, 0.000000, 0.181373),(-0.025511, -0.025510, 0.181373),(0.000000, -0.000000, -0.184926),(-0.000000, -0.036077, -0.181373),(-0.025511, -0.025510, -0.181373),(-0.128250, 0.128250, 0.036077),(0.000000, 0.181373, -0.036077),(-0.128250, 0.128250, -0.036077),(-0.102739, 0.000000, -0.153760),(-0.108725, 0.108725, -0.102739),(-0.072648, 0.072648, -0.153760),(-0.153760, 0.000000, -0.102739),(-0.128250, 0.128250, -0.036077),(-0.108725, 0.108725, -0.102739),(-0.153760, 0.000000, 0.102740),(-0.072648, 0.072648, 0.153761),(-0.108725, 0.108725, 0.102740),(0.000000, -0.000000, 0.184926),(-0.025510, 0.025511, 0.181373),(-0.036077, 0.000000, 0.181373),(-0.036077, 0.000000, -0.181373),(-0.072648, 0.072648, -0.153760),(-0.025510, 0.025511, -0.181373),(0.000000, -0.000000, -0.184926),(-0.025511, -0.025510, -0.181373),(-0.036077, 0.000000, -0.181373),(-0.108725, 0.108725, -0.102739),(0.000000, 0.102739, -0.153760),(-0.072648, 0.072648, -0.153760),(-0.128250, 0.128250, -0.036077),(0.000000, 0.153760, -0.102739),(-0.108725, 0.108725, -0.102739),(0.000000, -0.000000, -0.184926),(-0.025510, 0.025511, -0.181373),(0.000000, 0.036077, -0.181373),(0.000000, -0.000000, 0.184926),(0.000000, 0.036077, 0.181373),(-0.025510, 0.025511, 0.181373),(0.000000, -0.000000, -0.184926),(-0.036077, 0.000000, -0.181373),(-0.025510, 0.025511, -0.181373),(0.153760, -0.000000, -0.102739),(0.128250, 0.128250, -0.036077),(0.181373, -0.000000, -0.036077),(0.000000, 0.153760, -0.102739),(0.072648, 0.072648, -0.153760),(0.000000, 0.102739, -0.153760),(0.102739, -0.000000, 0.153761),(0.025511, 0.025510, 0.181373),(0.036077, -0.000000, 0.181373),(0.072648, 0.072648, -0.153760),(0.153760, -0.000000, -0.102739),(0.102739, -0.000000, -0.153760),(0.000000, -0.000000, 0.184926),(0.025511, 0.025510, 0.181373),(0.000000, 0.036077, 0.181373),(0.128250, 0.128250, 0.036077),(0.153760, -0.000000, 0.102740),(0.181373, -0.000000, 0.036077),(0.000000, -0.032030, 0.501351),(0.000000, 0.000000, 0.232005),(0.022648, -0.022648, 0.501351),(0.022648, -0.022648, 0.501351),(0.000000, 0.000000, 0.232005),(0.032030, -0.000000, 0.501351),(0.032030, -0.000000, 0.501351),(0.000000, 0.000000, 0.232005),(0.022648, 0.022648, 0.501351),(0.022648, 0.022648, 0.501351),(0.000000, 0.000000, 0.232005),(0.000000, 0.032030, 0.501351),(0.000000, 0.032030, 0.501351),(0.000000, 0.000000, 0.232005),(-0.022648, 0.022648, 0.501351),(-0.022648, 0.022648, 0.501351),(0.000000, 0.000000, 0.232005),(-0.032030, -0.000000, 0.501351),(-0.032030, -0.000000, 0.501351),(0.000000, 0.000000, 0.232005),(-0.022648, -0.022648, 0.501351),(-0.022648, -0.022648, 0.501351),(0.000000, 0.000000, 0.232005),(0.000000, -0.032030, 0.501351),(0.000000, -0.032030, -0.501351),(0.022648, -0.022648, -0.501351),(0.000000, -0.000000, -0.232005),(0.022648, -0.022648, -0.501351),(0.032030, 0.000000, -0.501351),(0.000000, -0.000000, -0.232005),(0.032030, 0.000000, -0.501351),(0.022648, 0.022648, -0.501351),(0.000000, -0.000000, -0.232005),(0.022648, 0.022648, -0.501351),(0.000000, 0.032030, -0.501351),(0.000000, -0.000000, -0.232005),(0.000000, 0.032030, -0.501351),(-0.022648, 0.022648, -0.501351),(0.000000, -0.000000, -0.232005),(-0.022648, 0.022648, -0.501351),(-0.032030, 0.000000, -0.501351),(0.000000, -0.000000, -0.232005),(-0.032030, 0.000000, -0.501351),(-0.022648, -0.022648, -0.501351),(0.000000, -0.000000, -0.232005),(-0.022648, -0.022648, -0.501351),(0.000000, -0.032030, -0.501351),(0.000000, -0.000000, -0.232005),(0.501351, -0.032030, 0.000000),(0.232005, 0.000000, -0.000000),(0.501351, -0.022648, -0.022648),(0.501351, -0.022648, -0.022648),(0.232005, 0.000000, -0.000000),(0.501351, -0.000000, -0.032030),(0.501351, -0.000000, -0.032030),(0.232005, 0.000000, -0.000000),(0.501351, 0.022648, -0.022648),(0.501351, 0.022648, -0.022648),(0.232005, 0.000000, -0.000000),(0.501351, 0.032030, 0.000000),(0.501351, 0.032030, 0.000000),(0.232005, 0.000000, -0.000000),(0.501351, 0.022648, 0.022648),(0.501351, 0.022648, 0.022648),(0.232005, 0.000000, -0.000000),(0.501351, -0.000000, 0.032030),(0.501351, -0.000000, 0.032030),(0.232005, 0.000000, -0.000000),(0.501351, -0.022648, 0.022648),(0.501351, -0.022648, 0.022648),(0.232005, 0.000000, -0.000000),(0.501351, -0.032030, 0.000000),(-0.501351, -0.032029, -0.000000),(-0.501351, -0.022648, -0.022648),(-0.232005, 0.000000, 0.000000),(-0.501351, -0.022648, -0.022648),(-0.501351, 0.000000, -0.032030),(-0.232005, 0.000000, 0.000000),(-0.501351, 0.000000, -0.032030),(-0.501351, 0.022649, -0.022648),(-0.232005, 0.000000, 0.000000),(-0.501351, 0.022649, -0.022648),(-0.501351, 0.032030, -0.000000),(-0.232005, 0.000000, 0.000000),(-0.501351, 0.032030, -0.000000),(-0.501351, 0.022649, 0.022648),(-0.232005, 0.000000, 0.000000),(-0.501351, 0.022649, 0.022648),(-0.501351, 0.000000, 0.032030),(-0.232005, 0.000000, 0.000000),(-0.501351, 0.000000, 0.032030),(-0.501351, -0.022648, 0.022648),(-0.232005, 0.000000, 0.000000),(-0.501351, -0.022648, 0.022648),(-0.501351, -0.032029, -0.000000),(-0.232005, 0.000000, 0.000000),(-0.370524, -0.022648, -0.338494),(-0.354509, -0.032030, -0.354509),(-0.164052, -0.000000, -0.164052),(-0.377158, -0.000000, -0.331861),(-0.370524, -0.022648, -0.338494),(-0.164052, -0.000000, -0.164052),(-0.370524, 0.022648, -0.338494),(-0.377158, -0.000000, -0.331861),(-0.164052, -0.000000, -0.164052),(-0.354509, 0.032030, -0.354509),(-0.370524, 0.022648, -0.338494),(-0.164052, -0.000000, -0.164052),(-0.338494, 0.022648, -0.370524),(-0.354509, 0.032030, -0.354509),(-0.164052, -0.000000, -0.164052),(-0.331861, -0.000000, -0.377157),(-0.338494, 0.022648, -0.370524),(-0.164052, -0.000000, -0.164052),(-0.338494, -0.022648, -0.370524),(-0.331861, -0.000000, -0.377157),(-0.164052, -0.000000, -0.164052),(-0.354509, -0.032030, -0.354509),(-0.370524, -0.022648, -0.338494),(-0.377158, -0.000000, -0.331861),(-0.377158, -0.000000, -0.331861),(-0.370524, 0.022648, -0.338494),(-0.354509, 0.032030, -0.354509),(-0.354509, 0.032030, -0.354509),(-0.338494, 0.022648, -0.370524),(-0.331861, -0.000000, -0.377157),(-0.331861, -0.000000, -0.377157),(-0.338494, -0.022648, -0.370524),(-0.354509, -0.032030, -0.354509),(-0.354509, -0.032030, -0.354509),(-0.377158, -0.000000, -0.331861),(-0.354509, 0.032030, -0.354509),(-0.354509, 0.032030, -0.354509),(-0.331861, -0.000000, -0.377157),(-0.354509, -0.032030, -0.354509),(-0.015524, -0.417144, 0.000000),(0.000001, -0.417144, 0.017897),(0.000001, -0.156002, 0.029354),(0.000000, 0.181373, 0.036077),(0.128250, 0.128250, 0.036077),(0.128250, 0.128250, -0.036077),(-0.072648, 0.072648, -0.153760),(0.000000, 0.102739, -0.153760),(0.000000, 0.036077, -0.181373),(0.128250, 0.128250, 0.036077),(0.000000, 0.181373, 0.036077),(0.000000, 0.153760, 0.102740),(0.025511, 0.025510, -0.181373),(0.000000, 0.036077, -0.181373),(0.000000, 0.102739, -0.153760),(0.181373, -0.000000, -0.036077),(0.181373, -0.000000, 0.036077),(0.128250, -0.128250, 0.036077),(0.000000, 0.153760, 0.102740),(-0.108725, 0.108725, 0.102740),(-0.072648, 0.072648, 0.153761),(0.000000, 0.102739, 0.153761),(0.000000, 0.036077, 0.181373),(0.025511, 0.025510, 0.181373),(0.102739, -0.000000, 0.153761),(0.036077, -0.000000, 0.181373),(0.025510, -0.025511, 0.181373),(0.000000, 0.153760, 0.102740),(0.000000, 0.102739, 0.153761),(0.072648, 0.072648, 0.153761),(0.000000, 0.181373, 0.036077),(-0.128250, 0.128250, 0.036077),(-0.108725, 0.108725, 0.102740),(0.181373, -0.000000, 0.036077),(0.153760, -0.000000, 0.102740),(0.108725, -0.108725, 0.102740),(0.128250, 0.128250, -0.036077),(0.128250, 0.128250, 0.036077),(0.181373, -0.000000, 0.036077),(0.108725, 0.108725, 0.102740),(0.072648, 0.072648, 0.153761),(0.102739, -0.000000, 0.153761),(0.025511, 0.025510, -0.181373),(0.072648, 0.072648, -0.153760),(0.102739, -0.000000, -0.153760),(0.000000, 0.181373, -0.036077),(0.128250, 0.128250, -0.036077),(0.108725, 0.108725, -0.102739),(-0.072648, 0.072648, 0.153761),(-0.025510, 0.025511, 0.181373),(0.000000, 0.036077, 0.181373),(0.153760, -0.000000, -0.102739),(0.181373, -0.000000, -0.036077),(0.128250, -0.128250, -0.036077),(0.108725, -0.108725, 0.102740),(0.153760, -0.000000, 0.102740),(0.102739, -0.000000, 0.153761),(0.128250, -0.128250, -0.036077),(0.128250, -0.128250, 0.036077),(-0.000000, -0.181373, 0.036077),(0.102739, -0.000000, -0.153760),(0.153760, -0.000000, -0.102739),(0.108725, -0.108725, -0.102739),(0.072648, -0.072648, 0.153761),(0.025510, -0.025511, 0.181373),(-0.000000, -0.036077, 0.181373),(0.036077, -0.000000, -0.181373),(0.102739, -0.000000, -0.153760),(0.072648, -0.072648, -0.153760),(0.128250, -0.128250, 0.036077),(0.108725, -0.108725, 0.102740),(-0.000000, -0.153760, 0.102740),(-0.000000, -0.153760, 0.102740),(0.108725, -0.108725, 0.102740),(0.072648, -0.072648, 0.153761),(-0.000000, -0.181373, -0.036077),(-0.000000, -0.181373, 0.036077),(-0.128250, -0.128250, 0.036077),(0.108725, -0.108725, -0.102739),(0.128250, -0.128250, -0.036077),(-0.000000, -0.181373, -0.036077),(-0.000000, -0.102739, 0.153761),(-0.000000, -0.036077, 0.181373),(-0.025511, -0.025510, 0.181373),(0.025510, -0.025511, -0.181373),(0.072648, -0.072648, -0.153760),(-0.000000, -0.102739, -0.153760),(-0.000000, -0.181373, 0.036077),(-0.000000, -0.153760, 0.102740),(-0.108725, -0.108725, 0.102740),(0.072648, -0.072648, -0.153760),(0.108725, -0.108725, -0.102739),(-0.000000, -0.153760, -0.102739),(-0.000000, -0.153760, 0.102740),(-0.000000, -0.102739, 0.153761),(-0.072648, -0.072648, 0.153761),(-0.128250, -0.128250, -0.036077),(-0.128250, -0.128250, 0.036077),(-0.181373, 0.000000, 0.036077),(-0.000000, -0.153760, -0.102739),(-0.000000, -0.181373, -0.036077),(-0.128250, -0.128250, -0.036077),(-0.108725, -0.108725, 0.102740),(-0.072648, -0.072648, 0.153761),(-0.102739, 0.000000, 0.153761),(-0.000000, -0.036077, -0.181373),(-0.000000, -0.102739, -0.153760),(-0.072648, -0.072648, -0.153760),(-0.128250, -0.128250, 0.036077),(-0.108725, -0.108725, 0.102740),(-0.153760, 0.000000, 0.102740),(-0.000000, -0.102739, -0.153760),(-0.000000, -0.153760, -0.102739),(-0.108725, -0.108725, -0.102739),(-0.102739, 0.000000, 0.153761),(-0.072648, -0.072648, 0.153761),(-0.025511, -0.025510, 0.181373),(-0.181373, 0.000000, -0.036077),(-0.181373, 0.000000, 0.036077),(-0.128250, 0.128250, 0.036077),(-0.102739, 0.000000, -0.153760),(-0.072648, -0.072648, -0.153760),(-0.108725, -0.108725, -0.102739),(-0.108725, -0.108725, -0.102739),(-0.128250, -0.128250, -0.036077),(-0.181373, 0.000000, -0.036077),(-0.025511, -0.025510, -0.181373),(-0.072648, -0.072648, -0.153760),(-0.102739, 0.000000, -0.153760),(-0.181373, 0.000000, 0.036077),(-0.153760, 0.000000, 0.102740),(-0.108725, 0.108725, 0.102740),(-0.072648, 0.072648, 0.153761),(-0.102739, 0.000000, 0.153761),(-0.036077, 0.000000, 0.181373),(-0.128250, 0.128250, 0.036077),(0.000000, 0.181373, 0.036077),(0.000000, 0.181373, -0.036077),(-0.102739, 0.000000, -0.153760),(-0.153760, 0.000000, -0.102739),(-0.108725, 0.108725, -0.102739),(-0.153760, 0.000000, -0.102739),(-0.181373, 0.000000, -0.036077),(-0.128250, 0.128250, -0.036077),(-0.153760, 0.000000, 0.102740),(-0.102739, 0.000000, 0.153761),(-0.072648, 0.072648, 0.153761),(-0.036077, 0.000000, -0.181373),(-0.102739, 0.000000, -0.153760),(-0.072648, 0.072648, -0.153760),(-0.108725, 0.108725, -0.102739),(0.000000, 0.153760, -0.102739),(0.000000, 0.102739, -0.153760),(-0.128250, 0.128250, -0.036077),(0.000000, 0.181373, -0.036077),(0.000000, 0.153760, -0.102739),(0.153760, -0.000000, -0.102739),(0.108725, 0.108725, -0.102739),(0.128250, 0.128250, -0.036077),(0.000000, 0.153760, -0.102739),(0.108725, 0.108725, -0.102739),(0.072648, 0.072648, -0.153760),(0.102739, -0.000000, 0.153761),(0.072648, 0.072648, 0.153761),(0.025511, 0.025510, 0.181373),(0.072648, 0.072648, -0.153760),(0.108725, 0.108725, -0.102739),(0.153760, -0.000000, -0.102739),(0.128250, 0.128250, 0.036077),(0.108725, 0.108725, 0.102740),(0.153760, -0.000000, 0.102740),(-0.501351, -0.032029, -0.000000),(-0.501351, -0.022648, 0.022648),(-0.501351, 0.000000, 0.032030),(-0.501351, 0.000000, 0.032030),(-0.501351, 0.022649, 0.022648),(-0.501351, 0.032030, -0.000000),(-0.501351, 0.032030, -0.000000),(-0.501351, 0.022649, -0.022648),(-0.501351, 0.000000, -0.032030),(-0.501351, 0.000000, -0.032030),(-0.501351, -0.022648, -0.022648),(-0.501351, -0.032029, -0.000000),(-0.501351, -0.032029, -0.000000),(-0.501351, 0.000000, 0.032030),(-0.501351, 0.032030, -0.000000),(-0.501351, 0.032030, -0.000000),(-0.501351, 0.000000, -0.032030),(-0.501351, -0.032029, -0.000000),(-0.354509, -0.032030, -0.354509),(-0.338494, -0.022648, -0.370524),(-0.164052, -0.000000, -0.164052),(0.000000, -0.032030, -0.501351),(-0.022648, -0.022648, -0.501351),(-0.032030, 0.000000, -0.501351),(-0.032030, 0.000000, -0.501351),(-0.022648, 0.022648, -0.501351),(0.000000, 0.032030, -0.501351),(0.000000, 0.032030, -0.501351),(0.022648, 0.022648, -0.501351),(0.032030, 0.000000, -0.501351),(0.032030, 0.000000, -0.501351),(0.022648, -0.022648, -0.501351),(0.000000, -0.032030, -0.501351),(0.000000, -0.032030, -0.501351),(-0.032030, 0.000000, -0.501351),(0.000000, 0.032030, -0.501351),(0.000000, 0.032030, -0.501351),(0.032030, 0.000000, -0.501351),(0.000000, -0.032030, -0.501351),(0.501351, -0.000000, 0.032030),(0.501351, -0.022648, 0.022648),(0.501351, -0.032030, 0.000000),(0.501351, -0.032030, 0.000000),(0.501351, -0.022648, -0.022648),(0.501351, -0.000000, -0.032030),(0.501351, -0.000000, -0.032030),(0.501351, 0.022648, -0.022648),(0.501351, 0.032030, 0.000000),(0.501351, 0.032030, 0.000000),(0.501351, 0.022648, 0.022648),(0.501351, -0.000000, 0.032030),(0.501351, -0.000000, 0.032030),(0.501351, -0.032030, 0.000000),(0.501351, -0.000000, -0.032030),(0.501351, -0.000000, -0.032030),(0.501351, 0.032030, 0.000000),(0.501351, -0.000000, 0.032030),(-0.032030, -0.000000, 0.501351),(-0.022648, -0.022648, 0.501351),(0.000000, -0.032030, 0.501351),(0.000000, -0.032030, 0.501351),(0.022648, -0.022648, 0.501351),(0.032030, -0.000000, 0.501351),(0.032030, -0.000000, 0.501351),(0.022648, 0.022648, 0.501351),(0.000000, 0.032030, 0.501351),(0.000000, 0.032030, 0.501351),(-0.022648, 0.022648, 0.501351),(-0.032030, -0.000000, 0.501351),(-0.032030, -0.000000, 0.501351),(0.000000, -0.032030, 0.501351),(0.032030, -0.000000, 0.501351),(0.032030, -0.000000, 0.501351),(0.000000, 0.032030, 0.501351),(-0.032030, -0.000000, 0.501351),(0.000001, -0.156002, 0.029354),(0.000001, -0.417144, 0.017897),(0.015525, -0.417144, 0.000000),(-0.037686, -0.156002, 0.000000),(-0.015524, -0.417144, 0.000000),(0.000001, -0.156002, 0.029354),(0.037687, -0.156002, 0.000000),(0.000001, -0.156002, 0.029354),(0.015525, -0.417144, 0.000000),(-0.015524, -0.417144, 0.000000),(0.000001, -0.156002, -0.029353),(0.000001, -0.417144, -0.017896),(0.000001, -0.156002, -0.029353),(0.015525, -0.417144, 0.000000),(0.000001, -0.417144, -0.017896),(-0.037686, -0.156002, 0.000000),(0.000001, -0.156002, -0.029353),(-0.015524, -0.417144, 0.000000),(0.037687, -0.156002, 0.000000),(0.015525, -0.417144, 0.000000),(0.000001, -0.156002, -0.029353),(0.000001, -0.417144, 0.017897),(-0.015524, -0.417144, 0.000000),(-0.127998, -0.318886, 0.000000),(0.128000, -0.318886, 0.000000),(0.015525, -0.417144, 0.000000),(0.000001, -0.417144, 0.017897),(0.000001, -0.625057, 0.000000),(0.000001, -0.417144, 0.017897),(-0.127998, -0.318886, 0.000000),(0.000001, -0.625057, 0.000000),(0.128000, -0.318886, 0.000000),(0.000001, -0.417144, 0.017897),(0.000001, -0.417144, -0.017896),(-0.127998, -0.318886, 0.000000),(-0.015524, -0.417144, 0.000000),(0.128000, -0.318886, 0.000000),(0.000001, -0.417144, -0.017896),(0.015525, -0.417144, 0.000000),(0.000001, -0.625057, 0.000000),(-0.127998, -0.318886, 0.000000),(0.000001, -0.417144, -0.017896),(0.000001, -0.625057, 0.000000),(0.000001, -0.417144, -0.017896),(0.128000, -0.318886, 0.000000),(0.000000, 0.000000, 0.232005),(-0.032030, -0.000000, 0.501351),(-0.022648, 0.022648, 0.501351),(-0.022648, 0.022648, 0.501351),(-0.022648, -0.022648, 0.501351),(0.000000, -0.032030, 0.501351),(0.000000, 0.032030, 0.501351),(0.022648, -0.022648, 0.501351),(0.022648, 0.022648, 0.501351),(-0.022648, 0.022648, 0.501351),(0.000000, -0.032030, 0.501351),(0.000000, 0.032030, 0.501351),(0.022648, 0.022648, 0.501351),(0.032030, -0.000000, 0.501351),(0.000000, 0.000000, 0.232005),(0.000000, 0.000000, 0.232005),(-0.022648, 0.022648, 0.501351),(0.000000, 0.032030, 0.501351),(0.000000, 0.000000, 0.232005),(0.000000, 0.032030, 0.501351),(0.022648, 0.022648, 0.501351),(-0.338494, -0.022649, 0.370524),(-0.354509, -0.032030, 0.354509),(-0.164052, -0.000000, 0.164053),(-0.331861, -0.000000, 0.377158),(-0.338494, -0.022649, 0.370524),(-0.164052, -0.000000, 0.164053),(-0.338494, 0.022648, 0.370524),(-0.331861, -0.000000, 0.377158),(-0.164052, -0.000000, 0.164053),(-0.354509, 0.032030, 0.354509),(-0.338494, 0.022648, 0.370524),(-0.164052, -0.000000, 0.164053),(-0.370524, 0.022648, 0.338494),(-0.354509, 0.032030, 0.354509),(-0.164052, -0.000000, 0.164053),(-0.377158, -0.000000, 0.331861),(-0.370524, 0.022648, 0.338494),(-0.164052, -0.000000, 0.164053),(-0.370524, -0.022649, 0.338494),(-0.377158, -0.000000, 0.331861),(-0.164052, -0.000000, 0.164053),(-0.354509, -0.032030, 0.354509),(-0.338494, -0.022649, 0.370524),(-0.331861, -0.000000, 0.377158),(-0.331861, -0.000000, 0.377158),(-0.338494, 0.022648, 0.370524),(-0.354509, 0.032030, 0.354509),(-0.354509, 0.032030, 0.354509),(-0.370524, 0.022648, 0.338494),(-0.377158, -0.000000, 0.331861),(-0.377158, -0.000000, 0.331861),(-0.370524, -0.022649, 0.338494),(-0.354509, -0.032030, 0.354509),(-0.354509, -0.032030, 0.354509),(-0.331861, -0.000000, 0.377158),(-0.354509, 0.032030, 0.354509),(-0.354509, 0.032030, 0.354509),(-0.377158, -0.000000, 0.331861),(-0.354509, -0.032030, 0.354509),(-0.354509, -0.032030, 0.354509),(-0.370524, -0.022649, 0.338494),(-0.164052, -0.000000, 0.164053),(0.370524, -0.022649, 0.338494),(0.354509, -0.032030, 0.354509),(0.164052, -0.000000, 0.164053),(0.377158, -0.000000, 0.331861),(0.370524, -0.022649, 0.338494),(0.164052, -0.000000, 0.164053),(0.370524, 0.022648, 0.338494),(0.377158, -0.000000, 0.331861),(0.164052, -0.000000, 0.164053),(0.354509, 0.032030, 0.354509),(0.370524, 0.022648, 0.338494),(0.164052, -0.000000, 0.164053),(0.338494, 0.022648, 0.370524),(0.354509, 0.032030, 0.354509),(0.164052, -0.000000, 0.164053),(0.331861, -0.000000, 0.377158),(0.338494, 0.022648, 0.370524),(0.164052, -0.000000, 0.164053),(0.338494, -0.022649, 0.370524),(0.331861, -0.000000, 0.377158),(0.164052, -0.000000, 0.164053),(0.354509, -0.032030, 0.354509),(0.370524, -0.022649, 0.338494),(0.377158, -0.000000, 0.331861),(0.377158, -0.000000, 0.331861),(0.370524, 0.022648, 0.338494),(0.354509, 0.032030, 0.354509),(0.354509, 0.032030, 0.354509),(0.338494, 0.022648, 0.370524),(0.331861, -0.000000, 0.377158),(0.331861, -0.000000, 0.377158),(0.338494, -0.022649, 0.370524),(0.354509, -0.032030, 0.354509),(0.354509, -0.032030, 0.354509),(0.377158, -0.000000, 0.331861),(0.354509, 0.032030, 0.354509),(0.354509, 0.032030, 0.354509),(0.331861, -0.000000, 0.377158),(0.354509, -0.032030, 0.354509),(0.354509, -0.032030, 0.354509),(0.338494, -0.022649, 0.370524),(0.164052, -0.000000, 0.164053),(0.338494, -0.022648, -0.370524),(0.354509, -0.032030, -0.354509),(0.164052, -0.000000, -0.164052),(0.331861, -0.000000, -0.377157),(0.338494, -0.022648, -0.370524),(0.164052, -0.000000, -0.164052),(0.338494, 0.022648, -0.370524),(0.331861, -0.000000, -0.377157),(0.164052, -0.000000, -0.164052),(0.354509, 0.032030, -0.354509),(0.338494, 0.022648, -0.370524),(0.164052, -0.000000, -0.164052),(0.370524, 0.022648, -0.338494),(0.354509, 0.032030, -0.354509),(0.164052, -0.000000, -0.164052),(0.377158, -0.000000, -0.331861),(0.370524, 0.022648, -0.338494),(0.164052, -0.000000, -0.164052),(0.370524, -0.022648, -0.338494),(0.377158, -0.000000, -0.331861),(0.164052, -0.000000, -0.164052),(0.354509, -0.032030, -0.354509),(0.338494, -0.022648, -0.370524),(0.331861, -0.000000, -0.377157),(0.331861, -0.000000, -0.377157),(0.338494, 0.022648, -0.370524),(0.354509, 0.032030, -0.354509),(0.354509, 0.032030, -0.354509),(0.370524, 0.022648, -0.338494),(0.377158, -0.000000, -0.331861),(0.377158, -0.000000, -0.331861),(0.370524, -0.022648, -0.338494),(0.354509, -0.032030, -0.354509),(0.354509, -0.032030, -0.354509),(0.331861, -0.000000, -0.377157),(0.354509, 0.032030, -0.354509),(0.354509, 0.032030, -0.354509),(0.377158, -0.000000, -0.331861),(0.354509, -0.032030, -0.354509),(0.354509, -0.032030, -0.354509),(0.370524, -0.022648, -0.338494),(0.164052, -0.000000, -0.164052),) \ No newline at end of file diff --git a/addons/io_hubs_addon/components/models/image.py b/addons/io_hubs_addon/components/models/image.py new file mode 100644 index 00000000..ad31fb20 --- /dev/null +++ b/addons/io_hubs_addon/components/models/image.py @@ -0,0 +1 @@ +SHAPE = ((0.179200, -0.003164, 0.143934),(-0.379381, -0.003164, 0.218799),(0.374179, -0.003164, 0.218799),(0.176258, -0.003164, 0.053778),(-0.042987, -0.003164, 0.049414),(0.152390, -0.003164, 0.064234),(0.374179, -0.003164, -0.227073),(0.224317, -0.003164, 0.064234),(0.374179, -0.003164, 0.218799),(0.374179, -0.003164, -0.227073),(0.203420, -0.003164, 0.053778),(0.224317, -0.003164, 0.064234),(-0.042987, -0.003164, 0.049414),(0.176258, -0.003164, 0.053778),(0.255820, -0.003164, -0.227073),(0.255820, -0.003164, -0.227073),(0.203420, -0.003164, 0.053778),(0.374179, -0.003164, -0.227073),(0.176258, -0.003164, 0.053778),(0.203420, -0.003164, 0.053778),(0.255820, -0.003164, -0.227073),(0.152390, -0.003164, 0.064234),(-0.042987, -0.003164, 0.049414),(0.140885, -0.003164, 0.085722),(-0.379381, -0.003164, 0.218799),(-0.185834, -0.003164, -0.056347),(-0.379381, -0.003164, -0.227073),(-0.379381, -0.003164, -0.227073),(-0.185834, -0.003164, -0.056347),(-0.245138, -0.003164, -0.227073),(-0.185834, -0.003164, -0.056347),(-0.042987, -0.003164, 0.049414),(-0.115578, -0.003164, -0.121322),(0.240318, -0.003164, 0.085722),(0.374179, -0.003164, 0.218799),(0.224317, -0.003164, 0.064234),(0.240318, -0.003164, 0.110617),(0.374179, -0.003164, 0.218799),(0.240318, -0.003164, 0.085722),(-0.379381, -0.003164, 0.218799),(-0.042987, -0.003164, 0.049414),(-0.185834, -0.003164, -0.056347),(-0.042987, -0.003164, 0.049414),(0.141931, -0.003164, 0.110617),(0.140885, -0.003164, 0.085722),(-0.042987, -0.003164, 0.049414),(0.155332, -0.003164, 0.133878),(0.141931, -0.003164, 0.110617),(0.227260, -0.003164, 0.133878),(0.374179, -0.003164, 0.218799),(0.240318, -0.003164, 0.110617),(0.206362, -0.003164, 0.143301),(0.374179, -0.003164, 0.218799),(0.227260, -0.003164, 0.133878),(-0.379381, -0.003164, 0.218799),(0.155332, -0.003164, 0.133878),(-0.042987, -0.003164, 0.049414),(0.179200, -0.003164, 0.143934),(0.374179, -0.003164, 0.218799),(0.206362, -0.003164, 0.143301),(-0.379381, -0.003164, 0.218799),(0.179200, -0.003164, 0.143934),(0.155332, -0.003164, 0.133878),(0.172613, -0.005452, 0.169954),(0.374179, -0.005452, 0.218799),(-0.379381, -0.005452, 0.218799),(0.374179, -0.005452, -0.227073),(0.374179, -0.005452, 0.218799),(0.243650, -0.005452, 0.044467),(0.374179, -0.005452, -0.227073),(0.243650, -0.005452, 0.044467),(0.210748, -0.005452, 0.028005),(0.336084, -0.005452, -0.227073),(0.374179, -0.005452, -0.227073),(0.210748, -0.005452, 0.028005),(0.167981, -0.005452, 0.028005),(0.336084, -0.005452, -0.227073),(0.210748, -0.005452, 0.028005),(0.130400, -0.005452, 0.044467),(0.112286, -0.005452, 0.078300),(-0.059786, -0.005452, 0.136211),(-0.379381, -0.005452, 0.218799),(-0.379381, -0.005452, -0.227073),(-0.212899, -0.005452, 0.046316),(-0.379381, -0.005452, -0.227073),(-0.313268, -0.005452, -0.227073),(-0.212899, -0.005452, 0.046316),(-0.212899, -0.005452, 0.046316),(-0.128645, -0.005452, -0.037325),(-0.059786, -0.005452, 0.136211),(0.268843, -0.005452, 0.078300),(0.243650, -0.005452, 0.044467),(0.374179, -0.005452, 0.218799),(0.268843, -0.005452, 0.117497),(0.268843, -0.005452, 0.078300),(0.374179, -0.005452, 0.218799),(-0.379381, -0.005452, 0.218799),(-0.212899, -0.005452, 0.046316),(-0.059786, -0.005452, 0.136211),(-0.059786, -0.005452, 0.136211),(0.112286, -0.005452, 0.078300),(0.113934, -0.005452, 0.117497),(-0.059786, -0.005452, 0.136211),(0.113934, -0.005452, 0.117497),(0.135032, -0.005452, 0.154122),(0.248282, -0.005452, 0.154122),(0.268843, -0.005452, 0.117497),(0.374179, -0.005452, 0.218799),(0.215379, -0.005452, 0.168957),(0.248282, -0.005452, 0.154122),(0.374179, -0.005452, 0.218799),(-0.379381, -0.005452, 0.218799),(-0.059786, -0.005452, 0.136211),(0.135032, -0.005452, 0.154122),(0.172613, -0.005452, 0.169954),(0.215379, -0.005452, 0.168957),(0.374179, -0.005452, 0.218799),(-0.379381, -0.005452, 0.218799),(0.135032, -0.005452, 0.154122),(0.172613, -0.005452, 0.169954),(0.501103, 0.000000, -0.325349),(0.501103, -0.000000, 0.325349),(0.433878, -0.000000, 0.269627),(-0.501103, -0.000000, 0.325349),(-0.501103, 0.000000, -0.325349),(-0.433878, 0.000000, -0.269627),(0.433878, -0.000000, 0.269627),(0.501103, -0.000000, 0.325349),(-0.501103, -0.000000, 0.325349),(-0.433878, 0.000000, -0.269627),(-0.501103, 0.000000, -0.325349),(0.501103, 0.000000, -0.325349),(0.336084, -0.005452, -0.227073),(0.130400, -0.005452, 0.044467),(-0.059786, -0.005452, 0.136211),(0.336084, -0.005452, -0.227073),(0.167981, -0.005452, 0.028005),(0.130400, -0.005452, 0.044467),(0.501103, 0.000000, -0.325349),(0.433878, -0.000000, 0.269627),(0.433878, 0.000000, -0.269627),(-0.501103, -0.000000, 0.325349),(-0.433878, 0.000000, -0.269627),(-0.433878, -0.000000, 0.269627),(0.433878, -0.000000, 0.269627),(-0.501103, -0.000000, 0.325349),(-0.433878, -0.000000, 0.269627),(-0.433878, 0.000000, -0.269627),(0.501103, 0.000000, -0.325349),(0.433878, 0.000000, -0.269627),) \ No newline at end of file diff --git a/addons/io_hubs_addon/components/models/link.py b/addons/io_hubs_addon/components/models/link.py new file mode 100644 index 00000000..f4f05d06 --- /dev/null +++ b/addons/io_hubs_addon/components/models/link.py @@ -0,0 +1 @@ +SHAPE = ((0.153029, -0.091493, -0.027939),(0.036019, -0.018590, 0.143833),(0.046648, -0.042210, 0.187375),(0.153029, -0.091493, -0.027939),(0.046648, -0.042210, 0.187375),(0.174287, -0.121736, -0.000000),(-0.007655, -0.109699, -0.173613),(0.330949, -0.109699, -0.173613),(0.303646, -0.114328, -0.122298),(-0.007655, -0.109699, -0.173613),(0.303646, -0.114328, -0.122298),(0.019648, -0.114328, -0.122298),(0.367100, -0.090125, 0.028674),(0.303646, -0.051107, -0.064950),(0.291960, -0.089904, -0.076381),(0.367100, -0.090125, 0.028674),(0.291960, -0.089904, -0.076381),(0.343727, -0.121736, 0.000000),(0.019648, -0.114328, -0.122298),(0.303646, -0.114328, -0.122298),(0.291960, -0.089904, -0.076381),(0.019648, -0.114328, -0.122298),(0.291960, -0.089904, -0.076381),(0.031335, -0.089904, -0.076381),(0.019648, -0.051107, -0.064950),(0.303646, -0.051107, -0.064950),(0.330949, -0.022160, -0.094205),(0.019648, -0.051107, -0.064950),(0.330949, -0.022160, -0.094205),(-0.007655, -0.022160, -0.094205),(0.474212, -0.091339, 0.027573),(0.357202, -0.019389, -0.145071),(0.330949, -0.022160, -0.094205),(0.474212, -0.091339, 0.027573),(0.330949, -0.022160, -0.094205),(0.421706, -0.077966, 0.039704),(-0.007655, -0.221312, 0.094205),(-0.033908, -0.224082, 0.145071),(-0.150918, -0.152133, -0.027573),(-0.007655, -0.221312, 0.094205),(-0.150918, -0.152133, -0.027573),(-0.098412, -0.165505, -0.039704),(-0.033908, -0.224082, 0.145071),(-0.044537, -0.200221, 0.188328),(-0.172177, -0.121736, 0.000000),(-0.033908, -0.224082, 0.145071),(-0.172177, -0.121736, 0.000000),(-0.150918, -0.152133, -0.027573),(-0.044537, -0.043250, -0.188328),(0.367831, -0.043250, -0.188328),(0.357202, -0.080183, -0.200218),(-0.044537, -0.043250, -0.188328),(0.357202, -0.080183, -0.200218),(-0.033908, -0.080183, -0.200218),(0.019648, -0.192364, 0.064950),(-0.007655, -0.221312, 0.094205),(-0.098412, -0.165505, -0.039704),(0.019648, -0.192364, 0.064950),(-0.098412, -0.165505, -0.039704),(-0.043806, -0.153346, -0.028674),(0.291960, -0.089904, -0.076381),(0.303646, -0.114328, -0.122298),(0.367100, -0.153346, -0.028674),(0.291960, -0.089904, -0.076381),(0.367100, -0.153346, -0.028674),(0.343727, -0.121736, 0.000000),(0.031335, -0.089904, -0.076381),(0.291960, -0.089904, -0.076381),(0.303646, -0.051107, -0.064950),(0.031335, -0.089904, -0.076381),(0.303646, -0.051107, -0.064950),(0.019648, -0.051107, -0.064950),(0.421706, -0.165505, -0.039704),(0.330949, -0.221312, 0.094205),(0.303646, -0.192364, 0.064950),(0.421706, -0.165505, -0.039704),(0.303646, -0.192364, 0.064950),(0.367100, -0.153346, -0.028674),(-0.007655, -0.221312, 0.094205),(0.330949, -0.221312, 0.094205),(0.357202, -0.224082, 0.145071),(-0.007655, -0.221312, 0.094205),(0.357202, -0.224082, 0.145071),(-0.033908, -0.224082, 0.145071),(0.474212, -0.152133, -0.027573),(0.495471, -0.121736, 0.000000),(0.367831, -0.200221, 0.188328),(0.474212, -0.152133, -0.027573),(0.367831, -0.200221, 0.188328),(0.357202, -0.224082, 0.145071),(-0.044537, -0.200221, 0.188328),(0.367831, -0.200221, 0.188328),(0.357202, -0.163288, 0.200218),(-0.044537, -0.200221, 0.188328),(0.357202, -0.163288, 0.200218),(-0.033908, -0.163288, 0.200218),(-0.007655, -0.133772, 0.173613),(0.330949, -0.133772, 0.173613),(0.303646, -0.129143, 0.122299),(-0.007655, -0.133772, 0.173613),(0.303646, -0.129143, 0.122299),(0.019648, -0.129143, 0.122299),(0.343727, -0.121736, 0.000000),(0.367100, -0.153346, -0.028674),(0.303646, -0.192364, 0.064950),(0.343727, -0.121736, 0.000000),(0.303646, -0.192364, 0.064950),(0.291960, -0.153567, 0.076381),(-0.043806, -0.153346, -0.028674),(-0.098412, -0.165505, -0.039704),(-0.007655, -0.109699, -0.173613),(-0.043806, -0.153346, -0.028674),(-0.007655, -0.109699, -0.173613),(0.019648, -0.114328, -0.122298),(-0.007655, -0.022160, -0.094205),(0.330949, -0.022160, -0.094205),(0.357202, -0.019389, -0.145071),(-0.007655, -0.022160, -0.094205),(0.357202, -0.019389, -0.145071),(-0.033908, -0.019389, -0.145071),(-0.020433, -0.121736, 0.000000),(-0.043806, -0.153346, -0.028674),(0.019648, -0.114328, -0.122298),(-0.020433, -0.121736, 0.000000),(0.019648, -0.114328, -0.122298),(0.031335, -0.089904, -0.076381),(-0.007655, -0.109699, -0.173613),(-0.098412, -0.165505, -0.039704),(-0.150918, -0.152133, -0.027573),(-0.007655, -0.109699, -0.173613),(-0.150918, -0.152133, -0.027573),(-0.033908, -0.080183, -0.200218),(-0.033908, -0.163288, 0.200218),(0.357202, -0.163288, 0.200218),(0.330949, -0.133772, 0.173613),(-0.033908, -0.163288, 0.200218),(0.330949, -0.133772, 0.173613),(-0.007655, -0.133772, 0.173613),(0.367831, -0.043250, -0.188328),(0.357202, -0.019389, -0.145071),(0.474212, -0.091339, 0.027573),(0.367831, -0.043250, -0.188328),(0.474212, -0.091339, 0.027573),(0.495471, -0.121736, 0.000000),(0.357202, -0.080183, -0.200218),(0.367831, -0.043250, -0.188328),(0.495471, -0.121736, 0.000000),(0.357202, -0.080183, -0.200218),(0.495471, -0.121736, 0.000000),(0.474212, -0.152133, -0.027573),(-0.007655, -0.133772, 0.173613),(0.019648, -0.129143, 0.122299),(-0.043806, -0.090125, 0.028674),(-0.007655, -0.133772, 0.173613),(-0.043806, -0.090125, 0.028674),(-0.098412, -0.077966, 0.039704),(0.031335, -0.153567, 0.076381),(0.291960, -0.153567, 0.076381),(0.303646, -0.192364, 0.064950),(0.031335, -0.153567, 0.076381),(0.303646, -0.192364, 0.064950),(0.019648, -0.192364, 0.064950),(-0.043806, -0.090125, 0.028674),(-0.020433, -0.121736, 0.000000),(0.031335, -0.089904, -0.076381),(-0.043806, -0.090125, 0.028674),(0.031335, -0.089904, -0.076381),(0.019648, -0.051107, -0.064950),(0.421706, -0.077966, 0.039704),(0.330949, -0.022160, -0.094205),(0.303646, -0.051107, -0.064950),(0.421706, -0.077966, 0.039704),(0.303646, -0.051107, -0.064950),(0.367100, -0.090125, 0.028674),(-0.150918, -0.091339, 0.027573),(-0.033908, -0.163288, 0.200218),(-0.007655, -0.133772, 0.173613),(-0.150918, -0.091339, 0.027573),(-0.007655, -0.133772, 0.173613),(-0.098412, -0.077966, 0.039704),(0.421706, -0.165505, -0.039704),(0.474212, -0.152133, -0.027573),(0.357202, -0.224082, 0.145071),(0.421706, -0.165505, -0.039704),(0.357202, -0.224082, 0.145071),(0.330949, -0.221312, 0.094205),(-0.044537, -0.200221, 0.188328),(-0.033908, -0.224082, 0.145071),(0.357202, -0.224082, 0.145071),(-0.044537, -0.200221, 0.188328),(0.357202, -0.224082, 0.145071),(0.367831, -0.200221, 0.188328),(-0.044537, -0.200221, 0.188328),(-0.033908, -0.163288, 0.200218),(-0.150918, -0.091339, 0.027573),(-0.044537, -0.200221, 0.188328),(-0.150918, -0.091339, 0.027573),(-0.172177, -0.121736, 0.000000),(-0.007655, -0.221312, 0.094205),(0.019648, -0.192364, 0.064950),(0.303646, -0.192364, 0.064950),(-0.007655, -0.221312, 0.094205),(0.303646, -0.192364, 0.064950),(0.330949, -0.221312, 0.094205),(0.019648, -0.129143, 0.122299),(0.031335, -0.153567, 0.076381),(-0.020433, -0.121736, 0.000000),(0.019648, -0.129143, 0.122299),(-0.020433, -0.121736, 0.000000),(-0.043806, -0.090125, 0.028674),(0.019648, -0.129143, 0.122299),(0.303646, -0.129143, 0.122299),(0.291960, -0.153567, 0.076381),(0.019648, -0.129143, 0.122299),(0.291960, -0.153567, 0.076381),(0.031335, -0.153567, 0.076381),(-0.098412, -0.077966, 0.039704),(-0.043806, -0.090125, 0.028674),(0.019648, -0.051107, -0.064950),(-0.098412, -0.077966, 0.039704),(0.019648, -0.051107, -0.064950),(-0.007655, -0.022160, -0.094205),(0.421706, -0.077966, 0.039704),(0.330949, -0.133772, 0.173613),(0.357202, -0.163288, 0.200218),(0.421706, -0.077966, 0.039704),(0.357202, -0.163288, 0.200218),(0.474212, -0.091339, 0.027573),(-0.033908, -0.019389, -0.145071),(0.357202, -0.019389, -0.145071),(0.367831, -0.043250, -0.188328),(-0.033908, -0.019389, -0.145071),(0.367831, -0.043250, -0.188328),(-0.044537, -0.043250, -0.188328),(-0.033908, -0.080183, -0.200218),(0.357202, -0.080183, -0.200218),(0.330949, -0.109699, -0.173613),(-0.033908, -0.080183, -0.200218),(0.330949, -0.109699, -0.173613),(-0.007655, -0.109699, -0.173613),(0.303646, -0.114328, -0.122298),(0.330949, -0.109699, -0.173613),(0.421706, -0.165505, -0.039704),(0.303646, -0.114328, -0.122298),(0.421706, -0.165505, -0.039704),(0.367100, -0.153346, -0.028674),(0.421706, -0.077966, 0.039704),(0.367100, -0.090125, 0.028674),(0.303646, -0.129143, 0.122299),(0.421706, -0.077966, 0.039704),(0.303646, -0.129143, 0.122299),(0.330949, -0.133772, 0.173613),(0.367100, -0.090125, 0.028674),(0.343727, -0.121736, 0.000000),(0.291960, -0.153567, 0.076381),(0.367100, -0.090125, 0.028674),(0.291960, -0.153567, 0.076381),(0.303646, -0.129143, 0.122299),(0.330949, -0.109699, -0.173613),(0.357202, -0.080183, -0.200218),(0.474212, -0.152133, -0.027573),(0.330949, -0.109699, -0.173613),(0.474212, -0.152133, -0.027573),(0.421706, -0.165505, -0.039704),(-0.020433, -0.121736, 0.000000),(0.031335, -0.153567, 0.076381),(0.019648, -0.192364, 0.064950),(-0.020433, -0.121736, 0.000000),(0.019648, -0.192364, 0.064950),(-0.043806, -0.153346, -0.028674),(-0.172177, -0.121736, 0.000000),(-0.150918, -0.091339, 0.027573),(-0.033908, -0.019389, -0.145071),(-0.172177, -0.121736, 0.000000),(-0.033908, -0.019389, -0.145071),(-0.044537, -0.043250, -0.188328),(-0.150918, -0.091339, 0.027573),(-0.098412, -0.077966, 0.039704),(-0.007655, -0.022160, -0.094205),(-0.150918, -0.091339, 0.027573),(-0.007655, -0.022160, -0.094205),(-0.033908, -0.019389, -0.145071),(-0.305757, -0.192721, -0.064097),(-0.333060, -0.221830, -0.093001),(0.009765, -0.221830, -0.093001),(-0.305757, -0.192721, -0.064097),(0.009765, -0.221830, -0.093001),(-0.017537, -0.192721, -0.064097),(-0.333060, -0.134733, -0.173462),(0.009765, -0.134733, -0.173462),(0.036019, -0.164396, -0.199710),(-0.333060, -0.134733, -0.173462),(0.036019, -0.164396, -0.199710),(-0.359313, -0.164396, -0.199710),(-0.345838, -0.121736, -0.000000),(-0.294070, -0.153989, -0.075995),(-0.305757, -0.129820, -0.122205),(-0.345838, -0.121736, -0.000000),(-0.305757, -0.129820, -0.122205),(-0.369211, -0.090285, -0.029054),(-0.423816, -0.165284, 0.040230),(-0.369211, -0.153186, 0.029054),(-0.305757, -0.113651, 0.122205),(-0.423816, -0.165284, 0.040230),(-0.305757, -0.113651, 0.122205),(-0.333060, -0.108738, 0.173462),(0.100522, -0.165284, 0.040230),(0.009765, -0.221830, -0.093001),(0.036019, -0.224882, -0.143833),(0.100522, -0.165284, 0.040230),(0.036019, -0.224882, -0.143833),(0.153029, -0.151979, 0.027939),(0.036019, -0.079076, 0.199710),(0.009765, -0.108738, 0.173462),(0.100522, -0.165284, 0.040230),(0.036019, -0.079076, 0.199710),(0.100522, -0.165284, 0.040230),(0.153029, -0.151979, 0.027939),(-0.369942, -0.042210, 0.187375),(-0.359313, -0.079076, 0.199710),(0.036019, -0.079076, 0.199710),(-0.369942, -0.042210, 0.187375),(0.036019, -0.079076, 0.199710),(0.046648, -0.042210, 0.187375),(-0.497581, -0.121736, -0.000000),(-0.369942, -0.201262, -0.187375),(-0.359313, -0.224882, -0.143833),(-0.497581, -0.121736, -0.000000),(-0.359313, -0.224882, -0.143833),(-0.476323, -0.151979, 0.027939),(-0.369211, -0.090285, -0.029054),(-0.305757, -0.129820, -0.122205),(-0.333060, -0.134733, -0.173462),(-0.369211, -0.090285, -0.029054),(-0.333060, -0.134733, -0.173462),(-0.423816, -0.078187, -0.040230),(-0.305757, -0.113651, 0.122205),(-0.369211, -0.153186, 0.029054),(-0.345838, -0.121736, -0.000000),(-0.305757, -0.113651, 0.122205),(-0.345838, -0.121736, -0.000000),(-0.294070, -0.089482, 0.075995),(-0.305757, -0.192721, -0.064097),(-0.294070, -0.153989, -0.075995),(-0.345838, -0.121736, -0.000000),(-0.305757, -0.192721, -0.064097),(-0.345838, -0.121736, -0.000000),(-0.369211, -0.153186, 0.029054),(-0.305757, -0.129820, -0.122205),(-0.017537, -0.129820, -0.122205),(0.009765, -0.134733, -0.173462),(-0.305757, -0.129820, -0.122205),(0.009765, -0.134733, -0.173462),(-0.333060, -0.134733, -0.173462),(-0.359313, -0.224882, -0.143833),(0.036019, -0.224882, -0.143833),(0.009765, -0.221830, -0.093001),(-0.359313, -0.224882, -0.143833),(0.009765, -0.221830, -0.093001),(-0.333060, -0.221830, -0.093001),(-0.359313, -0.018590, 0.143833),(-0.476323, -0.091493, -0.027939),(-0.497581, -0.121736, -0.000000),(-0.359313, -0.018590, 0.143833),(-0.497581, -0.121736, -0.000000),(-0.369942, -0.042210, 0.187375),(-0.359313, -0.164396, -0.199710),(-0.369942, -0.201262, -0.187375),(-0.497581, -0.121736, -0.000000),(-0.359313, -0.164396, -0.199710),(-0.497581, -0.121736, -0.000000),(-0.476323, -0.091493, -0.027939),(0.009765, -0.021641, 0.093001),(0.036019, -0.018590, 0.143833),(0.153029, -0.091493, -0.027939),(0.009765, -0.021641, 0.093001),(0.153029, -0.091493, -0.027939),(0.100522, -0.078187, -0.040230),(-0.369942, -0.201262, -0.187375),(0.046648, -0.201262, -0.187375),(0.036019, -0.224882, -0.143833),(-0.369942, -0.201262, -0.187375),(0.036019, -0.224882, -0.143833),(-0.359313, -0.224882, -0.143833),(0.100522, -0.165284, 0.040230),(0.045917, -0.153186, 0.029054),(-0.017537, -0.192721, -0.064097),(0.100522, -0.165284, 0.040230),(-0.017537, -0.192721, -0.064097),(0.009765, -0.221830, -0.093001),(-0.305757, -0.192721, -0.064097),(-0.017537, -0.192721, -0.064097),(-0.029224, -0.153989, -0.075995),(-0.305757, -0.192721, -0.064097),(-0.029224, -0.153989, -0.075995),(-0.294070, -0.153989, -0.075995),(0.022543, -0.121736, -0.000000),(0.045917, -0.090285, -0.029054),(-0.017537, -0.129820, -0.122205),(0.022543, -0.121736, -0.000000),(-0.017537, -0.129820, -0.122205),(-0.029224, -0.153989, -0.075995),(0.367831, -0.200221, 0.188328),(0.495471, -0.121736, 0.000000),(0.474212, -0.091339, 0.027573),(0.367831, -0.200221, 0.188328),(0.474212, -0.091339, 0.027573),(0.357202, -0.163288, 0.200218),(-0.333060, -0.021641, 0.093001),(-0.423816, -0.078187, -0.040230),(-0.476323, -0.091493, -0.027939),(-0.333060, -0.021641, 0.093001),(-0.476323, -0.091493, -0.027939),(-0.359313, -0.018590, 0.143833),(-0.476323, -0.151979, 0.027939),(-0.359313, -0.224882, -0.143833),(-0.333060, -0.221830, -0.093001),(-0.476323, -0.151979, 0.027939),(-0.333060, -0.221830, -0.093001),(-0.423816, -0.165284, 0.040230),(-0.497581, -0.121736, -0.000000),(-0.476323, -0.151979, 0.027939),(-0.359313, -0.079076, 0.199710),(-0.497581, -0.121736, -0.000000),(-0.359313, -0.079076, 0.199710),(-0.369942, -0.042210, 0.187375),(0.046648, -0.201262, -0.187375),(0.174287, -0.121736, -0.000000),(0.153029, -0.151979, 0.027939),(0.046648, -0.201262, -0.187375),(0.153029, -0.151979, 0.027939),(0.036019, -0.224882, -0.143833),(-0.305757, -0.050750, 0.064096),(-0.333060, -0.021641, 0.093001),(0.009765, -0.021641, 0.093001),(-0.305757, -0.050750, 0.064096),(0.009765, -0.021641, 0.093001),(-0.017537, -0.050750, 0.064096),(0.045917, -0.153186, 0.029054),(0.022543, -0.121736, -0.000000),(-0.029224, -0.153989, -0.075995),(0.045917, -0.153186, 0.029054),(-0.029224, -0.153989, -0.075995),(-0.017537, -0.192721, -0.064097),(-0.017537, -0.113651, 0.122205),(-0.029224, -0.089482, 0.075995),(0.022543, -0.121736, -0.000000),(-0.017537, -0.113651, 0.122205),(0.022543, -0.121736, -0.000000),(0.045917, -0.153186, 0.029054),(0.100522, -0.078187, -0.040230),(0.009765, -0.134733, -0.173462),(-0.017537, -0.129820, -0.122205),(0.100522, -0.078187, -0.040230),(-0.017537, -0.129820, -0.122205),(0.045917, -0.090285, -0.029054),(-0.333060, -0.108738, 0.173462),(0.009765, -0.108738, 0.173462),(0.036019, -0.079076, 0.199710),(-0.333060, -0.108738, 0.173462),(0.036019, -0.079076, 0.199710),(-0.359313, -0.079076, 0.199710),(-0.369942, -0.201262, -0.187375),(-0.359313, -0.164396, -0.199710),(0.036019, -0.164396, -0.199710),(-0.369942, -0.201262, -0.187375),(0.036019, -0.164396, -0.199710),(0.046648, -0.201262, -0.187375),(-0.359313, -0.079076, 0.199710),(-0.476323, -0.151979, 0.027939),(-0.423816, -0.165284, 0.040230),(-0.359313, -0.079076, 0.199710),(-0.423816, -0.165284, 0.040230),(-0.333060, -0.108738, 0.173462),(-0.369942, -0.042210, 0.187375),(0.046648, -0.042210, 0.187375),(0.036019, -0.018590, 0.143833),(-0.369942, -0.042210, 0.187375),(0.036019, -0.018590, 0.143833),(-0.359313, -0.018590, 0.143833),(-0.333060, -0.221830, -0.093001),(-0.305757, -0.192721, -0.064097),(-0.369211, -0.153186, 0.029054),(-0.333060, -0.221830, -0.093001),(-0.369211, -0.153186, 0.029054),(-0.423816, -0.165284, 0.040230),(-0.294070, -0.089482, 0.075995),(-0.029224, -0.089482, 0.075995),(-0.017537, -0.113651, 0.122205),(-0.294070, -0.089482, 0.075995),(-0.017537, -0.113651, 0.122205),(-0.305757, -0.113651, 0.122205),(-0.294070, -0.089482, 0.075995),(-0.305757, -0.050750, 0.064096),(-0.017537, -0.050750, 0.064096),(-0.294070, -0.089482, 0.075995),(-0.017537, -0.050750, 0.064096),(-0.029224, -0.089482, 0.075995),(0.100522, -0.165284, 0.040230),(0.009765, -0.108738, 0.173462),(-0.017537, -0.113651, 0.122205),(0.100522, -0.165284, 0.040230),(-0.017537, -0.113651, 0.122205),(0.045917, -0.153186, 0.029054),(-0.359313, -0.018590, 0.143833),(0.036019, -0.018590, 0.143833),(0.009765, -0.021641, 0.093001),(-0.359313, -0.018590, 0.143833),(0.009765, -0.021641, 0.093001),(-0.333060, -0.021641, 0.093001),(-0.029224, -0.089482, 0.075995),(-0.017537, -0.050750, 0.064096),(0.045917, -0.090285, -0.029054),(-0.029224, -0.089482, 0.075995),(0.045917, -0.090285, -0.029054),(0.022543, -0.121736, -0.000000),(0.009765, -0.134733, -0.173462),(0.100522, -0.078187, -0.040230),(0.153029, -0.091493, -0.027939),(0.009765, -0.134733, -0.173462),(0.153029, -0.091493, -0.027939),(0.036019, -0.164396, -0.199710),(-0.017537, -0.050750, 0.064096),(0.009765, -0.021641, 0.093001),(0.100522, -0.078187, -0.040230),(-0.017537, -0.050750, 0.064096),(0.100522, -0.078187, -0.040230),(0.045917, -0.090285, -0.029054),(-0.369211, -0.090285, -0.029054),(-0.423816, -0.078187, -0.040230),(-0.333060, -0.021641, 0.093001),(-0.369211, -0.090285, -0.029054),(-0.333060, -0.021641, 0.093001),(-0.305757, -0.050750, 0.064096),(-0.294070, -0.153989, -0.075995),(-0.029224, -0.153989, -0.075995),(-0.017537, -0.129820, -0.122205),(-0.294070, -0.153989, -0.075995),(-0.017537, -0.129820, -0.122205),(-0.305757, -0.129820, -0.122205),(-0.305757, -0.113651, 0.122205),(-0.017537, -0.113651, 0.122205),(0.009765, -0.108738, 0.173462),(-0.305757, -0.113651, 0.122205),(0.009765, -0.108738, 0.173462),(-0.333060, -0.108738, 0.173462),(-0.345838, -0.121736, -0.000000),(-0.369211, -0.090285, -0.029054),(-0.305757, -0.050750, 0.064096),(-0.345838, -0.121736, -0.000000),(-0.305757, -0.050750, 0.064096),(-0.294070, -0.089482, 0.075995),(0.046648, -0.042210, 0.187375),(0.036019, -0.079076, 0.199710),(0.153029, -0.151979, 0.027939),(0.046648, -0.042210, 0.187375),(0.153029, -0.151979, 0.027939),(0.174287, -0.121736, -0.000000),(-0.333060, -0.134733, -0.173462),(-0.359313, -0.164396, -0.199710),(-0.476323, -0.091493, -0.027939),(-0.333060, -0.134733, -0.173462),(-0.476323, -0.091493, -0.027939),(-0.423816, -0.078187, -0.040230),(-0.150918, -0.152133, -0.027573),(-0.172177, -0.121736, 0.000000),(-0.044537, -0.043250, -0.188328),(-0.150918, -0.152133, -0.027573),(-0.044537, -0.043250, -0.188328),(-0.033908, -0.080183, -0.200218),(-0.500488, 0.000000, -0.246896),(0.500488, 0.000000, -0.246896),(0.500488, 0.000000, 0.246896),(-0.500488, 0.000000, -0.246896),(0.500488, 0.000000, 0.246896),(-0.500488, 0.000000, 0.246896),(0.153029, -0.091493, -0.027939),(0.174287, -0.121736, -0.000000),(0.046648, -0.201262, -0.187375),(0.153029, -0.091493, -0.027939),(0.046648, -0.201262, -0.187375),(0.036019, -0.164396, -0.199710),) \ No newline at end of file diff --git a/addons/io_hubs_addon/components/models/point_light.py b/addons/io_hubs_addon/components/models/point_light.py new file mode 100644 index 00000000..e895d01a --- /dev/null +++ b/addons/io_hubs_addon/components/models/point_light.py @@ -0,0 +1 @@ +SHAPE = ((-0.000000, 0.226909, 0.131224),(0.173669, 0.173669, 0.037235),(-0.000000, 0.245605, 0.037235),(-0.000000, 0.093989, 0.264144),(0.122802, 0.122803, 0.210904),(-0.000000, 0.173669, 0.210904),(-0.000000, 0.226909, -0.056754),(0.173669, 0.173669, 0.037235),(0.160449, 0.160449, -0.056754),(-0.000000, 0.226909, 0.131224),(0.122802, 0.122803, 0.210904),(0.160449, 0.160449, 0.131224),(-0.000000, 0.093989, 0.264144),(-0.000000, 0.000000, 0.282840),(0.066460, 0.066460, 0.264144),(0.173669, 0.173669, 0.037235),(0.226909, 0.000000, -0.056754),(0.160449, 0.160449, -0.056754),(0.160449, 0.160449, 0.131224),(0.173669, 0.000000, 0.210904),(0.226909, 0.000000, 0.131224),(0.066460, 0.066460, 0.264144),(-0.000000, 0.000000, 0.282840),(0.093989, 0.000000, 0.264144),(0.067179, 0.067178, -0.282677),(0.148421, -0.000000, -0.207369),(0.095005, -0.000000, -0.282677),(0.160449, 0.160449, 0.131224),(0.245605, 0.000000, 0.037235),(0.173669, 0.173669, 0.037235),(0.066460, 0.066460, 0.264144),(0.173669, 0.000000, 0.210904),(0.122802, 0.122803, 0.210904),(0.226909, 0.000000, -0.056754),(0.173669, -0.173669, 0.037235),(0.160449, -0.160449, -0.056754),(0.226909, 0.000000, 0.131224),(0.122802, -0.122802, 0.210904),(0.160449, -0.160449, 0.131224),(0.093989, 0.000000, 0.264144),(-0.000000, 0.000000, 0.282840),(0.066460, -0.066460, 0.264144),(0.000000, 0.148421, -0.207369),(-0.067178, 0.067178, -0.282677),(-0.104949, 0.104949, -0.207369),(0.226909, 0.000000, 0.131224),(0.173669, -0.173669, 0.037235),(0.245605, 0.000000, 0.037235),(0.093989, 0.000000, 0.264144),(0.122802, -0.122802, 0.210904),(0.173669, 0.000000, 0.210904),(0.138153, -0.138153, -0.132062),(0.226909, 0.000000, -0.056754),(0.160449, -0.160449, -0.056754),(0.160449, -0.160449, 0.131224),(-0.000000, -0.245605, 0.037235),(0.173669, -0.173669, 0.037235),(0.066460, -0.066460, 0.264144),(-0.000000, -0.173669, 0.210904),(0.122802, -0.122802, 0.210904),(0.160449, -0.160449, -0.056754),(-0.000000, -0.245605, 0.037235),(-0.000000, -0.226909, -0.056754),(0.122802, -0.122802, 0.210904),(-0.000000, -0.226909, 0.131224),(0.160449, -0.160449, 0.131224),(0.066460, -0.066460, 0.264144),(-0.000000, 0.000000, 0.282840),(-0.000000, -0.093989, 0.264144),(-0.000000, -0.245605, 0.037235),(-0.160449, -0.160449, 0.131224),(-0.173669, -0.173669, 0.037235),(-0.000000, -0.093989, 0.264144),(-0.122803, -0.122802, 0.210904),(-0.000000, -0.173669, 0.210904),(-0.000000, -0.245605, 0.037235),(-0.160449, -0.160449, -0.056754),(-0.000000, -0.226909, -0.056754),(-0.000000, -0.173669, 0.210904),(-0.160449, -0.160449, 0.131224),(-0.000000, -0.226909, 0.131224),(-0.000000, -0.093989, 0.264144),(-0.000000, 0.000000, 0.282840),(-0.066460, -0.066460, 0.264144),(0.104950, 0.104949, -0.207369),(0.000000, 0.095005, -0.282677),(0.000000, 0.148421, -0.207369),(-0.160449, -0.160449, -0.056754),(-0.245605, 0.000000, 0.037235),(-0.226910, 0.000000, -0.056754),(-0.122803, -0.122802, 0.210904),(-0.226910, 0.000000, 0.131224),(-0.160449, -0.160449, 0.131224),(-0.066460, -0.066460, 0.264144),(-0.000000, 0.000000, 0.282840),(-0.093989, 0.000000, 0.264144),(0.000000, -0.195378, -0.132062),(0.160449, -0.160449, -0.056754),(-0.000000, -0.226909, -0.056754),(-0.160449, -0.160449, 0.131224),(-0.245605, 0.000000, 0.037235),(-0.173669, -0.173669, 0.037235),(-0.066460, -0.066460, 0.264144),(-0.173669, 0.000000, 0.210904),(-0.122803, -0.122802, 0.210904),(-0.173669, 0.000000, 0.210904),(-0.160449, 0.160449, 0.131224),(-0.226910, 0.000000, 0.131224),(-0.093989, 0.000000, 0.264144),(-0.000000, 0.000000, 0.282840),(-0.066460, 0.066460, 0.264144),(-0.104949, 0.104949, -0.207369),(-0.095004, -0.000000, -0.282677),(-0.148421, -0.000000, -0.207369),(-0.245605, 0.000000, 0.037235),(-0.160449, 0.160449, 0.131224),(-0.173669, 0.173669, 0.037235),(-0.093989, 0.000000, 0.264144),(-0.122803, 0.122803, 0.210904),(-0.173669, 0.000000, 0.210904),(-0.245605, 0.000000, 0.037235),(-0.160449, 0.160449, -0.056754),(-0.226910, 0.000000, -0.056754),(-0.138153, -0.138153, -0.132062),(-0.000000, -0.226909, -0.056754),(-0.160449, -0.160449, -0.056754),(-0.160449, 0.160449, 0.131224),(-0.000000, 0.245605, 0.037235),(-0.173669, 0.173669, 0.037235),(-0.066460, 0.066460, 0.264144),(-0.000000, 0.173669, 0.210904),(-0.122803, 0.122803, 0.210904),(-0.160449, 0.160449, -0.056754),(-0.000000, 0.245605, 0.037235),(-0.000000, 0.226909, -0.056754),(-0.122803, 0.122803, 0.210904),(-0.000000, 0.226909, 0.131224),(-0.160449, 0.160449, 0.131224),(-0.066460, 0.066460, 0.264144),(-0.000000, 0.000000, 0.282840),(-0.000000, 0.093989, 0.264144),(0.000000, -0.000000, -0.445589),(0.000000, 0.070206, -0.444960),(0.049644, 0.049643, -0.444960),(0.000000, -0.000000, -0.445589),(0.049644, 0.049643, -0.444960),(0.070207, -0.000000, -0.444960),(0.000000, -0.000000, -0.445589),(0.070207, -0.000000, -0.444960),(0.049644, -0.049643, -0.444960),(0.000000, -0.000000, -0.445589),(0.049644, -0.049643, -0.444960),(0.000000, -0.070206, -0.444960),(0.000000, -0.000000, -0.445589),(0.000000, -0.070206, -0.444960),(-0.049643, -0.049643, -0.444960),(0.000000, -0.000000, -0.445589),(-0.049643, -0.049643, -0.444960),(-0.070206, -0.000000, -0.444960),(0.000000, -0.000000, -0.445589),(-0.070206, -0.000000, -0.444960),(-0.049643, 0.049643, -0.444960),(0.000000, -0.000000, -0.445589),(-0.049643, 0.049643, -0.444960),(0.000000, 0.070206, -0.444960),(-0.049643, 0.049643, -0.444960),(0.000000, 0.090119, -0.433296),(0.000000, 0.070206, -0.444960),(-0.070206, -0.000000, -0.444960),(-0.063723, 0.063724, -0.433296),(-0.049643, 0.049643, -0.444960),(-0.063723, -0.063724, -0.433296),(-0.070206, -0.000000, -0.444960),(-0.049643, -0.049643, -0.444960),(0.000000, -0.090119, -0.433296),(-0.049643, -0.049643, -0.444960),(0.000000, -0.070206, -0.444960),(0.063724, -0.063724, -0.433296),(0.000000, -0.070206, -0.444960),(0.049644, -0.049643, -0.444960),(0.090119, -0.000000, -0.433296),(0.049644, -0.049643, -0.444960),(0.070207, -0.000000, -0.444960),(0.049644, 0.049643, -0.444960),(0.090119, -0.000000, -0.433296),(0.070207, -0.000000, -0.444960),(0.000000, 0.070206, -0.444960),(0.063724, 0.063724, -0.433296),(0.049644, 0.049643, -0.444960),(0.000001, 0.099347, -0.412708),(0.068022, 0.068021, -0.399513),(0.070250, 0.070249, -0.412708),(0.070250, 0.070249, -0.412708),(0.096197, -0.000000, -0.399513),(0.099348, -0.000000, -0.412708),(0.096197, -0.000000, -0.399513),(0.070250, -0.070249, -0.412708),(0.099348, -0.000000, -0.412708),(0.068022, -0.068021, -0.399513),(0.000001, -0.099347, -0.412708),(0.070250, -0.070249, -0.412708),(0.000000, -0.096196, -0.399513),(-0.070249, -0.070249, -0.412708),(0.000001, -0.099347, -0.412708),(-0.068021, -0.068021, -0.399513),(-0.099347, -0.000000, -0.412708),(-0.070249, -0.070249, -0.412708),(-0.099347, -0.000000, -0.412708),(-0.068021, 0.068021, -0.399513),(-0.070249, 0.070249, -0.412708),(-0.070249, 0.070249, -0.412708),(0.000000, 0.096196, -0.399513),(0.000001, 0.099347, -0.412708),(-0.068435, -0.068435, -0.349237),(-0.099911, -0.000000, -0.365233),(-0.070647, -0.070648, -0.365233),(0.000001, -0.096782, -0.349237),(-0.070647, -0.070648, -0.365233),(0.000001, -0.099911, -0.365233),(-0.068435, 0.068435, -0.349237),(-0.099911, -0.000000, -0.365233),(-0.096782, -0.000000, -0.349237),(0.000001, 0.096782, -0.349237),(-0.070647, 0.070648, -0.365233),(-0.068435, 0.068435, -0.349237),(0.096783, -0.000000, -0.349237),(0.070649, -0.070648, -0.365233),(0.099912, -0.000000, -0.365233),(0.096783, -0.000000, -0.349237),(0.070649, 0.070648, -0.365233),(0.068436, 0.068435, -0.349237),(0.068436, 0.068435, -0.349237),(0.000001, 0.099911, -0.365233),(0.000001, 0.096782, -0.349237),(0.068436, -0.068435, -0.349237),(0.000001, -0.099911, -0.365233),(0.070649, -0.070648, -0.365233),(-0.070249, 0.070249, -0.412708),(0.000000, 0.090119, -0.433296),(-0.063723, 0.063724, -0.433296),(-0.099347, -0.000000, -0.412708),(-0.063723, 0.063724, -0.433296),(-0.090118, -0.000000, -0.433296),(-0.063723, -0.063724, -0.433296),(-0.099347, -0.000000, -0.412708),(-0.090118, -0.000000, -0.433296),(0.000000, -0.090119, -0.433296),(-0.070249, -0.070249, -0.412708),(-0.063723, -0.063724, -0.433296),(0.063724, -0.063724, -0.433296),(0.000001, -0.099347, -0.412708),(0.000000, -0.090119, -0.433296),(0.090119, -0.000000, -0.433296),(0.070250, -0.070249, -0.412708),(0.063724, -0.063724, -0.433296),(0.070250, 0.070249, -0.412708),(0.090119, -0.000000, -0.433296),(0.063724, 0.063724, -0.433296),(0.000001, 0.099347, -0.412708),(0.063724, 0.063724, -0.433296),(0.000000, 0.090119, -0.433296),(-0.068379, -0.068380, -0.307574),(-0.099958, -0.000000, -0.321721),(-0.070681, -0.070682, -0.321721),(0.000001, -0.096703, -0.307574),(-0.070681, -0.070682, -0.321721),(0.000001, -0.099959, -0.321721),(-0.068379, 0.068379, -0.307574),(-0.099958, -0.000000, -0.321721),(-0.096703, -0.000000, -0.307574),(0.000001, 0.096703, -0.307574),(-0.070681, 0.070682, -0.321721),(-0.068379, 0.068379, -0.307574),(0.096704, -0.000000, -0.307574),(0.070682, -0.070682, -0.321721),(0.099959, -0.000000, -0.321721),(0.096704, -0.000000, -0.307574),(0.070682, 0.070682, -0.321721),(0.068380, 0.068379, -0.307574),(0.068380, 0.068379, -0.307574),(0.000001, 0.099959, -0.321721),(0.000001, 0.096703, -0.307574),(0.068380, -0.068380, -0.307574),(0.000001, -0.099959, -0.321721),(0.070682, -0.070682, -0.321721),(0.440526, -0.023107, -0.493787),(0.231328, 0.000977, -0.274618),(0.434003, -0.000114, -0.500706),(0.440526, -0.023107, -0.493787),(0.455855, 0.032388, -0.476649),(0.456116, -0.032649, -0.476886),(0.471643, -0.023126, -0.459901),(0.231328, 0.000977, -0.274618),(0.456116, -0.032649, -0.476886),(0.477994, -0.000114, -0.452801),(0.231328, 0.000977, -0.274618),(0.471643, -0.023126, -0.459901),(0.471447, 0.022882, -0.459746),(0.231328, 0.000977, -0.274618),(0.477994, -0.000114, -0.452801),(0.455855, 0.032388, -0.476649),(0.231328, 0.000977, -0.274618),(0.471447, 0.022882, -0.459746),(0.456116, -0.032649, -0.476886),(0.231328, 0.000977, -0.274618),(0.440526, -0.023107, -0.493787),(0.434003, -0.000114, -0.500706),(0.231328, 0.000977, -0.274618),(0.440352, 0.022863, -0.493607),(-0.432046, 0.032388, 0.478010),(-0.415921, 0.022882, 0.494406),(-0.219336, 0.000977, 0.263572),(-0.415921, 0.022882, 0.494406),(-0.409303, -0.000114, 0.501282),(-0.219336, 0.000977, 0.263572),(-0.409303, -0.000114, 0.501282),(-0.416085, -0.023126, 0.494593),(-0.219336, 0.000977, 0.263572),(-0.416085, -0.023126, 0.494593),(-0.432295, -0.032649, 0.478259),(-0.219336, 0.000977, 0.263572),(-0.432295, -0.032649, 0.478259),(-0.448419, -0.023107, 0.461866),(-0.219336, 0.000977, 0.263572),(-0.448419, -0.023107, 0.461866),(-0.455012, -0.000114, 0.455014),(-0.219336, 0.000977, 0.263572),(-0.455012, -0.000114, 0.455014),(-0.448230, 0.022863, 0.461701),(-0.219336, 0.000977, 0.263572),(-0.448230, 0.022863, 0.461701),(-0.432046, 0.032388, 0.478010),(-0.219336, 0.000977, 0.263572),(0.432048, 0.032383, 0.477735),(0.448386, 0.022873, 0.461565),(0.219338, 0.000977, 0.265851),(0.448386, 0.022873, 0.461565),(0.455237, -0.000114, 0.454930),(0.219338, 0.000977, 0.265851),(0.455237, -0.000114, 0.454930),(0.448574, -0.023118, 0.461729),(0.219338, 0.000977, 0.265851),(0.448574, -0.023118, 0.461729),(0.432297, -0.032645, 0.477985),(0.219338, 0.000977, 0.265851),(0.432297, -0.032645, 0.477985),(0.415954, -0.023108, 0.494161),(0.219338, 0.000977, 0.265851),(0.415954, -0.023108, 0.494161),(0.409122, -0.000114, 0.500778),(0.219338, 0.000977, 0.265851),(0.409122, -0.000114, 0.500778),(0.415789, 0.022864, 0.493972),(0.219338, 0.000977, 0.265851),(0.415789, 0.022864, 0.493972),(0.432048, 0.032383, 0.477735),(0.219338, 0.000977, 0.265851),(-0.195378, 0.000000, -0.132062),(-0.160449, -0.160449, -0.056754),(-0.226910, 0.000000, -0.056754),(-0.099958, -0.000000, -0.321721),(-0.068376, -0.068377, -0.336351),(-0.070681, -0.070682, -0.321721),(-0.070681, -0.070682, -0.321721),(0.000001, -0.096700, -0.336351),(0.000001, -0.099959, -0.321721),(-0.099958, -0.000000, -0.321721),(-0.068376, 0.068377, -0.336351),(-0.096699, -0.000000, -0.336351),(-0.070681, 0.070682, -0.321721),(0.000001, 0.096700, -0.336351),(-0.068376, 0.068377, -0.336351),(0.070682, -0.070682, -0.321721),(0.096700, -0.000000, -0.336352),(0.099959, -0.000000, -0.321721),(0.070682, 0.070682, -0.321721),(0.096700, -0.000000, -0.336352),(0.068377, 0.068377, -0.336352),(0.000001, 0.099959, -0.321721),(0.068377, 0.068377, -0.336352),(0.000001, 0.096700, -0.336351),(0.000001, -0.099959, -0.321721),(0.068377, -0.068377, -0.336352),(0.070682, -0.070682, -0.321721),(-0.099911, -0.000000, -0.365233),(-0.068430, -0.068431, -0.381501),(-0.070647, -0.070648, -0.365233),(-0.070647, -0.070648, -0.365233),(0.000001, -0.096776, -0.381501),(0.000001, -0.099911, -0.365233),(-0.099911, -0.000000, -0.365233),(-0.068430, 0.068431, -0.381501),(-0.096775, -0.000000, -0.381501),(-0.070647, 0.070648, -0.365233),(0.000001, 0.096776, -0.381501),(-0.068430, 0.068431, -0.381501),(0.070649, -0.070648, -0.365233),(0.096776, -0.000000, -0.381501),(0.099912, -0.000000, -0.365233),(0.070649, 0.070648, -0.365233),(0.096776, -0.000000, -0.381501),(0.068431, 0.068431, -0.381501),(0.000001, 0.099911, -0.365233),(0.068431, 0.068431, -0.381501),(0.000001, 0.096776, -0.381501),(0.000001, -0.099911, -0.365233),(0.068431, -0.068431, -0.381501),(0.070649, -0.070648, -0.365233),(-0.049643, 0.049643, -0.444960),(-0.063723, 0.063724, -0.433296),(0.000000, 0.090119, -0.433296),(-0.070206, -0.000000, -0.444960),(-0.090118, -0.000000, -0.433296),(-0.063723, 0.063724, -0.433296),(-0.063723, -0.063724, -0.433296),(-0.090118, -0.000000, -0.433296),(-0.070206, -0.000000, -0.444960),(0.000000, -0.090119, -0.433296),(-0.063723, -0.063724, -0.433296),(-0.049643, -0.049643, -0.444960),(0.063724, -0.063724, -0.433296),(0.000000, -0.090119, -0.433296),(0.000000, -0.070206, -0.444960),(0.090119, -0.000000, -0.433296),(0.063724, -0.063724, -0.433296),(0.049644, -0.049643, -0.444960),(0.049644, 0.049643, -0.444960),(0.063724, 0.063724, -0.433296),(0.090119, -0.000000, -0.433296),(0.000000, 0.070206, -0.444960),(0.000000, 0.090119, -0.433296),(0.063724, 0.063724, -0.433296),(0.000001, 0.099347, -0.412708),(0.000000, 0.096196, -0.399513),(0.068022, 0.068021, -0.399513),(0.070250, 0.070249, -0.412708),(0.068022, 0.068021, -0.399513),(0.096197, -0.000000, -0.399513),(0.096197, -0.000000, -0.399513),(0.068022, -0.068021, -0.399513),(0.070250, -0.070249, -0.412708),(0.068022, -0.068021, -0.399513),(0.000000, -0.096196, -0.399513),(0.000001, -0.099347, -0.412708),(0.000000, -0.096196, -0.399513),(-0.068021, -0.068021, -0.399513),(-0.070249, -0.070249, -0.412708),(-0.068021, -0.068021, -0.399513),(-0.096196, -0.000000, -0.399513),(-0.099347, -0.000000, -0.412708),(-0.099347, -0.000000, -0.412708),(-0.096196, -0.000000, -0.399513),(-0.068021, 0.068021, -0.399513),(-0.070249, 0.070249, -0.412708),(-0.068021, 0.068021, -0.399513),(0.000000, 0.096196, -0.399513),(-0.068435, -0.068435, -0.349237),(-0.096782, -0.000000, -0.349237),(-0.099911, -0.000000, -0.365233),(0.000001, -0.096782, -0.349237),(-0.068435, -0.068435, -0.349237),(-0.070647, -0.070648, -0.365233),(-0.068435, 0.068435, -0.349237),(-0.070647, 0.070648, -0.365233),(-0.099911, -0.000000, -0.365233),(0.000001, 0.096782, -0.349237),(0.000001, 0.099911, -0.365233),(-0.070647, 0.070648, -0.365233),(0.096783, -0.000000, -0.349237),(0.068436, -0.068435, -0.349237),(0.070649, -0.070648, -0.365233),(0.096783, -0.000000, -0.349237),(0.099912, -0.000000, -0.365233),(0.070649, 0.070648, -0.365233),(0.068436, 0.068435, -0.349237),(0.070649, 0.070648, -0.365233),(0.000001, 0.099911, -0.365233),(0.068436, -0.068435, -0.349237),(0.000001, -0.096782, -0.349237),(0.000001, -0.099911, -0.365233),(-0.070249, 0.070249, -0.412708),(0.000001, 0.099347, -0.412708),(0.000000, 0.090119, -0.433296),(-0.099347, -0.000000, -0.412708),(-0.070249, 0.070249, -0.412708),(-0.063723, 0.063724, -0.433296),(-0.063723, -0.063724, -0.433296),(-0.070249, -0.070249, -0.412708),(-0.099347, -0.000000, -0.412708),(0.000000, -0.090119, -0.433296),(0.000001, -0.099347, -0.412708),(-0.070249, -0.070249, -0.412708),(0.063724, -0.063724, -0.433296),(0.070250, -0.070249, -0.412708),(0.000001, -0.099347, -0.412708),(0.090119, -0.000000, -0.433296),(0.099348, -0.000000, -0.412708),(0.070250, -0.070249, -0.412708),(0.070250, 0.070249, -0.412708),(0.099348, -0.000000, -0.412708),(0.090119, -0.000000, -0.433296),(0.000001, 0.099347, -0.412708),(0.070250, 0.070249, -0.412708),(0.063724, 0.063724, -0.433296),(-0.068379, -0.068380, -0.307574),(-0.096703, -0.000000, -0.307574),(-0.099958, -0.000000, -0.321721),(0.000001, -0.096703, -0.307574),(-0.068379, -0.068380, -0.307574),(-0.070681, -0.070682, -0.321721),(-0.068379, 0.068379, -0.307574),(-0.070681, 0.070682, -0.321721),(-0.099958, -0.000000, -0.321721),(0.000001, 0.096703, -0.307574),(0.000001, 0.099959, -0.321721),(-0.070681, 0.070682, -0.321721),(0.096704, -0.000000, -0.307574),(0.068380, -0.068380, -0.307574),(0.070682, -0.070682, -0.321721),(0.096704, -0.000000, -0.307574),(0.099959, -0.000000, -0.321721),(0.070682, 0.070682, -0.321721),(0.068380, 0.068379, -0.307574),(0.070682, 0.070682, -0.321721),(0.000001, 0.099959, -0.321721),(0.068380, -0.068380, -0.307574),(0.000001, -0.096703, -0.307574),(0.000001, -0.099959, -0.321721),(0.455855, 0.032388, -0.476649),(0.434003, -0.000114, -0.500706),(0.440352, 0.022863, -0.493607),(0.409122, -0.000114, 0.500778),(0.432297, -0.032645, 0.477985),(0.455237, -0.000114, 0.454930),(-0.415921, 0.022882, 0.494406),(-0.432046, 0.032388, 0.478010),(-0.432295, -0.032649, 0.478259),(-0.099958, -0.000000, -0.321721),(-0.096699, -0.000000, -0.336351),(-0.068376, -0.068377, -0.336351),(-0.070681, -0.070682, -0.321721),(-0.068376, -0.068377, -0.336351),(0.000001, -0.096700, -0.336351),(-0.099958, -0.000000, -0.321721),(-0.070681, 0.070682, -0.321721),(-0.068376, 0.068377, -0.336351),(-0.070681, 0.070682, -0.321721),(0.000001, 0.099959, -0.321721),(0.000001, 0.096700, -0.336351),(0.070682, -0.070682, -0.321721),(0.068377, -0.068377, -0.336352),(0.096700, -0.000000, -0.336352),(0.070682, 0.070682, -0.321721),(0.099959, -0.000000, -0.321721),(0.096700, -0.000000, -0.336352),(0.000001, 0.099959, -0.321721),(0.070682, 0.070682, -0.321721),(0.068377, 0.068377, -0.336352),(0.000001, -0.099959, -0.321721),(0.000001, -0.096700, -0.336351),(0.068377, -0.068377, -0.336352),(-0.099911, -0.000000, -0.365233),(-0.096775, -0.000000, -0.381501),(-0.068430, -0.068431, -0.381501),(-0.070647, -0.070648, -0.365233),(-0.068430, -0.068431, -0.381501),(0.000001, -0.096776, -0.381501),(-0.099911, -0.000000, -0.365233),(-0.070647, 0.070648, -0.365233),(-0.068430, 0.068431, -0.381501),(-0.070647, 0.070648, -0.365233),(0.000001, 0.099911, -0.365233),(0.000001, 0.096776, -0.381501),(0.070649, -0.070648, -0.365233),(0.068431, -0.068431, -0.381501),(0.096776, -0.000000, -0.381501),(0.070649, 0.070648, -0.365233),(0.099912, -0.000000, -0.365233),(0.096776, -0.000000, -0.381501),(0.000001, 0.099911, -0.365233),(0.070649, 0.070648, -0.365233),(0.068431, 0.068431, -0.381501),(0.000001, -0.099911, -0.365233),(0.000001, -0.096776, -0.381501),(0.068431, -0.068431, -0.381501),(-0.000000, 0.226909, 0.131224),(0.160449, 0.160449, 0.131224),(0.173669, 0.173669, 0.037235),(-0.000000, 0.093989, 0.264144),(0.066460, 0.066460, 0.264144),(0.122802, 0.122803, 0.210904),(-0.000000, 0.226909, -0.056754),(-0.000000, 0.245605, 0.037235),(0.173669, 0.173669, 0.037235),(-0.000000, 0.226909, 0.131224),(-0.000000, 0.173669, 0.210904),(0.122802, 0.122803, 0.210904),(0.173669, 0.173669, 0.037235),(0.245605, 0.000000, 0.037235),(0.226909, 0.000000, -0.056754),(0.160449, 0.160449, 0.131224),(0.122802, 0.122803, 0.210904),(0.173669, 0.000000, 0.210904),(-0.095004, -0.000000, -0.282677),(-0.104949, -0.104949, -0.207369),(-0.148421, -0.000000, -0.207369),(0.160449, 0.160449, 0.131224),(0.226909, 0.000000, 0.131224),(0.245605, 0.000000, 0.037235),(0.066460, 0.066460, 0.264144),(0.093989, 0.000000, 0.264144),(0.173669, 0.000000, 0.210904),(0.226909, 0.000000, -0.056754),(0.245605, 0.000000, 0.037235),(0.173669, -0.173669, 0.037235),(0.226909, 0.000000, 0.131224),(0.173669, 0.000000, 0.210904),(0.122802, -0.122802, 0.210904),(0.104950, 0.104949, -0.207369),(0.195378, 0.000000, -0.132062),(0.148421, -0.000000, -0.207369),(0.226909, 0.000000, 0.131224),(0.160449, -0.160449, 0.131224),(0.173669, -0.173669, 0.037235),(0.093989, 0.000000, 0.264144),(0.066460, -0.066460, 0.264144),(0.122802, -0.122802, 0.210904),(-0.067178, -0.067178, -0.282677),(0.000000, -0.148421, -0.207369),(-0.104949, -0.104949, -0.207369),(0.160449, -0.160449, 0.131224),(-0.000000, -0.226909, 0.131224),(-0.000000, -0.245605, 0.037235),(0.066460, -0.066460, 0.264144),(-0.000000, -0.093989, 0.264144),(-0.000000, -0.173669, 0.210904),(0.160449, -0.160449, -0.056754),(0.173669, -0.173669, 0.037235),(-0.000000, -0.245605, 0.037235),(0.122802, -0.122802, 0.210904),(-0.000000, -0.173669, 0.210904),(-0.000000, -0.226909, 0.131224),(-0.000000, -0.245605, 0.037235),(-0.000000, -0.226909, 0.131224),(-0.160449, -0.160449, 0.131224),(-0.000000, -0.093989, 0.264144),(-0.066460, -0.066460, 0.264144),(-0.122803, -0.122802, 0.210904),(-0.000000, -0.245605, 0.037235),(-0.173669, -0.173669, 0.037235),(-0.160449, -0.160449, -0.056754),(-0.000000, -0.173669, 0.210904),(-0.122803, -0.122802, 0.210904),(-0.160449, -0.160449, 0.131224),(-0.160449, 0.160449, -0.056754),(-0.195378, 0.000000, -0.132062),(-0.226910, 0.000000, -0.056754),(-0.160449, -0.160449, -0.056754),(-0.173669, -0.173669, 0.037235),(-0.245605, 0.000000, 0.037235),(-0.122803, -0.122802, 0.210904),(-0.173669, 0.000000, 0.210904),(-0.226910, 0.000000, 0.131224),(-0.138153, 0.138153, -0.132062),(-0.148421, -0.000000, -0.207369),(-0.195378, 0.000000, -0.132062),(-0.160449, -0.160449, 0.131224),(-0.226910, 0.000000, 0.131224),(-0.245605, 0.000000, 0.037235),(-0.066460, -0.066460, 0.264144),(-0.093989, 0.000000, 0.264144),(-0.173669, 0.000000, 0.210904),(-0.173669, 0.000000, 0.210904),(-0.122803, 0.122803, 0.210904),(-0.160449, 0.160449, 0.131224),(-0.148421, -0.000000, -0.207369),(-0.138153, -0.138153, -0.132062),(-0.195378, 0.000000, -0.132062),(-0.245605, 0.000000, 0.037235),(-0.226910, 0.000000, 0.131224),(-0.160449, 0.160449, 0.131224),(-0.093989, 0.000000, 0.264144),(-0.066460, 0.066460, 0.264144),(-0.122803, 0.122803, 0.210904),(-0.245605, 0.000000, 0.037235),(-0.173669, 0.173669, 0.037235),(-0.160449, 0.160449, -0.056754),(-0.104949, -0.104949, -0.207369),(0.000000, -0.195378, -0.132062),(-0.138153, -0.138153, -0.132062),(-0.160449, 0.160449, 0.131224),(-0.000000, 0.226909, 0.131224),(-0.000000, 0.245605, 0.037235),(-0.066460, 0.066460, 0.264144),(-0.000000, 0.093989, 0.264144),(-0.000000, 0.173669, 0.210904),(-0.160449, 0.160449, -0.056754),(-0.173669, 0.173669, 0.037235),(-0.000000, 0.245605, 0.037235),(-0.122803, 0.122803, 0.210904),(-0.000000, 0.173669, 0.210904),(-0.000000, 0.226909, 0.131224),(0.000000, -0.095005, -0.282677),(0.104950, -0.104949, -0.207369),(0.000000, -0.148421, -0.207369),(0.138153, 0.138153, -0.132062),(0.226909, 0.000000, -0.056754),(0.195378, 0.000000, -0.132062),(0.000000, -0.148421, -0.207369),(0.138153, -0.138153, -0.132062),(0.000000, -0.195378, -0.132062),(0.160449, 0.160449, -0.056754),(0.000000, 0.195378, -0.132062),(-0.000000, 0.226909, -0.056754),(0.138153, 0.138153, -0.132062),(0.000000, 0.148421, -0.207369),(0.000000, 0.195378, -0.132062),(0.067179, -0.067178, -0.282677),(0.148421, -0.000000, -0.207369),(0.104950, -0.104949, -0.207369),(0.104950, -0.104949, -0.207369),(0.195378, 0.000000, -0.132062),(0.138153, -0.138153, -0.132062),(-0.000000, 0.226909, -0.056754),(-0.138153, 0.138153, -0.132062),(-0.160449, 0.160449, -0.056754),(0.000000, 0.195378, -0.132062),(-0.104949, 0.104949, -0.207369),(-0.138153, 0.138153, -0.132062),(0.067179, 0.067178, -0.282677),(0.104950, 0.104949, -0.207369),(0.148421, -0.000000, -0.207369),(0.000000, 0.148421, -0.207369),(0.000000, 0.095005, -0.282677),(-0.067178, 0.067178, -0.282677),(0.138153, -0.138153, -0.132062),(0.195378, 0.000000, -0.132062),(0.226909, 0.000000, -0.056754),(0.104950, 0.104949, -0.207369),(0.067179, 0.067178, -0.282677),(0.000000, 0.095005, -0.282677),(0.000000, -0.195378, -0.132062),(0.138153, -0.138153, -0.132062),(0.160449, -0.160449, -0.056754),(-0.104949, 0.104949, -0.207369),(-0.067178, 0.067178, -0.282677),(-0.095004, -0.000000, -0.282677),(-0.138153, -0.138153, -0.132062),(0.000000, -0.195378, -0.132062),(-0.000000, -0.226909, -0.056754),(-0.195378, 0.000000, -0.132062),(-0.138153, -0.138153, -0.132062),(-0.160449, -0.160449, -0.056754),(0.434003, -0.000114, -0.500706),(0.455855, 0.032388, -0.476649),(0.440526, -0.023107, -0.493787),(0.440352, 0.022863, -0.493607),(0.231328, 0.000977, -0.274618),(0.455855, 0.032388, -0.476649),(0.456116, -0.032649, -0.476886),(0.477994, -0.000114, -0.452801),(0.471643, -0.023126, -0.459901),(0.477994, -0.000114, -0.452801),(0.456116, -0.032649, -0.476886),(0.471447, 0.022882, -0.459746),(0.471447, 0.022882, -0.459746),(0.456116, -0.032649, -0.476886),(0.455855, 0.032388, -0.476649),(0.432048, 0.032383, 0.477735),(0.415789, 0.022864, 0.493972),(0.409122, -0.000114, 0.500778),(0.409122, -0.000114, 0.500778),(0.415954, -0.023108, 0.494161),(0.432297, -0.032645, 0.477985),(0.432297, -0.032645, 0.477985),(0.448574, -0.023118, 0.461729),(0.455237, -0.000114, 0.454930),(0.455237, -0.000114, 0.454930),(0.448386, 0.022873, 0.461565),(0.432048, 0.032383, 0.477735),(0.432048, 0.032383, 0.477735),(0.409122, -0.000114, 0.500778),(0.455237, -0.000114, 0.454930),(-0.432046, 0.032388, 0.478010),(-0.448230, 0.022863, 0.461701),(-0.455012, -0.000114, 0.455014),(-0.455012, -0.000114, 0.455014),(-0.448419, -0.023107, 0.461866),(-0.432046, 0.032388, 0.478010),(-0.448419, -0.023107, 0.461866),(-0.432295, -0.032649, 0.478259),(-0.432046, 0.032388, 0.478010),(-0.432295, -0.032649, 0.478259),(-0.416085, -0.023126, 0.494593),(-0.409303, -0.000114, 0.501282),(-0.409303, -0.000114, 0.501282),(-0.415921, 0.022882, 0.494406),(-0.432295, -0.032649, 0.478259),(-0.095004, -0.000000, -0.282677),(-0.067178, -0.067178, -0.282677),(-0.104949, -0.104949, -0.207369),(0.104950, 0.104949, -0.207369),(0.138153, 0.138153, -0.132062),(0.195378, 0.000000, -0.132062),(-0.067178, -0.067178, -0.282677),(0.000000, -0.095005, -0.282677),(0.000000, -0.148421, -0.207369),(-0.160449, 0.160449, -0.056754),(-0.138153, 0.138153, -0.132062),(-0.195378, 0.000000, -0.132062),(-0.138153, 0.138153, -0.132062),(-0.104949, 0.104949, -0.207369),(-0.148421, -0.000000, -0.207369),(-0.148421, -0.000000, -0.207369),(-0.104949, -0.104949, -0.207369),(-0.138153, -0.138153, -0.132062),(-0.104949, -0.104949, -0.207369),(0.000000, -0.148421, -0.207369),(0.000000, -0.195378, -0.132062),(0.000000, -0.095005, -0.282677),(0.067179, -0.067178, -0.282677),(0.104950, -0.104949, -0.207369),(0.138153, 0.138153, -0.132062),(0.160449, 0.160449, -0.056754),(0.226909, 0.000000, -0.056754),(0.000000, -0.148421, -0.207369),(0.104950, -0.104949, -0.207369),(0.138153, -0.138153, -0.132062),(0.160449, 0.160449, -0.056754),(0.138153, 0.138153, -0.132062),(0.000000, 0.195378, -0.132062),(0.138153, 0.138153, -0.132062),(0.104950, 0.104949, -0.207369),(0.000000, 0.148421, -0.207369),(0.067179, -0.067178, -0.282677),(0.095005, -0.000000, -0.282677),(0.148421, -0.000000, -0.207369),(0.104950, -0.104949, -0.207369),(0.148421, -0.000000, -0.207369),(0.195378, 0.000000, -0.132062),(-0.000000, 0.226909, -0.056754),(0.000000, 0.195378, -0.132062),(-0.138153, 0.138153, -0.132062),(0.000000, 0.195378, -0.132062),(0.000000, 0.148421, -0.207369),(-0.104949, 0.104949, -0.207369),(-0.440526, -0.023107, -0.493787),(-0.434003, -0.000114, -0.500706),(-0.231329, 0.000977, -0.274618),(-0.440526, -0.023107, -0.493787),(-0.456116, -0.032649, -0.476886),(-0.455855, 0.032388, -0.476649),(-0.471643, -0.023126, -0.459901),(-0.456116, -0.032649, -0.476886),(-0.231329, 0.000977, -0.274618),(-0.477994, -0.000114, -0.452801),(-0.471643, -0.023126, -0.459901),(-0.231329, 0.000977, -0.274618),(-0.471448, 0.022882, -0.459746),(-0.477994, -0.000114, -0.452801),(-0.231329, 0.000977, -0.274618),(-0.455855, 0.032388, -0.476649),(-0.471448, 0.022882, -0.459746),(-0.231329, 0.000977, -0.274618),(-0.456116, -0.032649, -0.476886),(-0.440526, -0.023107, -0.493787),(-0.231329, 0.000977, -0.274618),(-0.434003, -0.000114, -0.500706),(-0.440352, 0.022863, -0.493607),(-0.231329, 0.000977, -0.274618),(-0.455855, 0.032388, -0.476649),(-0.440352, 0.022863, -0.493607),(-0.434003, -0.000114, -0.500706),(-0.434003, -0.000114, -0.500706),(-0.440526, -0.023107, -0.493787),(-0.455855, 0.032388, -0.476649),(-0.440352, 0.022863, -0.493607),(-0.455855, 0.032388, -0.476649),(-0.231329, 0.000977, -0.274618),(-0.456116, -0.032649, -0.476886),(-0.471643, -0.023126, -0.459901),(-0.477994, -0.000114, -0.452801),(-0.477994, -0.000114, -0.452801),(-0.471448, 0.022882, -0.459746),(-0.456116, -0.032649, -0.476886),(-0.471448, 0.022882, -0.459746),(-0.455855, 0.032388, -0.476649),(-0.456116, -0.032649, -0.476886),) \ No newline at end of file diff --git a/addons/io_hubs_addon/components/models/reflection_probe.py b/addons/io_hubs_addon/components/models/reflection_probe.py new file mode 100644 index 00000000..d54a5e89 --- /dev/null +++ b/addons/io_hubs_addon/components/models/reflection_probe.py @@ -0,0 +1 @@ +SHAPE = ((0.000000, -0.002500, -1.004330),(-0.136241, -0.002500, -0.995159),(-0.136331, -0.000000, -0.995823),(0.000000, -0.002500, -1.004330),(-0.136331, -0.000000, -0.995823),(0.000000, -0.000000, -1.005000),(0.000000, -0.004330, -1.002500),(-0.135996, -0.004330, -0.993346),(-0.136241, -0.002500, -0.995159),(0.000000, -0.004330, -1.002500),(-0.136241, -0.002500, -0.995159),(0.000000, -0.002500, -1.004330),(-0.000000, -0.005000, -1.000000),(-0.135661, -0.005000, -0.990868),(-0.135996, -0.004330, -0.993346),(-0.000000, -0.005000, -1.000000),(-0.135996, -0.004330, -0.993346),(0.000000, -0.004330, -1.002500),(-0.000000, -0.004330, -0.997500),(-0.135325, -0.004330, -0.988391),(-0.135661, -0.005000, -0.990868),(-0.000000, -0.004330, -0.997500),(-0.135661, -0.005000, -0.990868),(-0.000000, -0.005000, -1.000000),(-0.000000, -0.002500, -0.995670),(-0.135080, -0.002500, -0.986577),(-0.135325, -0.004330, -0.988391),(-0.000000, -0.002500, -0.995670),(-0.135325, -0.004330, -0.988391),(-0.000000, -0.004330, -0.997500),(-0.000000, -0.000000, -0.995000),(-0.134990, -0.000000, -0.985913),(-0.135080, -0.002500, -0.986577),(-0.000000, -0.000000, -0.995000),(-0.135080, -0.002500, -0.986577),(-0.000000, -0.002500, -0.995670),(-0.000000, 0.002500, -0.995670),(-0.135080, 0.002500, -0.986577),(-0.134990, -0.000000, -0.985913),(-0.000000, 0.002500, -0.995670),(-0.134990, -0.000000, -0.985913),(-0.000000, -0.000000, -0.995000),(-0.000000, 0.004330, -0.997500),(-0.135325, 0.004330, -0.988391),(-0.135080, 0.002500, -0.986577),(-0.000000, 0.004330, -0.997500),(-0.135080, 0.002500, -0.986577),(-0.000000, 0.002500, -0.995670),(-0.000000, 0.005000, -1.000000),(-0.135661, 0.005000, -0.990868),(-0.135325, 0.004330, -0.988391),(-0.000000, 0.005000, -1.000000),(-0.135325, 0.004330, -0.988391),(-0.000000, 0.004330, -0.997500),(0.000000, 0.004330, -1.002500),(-0.135996, 0.004330, -0.993346),(-0.135661, 0.005000, -0.990868),(0.000000, 0.004330, -1.002500),(-0.135661, 0.005000, -0.990868),(-0.000000, 0.005000, -1.000000),(0.000000, 0.002500, -1.004330),(-0.136241, 0.002500, -0.995159),(-0.135996, 0.004330, -0.993346),(0.000000, 0.002500, -1.004330),(-0.135996, 0.004330, -0.993346),(0.000000, 0.004330, -1.002500),(0.000000, -0.000000, -1.005000),(-0.136331, -0.000000, -0.995823),(-0.136241, 0.002500, -0.995159),(0.000000, -0.000000, -1.005000),(-0.136241, 0.002500, -0.995159),(0.000000, 0.002500, -1.004330),(-0.136241, -0.002500, -0.995159),(-0.266931, -0.002500, -0.968443),(-0.267108, -0.000000, -0.969089),(-0.136241, -0.002500, -0.995159),(-0.267108, -0.000000, -0.969089),(-0.136331, -0.000000, -0.995823),(-0.135996, -0.004330, -0.993346),(-0.266446, -0.004330, -0.966679),(-0.266931, -0.002500, -0.968443),(-0.135996, -0.004330, -0.993346),(-0.266931, -0.002500, -0.968443),(-0.136241, -0.002500, -0.995159),(-0.135661, -0.005000, -0.990868),(-0.265784, -0.005000, -0.964268),(-0.266446, -0.004330, -0.966679),(-0.135661, -0.005000, -0.990868),(-0.266446, -0.004330, -0.966679),(-0.135996, -0.004330, -0.993346),(-0.135325, -0.004330, -0.988391),(-0.265122, -0.004330, -0.961857),(-0.265784, -0.005000, -0.964268),(-0.135325, -0.004330, -0.988391),(-0.265784, -0.005000, -0.964268),(-0.135661, -0.005000, -0.990868),(-0.135080, -0.002500, -0.986577),(-0.264637, -0.002500, -0.960092),(-0.265122, -0.004330, -0.961857),(-0.135080, -0.002500, -0.986577),(-0.265122, -0.004330, -0.961857),(-0.135325, -0.004330, -0.988391),(-0.134990, -0.000000, -0.985913),(-0.264460, -0.000000, -0.959446),(-0.264637, -0.002500, -0.960092),(-0.134990, -0.000000, -0.985913),(-0.264637, -0.002500, -0.960092),(-0.135080, -0.002500, -0.986577),(-0.135080, 0.002500, -0.986577),(-0.264637, 0.002500, -0.960092),(-0.264460, -0.000000, -0.959446),(-0.135080, 0.002500, -0.986577),(-0.264460, -0.000000, -0.959446),(-0.134990, -0.000000, -0.985913),(-0.135325, 0.004330, -0.988391),(-0.265122, 0.004330, -0.961857),(-0.264637, 0.002500, -0.960092),(-0.135325, 0.004330, -0.988391),(-0.264637, 0.002500, -0.960092),(-0.135080, 0.002500, -0.986577),(-0.135661, 0.005000, -0.990868),(-0.265784, 0.005000, -0.964268),(-0.265122, 0.004330, -0.961857),(-0.135661, 0.005000, -0.990868),(-0.265122, 0.004330, -0.961857),(-0.135325, 0.004330, -0.988391),(-0.135996, 0.004330, -0.993346),(-0.266446, 0.004330, -0.966679),(-0.265784, 0.005000, -0.964268),(-0.135996, 0.004330, -0.993346),(-0.265784, 0.005000, -0.964268),(-0.135661, 0.005000, -0.990868),(-0.136241, 0.002500, -0.995159),(-0.266931, 0.002500, -0.968443),(-0.266446, 0.004330, -0.966679),(-0.136241, 0.002500, -0.995159),(-0.266446, 0.004330, -0.966679),(-0.135996, 0.004330, -0.993346),(-0.136331, -0.000000, -0.995823),(-0.267108, -0.000000, -0.969089),(-0.266931, 0.002500, -0.968443),(-0.136331, -0.000000, -0.995823),(-0.266931, 0.002500, -0.968443),(-0.136241, 0.002500, -0.995159),(-0.266931, -0.002500, -0.968443),(-0.390863, -0.002500, -0.925381),(-0.391124, -0.000000, -0.925998),(-0.266931, -0.002500, -0.968443),(-0.391124, -0.000000, -0.925998),(-0.267108, -0.000000, -0.969089),(-0.266446, -0.004330, -0.966679),(-0.390151, -0.004330, -0.923695),(-0.390863, -0.002500, -0.925381),(-0.266446, -0.004330, -0.966679),(-0.390863, -0.002500, -0.925381),(-0.266931, -0.002500, -0.968443),(-0.265784, -0.005000, -0.964268),(-0.389178, -0.005000, -0.921393),(-0.390151, -0.004330, -0.923695),(-0.265784, -0.005000, -0.964268),(-0.390151, -0.004330, -0.923695),(-0.266446, -0.004330, -0.966679),(-0.265122, -0.004330, -0.961857),(-0.388205, -0.004330, -0.919090),(-0.389178, -0.005000, -0.921393),(-0.265122, -0.004330, -0.961857),(-0.389178, -0.005000, -0.921393),(-0.265784, -0.005000, -0.964268),(-0.264637, -0.002500, -0.960092),(-0.387492, -0.002500, -0.917404),(-0.388205, -0.004330, -0.919090),(-0.264637, -0.002500, -0.960092),(-0.388205, -0.004330, -0.919090),(-0.265122, -0.004330, -0.961857),(-0.264460, -0.000000, -0.959446),(-0.387232, -0.000000, -0.916787),(-0.387492, -0.002500, -0.917404),(-0.264460, -0.000000, -0.959446),(-0.387492, -0.002500, -0.917404),(-0.264637, -0.002500, -0.960092),(-0.264637, 0.002500, -0.960092),(-0.387492, 0.002500, -0.917404),(-0.387232, -0.000000, -0.916787),(-0.264637, 0.002500, -0.960092),(-0.387232, -0.000000, -0.916787),(-0.264460, -0.000000, -0.959446),(-0.265122, 0.004330, -0.961857),(-0.388205, 0.004330, -0.919090),(-0.387492, 0.002500, -0.917404),(-0.265122, 0.004330, -0.961857),(-0.387492, 0.002500, -0.917404),(-0.264637, 0.002500, -0.960092),(-0.265784, 0.005000, -0.964268),(-0.389178, 0.005000, -0.921393),(-0.388205, 0.004330, -0.919090),(-0.265784, 0.005000, -0.964268),(-0.388205, 0.004330, -0.919090),(-0.265122, 0.004330, -0.961857),(-0.266446, 0.004330, -0.966679),(-0.390151, 0.004330, -0.923695),(-0.389178, 0.005000, -0.921393),(-0.266446, 0.004330, -0.966679),(-0.389178, 0.005000, -0.921393),(-0.265784, 0.005000, -0.964268),(-0.266931, 0.002500, -0.968443),(-0.390863, 0.002500, -0.925381),(-0.390151, 0.004330, -0.923695),(-0.266931, 0.002500, -0.968443),(-0.390151, 0.004330, -0.923695),(-0.266446, 0.004330, -0.966679),(-0.267108, -0.000000, -0.969089),(-0.391124, -0.000000, -0.925998),(-0.390863, 0.002500, -0.925381),(-0.267108, -0.000000, -0.969089),(-0.390863, 0.002500, -0.925381),(-0.266931, 0.002500, -0.968443),(-0.390863, -0.002500, -0.925381),(-0.506836, -0.002500, -0.867172),(-0.507174, -0.000000, -0.867750),(-0.390863, -0.002500, -0.925381),(-0.507174, -0.000000, -0.867750),(-0.391124, -0.000000, -0.925998),(-0.390151, -0.004330, -0.923695),(-0.505911, -0.004330, -0.865593),(-0.506836, -0.002500, -0.867172),(-0.390151, -0.004330, -0.923695),(-0.506836, -0.002500, -0.867172),(-0.390863, -0.002500, -0.925381),(-0.389178, -0.005000, -0.921393),(-0.504648, -0.005000, -0.863435),(-0.505911, -0.004330, -0.865593),(-0.389178, -0.005000, -0.921393),(-0.505911, -0.004330, -0.865593),(-0.390151, -0.004330, -0.923695),(-0.388205, -0.004330, -0.919090),(-0.503385, -0.004330, -0.861278),(-0.504648, -0.005000, -0.863435),(-0.388205, -0.004330, -0.919090),(-0.504648, -0.005000, -0.863435),(-0.389178, -0.005000, -0.921393),(-0.387492, -0.002500, -0.917404),(-0.502460, -0.002500, -0.859698),(-0.503385, -0.004330, -0.861278),(-0.387492, -0.002500, -0.917404),(-0.503385, -0.004330, -0.861278),(-0.388205, -0.004330, -0.919090),(-0.387232, -0.000000, -0.916787),(-0.502122, -0.000000, -0.859120),(-0.502460, -0.002500, -0.859698),(-0.387232, -0.000000, -0.916787),(-0.502460, -0.002500, -0.859698),(-0.387492, -0.002500, -0.917404),(-0.387492, 0.002500, -0.917404),(-0.502460, 0.002500, -0.859698),(-0.502122, -0.000000, -0.859120),(-0.387492, 0.002500, -0.917404),(-0.502122, -0.000000, -0.859120),(-0.387232, -0.000000, -0.916787),(-0.388205, 0.004330, -0.919090),(-0.503385, 0.004330, -0.861278),(-0.502460, 0.002500, -0.859698),(-0.388205, 0.004330, -0.919090),(-0.502460, 0.002500, -0.859698),(-0.387492, 0.002500, -0.917404),(-0.389178, 0.005000, -0.921393),(-0.504648, 0.005000, -0.863435),(-0.503385, 0.004330, -0.861278),(-0.389178, 0.005000, -0.921393),(-0.503385, 0.004330, -0.861278),(-0.388205, 0.004330, -0.919090),(-0.390151, 0.004330, -0.923695),(-0.505911, 0.004330, -0.865593),(-0.504648, 0.005000, -0.863435),(-0.390151, 0.004330, -0.923695),(-0.504648, 0.005000, -0.863435),(-0.389178, 0.005000, -0.921393),(-0.390863, 0.002500, -0.925381),(-0.506836, 0.002500, -0.867172),(-0.505911, 0.004330, -0.865593),(-0.390863, 0.002500, -0.925381),(-0.505911, 0.004330, -0.865593),(-0.390151, 0.004330, -0.923695),(-0.391124, -0.000000, -0.925998),(-0.507174, -0.000000, -0.867750),(-0.506836, 0.002500, -0.867172),(-0.391124, -0.000000, -0.925998),(-0.506836, 0.002500, -0.867172),(-0.390863, 0.002500, -0.925381),(-0.506836, -0.002500, -0.867172),(-0.613650, -0.002500, -0.795015),(-0.614060, -0.000000, -0.795545),(-0.506836, -0.002500, -0.867172),(-0.614060, -0.000000, -0.795545),(-0.507174, -0.000000, -0.867750),(-0.505911, -0.004330, -0.865593),(-0.612531, -0.004330, -0.793567),(-0.613650, -0.002500, -0.795015),(-0.505911, -0.004330, -0.865593),(-0.613650, -0.002500, -0.795015),(-0.506836, -0.002500, -0.867172),(-0.504648, -0.005000, -0.863435),(-0.611002, -0.005000, -0.791589),(-0.612531, -0.004330, -0.793567),(-0.504648, -0.005000, -0.863435),(-0.612531, -0.004330, -0.793567),(-0.505911, -0.004330, -0.865593),(-0.503385, -0.004330, -0.861278),(-0.609473, -0.004330, -0.789611),(-0.611002, -0.005000, -0.791589),(-0.503385, -0.004330, -0.861278),(-0.611002, -0.005000, -0.791589),(-0.504648, -0.005000, -0.863435),(-0.502460, -0.002500, -0.859698),(-0.608354, -0.002500, -0.788163),(-0.609473, -0.004330, -0.789611),(-0.502460, -0.002500, -0.859698),(-0.609473, -0.004330, -0.789611),(-0.503385, -0.004330, -0.861278),(-0.502122, -0.000000, -0.859120),(-0.607945, -0.000000, -0.787633),(-0.608354, -0.002500, -0.788163),(-0.502122, -0.000000, -0.859120),(-0.608354, -0.002500, -0.788163),(-0.502460, -0.002500, -0.859698),(-0.502460, 0.002500, -0.859698),(-0.608354, 0.002500, -0.788163),(-0.607945, -0.000000, -0.787633),(-0.502460, 0.002500, -0.859698),(-0.607945, -0.000000, -0.787633),(-0.502122, -0.000000, -0.859120),(-0.503385, 0.004330, -0.861278),(-0.609473, 0.004330, -0.789611),(-0.608354, 0.002500, -0.788163),(-0.503385, 0.004330, -0.861278),(-0.608354, 0.002500, -0.788163),(-0.502460, 0.002500, -0.859698),(-0.504648, 0.005000, -0.863435),(-0.611002, 0.005000, -0.791589),(-0.609473, 0.004330, -0.789611),(-0.504648, 0.005000, -0.863435),(-0.609473, 0.004330, -0.789611),(-0.503385, 0.004330, -0.861278),(-0.505911, 0.004330, -0.865593),(-0.612531, 0.004330, -0.793567),(-0.611002, 0.005000, -0.791589),(-0.505911, 0.004330, -0.865593),(-0.611002, 0.005000, -0.791589),(-0.504648, 0.005000, -0.863435),(-0.506836, 0.002500, -0.867172),(-0.613650, 0.002500, -0.795015),(-0.612531, 0.004330, -0.793567),(-0.506836, 0.002500, -0.867172),(-0.612531, 0.004330, -0.793567),(-0.505911, 0.004330, -0.865593),(-0.507174, -0.000000, -0.867750),(-0.614060, -0.000000, -0.795545),(-0.613650, 0.002500, -0.795015),(-0.507174, -0.000000, -0.867750),(-0.613650, 0.002500, -0.795015),(-0.506836, 0.002500, -0.867172),(-0.613650, -0.002500, -0.795015),(-0.710109, -0.002500, -0.710109),(-0.710582, -0.000000, -0.710582),(-0.613650, -0.002500, -0.795015),(-0.710582, -0.000000, -0.710582),(-0.614060, -0.000000, -0.795545),(-0.612531, -0.004330, -0.793567),(-0.708815, -0.004330, -0.708815),(-0.710109, -0.002500, -0.710109),(-0.612531, -0.004330, -0.793567),(-0.710109, -0.002500, -0.710109),(-0.613650, -0.002500, -0.795015),(-0.611002, -0.005000, -0.791589),(-0.707047, -0.005000, -0.707047),(-0.708815, -0.004330, -0.708815),(-0.611002, -0.005000, -0.791589),(-0.708815, -0.004330, -0.708815),(-0.612531, -0.004330, -0.793567),(-0.609473, -0.004330, -0.789611),(-0.705279, -0.004330, -0.705279),(-0.707047, -0.005000, -0.707047),(-0.609473, -0.004330, -0.789611),(-0.707047, -0.005000, -0.707047),(-0.611002, -0.005000, -0.791589),(-0.608354, -0.002500, -0.788163),(-0.703985, -0.002500, -0.703985),(-0.705279, -0.004330, -0.705279),(-0.608354, -0.002500, -0.788163),(-0.705279, -0.004330, -0.705279),(-0.609473, -0.004330, -0.789611),(-0.607945, -0.000000, -0.787633),(-0.703511, -0.000000, -0.703511),(-0.703985, -0.002500, -0.703985),(-0.607945, -0.000000, -0.787633),(-0.703985, -0.002500, -0.703985),(-0.608354, -0.002500, -0.788163),(-0.608354, 0.002500, -0.788163),(-0.703985, 0.002500, -0.703985),(-0.703511, -0.000000, -0.703511),(-0.608354, 0.002500, -0.788163),(-0.703511, -0.000000, -0.703511),(-0.607945, -0.000000, -0.787633),(-0.609473, 0.004330, -0.789611),(-0.705279, 0.004330, -0.705279),(-0.703985, 0.002500, -0.703985),(-0.609473, 0.004330, -0.789611),(-0.703985, 0.002500, -0.703985),(-0.608354, 0.002500, -0.788163),(-0.611002, 0.005000, -0.791589),(-0.707047, 0.005000, -0.707047),(-0.705279, 0.004330, -0.705279),(-0.611002, 0.005000, -0.791589),(-0.705279, 0.004330, -0.705279),(-0.609473, 0.004330, -0.789611),(-0.612531, 0.004330, -0.793567),(-0.708815, 0.004330, -0.708815),(-0.707047, 0.005000, -0.707047),(-0.612531, 0.004330, -0.793567),(-0.707047, 0.005000, -0.707047),(-0.611002, 0.005000, -0.791589),(-0.613650, 0.002500, -0.795015),(-0.710109, 0.002500, -0.710109),(-0.708815, 0.004330, -0.708815),(-0.613650, 0.002500, -0.795015),(-0.708815, 0.004330, -0.708815),(-0.612531, 0.004330, -0.793567),(-0.614060, -0.000000, -0.795545),(-0.710582, -0.000000, -0.710582),(-0.710109, 0.002500, -0.710109),(-0.614060, -0.000000, -0.795545),(-0.710109, 0.002500, -0.710109),(-0.613650, 0.002500, -0.795015),(-0.710109, -0.002500, -0.710109),(-0.795015, -0.002500, -0.613650),(-0.795545, -0.000000, -0.614060),(-0.710109, -0.002500, -0.710109),(-0.795545, -0.000000, -0.614060),(-0.710582, -0.000000, -0.710582),(-0.708815, -0.004330, -0.708815),(-0.793567, -0.004330, -0.612531),(-0.795015, -0.002500, -0.613650),(-0.708815, -0.004330, -0.708815),(-0.795015, -0.002500, -0.613650),(-0.710109, -0.002500, -0.710109),(-0.707047, -0.005000, -0.707047),(-0.791589, -0.005000, -0.611002),(-0.793567, -0.004330, -0.612531),(-0.707047, -0.005000, -0.707047),(-0.793567, -0.004330, -0.612531),(-0.708815, -0.004330, -0.708815),(-0.705279, -0.004330, -0.705279),(-0.789611, -0.004330, -0.609474),(-0.791589, -0.005000, -0.611002),(-0.705279, -0.004330, -0.705279),(-0.791589, -0.005000, -0.611002),(-0.707047, -0.005000, -0.707047),(-0.703985, -0.002500, -0.703985),(-0.788163, -0.002500, -0.608354),(-0.789611, -0.004330, -0.609474),(-0.703985, -0.002500, -0.703985),(-0.789611, -0.004330, -0.609474),(-0.705279, -0.004330, -0.705279),(-0.703511, -0.000000, -0.703511),(-0.787633, -0.000000, -0.607945),(-0.788163, -0.002500, -0.608354),(-0.703511, -0.000000, -0.703511),(-0.788163, -0.002500, -0.608354),(-0.703985, -0.002500, -0.703985),(-0.703985, 0.002500, -0.703985),(-0.788163, 0.002500, -0.608354),(-0.787633, -0.000000, -0.607945),(-0.703985, 0.002500, -0.703985),(-0.787633, -0.000000, -0.607945),(-0.703511, -0.000000, -0.703511),(-0.705279, 0.004330, -0.705279),(-0.789611, 0.004330, -0.609474),(-0.788163, 0.002500, -0.608354),(-0.705279, 0.004330, -0.705279),(-0.788163, 0.002500, -0.608354),(-0.703985, 0.002500, -0.703985),(-0.707047, 0.005000, -0.707047),(-0.791589, 0.005000, -0.611002),(-0.789611, 0.004330, -0.609474),(-0.707047, 0.005000, -0.707047),(-0.789611, 0.004330, -0.609474),(-0.705279, 0.004330, -0.705279),(-0.708815, 0.004330, -0.708815),(-0.793567, 0.004330, -0.612531),(-0.791589, 0.005000, -0.611002),(-0.708815, 0.004330, -0.708815),(-0.791589, 0.005000, -0.611002),(-0.707047, 0.005000, -0.707047),(-0.710109, 0.002500, -0.710109),(-0.795015, 0.002500, -0.613650),(-0.793567, 0.004330, -0.612531),(-0.710109, 0.002500, -0.710109),(-0.793567, 0.004330, -0.612531),(-0.708815, 0.004330, -0.708815),(-0.710582, -0.000000, -0.710582),(-0.795545, -0.000000, -0.614060),(-0.795015, 0.002500, -0.613650),(-0.710582, -0.000000, -0.710582),(-0.795015, 0.002500, -0.613650),(-0.710109, 0.002500, -0.710109),(-0.795015, -0.002500, -0.613650),(-0.867172, -0.002500, -0.506836),(-0.867750, -0.000000, -0.507174),(-0.795015, -0.002500, -0.613650),(-0.867750, -0.000000, -0.507174),(-0.795545, -0.000000, -0.614060),(-0.793567, -0.004330, -0.612531),(-0.865593, -0.004330, -0.505911),(-0.867172, -0.002500, -0.506836),(-0.793567, -0.004330, -0.612531),(-0.867172, -0.002500, -0.506836),(-0.795015, -0.002500, -0.613650),(-0.791589, -0.005000, -0.611002),(-0.863435, -0.005000, -0.504648),(-0.865593, -0.004330, -0.505911),(-0.791589, -0.005000, -0.611002),(-0.865593, -0.004330, -0.505911),(-0.793567, -0.004330, -0.612531),(-0.789611, -0.004330, -0.609474),(-0.861278, -0.004330, -0.503385),(-0.863435, -0.005000, -0.504648),(-0.789611, -0.004330, -0.609474),(-0.863435, -0.005000, -0.504648),(-0.791589, -0.005000, -0.611002),(-0.788163, -0.002500, -0.608354),(-0.859698, -0.002500, -0.502460),(-0.861278, -0.004330, -0.503385),(-0.788163, -0.002500, -0.608354),(-0.861278, -0.004330, -0.503385),(-0.789611, -0.004330, -0.609474),(-0.787633, -0.000000, -0.607945),(-0.859120, -0.000000, -0.502122),(-0.859698, -0.002500, -0.502460),(-0.787633, -0.000000, -0.607945),(-0.859698, -0.002500, -0.502460),(-0.788163, -0.002500, -0.608354),(-0.788163, 0.002500, -0.608354),(-0.859698, 0.002500, -0.502460),(-0.859120, -0.000000, -0.502122),(-0.788163, 0.002500, -0.608354),(-0.859120, -0.000000, -0.502122),(-0.787633, -0.000000, -0.607945),(-0.789611, 0.004330, -0.609474),(-0.861278, 0.004330, -0.503385),(-0.859698, 0.002500, -0.502460),(-0.789611, 0.004330, -0.609474),(-0.859698, 0.002500, -0.502460),(-0.788163, 0.002500, -0.608354),(-0.791589, 0.005000, -0.611002),(-0.863435, 0.005000, -0.504648),(-0.861278, 0.004330, -0.503385),(-0.791589, 0.005000, -0.611002),(-0.861278, 0.004330, -0.503385),(-0.789611, 0.004330, -0.609474),(-0.793567, 0.004330, -0.612531),(-0.865593, 0.004330, -0.505911),(-0.863435, 0.005000, -0.504648),(-0.793567, 0.004330, -0.612531),(-0.863435, 0.005000, -0.504648),(-0.791589, 0.005000, -0.611002),(-0.795015, 0.002500, -0.613650),(-0.867172, 0.002500, -0.506836),(-0.865593, 0.004330, -0.505911),(-0.795015, 0.002500, -0.613650),(-0.865593, 0.004330, -0.505911),(-0.793567, 0.004330, -0.612531),(-0.795545, -0.000000, -0.614060),(-0.867750, -0.000000, -0.507174),(-0.867172, 0.002500, -0.506836),(-0.795545, -0.000000, -0.614060),(-0.867172, 0.002500, -0.506836),(-0.795015, 0.002500, -0.613650),(-0.867172, -0.002500, -0.506836),(-0.925381, -0.002500, -0.390863),(-0.925998, -0.000000, -0.391124),(-0.867172, -0.002500, -0.506836),(-0.925998, -0.000000, -0.391124),(-0.867750, -0.000000, -0.507174),(-0.865593, -0.004330, -0.505911),(-0.923695, -0.004330, -0.390151),(-0.925381, -0.002500, -0.390863),(-0.865593, -0.004330, -0.505911),(-0.925381, -0.002500, -0.390863),(-0.867172, -0.002500, -0.506836),(-0.863435, -0.005000, -0.504648),(-0.921392, -0.005000, -0.389178),(-0.923695, -0.004330, -0.390151),(-0.863435, -0.005000, -0.504648),(-0.923695, -0.004330, -0.390151),(-0.865593, -0.004330, -0.505911),(-0.861278, -0.004330, -0.503385),(-0.919090, -0.004330, -0.388205),(-0.921392, -0.005000, -0.389178),(-0.861278, -0.004330, -0.503385),(-0.921392, -0.005000, -0.389178),(-0.863435, -0.005000, -0.504648),(-0.859698, -0.002500, -0.502460),(-0.917404, -0.002500, -0.387492),(-0.919090, -0.004330, -0.388205),(-0.859698, -0.002500, -0.502460),(-0.919090, -0.004330, -0.388205),(-0.861278, -0.004330, -0.503385),(-0.859120, -0.000000, -0.502122),(-0.916787, -0.000000, -0.387232),(-0.917404, -0.002500, -0.387492),(-0.859120, -0.000000, -0.502122),(-0.917404, -0.002500, -0.387492),(-0.859698, -0.002500, -0.502460),(-0.859698, 0.002500, -0.502460),(-0.917404, 0.002500, -0.387492),(-0.916787, -0.000000, -0.387232),(-0.859698, 0.002500, -0.502460),(-0.916787, -0.000000, -0.387232),(-0.859120, -0.000000, -0.502122),(-0.861278, 0.004330, -0.503385),(-0.919090, 0.004330, -0.388205),(-0.917404, 0.002500, -0.387492),(-0.861278, 0.004330, -0.503385),(-0.917404, 0.002500, -0.387492),(-0.859698, 0.002500, -0.502460),(-0.863435, 0.005000, -0.504648),(-0.921392, 0.005000, -0.389178),(-0.919090, 0.004330, -0.388205),(-0.863435, 0.005000, -0.504648),(-0.919090, 0.004330, -0.388205),(-0.861278, 0.004330, -0.503385),(-0.865593, 0.004330, -0.505911),(-0.923695, 0.004330, -0.390151),(-0.921392, 0.005000, -0.389178),(-0.865593, 0.004330, -0.505911),(-0.921392, 0.005000, -0.389178),(-0.863435, 0.005000, -0.504648),(-0.867172, 0.002500, -0.506836),(-0.925381, 0.002500, -0.390863),(-0.923695, 0.004330, -0.390151),(-0.867172, 0.002500, -0.506836),(-0.923695, 0.004330, -0.390151),(-0.865593, 0.004330, -0.505911),(-0.867750, -0.000000, -0.507174),(-0.925998, -0.000000, -0.391124),(-0.925381, 0.002500, -0.390863),(-0.867750, -0.000000, -0.507174),(-0.925381, 0.002500, -0.390863),(-0.867172, 0.002500, -0.506836),(-0.925381, -0.002500, -0.390863),(-0.968443, -0.002500, -0.266931),(-0.969089, -0.000000, -0.267108),(-0.925381, -0.002500, -0.390863),(-0.969089, -0.000000, -0.267108),(-0.925998, -0.000000, -0.391124),(-0.923695, -0.004330, -0.390151),(-0.966679, -0.004330, -0.266446),(-0.968443, -0.002500, -0.266931),(-0.923695, -0.004330, -0.390151),(-0.968443, -0.002500, -0.266931),(-0.925381, -0.002500, -0.390863),(-0.921392, -0.005000, -0.389178),(-0.964268, -0.005000, -0.265784),(-0.966679, -0.004330, -0.266446),(-0.921392, -0.005000, -0.389178),(-0.966679, -0.004330, -0.266446),(-0.923695, -0.004330, -0.390151),(-0.919090, -0.004330, -0.388205),(-0.961857, -0.004330, -0.265122),(-0.964268, -0.005000, -0.265784),(-0.919090, -0.004330, -0.388205),(-0.964268, -0.005000, -0.265784),(-0.921392, -0.005000, -0.389178),(-0.917404, -0.002500, -0.387492),(-0.960092, -0.002500, -0.264637),(-0.961857, -0.004330, -0.265122),(-0.917404, -0.002500, -0.387492),(-0.961857, -0.004330, -0.265122),(-0.919090, -0.004330, -0.388205),(-0.916787, -0.000000, -0.387232),(-0.959446, -0.000000, -0.264460),(-0.960092, -0.002500, -0.264637),(-0.916787, -0.000000, -0.387232),(-0.960092, -0.002500, -0.264637),(-0.917404, -0.002500, -0.387492),(-0.917404, 0.002500, -0.387492),(-0.960092, 0.002500, -0.264637),(-0.959446, -0.000000, -0.264460),(-0.917404, 0.002500, -0.387492),(-0.959446, -0.000000, -0.264460),(-0.916787, -0.000000, -0.387232),(-0.919090, 0.004330, -0.388205),(-0.961857, 0.004330, -0.265122),(-0.960092, 0.002500, -0.264637),(-0.919090, 0.004330, -0.388205),(-0.960092, 0.002500, -0.264637),(-0.917404, 0.002500, -0.387492),(-0.921392, 0.005000, -0.389178),(-0.964268, 0.005000, -0.265784),(-0.961857, 0.004330, -0.265122),(-0.921392, 0.005000, -0.389178),(-0.961857, 0.004330, -0.265122),(-0.919090, 0.004330, -0.388205),(-0.923695, 0.004330, -0.390151),(-0.966679, 0.004330, -0.266446),(-0.964268, 0.005000, -0.265784),(-0.923695, 0.004330, -0.390151),(-0.964268, 0.005000, -0.265784),(-0.921392, 0.005000, -0.389178),(-0.925381, 0.002500, -0.390863),(-0.968443, 0.002500, -0.266931),(-0.966679, 0.004330, -0.266446),(-0.925381, 0.002500, -0.390863),(-0.966679, 0.004330, -0.266446),(-0.923695, 0.004330, -0.390151),(-0.925998, -0.000000, -0.391124),(-0.969089, -0.000000, -0.267108),(-0.968443, 0.002500, -0.266931),(-0.925998, -0.000000, -0.391124),(-0.968443, 0.002500, -0.266931),(-0.925381, 0.002500, -0.390863),(-0.968443, -0.002500, -0.266931),(-0.995159, -0.002500, -0.136241),(-0.995823, -0.000000, -0.136331),(-0.968443, -0.002500, -0.266931),(-0.995823, -0.000000, -0.136331),(-0.969089, -0.000000, -0.267108),(-0.966679, -0.004330, -0.266446),(-0.993345, -0.004330, -0.135996),(-0.995159, -0.002500, -0.136241),(-0.966679, -0.004330, -0.266446),(-0.995159, -0.002500, -0.136241),(-0.968443, -0.002500, -0.266931),(-0.964268, -0.005000, -0.265784),(-0.990868, -0.005000, -0.135661),(-0.993345, -0.004330, -0.135996),(-0.964268, -0.005000, -0.265784),(-0.993345, -0.004330, -0.135996),(-0.966679, -0.004330, -0.266446),(-0.961857, -0.004330, -0.265122),(-0.988391, -0.004330, -0.135325),(-0.990868, -0.005000, -0.135661),(-0.961857, -0.004330, -0.265122),(-0.990868, -0.005000, -0.135661),(-0.964268, -0.005000, -0.265784),(-0.960092, -0.002500, -0.264637),(-0.986577, -0.002500, -0.135080),(-0.988391, -0.004330, -0.135325),(-0.960092, -0.002500, -0.264637),(-0.988391, -0.004330, -0.135325),(-0.961857, -0.004330, -0.265122),(-0.959446, -0.000000, -0.264460),(-0.985913, -0.000000, -0.134990),(-0.986577, -0.002500, -0.135080),(-0.959446, -0.000000, -0.264460),(-0.986577, -0.002500, -0.135080),(-0.960092, -0.002500, -0.264637),(-0.960092, 0.002500, -0.264637),(-0.986577, 0.002500, -0.135080),(-0.985913, -0.000000, -0.134990),(-0.960092, 0.002500, -0.264637),(-0.985913, -0.000000, -0.134990),(-0.959446, -0.000000, -0.264460),(-0.961857, 0.004330, -0.265122),(-0.988391, 0.004330, -0.135325),(-0.986577, 0.002500, -0.135080),(-0.961857, 0.004330, -0.265122),(-0.986577, 0.002500, -0.135080),(-0.960092, 0.002500, -0.264637),(-0.964268, 0.005000, -0.265784),(-0.990868, 0.005000, -0.135661),(-0.988391, 0.004330, -0.135325),(-0.964268, 0.005000, -0.265784),(-0.988391, 0.004330, -0.135325),(-0.961857, 0.004330, -0.265122),(-0.966679, 0.004330, -0.266446),(-0.993345, 0.004330, -0.135996),(-0.990868, 0.005000, -0.135661),(-0.966679, 0.004330, -0.266446),(-0.990868, 0.005000, -0.135661),(-0.964268, 0.005000, -0.265784),(-0.968443, 0.002500, -0.266931),(-0.995159, 0.002500, -0.136241),(-0.993345, 0.004330, -0.135996),(-0.968443, 0.002500, -0.266931),(-0.993345, 0.004330, -0.135996),(-0.966679, 0.004330, -0.266446),(-0.969089, -0.000000, -0.267108),(-0.995823, -0.000000, -0.136331),(-0.995159, 0.002500, -0.136241),(-0.969089, -0.000000, -0.267108),(-0.995159, 0.002500, -0.136241),(-0.968443, 0.002500, -0.266931),(-0.995159, -0.002500, -0.136241),(-1.004330, -0.002500, -0.000000),(-1.005000, 0.000000, -0.000000),(-0.995159, -0.002500, -0.136241),(-1.005000, 0.000000, -0.000000),(-0.995823, -0.000000, -0.136331),(-0.993345, -0.004330, -0.135996),(-1.002500, -0.004330, -0.000000),(-1.004330, -0.002500, -0.000000),(-0.993345, -0.004330, -0.135996),(-1.004330, -0.002500, -0.000000),(-0.995159, -0.002500, -0.136241),(-0.990868, -0.005000, -0.135661),(-1.000000, -0.005000, 0.000000),(-1.002500, -0.004330, -0.000000),(-0.990868, -0.005000, -0.135661),(-1.002500, -0.004330, -0.000000),(-0.993345, -0.004330, -0.135996),(-0.988391, -0.004330, -0.135325),(-0.997500, -0.004330, 0.000000),(-1.000000, -0.005000, 0.000000),(-0.988391, -0.004330, -0.135325),(-1.000000, -0.005000, 0.000000),(-0.990868, -0.005000, -0.135661),(-0.986577, -0.002500, -0.135080),(-0.995670, -0.002500, 0.000000),(-0.997500, -0.004330, 0.000000),(-0.986577, -0.002500, -0.135080),(-0.997500, -0.004330, 0.000000),(-0.988391, -0.004330, -0.135325),(-0.985913, -0.000000, -0.134990),(-0.995000, -0.000000, 0.000000),(-0.995670, -0.002500, 0.000000),(-0.985913, -0.000000, -0.134990),(-0.995670, -0.002500, 0.000000),(-0.986577, -0.002500, -0.135080),(-0.986577, 0.002500, -0.135080),(-0.995670, 0.002500, 0.000000),(-0.995000, -0.000000, 0.000000),(-0.986577, 0.002500, -0.135080),(-0.995000, -0.000000, 0.000000),(-0.985913, -0.000000, -0.134990),(-0.988391, 0.004330, -0.135325),(-0.997500, 0.004330, 0.000000),(-0.995670, 0.002500, 0.000000),(-0.988391, 0.004330, -0.135325),(-0.995670, 0.002500, 0.000000),(-0.986577, 0.002500, -0.135080),(-0.990868, 0.005000, -0.135661),(-1.000000, 0.005000, -0.000000),(-0.997500, 0.004330, 0.000000),(-0.990868, 0.005000, -0.135661),(-0.997500, 0.004330, 0.000000),(-0.988391, 0.004330, -0.135325),(-0.993345, 0.004330, -0.135996),(-1.002500, 0.004330, -0.000000),(-1.000000, 0.005000, -0.000000),(-0.993345, 0.004330, -0.135996),(-1.000000, 0.005000, -0.000000),(-0.990868, 0.005000, -0.135661),(-0.995159, 0.002500, -0.136241),(-1.004330, 0.002500, -0.000000),(-1.002500, 0.004330, -0.000000),(-0.995159, 0.002500, -0.136241),(-1.002500, 0.004330, -0.000000),(-0.993345, 0.004330, -0.135996),(-0.995823, -0.000000, -0.136331),(-1.005000, 0.000000, -0.000000),(-1.004330, 0.002500, -0.000000),(-0.995823, -0.000000, -0.136331),(-1.004330, 0.002500, -0.000000),(-0.995159, 0.002500, -0.136241),(-1.004330, -0.002500, -0.000000),(-0.995159, -0.002500, 0.136241),(-0.995823, 0.000000, 0.136331),(-1.004330, -0.002500, -0.000000),(-0.995823, 0.000000, 0.136331),(-1.005000, 0.000000, -0.000000),(-1.002500, -0.004330, -0.000000),(-0.993346, -0.004330, 0.135996),(-0.995159, -0.002500, 0.136241),(-1.002500, -0.004330, -0.000000),(-0.995159, -0.002500, 0.136241),(-1.004330, -0.002500, -0.000000),(-1.000000, -0.005000, 0.000000),(-0.990868, -0.005000, 0.135661),(-0.993346, -0.004330, 0.135996),(-1.000000, -0.005000, 0.000000),(-0.993346, -0.004330, 0.135996),(-1.002500, -0.004330, -0.000000),(-0.997500, -0.004330, 0.000000),(-0.988391, -0.004330, 0.135325),(-0.990868, -0.005000, 0.135661),(-0.997500, -0.004330, 0.000000),(-0.990868, -0.005000, 0.135661),(-1.000000, -0.005000, 0.000000),(-0.995670, -0.002500, 0.000000),(-0.986577, -0.002500, 0.135080),(-0.988391, -0.004330, 0.135325),(-0.995670, -0.002500, 0.000000),(-0.988391, -0.004330, 0.135325),(-0.997500, -0.004330, 0.000000),(-0.995000, -0.000000, 0.000000),(-0.985913, 0.000000, 0.134990),(-0.986577, -0.002500, 0.135080),(-0.995000, -0.000000, 0.000000),(-0.986577, -0.002500, 0.135080),(-0.995670, -0.002500, 0.000000),(-0.995670, 0.002500, 0.000000),(-0.986577, 0.002500, 0.135080),(-0.985913, 0.000000, 0.134990),(-0.995670, 0.002500, 0.000000),(-0.985913, 0.000000, 0.134990),(-0.995000, -0.000000, 0.000000),(-0.997500, 0.004330, 0.000000),(-0.988391, 0.004330, 0.135325),(-0.986577, 0.002500, 0.135080),(-0.997500, 0.004330, 0.000000),(-0.986577, 0.002500, 0.135080),(-0.995670, 0.002500, 0.000000),(-1.000000, 0.005000, -0.000000),(-0.990868, 0.005000, 0.135661),(-0.988391, 0.004330, 0.135325),(-1.000000, 0.005000, -0.000000),(-0.988391, 0.004330, 0.135325),(-0.997500, 0.004330, 0.000000),(-1.002500, 0.004330, -0.000000),(-0.993346, 0.004330, 0.135996),(-0.990868, 0.005000, 0.135661),(-1.002500, 0.004330, -0.000000),(-0.990868, 0.005000, 0.135661),(-1.000000, 0.005000, -0.000000),(-1.004330, 0.002500, -0.000000),(-0.995159, 0.002500, 0.136241),(-0.993346, 0.004330, 0.135996),(-1.004330, 0.002500, -0.000000),(-0.993346, 0.004330, 0.135996),(-1.002500, 0.004330, -0.000000),(-1.005000, 0.000000, -0.000000),(-0.995823, 0.000000, 0.136331),(-0.995159, 0.002500, 0.136241),(-1.005000, 0.000000, -0.000000),(-0.995159, 0.002500, 0.136241),(-1.004330, 0.002500, -0.000000),(-0.995159, -0.002500, 0.136241),(-0.968443, -0.002500, 0.266931),(-0.969089, 0.000000, 0.267108),(-0.995159, -0.002500, 0.136241),(-0.969089, 0.000000, 0.267108),(-0.995823, 0.000000, 0.136331),(-0.993346, -0.004330, 0.135996),(-0.966679, -0.004330, 0.266446),(-0.968443, -0.002500, 0.266931),(-0.993346, -0.004330, 0.135996),(-0.968443, -0.002500, 0.266931),(-0.995159, -0.002500, 0.136241),(-0.990868, -0.005000, 0.135661),(-0.964268, -0.005000, 0.265784),(-0.966679, -0.004330, 0.266446),(-0.990868, -0.005000, 0.135661),(-0.966679, -0.004330, 0.266446),(-0.993346, -0.004330, 0.135996),(-0.988391, -0.004330, 0.135325),(-0.961857, -0.004330, 0.265122),(-0.964268, -0.005000, 0.265784),(-0.988391, -0.004330, 0.135325),(-0.964268, -0.005000, 0.265784),(-0.990868, -0.005000, 0.135661),(-0.986577, -0.002500, 0.135080),(-0.960092, -0.002500, 0.264637),(-0.961857, -0.004330, 0.265122),(-0.986577, -0.002500, 0.135080),(-0.961857, -0.004330, 0.265122),(-0.988391, -0.004330, 0.135325),(-0.985913, 0.000000, 0.134990),(-0.959446, 0.000000, 0.264460),(-0.960092, -0.002500, 0.264637),(-0.985913, 0.000000, 0.134990),(-0.960092, -0.002500, 0.264637),(-0.986577, -0.002500, 0.135080),(-0.986577, 0.002500, 0.135080),(-0.960092, 0.002500, 0.264637),(-0.959446, 0.000000, 0.264460),(-0.986577, 0.002500, 0.135080),(-0.959446, 0.000000, 0.264460),(-0.985913, 0.000000, 0.134990),(-0.988391, 0.004330, 0.135325),(-0.961857, 0.004330, 0.265122),(-0.960092, 0.002500, 0.264637),(-0.988391, 0.004330, 0.135325),(-0.960092, 0.002500, 0.264637),(-0.986577, 0.002500, 0.135080),(-0.990868, 0.005000, 0.135661),(-0.964268, 0.005000, 0.265784),(-0.961857, 0.004330, 0.265122),(-0.990868, 0.005000, 0.135661),(-0.961857, 0.004330, 0.265122),(-0.988391, 0.004330, 0.135325),(-0.993346, 0.004330, 0.135996),(-0.966679, 0.004330, 0.266446),(-0.964268, 0.005000, 0.265784),(-0.993346, 0.004330, 0.135996),(-0.964268, 0.005000, 0.265784),(-0.990868, 0.005000, 0.135661),(-0.995159, 0.002500, 0.136241),(-0.968443, 0.002500, 0.266931),(-0.966679, 0.004330, 0.266446),(-0.995159, 0.002500, 0.136241),(-0.966679, 0.004330, 0.266446),(-0.993346, 0.004330, 0.135996),(-0.995823, 0.000000, 0.136331),(-0.969089, 0.000000, 0.267108),(-0.968443, 0.002500, 0.266931),(-0.995823, 0.000000, 0.136331),(-0.968443, 0.002500, 0.266931),(-0.995159, 0.002500, 0.136241),(-0.968443, -0.002500, 0.266931),(-0.925381, -0.002500, 0.390863),(-0.925998, 0.000000, 0.391124),(-0.968443, -0.002500, 0.266931),(-0.925998, 0.000000, 0.391124),(-0.969089, 0.000000, 0.267108),(-0.966679, -0.004330, 0.266446),(-0.923695, -0.004330, 0.390151),(-0.925381, -0.002500, 0.390863),(-0.966679, -0.004330, 0.266446),(-0.925381, -0.002500, 0.390863),(-0.968443, -0.002500, 0.266931),(-0.964268, -0.005000, 0.265784),(-0.921393, -0.005000, 0.389178),(-0.923695, -0.004330, 0.390151),(-0.964268, -0.005000, 0.265784),(-0.923695, -0.004330, 0.390151),(-0.966679, -0.004330, 0.266446),(-0.961857, -0.004330, 0.265122),(-0.919090, -0.004330, 0.388205),(-0.921393, -0.005000, 0.389178),(-0.961857, -0.004330, 0.265122),(-0.921393, -0.005000, 0.389178),(-0.964268, -0.005000, 0.265784),(-0.960092, -0.002500, 0.264637),(-0.917404, -0.002500, 0.387492),(-0.919090, -0.004330, 0.388205),(-0.960092, -0.002500, 0.264637),(-0.919090, -0.004330, 0.388205),(-0.961857, -0.004330, 0.265122),(-0.959446, 0.000000, 0.264460),(-0.916787, 0.000000, 0.387232),(-0.917404, -0.002500, 0.387492),(-0.959446, 0.000000, 0.264460),(-0.917404, -0.002500, 0.387492),(-0.960092, -0.002500, 0.264637),(-0.960092, 0.002500, 0.264637),(-0.917404, 0.002500, 0.387492),(-0.916787, 0.000000, 0.387232),(-0.960092, 0.002500, 0.264637),(-0.916787, 0.000000, 0.387232),(-0.959446, 0.000000, 0.264460),(-0.961857, 0.004330, 0.265122),(-0.919090, 0.004330, 0.388205),(-0.917404, 0.002500, 0.387492),(-0.961857, 0.004330, 0.265122),(-0.917404, 0.002500, 0.387492),(-0.960092, 0.002500, 0.264637),(-0.964268, 0.005000, 0.265784),(-0.921393, 0.005000, 0.389178),(-0.919090, 0.004330, 0.388205),(-0.964268, 0.005000, 0.265784),(-0.919090, 0.004330, 0.388205),(-0.961857, 0.004330, 0.265122),(-0.966679, 0.004330, 0.266446),(-0.923695, 0.004330, 0.390151),(-0.921393, 0.005000, 0.389178),(-0.966679, 0.004330, 0.266446),(-0.921393, 0.005000, 0.389178),(-0.964268, 0.005000, 0.265784),(-0.968443, 0.002500, 0.266931),(-0.925381, 0.002500, 0.390863),(-0.923695, 0.004330, 0.390151),(-0.968443, 0.002500, 0.266931),(-0.923695, 0.004330, 0.390151),(-0.966679, 0.004330, 0.266446),(-0.969089, 0.000000, 0.267108),(-0.925998, 0.000000, 0.391124),(-0.925381, 0.002500, 0.390863),(-0.969089, 0.000000, 0.267108),(-0.925381, 0.002500, 0.390863),(-0.968443, 0.002500, 0.266931),(-0.925381, -0.002500, 0.390863),(-0.867172, -0.002500, 0.506836),(-0.867750, 0.000000, 0.507174),(-0.925381, -0.002500, 0.390863),(-0.867750, 0.000000, 0.507174),(-0.925998, 0.000000, 0.391124),(-0.923695, -0.004330, 0.390151),(-0.865593, -0.004330, 0.505911),(-0.867172, -0.002500, 0.506836),(-0.923695, -0.004330, 0.390151),(-0.867172, -0.002500, 0.506836),(-0.925381, -0.002500, 0.390863),(-0.921393, -0.005000, 0.389178),(-0.863435, -0.005000, 0.504648),(-0.865593, -0.004330, 0.505911),(-0.921393, -0.005000, 0.389178),(-0.865593, -0.004330, 0.505911),(-0.923695, -0.004330, 0.390151),(-0.919090, -0.004330, 0.388205),(-0.861278, -0.004330, 0.503385),(-0.863435, -0.005000, 0.504648),(-0.919090, -0.004330, 0.388205),(-0.863435, -0.005000, 0.504648),(-0.921393, -0.005000, 0.389178),(-0.917404, -0.002500, 0.387492),(-0.859698, -0.002500, 0.502460),(-0.861278, -0.004330, 0.503385),(-0.917404, -0.002500, 0.387492),(-0.861278, -0.004330, 0.503385),(-0.919090, -0.004330, 0.388205),(-0.916787, 0.000000, 0.387232),(-0.859120, 0.000000, 0.502122),(-0.859698, -0.002500, 0.502460),(-0.916787, 0.000000, 0.387232),(-0.859698, -0.002500, 0.502460),(-0.917404, -0.002500, 0.387492),(-0.917404, 0.002500, 0.387492),(-0.859698, 0.002500, 0.502460),(-0.859120, 0.000000, 0.502122),(-0.917404, 0.002500, 0.387492),(-0.859120, 0.000000, 0.502122),(-0.916787, 0.000000, 0.387232),(-0.919090, 0.004330, 0.388205),(-0.861278, 0.004330, 0.503385),(-0.859698, 0.002500, 0.502460),(-0.919090, 0.004330, 0.388205),(-0.859698, 0.002500, 0.502460),(-0.917404, 0.002500, 0.387492),(-0.921393, 0.005000, 0.389178),(-0.863435, 0.005000, 0.504648),(-0.861278, 0.004330, 0.503385),(-0.921393, 0.005000, 0.389178),(-0.861278, 0.004330, 0.503385),(-0.919090, 0.004330, 0.388205),(-0.923695, 0.004330, 0.390151),(-0.865593, 0.004330, 0.505911),(-0.863435, 0.005000, 0.504648),(-0.923695, 0.004330, 0.390151),(-0.863435, 0.005000, 0.504648),(-0.921393, 0.005000, 0.389178),(-0.925381, 0.002500, 0.390863),(-0.867172, 0.002500, 0.506836),(-0.865593, 0.004330, 0.505911),(-0.925381, 0.002500, 0.390863),(-0.865593, 0.004330, 0.505911),(-0.923695, 0.004330, 0.390151),(-0.925998, 0.000000, 0.391124),(-0.867750, 0.000000, 0.507174),(-0.867172, 0.002500, 0.506836),(-0.925998, 0.000000, 0.391124),(-0.867172, 0.002500, 0.506836),(-0.925381, 0.002500, 0.390863),(-0.867172, -0.002500, 0.506836),(-0.795015, -0.002500, 0.613650),(-0.795545, 0.000000, 0.614060),(-0.867172, -0.002500, 0.506836),(-0.795545, 0.000000, 0.614060),(-0.867750, 0.000000, 0.507174),(-0.865593, -0.004330, 0.505911),(-0.793567, -0.004330, 0.612531),(-0.795015, -0.002500, 0.613650),(-0.865593, -0.004330, 0.505911),(-0.795015, -0.002500, 0.613650),(-0.867172, -0.002500, 0.506836),(-0.863435, -0.005000, 0.504648),(-0.791589, -0.005000, 0.611002),(-0.793567, -0.004330, 0.612531),(-0.863435, -0.005000, 0.504648),(-0.793567, -0.004330, 0.612531),(-0.865593, -0.004330, 0.505911),(-0.861278, -0.004330, 0.503385),(-0.789611, -0.004330, 0.609473),(-0.791589, -0.005000, 0.611002),(-0.861278, -0.004330, 0.503385),(-0.791589, -0.005000, 0.611002),(-0.863435, -0.005000, 0.504648),(-0.859698, -0.002500, 0.502460),(-0.788163, -0.002500, 0.608354),(-0.789611, -0.004330, 0.609473),(-0.859698, -0.002500, 0.502460),(-0.789611, -0.004330, 0.609473),(-0.861278, -0.004330, 0.503385),(-0.859120, 0.000000, 0.502122),(-0.787633, 0.000000, 0.607945),(-0.788163, -0.002500, 0.608354),(-0.859120, 0.000000, 0.502122),(-0.788163, -0.002500, 0.608354),(-0.859698, -0.002500, 0.502460),(-0.859698, 0.002500, 0.502460),(-0.788163, 0.002500, 0.608354),(-0.787633, 0.000000, 0.607945),(-0.859698, 0.002500, 0.502460),(-0.787633, 0.000000, 0.607945),(-0.859120, 0.000000, 0.502122),(-0.861278, 0.004330, 0.503385),(-0.789611, 0.004330, 0.609473),(-0.788163, 0.002500, 0.608354),(-0.861278, 0.004330, 0.503385),(-0.788163, 0.002500, 0.608354),(-0.859698, 0.002500, 0.502460),(-0.863435, 0.005000, 0.504648),(-0.791589, 0.005000, 0.611002),(-0.789611, 0.004330, 0.609473),(-0.863435, 0.005000, 0.504648),(-0.789611, 0.004330, 0.609473),(-0.861278, 0.004330, 0.503385),(-0.865593, 0.004330, 0.505911),(-0.793567, 0.004330, 0.612531),(-0.791589, 0.005000, 0.611002),(-0.865593, 0.004330, 0.505911),(-0.791589, 0.005000, 0.611002),(-0.863435, 0.005000, 0.504648),(-0.867172, 0.002500, 0.506836),(-0.795015, 0.002500, 0.613650),(-0.793567, 0.004330, 0.612531),(-0.867172, 0.002500, 0.506836),(-0.793567, 0.004330, 0.612531),(-0.865593, 0.004330, 0.505911),(-0.867750, 0.000000, 0.507174),(-0.795545, 0.000000, 0.614060),(-0.795015, 0.002500, 0.613650),(-0.867750, 0.000000, 0.507174),(-0.795015, 0.002500, 0.613650),(-0.867172, 0.002500, 0.506836),(-0.795015, -0.002500, 0.613650),(-0.710109, -0.002500, 0.710109),(-0.710582, 0.000000, 0.710582),(-0.795015, -0.002500, 0.613650),(-0.710582, 0.000000, 0.710582),(-0.795545, 0.000000, 0.614060),(-0.793567, -0.004330, 0.612531),(-0.708815, -0.004330, 0.708815),(-0.710109, -0.002500, 0.710109),(-0.793567, -0.004330, 0.612531),(-0.710109, -0.002500, 0.710109),(-0.795015, -0.002500, 0.613650),(-0.791589, -0.005000, 0.611002),(-0.707047, -0.005000, 0.707047),(-0.708815, -0.004330, 0.708815),(-0.791589, -0.005000, 0.611002),(-0.708815, -0.004330, 0.708815),(-0.793567, -0.004330, 0.612531),(-0.789611, -0.004330, 0.609473),(-0.705279, -0.004330, 0.705279),(-0.707047, -0.005000, 0.707047),(-0.789611, -0.004330, 0.609473),(-0.707047, -0.005000, 0.707047),(-0.791589, -0.005000, 0.611002),(-0.788163, -0.002500, 0.608354),(-0.703985, -0.002500, 0.703985),(-0.705279, -0.004330, 0.705279),(-0.788163, -0.002500, 0.608354),(-0.705279, -0.004330, 0.705279),(-0.789611, -0.004330, 0.609473),(-0.787633, 0.000000, 0.607945),(-0.703511, 0.000000, 0.703511),(-0.703985, -0.002500, 0.703985),(-0.787633, 0.000000, 0.607945),(-0.703985, -0.002500, 0.703985),(-0.788163, -0.002500, 0.608354),(-0.788163, 0.002500, 0.608354),(-0.703985, 0.002500, 0.703985),(-0.703511, 0.000000, 0.703511),(-0.788163, 0.002500, 0.608354),(-0.703511, 0.000000, 0.703511),(-0.787633, 0.000000, 0.607945),(-0.789611, 0.004330, 0.609473),(-0.705279, 0.004330, 0.705279),(-0.703985, 0.002500, 0.703985),(-0.789611, 0.004330, 0.609473),(-0.703985, 0.002500, 0.703985),(-0.788163, 0.002500, 0.608354),(-0.791589, 0.005000, 0.611002),(-0.707047, 0.005000, 0.707047),(-0.705279, 0.004330, 0.705279),(-0.791589, 0.005000, 0.611002),(-0.705279, 0.004330, 0.705279),(-0.789611, 0.004330, 0.609473),(-0.793567, 0.004330, 0.612531),(-0.708815, 0.004330, 0.708815),(-0.707047, 0.005000, 0.707047),(-0.793567, 0.004330, 0.612531),(-0.707047, 0.005000, 0.707047),(-0.791589, 0.005000, 0.611002),(-0.795015, 0.002500, 0.613650),(-0.710109, 0.002500, 0.710109),(-0.708815, 0.004330, 0.708815),(-0.795015, 0.002500, 0.613650),(-0.708815, 0.004330, 0.708815),(-0.793567, 0.004330, 0.612531),(-0.795545, 0.000000, 0.614060),(-0.710582, 0.000000, 0.710582),(-0.710109, 0.002500, 0.710109),(-0.795545, 0.000000, 0.614060),(-0.710109, 0.002500, 0.710109),(-0.795015, 0.002500, 0.613650),(-0.710109, -0.002500, 0.710109),(-0.613650, -0.002500, 0.795015),(-0.614060, 0.000000, 0.795545),(-0.710109, -0.002500, 0.710109),(-0.614060, 0.000000, 0.795545),(-0.710582, 0.000000, 0.710582),(-0.708815, -0.004330, 0.708815),(-0.612531, -0.004330, 0.793567),(-0.613650, -0.002500, 0.795015),(-0.708815, -0.004330, 0.708815),(-0.613650, -0.002500, 0.795015),(-0.710109, -0.002500, 0.710109),(-0.707047, -0.005000, 0.707047),(-0.611002, -0.005000, 0.791589),(-0.612531, -0.004330, 0.793567),(-0.707047, -0.005000, 0.707047),(-0.612531, -0.004330, 0.793567),(-0.708815, -0.004330, 0.708815),(-0.705279, -0.004330, 0.705279),(-0.609474, -0.004330, 0.789611),(-0.611002, -0.005000, 0.791589),(-0.705279, -0.004330, 0.705279),(-0.611002, -0.005000, 0.791589),(-0.707047, -0.005000, 0.707047),(-0.703985, -0.002500, 0.703985),(-0.608354, -0.002500, 0.788163),(-0.609474, -0.004330, 0.789611),(-0.703985, -0.002500, 0.703985),(-0.609474, -0.004330, 0.789611),(-0.705279, -0.004330, 0.705279),(-0.703511, 0.000000, 0.703511),(-0.607945, 0.000000, 0.787633),(-0.608354, -0.002500, 0.788163),(-0.703511, 0.000000, 0.703511),(-0.608354, -0.002500, 0.788163),(-0.703985, -0.002500, 0.703985),(-0.703985, 0.002500, 0.703985),(-0.608354, 0.002500, 0.788163),(-0.607945, 0.000000, 0.787633),(-0.703985, 0.002500, 0.703985),(-0.607945, 0.000000, 0.787633),(-0.703511, 0.000000, 0.703511),(-0.705279, 0.004330, 0.705279),(-0.609474, 0.004330, 0.789611),(-0.608354, 0.002500, 0.788163),(-0.705279, 0.004330, 0.705279),(-0.608354, 0.002500, 0.788163),(-0.703985, 0.002500, 0.703985),(-0.707047, 0.005000, 0.707047),(-0.611002, 0.005000, 0.791589),(-0.609474, 0.004330, 0.789611),(-0.707047, 0.005000, 0.707047),(-0.609474, 0.004330, 0.789611),(-0.705279, 0.004330, 0.705279),(-0.708815, 0.004330, 0.708815),(-0.612531, 0.004330, 0.793567),(-0.611002, 0.005000, 0.791589),(-0.708815, 0.004330, 0.708815),(-0.611002, 0.005000, 0.791589),(-0.707047, 0.005000, 0.707047),(-0.710109, 0.002500, 0.710109),(-0.613650, 0.002500, 0.795015),(-0.612531, 0.004330, 0.793567),(-0.710109, 0.002500, 0.710109),(-0.612531, 0.004330, 0.793567),(-0.708815, 0.004330, 0.708815),(-0.710582, 0.000000, 0.710582),(-0.614060, 0.000000, 0.795545),(-0.613650, 0.002500, 0.795015),(-0.710582, 0.000000, 0.710582),(-0.613650, 0.002500, 0.795015),(-0.710109, 0.002500, 0.710109),(-0.613650, -0.002500, 0.795015),(-0.506836, -0.002500, 0.867172),(-0.507174, 0.000000, 0.867750),(-0.613650, -0.002500, 0.795015),(-0.507174, 0.000000, 0.867750),(-0.614060, 0.000000, 0.795545),(-0.612531, -0.004330, 0.793567),(-0.505911, -0.004330, 0.865593),(-0.506836, -0.002500, 0.867172),(-0.612531, -0.004330, 0.793567),(-0.506836, -0.002500, 0.867172),(-0.613650, -0.002500, 0.795015),(-0.611002, -0.005000, 0.791589),(-0.504648, -0.005000, 0.863435),(-0.505911, -0.004330, 0.865593),(-0.611002, -0.005000, 0.791589),(-0.505911, -0.004330, 0.865593),(-0.612531, -0.004330, 0.793567),(-0.609474, -0.004330, 0.789611),(-0.503385, -0.004330, 0.861278),(-0.504648, -0.005000, 0.863435),(-0.609474, -0.004330, 0.789611),(-0.504648, -0.005000, 0.863435),(-0.611002, -0.005000, 0.791589),(-0.608354, -0.002500, 0.788163),(-0.502460, -0.002500, 0.859698),(-0.503385, -0.004330, 0.861278),(-0.608354, -0.002500, 0.788163),(-0.503385, -0.004330, 0.861278),(-0.609474, -0.004330, 0.789611),(-0.607945, 0.000000, 0.787633),(-0.502122, 0.000000, 0.859120),(-0.502460, -0.002500, 0.859698),(-0.607945, 0.000000, 0.787633),(-0.502460, -0.002500, 0.859698),(-0.608354, -0.002500, 0.788163),(-0.608354, 0.002500, 0.788163),(-0.502460, 0.002500, 0.859698),(-0.502122, 0.000000, 0.859120),(-0.608354, 0.002500, 0.788163),(-0.502122, 0.000000, 0.859120),(-0.607945, 0.000000, 0.787633),(-0.609474, 0.004330, 0.789611),(-0.503385, 0.004330, 0.861278),(-0.502460, 0.002500, 0.859698),(-0.609474, 0.004330, 0.789611),(-0.502460, 0.002500, 0.859698),(-0.608354, 0.002500, 0.788163),(-0.611002, 0.005000, 0.791589),(-0.504648, 0.005000, 0.863435),(-0.503385, 0.004330, 0.861278),(-0.611002, 0.005000, 0.791589),(-0.503385, 0.004330, 0.861278),(-0.609474, 0.004330, 0.789611),(-0.612531, 0.004330, 0.793567),(-0.505911, 0.004330, 0.865593),(-0.504648, 0.005000, 0.863435),(-0.612531, 0.004330, 0.793567),(-0.504648, 0.005000, 0.863435),(-0.611002, 0.005000, 0.791589),(-0.613650, 0.002500, 0.795015),(-0.506836, 0.002500, 0.867172),(-0.505911, 0.004330, 0.865593),(-0.613650, 0.002500, 0.795015),(-0.505911, 0.004330, 0.865593),(-0.612531, 0.004330, 0.793567),(-0.614060, 0.000000, 0.795545),(-0.507174, 0.000000, 0.867750),(-0.506836, 0.002500, 0.867172),(-0.614060, 0.000000, 0.795545),(-0.506836, 0.002500, 0.867172),(-0.613650, 0.002500, 0.795015),(-0.506836, -0.002500, 0.867172),(-0.390863, -0.002500, 0.925381),(-0.391124, 0.000000, 0.925998),(-0.506836, -0.002500, 0.867172),(-0.391124, 0.000000, 0.925998),(-0.507174, 0.000000, 0.867750),(-0.505911, -0.004330, 0.865593),(-0.390151, -0.004330, 0.923695),(-0.390863, -0.002500, 0.925381),(-0.505911, -0.004330, 0.865593),(-0.390863, -0.002500, 0.925381),(-0.506836, -0.002500, 0.867172),(-0.504648, -0.005000, 0.863435),(-0.389178, -0.005000, 0.921392),(-0.390151, -0.004330, 0.923695),(-0.504648, -0.005000, 0.863435),(-0.390151, -0.004330, 0.923695),(-0.505911, -0.004330, 0.865593),(-0.503385, -0.004330, 0.861278),(-0.388205, -0.004330, 0.919090),(-0.389178, -0.005000, 0.921392),(-0.503385, -0.004330, 0.861278),(-0.389178, -0.005000, 0.921392),(-0.504648, -0.005000, 0.863435),(-0.502460, -0.002500, 0.859698),(-0.387492, -0.002500, 0.917404),(-0.388205, -0.004330, 0.919090),(-0.502460, -0.002500, 0.859698),(-0.388205, -0.004330, 0.919090),(-0.503385, -0.004330, 0.861278),(-0.502122, 0.000000, 0.859120),(-0.387232, 0.000000, 0.916787),(-0.387492, -0.002500, 0.917404),(-0.502122, 0.000000, 0.859120),(-0.387492, -0.002500, 0.917404),(-0.502460, -0.002500, 0.859698),(-0.502460, 0.002500, 0.859698),(-0.387492, 0.002500, 0.917404),(-0.387232, 0.000000, 0.916787),(-0.502460, 0.002500, 0.859698),(-0.387232, 0.000000, 0.916787),(-0.502122, 0.000000, 0.859120),(-0.503385, 0.004330, 0.861278),(-0.388205, 0.004330, 0.919090),(-0.387492, 0.002500, 0.917404),(-0.503385, 0.004330, 0.861278),(-0.387492, 0.002500, 0.917404),(-0.502460, 0.002500, 0.859698),(-0.504648, 0.005000, 0.863435),(-0.389178, 0.005000, 0.921392),(-0.388205, 0.004330, 0.919090),(-0.504648, 0.005000, 0.863435),(-0.388205, 0.004330, 0.919090),(-0.503385, 0.004330, 0.861278),(-0.505911, 0.004330, 0.865593),(-0.390151, 0.004330, 0.923695),(-0.389178, 0.005000, 0.921392),(-0.505911, 0.004330, 0.865593),(-0.389178, 0.005000, 0.921392),(-0.504648, 0.005000, 0.863435),(-0.506836, 0.002500, 0.867172),(-0.390863, 0.002500, 0.925381),(-0.390151, 0.004330, 0.923695),(-0.506836, 0.002500, 0.867172),(-0.390151, 0.004330, 0.923695),(-0.505911, 0.004330, 0.865593),(-0.507174, 0.000000, 0.867750),(-0.391124, 0.000000, 0.925998),(-0.390863, 0.002500, 0.925381),(-0.507174, 0.000000, 0.867750),(-0.390863, 0.002500, 0.925381),(-0.506836, 0.002500, 0.867172),(-0.390863, -0.002500, 0.925381),(-0.266931, -0.002500, 0.968443),(-0.267108, 0.000000, 0.969089),(-0.390863, -0.002500, 0.925381),(-0.267108, 0.000000, 0.969089),(-0.391124, 0.000000, 0.925998),(-0.390151, -0.004330, 0.923695),(-0.266446, -0.004330, 0.966679),(-0.266931, -0.002500, 0.968443),(-0.390151, -0.004330, 0.923695),(-0.266931, -0.002500, 0.968443),(-0.390863, -0.002500, 0.925381),(-0.389178, -0.005000, 0.921392),(-0.265784, -0.005000, 0.964268),(-0.266446, -0.004330, 0.966679),(-0.389178, -0.005000, 0.921392),(-0.266446, -0.004330, 0.966679),(-0.390151, -0.004330, 0.923695),(-0.388205, -0.004330, 0.919090),(-0.265122, -0.004330, 0.961857),(-0.265784, -0.005000, 0.964268),(-0.388205, -0.004330, 0.919090),(-0.265784, -0.005000, 0.964268),(-0.389178, -0.005000, 0.921392),(-0.387492, -0.002500, 0.917404),(-0.264637, -0.002500, 0.960092),(-0.265122, -0.004330, 0.961857),(-0.387492, -0.002500, 0.917404),(-0.265122, -0.004330, 0.961857),(-0.388205, -0.004330, 0.919090),(-0.387232, 0.000000, 0.916787),(-0.264460, 0.000000, 0.959446),(-0.264637, -0.002500, 0.960092),(-0.387232, 0.000000, 0.916787),(-0.264637, -0.002500, 0.960092),(-0.387492, -0.002500, 0.917404),(-0.387492, 0.002500, 0.917404),(-0.264637, 0.002500, 0.960092),(-0.264460, 0.000000, 0.959446),(-0.387492, 0.002500, 0.917404),(-0.264460, 0.000000, 0.959446),(-0.387232, 0.000000, 0.916787),(-0.388205, 0.004330, 0.919090),(-0.265122, 0.004330, 0.961857),(-0.264637, 0.002500, 0.960092),(-0.388205, 0.004330, 0.919090),(-0.264637, 0.002500, 0.960092),(-0.387492, 0.002500, 0.917404),(-0.389178, 0.005000, 0.921392),(-0.265784, 0.005000, 0.964268),(-0.265122, 0.004330, 0.961857),(-0.389178, 0.005000, 0.921392),(-0.265122, 0.004330, 0.961857),(-0.388205, 0.004330, 0.919090),(-0.390151, 0.004330, 0.923695),(-0.266446, 0.004330, 0.966679),(-0.265784, 0.005000, 0.964268),(-0.390151, 0.004330, 0.923695),(-0.265784, 0.005000, 0.964268),(-0.389178, 0.005000, 0.921392),(-0.390863, 0.002500, 0.925381),(-0.266931, 0.002500, 0.968443),(-0.266446, 0.004330, 0.966679),(-0.390863, 0.002500, 0.925381),(-0.266446, 0.004330, 0.966679),(-0.390151, 0.004330, 0.923695),(-0.391124, 0.000000, 0.925998),(-0.267108, 0.000000, 0.969089),(-0.266931, 0.002500, 0.968443),(-0.391124, 0.000000, 0.925998),(-0.266931, 0.002500, 0.968443),(-0.390863, 0.002500, 0.925381),(-0.266931, -0.002500, 0.968443),(-0.136241, -0.002500, 0.995159),(-0.136331, 0.000000, 0.995823),(-0.266931, -0.002500, 0.968443),(-0.136331, 0.000000, 0.995823),(-0.267108, 0.000000, 0.969089),(-0.266446, -0.004330, 0.966679),(-0.135996, -0.004330, 0.993345),(-0.136241, -0.002500, 0.995159),(-0.266446, -0.004330, 0.966679),(-0.136241, -0.002500, 0.995159),(-0.266931, -0.002500, 0.968443),(-0.265784, -0.005000, 0.964268),(-0.135661, -0.005000, 0.990868),(-0.135996, -0.004330, 0.993345),(-0.265784, -0.005000, 0.964268),(-0.135996, -0.004330, 0.993345),(-0.266446, -0.004330, 0.966679),(-0.265122, -0.004330, 0.961857),(-0.135325, -0.004330, 0.988391),(-0.135661, -0.005000, 0.990868),(-0.265122, -0.004330, 0.961857),(-0.135661, -0.005000, 0.990868),(-0.265784, -0.005000, 0.964268),(-0.264637, -0.002500, 0.960092),(-0.135080, -0.002500, 0.986577),(-0.135325, -0.004330, 0.988391),(-0.264637, -0.002500, 0.960092),(-0.135325, -0.004330, 0.988391),(-0.265122, -0.004330, 0.961857),(-0.264460, 0.000000, 0.959446),(-0.134990, 0.000000, 0.985913),(-0.135080, -0.002500, 0.986577),(-0.264460, 0.000000, 0.959446),(-0.135080, -0.002500, 0.986577),(-0.264637, -0.002500, 0.960092),(-0.264637, 0.002500, 0.960092),(-0.135080, 0.002500, 0.986577),(-0.134990, 0.000000, 0.985913),(-0.264637, 0.002500, 0.960092),(-0.134990, 0.000000, 0.985913),(-0.264460, 0.000000, 0.959446),(-0.265122, 0.004330, 0.961857),(-0.135325, 0.004330, 0.988391),(-0.135080, 0.002500, 0.986577),(-0.265122, 0.004330, 0.961857),(-0.135080, 0.002500, 0.986577),(-0.264637, 0.002500, 0.960092),(-0.265784, 0.005000, 0.964268),(-0.135661, 0.005000, 0.990868),(-0.135325, 0.004330, 0.988391),(-0.265784, 0.005000, 0.964268),(-0.135325, 0.004330, 0.988391),(-0.265122, 0.004330, 0.961857),(-0.266446, 0.004330, 0.966679),(-0.135996, 0.004330, 0.993345),(-0.135661, 0.005000, 0.990868),(-0.266446, 0.004330, 0.966679),(-0.135661, 0.005000, 0.990868),(-0.265784, 0.005000, 0.964268),(-0.266931, 0.002500, 0.968443),(-0.136241, 0.002500, 0.995159),(-0.135996, 0.004330, 0.993345),(-0.266931, 0.002500, 0.968443),(-0.135996, 0.004330, 0.993345),(-0.266446, 0.004330, 0.966679),(-0.267108, 0.000000, 0.969089),(-0.136331, 0.000000, 0.995823),(-0.136241, 0.002500, 0.995159),(-0.267108, 0.000000, 0.969089),(-0.136241, 0.002500, 0.995159),(-0.266931, 0.002500, 0.968443),(-0.136241, -0.002500, 0.995159),(-0.000000, -0.002500, 1.004330),(-0.000000, 0.000000, 1.005000),(-0.136241, -0.002500, 0.995159),(-0.000000, 0.000000, 1.005000),(-0.136331, 0.000000, 0.995823),(-0.135996, -0.004330, 0.993345),(-0.000000, -0.004330, 1.002500),(-0.000000, -0.002500, 1.004330),(-0.135996, -0.004330, 0.993345),(-0.000000, -0.002500, 1.004330),(-0.136241, -0.002500, 0.995159),(-0.135661, -0.005000, 0.990868),(0.000000, -0.005000, 1.000000),(-0.000000, -0.004330, 1.002500),(-0.135661, -0.005000, 0.990868),(-0.000000, -0.004330, 1.002500),(-0.135996, -0.004330, 0.993345),(-0.135325, -0.004330, 0.988391),(0.000000, -0.004330, 0.997500),(0.000000, -0.005000, 1.000000),(-0.135325, -0.004330, 0.988391),(0.000000, -0.005000, 1.000000),(-0.135661, -0.005000, 0.990868),(-0.135080, -0.002500, 0.986577),(0.000000, -0.002500, 0.995670),(0.000000, -0.004330, 0.997500),(-0.135080, -0.002500, 0.986577),(0.000000, -0.004330, 0.997500),(-0.135325, -0.004330, 0.988391),(-0.134990, 0.000000, 0.985913),(0.000000, 0.000000, 0.995000),(0.000000, -0.002500, 0.995670),(-0.134990, 0.000000, 0.985913),(0.000000, -0.002500, 0.995670),(-0.135080, -0.002500, 0.986577),(-0.135080, 0.002500, 0.986577),(0.000000, 0.002500, 0.995670),(0.000000, 0.000000, 0.995000),(-0.135080, 0.002500, 0.986577),(0.000000, 0.000000, 0.995000),(-0.134990, 0.000000, 0.985913),(-0.135325, 0.004330, 0.988391),(0.000000, 0.004330, 0.997500),(0.000000, 0.002500, 0.995670),(-0.135325, 0.004330, 0.988391),(0.000000, 0.002500, 0.995670),(-0.135080, 0.002500, 0.986577),(-0.135661, 0.005000, 0.990868),(0.000000, 0.005000, 1.000000),(0.000000, 0.004330, 0.997500),(-0.135661, 0.005000, 0.990868),(0.000000, 0.004330, 0.997500),(-0.135325, 0.004330, 0.988391),(-0.135996, 0.004330, 0.993345),(-0.000000, 0.004330, 1.002500),(0.000000, 0.005000, 1.000000),(-0.135996, 0.004330, 0.993345),(0.000000, 0.005000, 1.000000),(-0.135661, 0.005000, 0.990868),(-0.136241, 0.002500, 0.995159),(-0.000000, 0.002500, 1.004330),(-0.000000, 0.004330, 1.002500),(-0.136241, 0.002500, 0.995159),(-0.000000, 0.004330, 1.002500),(-0.135996, 0.004330, 0.993345),(-0.136331, 0.000000, 0.995823),(-0.000000, 0.000000, 1.005000),(-0.000000, 0.002500, 1.004330),(-0.136331, 0.000000, 0.995823),(-0.000000, 0.002500, 1.004330),(-0.136241, 0.002500, 0.995159),(-0.000000, -0.002500, 1.004330),(0.136241, -0.002500, 0.995159),(0.136331, 0.000000, 0.995823),(-0.000000, -0.002500, 1.004330),(0.136331, 0.000000, 0.995823),(-0.000000, 0.000000, 1.005000),(-0.000000, -0.004330, 1.002500),(0.135996, -0.004330, 0.993346),(0.136241, -0.002500, 0.995159),(-0.000000, -0.004330, 1.002500),(0.136241, -0.002500, 0.995159),(-0.000000, -0.002500, 1.004330),(0.000000, -0.005000, 1.000000),(0.135661, -0.005000, 0.990868),(0.135996, -0.004330, 0.993346),(0.000000, -0.005000, 1.000000),(0.135996, -0.004330, 0.993346),(-0.000000, -0.004330, 1.002500),(0.000000, -0.004330, 0.997500),(0.135325, -0.004330, 0.988391),(0.135661, -0.005000, 0.990868),(0.000000, -0.004330, 0.997500),(0.135661, -0.005000, 0.990868),(0.000000, -0.005000, 1.000000),(0.000000, -0.002500, 0.995670),(0.135080, -0.002500, 0.986577),(0.135325, -0.004330, 0.988391),(0.000000, -0.002500, 0.995670),(0.135325, -0.004330, 0.988391),(0.000000, -0.004330, 0.997500),(0.000000, 0.000000, 0.995000),(0.134990, 0.000000, 0.985913),(0.135080, -0.002500, 0.986577),(0.000000, 0.000000, 0.995000),(0.135080, -0.002500, 0.986577),(0.000000, -0.002500, 0.995670),(0.000000, 0.002500, 0.995670),(0.135080, 0.002500, 0.986577),(0.134990, 0.000000, 0.985913),(0.000000, 0.002500, 0.995670),(0.134990, 0.000000, 0.985913),(0.000000, 0.000000, 0.995000),(0.000000, 0.004330, 0.997500),(0.135325, 0.004330, 0.988391),(0.135080, 0.002500, 0.986577),(0.000000, 0.004330, 0.997500),(0.135080, 0.002500, 0.986577),(0.000000, 0.002500, 0.995670),(0.000000, 0.005000, 1.000000),(0.135661, 0.005000, 0.990868),(0.135325, 0.004330, 0.988391),(0.000000, 0.005000, 1.000000),(0.135325, 0.004330, 0.988391),(0.000000, 0.004330, 0.997500),(-0.000000, 0.004330, 1.002500),(0.135996, 0.004330, 0.993346),(0.135661, 0.005000, 0.990868),(-0.000000, 0.004330, 1.002500),(0.135661, 0.005000, 0.990868),(0.000000, 0.005000, 1.000000),(-0.000000, 0.002500, 1.004330),(0.136241, 0.002500, 0.995159),(0.135996, 0.004330, 0.993346),(-0.000000, 0.002500, 1.004330),(0.135996, 0.004330, 0.993346),(-0.000000, 0.004330, 1.002500),(-0.000000, 0.000000, 1.005000),(0.136331, 0.000000, 0.995823),(0.136241, 0.002500, 0.995159),(-0.000000, 0.000000, 1.005000),(0.136241, 0.002500, 0.995159),(-0.000000, 0.002500, 1.004330),(0.136241, -0.002500, 0.995159),(0.266931, -0.002500, 0.968443),(0.267108, 0.000000, 0.969089),(0.136241, -0.002500, 0.995159),(0.267108, 0.000000, 0.969089),(0.136331, 0.000000, 0.995823),(0.135996, -0.004330, 0.993346),(0.266446, -0.004330, 0.966679),(0.266931, -0.002500, 0.968443),(0.135996, -0.004330, 0.993346),(0.266931, -0.002500, 0.968443),(0.136241, -0.002500, 0.995159),(0.135661, -0.005000, 0.990868),(0.265784, -0.005000, 0.964268),(0.266446, -0.004330, 0.966679),(0.135661, -0.005000, 0.990868),(0.266446, -0.004330, 0.966679),(0.135996, -0.004330, 0.993346),(0.135325, -0.004330, 0.988391),(0.265122, -0.004330, 0.961857),(0.265784, -0.005000, 0.964268),(0.135325, -0.004330, 0.988391),(0.265784, -0.005000, 0.964268),(0.135661, -0.005000, 0.990868),(0.135080, -0.002500, 0.986577),(0.264637, -0.002500, 0.960092),(0.265122, -0.004330, 0.961857),(0.135080, -0.002500, 0.986577),(0.265122, -0.004330, 0.961857),(0.135325, -0.004330, 0.988391),(0.134990, 0.000000, 0.985913),(0.264460, 0.000000, 0.959446),(0.264637, -0.002500, 0.960092),(0.134990, 0.000000, 0.985913),(0.264637, -0.002500, 0.960092),(0.135080, -0.002500, 0.986577),(0.135080, 0.002500, 0.986577),(0.264637, 0.002500, 0.960092),(0.264460, 0.000000, 0.959446),(0.135080, 0.002500, 0.986577),(0.264460, 0.000000, 0.959446),(0.134990, 0.000000, 0.985913),(0.135325, 0.004330, 0.988391),(0.265122, 0.004330, 0.961857),(0.264637, 0.002500, 0.960092),(0.135325, 0.004330, 0.988391),(0.264637, 0.002500, 0.960092),(0.135080, 0.002500, 0.986577),(0.135661, 0.005000, 0.990868),(0.265784, 0.005000, 0.964268),(0.265122, 0.004330, 0.961857),(0.135661, 0.005000, 0.990868),(0.265122, 0.004330, 0.961857),(0.135325, 0.004330, 0.988391),(0.135996, 0.004330, 0.993346),(0.266446, 0.004330, 0.966679),(0.265784, 0.005000, 0.964268),(0.135996, 0.004330, 0.993346),(0.265784, 0.005000, 0.964268),(0.135661, 0.005000, 0.990868),(0.136241, 0.002500, 0.995159),(0.266931, 0.002500, 0.968443),(0.266446, 0.004330, 0.966679),(0.136241, 0.002500, 0.995159),(0.266446, 0.004330, 0.966679),(0.135996, 0.004330, 0.993346),(0.136331, 0.000000, 0.995823),(0.267108, 0.000000, 0.969089),(0.266931, 0.002500, 0.968443),(0.136331, 0.000000, 0.995823),(0.266931, 0.002500, 0.968443),(0.136241, 0.002500, 0.995159),(0.266931, -0.002500, 0.968443),(0.390863, -0.002500, 0.925381),(0.391124, 0.000000, 0.925998),(0.266931, -0.002500, 0.968443),(0.391124, 0.000000, 0.925998),(0.267108, 0.000000, 0.969089),(0.266446, -0.004330, 0.966679),(0.390151, -0.004330, 0.923695),(0.390863, -0.002500, 0.925381),(0.266446, -0.004330, 0.966679),(0.390863, -0.002500, 0.925381),(0.266931, -0.002500, 0.968443),(0.265784, -0.005000, 0.964268),(0.389178, -0.005000, 0.921393),(0.390151, -0.004330, 0.923695),(0.265784, -0.005000, 0.964268),(0.390151, -0.004330, 0.923695),(0.266446, -0.004330, 0.966679),(0.265122, -0.004330, 0.961857),(0.388205, -0.004330, 0.919090),(0.389178, -0.005000, 0.921393),(0.265122, -0.004330, 0.961857),(0.389178, -0.005000, 0.921393),(0.265784, -0.005000, 0.964268),(0.264637, -0.002500, 0.960092),(0.387492, -0.002500, 0.917404),(0.388205, -0.004330, 0.919090),(0.264637, -0.002500, 0.960092),(0.388205, -0.004330, 0.919090),(0.265122, -0.004330, 0.961857),(0.264460, 0.000000, 0.959446),(0.387232, 0.000000, 0.916787),(0.387492, -0.002500, 0.917404),(0.264460, 0.000000, 0.959446),(0.387492, -0.002500, 0.917404),(0.264637, -0.002500, 0.960092),(0.264637, 0.002500, 0.960092),(0.387492, 0.002500, 0.917404),(0.387232, 0.000000, 0.916787),(0.264637, 0.002500, 0.960092),(0.387232, 0.000000, 0.916787),(0.264460, 0.000000, 0.959446),(0.265122, 0.004330, 0.961857),(0.388205, 0.004330, 0.919090),(0.387492, 0.002500, 0.917404),(0.265122, 0.004330, 0.961857),(0.387492, 0.002500, 0.917404),(0.264637, 0.002500, 0.960092),(0.265784, 0.005000, 0.964268),(0.389178, 0.005000, 0.921393),(0.388205, 0.004330, 0.919090),(0.265784, 0.005000, 0.964268),(0.388205, 0.004330, 0.919090),(0.265122, 0.004330, 0.961857),(0.266446, 0.004330, 0.966679),(0.390151, 0.004330, 0.923695),(0.389178, 0.005000, 0.921393),(0.266446, 0.004330, 0.966679),(0.389178, 0.005000, 0.921393),(0.265784, 0.005000, 0.964268),(0.266931, 0.002500, 0.968443),(0.390863, 0.002500, 0.925381),(0.390151, 0.004330, 0.923695),(0.266931, 0.002500, 0.968443),(0.390151, 0.004330, 0.923695),(0.266446, 0.004330, 0.966679),(0.267108, 0.000000, 0.969089),(0.391124, 0.000000, 0.925998),(0.390863, 0.002500, 0.925381),(0.267108, 0.000000, 0.969089),(0.390863, 0.002500, 0.925381),(0.266931, 0.002500, 0.968443),(0.390863, -0.002500, 0.925381),(0.506836, -0.002500, 0.867172),(0.507174, 0.000000, 0.867750),(0.390863, -0.002500, 0.925381),(0.507174, 0.000000, 0.867750),(0.391124, 0.000000, 0.925998),(0.390151, -0.004330, 0.923695),(0.505911, -0.004330, 0.865593),(0.506836, -0.002500, 0.867172),(0.390151, -0.004330, 0.923695),(0.506836, -0.002500, 0.867172),(0.390863, -0.002500, 0.925381),(0.389178, -0.005000, 0.921393),(0.504648, -0.005000, 0.863435),(0.505911, -0.004330, 0.865593),(0.389178, -0.005000, 0.921393),(0.505911, -0.004330, 0.865593),(0.390151, -0.004330, 0.923695),(0.388205, -0.004330, 0.919090),(0.503385, -0.004330, 0.861278),(0.504648, -0.005000, 0.863435),(0.388205, -0.004330, 0.919090),(0.504648, -0.005000, 0.863435),(0.389178, -0.005000, 0.921393),(0.387492, -0.002500, 0.917404),(0.502460, -0.002500, 0.859698),(0.503385, -0.004330, 0.861278),(0.387492, -0.002500, 0.917404),(0.503385, -0.004330, 0.861278),(0.388205, -0.004330, 0.919090),(0.387232, 0.000000, 0.916787),(0.502122, 0.000000, 0.859120),(0.502460, -0.002500, 0.859698),(0.387232, 0.000000, 0.916787),(0.502460, -0.002500, 0.859698),(0.387492, -0.002500, 0.917404),(0.387492, 0.002500, 0.917404),(0.502460, 0.002500, 0.859698),(0.502122, 0.000000, 0.859120),(0.387492, 0.002500, 0.917404),(0.502122, 0.000000, 0.859120),(0.387232, 0.000000, 0.916787),(0.388205, 0.004330, 0.919090),(0.503385, 0.004330, 0.861278),(0.502460, 0.002500, 0.859698),(0.388205, 0.004330, 0.919090),(0.502460, 0.002500, 0.859698),(0.387492, 0.002500, 0.917404),(0.389178, 0.005000, 0.921393),(0.504648, 0.005000, 0.863435),(0.503385, 0.004330, 0.861278),(0.389178, 0.005000, 0.921393),(0.503385, 0.004330, 0.861278),(0.388205, 0.004330, 0.919090),(0.390151, 0.004330, 0.923695),(0.505911, 0.004330, 0.865593),(0.504648, 0.005000, 0.863435),(0.390151, 0.004330, 0.923695),(0.504648, 0.005000, 0.863435),(0.389178, 0.005000, 0.921393),(0.390863, 0.002500, 0.925381),(0.506836, 0.002500, 0.867172),(0.505911, 0.004330, 0.865593),(0.390863, 0.002500, 0.925381),(0.505911, 0.004330, 0.865593),(0.390151, 0.004330, 0.923695),(0.391124, 0.000000, 0.925998),(0.507174, 0.000000, 0.867750),(0.506836, 0.002500, 0.867172),(0.391124, 0.000000, 0.925998),(0.506836, 0.002500, 0.867172),(0.390863, 0.002500, 0.925381),(0.506836, -0.002500, 0.867172),(0.613650, -0.002500, 0.795015),(0.614060, 0.000000, 0.795545),(0.506836, -0.002500, 0.867172),(0.614060, 0.000000, 0.795545),(0.507174, 0.000000, 0.867750),(0.505911, -0.004330, 0.865593),(0.612531, -0.004330, 0.793567),(0.613650, -0.002500, 0.795015),(0.505911, -0.004330, 0.865593),(0.613650, -0.002500, 0.795015),(0.506836, -0.002500, 0.867172),(0.504648, -0.005000, 0.863435),(0.611002, -0.005000, 0.791589),(0.612531, -0.004330, 0.793567),(0.504648, -0.005000, 0.863435),(0.612531, -0.004330, 0.793567),(0.505911, -0.004330, 0.865593),(0.503385, -0.004330, 0.861278),(0.609473, -0.004330, 0.789611),(0.611002, -0.005000, 0.791589),(0.503385, -0.004330, 0.861278),(0.611002, -0.005000, 0.791589),(0.504648, -0.005000, 0.863435),(0.502460, -0.002500, 0.859698),(0.608354, -0.002500, 0.788163),(0.609473, -0.004330, 0.789611),(0.502460, -0.002500, 0.859698),(0.609473, -0.004330, 0.789611),(0.503385, -0.004330, 0.861278),(0.502122, 0.000000, 0.859120),(0.607945, 0.000000, 0.787633),(0.608354, -0.002500, 0.788163),(0.502122, 0.000000, 0.859120),(0.608354, -0.002500, 0.788163),(0.502460, -0.002500, 0.859698),(0.502460, 0.002500, 0.859698),(0.608354, 0.002500, 0.788163),(0.607945, 0.000000, 0.787633),(0.502460, 0.002500, 0.859698),(0.607945, 0.000000, 0.787633),(0.502122, 0.000000, 0.859120),(0.503385, 0.004330, 0.861278),(0.609473, 0.004330, 0.789611),(0.608354, 0.002500, 0.788163),(0.503385, 0.004330, 0.861278),(0.608354, 0.002500, 0.788163),(0.502460, 0.002500, 0.859698),(0.504648, 0.005000, 0.863435),(0.611002, 0.005000, 0.791589),(0.609473, 0.004330, 0.789611),(0.504648, 0.005000, 0.863435),(0.609473, 0.004330, 0.789611),(0.503385, 0.004330, 0.861278),(0.505911, 0.004330, 0.865593),(0.612531, 0.004330, 0.793567),(0.611002, 0.005000, 0.791589),(0.505911, 0.004330, 0.865593),(0.611002, 0.005000, 0.791589),(0.504648, 0.005000, 0.863435),(0.506836, 0.002500, 0.867172),(0.613650, 0.002500, 0.795015),(0.612531, 0.004330, 0.793567),(0.506836, 0.002500, 0.867172),(0.612531, 0.004330, 0.793567),(0.505911, 0.004330, 0.865593),(0.507174, 0.000000, 0.867750),(0.614060, 0.000000, 0.795545),(0.613650, 0.002500, 0.795015),(0.507174, 0.000000, 0.867750),(0.613650, 0.002500, 0.795015),(0.506836, 0.002500, 0.867172),(0.613650, -0.002500, 0.795015),(0.710109, -0.002500, 0.710109),(0.710582, 0.000000, 0.710582),(0.613650, -0.002500, 0.795015),(0.710582, 0.000000, 0.710582),(0.614060, 0.000000, 0.795545),(0.612531, -0.004330, 0.793567),(0.708815, -0.004330, 0.708815),(0.710109, -0.002500, 0.710109),(0.612531, -0.004330, 0.793567),(0.710109, -0.002500, 0.710109),(0.613650, -0.002500, 0.795015),(0.611002, -0.005000, 0.791589),(0.707047, -0.005000, 0.707047),(0.708815, -0.004330, 0.708815),(0.611002, -0.005000, 0.791589),(0.708815, -0.004330, 0.708815),(0.612531, -0.004330, 0.793567),(0.609473, -0.004330, 0.789611),(0.705279, -0.004330, 0.705279),(0.707047, -0.005000, 0.707047),(0.609473, -0.004330, 0.789611),(0.707047, -0.005000, 0.707047),(0.611002, -0.005000, 0.791589),(0.608354, -0.002500, 0.788163),(0.703985, -0.002500, 0.703985),(0.705279, -0.004330, 0.705279),(0.608354, -0.002500, 0.788163),(0.705279, -0.004330, 0.705279),(0.609473, -0.004330, 0.789611),(0.607945, 0.000000, 0.787633),(0.703511, 0.000000, 0.703511),(0.703985, -0.002500, 0.703985),(0.607945, 0.000000, 0.787633),(0.703985, -0.002500, 0.703985),(0.608354, -0.002500, 0.788163),(0.608354, 0.002500, 0.788163),(0.703985, 0.002500, 0.703985),(0.703511, 0.000000, 0.703511),(0.608354, 0.002500, 0.788163),(0.703511, 0.000000, 0.703511),(0.607945, 0.000000, 0.787633),(0.609473, 0.004330, 0.789611),(0.705279, 0.004330, 0.705279),(0.703985, 0.002500, 0.703985),(0.609473, 0.004330, 0.789611),(0.703985, 0.002500, 0.703985),(0.608354, 0.002500, 0.788163),(0.611002, 0.005000, 0.791589),(0.707047, 0.005000, 0.707047),(0.705279, 0.004330, 0.705279),(0.611002, 0.005000, 0.791589),(0.705279, 0.004330, 0.705279),(0.609473, 0.004330, 0.789611),(0.612531, 0.004330, 0.793567),(0.708815, 0.004330, 0.708815),(0.707047, 0.005000, 0.707047),(0.612531, 0.004330, 0.793567),(0.707047, 0.005000, 0.707047),(0.611002, 0.005000, 0.791589),(0.613650, 0.002500, 0.795015),(0.710109, 0.002500, 0.710109),(0.708815, 0.004330, 0.708815),(0.613650, 0.002500, 0.795015),(0.708815, 0.004330, 0.708815),(0.612531, 0.004330, 0.793567),(0.614060, 0.000000, 0.795545),(0.710582, 0.000000, 0.710582),(0.710109, 0.002500, 0.710109),(0.614060, 0.000000, 0.795545),(0.710109, 0.002500, 0.710109),(0.613650, 0.002500, 0.795015),(0.710109, -0.002500, 0.710109),(0.795015, -0.002500, 0.613650),(0.795545, 0.000000, 0.614060),(0.710109, -0.002500, 0.710109),(0.795545, 0.000000, 0.614060),(0.710582, 0.000000, 0.710582),(0.708815, -0.004330, 0.708815),(0.793567, -0.004330, 0.612531),(0.795015, -0.002500, 0.613650),(0.708815, -0.004330, 0.708815),(0.795015, -0.002500, 0.613650),(0.710109, -0.002500, 0.710109),(0.707047, -0.005000, 0.707047),(0.791589, -0.005000, 0.611002),(0.793567, -0.004330, 0.612531),(0.707047, -0.005000, 0.707047),(0.793567, -0.004330, 0.612531),(0.708815, -0.004330, 0.708815),(0.705279, -0.004330, 0.705279),(0.789611, -0.004330, 0.609474),(0.791589, -0.005000, 0.611002),(0.705279, -0.004330, 0.705279),(0.791589, -0.005000, 0.611002),(0.707047, -0.005000, 0.707047),(0.703985, -0.002500, 0.703985),(0.788163, -0.002500, 0.608354),(0.789611, -0.004330, 0.609474),(0.703985, -0.002500, 0.703985),(0.789611, -0.004330, 0.609474),(0.705279, -0.004330, 0.705279),(0.703511, 0.000000, 0.703511),(0.787633, 0.000000, 0.607945),(0.788163, -0.002500, 0.608354),(0.703511, 0.000000, 0.703511),(0.788163, -0.002500, 0.608354),(0.703985, -0.002500, 0.703985),(0.703985, 0.002500, 0.703985),(0.788163, 0.002500, 0.608354),(0.787633, 0.000000, 0.607945),(0.703985, 0.002500, 0.703985),(0.787633, 0.000000, 0.607945),(0.703511, 0.000000, 0.703511),(0.705279, 0.004330, 0.705279),(0.789611, 0.004330, 0.609474),(0.788163, 0.002500, 0.608354),(0.705279, 0.004330, 0.705279),(0.788163, 0.002500, 0.608354),(0.703985, 0.002500, 0.703985),(0.707047, 0.005000, 0.707047),(0.791589, 0.005000, 0.611002),(0.789611, 0.004330, 0.609474),(0.707047, 0.005000, 0.707047),(0.789611, 0.004330, 0.609474),(0.705279, 0.004330, 0.705279),(0.708815, 0.004330, 0.708815),(0.793567, 0.004330, 0.612531),(0.791589, 0.005000, 0.611002),(0.708815, 0.004330, 0.708815),(0.791589, 0.005000, 0.611002),(0.707047, 0.005000, 0.707047),(0.710109, 0.002500, 0.710109),(0.795015, 0.002500, 0.613650),(0.793567, 0.004330, 0.612531),(0.710109, 0.002500, 0.710109),(0.793567, 0.004330, 0.612531),(0.708815, 0.004330, 0.708815),(0.710582, 0.000000, 0.710582),(0.795545, 0.000000, 0.614060),(0.795015, 0.002500, 0.613650),(0.710582, 0.000000, 0.710582),(0.795015, 0.002500, 0.613650),(0.710109, 0.002500, 0.710109),(0.795015, -0.002500, 0.613650),(0.867172, -0.002500, 0.506836),(0.867750, 0.000000, 0.507174),(0.795015, -0.002500, 0.613650),(0.867750, 0.000000, 0.507174),(0.795545, 0.000000, 0.614060),(0.793567, -0.004330, 0.612531),(0.865593, -0.004330, 0.505911),(0.867172, -0.002500, 0.506836),(0.793567, -0.004330, 0.612531),(0.867172, -0.002500, 0.506836),(0.795015, -0.002500, 0.613650),(0.791589, -0.005000, 0.611002),(0.863435, -0.005000, 0.504648),(0.865593, -0.004330, 0.505911),(0.791589, -0.005000, 0.611002),(0.865593, -0.004330, 0.505911),(0.793567, -0.004330, 0.612531),(0.789611, -0.004330, 0.609474),(0.861278, -0.004330, 0.503385),(0.863435, -0.005000, 0.504648),(0.789611, -0.004330, 0.609474),(0.863435, -0.005000, 0.504648),(0.791589, -0.005000, 0.611002),(0.788163, -0.002500, 0.608354),(0.859698, -0.002500, 0.502460),(0.861278, -0.004330, 0.503385),(0.788163, -0.002500, 0.608354),(0.861278, -0.004330, 0.503385),(0.789611, -0.004330, 0.609474),(0.787633, 0.000000, 0.607945),(0.859120, 0.000000, 0.502122),(0.859698, -0.002500, 0.502460),(0.787633, 0.000000, 0.607945),(0.859698, -0.002500, 0.502460),(0.788163, -0.002500, 0.608354),(0.788163, 0.002500, 0.608354),(0.859698, 0.002500, 0.502460),(0.859120, 0.000000, 0.502122),(0.788163, 0.002500, 0.608354),(0.859120, 0.000000, 0.502122),(0.787633, 0.000000, 0.607945),(0.789611, 0.004330, 0.609474),(0.861278, 0.004330, 0.503385),(0.859698, 0.002500, 0.502460),(0.789611, 0.004330, 0.609474),(0.859698, 0.002500, 0.502460),(0.788163, 0.002500, 0.608354),(0.791589, 0.005000, 0.611002),(0.863435, 0.005000, 0.504648),(0.861278, 0.004330, 0.503385),(0.791589, 0.005000, 0.611002),(0.861278, 0.004330, 0.503385),(0.789611, 0.004330, 0.609474),(0.793567, 0.004330, 0.612531),(0.865593, 0.004330, 0.505911),(0.863435, 0.005000, 0.504648),(0.793567, 0.004330, 0.612531),(0.863435, 0.005000, 0.504648),(0.791589, 0.005000, 0.611002),(0.795015, 0.002500, 0.613650),(0.867172, 0.002500, 0.506836),(0.865593, 0.004330, 0.505911),(0.795015, 0.002500, 0.613650),(0.865593, 0.004330, 0.505911),(0.793567, 0.004330, 0.612531),(0.795545, 0.000000, 0.614060),(0.867750, 0.000000, 0.507174),(0.867172, 0.002500, 0.506836),(0.795545, 0.000000, 0.614060),(0.867172, 0.002500, 0.506836),(0.795015, 0.002500, 0.613650),(0.867172, -0.002500, 0.506836),(0.925381, -0.002500, 0.390863),(0.925998, 0.000000, 0.391124),(0.867172, -0.002500, 0.506836),(0.925998, 0.000000, 0.391124),(0.867750, 0.000000, 0.507174),(0.865593, -0.004330, 0.505911),(0.923695, -0.004330, 0.390151),(0.925381, -0.002500, 0.390863),(0.865593, -0.004330, 0.505911),(0.925381, -0.002500, 0.390863),(0.867172, -0.002500, 0.506836),(0.863435, -0.005000, 0.504648),(0.921392, -0.005000, 0.389178),(0.923695, -0.004330, 0.390151),(0.863435, -0.005000, 0.504648),(0.923695, -0.004330, 0.390151),(0.865593, -0.004330, 0.505911),(0.861278, -0.004330, 0.503385),(0.919090, -0.004330, 0.388205),(0.921392, -0.005000, 0.389178),(0.861278, -0.004330, 0.503385),(0.921392, -0.005000, 0.389178),(0.863435, -0.005000, 0.504648),(0.859698, -0.002500, 0.502460),(0.917404, -0.002500, 0.387492),(0.919090, -0.004330, 0.388205),(0.859698, -0.002500, 0.502460),(0.919090, -0.004330, 0.388205),(0.861278, -0.004330, 0.503385),(0.859120, 0.000000, 0.502122),(0.916787, 0.000000, 0.387232),(0.917404, -0.002500, 0.387492),(0.859120, 0.000000, 0.502122),(0.917404, -0.002500, 0.387492),(0.859698, -0.002500, 0.502460),(0.859698, 0.002500, 0.502460),(0.917404, 0.002500, 0.387492),(0.916787, 0.000000, 0.387232),(0.859698, 0.002500, 0.502460),(0.916787, 0.000000, 0.387232),(0.859120, 0.000000, 0.502122),(0.861278, 0.004330, 0.503385),(0.919090, 0.004330, 0.388205),(0.917404, 0.002500, 0.387492),(0.861278, 0.004330, 0.503385),(0.917404, 0.002500, 0.387492),(0.859698, 0.002500, 0.502460),(0.863435, 0.005000, 0.504648),(0.921392, 0.005000, 0.389178),(0.919090, 0.004330, 0.388205),(0.863435, 0.005000, 0.504648),(0.919090, 0.004330, 0.388205),(0.861278, 0.004330, 0.503385),(0.865593, 0.004330, 0.505911),(0.923695, 0.004330, 0.390151),(0.921392, 0.005000, 0.389178),(0.865593, 0.004330, 0.505911),(0.921392, 0.005000, 0.389178),(0.863435, 0.005000, 0.504648),(0.867172, 0.002500, 0.506836),(0.925381, 0.002500, 0.390863),(0.923695, 0.004330, 0.390151),(0.867172, 0.002500, 0.506836),(0.923695, 0.004330, 0.390151),(0.865593, 0.004330, 0.505911),(0.867750, 0.000000, 0.507174),(0.925998, 0.000000, 0.391124),(0.925381, 0.002500, 0.390863),(0.867750, 0.000000, 0.507174),(0.925381, 0.002500, 0.390863),(0.867172, 0.002500, 0.506836),(0.925381, -0.002500, 0.390863),(0.968443, -0.002500, 0.266931),(0.969089, 0.000000, 0.267108),(0.925381, -0.002500, 0.390863),(0.969089, 0.000000, 0.267108),(0.925998, 0.000000, 0.391124),(0.923695, -0.004330, 0.390151),(0.966679, -0.004330, 0.266446),(0.968443, -0.002500, 0.266931),(0.923695, -0.004330, 0.390151),(0.968443, -0.002500, 0.266931),(0.925381, -0.002500, 0.390863),(0.921392, -0.005000, 0.389178),(0.964268, -0.005000, 0.265784),(0.966679, -0.004330, 0.266446),(0.921392, -0.005000, 0.389178),(0.966679, -0.004330, 0.266446),(0.923695, -0.004330, 0.390151),(0.919090, -0.004330, 0.388205),(0.961857, -0.004330, 0.265122),(0.964268, -0.005000, 0.265784),(0.919090, -0.004330, 0.388205),(0.964268, -0.005000, 0.265784),(0.921392, -0.005000, 0.389178),(0.917404, -0.002500, 0.387492),(0.960092, -0.002500, 0.264637),(0.961857, -0.004330, 0.265122),(0.917404, -0.002500, 0.387492),(0.961857, -0.004330, 0.265122),(0.919090, -0.004330, 0.388205),(0.916787, 0.000000, 0.387232),(0.959446, 0.000000, 0.264460),(0.960092, -0.002500, 0.264637),(0.916787, 0.000000, 0.387232),(0.960092, -0.002500, 0.264637),(0.917404, -0.002500, 0.387492),(0.917404, 0.002500, 0.387492),(0.960092, 0.002500, 0.264637),(0.959446, 0.000000, 0.264460),(0.917404, 0.002500, 0.387492),(0.959446, 0.000000, 0.264460),(0.916787, 0.000000, 0.387232),(0.919090, 0.004330, 0.388205),(0.961857, 0.004330, 0.265122),(0.960092, 0.002500, 0.264637),(0.919090, 0.004330, 0.388205),(0.960092, 0.002500, 0.264637),(0.917404, 0.002500, 0.387492),(0.921392, 0.005000, 0.389178),(0.964268, 0.005000, 0.265784),(0.961857, 0.004330, 0.265122),(0.921392, 0.005000, 0.389178),(0.961857, 0.004330, 0.265122),(0.919090, 0.004330, 0.388205),(0.923695, 0.004330, 0.390151),(0.966679, 0.004330, 0.266446),(0.964268, 0.005000, 0.265784),(0.923695, 0.004330, 0.390151),(0.964268, 0.005000, 0.265784),(0.921392, 0.005000, 0.389178),(0.925381, 0.002500, 0.390863),(0.968443, 0.002500, 0.266931),(0.966679, 0.004330, 0.266446),(0.925381, 0.002500, 0.390863),(0.966679, 0.004330, 0.266446),(0.923695, 0.004330, 0.390151),(0.925998, 0.000000, 0.391124),(0.969089, 0.000000, 0.267108),(0.968443, 0.002500, 0.266931),(0.925998, 0.000000, 0.391124),(0.968443, 0.002500, 0.266931),(0.925381, 0.002500, 0.390863),(0.968443, -0.002500, 0.266931),(0.995159, -0.002500, 0.136241),(0.995823, 0.000000, 0.136331),(0.968443, -0.002500, 0.266931),(0.995823, 0.000000, 0.136331),(0.969089, 0.000000, 0.267108),(0.966679, -0.004330, 0.266446),(0.993345, -0.004330, 0.135996),(0.995159, -0.002500, 0.136241),(0.966679, -0.004330, 0.266446),(0.995159, -0.002500, 0.136241),(0.968443, -0.002500, 0.266931),(0.964268, -0.005000, 0.265784),(0.990868, -0.005000, 0.135661),(0.993345, -0.004330, 0.135996),(0.964268, -0.005000, 0.265784),(0.993345, -0.004330, 0.135996),(0.966679, -0.004330, 0.266446),(0.961857, -0.004330, 0.265122),(0.988391, -0.004330, 0.135325),(0.990868, -0.005000, 0.135661),(0.961857, -0.004330, 0.265122),(0.990868, -0.005000, 0.135661),(0.964268, -0.005000, 0.265784),(0.960092, -0.002500, 0.264637),(0.986577, -0.002500, 0.135080),(0.988391, -0.004330, 0.135325),(0.960092, -0.002500, 0.264637),(0.988391, -0.004330, 0.135325),(0.961857, -0.004330, 0.265122),(0.959446, 0.000000, 0.264460),(0.985913, 0.000000, 0.134990),(0.986577, -0.002500, 0.135080),(0.959446, 0.000000, 0.264460),(0.986577, -0.002500, 0.135080),(0.960092, -0.002500, 0.264637),(0.960092, 0.002500, 0.264637),(0.986577, 0.002500, 0.135080),(0.985913, 0.000000, 0.134990),(0.960092, 0.002500, 0.264637),(0.985913, 0.000000, 0.134990),(0.959446, 0.000000, 0.264460),(0.961857, 0.004330, 0.265122),(0.988391, 0.004330, 0.135325),(0.986577, 0.002500, 0.135080),(0.961857, 0.004330, 0.265122),(0.986577, 0.002500, 0.135080),(0.960092, 0.002500, 0.264637),(0.964268, 0.005000, 0.265784),(0.990868, 0.005000, 0.135661),(0.988391, 0.004330, 0.135325),(0.964268, 0.005000, 0.265784),(0.988391, 0.004330, 0.135325),(0.961857, 0.004330, 0.265122),(0.966679, 0.004330, 0.266446),(0.993345, 0.004330, 0.135996),(0.990868, 0.005000, 0.135661),(0.966679, 0.004330, 0.266446),(0.990868, 0.005000, 0.135661),(0.964268, 0.005000, 0.265784),(0.968443, 0.002500, 0.266931),(0.995159, 0.002500, 0.136241),(0.993345, 0.004330, 0.135996),(0.968443, 0.002500, 0.266931),(0.993345, 0.004330, 0.135996),(0.966679, 0.004330, 0.266446),(0.969089, 0.000000, 0.267108),(0.995823, 0.000000, 0.136331),(0.995159, 0.002500, 0.136241),(0.969089, 0.000000, 0.267108),(0.995159, 0.002500, 0.136241),(0.968443, 0.002500, 0.266931),(0.995159, -0.002500, 0.136241),(1.004330, -0.002500, 0.000000),(1.005000, 0.000000, 0.000000),(0.995159, -0.002500, 0.136241),(1.005000, 0.000000, 0.000000),(0.995823, 0.000000, 0.136331),(0.993345, -0.004330, 0.135996),(1.002500, -0.004330, 0.000000),(1.004330, -0.002500, 0.000000),(0.993345, -0.004330, 0.135996),(1.004330, -0.002500, 0.000000),(0.995159, -0.002500, 0.136241),(0.990868, -0.005000, 0.135661),(1.000000, -0.005000, 0.000000),(1.002500, -0.004330, 0.000000),(0.990868, -0.005000, 0.135661),(1.002500, -0.004330, 0.000000),(0.993345, -0.004330, 0.135996),(0.988391, -0.004330, 0.135325),(0.997500, -0.004330, -0.000000),(1.000000, -0.005000, 0.000000),(0.988391, -0.004330, 0.135325),(1.000000, -0.005000, 0.000000),(0.990868, -0.005000, 0.135661),(0.986577, -0.002500, 0.135080),(0.995670, -0.002500, -0.000000),(0.997500, -0.004330, -0.000000),(0.986577, -0.002500, 0.135080),(0.997500, -0.004330, -0.000000),(0.988391, -0.004330, 0.135325),(0.985913, 0.000000, 0.134990),(0.995000, -0.000000, -0.000000),(0.995670, -0.002500, -0.000000),(0.985913, 0.000000, 0.134990),(0.995670, -0.002500, -0.000000),(0.986577, -0.002500, 0.135080),(0.986577, 0.002500, 0.135080),(0.995670, 0.002500, -0.000000),(0.995000, -0.000000, -0.000000),(0.986577, 0.002500, 0.135080),(0.995000, -0.000000, -0.000000),(0.985913, 0.000000, 0.134990),(0.988391, 0.004330, 0.135325),(0.997500, 0.004330, -0.000000),(0.995670, 0.002500, -0.000000),(0.988391, 0.004330, 0.135325),(0.995670, 0.002500, -0.000000),(0.986577, 0.002500, 0.135080),(0.990868, 0.005000, 0.135661),(1.000000, 0.005000, -0.000000),(0.997500, 0.004330, -0.000000),(0.990868, 0.005000, 0.135661),(0.997500, 0.004330, -0.000000),(0.988391, 0.004330, 0.135325),(0.993345, 0.004330, 0.135996),(1.002500, 0.004330, 0.000000),(1.000000, 0.005000, -0.000000),(0.993345, 0.004330, 0.135996),(1.000000, 0.005000, -0.000000),(0.990868, 0.005000, 0.135661),(0.995159, 0.002500, 0.136241),(1.004330, 0.002500, 0.000000),(1.002500, 0.004330, 0.000000),(0.995159, 0.002500, 0.136241),(1.002500, 0.004330, 0.000000),(0.993345, 0.004330, 0.135996),(0.995823, 0.000000, 0.136331),(1.005000, 0.000000, 0.000000),(1.004330, 0.002500, 0.000000),(0.995823, 0.000000, 0.136331),(1.004330, 0.002500, 0.000000),(0.995159, 0.002500, 0.136241),(1.004330, -0.002500, 0.000000),(0.995159, -0.002500, -0.136241),(0.995823, -0.000000, -0.136331),(1.004330, -0.002500, 0.000000),(0.995823, -0.000000, -0.136331),(1.005000, 0.000000, 0.000000),(1.002500, -0.004330, 0.000000),(0.993346, -0.004330, -0.135996),(0.995159, -0.002500, -0.136241),(1.002500, -0.004330, 0.000000),(0.995159, -0.002500, -0.136241),(1.004330, -0.002500, 0.000000),(1.000000, -0.005000, 0.000000),(0.990868, -0.005000, -0.135661),(0.993346, -0.004330, -0.135996),(1.000000, -0.005000, 0.000000),(0.993346, -0.004330, -0.135996),(1.002500, -0.004330, 0.000000),(0.997500, -0.004330, -0.000000),(0.988391, -0.004330, -0.135325),(0.990868, -0.005000, -0.135661),(0.997500, -0.004330, -0.000000),(0.990868, -0.005000, -0.135661),(1.000000, -0.005000, 0.000000),(0.995670, -0.002500, -0.000000),(0.986577, -0.002500, -0.135080),(0.988391, -0.004330, -0.135325),(0.995670, -0.002500, -0.000000),(0.988391, -0.004330, -0.135325),(0.997500, -0.004330, -0.000000),(0.995000, -0.000000, -0.000000),(0.985913, -0.000000, -0.134990),(0.986577, -0.002500, -0.135080),(0.995000, -0.000000, -0.000000),(0.986577, -0.002500, -0.135080),(0.995670, -0.002500, -0.000000),(0.995670, 0.002500, -0.000000),(0.986577, 0.002500, -0.135080),(0.985913, -0.000000, -0.134990),(0.995670, 0.002500, -0.000000),(0.985913, -0.000000, -0.134990),(0.995000, -0.000000, -0.000000),(0.997500, 0.004330, -0.000000),(0.988391, 0.004330, -0.135325),(0.986577, 0.002500, -0.135080),(0.997500, 0.004330, -0.000000),(0.986577, 0.002500, -0.135080),(0.995670, 0.002500, -0.000000),(1.000000, 0.005000, -0.000000),(0.990868, 0.005000, -0.135661),(0.988391, 0.004330, -0.135325),(1.000000, 0.005000, -0.000000),(0.988391, 0.004330, -0.135325),(0.997500, 0.004330, -0.000000),(1.002500, 0.004330, 0.000000),(0.993346, 0.004330, -0.135996),(0.990868, 0.005000, -0.135661),(1.002500, 0.004330, 0.000000),(0.990868, 0.005000, -0.135661),(1.000000, 0.005000, -0.000000),(1.004330, 0.002500, 0.000000),(0.995159, 0.002500, -0.136241),(0.993346, 0.004330, -0.135996),(1.004330, 0.002500, 0.000000),(0.993346, 0.004330, -0.135996),(1.002500, 0.004330, 0.000000),(1.005000, 0.000000, 0.000000),(0.995823, -0.000000, -0.136331),(0.995159, 0.002500, -0.136241),(1.005000, 0.000000, 0.000000),(0.995159, 0.002500, -0.136241),(1.004330, 0.002500, 0.000000),(0.995159, -0.002500, -0.136241),(0.968443, -0.002500, -0.266931),(0.969089, -0.000000, -0.267108),(0.995159, -0.002500, -0.136241),(0.969089, -0.000000, -0.267108),(0.995823, -0.000000, -0.136331),(0.993346, -0.004330, -0.135996),(0.966679, -0.004330, -0.266446),(0.968443, -0.002500, -0.266931),(0.993346, -0.004330, -0.135996),(0.968443, -0.002500, -0.266931),(0.995159, -0.002500, -0.136241),(0.990868, -0.005000, -0.135661),(0.964268, -0.005000, -0.265784),(0.966679, -0.004330, -0.266446),(0.990868, -0.005000, -0.135661),(0.966679, -0.004330, -0.266446),(0.993346, -0.004330, -0.135996),(0.988391, -0.004330, -0.135325),(0.961857, -0.004330, -0.265122),(0.964268, -0.005000, -0.265784),(0.988391, -0.004330, -0.135325),(0.964268, -0.005000, -0.265784),(0.990868, -0.005000, -0.135661),(0.986577, -0.002500, -0.135080),(0.960092, -0.002500, -0.264637),(0.961857, -0.004330, -0.265122),(0.986577, -0.002500, -0.135080),(0.961857, -0.004330, -0.265122),(0.988391, -0.004330, -0.135325),(0.985913, -0.000000, -0.134990),(0.959446, -0.000000, -0.264460),(0.960092, -0.002500, -0.264637),(0.985913, -0.000000, -0.134990),(0.960092, -0.002500, -0.264637),(0.986577, -0.002500, -0.135080),(0.986577, 0.002500, -0.135080),(0.960092, 0.002500, -0.264637),(0.959446, -0.000000, -0.264460),(0.986577, 0.002500, -0.135080),(0.959446, -0.000000, -0.264460),(0.985913, -0.000000, -0.134990),(0.988391, 0.004330, -0.135325),(0.961857, 0.004330, -0.265122),(0.960092, 0.002500, -0.264637),(0.988391, 0.004330, -0.135325),(0.960092, 0.002500, -0.264637),(0.986577, 0.002500, -0.135080),(0.990868, 0.005000, -0.135661),(0.964268, 0.005000, -0.265784),(0.961857, 0.004330, -0.265122),(0.990868, 0.005000, -0.135661),(0.961857, 0.004330, -0.265122),(0.988391, 0.004330, -0.135325),(0.993346, 0.004330, -0.135996),(0.966679, 0.004330, -0.266446),(0.964268, 0.005000, -0.265784),(0.993346, 0.004330, -0.135996),(0.964268, 0.005000, -0.265784),(0.990868, 0.005000, -0.135661),(0.995159, 0.002500, -0.136241),(0.968443, 0.002500, -0.266931),(0.966679, 0.004330, -0.266446),(0.995159, 0.002500, -0.136241),(0.966679, 0.004330, -0.266446),(0.993346, 0.004330, -0.135996),(0.995823, -0.000000, -0.136331),(0.969089, -0.000000, -0.267108),(0.968443, 0.002500, -0.266931),(0.995823, -0.000000, -0.136331),(0.968443, 0.002500, -0.266931),(0.995159, 0.002500, -0.136241),(0.968443, -0.002500, -0.266931),(0.925381, -0.002500, -0.390863),(0.925998, -0.000000, -0.391124),(0.968443, -0.002500, -0.266931),(0.925998, -0.000000, -0.391124),(0.969089, -0.000000, -0.267108),(0.966679, -0.004330, -0.266446),(0.923695, -0.004330, -0.390151),(0.925381, -0.002500, -0.390863),(0.966679, -0.004330, -0.266446),(0.925381, -0.002500, -0.390863),(0.968443, -0.002500, -0.266931),(0.964268, -0.005000, -0.265784),(0.921393, -0.005000, -0.389178),(0.923695, -0.004330, -0.390151),(0.964268, -0.005000, -0.265784),(0.923695, -0.004330, -0.390151),(0.966679, -0.004330, -0.266446),(0.961857, -0.004330, -0.265122),(0.919090, -0.004330, -0.388205),(0.921393, -0.005000, -0.389178),(0.961857, -0.004330, -0.265122),(0.921393, -0.005000, -0.389178),(0.964268, -0.005000, -0.265784),(0.960092, -0.002500, -0.264637),(0.917404, -0.002500, -0.387492),(0.919090, -0.004330, -0.388205),(0.960092, -0.002500, -0.264637),(0.919090, -0.004330, -0.388205),(0.961857, -0.004330, -0.265122),(0.959446, -0.000000, -0.264460),(0.916787, -0.000000, -0.387232),(0.917404, -0.002500, -0.387492),(0.959446, -0.000000, -0.264460),(0.917404, -0.002500, -0.387492),(0.960092, -0.002500, -0.264637),(0.960092, 0.002500, -0.264637),(0.917404, 0.002500, -0.387492),(0.916787, -0.000000, -0.387232),(0.960092, 0.002500, -0.264637),(0.916787, -0.000000, -0.387232),(0.959446, -0.000000, -0.264460),(0.961857, 0.004330, -0.265122),(0.919090, 0.004330, -0.388205),(0.917404, 0.002500, -0.387492),(0.961857, 0.004330, -0.265122),(0.917404, 0.002500, -0.387492),(0.960092, 0.002500, -0.264637),(0.964268, 0.005000, -0.265784),(0.921393, 0.005000, -0.389178),(0.919090, 0.004330, -0.388205),(0.964268, 0.005000, -0.265784),(0.919090, 0.004330, -0.388205),(0.961857, 0.004330, -0.265122),(0.966679, 0.004330, -0.266446),(0.923695, 0.004330, -0.390151),(0.921393, 0.005000, -0.389178),(0.966679, 0.004330, -0.266446),(0.921393, 0.005000, -0.389178),(0.964268, 0.005000, -0.265784),(0.968443, 0.002500, -0.266931),(0.925381, 0.002500, -0.390863),(0.923695, 0.004330, -0.390151),(0.968443, 0.002500, -0.266931),(0.923695, 0.004330, -0.390151),(0.966679, 0.004330, -0.266446),(0.969089, -0.000000, -0.267108),(0.925998, -0.000000, -0.391124),(0.925381, 0.002500, -0.390863),(0.969089, -0.000000, -0.267108),(0.925381, 0.002500, -0.390863),(0.968443, 0.002500, -0.266931),(0.925381, -0.002500, -0.390863),(0.867172, -0.002500, -0.506836),(0.867750, -0.000000, -0.507174),(0.925381, -0.002500, -0.390863),(0.867750, -0.000000, -0.507174),(0.925998, -0.000000, -0.391124),(0.923695, -0.004330, -0.390151),(0.865593, -0.004330, -0.505911),(0.867172, -0.002500, -0.506836),(0.923695, -0.004330, -0.390151),(0.867172, -0.002500, -0.506836),(0.925381, -0.002500, -0.390863),(0.921393, -0.005000, -0.389178),(0.863435, -0.005000, -0.504648),(0.865593, -0.004330, -0.505911),(0.921393, -0.005000, -0.389178),(0.865593, -0.004330, -0.505911),(0.923695, -0.004330, -0.390151),(0.919090, -0.004330, -0.388205),(0.861278, -0.004330, -0.503385),(0.863435, -0.005000, -0.504648),(0.919090, -0.004330, -0.388205),(0.863435, -0.005000, -0.504648),(0.921393, -0.005000, -0.389178),(0.917404, -0.002500, -0.387492),(0.859698, -0.002500, -0.502460),(0.861278, -0.004330, -0.503385),(0.917404, -0.002500, -0.387492),(0.861278, -0.004330, -0.503385),(0.919090, -0.004330, -0.388205),(0.916787, -0.000000, -0.387232),(0.859120, -0.000000, -0.502122),(0.859698, -0.002500, -0.502460),(0.916787, -0.000000, -0.387232),(0.859698, -0.002500, -0.502460),(0.917404, -0.002500, -0.387492),(0.917404, 0.002500, -0.387492),(0.859698, 0.002500, -0.502460),(0.859120, -0.000000, -0.502122),(0.917404, 0.002500, -0.387492),(0.859120, -0.000000, -0.502122),(0.916787, -0.000000, -0.387232),(0.919090, 0.004330, -0.388205),(0.861278, 0.004330, -0.503385),(0.859698, 0.002500, -0.502460),(0.919090, 0.004330, -0.388205),(0.859698, 0.002500, -0.502460),(0.917404, 0.002500, -0.387492),(0.921393, 0.005000, -0.389178),(0.863435, 0.005000, -0.504648),(0.861278, 0.004330, -0.503385),(0.921393, 0.005000, -0.389178),(0.861278, 0.004330, -0.503385),(0.919090, 0.004330, -0.388205),(0.923695, 0.004330, -0.390151),(0.865593, 0.004330, -0.505911),(0.863435, 0.005000, -0.504648),(0.923695, 0.004330, -0.390151),(0.863435, 0.005000, -0.504648),(0.921393, 0.005000, -0.389178),(0.925381, 0.002500, -0.390863),(0.867172, 0.002500, -0.506836),(0.865593, 0.004330, -0.505911),(0.925381, 0.002500, -0.390863),(0.865593, 0.004330, -0.505911),(0.923695, 0.004330, -0.390151),(0.925998, -0.000000, -0.391124),(0.867750, -0.000000, -0.507174),(0.867172, 0.002500, -0.506836),(0.925998, -0.000000, -0.391124),(0.867172, 0.002500, -0.506836),(0.925381, 0.002500, -0.390863),(0.867172, -0.002500, -0.506836),(0.795015, -0.002500, -0.613650),(0.795545, -0.000000, -0.614060),(0.867172, -0.002500, -0.506836),(0.795545, -0.000000, -0.614060),(0.867750, -0.000000, -0.507174),(0.865593, -0.004330, -0.505911),(0.793567, -0.004330, -0.612531),(0.795015, -0.002500, -0.613650),(0.865593, -0.004330, -0.505911),(0.795015, -0.002500, -0.613650),(0.867172, -0.002500, -0.506836),(0.863435, -0.005000, -0.504648),(0.791589, -0.005000, -0.611002),(0.793567, -0.004330, -0.612531),(0.863435, -0.005000, -0.504648),(0.793567, -0.004330, -0.612531),(0.865593, -0.004330, -0.505911),(0.861278, -0.004330, -0.503385),(0.789611, -0.004330, -0.609473),(0.791589, -0.005000, -0.611002),(0.861278, -0.004330, -0.503385),(0.791589, -0.005000, -0.611002),(0.863435, -0.005000, -0.504648),(0.859698, -0.002500, -0.502460),(0.788163, -0.002500, -0.608354),(0.789611, -0.004330, -0.609473),(0.859698, -0.002500, -0.502460),(0.789611, -0.004330, -0.609473),(0.861278, -0.004330, -0.503385),(0.859120, -0.000000, -0.502122),(0.787633, -0.000000, -0.607945),(0.788163, -0.002500, -0.608354),(0.859120, -0.000000, -0.502122),(0.788163, -0.002500, -0.608354),(0.859698, -0.002500, -0.502460),(0.859698, 0.002500, -0.502460),(0.788163, 0.002500, -0.608354),(0.787633, -0.000000, -0.607945),(0.859698, 0.002500, -0.502460),(0.787633, -0.000000, -0.607945),(0.859120, -0.000000, -0.502122),(0.861278, 0.004330, -0.503385),(0.789611, 0.004330, -0.609473),(0.788163, 0.002500, -0.608354),(0.861278, 0.004330, -0.503385),(0.788163, 0.002500, -0.608354),(0.859698, 0.002500, -0.502460),(0.863435, 0.005000, -0.504648),(0.791589, 0.005000, -0.611002),(0.789611, 0.004330, -0.609473),(0.863435, 0.005000, -0.504648),(0.789611, 0.004330, -0.609473),(0.861278, 0.004330, -0.503385),(0.865593, 0.004330, -0.505911),(0.793567, 0.004330, -0.612531),(0.791589, 0.005000, -0.611002),(0.865593, 0.004330, -0.505911),(0.791589, 0.005000, -0.611002),(0.863435, 0.005000, -0.504648),(0.867172, 0.002500, -0.506836),(0.795015, 0.002500, -0.613650),(0.793567, 0.004330, -0.612531),(0.867172, 0.002500, -0.506836),(0.793567, 0.004330, -0.612531),(0.865593, 0.004330, -0.505911),(0.867750, -0.000000, -0.507174),(0.795545, -0.000000, -0.614060),(0.795015, 0.002500, -0.613650),(0.867750, -0.000000, -0.507174),(0.795015, 0.002500, -0.613650),(0.867172, 0.002500, -0.506836),(0.795015, -0.002500, -0.613650),(0.710109, -0.002500, -0.710109),(0.710582, -0.000000, -0.710582),(0.795015, -0.002500, -0.613650),(0.710582, -0.000000, -0.710582),(0.795545, -0.000000, -0.614060),(0.793567, -0.004330, -0.612531),(0.708815, -0.004330, -0.708815),(0.710109, -0.002500, -0.710109),(0.793567, -0.004330, -0.612531),(0.710109, -0.002500, -0.710109),(0.795015, -0.002500, -0.613650),(0.791589, -0.005000, -0.611002),(0.707047, -0.005000, -0.707047),(0.708815, -0.004330, -0.708815),(0.791589, -0.005000, -0.611002),(0.708815, -0.004330, -0.708815),(0.793567, -0.004330, -0.612531),(0.789611, -0.004330, -0.609473),(0.705279, -0.004330, -0.705279),(0.707047, -0.005000, -0.707047),(0.789611, -0.004330, -0.609473),(0.707047, -0.005000, -0.707047),(0.791589, -0.005000, -0.611002),(0.788163, -0.002500, -0.608354),(0.703985, -0.002500, -0.703985),(0.705279, -0.004330, -0.705279),(0.788163, -0.002500, -0.608354),(0.705279, -0.004330, -0.705279),(0.789611, -0.004330, -0.609473),(0.787633, -0.000000, -0.607945),(0.703511, -0.000000, -0.703511),(0.703985, -0.002500, -0.703985),(0.787633, -0.000000, -0.607945),(0.703985, -0.002500, -0.703985),(0.788163, -0.002500, -0.608354),(0.788163, 0.002500, -0.608354),(0.703985, 0.002500, -0.703985),(0.703511, -0.000000, -0.703511),(0.788163, 0.002500, -0.608354),(0.703511, -0.000000, -0.703511),(0.787633, -0.000000, -0.607945),(0.789611, 0.004330, -0.609473),(0.705279, 0.004330, -0.705279),(0.703985, 0.002500, -0.703985),(0.789611, 0.004330, -0.609473),(0.703985, 0.002500, -0.703985),(0.788163, 0.002500, -0.608354),(0.791589, 0.005000, -0.611002),(0.707047, 0.005000, -0.707047),(0.705279, 0.004330, -0.705279),(0.791589, 0.005000, -0.611002),(0.705279, 0.004330, -0.705279),(0.789611, 0.004330, -0.609473),(0.793567, 0.004330, -0.612531),(0.708815, 0.004330, -0.708815),(0.707047, 0.005000, -0.707047),(0.793567, 0.004330, -0.612531),(0.707047, 0.005000, -0.707047),(0.791589, 0.005000, -0.611002),(0.795015, 0.002500, -0.613650),(0.710109, 0.002500, -0.710109),(0.708815, 0.004330, -0.708815),(0.795015, 0.002500, -0.613650),(0.708815, 0.004330, -0.708815),(0.793567, 0.004330, -0.612531),(0.795545, -0.000000, -0.614060),(0.710582, -0.000000, -0.710582),(0.710109, 0.002500, -0.710109),(0.795545, -0.000000, -0.614060),(0.710109, 0.002500, -0.710109),(0.795015, 0.002500, -0.613650),(0.710109, -0.002500, -0.710109),(0.613650, -0.002500, -0.795015),(0.614060, -0.000000, -0.795545),(0.710109, -0.002500, -0.710109),(0.614060, -0.000000, -0.795545),(0.710582, -0.000000, -0.710582),(0.708815, -0.004330, -0.708815),(0.612531, -0.004330, -0.793567),(0.613650, -0.002500, -0.795015),(0.708815, -0.004330, -0.708815),(0.613650, -0.002500, -0.795015),(0.710109, -0.002500, -0.710109),(0.707047, -0.005000, -0.707047),(0.611002, -0.005000, -0.791589),(0.612531, -0.004330, -0.793567),(0.707047, -0.005000, -0.707047),(0.612531, -0.004330, -0.793567),(0.708815, -0.004330, -0.708815),(0.705279, -0.004330, -0.705279),(0.609474, -0.004330, -0.789611),(0.611002, -0.005000, -0.791589),(0.705279, -0.004330, -0.705279),(0.611002, -0.005000, -0.791589),(0.707047, -0.005000, -0.707047),(0.703985, -0.002500, -0.703985),(0.608354, -0.002500, -0.788163),(0.609474, -0.004330, -0.789611),(0.703985, -0.002500, -0.703985),(0.609474, -0.004330, -0.789611),(0.705279, -0.004330, -0.705279),(0.703511, -0.000000, -0.703511),(0.607945, -0.000000, -0.787633),(0.608354, -0.002500, -0.788163),(0.703511, -0.000000, -0.703511),(0.608354, -0.002500, -0.788163),(0.703985, -0.002500, -0.703985),(0.703985, 0.002500, -0.703985),(0.608354, 0.002500, -0.788163),(0.607945, -0.000000, -0.787633),(0.703985, 0.002500, -0.703985),(0.607945, -0.000000, -0.787633),(0.703511, -0.000000, -0.703511),(0.705279, 0.004330, -0.705279),(0.609474, 0.004330, -0.789611),(0.608354, 0.002500, -0.788163),(0.705279, 0.004330, -0.705279),(0.608354, 0.002500, -0.788163),(0.703985, 0.002500, -0.703985),(0.707047, 0.005000, -0.707047),(0.611002, 0.005000, -0.791589),(0.609474, 0.004330, -0.789611),(0.707047, 0.005000, -0.707047),(0.609474, 0.004330, -0.789611),(0.705279, 0.004330, -0.705279),(0.708815, 0.004330, -0.708815),(0.612531, 0.004330, -0.793567),(0.611002, 0.005000, -0.791589),(0.708815, 0.004330, -0.708815),(0.611002, 0.005000, -0.791589),(0.707047, 0.005000, -0.707047),(0.710109, 0.002500, -0.710109),(0.613650, 0.002500, -0.795015),(0.612531, 0.004330, -0.793567),(0.710109, 0.002500, -0.710109),(0.612531, 0.004330, -0.793567),(0.708815, 0.004330, -0.708815),(0.710582, -0.000000, -0.710582),(0.614060, -0.000000, -0.795545),(0.613650, 0.002500, -0.795015),(0.710582, -0.000000, -0.710582),(0.613650, 0.002500, -0.795015),(0.710109, 0.002500, -0.710109),(0.613650, -0.002500, -0.795015),(0.506836, -0.002500, -0.867172),(0.507174, -0.000000, -0.867750),(0.613650, -0.002500, -0.795015),(0.507174, -0.000000, -0.867750),(0.614060, -0.000000, -0.795545),(0.612531, -0.004330, -0.793567),(0.505911, -0.004330, -0.865593),(0.506836, -0.002500, -0.867172),(0.612531, -0.004330, -0.793567),(0.506836, -0.002500, -0.867172),(0.613650, -0.002500, -0.795015),(0.611002, -0.005000, -0.791589),(0.504648, -0.005000, -0.863435),(0.505911, -0.004330, -0.865593),(0.611002, -0.005000, -0.791589),(0.505911, -0.004330, -0.865593),(0.612531, -0.004330, -0.793567),(0.609474, -0.004330, -0.789611),(0.503385, -0.004330, -0.861278),(0.504648, -0.005000, -0.863435),(0.609474, -0.004330, -0.789611),(0.504648, -0.005000, -0.863435),(0.611002, -0.005000, -0.791589),(0.608354, -0.002500, -0.788163),(0.502460, -0.002500, -0.859698),(0.503385, -0.004330, -0.861278),(0.608354, -0.002500, -0.788163),(0.503385, -0.004330, -0.861278),(0.609474, -0.004330, -0.789611),(0.607945, -0.000000, -0.787633),(0.502122, -0.000000, -0.859120),(0.502460, -0.002500, -0.859698),(0.607945, -0.000000, -0.787633),(0.502460, -0.002500, -0.859698),(0.608354, -0.002500, -0.788163),(0.608354, 0.002500, -0.788163),(0.502460, 0.002500, -0.859698),(0.502122, -0.000000, -0.859120),(0.608354, 0.002500, -0.788163),(0.502122, -0.000000, -0.859120),(0.607945, -0.000000, -0.787633),(0.609474, 0.004330, -0.789611),(0.503385, 0.004330, -0.861278),(0.502460, 0.002500, -0.859698),(0.609474, 0.004330, -0.789611),(0.502460, 0.002500, -0.859698),(0.608354, 0.002500, -0.788163),(0.611002, 0.005000, -0.791589),(0.504648, 0.005000, -0.863435),(0.503385, 0.004330, -0.861278),(0.611002, 0.005000, -0.791589),(0.503385, 0.004330, -0.861278),(0.609474, 0.004330, -0.789611),(0.612531, 0.004330, -0.793567),(0.505911, 0.004330, -0.865593),(0.504648, 0.005000, -0.863435),(0.612531, 0.004330, -0.793567),(0.504648, 0.005000, -0.863435),(0.611002, 0.005000, -0.791589),(0.613650, 0.002500, -0.795015),(0.506836, 0.002500, -0.867172),(0.505911, 0.004330, -0.865593),(0.613650, 0.002500, -0.795015),(0.505911, 0.004330, -0.865593),(0.612531, 0.004330, -0.793567),(0.614060, -0.000000, -0.795545),(0.507174, -0.000000, -0.867750),(0.506836, 0.002500, -0.867172),(0.614060, -0.000000, -0.795545),(0.506836, 0.002500, -0.867172),(0.613650, 0.002500, -0.795015),(0.506836, -0.002500, -0.867172),(0.390863, -0.002500, -0.925381),(0.391124, -0.000000, -0.925998),(0.506836, -0.002500, -0.867172),(0.391124, -0.000000, -0.925998),(0.507174, -0.000000, -0.867750),(0.505911, -0.004330, -0.865593),(0.390151, -0.004330, -0.923695),(0.390863, -0.002500, -0.925381),(0.505911, -0.004330, -0.865593),(0.390863, -0.002500, -0.925381),(0.506836, -0.002500, -0.867172),(0.504648, -0.005000, -0.863435),(0.389178, -0.005000, -0.921392),(0.390151, -0.004330, -0.923695),(0.504648, -0.005000, -0.863435),(0.390151, -0.004330, -0.923695),(0.505911, -0.004330, -0.865593),(0.503385, -0.004330, -0.861278),(0.388205, -0.004330, -0.919090),(0.389178, -0.005000, -0.921392),(0.503385, -0.004330, -0.861278),(0.389178, -0.005000, -0.921392),(0.504648, -0.005000, -0.863435),(0.502460, -0.002500, -0.859698),(0.387492, -0.002500, -0.917404),(0.388205, -0.004330, -0.919090),(0.502460, -0.002500, -0.859698),(0.388205, -0.004330, -0.919090),(0.503385, -0.004330, -0.861278),(0.502122, -0.000000, -0.859120),(0.387232, -0.000000, -0.916787),(0.387492, -0.002500, -0.917404),(0.502122, -0.000000, -0.859120),(0.387492, -0.002500, -0.917404),(0.502460, -0.002500, -0.859698),(0.502460, 0.002500, -0.859698),(0.387492, 0.002500, -0.917404),(0.387232, -0.000000, -0.916787),(0.502460, 0.002500, -0.859698),(0.387232, -0.000000, -0.916787),(0.502122, -0.000000, -0.859120),(0.503385, 0.004330, -0.861278),(0.388205, 0.004330, -0.919090),(0.387492, 0.002500, -0.917404),(0.503385, 0.004330, -0.861278),(0.387492, 0.002500, -0.917404),(0.502460, 0.002500, -0.859698),(0.504648, 0.005000, -0.863435),(0.389178, 0.005000, -0.921392),(0.388205, 0.004330, -0.919090),(0.504648, 0.005000, -0.863435),(0.388205, 0.004330, -0.919090),(0.503385, 0.004330, -0.861278),(0.505911, 0.004330, -0.865593),(0.390151, 0.004330, -0.923695),(0.389178, 0.005000, -0.921392),(0.505911, 0.004330, -0.865593),(0.389178, 0.005000, -0.921392),(0.504648, 0.005000, -0.863435),(0.506836, 0.002500, -0.867172),(0.390863, 0.002500, -0.925381),(0.390151, 0.004330, -0.923695),(0.506836, 0.002500, -0.867172),(0.390151, 0.004330, -0.923695),(0.505911, 0.004330, -0.865593),(0.507174, -0.000000, -0.867750),(0.391124, -0.000000, -0.925998),(0.390863, 0.002500, -0.925381),(0.507174, -0.000000, -0.867750),(0.390863, 0.002500, -0.925381),(0.506836, 0.002500, -0.867172),(0.390863, -0.002500, -0.925381),(0.266931, -0.002500, -0.968443),(0.267108, -0.000000, -0.969089),(0.390863, -0.002500, -0.925381),(0.267108, -0.000000, -0.969089),(0.391124, -0.000000, -0.925998),(0.390151, -0.004330, -0.923695),(0.266446, -0.004330, -0.966679),(0.266931, -0.002500, -0.968443),(0.390151, -0.004330, -0.923695),(0.266931, -0.002500, -0.968443),(0.390863, -0.002500, -0.925381),(0.389178, -0.005000, -0.921392),(0.265784, -0.005000, -0.964268),(0.266446, -0.004330, -0.966679),(0.389178, -0.005000, -0.921392),(0.266446, -0.004330, -0.966679),(0.390151, -0.004330, -0.923695),(0.388205, -0.004330, -0.919090),(0.265122, -0.004330, -0.961857),(0.265784, -0.005000, -0.964268),(0.388205, -0.004330, -0.919090),(0.265784, -0.005000, -0.964268),(0.389178, -0.005000, -0.921392),(0.387492, -0.002500, -0.917404),(0.264637, -0.002500, -0.960092),(0.265122, -0.004330, -0.961857),(0.387492, -0.002500, -0.917404),(0.265122, -0.004330, -0.961857),(0.388205, -0.004330, -0.919090),(0.387232, -0.000000, -0.916787),(0.264460, -0.000000, -0.959446),(0.264637, -0.002500, -0.960092),(0.387232, -0.000000, -0.916787),(0.264637, -0.002500, -0.960092),(0.387492, -0.002500, -0.917404),(0.387492, 0.002500, -0.917404),(0.264637, 0.002500, -0.960092),(0.264460, -0.000000, -0.959446),(0.387492, 0.002500, -0.917404),(0.264460, -0.000000, -0.959446),(0.387232, -0.000000, -0.916787),(0.388205, 0.004330, -0.919090),(0.265122, 0.004330, -0.961857),(0.264637, 0.002500, -0.960092),(0.388205, 0.004330, -0.919090),(0.264637, 0.002500, -0.960092),(0.387492, 0.002500, -0.917404),(0.389178, 0.005000, -0.921392),(0.265784, 0.005000, -0.964268),(0.265122, 0.004330, -0.961857),(0.389178, 0.005000, -0.921392),(0.265122, 0.004330, -0.961857),(0.388205, 0.004330, -0.919090),(0.390151, 0.004330, -0.923695),(0.266446, 0.004330, -0.966679),(0.265784, 0.005000, -0.964268),(0.390151, 0.004330, -0.923695),(0.265784, 0.005000, -0.964268),(0.389178, 0.005000, -0.921392),(0.390863, 0.002500, -0.925381),(0.266931, 0.002500, -0.968443),(0.266446, 0.004330, -0.966679),(0.390863, 0.002500, -0.925381),(0.266446, 0.004330, -0.966679),(0.390151, 0.004330, -0.923695),(0.391124, -0.000000, -0.925998),(0.267108, -0.000000, -0.969089),(0.266931, 0.002500, -0.968443),(0.391124, -0.000000, -0.925998),(0.266931, 0.002500, -0.968443),(0.390863, 0.002500, -0.925381),(0.266931, -0.002500, -0.968443),(0.136241, -0.002500, -0.995159),(0.136331, -0.000000, -0.995823),(0.266931, -0.002500, -0.968443),(0.136331, -0.000000, -0.995823),(0.267108, -0.000000, -0.969089),(0.266446, -0.004330, -0.966679),(0.135996, -0.004330, -0.993345),(0.136241, -0.002500, -0.995159),(0.266446, -0.004330, -0.966679),(0.136241, -0.002500, -0.995159),(0.266931, -0.002500, -0.968443),(0.265784, -0.005000, -0.964268),(0.135661, -0.005000, -0.990868),(0.135996, -0.004330, -0.993345),(0.265784, -0.005000, -0.964268),(0.135996, -0.004330, -0.993345),(0.266446, -0.004330, -0.966679),(0.265122, -0.004330, -0.961857),(0.135325, -0.004330, -0.988391),(0.135661, -0.005000, -0.990868),(0.265122, -0.004330, -0.961857),(0.135661, -0.005000, -0.990868),(0.265784, -0.005000, -0.964268),(0.264637, -0.002500, -0.960092),(0.135080, -0.002500, -0.986577),(0.135325, -0.004330, -0.988391),(0.264637, -0.002500, -0.960092),(0.135325, -0.004330, -0.988391),(0.265122, -0.004330, -0.961857),(0.264460, -0.000000, -0.959446),(0.134990, -0.000000, -0.985913),(0.135080, -0.002500, -0.986577),(0.264460, -0.000000, -0.959446),(0.135080, -0.002500, -0.986577),(0.264637, -0.002500, -0.960092),(0.264637, 0.002500, -0.960092),(0.135080, 0.002500, -0.986577),(0.134990, -0.000000, -0.985913),(0.264637, 0.002500, -0.960092),(0.134990, -0.000000, -0.985913),(0.264460, -0.000000, -0.959446),(0.265122, 0.004330, -0.961857),(0.135325, 0.004330, -0.988391),(0.135080, 0.002500, -0.986577),(0.265122, 0.004330, -0.961857),(0.135080, 0.002500, -0.986577),(0.264637, 0.002500, -0.960092),(0.265784, 0.005000, -0.964268),(0.135661, 0.005000, -0.990868),(0.135325, 0.004330, -0.988391),(0.265784, 0.005000, -0.964268),(0.135325, 0.004330, -0.988391),(0.265122, 0.004330, -0.961857),(0.266446, 0.004330, -0.966679),(0.135996, 0.004330, -0.993345),(0.135661, 0.005000, -0.990868),(0.266446, 0.004330, -0.966679),(0.135661, 0.005000, -0.990868),(0.265784, 0.005000, -0.964268),(0.266931, 0.002500, -0.968443),(0.136241, 0.002500, -0.995159),(0.135996, 0.004330, -0.993345),(0.266931, 0.002500, -0.968443),(0.135996, 0.004330, -0.993345),(0.266446, 0.004330, -0.966679),(0.267108, -0.000000, -0.969089),(0.136331, -0.000000, -0.995823),(0.136241, 0.002500, -0.995159),(0.267108, -0.000000, -0.969089),(0.136241, 0.002500, -0.995159),(0.266931, 0.002500, -0.968443),(0.136241, -0.002500, -0.995159),(0.000000, -0.002500, -1.004330),(0.000000, -0.000000, -1.005000),(0.136241, -0.002500, -0.995159),(0.000000, -0.000000, -1.005000),(0.136331, -0.000000, -0.995823),(0.135996, -0.004330, -0.993345),(0.000000, -0.004330, -1.002500),(0.000000, -0.002500, -1.004330),(0.135996, -0.004330, -0.993345),(0.000000, -0.002500, -1.004330),(0.136241, -0.002500, -0.995159),(0.135661, -0.005000, -0.990868),(-0.000000, -0.005000, -1.000000),(0.000000, -0.004330, -1.002500),(0.135661, -0.005000, -0.990868),(0.000000, -0.004330, -1.002500),(0.135996, -0.004330, -0.993345),(0.135325, -0.004330, -0.988391),(-0.000000, -0.004330, -0.997500),(-0.000000, -0.005000, -1.000000),(0.135325, -0.004330, -0.988391),(-0.000000, -0.005000, -1.000000),(0.135661, -0.005000, -0.990868),(0.135080, -0.002500, -0.986577),(-0.000000, -0.002500, -0.995670),(-0.000000, -0.004330, -0.997500),(0.135080, -0.002500, -0.986577),(-0.000000, -0.004330, -0.997500),(0.135325, -0.004330, -0.988391),(0.134990, -0.000000, -0.985913),(-0.000000, -0.000000, -0.995000),(-0.000000, -0.002500, -0.995670),(0.134990, -0.000000, -0.985913),(-0.000000, -0.002500, -0.995670),(0.135080, -0.002500, -0.986577),(0.135080, 0.002500, -0.986577),(-0.000000, 0.002500, -0.995670),(-0.000000, -0.000000, -0.995000),(0.135080, 0.002500, -0.986577),(-0.000000, -0.000000, -0.995000),(0.134990, -0.000000, -0.985913),(0.135325, 0.004330, -0.988391),(-0.000000, 0.004330, -0.997500),(-0.000000, 0.002500, -0.995670),(0.135325, 0.004330, -0.988391),(-0.000000, 0.002500, -0.995670),(0.135080, 0.002500, -0.986577),(0.135661, 0.005000, -0.990868),(-0.000000, 0.005000, -1.000000),(-0.000000, 0.004330, -0.997500),(0.135661, 0.005000, -0.990868),(-0.000000, 0.004330, -0.997500),(0.135325, 0.004330, -0.988391),(0.135996, 0.004330, -0.993345),(0.000000, 0.004330, -1.002500),(-0.000000, 0.005000, -1.000000),(0.135996, 0.004330, -0.993345),(-0.000000, 0.005000, -1.000000),(0.135661, 0.005000, -0.990868),(0.136241, 0.002500, -0.995159),(0.000000, 0.002500, -1.004330),(0.000000, 0.004330, -1.002500),(0.136241, 0.002500, -0.995159),(0.000000, 0.004330, -1.002500),(0.135996, 0.004330, -0.993345),(0.136331, -0.000000, -0.995823),(0.000000, -0.000000, -1.005000),(0.000000, 0.002500, -1.004330),(0.136331, -0.000000, -0.995823),(0.000000, 0.002500, -1.004330),(0.136241, 0.002500, -0.995159),(-0.000000, -0.002000, -0.803464),(-0.108993, -0.002000, -0.796127),(-0.109065, -0.000000, -0.796658),(-0.000000, -0.002000, -0.803464),(-0.109065, -0.000000, -0.796658),(-0.000000, -0.000000, -0.804000),(-0.000000, -0.003464, -0.802000),(-0.108797, -0.003464, -0.794676),(-0.108993, -0.002000, -0.796127),(-0.000000, -0.003464, -0.802000),(-0.108993, -0.002000, -0.796127),(-0.000000, -0.002000, -0.803464),(-0.000000, -0.004000, -0.800000),(-0.108528, -0.004000, -0.792694),(-0.108797, -0.003464, -0.794676),(-0.000000, -0.004000, -0.800000),(-0.108797, -0.003464, -0.794676),(-0.000000, -0.003464, -0.802000),(0.000000, -0.003464, -0.798000),(-0.108260, -0.003464, -0.790712),(-0.108528, -0.004000, -0.792694),(0.000000, -0.003464, -0.798000),(-0.108528, -0.004000, -0.792694),(-0.000000, -0.004000, -0.800000),(0.000000, -0.002000, -0.796536),(-0.108064, -0.002000, -0.789262),(-0.108260, -0.003464, -0.790712),(0.000000, -0.002000, -0.796536),(-0.108260, -0.003464, -0.790712),(0.000000, -0.003464, -0.798000),(0.000000, -0.000000, -0.796000),(-0.107992, -0.000000, -0.788731),(-0.108064, -0.002000, -0.789262),(0.000000, -0.000000, -0.796000),(-0.108064, -0.002000, -0.789262),(0.000000, -0.002000, -0.796536),(0.000000, 0.002000, -0.796536),(-0.108064, 0.002000, -0.789262),(-0.107992, -0.000000, -0.788731),(0.000000, 0.002000, -0.796536),(-0.107992, -0.000000, -0.788731),(0.000000, -0.000000, -0.796000),(0.000000, 0.003464, -0.798000),(-0.108260, 0.003464, -0.790712),(-0.108064, 0.002000, -0.789262),(0.000000, 0.003464, -0.798000),(-0.108064, 0.002000, -0.789262),(0.000000, 0.002000, -0.796536),(-0.000000, 0.004000, -0.800000),(-0.108528, 0.004000, -0.792694),(-0.108260, 0.003464, -0.790712),(-0.000000, 0.004000, -0.800000),(-0.108260, 0.003464, -0.790712),(0.000000, 0.003464, -0.798000),(-0.000000, 0.003464, -0.802000),(-0.108797, 0.003464, -0.794676),(-0.108528, 0.004000, -0.792694),(-0.000000, 0.003464, -0.802000),(-0.108528, 0.004000, -0.792694),(-0.000000, 0.004000, -0.800000),(-0.000000, 0.002000, -0.803464),(-0.108993, 0.002000, -0.796127),(-0.108797, 0.003464, -0.794676),(-0.000000, 0.002000, -0.803464),(-0.108797, 0.003464, -0.794676),(-0.000000, 0.003464, -0.802000),(-0.000000, -0.000000, -0.804000),(-0.109065, -0.000000, -0.796658),(-0.108993, 0.002000, -0.796127),(-0.000000, -0.000000, -0.804000),(-0.108993, 0.002000, -0.796127),(-0.000000, 0.002000, -0.803464),(-0.108993, -0.002000, -0.796127),(-0.213545, -0.002000, -0.774755),(-0.213687, -0.000000, -0.775271),(-0.108993, -0.002000, -0.796127),(-0.213687, -0.000000, -0.775271),(-0.109065, -0.000000, -0.796658),(-0.108797, -0.003464, -0.794676),(-0.213157, -0.003464, -0.773343),(-0.213545, -0.002000, -0.774755),(-0.108797, -0.003464, -0.794676),(-0.213545, -0.002000, -0.774755),(-0.108993, -0.002000, -0.796127),(-0.108528, -0.004000, -0.792694),(-0.212627, -0.004000, -0.771414),(-0.213157, -0.003464, -0.773343),(-0.108528, -0.004000, -0.792694),(-0.213157, -0.003464, -0.773343),(-0.108797, -0.003464, -0.794676),(-0.108260, -0.003464, -0.790712),(-0.212098, -0.003464, -0.769486),(-0.212627, -0.004000, -0.771414),(-0.108260, -0.003464, -0.790712),(-0.212627, -0.004000, -0.771414),(-0.108528, -0.004000, -0.792694),(-0.108064, -0.002000, -0.789262),(-0.211710, -0.002000, -0.768074),(-0.212098, -0.003464, -0.769486),(-0.108064, -0.002000, -0.789262),(-0.212098, -0.003464, -0.769486),(-0.108260, -0.003464, -0.790712),(-0.107992, -0.000000, -0.788731),(-0.211568, -0.000000, -0.767557),(-0.211710, -0.002000, -0.768074),(-0.107992, -0.000000, -0.788731),(-0.211710, -0.002000, -0.768074),(-0.108064, -0.002000, -0.789262),(-0.108064, 0.002000, -0.789262),(-0.211710, 0.002000, -0.768074),(-0.211568, -0.000000, -0.767557),(-0.108064, 0.002000, -0.789262),(-0.211568, -0.000000, -0.767557),(-0.107992, -0.000000, -0.788731),(-0.108260, 0.003464, -0.790712),(-0.212098, 0.003464, -0.769486),(-0.211710, 0.002000, -0.768074),(-0.108260, 0.003464, -0.790712),(-0.211710, 0.002000, -0.768074),(-0.108064, 0.002000, -0.789262),(-0.108528, 0.004000, -0.792694),(-0.212627, 0.004000, -0.771414),(-0.212098, 0.003464, -0.769486),(-0.108528, 0.004000, -0.792694),(-0.212098, 0.003464, -0.769486),(-0.108260, 0.003464, -0.790712),(-0.108797, 0.003464, -0.794676),(-0.213157, 0.003464, -0.773343),(-0.212627, 0.004000, -0.771414),(-0.108797, 0.003464, -0.794676),(-0.212627, 0.004000, -0.771414),(-0.108528, 0.004000, -0.792694),(-0.108993, 0.002000, -0.796127),(-0.213545, 0.002000, -0.774755),(-0.213157, 0.003464, -0.773343),(-0.108993, 0.002000, -0.796127),(-0.213157, 0.003464, -0.773343),(-0.108797, 0.003464, -0.794676),(-0.109065, -0.000000, -0.796658),(-0.213687, -0.000000, -0.775271),(-0.213545, 0.002000, -0.774755),(-0.109065, -0.000000, -0.796658),(-0.213545, 0.002000, -0.774755),(-0.108993, 0.002000, -0.796127),(-0.213545, -0.002000, -0.774755),(-0.312691, -0.002000, -0.740305),(-0.312899, -0.000000, -0.740799),(-0.213545, -0.002000, -0.774755),(-0.312899, -0.000000, -0.740799),(-0.213687, -0.000000, -0.775271),(-0.213157, -0.003464, -0.773343),(-0.312121, -0.003464, -0.738956),(-0.312691, -0.002000, -0.740305),(-0.213157, -0.003464, -0.773343),(-0.312691, -0.002000, -0.740305),(-0.213545, -0.002000, -0.774755),(-0.212627, -0.004000, -0.771414),(-0.311342, -0.004000, -0.737114),(-0.312121, -0.003464, -0.738956),(-0.212627, -0.004000, -0.771414),(-0.312121, -0.003464, -0.738956),(-0.213157, -0.003464, -0.773343),(-0.212098, -0.003464, -0.769486),(-0.310564, -0.003464, -0.735272),(-0.311342, -0.004000, -0.737114),(-0.212098, -0.003464, -0.769486),(-0.311342, -0.004000, -0.737114),(-0.212627, -0.004000, -0.771414),(-0.211710, -0.002000, -0.768074),(-0.309994, -0.002000, -0.733923),(-0.310564, -0.003464, -0.735272),(-0.211710, -0.002000, -0.768074),(-0.310564, -0.003464, -0.735272),(-0.212098, -0.003464, -0.769486),(-0.211568, -0.000000, -0.767557),(-0.309785, -0.000000, -0.733429),(-0.309994, -0.002000, -0.733923),(-0.211568, -0.000000, -0.767557),(-0.309994, -0.002000, -0.733923),(-0.211710, -0.002000, -0.768074),(-0.211710, 0.002000, -0.768074),(-0.309994, 0.002000, -0.733923),(-0.309785, -0.000000, -0.733429),(-0.211710, 0.002000, -0.768074),(-0.309785, -0.000000, -0.733429),(-0.211568, -0.000000, -0.767557),(-0.212098, 0.003464, -0.769486),(-0.310564, 0.003464, -0.735272),(-0.309994, 0.002000, -0.733923),(-0.212098, 0.003464, -0.769486),(-0.309994, 0.002000, -0.733923),(-0.211710, 0.002000, -0.768074),(-0.212627, 0.004000, -0.771414),(-0.311342, 0.004000, -0.737114),(-0.310564, 0.003464, -0.735272),(-0.212627, 0.004000, -0.771414),(-0.310564, 0.003464, -0.735272),(-0.212098, 0.003464, -0.769486),(-0.213157, 0.003464, -0.773343),(-0.312121, 0.003464, -0.738956),(-0.311342, 0.004000, -0.737114),(-0.213157, 0.003464, -0.773343),(-0.311342, 0.004000, -0.737114),(-0.212627, 0.004000, -0.771414),(-0.213545, 0.002000, -0.774755),(-0.312691, 0.002000, -0.740305),(-0.312121, 0.003464, -0.738956),(-0.213545, 0.002000, -0.774755),(-0.312121, 0.003464, -0.738956),(-0.213157, 0.003464, -0.773343),(-0.213687, -0.000000, -0.775271),(-0.312899, -0.000000, -0.740799),(-0.312691, 0.002000, -0.740305),(-0.213687, -0.000000, -0.775271),(-0.312691, 0.002000, -0.740305),(-0.213545, 0.002000, -0.774755),(-0.312691, -0.002000, -0.740305),(-0.405469, -0.002000, -0.693738),(-0.405740, -0.000000, -0.694200),(-0.312691, -0.002000, -0.740305),(-0.405740, -0.000000, -0.694200),(-0.312899, -0.000000, -0.740799),(-0.312121, -0.003464, -0.738956),(-0.404729, -0.003464, -0.692474),(-0.405469, -0.002000, -0.693738),(-0.312121, -0.003464, -0.738956),(-0.405469, -0.002000, -0.693738),(-0.312691, -0.002000, -0.740305),(-0.311342, -0.004000, -0.737114),(-0.403719, -0.004000, -0.690748),(-0.404729, -0.003464, -0.692474),(-0.311342, -0.004000, -0.737114),(-0.404729, -0.003464, -0.692474),(-0.312121, -0.003464, -0.738956),(-0.310564, -0.003464, -0.735272),(-0.402708, -0.003464, -0.689022),(-0.403719, -0.004000, -0.690748),(-0.310564, -0.003464, -0.735272),(-0.403719, -0.004000, -0.690748),(-0.311342, -0.004000, -0.737114),(-0.309994, -0.002000, -0.733923),(-0.401968, -0.002000, -0.687759),(-0.402708, -0.003464, -0.689022),(-0.309994, -0.002000, -0.733923),(-0.402708, -0.003464, -0.689022),(-0.310564, -0.003464, -0.735272),(-0.309785, -0.000000, -0.733429),(-0.401698, -0.000000, -0.687296),(-0.401968, -0.002000, -0.687759),(-0.309785, -0.000000, -0.733429),(-0.401968, -0.002000, -0.687759),(-0.309994, -0.002000, -0.733923),(-0.309994, 0.002000, -0.733923),(-0.401968, 0.002000, -0.687759),(-0.401698, -0.000000, -0.687296),(-0.309994, 0.002000, -0.733923),(-0.401698, -0.000000, -0.687296),(-0.309785, -0.000000, -0.733429),(-0.310564, 0.003464, -0.735272),(-0.402708, 0.003464, -0.689022),(-0.401968, 0.002000, -0.687759),(-0.310564, 0.003464, -0.735272),(-0.401968, 0.002000, -0.687759),(-0.309994, 0.002000, -0.733923),(-0.311342, 0.004000, -0.737114),(-0.403719, 0.004000, -0.690748),(-0.402708, 0.003464, -0.689022),(-0.311342, 0.004000, -0.737114),(-0.402708, 0.003464, -0.689022),(-0.310564, 0.003464, -0.735272),(-0.312121, 0.003464, -0.738956),(-0.404729, 0.003464, -0.692474),(-0.403719, 0.004000, -0.690748),(-0.312121, 0.003464, -0.738956),(-0.403719, 0.004000, -0.690748),(-0.311342, 0.004000, -0.737114),(-0.312691, 0.002000, -0.740305),(-0.405469, 0.002000, -0.693738),(-0.404729, 0.003464, -0.692474),(-0.312691, 0.002000, -0.740305),(-0.404729, 0.003464, -0.692474),(-0.312121, 0.003464, -0.738956),(-0.312899, -0.000000, -0.740799),(-0.405740, -0.000000, -0.694200),(-0.405469, 0.002000, -0.693738),(-0.312899, -0.000000, -0.740799),(-0.405469, 0.002000, -0.693738),(-0.312691, 0.002000, -0.740305),(-0.405469, -0.002000, -0.693738),(-0.490920, -0.002000, -0.636012),(-0.491248, -0.000000, -0.636436),(-0.405469, -0.002000, -0.693738),(-0.491248, -0.000000, -0.636436),(-0.405740, -0.000000, -0.694200),(-0.404729, -0.003464, -0.692474),(-0.490025, -0.003464, -0.634854),(-0.490920, -0.002000, -0.636012),(-0.404729, -0.003464, -0.692474),(-0.490920, -0.002000, -0.636012),(-0.405469, -0.002000, -0.693738),(-0.403719, -0.004000, -0.690748),(-0.488802, -0.004000, -0.633271),(-0.490025, -0.003464, -0.634854),(-0.403719, -0.004000, -0.690748),(-0.490025, -0.003464, -0.634854),(-0.404729, -0.003464, -0.692474),(-0.402708, -0.003464, -0.689022),(-0.487579, -0.003464, -0.631689),(-0.488802, -0.004000, -0.633271),(-0.402708, -0.003464, -0.689022),(-0.488802, -0.004000, -0.633271),(-0.403719, -0.004000, -0.690748),(-0.401968, -0.002000, -0.687759),(-0.486684, -0.002000, -0.630530),(-0.487579, -0.003464, -0.631689),(-0.401968, -0.002000, -0.687759),(-0.487579, -0.003464, -0.631689),(-0.402708, -0.003464, -0.689022),(-0.401698, -0.000000, -0.687296),(-0.486356, -0.000000, -0.630106),(-0.486684, -0.002000, -0.630530),(-0.401698, -0.000000, -0.687296),(-0.486684, -0.002000, -0.630530),(-0.401968, -0.002000, -0.687759),(-0.401968, 0.002000, -0.687759),(-0.486684, 0.002000, -0.630530),(-0.486356, -0.000000, -0.630106),(-0.401968, 0.002000, -0.687759),(-0.486356, -0.000000, -0.630106),(-0.401698, -0.000000, -0.687296),(-0.402708, 0.003464, -0.689022),(-0.487579, 0.003464, -0.631689),(-0.486684, 0.002000, -0.630530),(-0.402708, 0.003464, -0.689022),(-0.486684, 0.002000, -0.630530),(-0.401968, 0.002000, -0.687759),(-0.403719, 0.004000, -0.690748),(-0.488802, 0.004000, -0.633271),(-0.487579, 0.003464, -0.631689),(-0.403719, 0.004000, -0.690748),(-0.487579, 0.003464, -0.631689),(-0.402708, 0.003464, -0.689022),(-0.404729, 0.003464, -0.692474),(-0.490025, 0.003464, -0.634854),(-0.488802, 0.004000, -0.633271),(-0.404729, 0.003464, -0.692474),(-0.488802, 0.004000, -0.633271),(-0.403719, 0.004000, -0.690748),(-0.405469, 0.002000, -0.693738),(-0.490920, 0.002000, -0.636012),(-0.490025, 0.003464, -0.634854),(-0.405469, 0.002000, -0.693738),(-0.490025, 0.003464, -0.634854),(-0.404729, 0.003464, -0.692474),(-0.405740, -0.000000, -0.694200),(-0.491248, -0.000000, -0.636436),(-0.490920, 0.002000, -0.636012),(-0.405740, -0.000000, -0.694200),(-0.490920, 0.002000, -0.636012),(-0.405469, 0.002000, -0.693738),(-0.490920, -0.002000, -0.636012),(-0.568087, -0.002000, -0.568087),(-0.568466, -0.000000, -0.568466),(-0.490920, -0.002000, -0.636012),(-0.568466, -0.000000, -0.568466),(-0.491248, -0.000000, -0.636436),(-0.490025, -0.003464, -0.634854),(-0.567052, -0.003464, -0.567052),(-0.568087, -0.002000, -0.568087),(-0.490025, -0.003464, -0.634854),(-0.568087, -0.002000, -0.568087),(-0.490920, -0.002000, -0.636012),(-0.488802, -0.004000, -0.633271),(-0.565638, -0.004000, -0.565637),(-0.567052, -0.003464, -0.567052),(-0.488802, -0.004000, -0.633271),(-0.567052, -0.003464, -0.567052),(-0.490025, -0.003464, -0.634854),(-0.487579, -0.003464, -0.631689),(-0.564223, -0.003464, -0.564223),(-0.565638, -0.004000, -0.565637),(-0.487579, -0.003464, -0.631689),(-0.565638, -0.004000, -0.565637),(-0.488802, -0.004000, -0.633271),(-0.486684, -0.002000, -0.630530),(-0.563188, -0.002000, -0.563188),(-0.564223, -0.003464, -0.564223),(-0.486684, -0.002000, -0.630530),(-0.564223, -0.003464, -0.564223),(-0.487579, -0.003464, -0.631689),(-0.486356, -0.000000, -0.630106),(-0.562809, -0.000000, -0.562809),(-0.563188, -0.002000, -0.563188),(-0.486356, -0.000000, -0.630106),(-0.563188, -0.002000, -0.563188),(-0.486684, -0.002000, -0.630530),(-0.486684, 0.002000, -0.630530),(-0.563188, 0.002000, -0.563188),(-0.562809, -0.000000, -0.562809),(-0.486684, 0.002000, -0.630530),(-0.562809, -0.000000, -0.562809),(-0.486356, -0.000000, -0.630106),(-0.487579, 0.003464, -0.631689),(-0.564223, 0.003464, -0.564223),(-0.563188, 0.002000, -0.563188),(-0.487579, 0.003464, -0.631689),(-0.563188, 0.002000, -0.563188),(-0.486684, 0.002000, -0.630530),(-0.488802, 0.004000, -0.633271),(-0.565638, 0.004000, -0.565637),(-0.564223, 0.003464, -0.564223),(-0.488802, 0.004000, -0.633271),(-0.564223, 0.003464, -0.564223),(-0.487579, 0.003464, -0.631689),(-0.490025, 0.003464, -0.634854),(-0.567052, 0.003464, -0.567052),(-0.565638, 0.004000, -0.565637),(-0.490025, 0.003464, -0.634854),(-0.565638, 0.004000, -0.565637),(-0.488802, 0.004000, -0.633271),(-0.490920, 0.002000, -0.636012),(-0.568087, 0.002000, -0.568087),(-0.567052, 0.003464, -0.567052),(-0.490920, 0.002000, -0.636012),(-0.567052, 0.003464, -0.567052),(-0.490025, 0.003464, -0.634854),(-0.491248, -0.000000, -0.636436),(-0.568466, -0.000000, -0.568466),(-0.568087, 0.002000, -0.568087),(-0.491248, -0.000000, -0.636436),(-0.568087, 0.002000, -0.568087),(-0.490920, 0.002000, -0.636012),(-0.568087, -0.002000, -0.568087),(-0.636012, -0.002000, -0.490920),(-0.636436, -0.000000, -0.491248),(-0.568087, -0.002000, -0.568087),(-0.636436, -0.000000, -0.491248),(-0.568466, -0.000000, -0.568466),(-0.567052, -0.003464, -0.567052),(-0.634854, -0.003464, -0.490025),(-0.636012, -0.002000, -0.490920),(-0.567052, -0.003464, -0.567052),(-0.636012, -0.002000, -0.490920),(-0.568087, -0.002000, -0.568087),(-0.565638, -0.004000, -0.565637),(-0.633271, -0.004000, -0.488802),(-0.634854, -0.003464, -0.490025),(-0.565638, -0.004000, -0.565637),(-0.634854, -0.003464, -0.490025),(-0.567052, -0.003464, -0.567052),(-0.564223, -0.003464, -0.564223),(-0.631689, -0.003464, -0.487579),(-0.633271, -0.004000, -0.488802),(-0.564223, -0.003464, -0.564223),(-0.633271, -0.004000, -0.488802),(-0.565638, -0.004000, -0.565637),(-0.563188, -0.002000, -0.563188),(-0.630530, -0.002000, -0.486684),(-0.631689, -0.003464, -0.487579),(-0.563188, -0.002000, -0.563188),(-0.631689, -0.003464, -0.487579),(-0.564223, -0.003464, -0.564223),(-0.562809, -0.000000, -0.562809),(-0.630106, -0.000000, -0.486356),(-0.630530, -0.002000, -0.486684),(-0.562809, -0.000000, -0.562809),(-0.630530, -0.002000, -0.486684),(-0.563188, -0.002000, -0.563188),(-0.563188, 0.002000, -0.563188),(-0.630530, 0.002000, -0.486684),(-0.630106, -0.000000, -0.486356),(-0.563188, 0.002000, -0.563188),(-0.630106, -0.000000, -0.486356),(-0.562809, -0.000000, -0.562809),(-0.564223, 0.003464, -0.564223),(-0.631689, 0.003464, -0.487579),(-0.630530, 0.002000, -0.486684),(-0.564223, 0.003464, -0.564223),(-0.630530, 0.002000, -0.486684),(-0.563188, 0.002000, -0.563188),(-0.565638, 0.004000, -0.565637),(-0.633271, 0.004000, -0.488802),(-0.631689, 0.003464, -0.487579),(-0.565638, 0.004000, -0.565637),(-0.631689, 0.003464, -0.487579),(-0.564223, 0.003464, -0.564223),(-0.567052, 0.003464, -0.567052),(-0.634854, 0.003464, -0.490025),(-0.633271, 0.004000, -0.488802),(-0.567052, 0.003464, -0.567052),(-0.633271, 0.004000, -0.488802),(-0.565638, 0.004000, -0.565637),(-0.568087, 0.002000, -0.568087),(-0.636012, 0.002000, -0.490920),(-0.634854, 0.003464, -0.490025),(-0.568087, 0.002000, -0.568087),(-0.634854, 0.003464, -0.490025),(-0.567052, 0.003464, -0.567052),(-0.568466, -0.000000, -0.568466),(-0.636436, -0.000000, -0.491248),(-0.636012, 0.002000, -0.490920),(-0.568466, -0.000000, -0.568466),(-0.636012, 0.002000, -0.490920),(-0.568087, 0.002000, -0.568087),(-0.636012, -0.002000, -0.490920),(-0.693738, -0.002000, -0.405469),(-0.694200, -0.000000, -0.405739),(-0.636012, -0.002000, -0.490920),(-0.694200, -0.000000, -0.405739),(-0.636436, -0.000000, -0.491248),(-0.634854, -0.003464, -0.490025),(-0.692474, -0.003464, -0.404729),(-0.693738, -0.002000, -0.405469),(-0.634854, -0.003464, -0.490025),(-0.693738, -0.002000, -0.405469),(-0.636012, -0.002000, -0.490920),(-0.633271, -0.004000, -0.488802),(-0.690748, -0.004000, -0.403719),(-0.692474, -0.003464, -0.404729),(-0.633271, -0.004000, -0.488802),(-0.692474, -0.003464, -0.404729),(-0.634854, -0.003464, -0.490025),(-0.631689, -0.003464, -0.487579),(-0.689022, -0.003464, -0.402708),(-0.690748, -0.004000, -0.403719),(-0.631689, -0.003464, -0.487579),(-0.690748, -0.004000, -0.403719),(-0.633271, -0.004000, -0.488802),(-0.630530, -0.002000, -0.486684),(-0.687759, -0.002000, -0.401968),(-0.689022, -0.003464, -0.402708),(-0.630530, -0.002000, -0.486684),(-0.689022, -0.003464, -0.402708),(-0.631689, -0.003464, -0.487579),(-0.630106, -0.000000, -0.486356),(-0.687296, -0.000000, -0.401698),(-0.687759, -0.002000, -0.401968),(-0.630106, -0.000000, -0.486356),(-0.687759, -0.002000, -0.401968),(-0.630530, -0.002000, -0.486684),(-0.630530, 0.002000, -0.486684),(-0.687759, 0.002000, -0.401968),(-0.687296, -0.000000, -0.401698),(-0.630530, 0.002000, -0.486684),(-0.687296, -0.000000, -0.401698),(-0.630106, -0.000000, -0.486356),(-0.631689, 0.003464, -0.487579),(-0.689022, 0.003464, -0.402708),(-0.687759, 0.002000, -0.401968),(-0.631689, 0.003464, -0.487579),(-0.687759, 0.002000, -0.401968),(-0.630530, 0.002000, -0.486684),(-0.633271, 0.004000, -0.488802),(-0.690748, 0.004000, -0.403719),(-0.689022, 0.003464, -0.402708),(-0.633271, 0.004000, -0.488802),(-0.689022, 0.003464, -0.402708),(-0.631689, 0.003464, -0.487579),(-0.634854, 0.003464, -0.490025),(-0.692474, 0.003464, -0.404729),(-0.690748, 0.004000, -0.403719),(-0.634854, 0.003464, -0.490025),(-0.690748, 0.004000, -0.403719),(-0.633271, 0.004000, -0.488802),(-0.636012, 0.002000, -0.490920),(-0.693738, 0.002000, -0.405469),(-0.692474, 0.003464, -0.404729),(-0.636012, 0.002000, -0.490920),(-0.692474, 0.003464, -0.404729),(-0.634854, 0.003464, -0.490025),(-0.636436, -0.000000, -0.491248),(-0.694200, -0.000000, -0.405739),(-0.693738, 0.002000, -0.405469),(-0.636436, -0.000000, -0.491248),(-0.693738, 0.002000, -0.405469),(-0.636012, 0.002000, -0.490920),(-0.693738, -0.002000, -0.405469),(-0.740305, -0.002000, -0.312691),(-0.740799, -0.000000, -0.312899),(-0.693738, -0.002000, -0.405469),(-0.740799, -0.000000, -0.312899),(-0.694200, -0.000000, -0.405739),(-0.692474, -0.003464, -0.404729),(-0.738956, -0.003464, -0.312121),(-0.740305, -0.002000, -0.312691),(-0.692474, -0.003464, -0.404729),(-0.740305, -0.002000, -0.312691),(-0.693738, -0.002000, -0.405469),(-0.690748, -0.004000, -0.403719),(-0.737114, -0.004000, -0.311342),(-0.738956, -0.003464, -0.312121),(-0.690748, -0.004000, -0.403719),(-0.738956, -0.003464, -0.312121),(-0.692474, -0.003464, -0.404729),(-0.689022, -0.003464, -0.402708),(-0.735272, -0.003464, -0.310564),(-0.737114, -0.004000, -0.311342),(-0.689022, -0.003464, -0.402708),(-0.737114, -0.004000, -0.311342),(-0.690748, -0.004000, -0.403719),(-0.687759, -0.002000, -0.401968),(-0.733923, -0.002000, -0.309994),(-0.735272, -0.003464, -0.310564),(-0.687759, -0.002000, -0.401968),(-0.735272, -0.003464, -0.310564),(-0.689022, -0.003464, -0.402708),(-0.687296, -0.000000, -0.401698),(-0.733430, -0.000000, -0.309785),(-0.733923, -0.002000, -0.309994),(-0.687296, -0.000000, -0.401698),(-0.733923, -0.002000, -0.309994),(-0.687759, -0.002000, -0.401968),(-0.687759, 0.002000, -0.401968),(-0.733923, 0.002000, -0.309994),(-0.733430, -0.000000, -0.309785),(-0.687759, 0.002000, -0.401968),(-0.733430, -0.000000, -0.309785),(-0.687296, -0.000000, -0.401698),(-0.689022, 0.003464, -0.402708),(-0.735272, 0.003464, -0.310564),(-0.733923, 0.002000, -0.309994),(-0.689022, 0.003464, -0.402708),(-0.733923, 0.002000, -0.309994),(-0.687759, 0.002000, -0.401968),(-0.690748, 0.004000, -0.403719),(-0.737114, 0.004000, -0.311342),(-0.735272, 0.003464, -0.310564),(-0.690748, 0.004000, -0.403719),(-0.735272, 0.003464, -0.310564),(-0.689022, 0.003464, -0.402708),(-0.692474, 0.003464, -0.404729),(-0.738956, 0.003464, -0.312121),(-0.737114, 0.004000, -0.311342),(-0.692474, 0.003464, -0.404729),(-0.737114, 0.004000, -0.311342),(-0.690748, 0.004000, -0.403719),(-0.693738, 0.002000, -0.405469),(-0.740305, 0.002000, -0.312691),(-0.738956, 0.003464, -0.312121),(-0.693738, 0.002000, -0.405469),(-0.738956, 0.003464, -0.312121),(-0.692474, 0.003464, -0.404729),(-0.694200, -0.000000, -0.405739),(-0.740799, -0.000000, -0.312899),(-0.740305, 0.002000, -0.312691),(-0.694200, -0.000000, -0.405739),(-0.740305, 0.002000, -0.312691),(-0.693738, 0.002000, -0.405469),(-0.740305, -0.002000, -0.312691),(-0.774755, -0.002000, -0.213545),(-0.775272, -0.000000, -0.213687),(-0.740305, -0.002000, -0.312691),(-0.775272, -0.000000, -0.213687),(-0.740799, -0.000000, -0.312899),(-0.738956, -0.003464, -0.312121),(-0.773343, -0.003464, -0.213157),(-0.774755, -0.002000, -0.213545),(-0.738956, -0.003464, -0.312121),(-0.774755, -0.002000, -0.213545),(-0.740305, -0.002000, -0.312691),(-0.737114, -0.004000, -0.311342),(-0.771414, -0.004000, -0.212627),(-0.773343, -0.003464, -0.213157),(-0.737114, -0.004000, -0.311342),(-0.773343, -0.003464, -0.213157),(-0.738956, -0.003464, -0.312121),(-0.735272, -0.003464, -0.310564),(-0.769486, -0.003464, -0.212098),(-0.771414, -0.004000, -0.212627),(-0.735272, -0.003464, -0.310564),(-0.771414, -0.004000, -0.212627),(-0.737114, -0.004000, -0.311342),(-0.733923, -0.002000, -0.309994),(-0.768074, -0.002000, -0.211710),(-0.769486, -0.003464, -0.212098),(-0.733923, -0.002000, -0.309994),(-0.769486, -0.003464, -0.212098),(-0.735272, -0.003464, -0.310564),(-0.733430, -0.000000, -0.309785),(-0.767557, -0.000000, -0.211568),(-0.768074, -0.002000, -0.211710),(-0.733430, -0.000000, -0.309785),(-0.768074, -0.002000, -0.211710),(-0.733923, -0.002000, -0.309994),(-0.733923, 0.002000, -0.309994),(-0.768074, 0.002000, -0.211710),(-0.767557, -0.000000, -0.211568),(-0.733923, 0.002000, -0.309994),(-0.767557, -0.000000, -0.211568),(-0.733430, -0.000000, -0.309785),(-0.735272, 0.003464, -0.310564),(-0.769486, 0.003464, -0.212098),(-0.768074, 0.002000, -0.211710),(-0.735272, 0.003464, -0.310564),(-0.768074, 0.002000, -0.211710),(-0.733923, 0.002000, -0.309994),(-0.737114, 0.004000, -0.311342),(-0.771414, 0.004000, -0.212627),(-0.769486, 0.003464, -0.212098),(-0.737114, 0.004000, -0.311342),(-0.769486, 0.003464, -0.212098),(-0.735272, 0.003464, -0.310564),(-0.738956, 0.003464, -0.312121),(-0.773343, 0.003464, -0.213157),(-0.771414, 0.004000, -0.212627),(-0.738956, 0.003464, -0.312121),(-0.771414, 0.004000, -0.212627),(-0.737114, 0.004000, -0.311342),(-0.740305, 0.002000, -0.312691),(-0.774755, 0.002000, -0.213545),(-0.773343, 0.003464, -0.213157),(-0.740305, 0.002000, -0.312691),(-0.773343, 0.003464, -0.213157),(-0.738956, 0.003464, -0.312121),(-0.740799, -0.000000, -0.312899),(-0.775272, -0.000000, -0.213687),(-0.774755, 0.002000, -0.213545),(-0.740799, -0.000000, -0.312899),(-0.774755, 0.002000, -0.213545),(-0.740305, 0.002000, -0.312691),(-0.774755, -0.002000, -0.213545),(-0.796127, -0.002000, -0.108993),(-0.796658, -0.000000, -0.109064),(-0.774755, -0.002000, -0.213545),(-0.796658, -0.000000, -0.109064),(-0.775272, -0.000000, -0.213687),(-0.773343, -0.003464, -0.213157),(-0.794677, -0.003464, -0.108796),(-0.796127, -0.002000, -0.108993),(-0.773343, -0.003464, -0.213157),(-0.796127, -0.002000, -0.108993),(-0.774755, -0.002000, -0.213545),(-0.771414, -0.004000, -0.212627),(-0.792695, -0.004000, -0.108528),(-0.794677, -0.003464, -0.108796),(-0.771414, -0.004000, -0.212627),(-0.794677, -0.003464, -0.108796),(-0.773343, -0.003464, -0.213157),(-0.769486, -0.003464, -0.212098),(-0.790713, -0.003464, -0.108260),(-0.792695, -0.004000, -0.108528),(-0.769486, -0.003464, -0.212098),(-0.792695, -0.004000, -0.108528),(-0.771414, -0.004000, -0.212627),(-0.768074, -0.002000, -0.211710),(-0.789262, -0.002000, -0.108064),(-0.790713, -0.003464, -0.108260),(-0.768074, -0.002000, -0.211710),(-0.790713, -0.003464, -0.108260),(-0.769486, -0.003464, -0.212098),(-0.767557, -0.000000, -0.211568),(-0.788731, -0.000000, -0.107992),(-0.789262, -0.002000, -0.108064),(-0.767557, -0.000000, -0.211568),(-0.789262, -0.002000, -0.108064),(-0.768074, -0.002000, -0.211710),(-0.768074, 0.002000, -0.211710),(-0.789262, 0.002000, -0.108064),(-0.788731, -0.000000, -0.107992),(-0.768074, 0.002000, -0.211710),(-0.788731, -0.000000, -0.107992),(-0.767557, -0.000000, -0.211568),(-0.769486, 0.003464, -0.212098),(-0.790713, 0.003464, -0.108260),(-0.789262, 0.002000, -0.108064),(-0.769486, 0.003464, -0.212098),(-0.789262, 0.002000, -0.108064),(-0.768074, 0.002000, -0.211710),(-0.771414, 0.004000, -0.212627),(-0.792695, 0.004000, -0.108528),(-0.790713, 0.003464, -0.108260),(-0.771414, 0.004000, -0.212627),(-0.790713, 0.003464, -0.108260),(-0.769486, 0.003464, -0.212098),(-0.773343, 0.003464, -0.213157),(-0.794677, 0.003464, -0.108796),(-0.792695, 0.004000, -0.108528),(-0.773343, 0.003464, -0.213157),(-0.792695, 0.004000, -0.108528),(-0.771414, 0.004000, -0.212627),(-0.774755, 0.002000, -0.213545),(-0.796127, 0.002000, -0.108993),(-0.794677, 0.003464, -0.108796),(-0.774755, 0.002000, -0.213545),(-0.794677, 0.003464, -0.108796),(-0.773343, 0.003464, -0.213157),(-0.775272, -0.000000, -0.213687),(-0.796658, -0.000000, -0.109064),(-0.796127, 0.002000, -0.108993),(-0.775272, -0.000000, -0.213687),(-0.796127, 0.002000, -0.108993),(-0.774755, 0.002000, -0.213545),(-0.796127, -0.002000, -0.108993),(-0.803464, -0.002000, 0.000000),(-0.804000, 0.000000, 0.000000),(-0.796127, -0.002000, -0.108993),(-0.804000, 0.000000, 0.000000),(-0.796658, -0.000000, -0.109064),(-0.794677, -0.003464, -0.108796),(-0.802000, -0.003464, 0.000000),(-0.803464, -0.002000, 0.000000),(-0.794677, -0.003464, -0.108796),(-0.803464, -0.002000, 0.000000),(-0.796127, -0.002000, -0.108993),(-0.792695, -0.004000, -0.108528),(-0.800000, -0.004000, 0.000000),(-0.802000, -0.003464, 0.000000),(-0.792695, -0.004000, -0.108528),(-0.802000, -0.003464, 0.000000),(-0.794677, -0.003464, -0.108796),(-0.790713, -0.003464, -0.108260),(-0.798000, -0.003464, -0.000000),(-0.800000, -0.004000, 0.000000),(-0.790713, -0.003464, -0.108260),(-0.800000, -0.004000, 0.000000),(-0.792695, -0.004000, -0.108528),(-0.789262, -0.002000, -0.108064),(-0.796536, -0.002000, -0.000000),(-0.798000, -0.003464, -0.000000),(-0.789262, -0.002000, -0.108064),(-0.798000, -0.003464, -0.000000),(-0.790713, -0.003464, -0.108260),(-0.788731, -0.000000, -0.107992),(-0.796000, -0.000000, -0.000000),(-0.796536, -0.002000, -0.000000),(-0.788731, -0.000000, -0.107992),(-0.796536, -0.002000, -0.000000),(-0.789262, -0.002000, -0.108064),(-0.789262, 0.002000, -0.108064),(-0.796536, 0.002000, -0.000000),(-0.796000, -0.000000, -0.000000),(-0.789262, 0.002000, -0.108064),(-0.796000, -0.000000, -0.000000),(-0.788731, -0.000000, -0.107992),(-0.790713, 0.003464, -0.108260),(-0.798000, 0.003464, -0.000000),(-0.796536, 0.002000, -0.000000),(-0.790713, 0.003464, -0.108260),(-0.796536, 0.002000, -0.000000),(-0.789262, 0.002000, -0.108064),(-0.792695, 0.004000, -0.108528),(-0.800000, 0.004000, -0.000000),(-0.798000, 0.003464, -0.000000),(-0.792695, 0.004000, -0.108528),(-0.798000, 0.003464, -0.000000),(-0.790713, 0.003464, -0.108260),(-0.794677, 0.003464, -0.108796),(-0.802000, 0.003464, 0.000000),(-0.800000, 0.004000, -0.000000),(-0.794677, 0.003464, -0.108796),(-0.800000, 0.004000, -0.000000),(-0.792695, 0.004000, -0.108528),(-0.796127, 0.002000, -0.108993),(-0.803464, 0.002000, 0.000000),(-0.802000, 0.003464, 0.000000),(-0.796127, 0.002000, -0.108993),(-0.802000, 0.003464, 0.000000),(-0.794677, 0.003464, -0.108796),(-0.796658, -0.000000, -0.109064),(-0.804000, 0.000000, 0.000000),(-0.803464, 0.002000, 0.000000),(-0.796658, -0.000000, -0.109064),(-0.803464, 0.002000, 0.000000),(-0.796127, 0.002000, -0.108993),(-0.803464, -0.002000, 0.000000),(-0.796127, -0.002000, 0.108993),(-0.796658, 0.000000, 0.109065),(-0.803464, -0.002000, 0.000000),(-0.796658, 0.000000, 0.109065),(-0.804000, 0.000000, 0.000000),(-0.802000, -0.003464, 0.000000),(-0.794676, -0.003464, 0.108797),(-0.796127, -0.002000, 0.108993),(-0.802000, -0.003464, 0.000000),(-0.796127, -0.002000, 0.108993),(-0.803464, -0.002000, 0.000000),(-0.800000, -0.004000, 0.000000),(-0.792694, -0.004000, 0.108528),(-0.794676, -0.003464, 0.108797),(-0.800000, -0.004000, 0.000000),(-0.794676, -0.003464, 0.108797),(-0.802000, -0.003464, 0.000000),(-0.798000, -0.003464, -0.000000),(-0.790712, -0.003464, 0.108260),(-0.792694, -0.004000, 0.108528),(-0.798000, -0.003464, -0.000000),(-0.792694, -0.004000, 0.108528),(-0.800000, -0.004000, 0.000000),(-0.796536, -0.002000, -0.000000),(-0.789262, -0.002000, 0.108064),(-0.790712, -0.003464, 0.108260),(-0.796536, -0.002000, -0.000000),(-0.790712, -0.003464, 0.108260),(-0.798000, -0.003464, -0.000000),(-0.796000, -0.000000, -0.000000),(-0.788731, 0.000000, 0.107992),(-0.789262, -0.002000, 0.108064),(-0.796000, -0.000000, -0.000000),(-0.789262, -0.002000, 0.108064),(-0.796536, -0.002000, -0.000000),(-0.796536, 0.002000, -0.000000),(-0.789262, 0.002000, 0.108064),(-0.788731, 0.000000, 0.107992),(-0.796536, 0.002000, -0.000000),(-0.788731, 0.000000, 0.107992),(-0.796000, -0.000000, -0.000000),(-0.798000, 0.003464, -0.000000),(-0.790712, 0.003464, 0.108260),(-0.789262, 0.002000, 0.108064),(-0.798000, 0.003464, -0.000000),(-0.789262, 0.002000, 0.108064),(-0.796536, 0.002000, -0.000000),(-0.800000, 0.004000, -0.000000),(-0.792694, 0.004000, 0.108528),(-0.790712, 0.003464, 0.108260),(-0.800000, 0.004000, -0.000000),(-0.790712, 0.003464, 0.108260),(-0.798000, 0.003464, -0.000000),(-0.802000, 0.003464, 0.000000),(-0.794676, 0.003464, 0.108797),(-0.792694, 0.004000, 0.108528),(-0.802000, 0.003464, 0.000000),(-0.792694, 0.004000, 0.108528),(-0.800000, 0.004000, -0.000000),(-0.803464, 0.002000, 0.000000),(-0.796127, 0.002000, 0.108993),(-0.794676, 0.003464, 0.108797),(-0.803464, 0.002000, 0.000000),(-0.794676, 0.003464, 0.108797),(-0.802000, 0.003464, 0.000000),(-0.804000, 0.000000, 0.000000),(-0.796658, 0.000000, 0.109065),(-0.796127, 0.002000, 0.108993),(-0.804000, 0.000000, 0.000000),(-0.796127, 0.002000, 0.108993),(-0.803464, 0.002000, 0.000000),(-0.796127, -0.002000, 0.108993),(-0.774755, -0.002000, 0.213545),(-0.775271, 0.000000, 0.213687),(-0.796127, -0.002000, 0.108993),(-0.775271, 0.000000, 0.213687),(-0.796658, 0.000000, 0.109065),(-0.794676, -0.003464, 0.108797),(-0.773343, -0.003464, 0.213157),(-0.774755, -0.002000, 0.213545),(-0.794676, -0.003464, 0.108797),(-0.774755, -0.002000, 0.213545),(-0.796127, -0.002000, 0.108993),(-0.792694, -0.004000, 0.108528),(-0.771414, -0.004000, 0.212627),(-0.773343, -0.003464, 0.213157),(-0.792694, -0.004000, 0.108528),(-0.773343, -0.003464, 0.213157),(-0.794676, -0.003464, 0.108797),(-0.790712, -0.003464, 0.108260),(-0.769486, -0.003464, 0.212098),(-0.771414, -0.004000, 0.212627),(-0.790712, -0.003464, 0.108260),(-0.771414, -0.004000, 0.212627),(-0.792694, -0.004000, 0.108528),(-0.789262, -0.002000, 0.108064),(-0.768074, -0.002000, 0.211710),(-0.769486, -0.003464, 0.212098),(-0.789262, -0.002000, 0.108064),(-0.769486, -0.003464, 0.212098),(-0.790712, -0.003464, 0.108260),(-0.788731, 0.000000, 0.107992),(-0.767557, 0.000000, 0.211568),(-0.768074, -0.002000, 0.211710),(-0.788731, 0.000000, 0.107992),(-0.768074, -0.002000, 0.211710),(-0.789262, -0.002000, 0.108064),(-0.789262, 0.002000, 0.108064),(-0.768074, 0.002000, 0.211710),(-0.767557, 0.000000, 0.211568),(-0.789262, 0.002000, 0.108064),(-0.767557, 0.000000, 0.211568),(-0.788731, 0.000000, 0.107992),(-0.790712, 0.003464, 0.108260),(-0.769486, 0.003464, 0.212098),(-0.768074, 0.002000, 0.211710),(-0.790712, 0.003464, 0.108260),(-0.768074, 0.002000, 0.211710),(-0.789262, 0.002000, 0.108064),(-0.792694, 0.004000, 0.108528),(-0.771414, 0.004000, 0.212627),(-0.769486, 0.003464, 0.212098),(-0.792694, 0.004000, 0.108528),(-0.769486, 0.003464, 0.212098),(-0.790712, 0.003464, 0.108260),(-0.794676, 0.003464, 0.108797),(-0.773343, 0.003464, 0.213157),(-0.771414, 0.004000, 0.212627),(-0.794676, 0.003464, 0.108797),(-0.771414, 0.004000, 0.212627),(-0.792694, 0.004000, 0.108528),(-0.796127, 0.002000, 0.108993),(-0.774755, 0.002000, 0.213545),(-0.773343, 0.003464, 0.213157),(-0.796127, 0.002000, 0.108993),(-0.773343, 0.003464, 0.213157),(-0.794676, 0.003464, 0.108797),(-0.796658, 0.000000, 0.109065),(-0.775271, 0.000000, 0.213687),(-0.774755, 0.002000, 0.213545),(-0.796658, 0.000000, 0.109065),(-0.774755, 0.002000, 0.213545),(-0.796127, 0.002000, 0.108993),(-0.774755, -0.002000, 0.213545),(-0.740305, -0.002000, 0.312691),(-0.740799, 0.000000, 0.312899),(-0.774755, -0.002000, 0.213545),(-0.740799, 0.000000, 0.312899),(-0.775271, 0.000000, 0.213687),(-0.773343, -0.003464, 0.213157),(-0.738956, -0.003464, 0.312121),(-0.740305, -0.002000, 0.312691),(-0.773343, -0.003464, 0.213157),(-0.740305, -0.002000, 0.312691),(-0.774755, -0.002000, 0.213545),(-0.771414, -0.004000, 0.212627),(-0.737114, -0.004000, 0.311342),(-0.738956, -0.003464, 0.312121),(-0.771414, -0.004000, 0.212627),(-0.738956, -0.003464, 0.312121),(-0.773343, -0.003464, 0.213157),(-0.769486, -0.003464, 0.212098),(-0.735272, -0.003464, 0.310564),(-0.737114, -0.004000, 0.311342),(-0.769486, -0.003464, 0.212098),(-0.737114, -0.004000, 0.311342),(-0.771414, -0.004000, 0.212627),(-0.768074, -0.002000, 0.211710),(-0.733923, -0.002000, 0.309994),(-0.735272, -0.003464, 0.310564),(-0.768074, -0.002000, 0.211710),(-0.735272, -0.003464, 0.310564),(-0.769486, -0.003464, 0.212098),(-0.767557, 0.000000, 0.211568),(-0.733429, 0.000000, 0.309785),(-0.733923, -0.002000, 0.309994),(-0.767557, 0.000000, 0.211568),(-0.733923, -0.002000, 0.309994),(-0.768074, -0.002000, 0.211710),(-0.768074, 0.002000, 0.211710),(-0.733923, 0.002000, 0.309994),(-0.733429, 0.000000, 0.309785),(-0.768074, 0.002000, 0.211710),(-0.733429, 0.000000, 0.309785),(-0.767557, 0.000000, 0.211568),(-0.769486, 0.003464, 0.212098),(-0.735272, 0.003464, 0.310564),(-0.733923, 0.002000, 0.309994),(-0.769486, 0.003464, 0.212098),(-0.733923, 0.002000, 0.309994),(-0.768074, 0.002000, 0.211710),(-0.771414, 0.004000, 0.212627),(-0.737114, 0.004000, 0.311342),(-0.735272, 0.003464, 0.310564),(-0.771414, 0.004000, 0.212627),(-0.735272, 0.003464, 0.310564),(-0.769486, 0.003464, 0.212098),(-0.773343, 0.003464, 0.213157),(-0.738956, 0.003464, 0.312121),(-0.737114, 0.004000, 0.311342),(-0.773343, 0.003464, 0.213157),(-0.737114, 0.004000, 0.311342),(-0.771414, 0.004000, 0.212627),(-0.774755, 0.002000, 0.213545),(-0.740305, 0.002000, 0.312691),(-0.738956, 0.003464, 0.312121),(-0.774755, 0.002000, 0.213545),(-0.738956, 0.003464, 0.312121),(-0.773343, 0.003464, 0.213157),(-0.775271, 0.000000, 0.213687),(-0.740799, 0.000000, 0.312899),(-0.740305, 0.002000, 0.312691),(-0.775271, 0.000000, 0.213687),(-0.740305, 0.002000, 0.312691),(-0.774755, 0.002000, 0.213545),(-0.740305, -0.002000, 0.312691),(-0.693738, -0.002000, 0.405469),(-0.694200, 0.000000, 0.405740),(-0.740305, -0.002000, 0.312691),(-0.694200, 0.000000, 0.405740),(-0.740799, 0.000000, 0.312899),(-0.738956, -0.003464, 0.312121),(-0.692474, -0.003464, 0.404729),(-0.693738, -0.002000, 0.405469),(-0.738956, -0.003464, 0.312121),(-0.693738, -0.002000, 0.405469),(-0.740305, -0.002000, 0.312691),(-0.737114, -0.004000, 0.311342),(-0.690748, -0.004000, 0.403719),(-0.692474, -0.003464, 0.404729),(-0.737114, -0.004000, 0.311342),(-0.692474, -0.003464, 0.404729),(-0.738956, -0.003464, 0.312121),(-0.735272, -0.003464, 0.310564),(-0.689022, -0.003464, 0.402708),(-0.690748, -0.004000, 0.403719),(-0.735272, -0.003464, 0.310564),(-0.690748, -0.004000, 0.403719),(-0.737114, -0.004000, 0.311342),(-0.733923, -0.002000, 0.309994),(-0.687759, -0.002000, 0.401968),(-0.689022, -0.003464, 0.402708),(-0.733923, -0.002000, 0.309994),(-0.689022, -0.003464, 0.402708),(-0.735272, -0.003464, 0.310564),(-0.733429, 0.000000, 0.309785),(-0.687296, 0.000000, 0.401698),(-0.687759, -0.002000, 0.401968),(-0.733429, 0.000000, 0.309785),(-0.687759, -0.002000, 0.401968),(-0.733923, -0.002000, 0.309994),(-0.733923, 0.002000, 0.309994),(-0.687759, 0.002000, 0.401968),(-0.687296, 0.000000, 0.401698),(-0.733923, 0.002000, 0.309994),(-0.687296, 0.000000, 0.401698),(-0.733429, 0.000000, 0.309785),(-0.735272, 0.003464, 0.310564),(-0.689022, 0.003464, 0.402708),(-0.687759, 0.002000, 0.401968),(-0.735272, 0.003464, 0.310564),(-0.687759, 0.002000, 0.401968),(-0.733923, 0.002000, 0.309994),(-0.737114, 0.004000, 0.311342),(-0.690748, 0.004000, 0.403719),(-0.689022, 0.003464, 0.402708),(-0.737114, 0.004000, 0.311342),(-0.689022, 0.003464, 0.402708),(-0.735272, 0.003464, 0.310564),(-0.738956, 0.003464, 0.312121),(-0.692474, 0.003464, 0.404729),(-0.690748, 0.004000, 0.403719),(-0.738956, 0.003464, 0.312121),(-0.690748, 0.004000, 0.403719),(-0.737114, 0.004000, 0.311342),(-0.740305, 0.002000, 0.312691),(-0.693738, 0.002000, 0.405469),(-0.692474, 0.003464, 0.404729),(-0.740305, 0.002000, 0.312691),(-0.692474, 0.003464, 0.404729),(-0.738956, 0.003464, 0.312121),(-0.740799, 0.000000, 0.312899),(-0.694200, 0.000000, 0.405740),(-0.693738, 0.002000, 0.405469),(-0.740799, 0.000000, 0.312899),(-0.693738, 0.002000, 0.405469),(-0.740305, 0.002000, 0.312691),(-0.693738, -0.002000, 0.405469),(-0.636012, -0.002000, 0.490920),(-0.636436, 0.000000, 0.491248),(-0.693738, -0.002000, 0.405469),(-0.636436, 0.000000, 0.491248),(-0.694200, 0.000000, 0.405740),(-0.692474, -0.003464, 0.404729),(-0.634854, -0.003464, 0.490025),(-0.636012, -0.002000, 0.490920),(-0.692474, -0.003464, 0.404729),(-0.636012, -0.002000, 0.490920),(-0.693738, -0.002000, 0.405469),(-0.690748, -0.004000, 0.403719),(-0.633271, -0.004000, 0.488802),(-0.634854, -0.003464, 0.490025),(-0.690748, -0.004000, 0.403719),(-0.634854, -0.003464, 0.490025),(-0.692474, -0.003464, 0.404729),(-0.689022, -0.003464, 0.402708),(-0.631689, -0.003464, 0.487579),(-0.633271, -0.004000, 0.488802),(-0.689022, -0.003464, 0.402708),(-0.633271, -0.004000, 0.488802),(-0.690748, -0.004000, 0.403719),(-0.687759, -0.002000, 0.401968),(-0.630530, -0.002000, 0.486684),(-0.631689, -0.003464, 0.487579),(-0.687759, -0.002000, 0.401968),(-0.631689, -0.003464, 0.487579),(-0.689022, -0.003464, 0.402708),(-0.687296, 0.000000, 0.401698),(-0.630106, 0.000000, 0.486356),(-0.630530, -0.002000, 0.486684),(-0.687296, 0.000000, 0.401698),(-0.630530, -0.002000, 0.486684),(-0.687759, -0.002000, 0.401968),(-0.687759, 0.002000, 0.401968),(-0.630530, 0.002000, 0.486684),(-0.630106, 0.000000, 0.486356),(-0.687759, 0.002000, 0.401968),(-0.630106, 0.000000, 0.486356),(-0.687296, 0.000000, 0.401698),(-0.689022, 0.003464, 0.402708),(-0.631689, 0.003464, 0.487579),(-0.630530, 0.002000, 0.486684),(-0.689022, 0.003464, 0.402708),(-0.630530, 0.002000, 0.486684),(-0.687759, 0.002000, 0.401968),(-0.690748, 0.004000, 0.403719),(-0.633271, 0.004000, 0.488802),(-0.631689, 0.003464, 0.487579),(-0.690748, 0.004000, 0.403719),(-0.631689, 0.003464, 0.487579),(-0.689022, 0.003464, 0.402708),(-0.692474, 0.003464, 0.404729),(-0.634854, 0.003464, 0.490025),(-0.633271, 0.004000, 0.488802),(-0.692474, 0.003464, 0.404729),(-0.633271, 0.004000, 0.488802),(-0.690748, 0.004000, 0.403719),(-0.693738, 0.002000, 0.405469),(-0.636012, 0.002000, 0.490920),(-0.634854, 0.003464, 0.490025),(-0.693738, 0.002000, 0.405469),(-0.634854, 0.003464, 0.490025),(-0.692474, 0.003464, 0.404729),(-0.694200, 0.000000, 0.405740),(-0.636436, 0.000000, 0.491248),(-0.636012, 0.002000, 0.490920),(-0.694200, 0.000000, 0.405740),(-0.636012, 0.002000, 0.490920),(-0.693738, 0.002000, 0.405469),(-0.636012, -0.002000, 0.490920),(-0.568087, -0.002000, 0.568087),(-0.568466, 0.000000, 0.568466),(-0.636012, -0.002000, 0.490920),(-0.568466, 0.000000, 0.568466),(-0.636436, 0.000000, 0.491248),(-0.634854, -0.003464, 0.490025),(-0.567052, -0.003464, 0.567052),(-0.568087, -0.002000, 0.568087),(-0.634854, -0.003464, 0.490025),(-0.568087, -0.002000, 0.568087),(-0.636012, -0.002000, 0.490920),(-0.633271, -0.004000, 0.488802),(-0.565637, -0.004000, 0.565638),(-0.567052, -0.003464, 0.567052),(-0.633271, -0.004000, 0.488802),(-0.567052, -0.003464, 0.567052),(-0.634854, -0.003464, 0.490025),(-0.631689, -0.003464, 0.487579),(-0.564223, -0.003464, 0.564223),(-0.565637, -0.004000, 0.565638),(-0.631689, -0.003464, 0.487579),(-0.565637, -0.004000, 0.565638),(-0.633271, -0.004000, 0.488802),(-0.630530, -0.002000, 0.486684),(-0.563188, -0.002000, 0.563188),(-0.564223, -0.003464, 0.564223),(-0.630530, -0.002000, 0.486684),(-0.564223, -0.003464, 0.564223),(-0.631689, -0.003464, 0.487579),(-0.630106, 0.000000, 0.486356),(-0.562809, 0.000000, 0.562809),(-0.563188, -0.002000, 0.563188),(-0.630106, 0.000000, 0.486356),(-0.563188, -0.002000, 0.563188),(-0.630530, -0.002000, 0.486684),(-0.630530, 0.002000, 0.486684),(-0.563188, 0.002000, 0.563188),(-0.562809, 0.000000, 0.562809),(-0.630530, 0.002000, 0.486684),(-0.562809, 0.000000, 0.562809),(-0.630106, 0.000000, 0.486356),(-0.631689, 0.003464, 0.487579),(-0.564223, 0.003464, 0.564223),(-0.563188, 0.002000, 0.563188),(-0.631689, 0.003464, 0.487579),(-0.563188, 0.002000, 0.563188),(-0.630530, 0.002000, 0.486684),(-0.633271, 0.004000, 0.488802),(-0.565637, 0.004000, 0.565638),(-0.564223, 0.003464, 0.564223),(-0.633271, 0.004000, 0.488802),(-0.564223, 0.003464, 0.564223),(-0.631689, 0.003464, 0.487579),(-0.634854, 0.003464, 0.490025),(-0.567052, 0.003464, 0.567052),(-0.565637, 0.004000, 0.565638),(-0.634854, 0.003464, 0.490025),(-0.565637, 0.004000, 0.565638),(-0.633271, 0.004000, 0.488802),(-0.636012, 0.002000, 0.490920),(-0.568087, 0.002000, 0.568087),(-0.567052, 0.003464, 0.567052),(-0.636012, 0.002000, 0.490920),(-0.567052, 0.003464, 0.567052),(-0.634854, 0.003464, 0.490025),(-0.636436, 0.000000, 0.491248),(-0.568466, 0.000000, 0.568466),(-0.568087, 0.002000, 0.568087),(-0.636436, 0.000000, 0.491248),(-0.568087, 0.002000, 0.568087),(-0.636012, 0.002000, 0.490920),(-0.568087, -0.002000, 0.568087),(-0.490920, -0.002000, 0.636012),(-0.491248, 0.000000, 0.636436),(-0.568087, -0.002000, 0.568087),(-0.491248, 0.000000, 0.636436),(-0.568466, 0.000000, 0.568466),(-0.567052, -0.003464, 0.567052),(-0.490025, -0.003464, 0.634854),(-0.490920, -0.002000, 0.636012),(-0.567052, -0.003464, 0.567052),(-0.490920, -0.002000, 0.636012),(-0.568087, -0.002000, 0.568087),(-0.565637, -0.004000, 0.565638),(-0.488802, -0.004000, 0.633271),(-0.490025, -0.003464, 0.634854),(-0.565637, -0.004000, 0.565638),(-0.490025, -0.003464, 0.634854),(-0.567052, -0.003464, 0.567052),(-0.564223, -0.003464, 0.564223),(-0.487579, -0.003464, 0.631689),(-0.488802, -0.004000, 0.633271),(-0.564223, -0.003464, 0.564223),(-0.488802, -0.004000, 0.633271),(-0.565637, -0.004000, 0.565638),(-0.563188, -0.002000, 0.563188),(-0.486684, -0.002000, 0.630530),(-0.487579, -0.003464, 0.631689),(-0.563188, -0.002000, 0.563188),(-0.487579, -0.003464, 0.631689),(-0.564223, -0.003464, 0.564223),(-0.562809, 0.000000, 0.562809),(-0.486356, 0.000000, 0.630106),(-0.486684, -0.002000, 0.630530),(-0.562809, 0.000000, 0.562809),(-0.486684, -0.002000, 0.630530),(-0.563188, -0.002000, 0.563188),(-0.563188, 0.002000, 0.563188),(-0.486684, 0.002000, 0.630530),(-0.486356, 0.000000, 0.630106),(-0.563188, 0.002000, 0.563188),(-0.486356, 0.000000, 0.630106),(-0.562809, 0.000000, 0.562809),(-0.564223, 0.003464, 0.564223),(-0.487579, 0.003464, 0.631689),(-0.486684, 0.002000, 0.630530),(-0.564223, 0.003464, 0.564223),(-0.486684, 0.002000, 0.630530),(-0.563188, 0.002000, 0.563188),(-0.565637, 0.004000, 0.565638),(-0.488802, 0.004000, 0.633271),(-0.487579, 0.003464, 0.631689),(-0.565637, 0.004000, 0.565638),(-0.487579, 0.003464, 0.631689),(-0.564223, 0.003464, 0.564223),(-0.567052, 0.003464, 0.567052),(-0.490025, 0.003464, 0.634854),(-0.488802, 0.004000, 0.633271),(-0.567052, 0.003464, 0.567052),(-0.488802, 0.004000, 0.633271),(-0.565637, 0.004000, 0.565638),(-0.568087, 0.002000, 0.568087),(-0.490920, 0.002000, 0.636012),(-0.490025, 0.003464, 0.634854),(-0.568087, 0.002000, 0.568087),(-0.490025, 0.003464, 0.634854),(-0.567052, 0.003464, 0.567052),(-0.568466, 0.000000, 0.568466),(-0.491248, 0.000000, 0.636436),(-0.490920, 0.002000, 0.636012),(-0.568466, 0.000000, 0.568466),(-0.490920, 0.002000, 0.636012),(-0.568087, 0.002000, 0.568087),(-0.490920, -0.002000, 0.636012),(-0.405469, -0.002000, 0.693738),(-0.405739, 0.000000, 0.694200),(-0.490920, -0.002000, 0.636012),(-0.405739, 0.000000, 0.694200),(-0.491248, 0.000000, 0.636436),(-0.490025, -0.003464, 0.634854),(-0.404729, -0.003464, 0.692474),(-0.405469, -0.002000, 0.693738),(-0.490025, -0.003464, 0.634854),(-0.405469, -0.002000, 0.693738),(-0.490920, -0.002000, 0.636012),(-0.488802, -0.004000, 0.633271),(-0.403719, -0.004000, 0.690748),(-0.404729, -0.003464, 0.692474),(-0.488802, -0.004000, 0.633271),(-0.404729, -0.003464, 0.692474),(-0.490025, -0.003464, 0.634854),(-0.487579, -0.003464, 0.631689),(-0.402708, -0.003464, 0.689022),(-0.403719, -0.004000, 0.690748),(-0.487579, -0.003464, 0.631689),(-0.403719, -0.004000, 0.690748),(-0.488802, -0.004000, 0.633271),(-0.486684, -0.002000, 0.630530),(-0.401968, -0.002000, 0.687759),(-0.402708, -0.003464, 0.689022),(-0.486684, -0.002000, 0.630530),(-0.402708, -0.003464, 0.689022),(-0.487579, -0.003464, 0.631689),(-0.486356, 0.000000, 0.630106),(-0.401698, 0.000000, 0.687296),(-0.401968, -0.002000, 0.687759),(-0.486356, 0.000000, 0.630106),(-0.401968, -0.002000, 0.687759),(-0.486684, -0.002000, 0.630530),(-0.486684, 0.002000, 0.630530),(-0.401968, 0.002000, 0.687759),(-0.401698, 0.000000, 0.687296),(-0.486684, 0.002000, 0.630530),(-0.401698, 0.000000, 0.687296),(-0.486356, 0.000000, 0.630106),(-0.487579, 0.003464, 0.631689),(-0.402708, 0.003464, 0.689022),(-0.401968, 0.002000, 0.687759),(-0.487579, 0.003464, 0.631689),(-0.401968, 0.002000, 0.687759),(-0.486684, 0.002000, 0.630530),(-0.488802, 0.004000, 0.633271),(-0.403719, 0.004000, 0.690748),(-0.402708, 0.003464, 0.689022),(-0.488802, 0.004000, 0.633271),(-0.402708, 0.003464, 0.689022),(-0.487579, 0.003464, 0.631689),(-0.490025, 0.003464, 0.634854),(-0.404729, 0.003464, 0.692474),(-0.403719, 0.004000, 0.690748),(-0.490025, 0.003464, 0.634854),(-0.403719, 0.004000, 0.690748),(-0.488802, 0.004000, 0.633271),(-0.490920, 0.002000, 0.636012),(-0.405469, 0.002000, 0.693738),(-0.404729, 0.003464, 0.692474),(-0.490920, 0.002000, 0.636012),(-0.404729, 0.003464, 0.692474),(-0.490025, 0.003464, 0.634854),(-0.491248, 0.000000, 0.636436),(-0.405739, 0.000000, 0.694200),(-0.405469, 0.002000, 0.693738),(-0.491248, 0.000000, 0.636436),(-0.405469, 0.002000, 0.693738),(-0.490920, 0.002000, 0.636012),(-0.405469, -0.002000, 0.693738),(-0.312691, -0.002000, 0.740305),(-0.312899, 0.000000, 0.740799),(-0.405469, -0.002000, 0.693738),(-0.312899, 0.000000, 0.740799),(-0.405739, 0.000000, 0.694200),(-0.404729, -0.003464, 0.692474),(-0.312121, -0.003464, 0.738956),(-0.312691, -0.002000, 0.740305),(-0.404729, -0.003464, 0.692474),(-0.312691, -0.002000, 0.740305),(-0.405469, -0.002000, 0.693738),(-0.403719, -0.004000, 0.690748),(-0.311342, -0.004000, 0.737114),(-0.312121, -0.003464, 0.738956),(-0.403719, -0.004000, 0.690748),(-0.312121, -0.003464, 0.738956),(-0.404729, -0.003464, 0.692474),(-0.402708, -0.003464, 0.689022),(-0.310564, -0.003464, 0.735272),(-0.311342, -0.004000, 0.737114),(-0.402708, -0.003464, 0.689022),(-0.311342, -0.004000, 0.737114),(-0.403719, -0.004000, 0.690748),(-0.401968, -0.002000, 0.687759),(-0.309994, -0.002000, 0.733923),(-0.310564, -0.003464, 0.735272),(-0.401968, -0.002000, 0.687759),(-0.310564, -0.003464, 0.735272),(-0.402708, -0.003464, 0.689022),(-0.401698, 0.000000, 0.687296),(-0.309785, 0.000000, 0.733430),(-0.309994, -0.002000, 0.733923),(-0.401698, 0.000000, 0.687296),(-0.309994, -0.002000, 0.733923),(-0.401968, -0.002000, 0.687759),(-0.401968, 0.002000, 0.687759),(-0.309994, 0.002000, 0.733923),(-0.309785, 0.000000, 0.733430),(-0.401968, 0.002000, 0.687759),(-0.309785, 0.000000, 0.733430),(-0.401698, 0.000000, 0.687296),(-0.402708, 0.003464, 0.689022),(-0.310564, 0.003464, 0.735272),(-0.309994, 0.002000, 0.733923),(-0.402708, 0.003464, 0.689022),(-0.309994, 0.002000, 0.733923),(-0.401968, 0.002000, 0.687759),(-0.403719, 0.004000, 0.690748),(-0.311342, 0.004000, 0.737114),(-0.310564, 0.003464, 0.735272),(-0.403719, 0.004000, 0.690748),(-0.310564, 0.003464, 0.735272),(-0.402708, 0.003464, 0.689022),(-0.404729, 0.003464, 0.692474),(-0.312121, 0.003464, 0.738956),(-0.311342, 0.004000, 0.737114),(-0.404729, 0.003464, 0.692474),(-0.311342, 0.004000, 0.737114),(-0.403719, 0.004000, 0.690748),(-0.405469, 0.002000, 0.693738),(-0.312691, 0.002000, 0.740305),(-0.312121, 0.003464, 0.738956),(-0.405469, 0.002000, 0.693738),(-0.312121, 0.003464, 0.738956),(-0.404729, 0.003464, 0.692474),(-0.405739, 0.000000, 0.694200),(-0.312899, 0.000000, 0.740799),(-0.312691, 0.002000, 0.740305),(-0.405739, 0.000000, 0.694200),(-0.312691, 0.002000, 0.740305),(-0.405469, 0.002000, 0.693738),(-0.312691, -0.002000, 0.740305),(-0.213545, -0.002000, 0.774755),(-0.213687, 0.000000, 0.775272),(-0.312691, -0.002000, 0.740305),(-0.213687, 0.000000, 0.775272),(-0.312899, 0.000000, 0.740799),(-0.312121, -0.003464, 0.738956),(-0.213157, -0.003464, 0.773343),(-0.213545, -0.002000, 0.774755),(-0.312121, -0.003464, 0.738956),(-0.213545, -0.002000, 0.774755),(-0.312691, -0.002000, 0.740305),(-0.311342, -0.004000, 0.737114),(-0.212627, -0.004000, 0.771414),(-0.213157, -0.003464, 0.773343),(-0.311342, -0.004000, 0.737114),(-0.213157, -0.003464, 0.773343),(-0.312121, -0.003464, 0.738956),(-0.310564, -0.003464, 0.735272),(-0.212098, -0.003464, 0.769486),(-0.212627, -0.004000, 0.771414),(-0.310564, -0.003464, 0.735272),(-0.212627, -0.004000, 0.771414),(-0.311342, -0.004000, 0.737114),(-0.309994, -0.002000, 0.733923),(-0.211710, -0.002000, 0.768074),(-0.212098, -0.003464, 0.769486),(-0.309994, -0.002000, 0.733923),(-0.212098, -0.003464, 0.769486),(-0.310564, -0.003464, 0.735272),(-0.309785, 0.000000, 0.733430),(-0.211568, 0.000000, 0.767557),(-0.211710, -0.002000, 0.768074),(-0.309785, 0.000000, 0.733430),(-0.211710, -0.002000, 0.768074),(-0.309994, -0.002000, 0.733923),(-0.309994, 0.002000, 0.733923),(-0.211710, 0.002000, 0.768074),(-0.211568, 0.000000, 0.767557),(-0.309994, 0.002000, 0.733923),(-0.211568, 0.000000, 0.767557),(-0.309785, 0.000000, 0.733430),(-0.310564, 0.003464, 0.735272),(-0.212098, 0.003464, 0.769486),(-0.211710, 0.002000, 0.768074),(-0.310564, 0.003464, 0.735272),(-0.211710, 0.002000, 0.768074),(-0.309994, 0.002000, 0.733923),(-0.311342, 0.004000, 0.737114),(-0.212627, 0.004000, 0.771414),(-0.212098, 0.003464, 0.769486),(-0.311342, 0.004000, 0.737114),(-0.212098, 0.003464, 0.769486),(-0.310564, 0.003464, 0.735272),(-0.312121, 0.003464, 0.738956),(-0.213157, 0.003464, 0.773343),(-0.212627, 0.004000, 0.771414),(-0.312121, 0.003464, 0.738956),(-0.212627, 0.004000, 0.771414),(-0.311342, 0.004000, 0.737114),(-0.312691, 0.002000, 0.740305),(-0.213545, 0.002000, 0.774755),(-0.213157, 0.003464, 0.773343),(-0.312691, 0.002000, 0.740305),(-0.213157, 0.003464, 0.773343),(-0.312121, 0.003464, 0.738956),(-0.312899, 0.000000, 0.740799),(-0.213687, 0.000000, 0.775272),(-0.213545, 0.002000, 0.774755),(-0.312899, 0.000000, 0.740799),(-0.213545, 0.002000, 0.774755),(-0.312691, 0.002000, 0.740305),(-0.213545, -0.002000, 0.774755),(-0.108993, -0.002000, 0.796127),(-0.109064, 0.000000, 0.796658),(-0.213545, -0.002000, 0.774755),(-0.109064, 0.000000, 0.796658),(-0.213687, 0.000000, 0.775272),(-0.213157, -0.003464, 0.773343),(-0.108796, -0.003464, 0.794677),(-0.108993, -0.002000, 0.796127),(-0.213157, -0.003464, 0.773343),(-0.108993, -0.002000, 0.796127),(-0.213545, -0.002000, 0.774755),(-0.212627, -0.004000, 0.771414),(-0.108528, -0.004000, 0.792695),(-0.108796, -0.003464, 0.794677),(-0.212627, -0.004000, 0.771414),(-0.108796, -0.003464, 0.794677),(-0.213157, -0.003464, 0.773343),(-0.212098, -0.003464, 0.769486),(-0.108260, -0.003464, 0.790713),(-0.108528, -0.004000, 0.792695),(-0.212098, -0.003464, 0.769486),(-0.108528, -0.004000, 0.792695),(-0.212627, -0.004000, 0.771414),(-0.211710, -0.002000, 0.768074),(-0.108064, -0.002000, 0.789262),(-0.108260, -0.003464, 0.790713),(-0.211710, -0.002000, 0.768074),(-0.108260, -0.003464, 0.790713),(-0.212098, -0.003464, 0.769486),(-0.211568, 0.000000, 0.767557),(-0.107992, 0.000000, 0.788731),(-0.108064, -0.002000, 0.789262),(-0.211568, 0.000000, 0.767557),(-0.108064, -0.002000, 0.789262),(-0.211710, -0.002000, 0.768074),(-0.211710, 0.002000, 0.768074),(-0.108064, 0.002000, 0.789262),(-0.107992, 0.000000, 0.788731),(-0.211710, 0.002000, 0.768074),(-0.107992, 0.000000, 0.788731),(-0.211568, 0.000000, 0.767557),(-0.212098, 0.003464, 0.769486),(-0.108260, 0.003464, 0.790713),(-0.108064, 0.002000, 0.789262),(-0.212098, 0.003464, 0.769486),(-0.108064, 0.002000, 0.789262),(-0.211710, 0.002000, 0.768074),(-0.212627, 0.004000, 0.771414),(-0.108528, 0.004000, 0.792695),(-0.108260, 0.003464, 0.790713),(-0.212627, 0.004000, 0.771414),(-0.108260, 0.003464, 0.790713),(-0.212098, 0.003464, 0.769486),(-0.213157, 0.003464, 0.773343),(-0.108796, 0.003464, 0.794677),(-0.108528, 0.004000, 0.792695),(-0.213157, 0.003464, 0.773343),(-0.108528, 0.004000, 0.792695),(-0.212627, 0.004000, 0.771414),(-0.213545, 0.002000, 0.774755),(-0.108993, 0.002000, 0.796127),(-0.108796, 0.003464, 0.794677),(-0.213545, 0.002000, 0.774755),(-0.108796, 0.003464, 0.794677),(-0.213157, 0.003464, 0.773343),(-0.213687, 0.000000, 0.775272),(-0.109064, 0.000000, 0.796658),(-0.108993, 0.002000, 0.796127),(-0.213687, 0.000000, 0.775272),(-0.108993, 0.002000, 0.796127),(-0.213545, 0.002000, 0.774755),(-0.108993, -0.002000, 0.796127),(0.000000, -0.002000, 0.803464),(0.000000, 0.000000, 0.804000),(-0.108993, -0.002000, 0.796127),(0.000000, 0.000000, 0.804000),(-0.109064, 0.000000, 0.796658),(-0.108796, -0.003464, 0.794677),(0.000000, -0.003464, 0.802000),(0.000000, -0.002000, 0.803464),(-0.108796, -0.003464, 0.794677),(0.000000, -0.002000, 0.803464),(-0.108993, -0.002000, 0.796127),(-0.108528, -0.004000, 0.792695),(0.000000, -0.004000, 0.800000),(0.000000, -0.003464, 0.802000),(-0.108528, -0.004000, 0.792695),(0.000000, -0.003464, 0.802000),(-0.108796, -0.003464, 0.794677),(-0.108260, -0.003464, 0.790713),(-0.000000, -0.003464, 0.798000),(0.000000, -0.004000, 0.800000),(-0.108260, -0.003464, 0.790713),(0.000000, -0.004000, 0.800000),(-0.108528, -0.004000, 0.792695),(-0.108064, -0.002000, 0.789262),(-0.000000, -0.002000, 0.796536),(-0.000000, -0.003464, 0.798000),(-0.108064, -0.002000, 0.789262),(-0.000000, -0.003464, 0.798000),(-0.108260, -0.003464, 0.790713),(-0.107992, 0.000000, 0.788731),(-0.000000, 0.000000, 0.796000),(-0.000000, -0.002000, 0.796536),(-0.107992, 0.000000, 0.788731),(-0.000000, -0.002000, 0.796536),(-0.108064, -0.002000, 0.789262),(-0.108064, 0.002000, 0.789262),(-0.000000, 0.002000, 0.796536),(-0.000000, 0.000000, 0.796000),(-0.108064, 0.002000, 0.789262),(-0.000000, 0.000000, 0.796000),(-0.107992, 0.000000, 0.788731),(-0.108260, 0.003464, 0.790713),(-0.000000, 0.003464, 0.798000),(-0.000000, 0.002000, 0.796536),(-0.108260, 0.003464, 0.790713),(-0.000000, 0.002000, 0.796536),(-0.108064, 0.002000, 0.789262),(-0.108528, 0.004000, 0.792695),(0.000000, 0.004000, 0.800000),(-0.000000, 0.003464, 0.798000),(-0.108528, 0.004000, 0.792695),(-0.000000, 0.003464, 0.798000),(-0.108260, 0.003464, 0.790713),(-0.108796, 0.003464, 0.794677),(0.000000, 0.003464, 0.802000),(0.000000, 0.004000, 0.800000),(-0.108796, 0.003464, 0.794677),(0.000000, 0.004000, 0.800000),(-0.108528, 0.004000, 0.792695),(-0.108993, 0.002000, 0.796127),(0.000000, 0.002000, 0.803464),(0.000000, 0.003464, 0.802000),(-0.108993, 0.002000, 0.796127),(0.000000, 0.003464, 0.802000),(-0.108796, 0.003464, 0.794677),(-0.109064, 0.000000, 0.796658),(0.000000, 0.000000, 0.804000),(0.000000, 0.002000, 0.803464),(-0.109064, 0.000000, 0.796658),(0.000000, 0.002000, 0.803464),(-0.108993, 0.002000, 0.796127),(0.000000, -0.002000, 0.803464),(0.108993, -0.002000, 0.796127),(0.109065, 0.000000, 0.796658),(0.000000, -0.002000, 0.803464),(0.109065, 0.000000, 0.796658),(0.000000, 0.000000, 0.804000),(0.000000, -0.003464, 0.802000),(0.108797, -0.003464, 0.794676),(0.108993, -0.002000, 0.796127),(0.000000, -0.003464, 0.802000),(0.108993, -0.002000, 0.796127),(0.000000, -0.002000, 0.803464),(0.000000, -0.004000, 0.800000),(0.108528, -0.004000, 0.792694),(0.108797, -0.003464, 0.794676),(0.000000, -0.004000, 0.800000),(0.108797, -0.003464, 0.794676),(0.000000, -0.003464, 0.802000),(-0.000000, -0.003464, 0.798000),(0.108260, -0.003464, 0.790712),(0.108528, -0.004000, 0.792694),(-0.000000, -0.003464, 0.798000),(0.108528, -0.004000, 0.792694),(0.000000, -0.004000, 0.800000),(-0.000000, -0.002000, 0.796536),(0.108064, -0.002000, 0.789262),(0.108260, -0.003464, 0.790712),(-0.000000, -0.002000, 0.796536),(0.108260, -0.003464, 0.790712),(-0.000000, -0.003464, 0.798000),(-0.000000, 0.000000, 0.796000),(0.107992, 0.000000, 0.788731),(0.108064, -0.002000, 0.789262),(-0.000000, 0.000000, 0.796000),(0.108064, -0.002000, 0.789262),(-0.000000, -0.002000, 0.796536),(-0.000000, 0.002000, 0.796536),(0.108064, 0.002000, 0.789262),(0.107992, 0.000000, 0.788731),(-0.000000, 0.002000, 0.796536),(0.107992, 0.000000, 0.788731),(-0.000000, 0.000000, 0.796000),(-0.000000, 0.003464, 0.798000),(0.108260, 0.003464, 0.790712),(0.108064, 0.002000, 0.789262),(-0.000000, 0.003464, 0.798000),(0.108064, 0.002000, 0.789262),(-0.000000, 0.002000, 0.796536),(0.000000, 0.004000, 0.800000),(0.108528, 0.004000, 0.792694),(0.108260, 0.003464, 0.790712),(0.000000, 0.004000, 0.800000),(0.108260, 0.003464, 0.790712),(-0.000000, 0.003464, 0.798000),(0.000000, 0.003464, 0.802000),(0.108797, 0.003464, 0.794676),(0.108528, 0.004000, 0.792694),(0.000000, 0.003464, 0.802000),(0.108528, 0.004000, 0.792694),(0.000000, 0.004000, 0.800000),(0.000000, 0.002000, 0.803464),(0.108993, 0.002000, 0.796127),(0.108797, 0.003464, 0.794676),(0.000000, 0.002000, 0.803464),(0.108797, 0.003464, 0.794676),(0.000000, 0.003464, 0.802000),(0.000000, 0.000000, 0.804000),(0.109065, 0.000000, 0.796658),(0.108993, 0.002000, 0.796127),(0.000000, 0.000000, 0.804000),(0.108993, 0.002000, 0.796127),(0.000000, 0.002000, 0.803464),(0.108993, -0.002000, 0.796127),(0.213545, -0.002000, 0.774755),(0.213687, 0.000000, 0.775271),(0.108993, -0.002000, 0.796127),(0.213687, 0.000000, 0.775271),(0.109065, 0.000000, 0.796658),(0.108797, -0.003464, 0.794676),(0.213157, -0.003464, 0.773343),(0.213545, -0.002000, 0.774755),(0.108797, -0.003464, 0.794676),(0.213545, -0.002000, 0.774755),(0.108993, -0.002000, 0.796127),(0.108528, -0.004000, 0.792694),(0.212627, -0.004000, 0.771414),(0.213157, -0.003464, 0.773343),(0.108528, -0.004000, 0.792694),(0.213157, -0.003464, 0.773343),(0.108797, -0.003464, 0.794676),(0.108260, -0.003464, 0.790712),(0.212098, -0.003464, 0.769486),(0.212627, -0.004000, 0.771414),(0.108260, -0.003464, 0.790712),(0.212627, -0.004000, 0.771414),(0.108528, -0.004000, 0.792694),(0.108064, -0.002000, 0.789262),(0.211710, -0.002000, 0.768074),(0.212098, -0.003464, 0.769486),(0.108064, -0.002000, 0.789262),(0.212098, -0.003464, 0.769486),(0.108260, -0.003464, 0.790712),(0.107992, 0.000000, 0.788731),(0.211568, 0.000000, 0.767557),(0.211710, -0.002000, 0.768074),(0.107992, 0.000000, 0.788731),(0.211710, -0.002000, 0.768074),(0.108064, -0.002000, 0.789262),(0.108064, 0.002000, 0.789262),(0.211710, 0.002000, 0.768074),(0.211568, 0.000000, 0.767557),(0.108064, 0.002000, 0.789262),(0.211568, 0.000000, 0.767557),(0.107992, 0.000000, 0.788731),(0.108260, 0.003464, 0.790712),(0.212098, 0.003464, 0.769486),(0.211710, 0.002000, 0.768074),(0.108260, 0.003464, 0.790712),(0.211710, 0.002000, 0.768074),(0.108064, 0.002000, 0.789262),(0.108528, 0.004000, 0.792694),(0.212627, 0.004000, 0.771414),(0.212098, 0.003464, 0.769486),(0.108528, 0.004000, 0.792694),(0.212098, 0.003464, 0.769486),(0.108260, 0.003464, 0.790712),(0.108797, 0.003464, 0.794676),(0.213157, 0.003464, 0.773343),(0.212627, 0.004000, 0.771414),(0.108797, 0.003464, 0.794676),(0.212627, 0.004000, 0.771414),(0.108528, 0.004000, 0.792694),(0.108993, 0.002000, 0.796127),(0.213545, 0.002000, 0.774755),(0.213157, 0.003464, 0.773343),(0.108993, 0.002000, 0.796127),(0.213157, 0.003464, 0.773343),(0.108797, 0.003464, 0.794676),(0.109065, 0.000000, 0.796658),(0.213687, 0.000000, 0.775271),(0.213545, 0.002000, 0.774755),(0.109065, 0.000000, 0.796658),(0.213545, 0.002000, 0.774755),(0.108993, 0.002000, 0.796127),(0.213545, -0.002000, 0.774755),(0.312691, -0.002000, 0.740305),(0.312899, 0.000000, 0.740799),(0.213545, -0.002000, 0.774755),(0.312899, 0.000000, 0.740799),(0.213687, 0.000000, 0.775271),(0.213157, -0.003464, 0.773343),(0.312121, -0.003464, 0.738956),(0.312691, -0.002000, 0.740305),(0.213157, -0.003464, 0.773343),(0.312691, -0.002000, 0.740305),(0.213545, -0.002000, 0.774755),(0.212627, -0.004000, 0.771414),(0.311342, -0.004000, 0.737114),(0.312121, -0.003464, 0.738956),(0.212627, -0.004000, 0.771414),(0.312121, -0.003464, 0.738956),(0.213157, -0.003464, 0.773343),(0.212098, -0.003464, 0.769486),(0.310564, -0.003464, 0.735272),(0.311342, -0.004000, 0.737114),(0.212098, -0.003464, 0.769486),(0.311342, -0.004000, 0.737114),(0.212627, -0.004000, 0.771414),(0.211710, -0.002000, 0.768074),(0.309994, -0.002000, 0.733923),(0.310564, -0.003464, 0.735272),(0.211710, -0.002000, 0.768074),(0.310564, -0.003464, 0.735272),(0.212098, -0.003464, 0.769486),(0.211568, 0.000000, 0.767557),(0.309785, 0.000000, 0.733429),(0.309994, -0.002000, 0.733923),(0.211568, 0.000000, 0.767557),(0.309994, -0.002000, 0.733923),(0.211710, -0.002000, 0.768074),(0.211710, 0.002000, 0.768074),(0.309994, 0.002000, 0.733923),(0.309785, 0.000000, 0.733429),(0.211710, 0.002000, 0.768074),(0.309785, 0.000000, 0.733429),(0.211568, 0.000000, 0.767557),(0.212098, 0.003464, 0.769486),(0.310564, 0.003464, 0.735272),(0.309994, 0.002000, 0.733923),(0.212098, 0.003464, 0.769486),(0.309994, 0.002000, 0.733923),(0.211710, 0.002000, 0.768074),(0.212627, 0.004000, 0.771414),(0.311342, 0.004000, 0.737114),(0.310564, 0.003464, 0.735272),(0.212627, 0.004000, 0.771414),(0.310564, 0.003464, 0.735272),(0.212098, 0.003464, 0.769486),(0.213157, 0.003464, 0.773343),(0.312121, 0.003464, 0.738956),(0.311342, 0.004000, 0.737114),(0.213157, 0.003464, 0.773343),(0.311342, 0.004000, 0.737114),(0.212627, 0.004000, 0.771414),(0.213545, 0.002000, 0.774755),(0.312691, 0.002000, 0.740305),(0.312121, 0.003464, 0.738956),(0.213545, 0.002000, 0.774755),(0.312121, 0.003464, 0.738956),(0.213157, 0.003464, 0.773343),(0.213687, 0.000000, 0.775271),(0.312899, 0.000000, 0.740799),(0.312691, 0.002000, 0.740305),(0.213687, 0.000000, 0.775271),(0.312691, 0.002000, 0.740305),(0.213545, 0.002000, 0.774755),(0.312691, -0.002000, 0.740305),(0.405469, -0.002000, 0.693738),(0.405740, 0.000000, 0.694200),(0.312691, -0.002000, 0.740305),(0.405740, 0.000000, 0.694200),(0.312899, 0.000000, 0.740799),(0.312121, -0.003464, 0.738956),(0.404729, -0.003464, 0.692474),(0.405469, -0.002000, 0.693738),(0.312121, -0.003464, 0.738956),(0.405469, -0.002000, 0.693738),(0.312691, -0.002000, 0.740305),(0.311342, -0.004000, 0.737114),(0.403719, -0.004000, 0.690748),(0.404729, -0.003464, 0.692474),(0.311342, -0.004000, 0.737114),(0.404729, -0.003464, 0.692474),(0.312121, -0.003464, 0.738956),(0.310564, -0.003464, 0.735272),(0.402708, -0.003464, 0.689022),(0.403719, -0.004000, 0.690748),(0.310564, -0.003464, 0.735272),(0.403719, -0.004000, 0.690748),(0.311342, -0.004000, 0.737114),(0.309994, -0.002000, 0.733923),(0.401968, -0.002000, 0.687759),(0.402708, -0.003464, 0.689022),(0.309994, -0.002000, 0.733923),(0.402708, -0.003464, 0.689022),(0.310564, -0.003464, 0.735272),(0.309785, 0.000000, 0.733429),(0.401698, 0.000000, 0.687296),(0.401968, -0.002000, 0.687759),(0.309785, 0.000000, 0.733429),(0.401968, -0.002000, 0.687759),(0.309994, -0.002000, 0.733923),(0.309994, 0.002000, 0.733923),(0.401968, 0.002000, 0.687759),(0.401698, 0.000000, 0.687296),(0.309994, 0.002000, 0.733923),(0.401698, 0.000000, 0.687296),(0.309785, 0.000000, 0.733429),(0.310564, 0.003464, 0.735272),(0.402708, 0.003464, 0.689022),(0.401968, 0.002000, 0.687759),(0.310564, 0.003464, 0.735272),(0.401968, 0.002000, 0.687759),(0.309994, 0.002000, 0.733923),(0.311342, 0.004000, 0.737114),(0.403719, 0.004000, 0.690748),(0.402708, 0.003464, 0.689022),(0.311342, 0.004000, 0.737114),(0.402708, 0.003464, 0.689022),(0.310564, 0.003464, 0.735272),(0.312121, 0.003464, 0.738956),(0.404729, 0.003464, 0.692474),(0.403719, 0.004000, 0.690748),(0.312121, 0.003464, 0.738956),(0.403719, 0.004000, 0.690748),(0.311342, 0.004000, 0.737114),(0.312691, 0.002000, 0.740305),(0.405469, 0.002000, 0.693738),(0.404729, 0.003464, 0.692474),(0.312691, 0.002000, 0.740305),(0.404729, 0.003464, 0.692474),(0.312121, 0.003464, 0.738956),(0.312899, 0.000000, 0.740799),(0.405740, 0.000000, 0.694200),(0.405469, 0.002000, 0.693738),(0.312899, 0.000000, 0.740799),(0.405469, 0.002000, 0.693738),(0.312691, 0.002000, 0.740305),(0.405469, -0.002000, 0.693738),(0.490920, -0.002000, 0.636012),(0.491248, 0.000000, 0.636436),(0.405469, -0.002000, 0.693738),(0.491248, 0.000000, 0.636436),(0.405740, 0.000000, 0.694200),(0.404729, -0.003464, 0.692474),(0.490025, -0.003464, 0.634854),(0.490920, -0.002000, 0.636012),(0.404729, -0.003464, 0.692474),(0.490920, -0.002000, 0.636012),(0.405469, -0.002000, 0.693738),(0.403719, -0.004000, 0.690748),(0.488802, -0.004000, 0.633271),(0.490025, -0.003464, 0.634854),(0.403719, -0.004000, 0.690748),(0.490025, -0.003464, 0.634854),(0.404729, -0.003464, 0.692474),(0.402708, -0.003464, 0.689022),(0.487579, -0.003464, 0.631689),(0.488802, -0.004000, 0.633271),(0.402708, -0.003464, 0.689022),(0.488802, -0.004000, 0.633271),(0.403719, -0.004000, 0.690748),(0.401968, -0.002000, 0.687759),(0.486684, -0.002000, 0.630530),(0.487579, -0.003464, 0.631689),(0.401968, -0.002000, 0.687759),(0.487579, -0.003464, 0.631689),(0.402708, -0.003464, 0.689022),(0.401698, 0.000000, 0.687296),(0.486356, 0.000000, 0.630106),(0.486684, -0.002000, 0.630530),(0.401698, 0.000000, 0.687296),(0.486684, -0.002000, 0.630530),(0.401968, -0.002000, 0.687759),(0.401968, 0.002000, 0.687759),(0.486684, 0.002000, 0.630530),(0.486356, 0.000000, 0.630106),(0.401968, 0.002000, 0.687759),(0.486356, 0.000000, 0.630106),(0.401698, 0.000000, 0.687296),(0.402708, 0.003464, 0.689022),(0.487579, 0.003464, 0.631689),(0.486684, 0.002000, 0.630530),(0.402708, 0.003464, 0.689022),(0.486684, 0.002000, 0.630530),(0.401968, 0.002000, 0.687759),(0.403719, 0.004000, 0.690748),(0.488802, 0.004000, 0.633271),(0.487579, 0.003464, 0.631689),(0.403719, 0.004000, 0.690748),(0.487579, 0.003464, 0.631689),(0.402708, 0.003464, 0.689022),(0.404729, 0.003464, 0.692474),(0.490025, 0.003464, 0.634854),(0.488802, 0.004000, 0.633271),(0.404729, 0.003464, 0.692474),(0.488802, 0.004000, 0.633271),(0.403719, 0.004000, 0.690748),(0.405469, 0.002000, 0.693738),(0.490920, 0.002000, 0.636012),(0.490025, 0.003464, 0.634854),(0.405469, 0.002000, 0.693738),(0.490025, 0.003464, 0.634854),(0.404729, 0.003464, 0.692474),(0.405740, 0.000000, 0.694200),(0.491248, 0.000000, 0.636436),(0.490920, 0.002000, 0.636012),(0.405740, 0.000000, 0.694200),(0.490920, 0.002000, 0.636012),(0.405469, 0.002000, 0.693738),(0.490920, -0.002000, 0.636012),(0.568087, -0.002000, 0.568087),(0.568466, 0.000000, 0.568466),(0.490920, -0.002000, 0.636012),(0.568466, 0.000000, 0.568466),(0.491248, 0.000000, 0.636436),(0.490025, -0.003464, 0.634854),(0.567052, -0.003464, 0.567052),(0.568087, -0.002000, 0.568087),(0.490025, -0.003464, 0.634854),(0.568087, -0.002000, 0.568087),(0.490920, -0.002000, 0.636012),(0.488802, -0.004000, 0.633271),(0.565638, -0.004000, 0.565637),(0.567052, -0.003464, 0.567052),(0.488802, -0.004000, 0.633271),(0.567052, -0.003464, 0.567052),(0.490025, -0.003464, 0.634854),(0.487579, -0.003464, 0.631689),(0.564223, -0.003464, 0.564223),(0.565638, -0.004000, 0.565637),(0.487579, -0.003464, 0.631689),(0.565638, -0.004000, 0.565637),(0.488802, -0.004000, 0.633271),(0.486684, -0.002000, 0.630530),(0.563188, -0.002000, 0.563188),(0.564223, -0.003464, 0.564223),(0.486684, -0.002000, 0.630530),(0.564223, -0.003464, 0.564223),(0.487579, -0.003464, 0.631689),(0.486356, 0.000000, 0.630106),(0.562809, 0.000000, 0.562809),(0.563188, -0.002000, 0.563188),(0.486356, 0.000000, 0.630106),(0.563188, -0.002000, 0.563188),(0.486684, -0.002000, 0.630530),(0.486684, 0.002000, 0.630530),(0.563188, 0.002000, 0.563188),(0.562809, 0.000000, 0.562809),(0.486684, 0.002000, 0.630530),(0.562809, 0.000000, 0.562809),(0.486356, 0.000000, 0.630106),(0.487579, 0.003464, 0.631689),(0.564223, 0.003464, 0.564223),(0.563188, 0.002000, 0.563188),(0.487579, 0.003464, 0.631689),(0.563188, 0.002000, 0.563188),(0.486684, 0.002000, 0.630530),(0.488802, 0.004000, 0.633271),(0.565638, 0.004000, 0.565637),(0.564223, 0.003464, 0.564223),(0.488802, 0.004000, 0.633271),(0.564223, 0.003464, 0.564223),(0.487579, 0.003464, 0.631689),(0.490025, 0.003464, 0.634854),(0.567052, 0.003464, 0.567052),(0.565638, 0.004000, 0.565637),(0.490025, 0.003464, 0.634854),(0.565638, 0.004000, 0.565637),(0.488802, 0.004000, 0.633271),(0.490920, 0.002000, 0.636012),(0.568087, 0.002000, 0.568087),(0.567052, 0.003464, 0.567052),(0.490920, 0.002000, 0.636012),(0.567052, 0.003464, 0.567052),(0.490025, 0.003464, 0.634854),(0.491248, 0.000000, 0.636436),(0.568466, 0.000000, 0.568466),(0.568087, 0.002000, 0.568087),(0.491248, 0.000000, 0.636436),(0.568087, 0.002000, 0.568087),(0.490920, 0.002000, 0.636012),(0.568087, -0.002000, 0.568087),(0.636012, -0.002000, 0.490920),(0.636436, 0.000000, 0.491248),(0.568087, -0.002000, 0.568087),(0.636436, 0.000000, 0.491248),(0.568466, 0.000000, 0.568466),(0.567052, -0.003464, 0.567052),(0.634854, -0.003464, 0.490025),(0.636012, -0.002000, 0.490920),(0.567052, -0.003464, 0.567052),(0.636012, -0.002000, 0.490920),(0.568087, -0.002000, 0.568087),(0.565638, -0.004000, 0.565637),(0.633271, -0.004000, 0.488802),(0.634854, -0.003464, 0.490025),(0.565638, -0.004000, 0.565637),(0.634854, -0.003464, 0.490025),(0.567052, -0.003464, 0.567052),(0.564223, -0.003464, 0.564223),(0.631689, -0.003464, 0.487579),(0.633271, -0.004000, 0.488802),(0.564223, -0.003464, 0.564223),(0.633271, -0.004000, 0.488802),(0.565638, -0.004000, 0.565637),(0.563188, -0.002000, 0.563188),(0.630530, -0.002000, 0.486684),(0.631689, -0.003464, 0.487579),(0.563188, -0.002000, 0.563188),(0.631689, -0.003464, 0.487579),(0.564223, -0.003464, 0.564223),(0.562809, 0.000000, 0.562809),(0.630106, 0.000000, 0.486356),(0.630530, -0.002000, 0.486684),(0.562809, 0.000000, 0.562809),(0.630530, -0.002000, 0.486684),(0.563188, -0.002000, 0.563188),(0.563188, 0.002000, 0.563188),(0.630530, 0.002000, 0.486684),(0.630106, 0.000000, 0.486356),(0.563188, 0.002000, 0.563188),(0.630106, 0.000000, 0.486356),(0.562809, 0.000000, 0.562809),(0.564223, 0.003464, 0.564223),(0.631689, 0.003464, 0.487579),(0.630530, 0.002000, 0.486684),(0.564223, 0.003464, 0.564223),(0.630530, 0.002000, 0.486684),(0.563188, 0.002000, 0.563188),(0.565638, 0.004000, 0.565637),(0.633271, 0.004000, 0.488802),(0.631689, 0.003464, 0.487579),(0.565638, 0.004000, 0.565637),(0.631689, 0.003464, 0.487579),(0.564223, 0.003464, 0.564223),(0.567052, 0.003464, 0.567052),(0.634854, 0.003464, 0.490025),(0.633271, 0.004000, 0.488802),(0.567052, 0.003464, 0.567052),(0.633271, 0.004000, 0.488802),(0.565638, 0.004000, 0.565637),(0.568087, 0.002000, 0.568087),(0.636012, 0.002000, 0.490920),(0.634854, 0.003464, 0.490025),(0.568087, 0.002000, 0.568087),(0.634854, 0.003464, 0.490025),(0.567052, 0.003464, 0.567052),(0.568466, 0.000000, 0.568466),(0.636436, 0.000000, 0.491248),(0.636012, 0.002000, 0.490920),(0.568466, 0.000000, 0.568466),(0.636012, 0.002000, 0.490920),(0.568087, 0.002000, 0.568087),(0.636012, -0.002000, 0.490920),(0.693738, -0.002000, 0.405469),(0.694200, 0.000000, 0.405739),(0.636012, -0.002000, 0.490920),(0.694200, 0.000000, 0.405739),(0.636436, 0.000000, 0.491248),(0.634854, -0.003464, 0.490025),(0.692474, -0.003464, 0.404729),(0.693738, -0.002000, 0.405469),(0.634854, -0.003464, 0.490025),(0.693738, -0.002000, 0.405469),(0.636012, -0.002000, 0.490920),(0.633271, -0.004000, 0.488802),(0.690748, -0.004000, 0.403719),(0.692474, -0.003464, 0.404729),(0.633271, -0.004000, 0.488802),(0.692474, -0.003464, 0.404729),(0.634854, -0.003464, 0.490025),(0.631689, -0.003464, 0.487579),(0.689022, -0.003464, 0.402708),(0.690748, -0.004000, 0.403719),(0.631689, -0.003464, 0.487579),(0.690748, -0.004000, 0.403719),(0.633271, -0.004000, 0.488802),(0.630530, -0.002000, 0.486684),(0.687759, -0.002000, 0.401968),(0.689022, -0.003464, 0.402708),(0.630530, -0.002000, 0.486684),(0.689022, -0.003464, 0.402708),(0.631689, -0.003464, 0.487579),(0.630106, 0.000000, 0.486356),(0.687296, 0.000000, 0.401698),(0.687759, -0.002000, 0.401968),(0.630106, 0.000000, 0.486356),(0.687759, -0.002000, 0.401968),(0.630530, -0.002000, 0.486684),(0.630530, 0.002000, 0.486684),(0.687759, 0.002000, 0.401968),(0.687296, 0.000000, 0.401698),(0.630530, 0.002000, 0.486684),(0.687296, 0.000000, 0.401698),(0.630106, 0.000000, 0.486356),(0.631689, 0.003464, 0.487579),(0.689022, 0.003464, 0.402708),(0.687759, 0.002000, 0.401968),(0.631689, 0.003464, 0.487579),(0.687759, 0.002000, 0.401968),(0.630530, 0.002000, 0.486684),(0.633271, 0.004000, 0.488802),(0.690748, 0.004000, 0.403719),(0.689022, 0.003464, 0.402708),(0.633271, 0.004000, 0.488802),(0.689022, 0.003464, 0.402708),(0.631689, 0.003464, 0.487579),(0.634854, 0.003464, 0.490025),(0.692474, 0.003464, 0.404729),(0.690748, 0.004000, 0.403719),(0.634854, 0.003464, 0.490025),(0.690748, 0.004000, 0.403719),(0.633271, 0.004000, 0.488802),(0.636012, 0.002000, 0.490920),(0.693738, 0.002000, 0.405469),(0.692474, 0.003464, 0.404729),(0.636012, 0.002000, 0.490920),(0.692474, 0.003464, 0.404729),(0.634854, 0.003464, 0.490025),(0.636436, 0.000000, 0.491248),(0.694200, 0.000000, 0.405739),(0.693738, 0.002000, 0.405469),(0.636436, 0.000000, 0.491248),(0.693738, 0.002000, 0.405469),(0.636012, 0.002000, 0.490920),(0.693738, -0.002000, 0.405469),(0.740305, -0.002000, 0.312691),(0.740799, 0.000000, 0.312899),(0.693738, -0.002000, 0.405469),(0.740799, 0.000000, 0.312899),(0.694200, 0.000000, 0.405739),(0.692474, -0.003464, 0.404729),(0.738956, -0.003464, 0.312121),(0.740305, -0.002000, 0.312691),(0.692474, -0.003464, 0.404729),(0.740305, -0.002000, 0.312691),(0.693738, -0.002000, 0.405469),(0.690748, -0.004000, 0.403719),(0.737114, -0.004000, 0.311342),(0.738956, -0.003464, 0.312121),(0.690748, -0.004000, 0.403719),(0.738956, -0.003464, 0.312121),(0.692474, -0.003464, 0.404729),(0.689022, -0.003464, 0.402708),(0.735272, -0.003464, 0.310564),(0.737114, -0.004000, 0.311342),(0.689022, -0.003464, 0.402708),(0.737114, -0.004000, 0.311342),(0.690748, -0.004000, 0.403719),(0.687759, -0.002000, 0.401968),(0.733923, -0.002000, 0.309994),(0.735272, -0.003464, 0.310564),(0.687759, -0.002000, 0.401968),(0.735272, -0.003464, 0.310564),(0.689022, -0.003464, 0.402708),(0.687296, 0.000000, 0.401698),(0.733430, 0.000000, 0.309785),(0.733923, -0.002000, 0.309994),(0.687296, 0.000000, 0.401698),(0.733923, -0.002000, 0.309994),(0.687759, -0.002000, 0.401968),(0.687759, 0.002000, 0.401968),(0.733923, 0.002000, 0.309994),(0.733430, 0.000000, 0.309785),(0.687759, 0.002000, 0.401968),(0.733430, 0.000000, 0.309785),(0.687296, 0.000000, 0.401698),(0.689022, 0.003464, 0.402708),(0.735272, 0.003464, 0.310564),(0.733923, 0.002000, 0.309994),(0.689022, 0.003464, 0.402708),(0.733923, 0.002000, 0.309994),(0.687759, 0.002000, 0.401968),(0.690748, 0.004000, 0.403719),(0.737114, 0.004000, 0.311342),(0.735272, 0.003464, 0.310564),(0.690748, 0.004000, 0.403719),(0.735272, 0.003464, 0.310564),(0.689022, 0.003464, 0.402708),(0.692474, 0.003464, 0.404729),(0.738956, 0.003464, 0.312121),(0.737114, 0.004000, 0.311342),(0.692474, 0.003464, 0.404729),(0.737114, 0.004000, 0.311342),(0.690748, 0.004000, 0.403719),(0.693738, 0.002000, 0.405469),(0.740305, 0.002000, 0.312691),(0.738956, 0.003464, 0.312121),(0.693738, 0.002000, 0.405469),(0.738956, 0.003464, 0.312121),(0.692474, 0.003464, 0.404729),(0.694200, 0.000000, 0.405739),(0.740799, 0.000000, 0.312899),(0.740305, 0.002000, 0.312691),(0.694200, 0.000000, 0.405739),(0.740305, 0.002000, 0.312691),(0.693738, 0.002000, 0.405469),(0.740305, -0.002000, 0.312691),(0.774755, -0.002000, 0.213545),(0.775272, 0.000000, 0.213687),(0.740305, -0.002000, 0.312691),(0.775272, 0.000000, 0.213687),(0.740799, 0.000000, 0.312899),(0.738956, -0.003464, 0.312121),(0.773343, -0.003464, 0.213157),(0.774755, -0.002000, 0.213545),(0.738956, -0.003464, 0.312121),(0.774755, -0.002000, 0.213545),(0.740305, -0.002000, 0.312691),(0.737114, -0.004000, 0.311342),(0.771414, -0.004000, 0.212627),(0.773343, -0.003464, 0.213157),(0.737114, -0.004000, 0.311342),(0.773343, -0.003464, 0.213157),(0.738956, -0.003464, 0.312121),(0.735272, -0.003464, 0.310564),(0.769486, -0.003464, 0.212098),(0.771414, -0.004000, 0.212627),(0.735272, -0.003464, 0.310564),(0.771414, -0.004000, 0.212627),(0.737114, -0.004000, 0.311342),(0.733923, -0.002000, 0.309994),(0.768074, -0.002000, 0.211710),(0.769486, -0.003464, 0.212098),(0.733923, -0.002000, 0.309994),(0.769486, -0.003464, 0.212098),(0.735272, -0.003464, 0.310564),(0.733430, 0.000000, 0.309785),(0.767557, 0.000000, 0.211568),(0.768074, -0.002000, 0.211710),(0.733430, 0.000000, 0.309785),(0.768074, -0.002000, 0.211710),(0.733923, -0.002000, 0.309994),(0.733923, 0.002000, 0.309994),(0.768074, 0.002000, 0.211710),(0.767557, 0.000000, 0.211568),(0.733923, 0.002000, 0.309994),(0.767557, 0.000000, 0.211568),(0.733430, 0.000000, 0.309785),(0.735272, 0.003464, 0.310564),(0.769486, 0.003464, 0.212098),(0.768074, 0.002000, 0.211710),(0.735272, 0.003464, 0.310564),(0.768074, 0.002000, 0.211710),(0.733923, 0.002000, 0.309994),(0.737114, 0.004000, 0.311342),(0.771414, 0.004000, 0.212627),(0.769486, 0.003464, 0.212098),(0.737114, 0.004000, 0.311342),(0.769486, 0.003464, 0.212098),(0.735272, 0.003464, 0.310564),(0.738956, 0.003464, 0.312121),(0.773343, 0.003464, 0.213157),(0.771414, 0.004000, 0.212627),(0.738956, 0.003464, 0.312121),(0.771414, 0.004000, 0.212627),(0.737114, 0.004000, 0.311342),(0.740305, 0.002000, 0.312691),(0.774755, 0.002000, 0.213545),(0.773343, 0.003464, 0.213157),(0.740305, 0.002000, 0.312691),(0.773343, 0.003464, 0.213157),(0.738956, 0.003464, 0.312121),(0.740799, 0.000000, 0.312899),(0.775272, 0.000000, 0.213687),(0.774755, 0.002000, 0.213545),(0.740799, 0.000000, 0.312899),(0.774755, 0.002000, 0.213545),(0.740305, 0.002000, 0.312691),(0.774755, -0.002000, 0.213545),(0.796127, -0.002000, 0.108993),(0.796658, 0.000000, 0.109064),(0.774755, -0.002000, 0.213545),(0.796658, 0.000000, 0.109064),(0.775272, 0.000000, 0.213687),(0.773343, -0.003464, 0.213157),(0.794677, -0.003464, 0.108796),(0.796127, -0.002000, 0.108993),(0.773343, -0.003464, 0.213157),(0.796127, -0.002000, 0.108993),(0.774755, -0.002000, 0.213545),(0.771414, -0.004000, 0.212627),(0.792695, -0.004000, 0.108528),(0.794677, -0.003464, 0.108796),(0.771414, -0.004000, 0.212627),(0.794677, -0.003464, 0.108796),(0.773343, -0.003464, 0.213157),(0.769486, -0.003464, 0.212098),(0.790713, -0.003464, 0.108260),(0.792695, -0.004000, 0.108528),(0.769486, -0.003464, 0.212098),(0.792695, -0.004000, 0.108528),(0.771414, -0.004000, 0.212627),(0.768074, -0.002000, 0.211710),(0.789262, -0.002000, 0.108064),(0.790713, -0.003464, 0.108260),(0.768074, -0.002000, 0.211710),(0.790713, -0.003464, 0.108260),(0.769486, -0.003464, 0.212098),(0.767557, 0.000000, 0.211568),(0.788731, 0.000000, 0.107992),(0.789262, -0.002000, 0.108064),(0.767557, 0.000000, 0.211568),(0.789262, -0.002000, 0.108064),(0.768074, -0.002000, 0.211710),(0.768074, 0.002000, 0.211710),(0.789262, 0.002000, 0.108064),(0.788731, 0.000000, 0.107992),(0.768074, 0.002000, 0.211710),(0.788731, 0.000000, 0.107992),(0.767557, 0.000000, 0.211568),(0.769486, 0.003464, 0.212098),(0.790713, 0.003464, 0.108260),(0.789262, 0.002000, 0.108064),(0.769486, 0.003464, 0.212098),(0.789262, 0.002000, 0.108064),(0.768074, 0.002000, 0.211710),(0.771414, 0.004000, 0.212627),(0.792695, 0.004000, 0.108528),(0.790713, 0.003464, 0.108260),(0.771414, 0.004000, 0.212627),(0.790713, 0.003464, 0.108260),(0.769486, 0.003464, 0.212098),(0.773343, 0.003464, 0.213157),(0.794677, 0.003464, 0.108796),(0.792695, 0.004000, 0.108528),(0.773343, 0.003464, 0.213157),(0.792695, 0.004000, 0.108528),(0.771414, 0.004000, 0.212627),(0.774755, 0.002000, 0.213545),(0.796127, 0.002000, 0.108993),(0.794677, 0.003464, 0.108796),(0.774755, 0.002000, 0.213545),(0.794677, 0.003464, 0.108796),(0.773343, 0.003464, 0.213157),(0.775272, 0.000000, 0.213687),(0.796658, 0.000000, 0.109064),(0.796127, 0.002000, 0.108993),(0.775272, 0.000000, 0.213687),(0.796127, 0.002000, 0.108993),(0.774755, 0.002000, 0.213545),(0.796127, -0.002000, 0.108993),(0.803464, -0.002000, -0.000000),(0.804000, 0.000000, -0.000000),(0.796127, -0.002000, 0.108993),(0.804000, 0.000000, -0.000000),(0.796658, 0.000000, 0.109064),(0.794677, -0.003464, 0.108796),(0.802000, -0.003464, -0.000000),(0.803464, -0.002000, -0.000000),(0.794677, -0.003464, 0.108796),(0.803464, -0.002000, -0.000000),(0.796127, -0.002000, 0.108993),(0.792695, -0.004000, 0.108528),(0.800000, -0.004000, 0.000000),(0.802000, -0.003464, -0.000000),(0.792695, -0.004000, 0.108528),(0.802000, -0.003464, -0.000000),(0.794677, -0.003464, 0.108796),(0.790713, -0.003464, 0.108260),(0.798000, -0.003464, 0.000000),(0.800000, -0.004000, 0.000000),(0.790713, -0.003464, 0.108260),(0.800000, -0.004000, 0.000000),(0.792695, -0.004000, 0.108528),(0.789262, -0.002000, 0.108064),(0.796536, -0.002000, 0.000000),(0.798000, -0.003464, 0.000000),(0.789262, -0.002000, 0.108064),(0.798000, -0.003464, 0.000000),(0.790713, -0.003464, 0.108260),(0.788731, 0.000000, 0.107992),(0.796000, -0.000000, 0.000000),(0.796536, -0.002000, 0.000000),(0.788731, 0.000000, 0.107992),(0.796536, -0.002000, 0.000000),(0.789262, -0.002000, 0.108064),(0.789262, 0.002000, 0.108064),(0.796536, 0.002000, 0.000000),(0.796000, -0.000000, 0.000000),(0.789262, 0.002000, 0.108064),(0.796000, -0.000000, 0.000000),(0.788731, 0.000000, 0.107992),(0.790713, 0.003464, 0.108260),(0.798000, 0.003464, 0.000000),(0.796536, 0.002000, 0.000000),(0.790713, 0.003464, 0.108260),(0.796536, 0.002000, 0.000000),(0.789262, 0.002000, 0.108064),(0.792695, 0.004000, 0.108528),(0.800000, 0.004000, -0.000000),(0.798000, 0.003464, 0.000000),(0.792695, 0.004000, 0.108528),(0.798000, 0.003464, 0.000000),(0.790713, 0.003464, 0.108260),(0.794677, 0.003464, 0.108796),(0.802000, 0.003464, -0.000000),(0.800000, 0.004000, -0.000000),(0.794677, 0.003464, 0.108796),(0.800000, 0.004000, -0.000000),(0.792695, 0.004000, 0.108528),(0.796127, 0.002000, 0.108993),(0.803464, 0.002000, -0.000000),(0.802000, 0.003464, -0.000000),(0.796127, 0.002000, 0.108993),(0.802000, 0.003464, -0.000000),(0.794677, 0.003464, 0.108796),(0.796658, 0.000000, 0.109064),(0.804000, 0.000000, -0.000000),(0.803464, 0.002000, -0.000000),(0.796658, 0.000000, 0.109064),(0.803464, 0.002000, -0.000000),(0.796127, 0.002000, 0.108993),(0.803464, -0.002000, -0.000000),(0.796127, -0.002000, -0.108993),(0.796658, -0.000000, -0.109065),(0.803464, -0.002000, -0.000000),(0.796658, -0.000000, -0.109065),(0.804000, 0.000000, -0.000000),(0.802000, -0.003464, -0.000000),(0.794676, -0.003464, -0.108797),(0.796127, -0.002000, -0.108993),(0.802000, -0.003464, -0.000000),(0.796127, -0.002000, -0.108993),(0.803464, -0.002000, -0.000000),(0.800000, -0.004000, 0.000000),(0.792694, -0.004000, -0.108528),(0.794676, -0.003464, -0.108797),(0.800000, -0.004000, 0.000000),(0.794676, -0.003464, -0.108797),(0.802000, -0.003464, -0.000000),(0.798000, -0.003464, 0.000000),(0.790712, -0.003464, -0.108260),(0.792694, -0.004000, -0.108528),(0.798000, -0.003464, 0.000000),(0.792694, -0.004000, -0.108528),(0.800000, -0.004000, 0.000000),(0.796536, -0.002000, 0.000000),(0.789262, -0.002000, -0.108064),(0.790712, -0.003464, -0.108260),(0.796536, -0.002000, 0.000000),(0.790712, -0.003464, -0.108260),(0.798000, -0.003464, 0.000000),(0.796000, -0.000000, 0.000000),(0.788731, -0.000000, -0.107992),(0.789262, -0.002000, -0.108064),(0.796000, -0.000000, 0.000000),(0.789262, -0.002000, -0.108064),(0.796536, -0.002000, 0.000000),(0.796536, 0.002000, 0.000000),(0.789262, 0.002000, -0.108064),(0.788731, -0.000000, -0.107992),(0.796536, 0.002000, 0.000000),(0.788731, -0.000000, -0.107992),(0.796000, -0.000000, 0.000000),(0.798000, 0.003464, 0.000000),(0.790712, 0.003464, -0.108260),(0.789262, 0.002000, -0.108064),(0.798000, 0.003464, 0.000000),(0.789262, 0.002000, -0.108064),(0.796536, 0.002000, 0.000000),(0.800000, 0.004000, -0.000000),(0.792694, 0.004000, -0.108528),(0.790712, 0.003464, -0.108260),(0.800000, 0.004000, -0.000000),(0.790712, 0.003464, -0.108260),(0.798000, 0.003464, 0.000000),(0.802000, 0.003464, -0.000000),(0.794676, 0.003464, -0.108797),(0.792694, 0.004000, -0.108528),(0.802000, 0.003464, -0.000000),(0.792694, 0.004000, -0.108528),(0.800000, 0.004000, -0.000000),(0.803464, 0.002000, -0.000000),(0.796127, 0.002000, -0.108993),(0.794676, 0.003464, -0.108797),(0.803464, 0.002000, -0.000000),(0.794676, 0.003464, -0.108797),(0.802000, 0.003464, -0.000000),(0.804000, 0.000000, -0.000000),(0.796658, -0.000000, -0.109065),(0.796127, 0.002000, -0.108993),(0.804000, 0.000000, -0.000000),(0.796127, 0.002000, -0.108993),(0.803464, 0.002000, -0.000000),(0.796127, -0.002000, -0.108993),(0.774755, -0.002000, -0.213545),(0.775271, -0.000000, -0.213687),(0.796127, -0.002000, -0.108993),(0.775271, -0.000000, -0.213687),(0.796658, -0.000000, -0.109065),(0.794676, -0.003464, -0.108797),(0.773343, -0.003464, -0.213157),(0.774755, -0.002000, -0.213545),(0.794676, -0.003464, -0.108797),(0.774755, -0.002000, -0.213545),(0.796127, -0.002000, -0.108993),(0.792694, -0.004000, -0.108528),(0.771414, -0.004000, -0.212627),(0.773343, -0.003464, -0.213157),(0.792694, -0.004000, -0.108528),(0.773343, -0.003464, -0.213157),(0.794676, -0.003464, -0.108797),(0.790712, -0.003464, -0.108260),(0.769486, -0.003464, -0.212098),(0.771414, -0.004000, -0.212627),(0.790712, -0.003464, -0.108260),(0.771414, -0.004000, -0.212627),(0.792694, -0.004000, -0.108528),(0.789262, -0.002000, -0.108064),(0.768074, -0.002000, -0.211710),(0.769486, -0.003464, -0.212098),(0.789262, -0.002000, -0.108064),(0.769486, -0.003464, -0.212098),(0.790712, -0.003464, -0.108260),(0.788731, -0.000000, -0.107992),(0.767557, -0.000000, -0.211568),(0.768074, -0.002000, -0.211710),(0.788731, -0.000000, -0.107992),(0.768074, -0.002000, -0.211710),(0.789262, -0.002000, -0.108064),(0.789262, 0.002000, -0.108064),(0.768074, 0.002000, -0.211710),(0.767557, -0.000000, -0.211568),(0.789262, 0.002000, -0.108064),(0.767557, -0.000000, -0.211568),(0.788731, -0.000000, -0.107992),(0.790712, 0.003464, -0.108260),(0.769486, 0.003464, -0.212098),(0.768074, 0.002000, -0.211710),(0.790712, 0.003464, -0.108260),(0.768074, 0.002000, -0.211710),(0.789262, 0.002000, -0.108064),(0.792694, 0.004000, -0.108528),(0.771414, 0.004000, -0.212627),(0.769486, 0.003464, -0.212098),(0.792694, 0.004000, -0.108528),(0.769486, 0.003464, -0.212098),(0.790712, 0.003464, -0.108260),(0.794676, 0.003464, -0.108797),(0.773343, 0.003464, -0.213157),(0.771414, 0.004000, -0.212627),(0.794676, 0.003464, -0.108797),(0.771414, 0.004000, -0.212627),(0.792694, 0.004000, -0.108528),(0.796127, 0.002000, -0.108993),(0.774755, 0.002000, -0.213545),(0.773343, 0.003464, -0.213157),(0.796127, 0.002000, -0.108993),(0.773343, 0.003464, -0.213157),(0.794676, 0.003464, -0.108797),(0.796658, -0.000000, -0.109065),(0.775271, -0.000000, -0.213687),(0.774755, 0.002000, -0.213545),(0.796658, -0.000000, -0.109065),(0.774755, 0.002000, -0.213545),(0.796127, 0.002000, -0.108993),(0.774755, -0.002000, -0.213545),(0.740305, -0.002000, -0.312691),(0.740799, -0.000000, -0.312899),(0.774755, -0.002000, -0.213545),(0.740799, -0.000000, -0.312899),(0.775271, -0.000000, -0.213687),(0.773343, -0.003464, -0.213157),(0.738956, -0.003464, -0.312121),(0.740305, -0.002000, -0.312691),(0.773343, -0.003464, -0.213157),(0.740305, -0.002000, -0.312691),(0.774755, -0.002000, -0.213545),(0.771414, -0.004000, -0.212627),(0.737114, -0.004000, -0.311342),(0.738956, -0.003464, -0.312121),(0.771414, -0.004000, -0.212627),(0.738956, -0.003464, -0.312121),(0.773343, -0.003464, -0.213157),(0.769486, -0.003464, -0.212098),(0.735272, -0.003464, -0.310564),(0.737114, -0.004000, -0.311342),(0.769486, -0.003464, -0.212098),(0.737114, -0.004000, -0.311342),(0.771414, -0.004000, -0.212627),(0.768074, -0.002000, -0.211710),(0.733923, -0.002000, -0.309994),(0.735272, -0.003464, -0.310564),(0.768074, -0.002000, -0.211710),(0.735272, -0.003464, -0.310564),(0.769486, -0.003464, -0.212098),(0.767557, -0.000000, -0.211568),(0.733429, -0.000000, -0.309785),(0.733923, -0.002000, -0.309994),(0.767557, -0.000000, -0.211568),(0.733923, -0.002000, -0.309994),(0.768074, -0.002000, -0.211710),(0.768074, 0.002000, -0.211710),(0.733923, 0.002000, -0.309994),(0.733429, -0.000000, -0.309785),(0.768074, 0.002000, -0.211710),(0.733429, -0.000000, -0.309785),(0.767557, -0.000000, -0.211568),(0.769486, 0.003464, -0.212098),(0.735272, 0.003464, -0.310564),(0.733923, 0.002000, -0.309994),(0.769486, 0.003464, -0.212098),(0.733923, 0.002000, -0.309994),(0.768074, 0.002000, -0.211710),(0.771414, 0.004000, -0.212627),(0.737114, 0.004000, -0.311342),(0.735272, 0.003464, -0.310564),(0.771414, 0.004000, -0.212627),(0.735272, 0.003464, -0.310564),(0.769486, 0.003464, -0.212098),(0.773343, 0.003464, -0.213157),(0.738956, 0.003464, -0.312121),(0.737114, 0.004000, -0.311342),(0.773343, 0.003464, -0.213157),(0.737114, 0.004000, -0.311342),(0.771414, 0.004000, -0.212627),(0.774755, 0.002000, -0.213545),(0.740305, 0.002000, -0.312691),(0.738956, 0.003464, -0.312121),(0.774755, 0.002000, -0.213545),(0.738956, 0.003464, -0.312121),(0.773343, 0.003464, -0.213157),(0.775271, -0.000000, -0.213687),(0.740799, -0.000000, -0.312899),(0.740305, 0.002000, -0.312691),(0.775271, -0.000000, -0.213687),(0.740305, 0.002000, -0.312691),(0.774755, 0.002000, -0.213545),(0.740305, -0.002000, -0.312691),(0.693738, -0.002000, -0.405469),(0.694200, -0.000000, -0.405740),(0.740305, -0.002000, -0.312691),(0.694200, -0.000000, -0.405740),(0.740799, -0.000000, -0.312899),(0.738956, -0.003464, -0.312121),(0.692474, -0.003464, -0.404729),(0.693738, -0.002000, -0.405469),(0.738956, -0.003464, -0.312121),(0.693738, -0.002000, -0.405469),(0.740305, -0.002000, -0.312691),(0.737114, -0.004000, -0.311342),(0.690748, -0.004000, -0.403719),(0.692474, -0.003464, -0.404729),(0.737114, -0.004000, -0.311342),(0.692474, -0.003464, -0.404729),(0.738956, -0.003464, -0.312121),(0.735272, -0.003464, -0.310564),(0.689022, -0.003464, -0.402708),(0.690748, -0.004000, -0.403719),(0.735272, -0.003464, -0.310564),(0.690748, -0.004000, -0.403719),(0.737114, -0.004000, -0.311342),(0.733923, -0.002000, -0.309994),(0.687759, -0.002000, -0.401968),(0.689022, -0.003464, -0.402708),(0.733923, -0.002000, -0.309994),(0.689022, -0.003464, -0.402708),(0.735272, -0.003464, -0.310564),(0.733429, -0.000000, -0.309785),(0.687296, -0.000000, -0.401698),(0.687759, -0.002000, -0.401968),(0.733429, -0.000000, -0.309785),(0.687759, -0.002000, -0.401968),(0.733923, -0.002000, -0.309994),(0.733923, 0.002000, -0.309994),(0.687759, 0.002000, -0.401968),(0.687296, -0.000000, -0.401698),(0.733923, 0.002000, -0.309994),(0.687296, -0.000000, -0.401698),(0.733429, -0.000000, -0.309785),(0.735272, 0.003464, -0.310564),(0.689022, 0.003464, -0.402708),(0.687759, 0.002000, -0.401968),(0.735272, 0.003464, -0.310564),(0.687759, 0.002000, -0.401968),(0.733923, 0.002000, -0.309994),(0.737114, 0.004000, -0.311342),(0.690748, 0.004000, -0.403719),(0.689022, 0.003464, -0.402708),(0.737114, 0.004000, -0.311342),(0.689022, 0.003464, -0.402708),(0.735272, 0.003464, -0.310564),(0.738956, 0.003464, -0.312121),(0.692474, 0.003464, -0.404729),(0.690748, 0.004000, -0.403719),(0.738956, 0.003464, -0.312121),(0.690748, 0.004000, -0.403719),(0.737114, 0.004000, -0.311342),(0.740305, 0.002000, -0.312691),(0.693738, 0.002000, -0.405469),(0.692474, 0.003464, -0.404729),(0.740305, 0.002000, -0.312691),(0.692474, 0.003464, -0.404729),(0.738956, 0.003464, -0.312121),(0.740799, -0.000000, -0.312899),(0.694200, -0.000000, -0.405740),(0.693738, 0.002000, -0.405469),(0.740799, -0.000000, -0.312899),(0.693738, 0.002000, -0.405469),(0.740305, 0.002000, -0.312691),(0.693738, -0.002000, -0.405469),(0.636012, -0.002000, -0.490920),(0.636436, -0.000000, -0.491248),(0.693738, -0.002000, -0.405469),(0.636436, -0.000000, -0.491248),(0.694200, -0.000000, -0.405740),(0.692474, -0.003464, -0.404729),(0.634854, -0.003464, -0.490025),(0.636012, -0.002000, -0.490920),(0.692474, -0.003464, -0.404729),(0.636012, -0.002000, -0.490920),(0.693738, -0.002000, -0.405469),(0.690748, -0.004000, -0.403719),(0.633271, -0.004000, -0.488802),(0.634854, -0.003464, -0.490025),(0.690748, -0.004000, -0.403719),(0.634854, -0.003464, -0.490025),(0.692474, -0.003464, -0.404729),(0.689022, -0.003464, -0.402708),(0.631689, -0.003464, -0.487579),(0.633271, -0.004000, -0.488802),(0.689022, -0.003464, -0.402708),(0.633271, -0.004000, -0.488802),(0.690748, -0.004000, -0.403719),(0.687759, -0.002000, -0.401968),(0.630530, -0.002000, -0.486684),(0.631689, -0.003464, -0.487579),(0.687759, -0.002000, -0.401968),(0.631689, -0.003464, -0.487579),(0.689022, -0.003464, -0.402708),(0.687296, -0.000000, -0.401698),(0.630106, -0.000000, -0.486356),(0.630530, -0.002000, -0.486684),(0.687296, -0.000000, -0.401698),(0.630530, -0.002000, -0.486684),(0.687759, -0.002000, -0.401968),(0.687759, 0.002000, -0.401968),(0.630530, 0.002000, -0.486684),(0.630106, -0.000000, -0.486356),(0.687759, 0.002000, -0.401968),(0.630106, -0.000000, -0.486356),(0.687296, -0.000000, -0.401698),(0.689022, 0.003464, -0.402708),(0.631689, 0.003464, -0.487579),(0.630530, 0.002000, -0.486684),(0.689022, 0.003464, -0.402708),(0.630530, 0.002000, -0.486684),(0.687759, 0.002000, -0.401968),(0.690748, 0.004000, -0.403719),(0.633271, 0.004000, -0.488802),(0.631689, 0.003464, -0.487579),(0.690748, 0.004000, -0.403719),(0.631689, 0.003464, -0.487579),(0.689022, 0.003464, -0.402708),(0.692474, 0.003464, -0.404729),(0.634854, 0.003464, -0.490025),(0.633271, 0.004000, -0.488802),(0.692474, 0.003464, -0.404729),(0.633271, 0.004000, -0.488802),(0.690748, 0.004000, -0.403719),(0.693738, 0.002000, -0.405469),(0.636012, 0.002000, -0.490920),(0.634854, 0.003464, -0.490025),(0.693738, 0.002000, -0.405469),(0.634854, 0.003464, -0.490025),(0.692474, 0.003464, -0.404729),(0.694200, -0.000000, -0.405740),(0.636436, -0.000000, -0.491248),(0.636012, 0.002000, -0.490920),(0.694200, -0.000000, -0.405740),(0.636012, 0.002000, -0.490920),(0.693738, 0.002000, -0.405469),(0.636012, -0.002000, -0.490920),(0.568087, -0.002000, -0.568087),(0.568466, -0.000000, -0.568466),(0.636012, -0.002000, -0.490920),(0.568466, -0.000000, -0.568466),(0.636436, -0.000000, -0.491248),(0.634854, -0.003464, -0.490025),(0.567052, -0.003464, -0.567052),(0.568087, -0.002000, -0.568087),(0.634854, -0.003464, -0.490025),(0.568087, -0.002000, -0.568087),(0.636012, -0.002000, -0.490920),(0.633271, -0.004000, -0.488802),(0.565637, -0.004000, -0.565638),(0.567052, -0.003464, -0.567052),(0.633271, -0.004000, -0.488802),(0.567052, -0.003464, -0.567052),(0.634854, -0.003464, -0.490025),(0.631689, -0.003464, -0.487579),(0.564223, -0.003464, -0.564223),(0.565637, -0.004000, -0.565638),(0.631689, -0.003464, -0.487579),(0.565637, -0.004000, -0.565638),(0.633271, -0.004000, -0.488802),(0.630530, -0.002000, -0.486684),(0.563188, -0.002000, -0.563188),(0.564223, -0.003464, -0.564223),(0.630530, -0.002000, -0.486684),(0.564223, -0.003464, -0.564223),(0.631689, -0.003464, -0.487579),(0.630106, -0.000000, -0.486356),(0.562809, -0.000000, -0.562809),(0.563188, -0.002000, -0.563188),(0.630106, -0.000000, -0.486356),(0.563188, -0.002000, -0.563188),(0.630530, -0.002000, -0.486684),(0.630530, 0.002000, -0.486684),(0.563188, 0.002000, -0.563188),(0.562809, -0.000000, -0.562809),(0.630530, 0.002000, -0.486684),(0.562809, -0.000000, -0.562809),(0.630106, -0.000000, -0.486356),(0.631689, 0.003464, -0.487579),(0.564223, 0.003464, -0.564223),(0.563188, 0.002000, -0.563188),(0.631689, 0.003464, -0.487579),(0.563188, 0.002000, -0.563188),(0.630530, 0.002000, -0.486684),(0.633271, 0.004000, -0.488802),(0.565637, 0.004000, -0.565638),(0.564223, 0.003464, -0.564223),(0.633271, 0.004000, -0.488802),(0.564223, 0.003464, -0.564223),(0.631689, 0.003464, -0.487579),(0.634854, 0.003464, -0.490025),(0.567052, 0.003464, -0.567052),(0.565637, 0.004000, -0.565638),(0.634854, 0.003464, -0.490025),(0.565637, 0.004000, -0.565638),(0.633271, 0.004000, -0.488802),(0.636012, 0.002000, -0.490920),(0.568087, 0.002000, -0.568087),(0.567052, 0.003464, -0.567052),(0.636012, 0.002000, -0.490920),(0.567052, 0.003464, -0.567052),(0.634854, 0.003464, -0.490025),(0.636436, -0.000000, -0.491248),(0.568466, -0.000000, -0.568466),(0.568087, 0.002000, -0.568087),(0.636436, -0.000000, -0.491248),(0.568087, 0.002000, -0.568087),(0.636012, 0.002000, -0.490920),(0.568087, -0.002000, -0.568087),(0.490920, -0.002000, -0.636012),(0.491248, -0.000000, -0.636436),(0.568087, -0.002000, -0.568087),(0.491248, -0.000000, -0.636436),(0.568466, -0.000000, -0.568466),(0.567052, -0.003464, -0.567052),(0.490025, -0.003464, -0.634854),(0.490920, -0.002000, -0.636012),(0.567052, -0.003464, -0.567052),(0.490920, -0.002000, -0.636012),(0.568087, -0.002000, -0.568087),(0.565637, -0.004000, -0.565638),(0.488802, -0.004000, -0.633271),(0.490025, -0.003464, -0.634854),(0.565637, -0.004000, -0.565638),(0.490025, -0.003464, -0.634854),(0.567052, -0.003464, -0.567052),(0.564223, -0.003464, -0.564223),(0.487579, -0.003464, -0.631689),(0.488802, -0.004000, -0.633271),(0.564223, -0.003464, -0.564223),(0.488802, -0.004000, -0.633271),(0.565637, -0.004000, -0.565638),(0.563188, -0.002000, -0.563188),(0.486684, -0.002000, -0.630530),(0.487579, -0.003464, -0.631689),(0.563188, -0.002000, -0.563188),(0.487579, -0.003464, -0.631689),(0.564223, -0.003464, -0.564223),(0.562809, -0.000000, -0.562809),(0.486356, -0.000000, -0.630106),(0.486684, -0.002000, -0.630530),(0.562809, -0.000000, -0.562809),(0.486684, -0.002000, -0.630530),(0.563188, -0.002000, -0.563188),(0.563188, 0.002000, -0.563188),(0.486684, 0.002000, -0.630530),(0.486356, -0.000000, -0.630106),(0.563188, 0.002000, -0.563188),(0.486356, -0.000000, -0.630106),(0.562809, -0.000000, -0.562809),(0.564223, 0.003464, -0.564223),(0.487579, 0.003464, -0.631689),(0.486684, 0.002000, -0.630530),(0.564223, 0.003464, -0.564223),(0.486684, 0.002000, -0.630530),(0.563188, 0.002000, -0.563188),(0.565637, 0.004000, -0.565638),(0.488802, 0.004000, -0.633271),(0.487579, 0.003464, -0.631689),(0.565637, 0.004000, -0.565638),(0.487579, 0.003464, -0.631689),(0.564223, 0.003464, -0.564223),(0.567052, 0.003464, -0.567052),(0.490025, 0.003464, -0.634854),(0.488802, 0.004000, -0.633271),(0.567052, 0.003464, -0.567052),(0.488802, 0.004000, -0.633271),(0.565637, 0.004000, -0.565638),(0.568087, 0.002000, -0.568087),(0.490920, 0.002000, -0.636012),(0.490025, 0.003464, -0.634854),(0.568087, 0.002000, -0.568087),(0.490025, 0.003464, -0.634854),(0.567052, 0.003464, -0.567052),(0.568466, -0.000000, -0.568466),(0.491248, -0.000000, -0.636436),(0.490920, 0.002000, -0.636012),(0.568466, -0.000000, -0.568466),(0.490920, 0.002000, -0.636012),(0.568087, 0.002000, -0.568087),(0.490920, -0.002000, -0.636012),(0.405469, -0.002000, -0.693738),(0.405739, -0.000000, -0.694200),(0.490920, -0.002000, -0.636012),(0.405739, -0.000000, -0.694200),(0.491248, -0.000000, -0.636436),(0.490025, -0.003464, -0.634854),(0.404729, -0.003464, -0.692474),(0.405469, -0.002000, -0.693738),(0.490025, -0.003464, -0.634854),(0.405469, -0.002000, -0.693738),(0.490920, -0.002000, -0.636012),(0.488802, -0.004000, -0.633271),(0.403719, -0.004000, -0.690748),(0.404729, -0.003464, -0.692474),(0.488802, -0.004000, -0.633271),(0.404729, -0.003464, -0.692474),(0.490025, -0.003464, -0.634854),(0.487579, -0.003464, -0.631689),(0.402708, -0.003464, -0.689022),(0.403719, -0.004000, -0.690748),(0.487579, -0.003464, -0.631689),(0.403719, -0.004000, -0.690748),(0.488802, -0.004000, -0.633271),(0.486684, -0.002000, -0.630530),(0.401968, -0.002000, -0.687759),(0.402708, -0.003464, -0.689022),(0.486684, -0.002000, -0.630530),(0.402708, -0.003464, -0.689022),(0.487579, -0.003464, -0.631689),(0.486356, -0.000000, -0.630106),(0.401698, -0.000000, -0.687296),(0.401968, -0.002000, -0.687759),(0.486356, -0.000000, -0.630106),(0.401968, -0.002000, -0.687759),(0.486684, -0.002000, -0.630530),(0.486684, 0.002000, -0.630530),(0.401968, 0.002000, -0.687759),(0.401698, -0.000000, -0.687296),(0.486684, 0.002000, -0.630530),(0.401698, -0.000000, -0.687296),(0.486356, -0.000000, -0.630106),(0.487579, 0.003464, -0.631689),(0.402708, 0.003464, -0.689022),(0.401968, 0.002000, -0.687759),(0.487579, 0.003464, -0.631689),(0.401968, 0.002000, -0.687759),(0.486684, 0.002000, -0.630530),(0.488802, 0.004000, -0.633271),(0.403719, 0.004000, -0.690748),(0.402708, 0.003464, -0.689022),(0.488802, 0.004000, -0.633271),(0.402708, 0.003464, -0.689022),(0.487579, 0.003464, -0.631689),(0.490025, 0.003464, -0.634854),(0.404729, 0.003464, -0.692474),(0.403719, 0.004000, -0.690748),(0.490025, 0.003464, -0.634854),(0.403719, 0.004000, -0.690748),(0.488802, 0.004000, -0.633271),(0.490920, 0.002000, -0.636012),(0.405469, 0.002000, -0.693738),(0.404729, 0.003464, -0.692474),(0.490920, 0.002000, -0.636012),(0.404729, 0.003464, -0.692474),(0.490025, 0.003464, -0.634854),(0.491248, -0.000000, -0.636436),(0.405739, -0.000000, -0.694200),(0.405469, 0.002000, -0.693738),(0.491248, -0.000000, -0.636436),(0.405469, 0.002000, -0.693738),(0.490920, 0.002000, -0.636012),(0.405469, -0.002000, -0.693738),(0.312691, -0.002000, -0.740305),(0.312899, -0.000000, -0.740799),(0.405469, -0.002000, -0.693738),(0.312899, -0.000000, -0.740799),(0.405739, -0.000000, -0.694200),(0.404729, -0.003464, -0.692474),(0.312121, -0.003464, -0.738956),(0.312691, -0.002000, -0.740305),(0.404729, -0.003464, -0.692474),(0.312691, -0.002000, -0.740305),(0.405469, -0.002000, -0.693738),(0.403719, -0.004000, -0.690748),(0.311342, -0.004000, -0.737114),(0.312121, -0.003464, -0.738956),(0.403719, -0.004000, -0.690748),(0.312121, -0.003464, -0.738956),(0.404729, -0.003464, -0.692474),(0.402708, -0.003464, -0.689022),(0.310564, -0.003464, -0.735272),(0.311342, -0.004000, -0.737114),(0.402708, -0.003464, -0.689022),(0.311342, -0.004000, -0.737114),(0.403719, -0.004000, -0.690748),(0.401968, -0.002000, -0.687759),(0.309994, -0.002000, -0.733923),(0.310564, -0.003464, -0.735272),(0.401968, -0.002000, -0.687759),(0.310564, -0.003464, -0.735272),(0.402708, -0.003464, -0.689022),(0.401698, -0.000000, -0.687296),(0.309785, -0.000000, -0.733430),(0.309994, -0.002000, -0.733923),(0.401698, -0.000000, -0.687296),(0.309994, -0.002000, -0.733923),(0.401968, -0.002000, -0.687759),(0.401968, 0.002000, -0.687759),(0.309994, 0.002000, -0.733923),(0.309785, -0.000000, -0.733430),(0.401968, 0.002000, -0.687759),(0.309785, -0.000000, -0.733430),(0.401698, -0.000000, -0.687296),(0.402708, 0.003464, -0.689022),(0.310564, 0.003464, -0.735272),(0.309994, 0.002000, -0.733923),(0.402708, 0.003464, -0.689022),(0.309994, 0.002000, -0.733923),(0.401968, 0.002000, -0.687759),(0.403719, 0.004000, -0.690748),(0.311342, 0.004000, -0.737114),(0.310564, 0.003464, -0.735272),(0.403719, 0.004000, -0.690748),(0.310564, 0.003464, -0.735272),(0.402708, 0.003464, -0.689022),(0.404729, 0.003464, -0.692474),(0.312121, 0.003464, -0.738956),(0.311342, 0.004000, -0.737114),(0.404729, 0.003464, -0.692474),(0.311342, 0.004000, -0.737114),(0.403719, 0.004000, -0.690748),(0.405469, 0.002000, -0.693738),(0.312691, 0.002000, -0.740305),(0.312121, 0.003464, -0.738956),(0.405469, 0.002000, -0.693738),(0.312121, 0.003464, -0.738956),(0.404729, 0.003464, -0.692474),(0.405739, -0.000000, -0.694200),(0.312899, -0.000000, -0.740799),(0.312691, 0.002000, -0.740305),(0.405739, -0.000000, -0.694200),(0.312691, 0.002000, -0.740305),(0.405469, 0.002000, -0.693738),(0.312691, -0.002000, -0.740305),(0.213545, -0.002000, -0.774755),(0.213687, -0.000000, -0.775272),(0.312691, -0.002000, -0.740305),(0.213687, -0.000000, -0.775272),(0.312899, -0.000000, -0.740799),(0.312121, -0.003464, -0.738956),(0.213157, -0.003464, -0.773343),(0.213545, -0.002000, -0.774755),(0.312121, -0.003464, -0.738956),(0.213545, -0.002000, -0.774755),(0.312691, -0.002000, -0.740305),(0.311342, -0.004000, -0.737114),(0.212627, -0.004000, -0.771414),(0.213157, -0.003464, -0.773343),(0.311342, -0.004000, -0.737114),(0.213157, -0.003464, -0.773343),(0.312121, -0.003464, -0.738956),(0.310564, -0.003464, -0.735272),(0.212098, -0.003464, -0.769486),(0.212627, -0.004000, -0.771414),(0.310564, -0.003464, -0.735272),(0.212627, -0.004000, -0.771414),(0.311342, -0.004000, -0.737114),(0.309994, -0.002000, -0.733923),(0.211710, -0.002000, -0.768074),(0.212098, -0.003464, -0.769486),(0.309994, -0.002000, -0.733923),(0.212098, -0.003464, -0.769486),(0.310564, -0.003464, -0.735272),(0.309785, -0.000000, -0.733430),(0.211568, -0.000000, -0.767557),(0.211710, -0.002000, -0.768074),(0.309785, -0.000000, -0.733430),(0.211710, -0.002000, -0.768074),(0.309994, -0.002000, -0.733923),(0.309994, 0.002000, -0.733923),(0.211710, 0.002000, -0.768074),(0.211568, -0.000000, -0.767557),(0.309994, 0.002000, -0.733923),(0.211568, -0.000000, -0.767557),(0.309785, -0.000000, -0.733430),(0.310564, 0.003464, -0.735272),(0.212098, 0.003464, -0.769486),(0.211710, 0.002000, -0.768074),(0.310564, 0.003464, -0.735272),(0.211710, 0.002000, -0.768074),(0.309994, 0.002000, -0.733923),(0.311342, 0.004000, -0.737114),(0.212627, 0.004000, -0.771414),(0.212098, 0.003464, -0.769486),(0.311342, 0.004000, -0.737114),(0.212098, 0.003464, -0.769486),(0.310564, 0.003464, -0.735272),(0.312121, 0.003464, -0.738956),(0.213157, 0.003464, -0.773343),(0.212627, 0.004000, -0.771414),(0.312121, 0.003464, -0.738956),(0.212627, 0.004000, -0.771414),(0.311342, 0.004000, -0.737114),(0.312691, 0.002000, -0.740305),(0.213545, 0.002000, -0.774755),(0.213157, 0.003464, -0.773343),(0.312691, 0.002000, -0.740305),(0.213157, 0.003464, -0.773343),(0.312121, 0.003464, -0.738956),(0.312899, -0.000000, -0.740799),(0.213687, -0.000000, -0.775272),(0.213545, 0.002000, -0.774755),(0.312899, -0.000000, -0.740799),(0.213545, 0.002000, -0.774755),(0.312691, 0.002000, -0.740305),(0.213545, -0.002000, -0.774755),(0.108993, -0.002000, -0.796127),(0.109064, -0.000000, -0.796658),(0.213545, -0.002000, -0.774755),(0.109064, -0.000000, -0.796658),(0.213687, -0.000000, -0.775272),(0.213157, -0.003464, -0.773343),(0.108796, -0.003464, -0.794677),(0.108993, -0.002000, -0.796127),(0.213157, -0.003464, -0.773343),(0.108993, -0.002000, -0.796127),(0.213545, -0.002000, -0.774755),(0.212627, -0.004000, -0.771414),(0.108528, -0.004000, -0.792695),(0.108796, -0.003464, -0.794677),(0.212627, -0.004000, -0.771414),(0.108796, -0.003464, -0.794677),(0.213157, -0.003464, -0.773343),(0.212098, -0.003464, -0.769486),(0.108260, -0.003464, -0.790713),(0.108528, -0.004000, -0.792695),(0.212098, -0.003464, -0.769486),(0.108528, -0.004000, -0.792695),(0.212627, -0.004000, -0.771414),(0.211710, -0.002000, -0.768074),(0.108064, -0.002000, -0.789262),(0.108260, -0.003464, -0.790713),(0.211710, -0.002000, -0.768074),(0.108260, -0.003464, -0.790713),(0.212098, -0.003464, -0.769486),(0.211568, -0.000000, -0.767557),(0.107992, -0.000000, -0.788731),(0.108064, -0.002000, -0.789262),(0.211568, -0.000000, -0.767557),(0.108064, -0.002000, -0.789262),(0.211710, -0.002000, -0.768074),(0.211710, 0.002000, -0.768074),(0.108064, 0.002000, -0.789262),(0.107992, -0.000000, -0.788731),(0.211710, 0.002000, -0.768074),(0.107992, -0.000000, -0.788731),(0.211568, -0.000000, -0.767557),(0.212098, 0.003464, -0.769486),(0.108260, 0.003464, -0.790713),(0.108064, 0.002000, -0.789262),(0.212098, 0.003464, -0.769486),(0.108064, 0.002000, -0.789262),(0.211710, 0.002000, -0.768074),(0.212627, 0.004000, -0.771414),(0.108528, 0.004000, -0.792695),(0.108260, 0.003464, -0.790713),(0.212627, 0.004000, -0.771414),(0.108260, 0.003464, -0.790713),(0.212098, 0.003464, -0.769486),(0.213157, 0.003464, -0.773343),(0.108796, 0.003464, -0.794677),(0.108528, 0.004000, -0.792695),(0.213157, 0.003464, -0.773343),(0.108528, 0.004000, -0.792695),(0.212627, 0.004000, -0.771414),(0.213545, 0.002000, -0.774755),(0.108993, 0.002000, -0.796127),(0.108796, 0.003464, -0.794677),(0.213545, 0.002000, -0.774755),(0.108796, 0.003464, -0.794677),(0.213157, 0.003464, -0.773343),(0.213687, -0.000000, -0.775272),(0.109064, -0.000000, -0.796658),(0.108993, 0.002000, -0.796127),(0.213687, -0.000000, -0.775272),(0.108993, 0.002000, -0.796127),(0.213545, 0.002000, -0.774755),(0.108993, -0.002000, -0.796127),(-0.000000, -0.002000, -0.803464),(-0.000000, -0.000000, -0.804000),(0.108993, -0.002000, -0.796127),(-0.000000, -0.000000, -0.804000),(0.109064, -0.000000, -0.796658),(0.108796, -0.003464, -0.794677),(-0.000000, -0.003464, -0.802000),(-0.000000, -0.002000, -0.803464),(0.108796, -0.003464, -0.794677),(-0.000000, -0.002000, -0.803464),(0.108993, -0.002000, -0.796127),(0.108528, -0.004000, -0.792695),(-0.000000, -0.004000, -0.800000),(-0.000000, -0.003464, -0.802000),(0.108528, -0.004000, -0.792695),(-0.000000, -0.003464, -0.802000),(0.108796, -0.003464, -0.794677),(0.108260, -0.003464, -0.790713),(0.000000, -0.003464, -0.798000),(-0.000000, -0.004000, -0.800000),(0.108260, -0.003464, -0.790713),(-0.000000, -0.004000, -0.800000),(0.108528, -0.004000, -0.792695),(0.108064, -0.002000, -0.789262),(0.000000, -0.002000, -0.796536),(0.000000, -0.003464, -0.798000),(0.108064, -0.002000, -0.789262),(0.000000, -0.003464, -0.798000),(0.108260, -0.003464, -0.790713),(0.107992, -0.000000, -0.788731),(0.000000, -0.000000, -0.796000),(0.000000, -0.002000, -0.796536),(0.107992, -0.000000, -0.788731),(0.000000, -0.002000, -0.796536),(0.108064, -0.002000, -0.789262),(0.108064, 0.002000, -0.789262),(0.000000, 0.002000, -0.796536),(0.000000, -0.000000, -0.796000),(0.108064, 0.002000, -0.789262),(0.000000, -0.000000, -0.796000),(0.107992, -0.000000, -0.788731),(0.108260, 0.003464, -0.790713),(0.000000, 0.003464, -0.798000),(0.000000, 0.002000, -0.796536),(0.108260, 0.003464, -0.790713),(0.000000, 0.002000, -0.796536),(0.108064, 0.002000, -0.789262),(0.108528, 0.004000, -0.792695),(-0.000000, 0.004000, -0.800000),(0.000000, 0.003464, -0.798000),(0.108528, 0.004000, -0.792695),(0.000000, 0.003464, -0.798000),(0.108260, 0.003464, -0.790713),(0.108796, 0.003464, -0.794677),(-0.000000, 0.003464, -0.802000),(-0.000000, 0.004000, -0.800000),(0.108796, 0.003464, -0.794677),(-0.000000, 0.004000, -0.800000),(0.108528, 0.004000, -0.792695),(0.108993, 0.002000, -0.796127),(-0.000000, 0.002000, -0.803464),(-0.000000, 0.003464, -0.802000),(0.108993, 0.002000, -0.796127),(-0.000000, 0.003464, -0.802000),(0.108796, 0.003464, -0.794677),(0.109064, -0.000000, -0.796658),(-0.000000, -0.000000, -0.804000),(-0.000000, 0.002000, -0.803464),(0.109064, -0.000000, -0.796658),(-0.000000, 0.002000, -0.803464),(0.108993, 0.002000, -0.796127),(-0.000000, -0.802000, -0.003464),(-0.108797, -0.794676, -0.003464),(-0.108528, -0.792694, -0.004000),(-0.000000, -0.802000, -0.003464),(-0.108528, -0.792694, -0.004000),(-0.000000, -0.800000, -0.004000),(-0.000000, -0.803464, -0.002000),(-0.108993, -0.796127, -0.002000),(-0.108797, -0.794676, -0.003464),(-0.000000, -0.803464, -0.002000),(-0.108797, -0.794676, -0.003464),(-0.000000, -0.802000, -0.003464),(-0.000000, -0.804000, -0.000000),(-0.109065, -0.796658, -0.000000),(-0.108993, -0.796127, -0.002000),(-0.000000, -0.804000, -0.000000),(-0.108993, -0.796127, -0.002000),(-0.000000, -0.803464, -0.002000),(-0.000000, -0.803464, 0.002000),(-0.108993, -0.796127, 0.002000),(-0.109065, -0.796658, -0.000000),(-0.000000, -0.803464, 0.002000),(-0.109065, -0.796658, -0.000000),(-0.000000, -0.804000, -0.000000),(-0.000000, -0.802000, 0.003464),(-0.108797, -0.794676, 0.003464),(-0.108993, -0.796127, 0.002000),(-0.000000, -0.802000, 0.003464),(-0.108993, -0.796127, 0.002000),(-0.000000, -0.803464, 0.002000),(0.000000, -0.800000, 0.004000),(-0.108528, -0.792694, 0.004000),(-0.108797, -0.794676, 0.003464),(0.000000, -0.800000, 0.004000),(-0.108797, -0.794676, 0.003464),(-0.000000, -0.802000, 0.003464),(0.000000, -0.798000, 0.003464),(-0.108260, -0.790712, 0.003464),(-0.108528, -0.792694, 0.004000),(0.000000, -0.798000, 0.003464),(-0.108528, -0.792694, 0.004000),(0.000000, -0.800000, 0.004000),(0.000000, -0.796536, 0.002000),(-0.108064, -0.789262, 0.002000),(-0.108260, -0.790712, 0.003464),(0.000000, -0.796536, 0.002000),(-0.108260, -0.790712, 0.003464),(0.000000, -0.798000, 0.003464),(0.000000, -0.796000, 0.000000),(-0.107992, -0.788731, 0.000000),(-0.108064, -0.789262, 0.002000),(0.000000, -0.796000, 0.000000),(-0.108064, -0.789262, 0.002000),(0.000000, -0.796536, 0.002000),(0.000000, -0.796536, -0.002000),(-0.108064, -0.789262, -0.002000),(-0.107992, -0.788731, 0.000000),(0.000000, -0.796536, -0.002000),(-0.107992, -0.788731, 0.000000),(0.000000, -0.796000, 0.000000),(0.000000, -0.798000, -0.003464),(-0.108260, -0.790712, -0.003464),(-0.108064, -0.789262, -0.002000),(0.000000, -0.798000, -0.003464),(-0.108064, -0.789262, -0.002000),(0.000000, -0.796536, -0.002000),(-0.000000, -0.800000, -0.004000),(-0.108528, -0.792694, -0.004000),(-0.108260, -0.790712, -0.003464),(-0.000000, -0.800000, -0.004000),(-0.108260, -0.790712, -0.003464),(0.000000, -0.798000, -0.003464),(-0.108797, -0.794676, -0.003464),(-0.213157, -0.773343, -0.003464),(-0.212627, -0.771414, -0.004000),(-0.108797, -0.794676, -0.003464),(-0.212627, -0.771414, -0.004000),(-0.108528, -0.792694, -0.004000),(-0.108993, -0.796127, -0.002000),(-0.213545, -0.774755, -0.002000),(-0.213157, -0.773343, -0.003464),(-0.108993, -0.796127, -0.002000),(-0.213157, -0.773343, -0.003464),(-0.108797, -0.794676, -0.003464),(-0.109065, -0.796658, -0.000000),(-0.213687, -0.775271, -0.000000),(-0.213545, -0.774755, -0.002000),(-0.109065, -0.796658, -0.000000),(-0.213545, -0.774755, -0.002000),(-0.108993, -0.796127, -0.002000),(-0.108993, -0.796127, 0.002000),(-0.213545, -0.774755, 0.002000),(-0.213687, -0.775271, -0.000000),(-0.108993, -0.796127, 0.002000),(-0.213687, -0.775271, -0.000000),(-0.109065, -0.796658, -0.000000),(-0.108797, -0.794676, 0.003464),(-0.213157, -0.773343, 0.003464),(-0.213545, -0.774755, 0.002000),(-0.108797, -0.794676, 0.003464),(-0.213545, -0.774755, 0.002000),(-0.108993, -0.796127, 0.002000),(-0.108528, -0.792694, 0.004000),(-0.212627, -0.771414, 0.004000),(-0.213157, -0.773343, 0.003464),(-0.108528, -0.792694, 0.004000),(-0.213157, -0.773343, 0.003464),(-0.108797, -0.794676, 0.003464),(-0.108260, -0.790712, 0.003464),(-0.212098, -0.769486, 0.003464),(-0.212627, -0.771414, 0.004000),(-0.108260, -0.790712, 0.003464),(-0.212627, -0.771414, 0.004000),(-0.108528, -0.792694, 0.004000),(-0.108064, -0.789262, 0.002000),(-0.211710, -0.768074, 0.002000),(-0.212098, -0.769486, 0.003464),(-0.108064, -0.789262, 0.002000),(-0.212098, -0.769486, 0.003464),(-0.108260, -0.790712, 0.003464),(-0.107992, -0.788731, 0.000000),(-0.211568, -0.767557, 0.000000),(-0.211710, -0.768074, 0.002000),(-0.107992, -0.788731, 0.000000),(-0.211710, -0.768074, 0.002000),(-0.108064, -0.789262, 0.002000),(-0.108064, -0.789262, -0.002000),(-0.211710, -0.768074, -0.002000),(-0.211568, -0.767557, 0.000000),(-0.108064, -0.789262, -0.002000),(-0.211568, -0.767557, 0.000000),(-0.107992, -0.788731, 0.000000),(-0.108260, -0.790712, -0.003464),(-0.212098, -0.769486, -0.003464),(-0.211710, -0.768074, -0.002000),(-0.108260, -0.790712, -0.003464),(-0.211710, -0.768074, -0.002000),(-0.108064, -0.789262, -0.002000),(-0.108528, -0.792694, -0.004000),(-0.212627, -0.771414, -0.004000),(-0.212098, -0.769486, -0.003464),(-0.108528, -0.792694, -0.004000),(-0.212098, -0.769486, -0.003464),(-0.108260, -0.790712, -0.003464),(-0.213157, -0.773343, -0.003464),(-0.312121, -0.738956, -0.003464),(-0.311342, -0.737114, -0.004000),(-0.213157, -0.773343, -0.003464),(-0.311342, -0.737114, -0.004000),(-0.212627, -0.771414, -0.004000),(-0.213545, -0.774755, -0.002000),(-0.312691, -0.740305, -0.002000),(-0.312121, -0.738956, -0.003464),(-0.213545, -0.774755, -0.002000),(-0.312121, -0.738956, -0.003464),(-0.213157, -0.773343, -0.003464),(-0.213687, -0.775271, -0.000000),(-0.312899, -0.740799, -0.000000),(-0.312691, -0.740305, -0.002000),(-0.213687, -0.775271, -0.000000),(-0.312691, -0.740305, -0.002000),(-0.213545, -0.774755, -0.002000),(-0.213545, -0.774755, 0.002000),(-0.312691, -0.740305, 0.002000),(-0.312899, -0.740799, -0.000000),(-0.213545, -0.774755, 0.002000),(-0.312899, -0.740799, -0.000000),(-0.213687, -0.775271, -0.000000),(-0.213157, -0.773343, 0.003464),(-0.312121, -0.738956, 0.003464),(-0.312691, -0.740305, 0.002000),(-0.213157, -0.773343, 0.003464),(-0.312691, -0.740305, 0.002000),(-0.213545, -0.774755, 0.002000),(-0.212627, -0.771414, 0.004000),(-0.311342, -0.737114, 0.004000),(-0.312121, -0.738956, 0.003464),(-0.212627, -0.771414, 0.004000),(-0.312121, -0.738956, 0.003464),(-0.213157, -0.773343, 0.003464),(-0.212098, -0.769486, 0.003464),(-0.310564, -0.735272, 0.003464),(-0.311342, -0.737114, 0.004000),(-0.212098, -0.769486, 0.003464),(-0.311342, -0.737114, 0.004000),(-0.212627, -0.771414, 0.004000),(-0.211710, -0.768074, 0.002000),(-0.309994, -0.733923, 0.002000),(-0.310564, -0.735272, 0.003464),(-0.211710, -0.768074, 0.002000),(-0.310564, -0.735272, 0.003464),(-0.212098, -0.769486, 0.003464),(-0.211568, -0.767557, 0.000000),(-0.309785, -0.733429, 0.000000),(-0.309994, -0.733923, 0.002000),(-0.211568, -0.767557, 0.000000),(-0.309994, -0.733923, 0.002000),(-0.211710, -0.768074, 0.002000),(-0.211710, -0.768074, -0.002000),(-0.309994, -0.733923, -0.002000),(-0.309785, -0.733429, 0.000000),(-0.211710, -0.768074, -0.002000),(-0.309785, -0.733429, 0.000000),(-0.211568, -0.767557, 0.000000),(-0.212098, -0.769486, -0.003464),(-0.310564, -0.735272, -0.003464),(-0.309994, -0.733923, -0.002000),(-0.212098, -0.769486, -0.003464),(-0.309994, -0.733923, -0.002000),(-0.211710, -0.768074, -0.002000),(-0.212627, -0.771414, -0.004000),(-0.311342, -0.737114, -0.004000),(-0.310564, -0.735272, -0.003464),(-0.212627, -0.771414, -0.004000),(-0.310564, -0.735272, -0.003464),(-0.212098, -0.769486, -0.003464),(-0.312121, -0.738956, -0.003464),(-0.404729, -0.692474, -0.003464),(-0.403719, -0.690748, -0.004000),(-0.312121, -0.738956, -0.003464),(-0.403719, -0.690748, -0.004000),(-0.311342, -0.737114, -0.004000),(-0.312691, -0.740305, -0.002000),(-0.405469, -0.693738, -0.002000),(-0.404729, -0.692474, -0.003464),(-0.312691, -0.740305, -0.002000),(-0.404729, -0.692474, -0.003464),(-0.312121, -0.738956, -0.003464),(-0.312899, -0.740799, -0.000000),(-0.405740, -0.694200, -0.000000),(-0.405469, -0.693738, -0.002000),(-0.312899, -0.740799, -0.000000),(-0.405469, -0.693738, -0.002000),(-0.312691, -0.740305, -0.002000),(-0.312691, -0.740305, 0.002000),(-0.405469, -0.693738, 0.002000),(-0.405740, -0.694200, -0.000000),(-0.312691, -0.740305, 0.002000),(-0.405740, -0.694200, -0.000000),(-0.312899, -0.740799, -0.000000),(-0.312121, -0.738956, 0.003464),(-0.404729, -0.692474, 0.003464),(-0.405469, -0.693738, 0.002000),(-0.312121, -0.738956, 0.003464),(-0.405469, -0.693738, 0.002000),(-0.312691, -0.740305, 0.002000),(-0.311342, -0.737114, 0.004000),(-0.403719, -0.690748, 0.004000),(-0.404729, -0.692474, 0.003464),(-0.311342, -0.737114, 0.004000),(-0.404729, -0.692474, 0.003464),(-0.312121, -0.738956, 0.003464),(-0.310564, -0.735272, 0.003464),(-0.402708, -0.689022, 0.003464),(-0.403719, -0.690748, 0.004000),(-0.310564, -0.735272, 0.003464),(-0.403719, -0.690748, 0.004000),(-0.311342, -0.737114, 0.004000),(-0.309994, -0.733923, 0.002000),(-0.401968, -0.687759, 0.002000),(-0.402708, -0.689022, 0.003464),(-0.309994, -0.733923, 0.002000),(-0.402708, -0.689022, 0.003464),(-0.310564, -0.735272, 0.003464),(-0.309785, -0.733429, 0.000000),(-0.401698, -0.687296, 0.000000),(-0.401968, -0.687759, 0.002000),(-0.309785, -0.733429, 0.000000),(-0.401968, -0.687759, 0.002000),(-0.309994, -0.733923, 0.002000),(-0.309994, -0.733923, -0.002000),(-0.401968, -0.687759, -0.002000),(-0.401698, -0.687296, 0.000000),(-0.309994, -0.733923, -0.002000),(-0.401698, -0.687296, 0.000000),(-0.309785, -0.733429, 0.000000),(-0.310564, -0.735272, -0.003464),(-0.402708, -0.689022, -0.003464),(-0.401968, -0.687759, -0.002000),(-0.310564, -0.735272, -0.003464),(-0.401968, -0.687759, -0.002000),(-0.309994, -0.733923, -0.002000),(-0.311342, -0.737114, -0.004000),(-0.403719, -0.690748, -0.004000),(-0.402708, -0.689022, -0.003464),(-0.311342, -0.737114, -0.004000),(-0.402708, -0.689022, -0.003464),(-0.310564, -0.735272, -0.003464),(-0.404729, -0.692474, -0.003464),(-0.490025, -0.634854, -0.003464),(-0.488802, -0.633271, -0.004000),(-0.404729, -0.692474, -0.003464),(-0.488802, -0.633271, -0.004000),(-0.403719, -0.690748, -0.004000),(-0.405469, -0.693738, -0.002000),(-0.490920, -0.636012, -0.002000),(-0.490025, -0.634854, -0.003464),(-0.405469, -0.693738, -0.002000),(-0.490025, -0.634854, -0.003464),(-0.404729, -0.692474, -0.003464),(-0.405740, -0.694200, -0.000000),(-0.491248, -0.636436, -0.000000),(-0.490920, -0.636012, -0.002000),(-0.405740, -0.694200, -0.000000),(-0.490920, -0.636012, -0.002000),(-0.405469, -0.693738, -0.002000),(-0.405469, -0.693738, 0.002000),(-0.490920, -0.636012, 0.002000),(-0.491248, -0.636436, -0.000000),(-0.405469, -0.693738, 0.002000),(-0.491248, -0.636436, -0.000000),(-0.405740, -0.694200, -0.000000),(-0.404729, -0.692474, 0.003464),(-0.490025, -0.634854, 0.003464),(-0.490920, -0.636012, 0.002000),(-0.404729, -0.692474, 0.003464),(-0.490920, -0.636012, 0.002000),(-0.405469, -0.693738, 0.002000),(-0.403719, -0.690748, 0.004000),(-0.488802, -0.633271, 0.004000),(-0.490025, -0.634854, 0.003464),(-0.403719, -0.690748, 0.004000),(-0.490025, -0.634854, 0.003464),(-0.404729, -0.692474, 0.003464),(-0.402708, -0.689022, 0.003464),(-0.487579, -0.631689, 0.003464),(-0.488802, -0.633271, 0.004000),(-0.402708, -0.689022, 0.003464),(-0.488802, -0.633271, 0.004000),(-0.403719, -0.690748, 0.004000),(-0.401968, -0.687759, 0.002000),(-0.486684, -0.630530, 0.002000),(-0.487579, -0.631689, 0.003464),(-0.401968, -0.687759, 0.002000),(-0.487579, -0.631689, 0.003464),(-0.402708, -0.689022, 0.003464),(-0.401698, -0.687296, 0.000000),(-0.486356, -0.630106, 0.000000),(-0.486684, -0.630530, 0.002000),(-0.401698, -0.687296, 0.000000),(-0.486684, -0.630530, 0.002000),(-0.401968, -0.687759, 0.002000),(-0.401968, -0.687759, -0.002000),(-0.486684, -0.630530, -0.002000),(-0.486356, -0.630106, 0.000000),(-0.401968, -0.687759, -0.002000),(-0.486356, -0.630106, 0.000000),(-0.401698, -0.687296, 0.000000),(-0.402708, -0.689022, -0.003464),(-0.487579, -0.631689, -0.003464),(-0.486684, -0.630530, -0.002000),(-0.402708, -0.689022, -0.003464),(-0.486684, -0.630530, -0.002000),(-0.401968, -0.687759, -0.002000),(-0.403719, -0.690748, -0.004000),(-0.488802, -0.633271, -0.004000),(-0.487579, -0.631689, -0.003464),(-0.403719, -0.690748, -0.004000),(-0.487579, -0.631689, -0.003464),(-0.402708, -0.689022, -0.003464),(-0.490025, -0.634854, -0.003464),(-0.567052, -0.567052, -0.003464),(-0.565638, -0.565637, -0.004000),(-0.490025, -0.634854, -0.003464),(-0.565638, -0.565637, -0.004000),(-0.488802, -0.633271, -0.004000),(-0.490920, -0.636012, -0.002000),(-0.568087, -0.568087, -0.002000),(-0.567052, -0.567052, -0.003464),(-0.490920, -0.636012, -0.002000),(-0.567052, -0.567052, -0.003464),(-0.490025, -0.634854, -0.003464),(-0.491248, -0.636436, -0.000000),(-0.568466, -0.568466, -0.000000),(-0.568087, -0.568087, -0.002000),(-0.491248, -0.636436, -0.000000),(-0.568087, -0.568087, -0.002000),(-0.490920, -0.636012, -0.002000),(-0.490920, -0.636012, 0.002000),(-0.568087, -0.568087, 0.002000),(-0.568466, -0.568466, -0.000000),(-0.490920, -0.636012, 0.002000),(-0.568466, -0.568466, -0.000000),(-0.491248, -0.636436, -0.000000),(-0.490025, -0.634854, 0.003464),(-0.567052, -0.567052, 0.003464),(-0.568087, -0.568087, 0.002000),(-0.490025, -0.634854, 0.003464),(-0.568087, -0.568087, 0.002000),(-0.490920, -0.636012, 0.002000),(-0.488802, -0.633271, 0.004000),(-0.565638, -0.565637, 0.004000),(-0.567052, -0.567052, 0.003464),(-0.488802, -0.633271, 0.004000),(-0.567052, -0.567052, 0.003464),(-0.490025, -0.634854, 0.003464),(-0.487579, -0.631689, 0.003464),(-0.564223, -0.564223, 0.003464),(-0.565638, -0.565637, 0.004000),(-0.487579, -0.631689, 0.003464),(-0.565638, -0.565637, 0.004000),(-0.488802, -0.633271, 0.004000),(-0.486684, -0.630530, 0.002000),(-0.563188, -0.563188, 0.002000),(-0.564223, -0.564223, 0.003464),(-0.486684, -0.630530, 0.002000),(-0.564223, -0.564223, 0.003464),(-0.487579, -0.631689, 0.003464),(-0.486356, -0.630106, 0.000000),(-0.562809, -0.562809, 0.000000),(-0.563188, -0.563188, 0.002000),(-0.486356, -0.630106, 0.000000),(-0.563188, -0.563188, 0.002000),(-0.486684, -0.630530, 0.002000),(-0.486684, -0.630530, -0.002000),(-0.563188, -0.563188, -0.002000),(-0.562809, -0.562809, 0.000000),(-0.486684, -0.630530, -0.002000),(-0.562809, -0.562809, 0.000000),(-0.486356, -0.630106, 0.000000),(-0.487579, -0.631689, -0.003464),(-0.564223, -0.564223, -0.003464),(-0.563188, -0.563188, -0.002000),(-0.487579, -0.631689, -0.003464),(-0.563188, -0.563188, -0.002000),(-0.486684, -0.630530, -0.002000),(-0.488802, -0.633271, -0.004000),(-0.565638, -0.565637, -0.004000),(-0.564223, -0.564223, -0.003464),(-0.488802, -0.633271, -0.004000),(-0.564223, -0.564223, -0.003464),(-0.487579, -0.631689, -0.003464),(-0.567052, -0.567052, -0.003464),(-0.634854, -0.490025, -0.003464),(-0.633271, -0.488802, -0.004000),(-0.567052, -0.567052, -0.003464),(-0.633271, -0.488802, -0.004000),(-0.565638, -0.565637, -0.004000),(-0.568087, -0.568087, -0.002000),(-0.636012, -0.490920, -0.002000),(-0.634854, -0.490025, -0.003464),(-0.568087, -0.568087, -0.002000),(-0.634854, -0.490025, -0.003464),(-0.567052, -0.567052, -0.003464),(-0.568466, -0.568466, -0.000000),(-0.636436, -0.491248, -0.000000),(-0.636012, -0.490920, -0.002000),(-0.568466, -0.568466, -0.000000),(-0.636012, -0.490920, -0.002000),(-0.568087, -0.568087, -0.002000),(-0.568087, -0.568087, 0.002000),(-0.636012, -0.490920, 0.002000),(-0.636436, -0.491248, -0.000000),(-0.568087, -0.568087, 0.002000),(-0.636436, -0.491248, -0.000000),(-0.568466, -0.568466, -0.000000),(-0.567052, -0.567052, 0.003464),(-0.634854, -0.490025, 0.003464),(-0.636012, -0.490920, 0.002000),(-0.567052, -0.567052, 0.003464),(-0.636012, -0.490920, 0.002000),(-0.568087, -0.568087, 0.002000),(-0.565638, -0.565637, 0.004000),(-0.633271, -0.488802, 0.004000),(-0.634854, -0.490025, 0.003464),(-0.565638, -0.565637, 0.004000),(-0.634854, -0.490025, 0.003464),(-0.567052, -0.567052, 0.003464),(-0.564223, -0.564223, 0.003464),(-0.631689, -0.487579, 0.003464),(-0.633271, -0.488802, 0.004000),(-0.564223, -0.564223, 0.003464),(-0.633271, -0.488802, 0.004000),(-0.565638, -0.565637, 0.004000),(-0.563188, -0.563188, 0.002000),(-0.630530, -0.486684, 0.002000),(-0.631689, -0.487579, 0.003464),(-0.563188, -0.563188, 0.002000),(-0.631689, -0.487579, 0.003464),(-0.564223, -0.564223, 0.003464),(-0.562809, -0.562809, 0.000000),(-0.630106, -0.486356, 0.000000),(-0.630530, -0.486684, 0.002000),(-0.562809, -0.562809, 0.000000),(-0.630530, -0.486684, 0.002000),(-0.563188, -0.563188, 0.002000),(-0.563188, -0.563188, -0.002000),(-0.630530, -0.486684, -0.002000),(-0.630106, -0.486356, 0.000000),(-0.563188, -0.563188, -0.002000),(-0.630106, -0.486356, 0.000000),(-0.562809, -0.562809, 0.000000),(-0.564223, -0.564223, -0.003464),(-0.631689, -0.487579, -0.003464),(-0.630530, -0.486684, -0.002000),(-0.564223, -0.564223, -0.003464),(-0.630530, -0.486684, -0.002000),(-0.563188, -0.563188, -0.002000),(-0.565638, -0.565637, -0.004000),(-0.633271, -0.488802, -0.004000),(-0.631689, -0.487579, -0.003464),(-0.565638, -0.565637, -0.004000),(-0.631689, -0.487579, -0.003464),(-0.564223, -0.564223, -0.003464),(-0.634854, -0.490025, -0.003464),(-0.692474, -0.404729, -0.003464),(-0.690748, -0.403719, -0.004000),(-0.634854, -0.490025, -0.003464),(-0.690748, -0.403719, -0.004000),(-0.633271, -0.488802, -0.004000),(-0.636012, -0.490920, -0.002000),(-0.693738, -0.405469, -0.002000),(-0.692474, -0.404729, -0.003464),(-0.636012, -0.490920, -0.002000),(-0.692474, -0.404729, -0.003464),(-0.634854, -0.490025, -0.003464),(-0.636436, -0.491248, -0.000000),(-0.694200, -0.405739, -0.000000),(-0.693738, -0.405469, -0.002000),(-0.636436, -0.491248, -0.000000),(-0.693738, -0.405469, -0.002000),(-0.636012, -0.490920, -0.002000),(-0.636012, -0.490920, 0.002000),(-0.693738, -0.405469, 0.002000),(-0.694200, -0.405739, -0.000000),(-0.636012, -0.490920, 0.002000),(-0.694200, -0.405739, -0.000000),(-0.636436, -0.491248, -0.000000),(-0.634854, -0.490025, 0.003464),(-0.692474, -0.404729, 0.003464),(-0.693738, -0.405469, 0.002000),(-0.634854, -0.490025, 0.003464),(-0.693738, -0.405469, 0.002000),(-0.636012, -0.490920, 0.002000),(-0.633271, -0.488802, 0.004000),(-0.690748, -0.403719, 0.004000),(-0.692474, -0.404729, 0.003464),(-0.633271, -0.488802, 0.004000),(-0.692474, -0.404729, 0.003464),(-0.634854, -0.490025, 0.003464),(-0.631689, -0.487579, 0.003464),(-0.689022, -0.402708, 0.003464),(-0.690748, -0.403719, 0.004000),(-0.631689, -0.487579, 0.003464),(-0.690748, -0.403719, 0.004000),(-0.633271, -0.488802, 0.004000),(-0.630530, -0.486684, 0.002000),(-0.687759, -0.401968, 0.002000),(-0.689022, -0.402708, 0.003464),(-0.630530, -0.486684, 0.002000),(-0.689022, -0.402708, 0.003464),(-0.631689, -0.487579, 0.003464),(-0.630106, -0.486356, 0.000000),(-0.687296, -0.401698, 0.000000),(-0.687759, -0.401968, 0.002000),(-0.630106, -0.486356, 0.000000),(-0.687759, -0.401968, 0.002000),(-0.630530, -0.486684, 0.002000),(-0.630530, -0.486684, -0.002000),(-0.687759, -0.401968, -0.002000),(-0.687296, -0.401698, 0.000000),(-0.630530, -0.486684, -0.002000),(-0.687296, -0.401698, 0.000000),(-0.630106, -0.486356, 0.000000),(-0.631689, -0.487579, -0.003464),(-0.689022, -0.402708, -0.003464),(-0.687759, -0.401968, -0.002000),(-0.631689, -0.487579, -0.003464),(-0.687759, -0.401968, -0.002000),(-0.630530, -0.486684, -0.002000),(-0.633271, -0.488802, -0.004000),(-0.690748, -0.403719, -0.004000),(-0.689022, -0.402708, -0.003464),(-0.633271, -0.488802, -0.004000),(-0.689022, -0.402708, -0.003464),(-0.631689, -0.487579, -0.003464),(-0.692474, -0.404729, -0.003464),(-0.738956, -0.312121, -0.003464),(-0.737114, -0.311342, -0.004000),(-0.692474, -0.404729, -0.003464),(-0.737114, -0.311342, -0.004000),(-0.690748, -0.403719, -0.004000),(-0.693738, -0.405469, -0.002000),(-0.740305, -0.312691, -0.002000),(-0.738956, -0.312121, -0.003464),(-0.693738, -0.405469, -0.002000),(-0.738956, -0.312121, -0.003464),(-0.692474, -0.404729, -0.003464),(-0.694200, -0.405739, -0.000000),(-0.740799, -0.312899, -0.000000),(-0.740305, -0.312691, -0.002000),(-0.694200, -0.405739, -0.000000),(-0.740305, -0.312691, -0.002000),(-0.693738, -0.405469, -0.002000),(-0.693738, -0.405469, 0.002000),(-0.740305, -0.312691, 0.002000),(-0.740799, -0.312899, -0.000000),(-0.693738, -0.405469, 0.002000),(-0.740799, -0.312899, -0.000000),(-0.694200, -0.405739, -0.000000),(-0.692474, -0.404729, 0.003464),(-0.738956, -0.312121, 0.003464),(-0.740305, -0.312691, 0.002000),(-0.692474, -0.404729, 0.003464),(-0.740305, -0.312691, 0.002000),(-0.693738, -0.405469, 0.002000),(-0.690748, -0.403719, 0.004000),(-0.737114, -0.311342, 0.004000),(-0.738956, -0.312121, 0.003464),(-0.690748, -0.403719, 0.004000),(-0.738956, -0.312121, 0.003464),(-0.692474, -0.404729, 0.003464),(-0.689022, -0.402708, 0.003464),(-0.735272, -0.310564, 0.003464),(-0.737114, -0.311342, 0.004000),(-0.689022, -0.402708, 0.003464),(-0.737114, -0.311342, 0.004000),(-0.690748, -0.403719, 0.004000),(-0.687759, -0.401968, 0.002000),(-0.733923, -0.309994, 0.002000),(-0.735272, -0.310564, 0.003464),(-0.687759, -0.401968, 0.002000),(-0.735272, -0.310564, 0.003464),(-0.689022, -0.402708, 0.003464),(-0.687296, -0.401698, 0.000000),(-0.733430, -0.309785, 0.000000),(-0.733923, -0.309994, 0.002000),(-0.687296, -0.401698, 0.000000),(-0.733923, -0.309994, 0.002000),(-0.687759, -0.401968, 0.002000),(-0.687759, -0.401968, -0.002000),(-0.733923, -0.309994, -0.002000),(-0.733430, -0.309785, 0.000000),(-0.687759, -0.401968, -0.002000),(-0.733430, -0.309785, 0.000000),(-0.687296, -0.401698, 0.000000),(-0.689022, -0.402708, -0.003464),(-0.735272, -0.310564, -0.003464),(-0.733923, -0.309994, -0.002000),(-0.689022, -0.402708, -0.003464),(-0.733923, -0.309994, -0.002000),(-0.687759, -0.401968, -0.002000),(-0.690748, -0.403719, -0.004000),(-0.737114, -0.311342, -0.004000),(-0.735272, -0.310564, -0.003464),(-0.690748, -0.403719, -0.004000),(-0.735272, -0.310564, -0.003464),(-0.689022, -0.402708, -0.003464),(-0.738956, -0.312121, -0.003464),(-0.773343, -0.213157, -0.003464),(-0.771414, -0.212627, -0.004000),(-0.738956, -0.312121, -0.003464),(-0.771414, -0.212627, -0.004000),(-0.737114, -0.311342, -0.004000),(-0.740305, -0.312691, -0.002000),(-0.774755, -0.213545, -0.002000),(-0.773343, -0.213157, -0.003464),(-0.740305, -0.312691, -0.002000),(-0.773343, -0.213157, -0.003464),(-0.738956, -0.312121, -0.003464),(-0.740799, -0.312899, -0.000000),(-0.775272, -0.213687, -0.000000),(-0.774755, -0.213545, -0.002000),(-0.740799, -0.312899, -0.000000),(-0.774755, -0.213545, -0.002000),(-0.740305, -0.312691, -0.002000),(-0.740305, -0.312691, 0.002000),(-0.774755, -0.213545, 0.002000),(-0.775272, -0.213687, -0.000000),(-0.740305, -0.312691, 0.002000),(-0.775272, -0.213687, -0.000000),(-0.740799, -0.312899, -0.000000),(-0.738956, -0.312121, 0.003464),(-0.773343, -0.213157, 0.003464),(-0.774755, -0.213545, 0.002000),(-0.738956, -0.312121, 0.003464),(-0.774755, -0.213545, 0.002000),(-0.740305, -0.312691, 0.002000),(-0.737114, -0.311342, 0.004000),(-0.771414, -0.212627, 0.004000),(-0.773343, -0.213157, 0.003464),(-0.737114, -0.311342, 0.004000),(-0.773343, -0.213157, 0.003464),(-0.738956, -0.312121, 0.003464),(-0.735272, -0.310564, 0.003464),(-0.769486, -0.212098, 0.003464),(-0.771414, -0.212627, 0.004000),(-0.735272, -0.310564, 0.003464),(-0.771414, -0.212627, 0.004000),(-0.737114, -0.311342, 0.004000),(-0.733923, -0.309994, 0.002000),(-0.768074, -0.211710, 0.002000),(-0.769486, -0.212098, 0.003464),(-0.733923, -0.309994, 0.002000),(-0.769486, -0.212098, 0.003464),(-0.735272, -0.310564, 0.003464),(-0.733430, -0.309785, 0.000000),(-0.767557, -0.211568, 0.000000),(-0.768074, -0.211710, 0.002000),(-0.733430, -0.309785, 0.000000),(-0.768074, -0.211710, 0.002000),(-0.733923, -0.309994, 0.002000),(-0.733923, -0.309994, -0.002000),(-0.768074, -0.211710, -0.002000),(-0.767557, -0.211568, 0.000000),(-0.733923, -0.309994, -0.002000),(-0.767557, -0.211568, 0.000000),(-0.733430, -0.309785, 0.000000),(-0.735272, -0.310564, -0.003464),(-0.769486, -0.212098, -0.003464),(-0.768074, -0.211710, -0.002000),(-0.735272, -0.310564, -0.003464),(-0.768074, -0.211710, -0.002000),(-0.733923, -0.309994, -0.002000),(-0.737114, -0.311342, -0.004000),(-0.771414, -0.212627, -0.004000),(-0.769486, -0.212098, -0.003464),(-0.737114, -0.311342, -0.004000),(-0.769486, -0.212098, -0.003464),(-0.735272, -0.310564, -0.003464),(-0.773343, -0.213157, -0.003464),(-0.794677, -0.108796, -0.003464),(-0.792695, -0.108528, -0.004000),(-0.773343, -0.213157, -0.003464),(-0.792695, -0.108528, -0.004000),(-0.771414, -0.212627, -0.004000),(-0.774755, -0.213545, -0.002000),(-0.796127, -0.108993, -0.002000),(-0.794677, -0.108796, -0.003464),(-0.774755, -0.213545, -0.002000),(-0.794677, -0.108796, -0.003464),(-0.773343, -0.213157, -0.003464),(-0.775272, -0.213687, -0.000000),(-0.796658, -0.109064, -0.000000),(-0.796127, -0.108993, -0.002000),(-0.775272, -0.213687, -0.000000),(-0.796127, -0.108993, -0.002000),(-0.774755, -0.213545, -0.002000),(-0.774755, -0.213545, 0.002000),(-0.796127, -0.108993, 0.002000),(-0.796658, -0.109064, -0.000000),(-0.774755, -0.213545, 0.002000),(-0.796658, -0.109064, -0.000000),(-0.775272, -0.213687, -0.000000),(-0.773343, -0.213157, 0.003464),(-0.794677, -0.108796, 0.003464),(-0.796127, -0.108993, 0.002000),(-0.773343, -0.213157, 0.003464),(-0.796127, -0.108993, 0.002000),(-0.774755, -0.213545, 0.002000),(-0.771414, -0.212627, 0.004000),(-0.792695, -0.108528, 0.004000),(-0.794677, -0.108796, 0.003464),(-0.771414, -0.212627, 0.004000),(-0.794677, -0.108796, 0.003464),(-0.773343, -0.213157, 0.003464),(-0.769486, -0.212098, 0.003464),(-0.790713, -0.108260, 0.003464),(-0.792695, -0.108528, 0.004000),(-0.769486, -0.212098, 0.003464),(-0.792695, -0.108528, 0.004000),(-0.771414, -0.212627, 0.004000),(-0.768074, -0.211710, 0.002000),(-0.789262, -0.108064, 0.002000),(-0.790713, -0.108260, 0.003464),(-0.768074, -0.211710, 0.002000),(-0.790713, -0.108260, 0.003464),(-0.769486, -0.212098, 0.003464),(-0.767557, -0.211568, 0.000000),(-0.788731, -0.107992, 0.000000),(-0.789262, -0.108064, 0.002000),(-0.767557, -0.211568, 0.000000),(-0.789262, -0.108064, 0.002000),(-0.768074, -0.211710, 0.002000),(-0.768074, -0.211710, -0.002000),(-0.789262, -0.108064, -0.002000),(-0.788731, -0.107992, 0.000000),(-0.768074, -0.211710, -0.002000),(-0.788731, -0.107992, 0.000000),(-0.767557, -0.211568, 0.000000),(-0.769486, -0.212098, -0.003464),(-0.790713, -0.108260, -0.003464),(-0.789262, -0.108064, -0.002000),(-0.769486, -0.212098, -0.003464),(-0.789262, -0.108064, -0.002000),(-0.768074, -0.211710, -0.002000),(-0.771414, -0.212627, -0.004000),(-0.792695, -0.108528, -0.004000),(-0.790713, -0.108260, -0.003464),(-0.771414, -0.212627, -0.004000),(-0.790713, -0.108260, -0.003464),(-0.769486, -0.212098, -0.003464),(-0.794677, -0.108796, -0.003464),(-0.802000, 0.000000, -0.003464),(-0.800000, -0.000000, -0.004000),(-0.794677, -0.108796, -0.003464),(-0.800000, -0.000000, -0.004000),(-0.792695, -0.108528, -0.004000),(-0.796127, -0.108993, -0.002000),(-0.803464, 0.000000, -0.002000),(-0.802000, 0.000000, -0.003464),(-0.796127, -0.108993, -0.002000),(-0.802000, 0.000000, -0.003464),(-0.794677, -0.108796, -0.003464),(-0.796658, -0.109064, -0.000000),(-0.804000, 0.000000, -0.000000),(-0.803464, 0.000000, -0.002000),(-0.796658, -0.109064, -0.000000),(-0.803464, 0.000000, -0.002000),(-0.796127, -0.108993, -0.002000),(-0.796127, -0.108993, 0.002000),(-0.803464, 0.000000, 0.002000),(-0.804000, 0.000000, -0.000000),(-0.796127, -0.108993, 0.002000),(-0.804000, 0.000000, -0.000000),(-0.796658, -0.109064, -0.000000),(-0.794677, -0.108796, 0.003464),(-0.802000, 0.000000, 0.003464),(-0.803464, 0.000000, 0.002000),(-0.794677, -0.108796, 0.003464),(-0.803464, 0.000000, 0.002000),(-0.796127, -0.108993, 0.002000),(-0.792695, -0.108528, 0.004000),(-0.800000, 0.000000, 0.004000),(-0.802000, 0.000000, 0.003464),(-0.792695, -0.108528, 0.004000),(-0.802000, 0.000000, 0.003464),(-0.794677, -0.108796, 0.003464),(-0.790713, -0.108260, 0.003464),(-0.798000, -0.000000, 0.003464),(-0.800000, 0.000000, 0.004000),(-0.790713, -0.108260, 0.003464),(-0.800000, 0.000000, 0.004000),(-0.792695, -0.108528, 0.004000),(-0.789262, -0.108064, 0.002000),(-0.796536, -0.000000, 0.002000),(-0.798000, -0.000000, 0.003464),(-0.789262, -0.108064, 0.002000),(-0.798000, -0.000000, 0.003464),(-0.790713, -0.108260, 0.003464),(-0.788731, -0.107992, 0.000000),(-0.796000, -0.000000, 0.000000),(-0.796536, -0.000000, 0.002000),(-0.788731, -0.107992, 0.000000),(-0.796536, -0.000000, 0.002000),(-0.789262, -0.108064, 0.002000),(-0.789262, -0.108064, -0.002000),(-0.796536, -0.000000, -0.002000),(-0.796000, -0.000000, 0.000000),(-0.789262, -0.108064, -0.002000),(-0.796000, -0.000000, 0.000000),(-0.788731, -0.107992, 0.000000),(-0.790713, -0.108260, -0.003464),(-0.798000, -0.000000, -0.003464),(-0.796536, -0.000000, -0.002000),(-0.790713, -0.108260, -0.003464),(-0.796536, -0.000000, -0.002000),(-0.789262, -0.108064, -0.002000),(-0.792695, -0.108528, -0.004000),(-0.800000, -0.000000, -0.004000),(-0.798000, -0.000000, -0.003464),(-0.792695, -0.108528, -0.004000),(-0.798000, -0.000000, -0.003464),(-0.790713, -0.108260, -0.003464),(-0.802000, 0.000000, -0.003464),(-0.794676, 0.108797, -0.003464),(-0.792694, 0.108528, -0.004000),(-0.802000, 0.000000, -0.003464),(-0.792694, 0.108528, -0.004000),(-0.800000, -0.000000, -0.004000),(-0.803464, 0.000000, -0.002000),(-0.796127, 0.108993, -0.002000),(-0.794676, 0.108797, -0.003464),(-0.803464, 0.000000, -0.002000),(-0.794676, 0.108797, -0.003464),(-0.802000, 0.000000, -0.003464),(-0.804000, 0.000000, -0.000000),(-0.796658, 0.109065, -0.000000),(-0.796127, 0.108993, -0.002000),(-0.804000, 0.000000, -0.000000),(-0.796127, 0.108993, -0.002000),(-0.803464, 0.000000, -0.002000),(-0.803464, 0.000000, 0.002000),(-0.796127, 0.108993, 0.002000),(-0.796658, 0.109065, -0.000000),(-0.803464, 0.000000, 0.002000),(-0.796658, 0.109065, -0.000000),(-0.804000, 0.000000, -0.000000),(-0.802000, 0.000000, 0.003464),(-0.794676, 0.108797, 0.003464),(-0.796127, 0.108993, 0.002000),(-0.802000, 0.000000, 0.003464),(-0.796127, 0.108993, 0.002000),(-0.803464, 0.000000, 0.002000),(-0.800000, 0.000000, 0.004000),(-0.792694, 0.108528, 0.004000),(-0.794676, 0.108797, 0.003464),(-0.800000, 0.000000, 0.004000),(-0.794676, 0.108797, 0.003464),(-0.802000, 0.000000, 0.003464),(-0.798000, -0.000000, 0.003464),(-0.790712, 0.108260, 0.003464),(-0.792694, 0.108528, 0.004000),(-0.798000, -0.000000, 0.003464),(-0.792694, 0.108528, 0.004000),(-0.800000, 0.000000, 0.004000),(-0.796536, -0.000000, 0.002000),(-0.789262, 0.108064, 0.002000),(-0.790712, 0.108260, 0.003464),(-0.796536, -0.000000, 0.002000),(-0.790712, 0.108260, 0.003464),(-0.798000, -0.000000, 0.003464),(-0.796000, -0.000000, 0.000000),(-0.788731, 0.107992, 0.000000),(-0.789262, 0.108064, 0.002000),(-0.796000, -0.000000, 0.000000),(-0.789262, 0.108064, 0.002000),(-0.796536, -0.000000, 0.002000),(-0.796536, -0.000000, -0.002000),(-0.789262, 0.108064, -0.002000),(-0.788731, 0.107992, 0.000000),(-0.796536, -0.000000, -0.002000),(-0.788731, 0.107992, 0.000000),(-0.796000, -0.000000, 0.000000),(-0.798000, -0.000000, -0.003464),(-0.790712, 0.108260, -0.003464),(-0.789262, 0.108064, -0.002000),(-0.798000, -0.000000, -0.003464),(-0.789262, 0.108064, -0.002000),(-0.796536, -0.000000, -0.002000),(-0.800000, -0.000000, -0.004000),(-0.792694, 0.108528, -0.004000),(-0.790712, 0.108260, -0.003464),(-0.800000, -0.000000, -0.004000),(-0.790712, 0.108260, -0.003464),(-0.798000, -0.000000, -0.003464),(-0.794676, 0.108797, -0.003464),(-0.773343, 0.213157, -0.003464),(-0.771414, 0.212627, -0.004000),(-0.794676, 0.108797, -0.003464),(-0.771414, 0.212627, -0.004000),(-0.792694, 0.108528, -0.004000),(-0.796127, 0.108993, -0.002000),(-0.774755, 0.213545, -0.002000),(-0.773343, 0.213157, -0.003464),(-0.796127, 0.108993, -0.002000),(-0.773343, 0.213157, -0.003464),(-0.794676, 0.108797, -0.003464),(-0.796658, 0.109065, -0.000000),(-0.775271, 0.213687, -0.000000),(-0.774755, 0.213545, -0.002000),(-0.796658, 0.109065, -0.000000),(-0.774755, 0.213545, -0.002000),(-0.796127, 0.108993, -0.002000),(-0.796127, 0.108993, 0.002000),(-0.774755, 0.213545, 0.002000),(-0.775271, 0.213687, -0.000000),(-0.796127, 0.108993, 0.002000),(-0.775271, 0.213687, -0.000000),(-0.796658, 0.109065, -0.000000),(-0.794676, 0.108797, 0.003464),(-0.773343, 0.213157, 0.003464),(-0.774755, 0.213545, 0.002000),(-0.794676, 0.108797, 0.003464),(-0.774755, 0.213545, 0.002000),(-0.796127, 0.108993, 0.002000),(-0.792694, 0.108528, 0.004000),(-0.771414, 0.212627, 0.004000),(-0.773343, 0.213157, 0.003464),(-0.792694, 0.108528, 0.004000),(-0.773343, 0.213157, 0.003464),(-0.794676, 0.108797, 0.003464),(-0.790712, 0.108260, 0.003464),(-0.769486, 0.212098, 0.003464),(-0.771414, 0.212627, 0.004000),(-0.790712, 0.108260, 0.003464),(-0.771414, 0.212627, 0.004000),(-0.792694, 0.108528, 0.004000),(-0.789262, 0.108064, 0.002000),(-0.768074, 0.211710, 0.002000),(-0.769486, 0.212098, 0.003464),(-0.789262, 0.108064, 0.002000),(-0.769486, 0.212098, 0.003464),(-0.790712, 0.108260, 0.003464),(-0.788731, 0.107992, 0.000000),(-0.767557, 0.211568, 0.000000),(-0.768074, 0.211710, 0.002000),(-0.788731, 0.107992, 0.000000),(-0.768074, 0.211710, 0.002000),(-0.789262, 0.108064, 0.002000),(-0.789262, 0.108064, -0.002000),(-0.768074, 0.211710, -0.002000),(-0.767557, 0.211568, 0.000000),(-0.789262, 0.108064, -0.002000),(-0.767557, 0.211568, 0.000000),(-0.788731, 0.107992, 0.000000),(-0.790712, 0.108260, -0.003464),(-0.769486, 0.212098, -0.003464),(-0.768074, 0.211710, -0.002000),(-0.790712, 0.108260, -0.003464),(-0.768074, 0.211710, -0.002000),(-0.789262, 0.108064, -0.002000),(-0.792694, 0.108528, -0.004000),(-0.771414, 0.212627, -0.004000),(-0.769486, 0.212098, -0.003464),(-0.792694, 0.108528, -0.004000),(-0.769486, 0.212098, -0.003464),(-0.790712, 0.108260, -0.003464),(-0.773343, 0.213157, -0.003464),(-0.738956, 0.312121, -0.003464),(-0.737114, 0.311342, -0.004000),(-0.773343, 0.213157, -0.003464),(-0.737114, 0.311342, -0.004000),(-0.771414, 0.212627, -0.004000),(-0.774755, 0.213545, -0.002000),(-0.740305, 0.312691, -0.002000),(-0.738956, 0.312121, -0.003464),(-0.774755, 0.213545, -0.002000),(-0.738956, 0.312121, -0.003464),(-0.773343, 0.213157, -0.003464),(-0.775271, 0.213687, -0.000000),(-0.740799, 0.312899, -0.000000),(-0.740305, 0.312691, -0.002000),(-0.775271, 0.213687, -0.000000),(-0.740305, 0.312691, -0.002000),(-0.774755, 0.213545, -0.002000),(-0.774755, 0.213545, 0.002000),(-0.740305, 0.312691, 0.002000),(-0.740799, 0.312899, -0.000000),(-0.774755, 0.213545, 0.002000),(-0.740799, 0.312899, -0.000000),(-0.775271, 0.213687, -0.000000),(-0.773343, 0.213157, 0.003464),(-0.738956, 0.312121, 0.003464),(-0.740305, 0.312691, 0.002000),(-0.773343, 0.213157, 0.003464),(-0.740305, 0.312691, 0.002000),(-0.774755, 0.213545, 0.002000),(-0.771414, 0.212627, 0.004000),(-0.737114, 0.311342, 0.004000),(-0.738956, 0.312121, 0.003464),(-0.771414, 0.212627, 0.004000),(-0.738956, 0.312121, 0.003464),(-0.773343, 0.213157, 0.003464),(-0.769486, 0.212098, 0.003464),(-0.735272, 0.310564, 0.003464),(-0.737114, 0.311342, 0.004000),(-0.769486, 0.212098, 0.003464),(-0.737114, 0.311342, 0.004000),(-0.771414, 0.212627, 0.004000),(-0.768074, 0.211710, 0.002000),(-0.733923, 0.309994, 0.002000),(-0.735272, 0.310564, 0.003464),(-0.768074, 0.211710, 0.002000),(-0.735272, 0.310564, 0.003464),(-0.769486, 0.212098, 0.003464),(-0.767557, 0.211568, 0.000000),(-0.733429, 0.309785, 0.000000),(-0.733923, 0.309994, 0.002000),(-0.767557, 0.211568, 0.000000),(-0.733923, 0.309994, 0.002000),(-0.768074, 0.211710, 0.002000),(-0.768074, 0.211710, -0.002000),(-0.733923, 0.309994, -0.002000),(-0.733429, 0.309785, 0.000000),(-0.768074, 0.211710, -0.002000),(-0.733429, 0.309785, 0.000000),(-0.767557, 0.211568, 0.000000),(-0.769486, 0.212098, -0.003464),(-0.735272, 0.310564, -0.003464),(-0.733923, 0.309994, -0.002000),(-0.769486, 0.212098, -0.003464),(-0.733923, 0.309994, -0.002000),(-0.768074, 0.211710, -0.002000),(-0.771414, 0.212627, -0.004000),(-0.737114, 0.311342, -0.004000),(-0.735272, 0.310564, -0.003464),(-0.771414, 0.212627, -0.004000),(-0.735272, 0.310564, -0.003464),(-0.769486, 0.212098, -0.003464),(-0.738956, 0.312121, -0.003464),(-0.692474, 0.404729, -0.003464),(-0.690748, 0.403719, -0.004000),(-0.738956, 0.312121, -0.003464),(-0.690748, 0.403719, -0.004000),(-0.737114, 0.311342, -0.004000),(-0.740305, 0.312691, -0.002000),(-0.693738, 0.405469, -0.002000),(-0.692474, 0.404729, -0.003464),(-0.740305, 0.312691, -0.002000),(-0.692474, 0.404729, -0.003464),(-0.738956, 0.312121, -0.003464),(-0.740799, 0.312899, -0.000000),(-0.694200, 0.405740, -0.000000),(-0.693738, 0.405469, -0.002000),(-0.740799, 0.312899, -0.000000),(-0.693738, 0.405469, -0.002000),(-0.740305, 0.312691, -0.002000),(-0.740305, 0.312691, 0.002000),(-0.693738, 0.405469, 0.002000),(-0.694200, 0.405740, -0.000000),(-0.740305, 0.312691, 0.002000),(-0.694200, 0.405740, -0.000000),(-0.740799, 0.312899, -0.000000),(-0.738956, 0.312121, 0.003464),(-0.692474, 0.404729, 0.003464),(-0.693738, 0.405469, 0.002000),(-0.738956, 0.312121, 0.003464),(-0.693738, 0.405469, 0.002000),(-0.740305, 0.312691, 0.002000),(-0.737114, 0.311342, 0.004000),(-0.690748, 0.403719, 0.004000),(-0.692474, 0.404729, 0.003464),(-0.737114, 0.311342, 0.004000),(-0.692474, 0.404729, 0.003464),(-0.738956, 0.312121, 0.003464),(-0.735272, 0.310564, 0.003464),(-0.689022, 0.402708, 0.003464),(-0.690748, 0.403719, 0.004000),(-0.735272, 0.310564, 0.003464),(-0.690748, 0.403719, 0.004000),(-0.737114, 0.311342, 0.004000),(-0.733923, 0.309994, 0.002000),(-0.687759, 0.401968, 0.002000),(-0.689022, 0.402708, 0.003464),(-0.733923, 0.309994, 0.002000),(-0.689022, 0.402708, 0.003464),(-0.735272, 0.310564, 0.003464),(-0.733429, 0.309785, 0.000000),(-0.687296, 0.401698, 0.000000),(-0.687759, 0.401968, 0.002000),(-0.733429, 0.309785, 0.000000),(-0.687759, 0.401968, 0.002000),(-0.733923, 0.309994, 0.002000),(-0.733923, 0.309994, -0.002000),(-0.687759, 0.401968, -0.002000),(-0.687296, 0.401698, 0.000000),(-0.733923, 0.309994, -0.002000),(-0.687296, 0.401698, 0.000000),(-0.733429, 0.309785, 0.000000),(-0.735272, 0.310564, -0.003464),(-0.689022, 0.402708, -0.003464),(-0.687759, 0.401968, -0.002000),(-0.735272, 0.310564, -0.003464),(-0.687759, 0.401968, -0.002000),(-0.733923, 0.309994, -0.002000),(-0.737114, 0.311342, -0.004000),(-0.690748, 0.403719, -0.004000),(-0.689022, 0.402708, -0.003464),(-0.737114, 0.311342, -0.004000),(-0.689022, 0.402708, -0.003464),(-0.735272, 0.310564, -0.003464),(-0.692474, 0.404729, -0.003464),(-0.634854, 0.490025, -0.003464),(-0.633271, 0.488802, -0.004000),(-0.692474, 0.404729, -0.003464),(-0.633271, 0.488802, -0.004000),(-0.690748, 0.403719, -0.004000),(-0.693738, 0.405469, -0.002000),(-0.636012, 0.490920, -0.002000),(-0.634854, 0.490025, -0.003464),(-0.693738, 0.405469, -0.002000),(-0.634854, 0.490025, -0.003464),(-0.692474, 0.404729, -0.003464),(-0.694200, 0.405740, -0.000000),(-0.636436, 0.491248, -0.000000),(-0.636012, 0.490920, -0.002000),(-0.694200, 0.405740, -0.000000),(-0.636012, 0.490920, -0.002000),(-0.693738, 0.405469, -0.002000),(-0.693738, 0.405469, 0.002000),(-0.636012, 0.490920, 0.002000),(-0.636436, 0.491248, -0.000000),(-0.693738, 0.405469, 0.002000),(-0.636436, 0.491248, -0.000000),(-0.694200, 0.405740, -0.000000),(-0.692474, 0.404729, 0.003464),(-0.634854, 0.490025, 0.003464),(-0.636012, 0.490920, 0.002000),(-0.692474, 0.404729, 0.003464),(-0.636012, 0.490920, 0.002000),(-0.693738, 0.405469, 0.002000),(-0.690748, 0.403719, 0.004000),(-0.633271, 0.488802, 0.004000),(-0.634854, 0.490025, 0.003464),(-0.690748, 0.403719, 0.004000),(-0.634854, 0.490025, 0.003464),(-0.692474, 0.404729, 0.003464),(-0.689022, 0.402708, 0.003464),(-0.631689, 0.487579, 0.003464),(-0.633271, 0.488802, 0.004000),(-0.689022, 0.402708, 0.003464),(-0.633271, 0.488802, 0.004000),(-0.690748, 0.403719, 0.004000),(-0.687759, 0.401968, 0.002000),(-0.630530, 0.486684, 0.002000),(-0.631689, 0.487579, 0.003464),(-0.687759, 0.401968, 0.002000),(-0.631689, 0.487579, 0.003464),(-0.689022, 0.402708, 0.003464),(-0.687296, 0.401698, 0.000000),(-0.630106, 0.486356, 0.000000),(-0.630530, 0.486684, 0.002000),(-0.687296, 0.401698, 0.000000),(-0.630530, 0.486684, 0.002000),(-0.687759, 0.401968, 0.002000),(-0.687759, 0.401968, -0.002000),(-0.630530, 0.486684, -0.002000),(-0.630106, 0.486356, 0.000000),(-0.687759, 0.401968, -0.002000),(-0.630106, 0.486356, 0.000000),(-0.687296, 0.401698, 0.000000),(-0.689022, 0.402708, -0.003464),(-0.631689, 0.487579, -0.003464),(-0.630530, 0.486684, -0.002000),(-0.689022, 0.402708, -0.003464),(-0.630530, 0.486684, -0.002000),(-0.687759, 0.401968, -0.002000),(-0.690748, 0.403719, -0.004000),(-0.633271, 0.488802, -0.004000),(-0.631689, 0.487579, -0.003464),(-0.690748, 0.403719, -0.004000),(-0.631689, 0.487579, -0.003464),(-0.689022, 0.402708, -0.003464),(-0.634854, 0.490025, -0.003464),(-0.567052, 0.567052, -0.003464),(-0.565637, 0.565638, -0.004000),(-0.634854, 0.490025, -0.003464),(-0.565637, 0.565638, -0.004000),(-0.633271, 0.488802, -0.004000),(-0.636012, 0.490920, -0.002000),(-0.568087, 0.568087, -0.002000),(-0.567052, 0.567052, -0.003464),(-0.636012, 0.490920, -0.002000),(-0.567052, 0.567052, -0.003464),(-0.634854, 0.490025, -0.003464),(-0.636436, 0.491248, -0.000000),(-0.568466, 0.568466, -0.000000),(-0.568087, 0.568087, -0.002000),(-0.636436, 0.491248, -0.000000),(-0.568087, 0.568087, -0.002000),(-0.636012, 0.490920, -0.002000),(-0.636012, 0.490920, 0.002000),(-0.568087, 0.568087, 0.002000),(-0.568466, 0.568466, -0.000000),(-0.636012, 0.490920, 0.002000),(-0.568466, 0.568466, -0.000000),(-0.636436, 0.491248, -0.000000),(-0.634854, 0.490025, 0.003464),(-0.567052, 0.567052, 0.003464),(-0.568087, 0.568087, 0.002000),(-0.634854, 0.490025, 0.003464),(-0.568087, 0.568087, 0.002000),(-0.636012, 0.490920, 0.002000),(-0.633271, 0.488802, 0.004000),(-0.565637, 0.565638, 0.004000),(-0.567052, 0.567052, 0.003464),(-0.633271, 0.488802, 0.004000),(-0.567052, 0.567052, 0.003464),(-0.634854, 0.490025, 0.003464),(-0.631689, 0.487579, 0.003464),(-0.564223, 0.564223, 0.003464),(-0.565637, 0.565638, 0.004000),(-0.631689, 0.487579, 0.003464),(-0.565637, 0.565638, 0.004000),(-0.633271, 0.488802, 0.004000),(-0.630530, 0.486684, 0.002000),(-0.563188, 0.563188, 0.002000),(-0.564223, 0.564223, 0.003464),(-0.630530, 0.486684, 0.002000),(-0.564223, 0.564223, 0.003464),(-0.631689, 0.487579, 0.003464),(-0.630106, 0.486356, 0.000000),(-0.562809, 0.562809, 0.000000),(-0.563188, 0.563188, 0.002000),(-0.630106, 0.486356, 0.000000),(-0.563188, 0.563188, 0.002000),(-0.630530, 0.486684, 0.002000),(-0.630530, 0.486684, -0.002000),(-0.563188, 0.563188, -0.002000),(-0.562809, 0.562809, 0.000000),(-0.630530, 0.486684, -0.002000),(-0.562809, 0.562809, 0.000000),(-0.630106, 0.486356, 0.000000),(-0.631689, 0.487579, -0.003464),(-0.564223, 0.564223, -0.003464),(-0.563188, 0.563188, -0.002000),(-0.631689, 0.487579, -0.003464),(-0.563188, 0.563188, -0.002000),(-0.630530, 0.486684, -0.002000),(-0.633271, 0.488802, -0.004000),(-0.565637, 0.565638, -0.004000),(-0.564223, 0.564223, -0.003464),(-0.633271, 0.488802, -0.004000),(-0.564223, 0.564223, -0.003464),(-0.631689, 0.487579, -0.003464),(-0.567052, 0.567052, -0.003464),(-0.490025, 0.634854, -0.003464),(-0.488802, 0.633271, -0.004000),(-0.567052, 0.567052, -0.003464),(-0.488802, 0.633271, -0.004000),(-0.565637, 0.565638, -0.004000),(-0.568087, 0.568087, -0.002000),(-0.490920, 0.636012, -0.002000),(-0.490025, 0.634854, -0.003464),(-0.568087, 0.568087, -0.002000),(-0.490025, 0.634854, -0.003464),(-0.567052, 0.567052, -0.003464),(-0.568466, 0.568466, -0.000000),(-0.491248, 0.636436, -0.000000),(-0.490920, 0.636012, -0.002000),(-0.568466, 0.568466, -0.000000),(-0.490920, 0.636012, -0.002000),(-0.568087, 0.568087, -0.002000),(-0.568087, 0.568087, 0.002000),(-0.490920, 0.636012, 0.002000),(-0.491248, 0.636436, -0.000000),(-0.568087, 0.568087, 0.002000),(-0.491248, 0.636436, -0.000000),(-0.568466, 0.568466, -0.000000),(-0.567052, 0.567052, 0.003464),(-0.490025, 0.634854, 0.003464),(-0.490920, 0.636012, 0.002000),(-0.567052, 0.567052, 0.003464),(-0.490920, 0.636012, 0.002000),(-0.568087, 0.568087, 0.002000),(-0.565637, 0.565638, 0.004000),(-0.488802, 0.633271, 0.004000),(-0.490025, 0.634854, 0.003464),(-0.565637, 0.565638, 0.004000),(-0.490025, 0.634854, 0.003464),(-0.567052, 0.567052, 0.003464),(-0.564223, 0.564223, 0.003464),(-0.487579, 0.631689, 0.003464),(-0.488802, 0.633271, 0.004000),(-0.564223, 0.564223, 0.003464),(-0.488802, 0.633271, 0.004000),(-0.565637, 0.565638, 0.004000),(-0.563188, 0.563188, 0.002000),(-0.486684, 0.630530, 0.002000),(-0.487579, 0.631689, 0.003464),(-0.563188, 0.563188, 0.002000),(-0.487579, 0.631689, 0.003464),(-0.564223, 0.564223, 0.003464),(-0.562809, 0.562809, 0.000000),(-0.486356, 0.630106, 0.000000),(-0.486684, 0.630530, 0.002000),(-0.562809, 0.562809, 0.000000),(-0.486684, 0.630530, 0.002000),(-0.563188, 0.563188, 0.002000),(-0.563188, 0.563188, -0.002000),(-0.486684, 0.630530, -0.002000),(-0.486356, 0.630106, 0.000000),(-0.563188, 0.563188, -0.002000),(-0.486356, 0.630106, 0.000000),(-0.562809, 0.562809, 0.000000),(-0.564223, 0.564223, -0.003464),(-0.487579, 0.631689, -0.003464),(-0.486684, 0.630530, -0.002000),(-0.564223, 0.564223, -0.003464),(-0.486684, 0.630530, -0.002000),(-0.563188, 0.563188, -0.002000),(-0.565637, 0.565638, -0.004000),(-0.488802, 0.633271, -0.004000),(-0.487579, 0.631689, -0.003464),(-0.565637, 0.565638, -0.004000),(-0.487579, 0.631689, -0.003464),(-0.564223, 0.564223, -0.003464),(-0.490025, 0.634854, -0.003464),(-0.404729, 0.692474, -0.003464),(-0.403719, 0.690748, -0.004000),(-0.490025, 0.634854, -0.003464),(-0.403719, 0.690748, -0.004000),(-0.488802, 0.633271, -0.004000),(-0.490920, 0.636012, -0.002000),(-0.405469, 0.693738, -0.002000),(-0.404729, 0.692474, -0.003464),(-0.490920, 0.636012, -0.002000),(-0.404729, 0.692474, -0.003464),(-0.490025, 0.634854, -0.003464),(-0.491248, 0.636436, -0.000000),(-0.405739, 0.694200, -0.000000),(-0.405469, 0.693738, -0.002000),(-0.491248, 0.636436, -0.000000),(-0.405469, 0.693738, -0.002000),(-0.490920, 0.636012, -0.002000),(-0.490920, 0.636012, 0.002000),(-0.405469, 0.693738, 0.002000),(-0.405739, 0.694200, -0.000000),(-0.490920, 0.636012, 0.002000),(-0.405739, 0.694200, -0.000000),(-0.491248, 0.636436, -0.000000),(-0.490025, 0.634854, 0.003464),(-0.404729, 0.692474, 0.003464),(-0.405469, 0.693738, 0.002000),(-0.490025, 0.634854, 0.003464),(-0.405469, 0.693738, 0.002000),(-0.490920, 0.636012, 0.002000),(-0.488802, 0.633271, 0.004000),(-0.403719, 0.690748, 0.004000),(-0.404729, 0.692474, 0.003464),(-0.488802, 0.633271, 0.004000),(-0.404729, 0.692474, 0.003464),(-0.490025, 0.634854, 0.003464),(-0.487579, 0.631689, 0.003464),(-0.402708, 0.689022, 0.003464),(-0.403719, 0.690748, 0.004000),(-0.487579, 0.631689, 0.003464),(-0.403719, 0.690748, 0.004000),(-0.488802, 0.633271, 0.004000),(-0.486684, 0.630530, 0.002000),(-0.401968, 0.687759, 0.002000),(-0.402708, 0.689022, 0.003464),(-0.486684, 0.630530, 0.002000),(-0.402708, 0.689022, 0.003464),(-0.487579, 0.631689, 0.003464),(-0.486356, 0.630106, 0.000000),(-0.401698, 0.687296, 0.000000),(-0.401968, 0.687759, 0.002000),(-0.486356, 0.630106, 0.000000),(-0.401968, 0.687759, 0.002000),(-0.486684, 0.630530, 0.002000),(-0.486684, 0.630530, -0.002000),(-0.401968, 0.687759, -0.002000),(-0.401698, 0.687296, 0.000000),(-0.486684, 0.630530, -0.002000),(-0.401698, 0.687296, 0.000000),(-0.486356, 0.630106, 0.000000),(-0.487579, 0.631689, -0.003464),(-0.402708, 0.689022, -0.003464),(-0.401968, 0.687759, -0.002000),(-0.487579, 0.631689, -0.003464),(-0.401968, 0.687759, -0.002000),(-0.486684, 0.630530, -0.002000),(-0.488802, 0.633271, -0.004000),(-0.403719, 0.690748, -0.004000),(-0.402708, 0.689022, -0.003464),(-0.488802, 0.633271, -0.004000),(-0.402708, 0.689022, -0.003464),(-0.487579, 0.631689, -0.003464),(-0.404729, 0.692474, -0.003464),(-0.312121, 0.738956, -0.003464),(-0.311342, 0.737114, -0.004000),(-0.404729, 0.692474, -0.003464),(-0.311342, 0.737114, -0.004000),(-0.403719, 0.690748, -0.004000),(-0.405469, 0.693738, -0.002000),(-0.312691, 0.740305, -0.002000),(-0.312121, 0.738956, -0.003464),(-0.405469, 0.693738, -0.002000),(-0.312121, 0.738956, -0.003464),(-0.404729, 0.692474, -0.003464),(-0.405739, 0.694200, -0.000000),(-0.312899, 0.740799, -0.000000),(-0.312691, 0.740305, -0.002000),(-0.405739, 0.694200, -0.000000),(-0.312691, 0.740305, -0.002000),(-0.405469, 0.693738, -0.002000),(-0.405469, 0.693738, 0.002000),(-0.312691, 0.740305, 0.002000),(-0.312899, 0.740799, -0.000000),(-0.405469, 0.693738, 0.002000),(-0.312899, 0.740799, -0.000000),(-0.405739, 0.694200, -0.000000),(-0.404729, 0.692474, 0.003464),(-0.312121, 0.738956, 0.003464),(-0.312691, 0.740305, 0.002000),(-0.404729, 0.692474, 0.003464),(-0.312691, 0.740305, 0.002000),(-0.405469, 0.693738, 0.002000),(-0.403719, 0.690748, 0.004000),(-0.311342, 0.737114, 0.004000),(-0.312121, 0.738956, 0.003464),(-0.403719, 0.690748, 0.004000),(-0.312121, 0.738956, 0.003464),(-0.404729, 0.692474, 0.003464),(-0.402708, 0.689022, 0.003464),(-0.310564, 0.735272, 0.003464),(-0.311342, 0.737114, 0.004000),(-0.402708, 0.689022, 0.003464),(-0.311342, 0.737114, 0.004000),(-0.403719, 0.690748, 0.004000),(-0.401968, 0.687759, 0.002000),(-0.309994, 0.733923, 0.002000),(-0.310564, 0.735272, 0.003464),(-0.401968, 0.687759, 0.002000),(-0.310564, 0.735272, 0.003464),(-0.402708, 0.689022, 0.003464),(-0.401698, 0.687296, 0.000000),(-0.309785, 0.733430, 0.000000),(-0.309994, 0.733923, 0.002000),(-0.401698, 0.687296, 0.000000),(-0.309994, 0.733923, 0.002000),(-0.401968, 0.687759, 0.002000),(-0.401968, 0.687759, -0.002000),(-0.309994, 0.733923, -0.002000),(-0.309785, 0.733430, 0.000000),(-0.401968, 0.687759, -0.002000),(-0.309785, 0.733430, 0.000000),(-0.401698, 0.687296, 0.000000),(-0.402708, 0.689022, -0.003464),(-0.310564, 0.735272, -0.003464),(-0.309994, 0.733923, -0.002000),(-0.402708, 0.689022, -0.003464),(-0.309994, 0.733923, -0.002000),(-0.401968, 0.687759, -0.002000),(-0.403719, 0.690748, -0.004000),(-0.311342, 0.737114, -0.004000),(-0.310564, 0.735272, -0.003464),(-0.403719, 0.690748, -0.004000),(-0.310564, 0.735272, -0.003464),(-0.402708, 0.689022, -0.003464),(-0.312121, 0.738956, -0.003464),(-0.213157, 0.773343, -0.003464),(-0.212627, 0.771414, -0.004000),(-0.312121, 0.738956, -0.003464),(-0.212627, 0.771414, -0.004000),(-0.311342, 0.737114, -0.004000),(-0.312691, 0.740305, -0.002000),(-0.213545, 0.774755, -0.002000),(-0.213157, 0.773343, -0.003464),(-0.312691, 0.740305, -0.002000),(-0.213157, 0.773343, -0.003464),(-0.312121, 0.738956, -0.003464),(-0.312899, 0.740799, -0.000000),(-0.213687, 0.775272, -0.000000),(-0.213545, 0.774755, -0.002000),(-0.312899, 0.740799, -0.000000),(-0.213545, 0.774755, -0.002000),(-0.312691, 0.740305, -0.002000),(-0.312691, 0.740305, 0.002000),(-0.213545, 0.774755, 0.002000),(-0.213687, 0.775272, -0.000000),(-0.312691, 0.740305, 0.002000),(-0.213687, 0.775272, -0.000000),(-0.312899, 0.740799, -0.000000),(-0.312121, 0.738956, 0.003464),(-0.213157, 0.773343, 0.003464),(-0.213545, 0.774755, 0.002000),(-0.312121, 0.738956, 0.003464),(-0.213545, 0.774755, 0.002000),(-0.312691, 0.740305, 0.002000),(-0.311342, 0.737114, 0.004000),(-0.212627, 0.771414, 0.004000),(-0.213157, 0.773343, 0.003464),(-0.311342, 0.737114, 0.004000),(-0.213157, 0.773343, 0.003464),(-0.312121, 0.738956, 0.003464),(-0.310564, 0.735272, 0.003464),(-0.212098, 0.769486, 0.003464),(-0.212627, 0.771414, 0.004000),(-0.310564, 0.735272, 0.003464),(-0.212627, 0.771414, 0.004000),(-0.311342, 0.737114, 0.004000),(-0.309994, 0.733923, 0.002000),(-0.211710, 0.768074, 0.002000),(-0.212098, 0.769486, 0.003464),(-0.309994, 0.733923, 0.002000),(-0.212098, 0.769486, 0.003464),(-0.310564, 0.735272, 0.003464),(-0.309785, 0.733430, 0.000000),(-0.211568, 0.767557, 0.000000),(-0.211710, 0.768074, 0.002000),(-0.309785, 0.733430, 0.000000),(-0.211710, 0.768074, 0.002000),(-0.309994, 0.733923, 0.002000),(-0.309994, 0.733923, -0.002000),(-0.211710, 0.768074, -0.002000),(-0.211568, 0.767557, 0.000000),(-0.309994, 0.733923, -0.002000),(-0.211568, 0.767557, 0.000000),(-0.309785, 0.733430, 0.000000),(-0.310564, 0.735272, -0.003464),(-0.212098, 0.769486, -0.003464),(-0.211710, 0.768074, -0.002000),(-0.310564, 0.735272, -0.003464),(-0.211710, 0.768074, -0.002000),(-0.309994, 0.733923, -0.002000),(-0.311342, 0.737114, -0.004000),(-0.212627, 0.771414, -0.004000),(-0.212098, 0.769486, -0.003464),(-0.311342, 0.737114, -0.004000),(-0.212098, 0.769486, -0.003464),(-0.310564, 0.735272, -0.003464),(-0.213157, 0.773343, -0.003464),(-0.108796, 0.794677, -0.003464),(-0.108528, 0.792695, -0.004000),(-0.213157, 0.773343, -0.003464),(-0.108528, 0.792695, -0.004000),(-0.212627, 0.771414, -0.004000),(-0.213545, 0.774755, -0.002000),(-0.108993, 0.796127, -0.002000),(-0.108796, 0.794677, -0.003464),(-0.213545, 0.774755, -0.002000),(-0.108796, 0.794677, -0.003464),(-0.213157, 0.773343, -0.003464),(-0.213687, 0.775272, -0.000000),(-0.109064, 0.796658, -0.000000),(-0.108993, 0.796127, -0.002000),(-0.213687, 0.775272, -0.000000),(-0.108993, 0.796127, -0.002000),(-0.213545, 0.774755, -0.002000),(-0.213545, 0.774755, 0.002000),(-0.108993, 0.796127, 0.002000),(-0.109064, 0.796658, -0.000000),(-0.213545, 0.774755, 0.002000),(-0.109064, 0.796658, -0.000000),(-0.213687, 0.775272, -0.000000),(-0.213157, 0.773343, 0.003464),(-0.108796, 0.794677, 0.003464),(-0.108993, 0.796127, 0.002000),(-0.213157, 0.773343, 0.003464),(-0.108993, 0.796127, 0.002000),(-0.213545, 0.774755, 0.002000),(-0.212627, 0.771414, 0.004000),(-0.108528, 0.792695, 0.004000),(-0.108796, 0.794677, 0.003464),(-0.212627, 0.771414, 0.004000),(-0.108796, 0.794677, 0.003464),(-0.213157, 0.773343, 0.003464),(-0.212098, 0.769486, 0.003464),(-0.108260, 0.790713, 0.003464),(-0.108528, 0.792695, 0.004000),(-0.212098, 0.769486, 0.003464),(-0.108528, 0.792695, 0.004000),(-0.212627, 0.771414, 0.004000),(-0.211710, 0.768074, 0.002000),(-0.108064, 0.789262, 0.002000),(-0.108260, 0.790713, 0.003464),(-0.211710, 0.768074, 0.002000),(-0.108260, 0.790713, 0.003464),(-0.212098, 0.769486, 0.003464),(-0.211568, 0.767557, 0.000000),(-0.107992, 0.788731, 0.000000),(-0.108064, 0.789262, 0.002000),(-0.211568, 0.767557, 0.000000),(-0.108064, 0.789262, 0.002000),(-0.211710, 0.768074, 0.002000),(-0.211710, 0.768074, -0.002000),(-0.108064, 0.789262, -0.002000),(-0.107992, 0.788731, 0.000000),(-0.211710, 0.768074, -0.002000),(-0.107992, 0.788731, 0.000000),(-0.211568, 0.767557, 0.000000),(-0.212098, 0.769486, -0.003464),(-0.108260, 0.790713, -0.003464),(-0.108064, 0.789262, -0.002000),(-0.212098, 0.769486, -0.003464),(-0.108064, 0.789262, -0.002000),(-0.211710, 0.768074, -0.002000),(-0.212627, 0.771414, -0.004000),(-0.108528, 0.792695, -0.004000),(-0.108260, 0.790713, -0.003464),(-0.212627, 0.771414, -0.004000),(-0.108260, 0.790713, -0.003464),(-0.212098, 0.769486, -0.003464),(-0.108796, 0.794677, -0.003464),(0.000000, 0.802000, -0.003464),(-0.000000, 0.800000, -0.004000),(-0.108796, 0.794677, -0.003464),(-0.000000, 0.800000, -0.004000),(-0.108528, 0.792695, -0.004000),(-0.108993, 0.796127, -0.002000),(0.000000, 0.803464, -0.002000),(0.000000, 0.802000, -0.003464),(-0.108993, 0.796127, -0.002000),(0.000000, 0.802000, -0.003464),(-0.108796, 0.794677, -0.003464),(-0.109064, 0.796658, -0.000000),(0.000000, 0.804000, -0.000000),(0.000000, 0.803464, -0.002000),(-0.109064, 0.796658, -0.000000),(0.000000, 0.803464, -0.002000),(-0.108993, 0.796127, -0.002000),(-0.108993, 0.796127, 0.002000),(0.000000, 0.803464, 0.002000),(0.000000, 0.804000, -0.000000),(-0.108993, 0.796127, 0.002000),(0.000000, 0.804000, -0.000000),(-0.109064, 0.796658, -0.000000),(-0.108796, 0.794677, 0.003464),(0.000000, 0.802000, 0.003464),(0.000000, 0.803464, 0.002000),(-0.108796, 0.794677, 0.003464),(0.000000, 0.803464, 0.002000),(-0.108993, 0.796127, 0.002000),(-0.108528, 0.792695, 0.004000),(0.000000, 0.800000, 0.004000),(0.000000, 0.802000, 0.003464),(-0.108528, 0.792695, 0.004000),(0.000000, 0.802000, 0.003464),(-0.108796, 0.794677, 0.003464),(-0.108260, 0.790713, 0.003464),(-0.000000, 0.798000, 0.003464),(0.000000, 0.800000, 0.004000),(-0.108260, 0.790713, 0.003464),(0.000000, 0.800000, 0.004000),(-0.108528, 0.792695, 0.004000),(-0.108064, 0.789262, 0.002000),(-0.000000, 0.796536, 0.002000),(-0.000000, 0.798000, 0.003464),(-0.108064, 0.789262, 0.002000),(-0.000000, 0.798000, 0.003464),(-0.108260, 0.790713, 0.003464),(-0.107992, 0.788731, 0.000000),(-0.000000, 0.796000, 0.000000),(-0.000000, 0.796536, 0.002000),(-0.107992, 0.788731, 0.000000),(-0.000000, 0.796536, 0.002000),(-0.108064, 0.789262, 0.002000),(-0.108064, 0.789262, -0.002000),(-0.000000, 0.796536, -0.002000),(-0.000000, 0.796000, 0.000000),(-0.108064, 0.789262, -0.002000),(-0.000000, 0.796000, 0.000000),(-0.107992, 0.788731, 0.000000),(-0.108260, 0.790713, -0.003464),(-0.000000, 0.798000, -0.003464),(-0.000000, 0.796536, -0.002000),(-0.108260, 0.790713, -0.003464),(-0.000000, 0.796536, -0.002000),(-0.108064, 0.789262, -0.002000),(-0.108528, 0.792695, -0.004000),(-0.000000, 0.800000, -0.004000),(-0.000000, 0.798000, -0.003464),(-0.108528, 0.792695, -0.004000),(-0.000000, 0.798000, -0.003464),(-0.108260, 0.790713, -0.003464),(0.000000, 0.802000, -0.003464),(0.108797, 0.794676, -0.003464),(0.108528, 0.792694, -0.004000),(0.000000, 0.802000, -0.003464),(0.108528, 0.792694, -0.004000),(-0.000000, 0.800000, -0.004000),(0.000000, 0.803464, -0.002000),(0.108993, 0.796127, -0.002000),(0.108797, 0.794676, -0.003464),(0.000000, 0.803464, -0.002000),(0.108797, 0.794676, -0.003464),(0.000000, 0.802000, -0.003464),(0.000000, 0.804000, -0.000000),(0.109065, 0.796658, -0.000000),(0.108993, 0.796127, -0.002000),(0.000000, 0.804000, -0.000000),(0.108993, 0.796127, -0.002000),(0.000000, 0.803464, -0.002000),(0.000000, 0.803464, 0.002000),(0.108993, 0.796127, 0.002000),(0.109065, 0.796658, -0.000000),(0.000000, 0.803464, 0.002000),(0.109065, 0.796658, -0.000000),(0.000000, 0.804000, -0.000000),(0.000000, 0.802000, 0.003464),(0.108797, 0.794676, 0.003464),(0.108993, 0.796127, 0.002000),(0.000000, 0.802000, 0.003464),(0.108993, 0.796127, 0.002000),(0.000000, 0.803464, 0.002000),(0.000000, 0.800000, 0.004000),(0.108528, 0.792694, 0.004000),(0.108797, 0.794676, 0.003464),(0.000000, 0.800000, 0.004000),(0.108797, 0.794676, 0.003464),(0.000000, 0.802000, 0.003464),(-0.000000, 0.798000, 0.003464),(0.108260, 0.790712, 0.003464),(0.108528, 0.792694, 0.004000),(-0.000000, 0.798000, 0.003464),(0.108528, 0.792694, 0.004000),(0.000000, 0.800000, 0.004000),(-0.000000, 0.796536, 0.002000),(0.108064, 0.789262, 0.002000),(0.108260, 0.790712, 0.003464),(-0.000000, 0.796536, 0.002000),(0.108260, 0.790712, 0.003464),(-0.000000, 0.798000, 0.003464),(-0.000000, 0.796000, 0.000000),(0.107992, 0.788731, 0.000000),(0.108064, 0.789262, 0.002000),(-0.000000, 0.796000, 0.000000),(0.108064, 0.789262, 0.002000),(-0.000000, 0.796536, 0.002000),(-0.000000, 0.796536, -0.002000),(0.108064, 0.789262, -0.002000),(0.107992, 0.788731, 0.000000),(-0.000000, 0.796536, -0.002000),(0.107992, 0.788731, 0.000000),(-0.000000, 0.796000, 0.000000),(-0.000000, 0.798000, -0.003464),(0.108260, 0.790712, -0.003464),(0.108064, 0.789262, -0.002000),(-0.000000, 0.798000, -0.003464),(0.108064, 0.789262, -0.002000),(-0.000000, 0.796536, -0.002000),(-0.000000, 0.800000, -0.004000),(0.108528, 0.792694, -0.004000),(0.108260, 0.790712, -0.003464),(-0.000000, 0.800000, -0.004000),(0.108260, 0.790712, -0.003464),(-0.000000, 0.798000, -0.003464),(0.108797, 0.794676, -0.003464),(0.213157, 0.773343, -0.003464),(0.212627, 0.771414, -0.004000),(0.108797, 0.794676, -0.003464),(0.212627, 0.771414, -0.004000),(0.108528, 0.792694, -0.004000),(0.108993, 0.796127, -0.002000),(0.213545, 0.774755, -0.002000),(0.213157, 0.773343, -0.003464),(0.108993, 0.796127, -0.002000),(0.213157, 0.773343, -0.003464),(0.108797, 0.794676, -0.003464),(0.109065, 0.796658, -0.000000),(0.213687, 0.775271, -0.000000),(0.213545, 0.774755, -0.002000),(0.109065, 0.796658, -0.000000),(0.213545, 0.774755, -0.002000),(0.108993, 0.796127, -0.002000),(0.108993, 0.796127, 0.002000),(0.213545, 0.774755, 0.002000),(0.213687, 0.775271, -0.000000),(0.108993, 0.796127, 0.002000),(0.213687, 0.775271, -0.000000),(0.109065, 0.796658, -0.000000),(0.108797, 0.794676, 0.003464),(0.213157, 0.773343, 0.003464),(0.213545, 0.774755, 0.002000),(0.108797, 0.794676, 0.003464),(0.213545, 0.774755, 0.002000),(0.108993, 0.796127, 0.002000),(0.108528, 0.792694, 0.004000),(0.212627, 0.771414, 0.004000),(0.213157, 0.773343, 0.003464),(0.108528, 0.792694, 0.004000),(0.213157, 0.773343, 0.003464),(0.108797, 0.794676, 0.003464),(0.108260, 0.790712, 0.003464),(0.212098, 0.769486, 0.003464),(0.212627, 0.771414, 0.004000),(0.108260, 0.790712, 0.003464),(0.212627, 0.771414, 0.004000),(0.108528, 0.792694, 0.004000),(0.108064, 0.789262, 0.002000),(0.211710, 0.768074, 0.002000),(0.212098, 0.769486, 0.003464),(0.108064, 0.789262, 0.002000),(0.212098, 0.769486, 0.003464),(0.108260, 0.790712, 0.003464),(0.107992, 0.788731, 0.000000),(0.211568, 0.767557, 0.000000),(0.211710, 0.768074, 0.002000),(0.107992, 0.788731, 0.000000),(0.211710, 0.768074, 0.002000),(0.108064, 0.789262, 0.002000),(0.108064, 0.789262, -0.002000),(0.211710, 0.768074, -0.002000),(0.211568, 0.767557, 0.000000),(0.108064, 0.789262, -0.002000),(0.211568, 0.767557, 0.000000),(0.107992, 0.788731, 0.000000),(0.108260, 0.790712, -0.003464),(0.212098, 0.769486, -0.003464),(0.211710, 0.768074, -0.002000),(0.108260, 0.790712, -0.003464),(0.211710, 0.768074, -0.002000),(0.108064, 0.789262, -0.002000),(0.108528, 0.792694, -0.004000),(0.212627, 0.771414, -0.004000),(0.212098, 0.769486, -0.003464),(0.108528, 0.792694, -0.004000),(0.212098, 0.769486, -0.003464),(0.108260, 0.790712, -0.003464),(0.213157, 0.773343, -0.003464),(0.312121, 0.738956, -0.003464),(0.311342, 0.737114, -0.004000),(0.213157, 0.773343, -0.003464),(0.311342, 0.737114, -0.004000),(0.212627, 0.771414, -0.004000),(0.213545, 0.774755, -0.002000),(0.312691, 0.740305, -0.002000),(0.312121, 0.738956, -0.003464),(0.213545, 0.774755, -0.002000),(0.312121, 0.738956, -0.003464),(0.213157, 0.773343, -0.003464),(0.213687, 0.775271, -0.000000),(0.312899, 0.740799, -0.000000),(0.312691, 0.740305, -0.002000),(0.213687, 0.775271, -0.000000),(0.312691, 0.740305, -0.002000),(0.213545, 0.774755, -0.002000),(0.213545, 0.774755, 0.002000),(0.312691, 0.740305, 0.002000),(0.312899, 0.740799, -0.000000),(0.213545, 0.774755, 0.002000),(0.312899, 0.740799, -0.000000),(0.213687, 0.775271, -0.000000),(0.213157, 0.773343, 0.003464),(0.312121, 0.738956, 0.003464),(0.312691, 0.740305, 0.002000),(0.213157, 0.773343, 0.003464),(0.312691, 0.740305, 0.002000),(0.213545, 0.774755, 0.002000),(0.212627, 0.771414, 0.004000),(0.311342, 0.737114, 0.004000),(0.312121, 0.738956, 0.003464),(0.212627, 0.771414, 0.004000),(0.312121, 0.738956, 0.003464),(0.213157, 0.773343, 0.003464),(0.212098, 0.769486, 0.003464),(0.310564, 0.735272, 0.003464),(0.311342, 0.737114, 0.004000),(0.212098, 0.769486, 0.003464),(0.311342, 0.737114, 0.004000),(0.212627, 0.771414, 0.004000),(0.211710, 0.768074, 0.002000),(0.309994, 0.733923, 0.002000),(0.310564, 0.735272, 0.003464),(0.211710, 0.768074, 0.002000),(0.310564, 0.735272, 0.003464),(0.212098, 0.769486, 0.003464),(0.211568, 0.767557, 0.000000),(0.309785, 0.733429, 0.000000),(0.309994, 0.733923, 0.002000),(0.211568, 0.767557, 0.000000),(0.309994, 0.733923, 0.002000),(0.211710, 0.768074, 0.002000),(0.211710, 0.768074, -0.002000),(0.309994, 0.733923, -0.002000),(0.309785, 0.733429, 0.000000),(0.211710, 0.768074, -0.002000),(0.309785, 0.733429, 0.000000),(0.211568, 0.767557, 0.000000),(0.212098, 0.769486, -0.003464),(0.310564, 0.735272, -0.003464),(0.309994, 0.733923, -0.002000),(0.212098, 0.769486, -0.003464),(0.309994, 0.733923, -0.002000),(0.211710, 0.768074, -0.002000),(0.212627, 0.771414, -0.004000),(0.311342, 0.737114, -0.004000),(0.310564, 0.735272, -0.003464),(0.212627, 0.771414, -0.004000),(0.310564, 0.735272, -0.003464),(0.212098, 0.769486, -0.003464),(0.312121, 0.738956, -0.003464),(0.404729, 0.692474, -0.003464),(0.403719, 0.690748, -0.004000),(0.312121, 0.738956, -0.003464),(0.403719, 0.690748, -0.004000),(0.311342, 0.737114, -0.004000),(0.312691, 0.740305, -0.002000),(0.405469, 0.693738, -0.002000),(0.404729, 0.692474, -0.003464),(0.312691, 0.740305, -0.002000),(0.404729, 0.692474, -0.003464),(0.312121, 0.738956, -0.003464),(0.312899, 0.740799, -0.000000),(0.405740, 0.694200, -0.000000),(0.405469, 0.693738, -0.002000),(0.312899, 0.740799, -0.000000),(0.405469, 0.693738, -0.002000),(0.312691, 0.740305, -0.002000),(0.312691, 0.740305, 0.002000),(0.405469, 0.693738, 0.002000),(0.405740, 0.694200, -0.000000),(0.312691, 0.740305, 0.002000),(0.405740, 0.694200, -0.000000),(0.312899, 0.740799, -0.000000),(0.312121, 0.738956, 0.003464),(0.404729, 0.692474, 0.003464),(0.405469, 0.693738, 0.002000),(0.312121, 0.738956, 0.003464),(0.405469, 0.693738, 0.002000),(0.312691, 0.740305, 0.002000),(0.311342, 0.737114, 0.004000),(0.403719, 0.690748, 0.004000),(0.404729, 0.692474, 0.003464),(0.311342, 0.737114, 0.004000),(0.404729, 0.692474, 0.003464),(0.312121, 0.738956, 0.003464),(0.310564, 0.735272, 0.003464),(0.402708, 0.689022, 0.003464),(0.403719, 0.690748, 0.004000),(0.310564, 0.735272, 0.003464),(0.403719, 0.690748, 0.004000),(0.311342, 0.737114, 0.004000),(0.309994, 0.733923, 0.002000),(0.401968, 0.687759, 0.002000),(0.402708, 0.689022, 0.003464),(0.309994, 0.733923, 0.002000),(0.402708, 0.689022, 0.003464),(0.310564, 0.735272, 0.003464),(0.309785, 0.733429, 0.000000),(0.401698, 0.687296, 0.000000),(0.401968, 0.687759, 0.002000),(0.309785, 0.733429, 0.000000),(0.401968, 0.687759, 0.002000),(0.309994, 0.733923, 0.002000),(0.309994, 0.733923, -0.002000),(0.401968, 0.687759, -0.002000),(0.401698, 0.687296, 0.000000),(0.309994, 0.733923, -0.002000),(0.401698, 0.687296, 0.000000),(0.309785, 0.733429, 0.000000),(0.310564, 0.735272, -0.003464),(0.402708, 0.689022, -0.003464),(0.401968, 0.687759, -0.002000),(0.310564, 0.735272, -0.003464),(0.401968, 0.687759, -0.002000),(0.309994, 0.733923, -0.002000),(0.311342, 0.737114, -0.004000),(0.403719, 0.690748, -0.004000),(0.402708, 0.689022, -0.003464),(0.311342, 0.737114, -0.004000),(0.402708, 0.689022, -0.003464),(0.310564, 0.735272, -0.003464),(0.404729, 0.692474, -0.003464),(0.490025, 0.634854, -0.003464),(0.488802, 0.633271, -0.004000),(0.404729, 0.692474, -0.003464),(0.488802, 0.633271, -0.004000),(0.403719, 0.690748, -0.004000),(0.405469, 0.693738, -0.002000),(0.490920, 0.636012, -0.002000),(0.490025, 0.634854, -0.003464),(0.405469, 0.693738, -0.002000),(0.490025, 0.634854, -0.003464),(0.404729, 0.692474, -0.003464),(0.405740, 0.694200, -0.000000),(0.491248, 0.636436, -0.000000),(0.490920, 0.636012, -0.002000),(0.405740, 0.694200, -0.000000),(0.490920, 0.636012, -0.002000),(0.405469, 0.693738, -0.002000),(0.405469, 0.693738, 0.002000),(0.490920, 0.636012, 0.002000),(0.491248, 0.636436, -0.000000),(0.405469, 0.693738, 0.002000),(0.491248, 0.636436, -0.000000),(0.405740, 0.694200, -0.000000),(0.404729, 0.692474, 0.003464),(0.490025, 0.634854, 0.003464),(0.490920, 0.636012, 0.002000),(0.404729, 0.692474, 0.003464),(0.490920, 0.636012, 0.002000),(0.405469, 0.693738, 0.002000),(0.403719, 0.690748, 0.004000),(0.488802, 0.633271, 0.004000),(0.490025, 0.634854, 0.003464),(0.403719, 0.690748, 0.004000),(0.490025, 0.634854, 0.003464),(0.404729, 0.692474, 0.003464),(0.402708, 0.689022, 0.003464),(0.487579, 0.631689, 0.003464),(0.488802, 0.633271, 0.004000),(0.402708, 0.689022, 0.003464),(0.488802, 0.633271, 0.004000),(0.403719, 0.690748, 0.004000),(0.401968, 0.687759, 0.002000),(0.486684, 0.630530, 0.002000),(0.487579, 0.631689, 0.003464),(0.401968, 0.687759, 0.002000),(0.487579, 0.631689, 0.003464),(0.402708, 0.689022, 0.003464),(0.401698, 0.687296, 0.000000),(0.486356, 0.630106, 0.000000),(0.486684, 0.630530, 0.002000),(0.401698, 0.687296, 0.000000),(0.486684, 0.630530, 0.002000),(0.401968, 0.687759, 0.002000),(0.401968, 0.687759, -0.002000),(0.486684, 0.630530, -0.002000),(0.486356, 0.630106, 0.000000),(0.401968, 0.687759, -0.002000),(0.486356, 0.630106, 0.000000),(0.401698, 0.687296, 0.000000),(0.402708, 0.689022, -0.003464),(0.487579, 0.631689, -0.003464),(0.486684, 0.630530, -0.002000),(0.402708, 0.689022, -0.003464),(0.486684, 0.630530, -0.002000),(0.401968, 0.687759, -0.002000),(0.403719, 0.690748, -0.004000),(0.488802, 0.633271, -0.004000),(0.487579, 0.631689, -0.003464),(0.403719, 0.690748, -0.004000),(0.487579, 0.631689, -0.003464),(0.402708, 0.689022, -0.003464),(0.490025, 0.634854, -0.003464),(0.567052, 0.567052, -0.003464),(0.565638, 0.565637, -0.004000),(0.490025, 0.634854, -0.003464),(0.565638, 0.565637, -0.004000),(0.488802, 0.633271, -0.004000),(0.490920, 0.636012, -0.002000),(0.568087, 0.568087, -0.002000),(0.567052, 0.567052, -0.003464),(0.490920, 0.636012, -0.002000),(0.567052, 0.567052, -0.003464),(0.490025, 0.634854, -0.003464),(0.491248, 0.636436, -0.000000),(0.568466, 0.568466, -0.000000),(0.568087, 0.568087, -0.002000),(0.491248, 0.636436, -0.000000),(0.568087, 0.568087, -0.002000),(0.490920, 0.636012, -0.002000),(0.490920, 0.636012, 0.002000),(0.568087, 0.568087, 0.002000),(0.568466, 0.568466, -0.000000),(0.490920, 0.636012, 0.002000),(0.568466, 0.568466, -0.000000),(0.491248, 0.636436, -0.000000),(0.490025, 0.634854, 0.003464),(0.567052, 0.567052, 0.003464),(0.568087, 0.568087, 0.002000),(0.490025, 0.634854, 0.003464),(0.568087, 0.568087, 0.002000),(0.490920, 0.636012, 0.002000),(0.488802, 0.633271, 0.004000),(0.565638, 0.565637, 0.004000),(0.567052, 0.567052, 0.003464),(0.488802, 0.633271, 0.004000),(0.567052, 0.567052, 0.003464),(0.490025, 0.634854, 0.003464),(0.487579, 0.631689, 0.003464),(0.564223, 0.564223, 0.003464),(0.565638, 0.565637, 0.004000),(0.487579, 0.631689, 0.003464),(0.565638, 0.565637, 0.004000),(0.488802, 0.633271, 0.004000),(0.486684, 0.630530, 0.002000),(0.563188, 0.563188, 0.002000),(0.564223, 0.564223, 0.003464),(0.486684, 0.630530, 0.002000),(0.564223, 0.564223, 0.003464),(0.487579, 0.631689, 0.003464),(0.486356, 0.630106, 0.000000),(0.562809, 0.562809, 0.000000),(0.563188, 0.563188, 0.002000),(0.486356, 0.630106, 0.000000),(0.563188, 0.563188, 0.002000),(0.486684, 0.630530, 0.002000),(0.486684, 0.630530, -0.002000),(0.563188, 0.563188, -0.002000),(0.562809, 0.562809, 0.000000),(0.486684, 0.630530, -0.002000),(0.562809, 0.562809, 0.000000),(0.486356, 0.630106, 0.000000),(0.487579, 0.631689, -0.003464),(0.564223, 0.564223, -0.003464),(0.563188, 0.563188, -0.002000),(0.487579, 0.631689, -0.003464),(0.563188, 0.563188, -0.002000),(0.486684, 0.630530, -0.002000),(0.488802, 0.633271, -0.004000),(0.565638, 0.565637, -0.004000),(0.564223, 0.564223, -0.003464),(0.488802, 0.633271, -0.004000),(0.564223, 0.564223, -0.003464),(0.487579, 0.631689, -0.003464),(0.567052, 0.567052, -0.003464),(0.634854, 0.490025, -0.003464),(0.633271, 0.488802, -0.004000),(0.567052, 0.567052, -0.003464),(0.633271, 0.488802, -0.004000),(0.565638, 0.565637, -0.004000),(0.568087, 0.568087, -0.002000),(0.636012, 0.490920, -0.002000),(0.634854, 0.490025, -0.003464),(0.568087, 0.568087, -0.002000),(0.634854, 0.490025, -0.003464),(0.567052, 0.567052, -0.003464),(0.568466, 0.568466, -0.000000),(0.636436, 0.491248, -0.000000),(0.636012, 0.490920, -0.002000),(0.568466, 0.568466, -0.000000),(0.636012, 0.490920, -0.002000),(0.568087, 0.568087, -0.002000),(0.568087, 0.568087, 0.002000),(0.636012, 0.490920, 0.002000),(0.636436, 0.491248, -0.000000),(0.568087, 0.568087, 0.002000),(0.636436, 0.491248, -0.000000),(0.568466, 0.568466, -0.000000),(0.567052, 0.567052, 0.003464),(0.634854, 0.490025, 0.003464),(0.636012, 0.490920, 0.002000),(0.567052, 0.567052, 0.003464),(0.636012, 0.490920, 0.002000),(0.568087, 0.568087, 0.002000),(0.565638, 0.565637, 0.004000),(0.633271, 0.488802, 0.004000),(0.634854, 0.490025, 0.003464),(0.565638, 0.565637, 0.004000),(0.634854, 0.490025, 0.003464),(0.567052, 0.567052, 0.003464),(0.564223, 0.564223, 0.003464),(0.631689, 0.487579, 0.003464),(0.633271, 0.488802, 0.004000),(0.564223, 0.564223, 0.003464),(0.633271, 0.488802, 0.004000),(0.565638, 0.565637, 0.004000),(0.563188, 0.563188, 0.002000),(0.630530, 0.486684, 0.002000),(0.631689, 0.487579, 0.003464),(0.563188, 0.563188, 0.002000),(0.631689, 0.487579, 0.003464),(0.564223, 0.564223, 0.003464),(0.562809, 0.562809, 0.000000),(0.630106, 0.486356, 0.000000),(0.630530, 0.486684, 0.002000),(0.562809, 0.562809, 0.000000),(0.630530, 0.486684, 0.002000),(0.563188, 0.563188, 0.002000),(0.563188, 0.563188, -0.002000),(0.630530, 0.486684, -0.002000),(0.630106, 0.486356, 0.000000),(0.563188, 0.563188, -0.002000),(0.630106, 0.486356, 0.000000),(0.562809, 0.562809, 0.000000),(0.564223, 0.564223, -0.003464),(0.631689, 0.487579, -0.003464),(0.630530, 0.486684, -0.002000),(0.564223, 0.564223, -0.003464),(0.630530, 0.486684, -0.002000),(0.563188, 0.563188, -0.002000),(0.565638, 0.565637, -0.004000),(0.633271, 0.488802, -0.004000),(0.631689, 0.487579, -0.003464),(0.565638, 0.565637, -0.004000),(0.631689, 0.487579, -0.003464),(0.564223, 0.564223, -0.003464),(0.634854, 0.490025, -0.003464),(0.692474, 0.404729, -0.003464),(0.690748, 0.403719, -0.004000),(0.634854, 0.490025, -0.003464),(0.690748, 0.403719, -0.004000),(0.633271, 0.488802, -0.004000),(0.636012, 0.490920, -0.002000),(0.693738, 0.405469, -0.002000),(0.692474, 0.404729, -0.003464),(0.636012, 0.490920, -0.002000),(0.692474, 0.404729, -0.003464),(0.634854, 0.490025, -0.003464),(0.636436, 0.491248, -0.000000),(0.694200, 0.405739, -0.000000),(0.693738, 0.405469, -0.002000),(0.636436, 0.491248, -0.000000),(0.693738, 0.405469, -0.002000),(0.636012, 0.490920, -0.002000),(0.636012, 0.490920, 0.002000),(0.693738, 0.405469, 0.002000),(0.694200, 0.405739, -0.000000),(0.636012, 0.490920, 0.002000),(0.694200, 0.405739, -0.000000),(0.636436, 0.491248, -0.000000),(0.634854, 0.490025, 0.003464),(0.692474, 0.404729, 0.003464),(0.693738, 0.405469, 0.002000),(0.634854, 0.490025, 0.003464),(0.693738, 0.405469, 0.002000),(0.636012, 0.490920, 0.002000),(0.633271, 0.488802, 0.004000),(0.690748, 0.403719, 0.004000),(0.692474, 0.404729, 0.003464),(0.633271, 0.488802, 0.004000),(0.692474, 0.404729, 0.003464),(0.634854, 0.490025, 0.003464),(0.631689, 0.487579, 0.003464),(0.689022, 0.402708, 0.003464),(0.690748, 0.403719, 0.004000),(0.631689, 0.487579, 0.003464),(0.690748, 0.403719, 0.004000),(0.633271, 0.488802, 0.004000),(0.630530, 0.486684, 0.002000),(0.687759, 0.401968, 0.002000),(0.689022, 0.402708, 0.003464),(0.630530, 0.486684, 0.002000),(0.689022, 0.402708, 0.003464),(0.631689, 0.487579, 0.003464),(0.630106, 0.486356, 0.000000),(0.687296, 0.401698, 0.000000),(0.687759, 0.401968, 0.002000),(0.630106, 0.486356, 0.000000),(0.687759, 0.401968, 0.002000),(0.630530, 0.486684, 0.002000),(0.630530, 0.486684, -0.002000),(0.687759, 0.401968, -0.002000),(0.687296, 0.401698, 0.000000),(0.630530, 0.486684, -0.002000),(0.687296, 0.401698, 0.000000),(0.630106, 0.486356, 0.000000),(0.631689, 0.487579, -0.003464),(0.689022, 0.402708, -0.003464),(0.687759, 0.401968, -0.002000),(0.631689, 0.487579, -0.003464),(0.687759, 0.401968, -0.002000),(0.630530, 0.486684, -0.002000),(0.633271, 0.488802, -0.004000),(0.690748, 0.403719, -0.004000),(0.689022, 0.402708, -0.003464),(0.633271, 0.488802, -0.004000),(0.689022, 0.402708, -0.003464),(0.631689, 0.487579, -0.003464),(0.692474, 0.404729, -0.003464),(0.738956, 0.312121, -0.003464),(0.737114, 0.311342, -0.004000),(0.692474, 0.404729, -0.003464),(0.737114, 0.311342, -0.004000),(0.690748, 0.403719, -0.004000),(0.693738, 0.405469, -0.002000),(0.740305, 0.312691, -0.002000),(0.738956, 0.312121, -0.003464),(0.693738, 0.405469, -0.002000),(0.738956, 0.312121, -0.003464),(0.692474, 0.404729, -0.003464),(0.694200, 0.405739, -0.000000),(0.740799, 0.312899, -0.000000),(0.740305, 0.312691, -0.002000),(0.694200, 0.405739, -0.000000),(0.740305, 0.312691, -0.002000),(0.693738, 0.405469, -0.002000),(0.693738, 0.405469, 0.002000),(0.740305, 0.312691, 0.002000),(0.740799, 0.312899, -0.000000),(0.693738, 0.405469, 0.002000),(0.740799, 0.312899, -0.000000),(0.694200, 0.405739, -0.000000),(0.692474, 0.404729, 0.003464),(0.738956, 0.312121, 0.003464),(0.740305, 0.312691, 0.002000),(0.692474, 0.404729, 0.003464),(0.740305, 0.312691, 0.002000),(0.693738, 0.405469, 0.002000),(0.690748, 0.403719, 0.004000),(0.737114, 0.311342, 0.004000),(0.738956, 0.312121, 0.003464),(0.690748, 0.403719, 0.004000),(0.738956, 0.312121, 0.003464),(0.692474, 0.404729, 0.003464),(0.689022, 0.402708, 0.003464),(0.735272, 0.310564, 0.003464),(0.737114, 0.311342, 0.004000),(0.689022, 0.402708, 0.003464),(0.737114, 0.311342, 0.004000),(0.690748, 0.403719, 0.004000),(0.687759, 0.401968, 0.002000),(0.733923, 0.309994, 0.002000),(0.735272, 0.310564, 0.003464),(0.687759, 0.401968, 0.002000),(0.735272, 0.310564, 0.003464),(0.689022, 0.402708, 0.003464),(0.687296, 0.401698, 0.000000),(0.733430, 0.309785, 0.000000),(0.733923, 0.309994, 0.002000),(0.687296, 0.401698, 0.000000),(0.733923, 0.309994, 0.002000),(0.687759, 0.401968, 0.002000),(0.687759, 0.401968, -0.002000),(0.733923, 0.309994, -0.002000),(0.733430, 0.309785, 0.000000),(0.687759, 0.401968, -0.002000),(0.733430, 0.309785, 0.000000),(0.687296, 0.401698, 0.000000),(0.689022, 0.402708, -0.003464),(0.735272, 0.310564, -0.003464),(0.733923, 0.309994, -0.002000),(0.689022, 0.402708, -0.003464),(0.733923, 0.309994, -0.002000),(0.687759, 0.401968, -0.002000),(0.690748, 0.403719, -0.004000),(0.737114, 0.311342, -0.004000),(0.735272, 0.310564, -0.003464),(0.690748, 0.403719, -0.004000),(0.735272, 0.310564, -0.003464),(0.689022, 0.402708, -0.003464),(0.738956, 0.312121, -0.003464),(0.773343, 0.213157, -0.003464),(0.771414, 0.212627, -0.004000),(0.738956, 0.312121, -0.003464),(0.771414, 0.212627, -0.004000),(0.737114, 0.311342, -0.004000),(0.740305, 0.312691, -0.002000),(0.774755, 0.213545, -0.002000),(0.773343, 0.213157, -0.003464),(0.740305, 0.312691, -0.002000),(0.773343, 0.213157, -0.003464),(0.738956, 0.312121, -0.003464),(0.740799, 0.312899, -0.000000),(0.775272, 0.213687, -0.000000),(0.774755, 0.213545, -0.002000),(0.740799, 0.312899, -0.000000),(0.774755, 0.213545, -0.002000),(0.740305, 0.312691, -0.002000),(0.740305, 0.312691, 0.002000),(0.774755, 0.213545, 0.002000),(0.775272, 0.213687, -0.000000),(0.740305, 0.312691, 0.002000),(0.775272, 0.213687, -0.000000),(0.740799, 0.312899, -0.000000),(0.738956, 0.312121, 0.003464),(0.773343, 0.213157, 0.003464),(0.774755, 0.213545, 0.002000),(0.738956, 0.312121, 0.003464),(0.774755, 0.213545, 0.002000),(0.740305, 0.312691, 0.002000),(0.737114, 0.311342, 0.004000),(0.771414, 0.212627, 0.004000),(0.773343, 0.213157, 0.003464),(0.737114, 0.311342, 0.004000),(0.773343, 0.213157, 0.003464),(0.738956, 0.312121, 0.003464),(0.735272, 0.310564, 0.003464),(0.769486, 0.212098, 0.003464),(0.771414, 0.212627, 0.004000),(0.735272, 0.310564, 0.003464),(0.771414, 0.212627, 0.004000),(0.737114, 0.311342, 0.004000),(0.733923, 0.309994, 0.002000),(0.768074, 0.211710, 0.002000),(0.769486, 0.212098, 0.003464),(0.733923, 0.309994, 0.002000),(0.769486, 0.212098, 0.003464),(0.735272, 0.310564, 0.003464),(0.733430, 0.309785, 0.000000),(0.767557, 0.211568, 0.000000),(0.768074, 0.211710, 0.002000),(0.733430, 0.309785, 0.000000),(0.768074, 0.211710, 0.002000),(0.733923, 0.309994, 0.002000),(0.733923, 0.309994, -0.002000),(0.768074, 0.211710, -0.002000),(0.767557, 0.211568, 0.000000),(0.733923, 0.309994, -0.002000),(0.767557, 0.211568, 0.000000),(0.733430, 0.309785, 0.000000),(0.735272, 0.310564, -0.003464),(0.769486, 0.212098, -0.003464),(0.768074, 0.211710, -0.002000),(0.735272, 0.310564, -0.003464),(0.768074, 0.211710, -0.002000),(0.733923, 0.309994, -0.002000),(0.737114, 0.311342, -0.004000),(0.771414, 0.212627, -0.004000),(0.769486, 0.212098, -0.003464),(0.737114, 0.311342, -0.004000),(0.769486, 0.212098, -0.003464),(0.735272, 0.310564, -0.003464),(0.773343, 0.213157, -0.003464),(0.794677, 0.108796, -0.003464),(0.792695, 0.108528, -0.004000),(0.773343, 0.213157, -0.003464),(0.792695, 0.108528, -0.004000),(0.771414, 0.212627, -0.004000),(0.774755, 0.213545, -0.002000),(0.796127, 0.108993, -0.002000),(0.794677, 0.108796, -0.003464),(0.774755, 0.213545, -0.002000),(0.794677, 0.108796, -0.003464),(0.773343, 0.213157, -0.003464),(0.775272, 0.213687, -0.000000),(0.796658, 0.109064, -0.000000),(0.796127, 0.108993, -0.002000),(0.775272, 0.213687, -0.000000),(0.796127, 0.108993, -0.002000),(0.774755, 0.213545, -0.002000),(0.774755, 0.213545, 0.002000),(0.796127, 0.108993, 0.002000),(0.796658, 0.109064, -0.000000),(0.774755, 0.213545, 0.002000),(0.796658, 0.109064, -0.000000),(0.775272, 0.213687, -0.000000),(0.773343, 0.213157, 0.003464),(0.794677, 0.108796, 0.003464),(0.796127, 0.108993, 0.002000),(0.773343, 0.213157, 0.003464),(0.796127, 0.108993, 0.002000),(0.774755, 0.213545, 0.002000),(0.771414, 0.212627, 0.004000),(0.792695, 0.108528, 0.004000),(0.794677, 0.108796, 0.003464),(0.771414, 0.212627, 0.004000),(0.794677, 0.108796, 0.003464),(0.773343, 0.213157, 0.003464),(0.769486, 0.212098, 0.003464),(0.790713, 0.108260, 0.003464),(0.792695, 0.108528, 0.004000),(0.769486, 0.212098, 0.003464),(0.792695, 0.108528, 0.004000),(0.771414, 0.212627, 0.004000),(0.768074, 0.211710, 0.002000),(0.789262, 0.108064, 0.002000),(0.790713, 0.108260, 0.003464),(0.768074, 0.211710, 0.002000),(0.790713, 0.108260, 0.003464),(0.769486, 0.212098, 0.003464),(0.767557, 0.211568, 0.000000),(0.788731, 0.107992, 0.000000),(0.789262, 0.108064, 0.002000),(0.767557, 0.211568, 0.000000),(0.789262, 0.108064, 0.002000),(0.768074, 0.211710, 0.002000),(0.768074, 0.211710, -0.002000),(0.789262, 0.108064, -0.002000),(0.788731, 0.107992, 0.000000),(0.768074, 0.211710, -0.002000),(0.788731, 0.107992, 0.000000),(0.767557, 0.211568, 0.000000),(0.769486, 0.212098, -0.003464),(0.790713, 0.108260, -0.003464),(0.789262, 0.108064, -0.002000),(0.769486, 0.212098, -0.003464),(0.789262, 0.108064, -0.002000),(0.768074, 0.211710, -0.002000),(0.771414, 0.212627, -0.004000),(0.792695, 0.108528, -0.004000),(0.790713, 0.108260, -0.003464),(0.771414, 0.212627, -0.004000),(0.790713, 0.108260, -0.003464),(0.769486, 0.212098, -0.003464),(0.794677, 0.108796, -0.003464),(0.802000, -0.000000, -0.003464),(0.800000, -0.000000, -0.004000),(0.794677, 0.108796, -0.003464),(0.800000, -0.000000, -0.004000),(0.792695, 0.108528, -0.004000),(0.796127, 0.108993, -0.002000),(0.803464, -0.000000, -0.002000),(0.802000, -0.000000, -0.003464),(0.796127, 0.108993, -0.002000),(0.802000, -0.000000, -0.003464),(0.794677, 0.108796, -0.003464),(0.796658, 0.109064, -0.000000),(0.804000, -0.000000, -0.000000),(0.803464, -0.000000, -0.002000),(0.796658, 0.109064, -0.000000),(0.803464, -0.000000, -0.002000),(0.796127, 0.108993, -0.002000),(0.796127, 0.108993, 0.002000),(0.803464, -0.000000, 0.002000),(0.804000, -0.000000, -0.000000),(0.796127, 0.108993, 0.002000),(0.804000, -0.000000, -0.000000),(0.796658, 0.109064, -0.000000),(0.794677, 0.108796, 0.003464),(0.802000, -0.000000, 0.003464),(0.803464, -0.000000, 0.002000),(0.794677, 0.108796, 0.003464),(0.803464, -0.000000, 0.002000),(0.796127, 0.108993, 0.002000),(0.792695, 0.108528, 0.004000),(0.800000, 0.000000, 0.004000),(0.802000, -0.000000, 0.003464),(0.792695, 0.108528, 0.004000),(0.802000, -0.000000, 0.003464),(0.794677, 0.108796, 0.003464),(0.790713, 0.108260, 0.003464),(0.798000, 0.000000, 0.003464),(0.800000, 0.000000, 0.004000),(0.790713, 0.108260, 0.003464),(0.800000, 0.000000, 0.004000),(0.792695, 0.108528, 0.004000),(0.789262, 0.108064, 0.002000),(0.796536, 0.000000, 0.002000),(0.798000, 0.000000, 0.003464),(0.789262, 0.108064, 0.002000),(0.798000, 0.000000, 0.003464),(0.790713, 0.108260, 0.003464),(0.788731, 0.107992, 0.000000),(0.796000, 0.000000, 0.000000),(0.796536, 0.000000, 0.002000),(0.788731, 0.107992, 0.000000),(0.796536, 0.000000, 0.002000),(0.789262, 0.108064, 0.002000),(0.789262, 0.108064, -0.002000),(0.796536, 0.000000, -0.002000),(0.796000, 0.000000, 0.000000),(0.789262, 0.108064, -0.002000),(0.796000, 0.000000, 0.000000),(0.788731, 0.107992, 0.000000),(0.790713, 0.108260, -0.003464),(0.798000, 0.000000, -0.003464),(0.796536, 0.000000, -0.002000),(0.790713, 0.108260, -0.003464),(0.796536, 0.000000, -0.002000),(0.789262, 0.108064, -0.002000),(0.792695, 0.108528, -0.004000),(0.800000, -0.000000, -0.004000),(0.798000, 0.000000, -0.003464),(0.792695, 0.108528, -0.004000),(0.798000, 0.000000, -0.003464),(0.790713, 0.108260, -0.003464),(0.802000, -0.000000, -0.003464),(0.794676, -0.108797, -0.003464),(0.792694, -0.108528, -0.004000),(0.802000, -0.000000, -0.003464),(0.792694, -0.108528, -0.004000),(0.800000, -0.000000, -0.004000),(0.803464, -0.000000, -0.002000),(0.796127, -0.108993, -0.002000),(0.794676, -0.108797, -0.003464),(0.803464, -0.000000, -0.002000),(0.794676, -0.108797, -0.003464),(0.802000, -0.000000, -0.003464),(0.804000, -0.000000, -0.000000),(0.796658, -0.109065, -0.000000),(0.796127, -0.108993, -0.002000),(0.804000, -0.000000, -0.000000),(0.796127, -0.108993, -0.002000),(0.803464, -0.000000, -0.002000),(0.803464, -0.000000, 0.002000),(0.796127, -0.108993, 0.002000),(0.796658, -0.109065, -0.000000),(0.803464, -0.000000, 0.002000),(0.796658, -0.109065, -0.000000),(0.804000, -0.000000, -0.000000),(0.802000, -0.000000, 0.003464),(0.794676, -0.108797, 0.003464),(0.796127, -0.108993, 0.002000),(0.802000, -0.000000, 0.003464),(0.796127, -0.108993, 0.002000),(0.803464, -0.000000, 0.002000),(0.800000, 0.000000, 0.004000),(0.792694, -0.108528, 0.004000),(0.794676, -0.108797, 0.003464),(0.800000, 0.000000, 0.004000),(0.794676, -0.108797, 0.003464),(0.802000, -0.000000, 0.003464),(0.798000, 0.000000, 0.003464),(0.790712, -0.108260, 0.003464),(0.792694, -0.108528, 0.004000),(0.798000, 0.000000, 0.003464),(0.792694, -0.108528, 0.004000),(0.800000, 0.000000, 0.004000),(0.796536, 0.000000, 0.002000),(0.789262, -0.108064, 0.002000),(0.790712, -0.108260, 0.003464),(0.796536, 0.000000, 0.002000),(0.790712, -0.108260, 0.003464),(0.798000, 0.000000, 0.003464),(0.796000, 0.000000, 0.000000),(0.788731, -0.107992, 0.000000),(0.789262, -0.108064, 0.002000),(0.796000, 0.000000, 0.000000),(0.789262, -0.108064, 0.002000),(0.796536, 0.000000, 0.002000),(0.796536, 0.000000, -0.002000),(0.789262, -0.108064, -0.002000),(0.788731, -0.107992, 0.000000),(0.796536, 0.000000, -0.002000),(0.788731, -0.107992, 0.000000),(0.796000, 0.000000, 0.000000),(0.798000, 0.000000, -0.003464),(0.790712, -0.108260, -0.003464),(0.789262, -0.108064, -0.002000),(0.798000, 0.000000, -0.003464),(0.789262, -0.108064, -0.002000),(0.796536, 0.000000, -0.002000),(0.800000, -0.000000, -0.004000),(0.792694, -0.108528, -0.004000),(0.790712, -0.108260, -0.003464),(0.800000, -0.000000, -0.004000),(0.790712, -0.108260, -0.003464),(0.798000, 0.000000, -0.003464),(0.794676, -0.108797, -0.003464),(0.773343, -0.213157, -0.003464),(0.771414, -0.212627, -0.004000),(0.794676, -0.108797, -0.003464),(0.771414, -0.212627, -0.004000),(0.792694, -0.108528, -0.004000),(0.796127, -0.108993, -0.002000),(0.774755, -0.213545, -0.002000),(0.773343, -0.213157, -0.003464),(0.796127, -0.108993, -0.002000),(0.773343, -0.213157, -0.003464),(0.794676, -0.108797, -0.003464),(0.796658, -0.109065, -0.000000),(0.775271, -0.213687, -0.000000),(0.774755, -0.213545, -0.002000),(0.796658, -0.109065, -0.000000),(0.774755, -0.213545, -0.002000),(0.796127, -0.108993, -0.002000),(0.796127, -0.108993, 0.002000),(0.774755, -0.213545, 0.002000),(0.775271, -0.213687, -0.000000),(0.796127, -0.108993, 0.002000),(0.775271, -0.213687, -0.000000),(0.796658, -0.109065, -0.000000),(0.794676, -0.108797, 0.003464),(0.773343, -0.213157, 0.003464),(0.774755, -0.213545, 0.002000),(0.794676, -0.108797, 0.003464),(0.774755, -0.213545, 0.002000),(0.796127, -0.108993, 0.002000),(0.792694, -0.108528, 0.004000),(0.771414, -0.212627, 0.004000),(0.773343, -0.213157, 0.003464),(0.792694, -0.108528, 0.004000),(0.773343, -0.213157, 0.003464),(0.794676, -0.108797, 0.003464),(0.790712, -0.108260, 0.003464),(0.769486, -0.212098, 0.003464),(0.771414, -0.212627, 0.004000),(0.790712, -0.108260, 0.003464),(0.771414, -0.212627, 0.004000),(0.792694, -0.108528, 0.004000),(0.789262, -0.108064, 0.002000),(0.768074, -0.211710, 0.002000),(0.769486, -0.212098, 0.003464),(0.789262, -0.108064, 0.002000),(0.769486, -0.212098, 0.003464),(0.790712, -0.108260, 0.003464),(0.788731, -0.107992, 0.000000),(0.767557, -0.211568, 0.000000),(0.768074, -0.211710, 0.002000),(0.788731, -0.107992, 0.000000),(0.768074, -0.211710, 0.002000),(0.789262, -0.108064, 0.002000),(0.789262, -0.108064, -0.002000),(0.768074, -0.211710, -0.002000),(0.767557, -0.211568, 0.000000),(0.789262, -0.108064, -0.002000),(0.767557, -0.211568, 0.000000),(0.788731, -0.107992, 0.000000),(0.790712, -0.108260, -0.003464),(0.769486, -0.212098, -0.003464),(0.768074, -0.211710, -0.002000),(0.790712, -0.108260, -0.003464),(0.768074, -0.211710, -0.002000),(0.789262, -0.108064, -0.002000),(0.792694, -0.108528, -0.004000),(0.771414, -0.212627, -0.004000),(0.769486, -0.212098, -0.003464),(0.792694, -0.108528, -0.004000),(0.769486, -0.212098, -0.003464),(0.790712, -0.108260, -0.003464),(0.773343, -0.213157, -0.003464),(0.738956, -0.312121, -0.003464),(0.737114, -0.311342, -0.004000),(0.773343, -0.213157, -0.003464),(0.737114, -0.311342, -0.004000),(0.771414, -0.212627, -0.004000),(0.774755, -0.213545, -0.002000),(0.740305, -0.312691, -0.002000),(0.738956, -0.312121, -0.003464),(0.774755, -0.213545, -0.002000),(0.738956, -0.312121, -0.003464),(0.773343, -0.213157, -0.003464),(0.775271, -0.213687, -0.000000),(0.740799, -0.312899, -0.000000),(0.740305, -0.312691, -0.002000),(0.775271, -0.213687, -0.000000),(0.740305, -0.312691, -0.002000),(0.774755, -0.213545, -0.002000),(0.774755, -0.213545, 0.002000),(0.740305, -0.312691, 0.002000),(0.740799, -0.312899, -0.000000),(0.774755, -0.213545, 0.002000),(0.740799, -0.312899, -0.000000),(0.775271, -0.213687, -0.000000),(0.773343, -0.213157, 0.003464),(0.738956, -0.312121, 0.003464),(0.740305, -0.312691, 0.002000),(0.773343, -0.213157, 0.003464),(0.740305, -0.312691, 0.002000),(0.774755, -0.213545, 0.002000),(0.771414, -0.212627, 0.004000),(0.737114, -0.311342, 0.004000),(0.738956, -0.312121, 0.003464),(0.771414, -0.212627, 0.004000),(0.738956, -0.312121, 0.003464),(0.773343, -0.213157, 0.003464),(0.769486, -0.212098, 0.003464),(0.735272, -0.310564, 0.003464),(0.737114, -0.311342, 0.004000),(0.769486, -0.212098, 0.003464),(0.737114, -0.311342, 0.004000),(0.771414, -0.212627, 0.004000),(0.768074, -0.211710, 0.002000),(0.733923, -0.309994, 0.002000),(0.735272, -0.310564, 0.003464),(0.768074, -0.211710, 0.002000),(0.735272, -0.310564, 0.003464),(0.769486, -0.212098, 0.003464),(0.767557, -0.211568, 0.000000),(0.733429, -0.309785, 0.000000),(0.733923, -0.309994, 0.002000),(0.767557, -0.211568, 0.000000),(0.733923, -0.309994, 0.002000),(0.768074, -0.211710, 0.002000),(0.768074, -0.211710, -0.002000),(0.733923, -0.309994, -0.002000),(0.733429, -0.309785, 0.000000),(0.768074, -0.211710, -0.002000),(0.733429, -0.309785, 0.000000),(0.767557, -0.211568, 0.000000),(0.769486, -0.212098, -0.003464),(0.735272, -0.310564, -0.003464),(0.733923, -0.309994, -0.002000),(0.769486, -0.212098, -0.003464),(0.733923, -0.309994, -0.002000),(0.768074, -0.211710, -0.002000),(0.771414, -0.212627, -0.004000),(0.737114, -0.311342, -0.004000),(0.735272, -0.310564, -0.003464),(0.771414, -0.212627, -0.004000),(0.735272, -0.310564, -0.003464),(0.769486, -0.212098, -0.003464),(0.738956, -0.312121, -0.003464),(0.692474, -0.404729, -0.003464),(0.690748, -0.403719, -0.004000),(0.738956, -0.312121, -0.003464),(0.690748, -0.403719, -0.004000),(0.737114, -0.311342, -0.004000),(0.740305, -0.312691, -0.002000),(0.693738, -0.405469, -0.002000),(0.692474, -0.404729, -0.003464),(0.740305, -0.312691, -0.002000),(0.692474, -0.404729, -0.003464),(0.738956, -0.312121, -0.003464),(0.740799, -0.312899, -0.000000),(0.694200, -0.405740, -0.000000),(0.693738, -0.405469, -0.002000),(0.740799, -0.312899, -0.000000),(0.693738, -0.405469, -0.002000),(0.740305, -0.312691, -0.002000),(0.740305, -0.312691, 0.002000),(0.693738, -0.405469, 0.002000),(0.694200, -0.405740, -0.000000),(0.740305, -0.312691, 0.002000),(0.694200, -0.405740, -0.000000),(0.740799, -0.312899, -0.000000),(0.738956, -0.312121, 0.003464),(0.692474, -0.404729, 0.003464),(0.693738, -0.405469, 0.002000),(0.738956, -0.312121, 0.003464),(0.693738, -0.405469, 0.002000),(0.740305, -0.312691, 0.002000),(0.737114, -0.311342, 0.004000),(0.690748, -0.403719, 0.004000),(0.692474, -0.404729, 0.003464),(0.737114, -0.311342, 0.004000),(0.692474, -0.404729, 0.003464),(0.738956, -0.312121, 0.003464),(0.735272, -0.310564, 0.003464),(0.689022, -0.402708, 0.003464),(0.690748, -0.403719, 0.004000),(0.735272, -0.310564, 0.003464),(0.690748, -0.403719, 0.004000),(0.737114, -0.311342, 0.004000),(0.733923, -0.309994, 0.002000),(0.687759, -0.401968, 0.002000),(0.689022, -0.402708, 0.003464),(0.733923, -0.309994, 0.002000),(0.689022, -0.402708, 0.003464),(0.735272, -0.310564, 0.003464),(0.733429, -0.309785, 0.000000),(0.687296, -0.401698, 0.000000),(0.687759, -0.401968, 0.002000),(0.733429, -0.309785, 0.000000),(0.687759, -0.401968, 0.002000),(0.733923, -0.309994, 0.002000),(0.733923, -0.309994, -0.002000),(0.687759, -0.401968, -0.002000),(0.687296, -0.401698, 0.000000),(0.733923, -0.309994, -0.002000),(0.687296, -0.401698, 0.000000),(0.733429, -0.309785, 0.000000),(0.735272, -0.310564, -0.003464),(0.689022, -0.402708, -0.003464),(0.687759, -0.401968, -0.002000),(0.735272, -0.310564, -0.003464),(0.687759, -0.401968, -0.002000),(0.733923, -0.309994, -0.002000),(0.737114, -0.311342, -0.004000),(0.690748, -0.403719, -0.004000),(0.689022, -0.402708, -0.003464),(0.737114, -0.311342, -0.004000),(0.689022, -0.402708, -0.003464),(0.735272, -0.310564, -0.003464),(0.692474, -0.404729, -0.003464),(0.634854, -0.490025, -0.003464),(0.633271, -0.488802, -0.004000),(0.692474, -0.404729, -0.003464),(0.633271, -0.488802, -0.004000),(0.690748, -0.403719, -0.004000),(0.693738, -0.405469, -0.002000),(0.636012, -0.490920, -0.002000),(0.634854, -0.490025, -0.003464),(0.693738, -0.405469, -0.002000),(0.634854, -0.490025, -0.003464),(0.692474, -0.404729, -0.003464),(0.694200, -0.405740, -0.000000),(0.636436, -0.491248, -0.000000),(0.636012, -0.490920, -0.002000),(0.694200, -0.405740, -0.000000),(0.636012, -0.490920, -0.002000),(0.693738, -0.405469, -0.002000),(0.693738, -0.405469, 0.002000),(0.636012, -0.490920, 0.002000),(0.636436, -0.491248, -0.000000),(0.693738, -0.405469, 0.002000),(0.636436, -0.491248, -0.000000),(0.694200, -0.405740, -0.000000),(0.692474, -0.404729, 0.003464),(0.634854, -0.490025, 0.003464),(0.636012, -0.490920, 0.002000),(0.692474, -0.404729, 0.003464),(0.636012, -0.490920, 0.002000),(0.693738, -0.405469, 0.002000),(0.690748, -0.403719, 0.004000),(0.633271, -0.488802, 0.004000),(0.634854, -0.490025, 0.003464),(0.690748, -0.403719, 0.004000),(0.634854, -0.490025, 0.003464),(0.692474, -0.404729, 0.003464),(0.689022, -0.402708, 0.003464),(0.631689, -0.487579, 0.003464),(0.633271, -0.488802, 0.004000),(0.689022, -0.402708, 0.003464),(0.633271, -0.488802, 0.004000),(0.690748, -0.403719, 0.004000),(0.687759, -0.401968, 0.002000),(0.630530, -0.486684, 0.002000),(0.631689, -0.487579, 0.003464),(0.687759, -0.401968, 0.002000),(0.631689, -0.487579, 0.003464),(0.689022, -0.402708, 0.003464),(0.687296, -0.401698, 0.000000),(0.630106, -0.486356, 0.000000),(0.630530, -0.486684, 0.002000),(0.687296, -0.401698, 0.000000),(0.630530, -0.486684, 0.002000),(0.687759, -0.401968, 0.002000),(0.687759, -0.401968, -0.002000),(0.630530, -0.486684, -0.002000),(0.630106, -0.486356, 0.000000),(0.687759, -0.401968, -0.002000),(0.630106, -0.486356, 0.000000),(0.687296, -0.401698, 0.000000),(0.689022, -0.402708, -0.003464),(0.631689, -0.487579, -0.003464),(0.630530, -0.486684, -0.002000),(0.689022, -0.402708, -0.003464),(0.630530, -0.486684, -0.002000),(0.687759, -0.401968, -0.002000),(0.690748, -0.403719, -0.004000),(0.633271, -0.488802, -0.004000),(0.631689, -0.487579, -0.003464),(0.690748, -0.403719, -0.004000),(0.631689, -0.487579, -0.003464),(0.689022, -0.402708, -0.003464),(0.634854, -0.490025, -0.003464),(0.567052, -0.567052, -0.003464),(0.565637, -0.565638, -0.004000),(0.634854, -0.490025, -0.003464),(0.565637, -0.565638, -0.004000),(0.633271, -0.488802, -0.004000),(0.636012, -0.490920, -0.002000),(0.568087, -0.568087, -0.002000),(0.567052, -0.567052, -0.003464),(0.636012, -0.490920, -0.002000),(0.567052, -0.567052, -0.003464),(0.634854, -0.490025, -0.003464),(0.636436, -0.491248, -0.000000),(0.568466, -0.568466, -0.000000),(0.568087, -0.568087, -0.002000),(0.636436, -0.491248, -0.000000),(0.568087, -0.568087, -0.002000),(0.636012, -0.490920, -0.002000),(0.636012, -0.490920, 0.002000),(0.568087, -0.568087, 0.002000),(0.568466, -0.568466, -0.000000),(0.636012, -0.490920, 0.002000),(0.568466, -0.568466, -0.000000),(0.636436, -0.491248, -0.000000),(0.634854, -0.490025, 0.003464),(0.567052, -0.567052, 0.003464),(0.568087, -0.568087, 0.002000),(0.634854, -0.490025, 0.003464),(0.568087, -0.568087, 0.002000),(0.636012, -0.490920, 0.002000),(0.633271, -0.488802, 0.004000),(0.565637, -0.565638, 0.004000),(0.567052, -0.567052, 0.003464),(0.633271, -0.488802, 0.004000),(0.567052, -0.567052, 0.003464),(0.634854, -0.490025, 0.003464),(0.631689, -0.487579, 0.003464),(0.564223, -0.564223, 0.003464),(0.565637, -0.565638, 0.004000),(0.631689, -0.487579, 0.003464),(0.565637, -0.565638, 0.004000),(0.633271, -0.488802, 0.004000),(0.630530, -0.486684, 0.002000),(0.563188, -0.563188, 0.002000),(0.564223, -0.564223, 0.003464),(0.630530, -0.486684, 0.002000),(0.564223, -0.564223, 0.003464),(0.631689, -0.487579, 0.003464),(0.630106, -0.486356, 0.000000),(0.562809, -0.562809, 0.000000),(0.563188, -0.563188, 0.002000),(0.630106, -0.486356, 0.000000),(0.563188, -0.563188, 0.002000),(0.630530, -0.486684, 0.002000),(0.630530, -0.486684, -0.002000),(0.563188, -0.563188, -0.002000),(0.562809, -0.562809, 0.000000),(0.630530, -0.486684, -0.002000),(0.562809, -0.562809, 0.000000),(0.630106, -0.486356, 0.000000),(0.631689, -0.487579, -0.003464),(0.564223, -0.564223, -0.003464),(0.563188, -0.563188, -0.002000),(0.631689, -0.487579, -0.003464),(0.563188, -0.563188, -0.002000),(0.630530, -0.486684, -0.002000),(0.633271, -0.488802, -0.004000),(0.565637, -0.565638, -0.004000),(0.564223, -0.564223, -0.003464),(0.633271, -0.488802, -0.004000),(0.564223, -0.564223, -0.003464),(0.631689, -0.487579, -0.003464),(0.567052, -0.567052, -0.003464),(0.490025, -0.634854, -0.003464),(0.488802, -0.633271, -0.004000),(0.567052, -0.567052, -0.003464),(0.488802, -0.633271, -0.004000),(0.565637, -0.565638, -0.004000),(0.568087, -0.568087, -0.002000),(0.490920, -0.636012, -0.002000),(0.490025, -0.634854, -0.003464),(0.568087, -0.568087, -0.002000),(0.490025, -0.634854, -0.003464),(0.567052, -0.567052, -0.003464),(0.568466, -0.568466, -0.000000),(0.491248, -0.636436, -0.000000),(0.490920, -0.636012, -0.002000),(0.568466, -0.568466, -0.000000),(0.490920, -0.636012, -0.002000),(0.568087, -0.568087, -0.002000),(0.568087, -0.568087, 0.002000),(0.490920, -0.636012, 0.002000),(0.491248, -0.636436, -0.000000),(0.568087, -0.568087, 0.002000),(0.491248, -0.636436, -0.000000),(0.568466, -0.568466, -0.000000),(0.567052, -0.567052, 0.003464),(0.490025, -0.634854, 0.003464),(0.490920, -0.636012, 0.002000),(0.567052, -0.567052, 0.003464),(0.490920, -0.636012, 0.002000),(0.568087, -0.568087, 0.002000),(0.565637, -0.565638, 0.004000),(0.488802, -0.633271, 0.004000),(0.490025, -0.634854, 0.003464),(0.565637, -0.565638, 0.004000),(0.490025, -0.634854, 0.003464),(0.567052, -0.567052, 0.003464),(0.564223, -0.564223, 0.003464),(0.487579, -0.631689, 0.003464),(0.488802, -0.633271, 0.004000),(0.564223, -0.564223, 0.003464),(0.488802, -0.633271, 0.004000),(0.565637, -0.565638, 0.004000),(0.563188, -0.563188, 0.002000),(0.486684, -0.630530, 0.002000),(0.487579, -0.631689, 0.003464),(0.563188, -0.563188, 0.002000),(0.487579, -0.631689, 0.003464),(0.564223, -0.564223, 0.003464),(0.562809, -0.562809, 0.000000),(0.486356, -0.630106, 0.000000),(0.486684, -0.630530, 0.002000),(0.562809, -0.562809, 0.000000),(0.486684, -0.630530, 0.002000),(0.563188, -0.563188, 0.002000),(0.563188, -0.563188, -0.002000),(0.486684, -0.630530, -0.002000),(0.486356, -0.630106, 0.000000),(0.563188, -0.563188, -0.002000),(0.486356, -0.630106, 0.000000),(0.562809, -0.562809, 0.000000),(0.564223, -0.564223, -0.003464),(0.487579, -0.631689, -0.003464),(0.486684, -0.630530, -0.002000),(0.564223, -0.564223, -0.003464),(0.486684, -0.630530, -0.002000),(0.563188, -0.563188, -0.002000),(0.565637, -0.565638, -0.004000),(0.488802, -0.633271, -0.004000),(0.487579, -0.631689, -0.003464),(0.565637, -0.565638, -0.004000),(0.487579, -0.631689, -0.003464),(0.564223, -0.564223, -0.003464),(0.490025, -0.634854, -0.003464),(0.404729, -0.692474, -0.003464),(0.403719, -0.690748, -0.004000),(0.490025, -0.634854, -0.003464),(0.403719, -0.690748, -0.004000),(0.488802, -0.633271, -0.004000),(0.490920, -0.636012, -0.002000),(0.405469, -0.693738, -0.002000),(0.404729, -0.692474, -0.003464),(0.490920, -0.636012, -0.002000),(0.404729, -0.692474, -0.003464),(0.490025, -0.634854, -0.003464),(0.491248, -0.636436, -0.000000),(0.405739, -0.694200, -0.000000),(0.405469, -0.693738, -0.002000),(0.491248, -0.636436, -0.000000),(0.405469, -0.693738, -0.002000),(0.490920, -0.636012, -0.002000),(0.490920, -0.636012, 0.002000),(0.405469, -0.693738, 0.002000),(0.405739, -0.694200, -0.000000),(0.490920, -0.636012, 0.002000),(0.405739, -0.694200, -0.000000),(0.491248, -0.636436, -0.000000),(0.490025, -0.634854, 0.003464),(0.404729, -0.692474, 0.003464),(0.405469, -0.693738, 0.002000),(0.490025, -0.634854, 0.003464),(0.405469, -0.693738, 0.002000),(0.490920, -0.636012, 0.002000),(0.488802, -0.633271, 0.004000),(0.403719, -0.690748, 0.004000),(0.404729, -0.692474, 0.003464),(0.488802, -0.633271, 0.004000),(0.404729, -0.692474, 0.003464),(0.490025, -0.634854, 0.003464),(0.487579, -0.631689, 0.003464),(0.402708, -0.689022, 0.003464),(0.403719, -0.690748, 0.004000),(0.487579, -0.631689, 0.003464),(0.403719, -0.690748, 0.004000),(0.488802, -0.633271, 0.004000),(0.486684, -0.630530, 0.002000),(0.401968, -0.687759, 0.002000),(0.402708, -0.689022, 0.003464),(0.486684, -0.630530, 0.002000),(0.402708, -0.689022, 0.003464),(0.487579, -0.631689, 0.003464),(0.486356, -0.630106, 0.000000),(0.401698, -0.687296, 0.000000),(0.401968, -0.687759, 0.002000),(0.486356, -0.630106, 0.000000),(0.401968, -0.687759, 0.002000),(0.486684, -0.630530, 0.002000),(0.486684, -0.630530, -0.002000),(0.401968, -0.687759, -0.002000),(0.401698, -0.687296, 0.000000),(0.486684, -0.630530, -0.002000),(0.401698, -0.687296, 0.000000),(0.486356, -0.630106, 0.000000),(0.487579, -0.631689, -0.003464),(0.402708, -0.689022, -0.003464),(0.401968, -0.687759, -0.002000),(0.487579, -0.631689, -0.003464),(0.401968, -0.687759, -0.002000),(0.486684, -0.630530, -0.002000),(0.488802, -0.633271, -0.004000),(0.403719, -0.690748, -0.004000),(0.402708, -0.689022, -0.003464),(0.488802, -0.633271, -0.004000),(0.402708, -0.689022, -0.003464),(0.487579, -0.631689, -0.003464),(0.404729, -0.692474, -0.003464),(0.312121, -0.738956, -0.003464),(0.311342, -0.737114, -0.004000),(0.404729, -0.692474, -0.003464),(0.311342, -0.737114, -0.004000),(0.403719, -0.690748, -0.004000),(0.405469, -0.693738, -0.002000),(0.312691, -0.740305, -0.002000),(0.312121, -0.738956, -0.003464),(0.405469, -0.693738, -0.002000),(0.312121, -0.738956, -0.003464),(0.404729, -0.692474, -0.003464),(0.405739, -0.694200, -0.000000),(0.312899, -0.740799, -0.000000),(0.312691, -0.740305, -0.002000),(0.405739, -0.694200, -0.000000),(0.312691, -0.740305, -0.002000),(0.405469, -0.693738, -0.002000),(0.405469, -0.693738, 0.002000),(0.312691, -0.740305, 0.002000),(0.312899, -0.740799, -0.000000),(0.405469, -0.693738, 0.002000),(0.312899, -0.740799, -0.000000),(0.405739, -0.694200, -0.000000),(0.404729, -0.692474, 0.003464),(0.312121, -0.738956, 0.003464),(0.312691, -0.740305, 0.002000),(0.404729, -0.692474, 0.003464),(0.312691, -0.740305, 0.002000),(0.405469, -0.693738, 0.002000),(0.403719, -0.690748, 0.004000),(0.311342, -0.737114, 0.004000),(0.312121, -0.738956, 0.003464),(0.403719, -0.690748, 0.004000),(0.312121, -0.738956, 0.003464),(0.404729, -0.692474, 0.003464),(0.402708, -0.689022, 0.003464),(0.310564, -0.735272, 0.003464),(0.311342, -0.737114, 0.004000),(0.402708, -0.689022, 0.003464),(0.311342, -0.737114, 0.004000),(0.403719, -0.690748, 0.004000),(0.401968, -0.687759, 0.002000),(0.309994, -0.733923, 0.002000),(0.310564, -0.735272, 0.003464),(0.401968, -0.687759, 0.002000),(0.310564, -0.735272, 0.003464),(0.402708, -0.689022, 0.003464),(0.401698, -0.687296, 0.000000),(0.309785, -0.733430, 0.000000),(0.309994, -0.733923, 0.002000),(0.401698, -0.687296, 0.000000),(0.309994, -0.733923, 0.002000),(0.401968, -0.687759, 0.002000),(0.401968, -0.687759, -0.002000),(0.309994, -0.733923, -0.002000),(0.309785, -0.733430, 0.000000),(0.401968, -0.687759, -0.002000),(0.309785, -0.733430, 0.000000),(0.401698, -0.687296, 0.000000),(0.402708, -0.689022, -0.003464),(0.310564, -0.735272, -0.003464),(0.309994, -0.733923, -0.002000),(0.402708, -0.689022, -0.003464),(0.309994, -0.733923, -0.002000),(0.401968, -0.687759, -0.002000),(0.403719, -0.690748, -0.004000),(0.311342, -0.737114, -0.004000),(0.310564, -0.735272, -0.003464),(0.403719, -0.690748, -0.004000),(0.310564, -0.735272, -0.003464),(0.402708, -0.689022, -0.003464),(0.312121, -0.738956, -0.003464),(0.213157, -0.773343, -0.003464),(0.212627, -0.771414, -0.004000),(0.312121, -0.738956, -0.003464),(0.212627, -0.771414, -0.004000),(0.311342, -0.737114, -0.004000),(0.312691, -0.740305, -0.002000),(0.213545, -0.774755, -0.002000),(0.213157, -0.773343, -0.003464),(0.312691, -0.740305, -0.002000),(0.213157, -0.773343, -0.003464),(0.312121, -0.738956, -0.003464),(0.312899, -0.740799, -0.000000),(0.213687, -0.775272, -0.000000),(0.213545, -0.774755, -0.002000),(0.312899, -0.740799, -0.000000),(0.213545, -0.774755, -0.002000),(0.312691, -0.740305, -0.002000),(0.312691, -0.740305, 0.002000),(0.213545, -0.774755, 0.002000),(0.213687, -0.775272, -0.000000),(0.312691, -0.740305, 0.002000),(0.213687, -0.775272, -0.000000),(0.312899, -0.740799, -0.000000),(0.312121, -0.738956, 0.003464),(0.213157, -0.773343, 0.003464),(0.213545, -0.774755, 0.002000),(0.312121, -0.738956, 0.003464),(0.213545, -0.774755, 0.002000),(0.312691, -0.740305, 0.002000),(0.311342, -0.737114, 0.004000),(0.212627, -0.771414, 0.004000),(0.213157, -0.773343, 0.003464),(0.311342, -0.737114, 0.004000),(0.213157, -0.773343, 0.003464),(0.312121, -0.738956, 0.003464),(0.310564, -0.735272, 0.003464),(0.212098, -0.769486, 0.003464),(0.212627, -0.771414, 0.004000),(0.310564, -0.735272, 0.003464),(0.212627, -0.771414, 0.004000),(0.311342, -0.737114, 0.004000),(0.309994, -0.733923, 0.002000),(0.211710, -0.768074, 0.002000),(0.212098, -0.769486, 0.003464),(0.309994, -0.733923, 0.002000),(0.212098, -0.769486, 0.003464),(0.310564, -0.735272, 0.003464),(0.309785, -0.733430, 0.000000),(0.211568, -0.767557, 0.000000),(0.211710, -0.768074, 0.002000),(0.309785, -0.733430, 0.000000),(0.211710, -0.768074, 0.002000),(0.309994, -0.733923, 0.002000),(0.309994, -0.733923, -0.002000),(0.211710, -0.768074, -0.002000),(0.211568, -0.767557, 0.000000),(0.309994, -0.733923, -0.002000),(0.211568, -0.767557, 0.000000),(0.309785, -0.733430, 0.000000),(0.310564, -0.735272, -0.003464),(0.212098, -0.769486, -0.003464),(0.211710, -0.768074, -0.002000),(0.310564, -0.735272, -0.003464),(0.211710, -0.768074, -0.002000),(0.309994, -0.733923, -0.002000),(0.311342, -0.737114, -0.004000),(0.212627, -0.771414, -0.004000),(0.212098, -0.769486, -0.003464),(0.311342, -0.737114, -0.004000),(0.212098, -0.769486, -0.003464),(0.310564, -0.735272, -0.003464),(0.213157, -0.773343, -0.003464),(0.108796, -0.794677, -0.003464),(0.108528, -0.792695, -0.004000),(0.213157, -0.773343, -0.003464),(0.108528, -0.792695, -0.004000),(0.212627, -0.771414, -0.004000),(0.213545, -0.774755, -0.002000),(0.108993, -0.796127, -0.002000),(0.108796, -0.794677, -0.003464),(0.213545, -0.774755, -0.002000),(0.108796, -0.794677, -0.003464),(0.213157, -0.773343, -0.003464),(0.213687, -0.775272, -0.000000),(0.109064, -0.796658, -0.000000),(0.108993, -0.796127, -0.002000),(0.213687, -0.775272, -0.000000),(0.108993, -0.796127, -0.002000),(0.213545, -0.774755, -0.002000),(0.213545, -0.774755, 0.002000),(0.108993, -0.796127, 0.002000),(0.109064, -0.796658, -0.000000),(0.213545, -0.774755, 0.002000),(0.109064, -0.796658, -0.000000),(0.213687, -0.775272, -0.000000),(0.213157, -0.773343, 0.003464),(0.108796, -0.794677, 0.003464),(0.108993, -0.796127, 0.002000),(0.213157, -0.773343, 0.003464),(0.108993, -0.796127, 0.002000),(0.213545, -0.774755, 0.002000),(0.212627, -0.771414, 0.004000),(0.108528, -0.792695, 0.004000),(0.108796, -0.794677, 0.003464),(0.212627, -0.771414, 0.004000),(0.108796, -0.794677, 0.003464),(0.213157, -0.773343, 0.003464),(0.212098, -0.769486, 0.003464),(0.108260, -0.790713, 0.003464),(0.108528, -0.792695, 0.004000),(0.212098, -0.769486, 0.003464),(0.108528, -0.792695, 0.004000),(0.212627, -0.771414, 0.004000),(0.211710, -0.768074, 0.002000),(0.108064, -0.789262, 0.002000),(0.108260, -0.790713, 0.003464),(0.211710, -0.768074, 0.002000),(0.108260, -0.790713, 0.003464),(0.212098, -0.769486, 0.003464),(0.211568, -0.767557, 0.000000),(0.107992, -0.788731, 0.000000),(0.108064, -0.789262, 0.002000),(0.211568, -0.767557, 0.000000),(0.108064, -0.789262, 0.002000),(0.211710, -0.768074, 0.002000),(0.211710, -0.768074, -0.002000),(0.108064, -0.789262, -0.002000),(0.107992, -0.788731, 0.000000),(0.211710, -0.768074, -0.002000),(0.107992, -0.788731, 0.000000),(0.211568, -0.767557, 0.000000),(0.212098, -0.769486, -0.003464),(0.108260, -0.790713, -0.003464),(0.108064, -0.789262, -0.002000),(0.212098, -0.769486, -0.003464),(0.108064, -0.789262, -0.002000),(0.211710, -0.768074, -0.002000),(0.212627, -0.771414, -0.004000),(0.108528, -0.792695, -0.004000),(0.108260, -0.790713, -0.003464),(0.212627, -0.771414, -0.004000),(0.108260, -0.790713, -0.003464),(0.212098, -0.769486, -0.003464),(0.108796, -0.794677, -0.003464),(-0.000000, -0.802000, -0.003464),(-0.000000, -0.800000, -0.004000),(0.108796, -0.794677, -0.003464),(-0.000000, -0.800000, -0.004000),(0.108528, -0.792695, -0.004000),(0.108993, -0.796127, -0.002000),(-0.000000, -0.803464, -0.002000),(-0.000000, -0.802000, -0.003464),(0.108993, -0.796127, -0.002000),(-0.000000, -0.802000, -0.003464),(0.108796, -0.794677, -0.003464),(0.109064, -0.796658, -0.000000),(-0.000000, -0.804000, -0.000000),(-0.000000, -0.803464, -0.002000),(0.109064, -0.796658, -0.000000),(-0.000000, -0.803464, -0.002000),(0.108993, -0.796127, -0.002000),(0.108993, -0.796127, 0.002000),(-0.000000, -0.803464, 0.002000),(-0.000000, -0.804000, -0.000000),(0.108993, -0.796127, 0.002000),(-0.000000, -0.804000, -0.000000),(0.109064, -0.796658, -0.000000),(0.108796, -0.794677, 0.003464),(-0.000000, -0.802000, 0.003464),(-0.000000, -0.803464, 0.002000),(0.108796, -0.794677, 0.003464),(-0.000000, -0.803464, 0.002000),(0.108993, -0.796127, 0.002000),(0.108528, -0.792695, 0.004000),(0.000000, -0.800000, 0.004000),(-0.000000, -0.802000, 0.003464),(0.108528, -0.792695, 0.004000),(-0.000000, -0.802000, 0.003464),(0.108796, -0.794677, 0.003464),(0.108260, -0.790713, 0.003464),(0.000000, -0.798000, 0.003464),(0.000000, -0.800000, 0.004000),(0.108260, -0.790713, 0.003464),(0.000000, -0.800000, 0.004000),(0.108528, -0.792695, 0.004000),(0.108064, -0.789262, 0.002000),(0.000000, -0.796536, 0.002000),(0.000000, -0.798000, 0.003464),(0.108064, -0.789262, 0.002000),(0.000000, -0.798000, 0.003464),(0.108260, -0.790713, 0.003464),(0.107992, -0.788731, 0.000000),(0.000000, -0.796000, 0.000000),(0.000000, -0.796536, 0.002000),(0.107992, -0.788731, 0.000000),(0.000000, -0.796536, 0.002000),(0.108064, -0.789262, 0.002000),(0.108064, -0.789262, -0.002000),(0.000000, -0.796536, -0.002000),(0.000000, -0.796000, 0.000000),(0.108064, -0.789262, -0.002000),(0.000000, -0.796000, 0.000000),(0.107992, -0.788731, 0.000000),(0.108260, -0.790713, -0.003464),(0.000000, -0.798000, -0.003464),(0.000000, -0.796536, -0.002000),(0.108260, -0.790713, -0.003464),(0.000000, -0.796536, -0.002000),(0.108064, -0.789262, -0.002000),(0.108528, -0.792695, -0.004000),(-0.000000, -0.800000, -0.004000),(0.000000, -0.798000, -0.003464),(0.108528, -0.792695, -0.004000),(0.000000, -0.798000, -0.003464),(0.108260, -0.790713, -0.003464),(0.000000, -1.002500, -0.004330),(-0.135996, -0.993346, -0.004330),(-0.135661, -0.990868, -0.005000),(0.000000, -1.002500, -0.004330),(-0.135661, -0.990868, -0.005000),(-0.000000, -1.000000, -0.005000),(0.000000, -1.004330, -0.002500),(-0.136241, -0.995159, -0.002500),(-0.135996, -0.993346, -0.004330),(0.000000, -1.004330, -0.002500),(-0.135996, -0.993346, -0.004330),(0.000000, -1.002500, -0.004330),(0.000000, -1.005000, -0.000000),(-0.136331, -0.995823, -0.000000),(-0.136241, -0.995159, -0.002500),(0.000000, -1.005000, -0.000000),(-0.136241, -0.995159, -0.002500),(0.000000, -1.004330, -0.002500),(0.000000, -1.004330, 0.002500),(-0.136241, -0.995159, 0.002500),(-0.136331, -0.995823, -0.000000),(0.000000, -1.004330, 0.002500),(-0.136331, -0.995823, -0.000000),(0.000000, -1.005000, -0.000000),(0.000000, -1.002500, 0.004330),(-0.135996, -0.993346, 0.004330),(-0.136241, -0.995159, 0.002500),(0.000000, -1.002500, 0.004330),(-0.136241, -0.995159, 0.002500),(0.000000, -1.004330, 0.002500),(0.000000, -1.000000, 0.005000),(-0.135661, -0.990868, 0.005000),(-0.135996, -0.993346, 0.004330),(0.000000, -1.000000, 0.005000),(-0.135996, -0.993346, 0.004330),(0.000000, -1.002500, 0.004330),(-0.000000, -0.997500, 0.004330),(-0.135325, -0.988391, 0.004330),(-0.135661, -0.990868, 0.005000),(-0.000000, -0.997500, 0.004330),(-0.135661, -0.990868, 0.005000),(0.000000, -1.000000, 0.005000),(-0.000000, -0.995670, 0.002500),(-0.135080, -0.986577, 0.002500),(-0.135325, -0.988391, 0.004330),(-0.000000, -0.995670, 0.002500),(-0.135325, -0.988391, 0.004330),(-0.000000, -0.997500, 0.004330),(-0.000000, -0.995000, 0.000000),(-0.134990, -0.985913, 0.000000),(-0.135080, -0.986577, 0.002500),(-0.000000, -0.995000, 0.000000),(-0.135080, -0.986577, 0.002500),(-0.000000, -0.995670, 0.002500),(-0.000000, -0.995670, -0.002500),(-0.135080, -0.986577, -0.002500),(-0.134990, -0.985913, 0.000000),(-0.000000, -0.995670, -0.002500),(-0.134990, -0.985913, 0.000000),(-0.000000, -0.995000, 0.000000),(-0.000000, -0.997500, -0.004330),(-0.135325, -0.988391, -0.004330),(-0.135080, -0.986577, -0.002500),(-0.000000, -0.997500, -0.004330),(-0.135080, -0.986577, -0.002500),(-0.000000, -0.995670, -0.002500),(-0.000000, -1.000000, -0.005000),(-0.135661, -0.990868, -0.005000),(-0.135325, -0.988391, -0.004330),(-0.000000, -1.000000, -0.005000),(-0.135325, -0.988391, -0.004330),(-0.000000, -0.997500, -0.004330),(-0.135996, -0.993346, -0.004330),(-0.266446, -0.966679, -0.004330),(-0.265784, -0.964268, -0.005000),(-0.135996, -0.993346, -0.004330),(-0.265784, -0.964268, -0.005000),(-0.135661, -0.990868, -0.005000),(-0.136241, -0.995159, -0.002500),(-0.266931, -0.968443, -0.002500),(-0.266446, -0.966679, -0.004330),(-0.136241, -0.995159, -0.002500),(-0.266446, -0.966679, -0.004330),(-0.135996, -0.993346, -0.004330),(-0.136331, -0.995823, -0.000000),(-0.267108, -0.969089, -0.000000),(-0.266931, -0.968443, -0.002500),(-0.136331, -0.995823, -0.000000),(-0.266931, -0.968443, -0.002500),(-0.136241, -0.995159, -0.002500),(-0.136241, -0.995159, 0.002500),(-0.266931, -0.968443, 0.002500),(-0.267108, -0.969089, -0.000000),(-0.136241, -0.995159, 0.002500),(-0.267108, -0.969089, -0.000000),(-0.136331, -0.995823, -0.000000),(-0.135996, -0.993346, 0.004330),(-0.266446, -0.966679, 0.004330),(-0.266931, -0.968443, 0.002500),(-0.135996, -0.993346, 0.004330),(-0.266931, -0.968443, 0.002500),(-0.136241, -0.995159, 0.002500),(-0.135661, -0.990868, 0.005000),(-0.265784, -0.964268, 0.005000),(-0.266446, -0.966679, 0.004330),(-0.135661, -0.990868, 0.005000),(-0.266446, -0.966679, 0.004330),(-0.135996, -0.993346, 0.004330),(-0.135325, -0.988391, 0.004330),(-0.265122, -0.961857, 0.004330),(-0.265784, -0.964268, 0.005000),(-0.135325, -0.988391, 0.004330),(-0.265784, -0.964268, 0.005000),(-0.135661, -0.990868, 0.005000),(-0.135080, -0.986577, 0.002500),(-0.264637, -0.960092, 0.002500),(-0.265122, -0.961857, 0.004330),(-0.135080, -0.986577, 0.002500),(-0.265122, -0.961857, 0.004330),(-0.135325, -0.988391, 0.004330),(-0.134990, -0.985913, 0.000000),(-0.264460, -0.959446, 0.000000),(-0.264637, -0.960092, 0.002500),(-0.134990, -0.985913, 0.000000),(-0.264637, -0.960092, 0.002500),(-0.135080, -0.986577, 0.002500),(-0.135080, -0.986577, -0.002500),(-0.264637, -0.960092, -0.002500),(-0.264460, -0.959446, 0.000000),(-0.135080, -0.986577, -0.002500),(-0.264460, -0.959446, 0.000000),(-0.134990, -0.985913, 0.000000),(-0.135325, -0.988391, -0.004330),(-0.265122, -0.961857, -0.004330),(-0.264637, -0.960092, -0.002500),(-0.135325, -0.988391, -0.004330),(-0.264637, -0.960092, -0.002500),(-0.135080, -0.986577, -0.002500),(-0.135661, -0.990868, -0.005000),(-0.265784, -0.964268, -0.005000),(-0.265122, -0.961857, -0.004330),(-0.135661, -0.990868, -0.005000),(-0.265122, -0.961857, -0.004330),(-0.135325, -0.988391, -0.004330),(-0.266446, -0.966679, -0.004330),(-0.390151, -0.923695, -0.004330),(-0.389178, -0.921393, -0.005000),(-0.266446, -0.966679, -0.004330),(-0.389178, -0.921393, -0.005000),(-0.265784, -0.964268, -0.005000),(-0.266931, -0.968443, -0.002500),(-0.390863, -0.925381, -0.002500),(-0.390151, -0.923695, -0.004330),(-0.266931, -0.968443, -0.002500),(-0.390151, -0.923695, -0.004330),(-0.266446, -0.966679, -0.004330),(-0.267108, -0.969089, -0.000000),(-0.391124, -0.925998, -0.000000),(-0.390863, -0.925381, -0.002500),(-0.267108, -0.969089, -0.000000),(-0.390863, -0.925381, -0.002500),(-0.266931, -0.968443, -0.002500),(-0.266931, -0.968443, 0.002500),(-0.390863, -0.925381, 0.002500),(-0.391124, -0.925998, -0.000000),(-0.266931, -0.968443, 0.002500),(-0.391124, -0.925998, -0.000000),(-0.267108, -0.969089, -0.000000),(-0.266446, -0.966679, 0.004330),(-0.390151, -0.923695, 0.004330),(-0.390863, -0.925381, 0.002500),(-0.266446, -0.966679, 0.004330),(-0.390863, -0.925381, 0.002500),(-0.266931, -0.968443, 0.002500),(-0.265784, -0.964268, 0.005000),(-0.389178, -0.921393, 0.005000),(-0.390151, -0.923695, 0.004330),(-0.265784, -0.964268, 0.005000),(-0.390151, -0.923695, 0.004330),(-0.266446, -0.966679, 0.004330),(-0.265122, -0.961857, 0.004330),(-0.388205, -0.919090, 0.004330),(-0.389178, -0.921393, 0.005000),(-0.265122, -0.961857, 0.004330),(-0.389178, -0.921393, 0.005000),(-0.265784, -0.964268, 0.005000),(-0.264637, -0.960092, 0.002500),(-0.387492, -0.917404, 0.002500),(-0.388205, -0.919090, 0.004330),(-0.264637, -0.960092, 0.002500),(-0.388205, -0.919090, 0.004330),(-0.265122, -0.961857, 0.004330),(-0.264460, -0.959446, 0.000000),(-0.387232, -0.916787, 0.000000),(-0.387492, -0.917404, 0.002500),(-0.264460, -0.959446, 0.000000),(-0.387492, -0.917404, 0.002500),(-0.264637, -0.960092, 0.002500),(-0.264637, -0.960092, -0.002500),(-0.387492, -0.917404, -0.002500),(-0.387232, -0.916787, 0.000000),(-0.264637, -0.960092, -0.002500),(-0.387232, -0.916787, 0.000000),(-0.264460, -0.959446, 0.000000),(-0.265122, -0.961857, -0.004330),(-0.388205, -0.919090, -0.004330),(-0.387492, -0.917404, -0.002500),(-0.265122, -0.961857, -0.004330),(-0.387492, -0.917404, -0.002500),(-0.264637, -0.960092, -0.002500),(-0.265784, -0.964268, -0.005000),(-0.389178, -0.921393, -0.005000),(-0.388205, -0.919090, -0.004330),(-0.265784, -0.964268, -0.005000),(-0.388205, -0.919090, -0.004330),(-0.265122, -0.961857, -0.004330),(-0.390151, -0.923695, -0.004330),(-0.505911, -0.865593, -0.004330),(-0.504648, -0.863435, -0.005000),(-0.390151, -0.923695, -0.004330),(-0.504648, -0.863435, -0.005000),(-0.389178, -0.921393, -0.005000),(-0.390863, -0.925381, -0.002500),(-0.506836, -0.867172, -0.002500),(-0.505911, -0.865593, -0.004330),(-0.390863, -0.925381, -0.002500),(-0.505911, -0.865593, -0.004330),(-0.390151, -0.923695, -0.004330),(-0.391124, -0.925998, -0.000000),(-0.507174, -0.867750, -0.000000),(-0.506836, -0.867172, -0.002500),(-0.391124, -0.925998, -0.000000),(-0.506836, -0.867172, -0.002500),(-0.390863, -0.925381, -0.002500),(-0.390863, -0.925381, 0.002500),(-0.506836, -0.867172, 0.002500),(-0.507174, -0.867750, -0.000000),(-0.390863, -0.925381, 0.002500),(-0.507174, -0.867750, -0.000000),(-0.391124, -0.925998, -0.000000),(-0.390151, -0.923695, 0.004330),(-0.505911, -0.865593, 0.004330),(-0.506836, -0.867172, 0.002500),(-0.390151, -0.923695, 0.004330),(-0.506836, -0.867172, 0.002500),(-0.390863, -0.925381, 0.002500),(-0.389178, -0.921393, 0.005000),(-0.504648, -0.863435, 0.005000),(-0.505911, -0.865593, 0.004330),(-0.389178, -0.921393, 0.005000),(-0.505911, -0.865593, 0.004330),(-0.390151, -0.923695, 0.004330),(-0.388205, -0.919090, 0.004330),(-0.503385, -0.861278, 0.004330),(-0.504648, -0.863435, 0.005000),(-0.388205, -0.919090, 0.004330),(-0.504648, -0.863435, 0.005000),(-0.389178, -0.921393, 0.005000),(-0.387492, -0.917404, 0.002500),(-0.502460, -0.859698, 0.002500),(-0.503385, -0.861278, 0.004330),(-0.387492, -0.917404, 0.002500),(-0.503385, -0.861278, 0.004330),(-0.388205, -0.919090, 0.004330),(-0.387232, -0.916787, 0.000000),(-0.502122, -0.859120, 0.000000),(-0.502460, -0.859698, 0.002500),(-0.387232, -0.916787, 0.000000),(-0.502460, -0.859698, 0.002500),(-0.387492, -0.917404, 0.002500),(-0.387492, -0.917404, -0.002500),(-0.502460, -0.859698, -0.002500),(-0.502122, -0.859120, 0.000000),(-0.387492, -0.917404, -0.002500),(-0.502122, -0.859120, 0.000000),(-0.387232, -0.916787, 0.000000),(-0.388205, -0.919090, -0.004330),(-0.503385, -0.861278, -0.004330),(-0.502460, -0.859698, -0.002500),(-0.388205, -0.919090, -0.004330),(-0.502460, -0.859698, -0.002500),(-0.387492, -0.917404, -0.002500),(-0.389178, -0.921393, -0.005000),(-0.504648, -0.863435, -0.005000),(-0.503385, -0.861278, -0.004330),(-0.389178, -0.921393, -0.005000),(-0.503385, -0.861278, -0.004330),(-0.388205, -0.919090, -0.004330),(-0.505911, -0.865593, -0.004330),(-0.612531, -0.793567, -0.004330),(-0.611002, -0.791589, -0.005000),(-0.505911, -0.865593, -0.004330),(-0.611002, -0.791589, -0.005000),(-0.504648, -0.863435, -0.005000),(-0.506836, -0.867172, -0.002500),(-0.613650, -0.795015, -0.002500),(-0.612531, -0.793567, -0.004330),(-0.506836, -0.867172, -0.002500),(-0.612531, -0.793567, -0.004330),(-0.505911, -0.865593, -0.004330),(-0.507174, -0.867750, -0.000000),(-0.614060, -0.795545, -0.000000),(-0.613650, -0.795015, -0.002500),(-0.507174, -0.867750, -0.000000),(-0.613650, -0.795015, -0.002500),(-0.506836, -0.867172, -0.002500),(-0.506836, -0.867172, 0.002500),(-0.613650, -0.795015, 0.002500),(-0.614060, -0.795545, -0.000000),(-0.506836, -0.867172, 0.002500),(-0.614060, -0.795545, -0.000000),(-0.507174, -0.867750, -0.000000),(-0.505911, -0.865593, 0.004330),(-0.612531, -0.793567, 0.004330),(-0.613650, -0.795015, 0.002500),(-0.505911, -0.865593, 0.004330),(-0.613650, -0.795015, 0.002500),(-0.506836, -0.867172, 0.002500),(-0.504648, -0.863435, 0.005000),(-0.611002, -0.791589, 0.005000),(-0.612531, -0.793567, 0.004330),(-0.504648, -0.863435, 0.005000),(-0.612531, -0.793567, 0.004330),(-0.505911, -0.865593, 0.004330),(-0.503385, -0.861278, 0.004330),(-0.609473, -0.789611, 0.004330),(-0.611002, -0.791589, 0.005000),(-0.503385, -0.861278, 0.004330),(-0.611002, -0.791589, 0.005000),(-0.504648, -0.863435, 0.005000),(-0.502460, -0.859698, 0.002500),(-0.608354, -0.788163, 0.002500),(-0.609473, -0.789611, 0.004330),(-0.502460, -0.859698, 0.002500),(-0.609473, -0.789611, 0.004330),(-0.503385, -0.861278, 0.004330),(-0.502122, -0.859120, 0.000000),(-0.607945, -0.787633, 0.000000),(-0.608354, -0.788163, 0.002500),(-0.502122, -0.859120, 0.000000),(-0.608354, -0.788163, 0.002500),(-0.502460, -0.859698, 0.002500),(-0.502460, -0.859698, -0.002500),(-0.608354, -0.788163, -0.002500),(-0.607945, -0.787633, 0.000000),(-0.502460, -0.859698, -0.002500),(-0.607945, -0.787633, 0.000000),(-0.502122, -0.859120, 0.000000),(-0.503385, -0.861278, -0.004330),(-0.609473, -0.789611, -0.004330),(-0.608354, -0.788163, -0.002500),(-0.503385, -0.861278, -0.004330),(-0.608354, -0.788163, -0.002500),(-0.502460, -0.859698, -0.002500),(-0.504648, -0.863435, -0.005000),(-0.611002, -0.791589, -0.005000),(-0.609473, -0.789611, -0.004330),(-0.504648, -0.863435, -0.005000),(-0.609473, -0.789611, -0.004330),(-0.503385, -0.861278, -0.004330),(-0.612531, -0.793567, -0.004330),(-0.708815, -0.708815, -0.004330),(-0.707047, -0.707047, -0.005000),(-0.612531, -0.793567, -0.004330),(-0.707047, -0.707047, -0.005000),(-0.611002, -0.791589, -0.005000),(-0.613650, -0.795015, -0.002500),(-0.710109, -0.710109, -0.002500),(-0.708815, -0.708815, -0.004330),(-0.613650, -0.795015, -0.002500),(-0.708815, -0.708815, -0.004330),(-0.612531, -0.793567, -0.004330),(-0.614060, -0.795545, -0.000000),(-0.710582, -0.710582, -0.000000),(-0.710109, -0.710109, -0.002500),(-0.614060, -0.795545, -0.000000),(-0.710109, -0.710109, -0.002500),(-0.613650, -0.795015, -0.002500),(-0.613650, -0.795015, 0.002500),(-0.710109, -0.710109, 0.002500),(-0.710582, -0.710582, -0.000000),(-0.613650, -0.795015, 0.002500),(-0.710582, -0.710582, -0.000000),(-0.614060, -0.795545, -0.000000),(-0.612531, -0.793567, 0.004330),(-0.708815, -0.708815, 0.004330),(-0.710109, -0.710109, 0.002500),(-0.612531, -0.793567, 0.004330),(-0.710109, -0.710109, 0.002500),(-0.613650, -0.795015, 0.002500),(-0.611002, -0.791589, 0.005000),(-0.707047, -0.707047, 0.005000),(-0.708815, -0.708815, 0.004330),(-0.611002, -0.791589, 0.005000),(-0.708815, -0.708815, 0.004330),(-0.612531, -0.793567, 0.004330),(-0.609473, -0.789611, 0.004330),(-0.705279, -0.705279, 0.004330),(-0.707047, -0.707047, 0.005000),(-0.609473, -0.789611, 0.004330),(-0.707047, -0.707047, 0.005000),(-0.611002, -0.791589, 0.005000),(-0.608354, -0.788163, 0.002500),(-0.703985, -0.703985, 0.002500),(-0.705279, -0.705279, 0.004330),(-0.608354, -0.788163, 0.002500),(-0.705279, -0.705279, 0.004330),(-0.609473, -0.789611, 0.004330),(-0.607945, -0.787633, 0.000000),(-0.703511, -0.703511, 0.000000),(-0.703985, -0.703985, 0.002500),(-0.607945, -0.787633, 0.000000),(-0.703985, -0.703985, 0.002500),(-0.608354, -0.788163, 0.002500),(-0.608354, -0.788163, -0.002500),(-0.703985, -0.703985, -0.002500),(-0.703511, -0.703511, 0.000000),(-0.608354, -0.788163, -0.002500),(-0.703511, -0.703511, 0.000000),(-0.607945, -0.787633, 0.000000),(-0.609473, -0.789611, -0.004330),(-0.705279, -0.705279, -0.004330),(-0.703985, -0.703985, -0.002500),(-0.609473, -0.789611, -0.004330),(-0.703985, -0.703985, -0.002500),(-0.608354, -0.788163, -0.002500),(-0.611002, -0.791589, -0.005000),(-0.707047, -0.707047, -0.005000),(-0.705279, -0.705279, -0.004330),(-0.611002, -0.791589, -0.005000),(-0.705279, -0.705279, -0.004330),(-0.609473, -0.789611, -0.004330),(-0.708815, -0.708815, -0.004330),(-0.793567, -0.612531, -0.004330),(-0.791589, -0.611002, -0.005000),(-0.708815, -0.708815, -0.004330),(-0.791589, -0.611002, -0.005000),(-0.707047, -0.707047, -0.005000),(-0.710109, -0.710109, -0.002500),(-0.795015, -0.613650, -0.002500),(-0.793567, -0.612531, -0.004330),(-0.710109, -0.710109, -0.002500),(-0.793567, -0.612531, -0.004330),(-0.708815, -0.708815, -0.004330),(-0.710582, -0.710582, -0.000000),(-0.795545, -0.614060, -0.000000),(-0.795015, -0.613650, -0.002500),(-0.710582, -0.710582, -0.000000),(-0.795015, -0.613650, -0.002500),(-0.710109, -0.710109, -0.002500),(-0.710109, -0.710109, 0.002500),(-0.795015, -0.613650, 0.002500),(-0.795545, -0.614060, -0.000000),(-0.710109, -0.710109, 0.002500),(-0.795545, -0.614060, -0.000000),(-0.710582, -0.710582, -0.000000),(-0.708815, -0.708815, 0.004330),(-0.793567, -0.612531, 0.004330),(-0.795015, -0.613650, 0.002500),(-0.708815, -0.708815, 0.004330),(-0.795015, -0.613650, 0.002500),(-0.710109, -0.710109, 0.002500),(-0.707047, -0.707047, 0.005000),(-0.791589, -0.611002, 0.005000),(-0.793567, -0.612531, 0.004330),(-0.707047, -0.707047, 0.005000),(-0.793567, -0.612531, 0.004330),(-0.708815, -0.708815, 0.004330),(-0.705279, -0.705279, 0.004330),(-0.789611, -0.609474, 0.004330),(-0.791589, -0.611002, 0.005000),(-0.705279, -0.705279, 0.004330),(-0.791589, -0.611002, 0.005000),(-0.707047, -0.707047, 0.005000),(-0.703985, -0.703985, 0.002500),(-0.788163, -0.608354, 0.002500),(-0.789611, -0.609474, 0.004330),(-0.703985, -0.703985, 0.002500),(-0.789611, -0.609474, 0.004330),(-0.705279, -0.705279, 0.004330),(-0.703511, -0.703511, 0.000000),(-0.787633, -0.607945, 0.000000),(-0.788163, -0.608354, 0.002500),(-0.703511, -0.703511, 0.000000),(-0.788163, -0.608354, 0.002500),(-0.703985, -0.703985, 0.002500),(-0.703985, -0.703985, -0.002500),(-0.788163, -0.608354, -0.002500),(-0.787633, -0.607945, 0.000000),(-0.703985, -0.703985, -0.002500),(-0.787633, -0.607945, 0.000000),(-0.703511, -0.703511, 0.000000),(-0.705279, -0.705279, -0.004330),(-0.789611, -0.609474, -0.004330),(-0.788163, -0.608354, -0.002500),(-0.705279, -0.705279, -0.004330),(-0.788163, -0.608354, -0.002500),(-0.703985, -0.703985, -0.002500),(-0.707047, -0.707047, -0.005000),(-0.791589, -0.611002, -0.005000),(-0.789611, -0.609474, -0.004330),(-0.707047, -0.707047, -0.005000),(-0.789611, -0.609474, -0.004330),(-0.705279, -0.705279, -0.004330),(-0.793567, -0.612531, -0.004330),(-0.865593, -0.505911, -0.004330),(-0.863435, -0.504648, -0.005000),(-0.793567, -0.612531, -0.004330),(-0.863435, -0.504648, -0.005000),(-0.791589, -0.611002, -0.005000),(-0.795015, -0.613650, -0.002500),(-0.867172, -0.506836, -0.002500),(-0.865593, -0.505911, -0.004330),(-0.795015, -0.613650, -0.002500),(-0.865593, -0.505911, -0.004330),(-0.793567, -0.612531, -0.004330),(-0.795545, -0.614060, -0.000000),(-0.867750, -0.507174, -0.000000),(-0.867172, -0.506836, -0.002500),(-0.795545, -0.614060, -0.000000),(-0.867172, -0.506836, -0.002500),(-0.795015, -0.613650, -0.002500),(-0.795015, -0.613650, 0.002500),(-0.867172, -0.506836, 0.002500),(-0.867750, -0.507174, -0.000000),(-0.795015, -0.613650, 0.002500),(-0.867750, -0.507174, -0.000000),(-0.795545, -0.614060, -0.000000),(-0.793567, -0.612531, 0.004330),(-0.865593, -0.505911, 0.004330),(-0.867172, -0.506836, 0.002500),(-0.793567, -0.612531, 0.004330),(-0.867172, -0.506836, 0.002500),(-0.795015, -0.613650, 0.002500),(-0.791589, -0.611002, 0.005000),(-0.863435, -0.504648, 0.005000),(-0.865593, -0.505911, 0.004330),(-0.791589, -0.611002, 0.005000),(-0.865593, -0.505911, 0.004330),(-0.793567, -0.612531, 0.004330),(-0.789611, -0.609474, 0.004330),(-0.861278, -0.503385, 0.004330),(-0.863435, -0.504648, 0.005000),(-0.789611, -0.609474, 0.004330),(-0.863435, -0.504648, 0.005000),(-0.791589, -0.611002, 0.005000),(-0.788163, -0.608354, 0.002500),(-0.859698, -0.502460, 0.002500),(-0.861278, -0.503385, 0.004330),(-0.788163, -0.608354, 0.002500),(-0.861278, -0.503385, 0.004330),(-0.789611, -0.609474, 0.004330),(-0.787633, -0.607945, 0.000000),(-0.859120, -0.502122, 0.000000),(-0.859698, -0.502460, 0.002500),(-0.787633, -0.607945, 0.000000),(-0.859698, -0.502460, 0.002500),(-0.788163, -0.608354, 0.002500),(-0.788163, -0.608354, -0.002500),(-0.859698, -0.502460, -0.002500),(-0.859120, -0.502122, 0.000000),(-0.788163, -0.608354, -0.002500),(-0.859120, -0.502122, 0.000000),(-0.787633, -0.607945, 0.000000),(-0.789611, -0.609474, -0.004330),(-0.861278, -0.503385, -0.004330),(-0.859698, -0.502460, -0.002500),(-0.789611, -0.609474, -0.004330),(-0.859698, -0.502460, -0.002500),(-0.788163, -0.608354, -0.002500),(-0.791589, -0.611002, -0.005000),(-0.863435, -0.504648, -0.005000),(-0.861278, -0.503385, -0.004330),(-0.791589, -0.611002, -0.005000),(-0.861278, -0.503385, -0.004330),(-0.789611, -0.609474, -0.004330),(-0.865593, -0.505911, -0.004330),(-0.923695, -0.390151, -0.004330),(-0.921392, -0.389178, -0.005000),(-0.865593, -0.505911, -0.004330),(-0.921392, -0.389178, -0.005000),(-0.863435, -0.504648, -0.005000),(-0.867172, -0.506836, -0.002500),(-0.925381, -0.390863, -0.002500),(-0.923695, -0.390151, -0.004330),(-0.867172, -0.506836, -0.002500),(-0.923695, -0.390151, -0.004330),(-0.865593, -0.505911, -0.004330),(-0.867750, -0.507174, -0.000000),(-0.925998, -0.391124, -0.000000),(-0.925381, -0.390863, -0.002500),(-0.867750, -0.507174, -0.000000),(-0.925381, -0.390863, -0.002500),(-0.867172, -0.506836, -0.002500),(-0.867172, -0.506836, 0.002500),(-0.925381, -0.390863, 0.002500),(-0.925998, -0.391124, -0.000000),(-0.867172, -0.506836, 0.002500),(-0.925998, -0.391124, -0.000000),(-0.867750, -0.507174, -0.000000),(-0.865593, -0.505911, 0.004330),(-0.923695, -0.390151, 0.004330),(-0.925381, -0.390863, 0.002500),(-0.865593, -0.505911, 0.004330),(-0.925381, -0.390863, 0.002500),(-0.867172, -0.506836, 0.002500),(-0.863435, -0.504648, 0.005000),(-0.921392, -0.389178, 0.005000),(-0.923695, -0.390151, 0.004330),(-0.863435, -0.504648, 0.005000),(-0.923695, -0.390151, 0.004330),(-0.865593, -0.505911, 0.004330),(-0.861278, -0.503385, 0.004330),(-0.919090, -0.388205, 0.004330),(-0.921392, -0.389178, 0.005000),(-0.861278, -0.503385, 0.004330),(-0.921392, -0.389178, 0.005000),(-0.863435, -0.504648, 0.005000),(-0.859698, -0.502460, 0.002500),(-0.917404, -0.387492, 0.002500),(-0.919090, -0.388205, 0.004330),(-0.859698, -0.502460, 0.002500),(-0.919090, -0.388205, 0.004330),(-0.861278, -0.503385, 0.004330),(-0.859120, -0.502122, 0.000000),(-0.916787, -0.387232, 0.000000),(-0.917404, -0.387492, 0.002500),(-0.859120, -0.502122, 0.000000),(-0.917404, -0.387492, 0.002500),(-0.859698, -0.502460, 0.002500),(-0.859698, -0.502460, -0.002500),(-0.917404, -0.387492, -0.002500),(-0.916787, -0.387232, 0.000000),(-0.859698, -0.502460, -0.002500),(-0.916787, -0.387232, 0.000000),(-0.859120, -0.502122, 0.000000),(-0.861278, -0.503385, -0.004330),(-0.919090, -0.388205, -0.004330),(-0.917404, -0.387492, -0.002500),(-0.861278, -0.503385, -0.004330),(-0.917404, -0.387492, -0.002500),(-0.859698, -0.502460, -0.002500),(-0.863435, -0.504648, -0.005000),(-0.921392, -0.389178, -0.005000),(-0.919090, -0.388205, -0.004330),(-0.863435, -0.504648, -0.005000),(-0.919090, -0.388205, -0.004330),(-0.861278, -0.503385, -0.004330),(-0.923695, -0.390151, -0.004330),(-0.966679, -0.266446, -0.004330),(-0.964268, -0.265784, -0.005000),(-0.923695, -0.390151, -0.004330),(-0.964268, -0.265784, -0.005000),(-0.921392, -0.389178, -0.005000),(-0.925381, -0.390863, -0.002500),(-0.968443, -0.266931, -0.002500),(-0.966679, -0.266446, -0.004330),(-0.925381, -0.390863, -0.002500),(-0.966679, -0.266446, -0.004330),(-0.923695, -0.390151, -0.004330),(-0.925998, -0.391124, -0.000000),(-0.969089, -0.267108, -0.000000),(-0.968443, -0.266931, -0.002500),(-0.925998, -0.391124, -0.000000),(-0.968443, -0.266931, -0.002500),(-0.925381, -0.390863, -0.002500),(-0.925381, -0.390863, 0.002500),(-0.968443, -0.266931, 0.002500),(-0.969089, -0.267108, -0.000000),(-0.925381, -0.390863, 0.002500),(-0.969089, -0.267108, -0.000000),(-0.925998, -0.391124, -0.000000),(-0.923695, -0.390151, 0.004330),(-0.966679, -0.266446, 0.004330),(-0.968443, -0.266931, 0.002500),(-0.923695, -0.390151, 0.004330),(-0.968443, -0.266931, 0.002500),(-0.925381, -0.390863, 0.002500),(-0.921392, -0.389178, 0.005000),(-0.964268, -0.265784, 0.005000),(-0.966679, -0.266446, 0.004330),(-0.921392, -0.389178, 0.005000),(-0.966679, -0.266446, 0.004330),(-0.923695, -0.390151, 0.004330),(-0.919090, -0.388205, 0.004330),(-0.961857, -0.265122, 0.004330),(-0.964268, -0.265784, 0.005000),(-0.919090, -0.388205, 0.004330),(-0.964268, -0.265784, 0.005000),(-0.921392, -0.389178, 0.005000),(-0.917404, -0.387492, 0.002500),(-0.960092, -0.264637, 0.002500),(-0.961857, -0.265122, 0.004330),(-0.917404, -0.387492, 0.002500),(-0.961857, -0.265122, 0.004330),(-0.919090, -0.388205, 0.004330),(-0.916787, -0.387232, 0.000000),(-0.959446, -0.264460, 0.000000),(-0.960092, -0.264637, 0.002500),(-0.916787, -0.387232, 0.000000),(-0.960092, -0.264637, 0.002500),(-0.917404, -0.387492, 0.002500),(-0.917404, -0.387492, -0.002500),(-0.960092, -0.264637, -0.002500),(-0.959446, -0.264460, 0.000000),(-0.917404, -0.387492, -0.002500),(-0.959446, -0.264460, 0.000000),(-0.916787, -0.387232, 0.000000),(-0.919090, -0.388205, -0.004330),(-0.961857, -0.265122, -0.004330),(-0.960092, -0.264637, -0.002500),(-0.919090, -0.388205, -0.004330),(-0.960092, -0.264637, -0.002500),(-0.917404, -0.387492, -0.002500),(-0.921392, -0.389178, -0.005000),(-0.964268, -0.265784, -0.005000),(-0.961857, -0.265122, -0.004330),(-0.921392, -0.389178, -0.005000),(-0.961857, -0.265122, -0.004330),(-0.919090, -0.388205, -0.004330),(-0.966679, -0.266446, -0.004330),(-0.993345, -0.135996, -0.004330),(-0.990868, -0.135661, -0.005000),(-0.966679, -0.266446, -0.004330),(-0.990868, -0.135661, -0.005000),(-0.964268, -0.265784, -0.005000),(-0.968443, -0.266931, -0.002500),(-0.995159, -0.136241, -0.002500),(-0.993345, -0.135996, -0.004330),(-0.968443, -0.266931, -0.002500),(-0.993345, -0.135996, -0.004330),(-0.966679, -0.266446, -0.004330),(-0.969089, -0.267108, -0.000000),(-0.995823, -0.136331, -0.000000),(-0.995159, -0.136241, -0.002500),(-0.969089, -0.267108, -0.000000),(-0.995159, -0.136241, -0.002500),(-0.968443, -0.266931, -0.002500),(-0.968443, -0.266931, 0.002500),(-0.995159, -0.136241, 0.002500),(-0.995823, -0.136331, -0.000000),(-0.968443, -0.266931, 0.002500),(-0.995823, -0.136331, -0.000000),(-0.969089, -0.267108, -0.000000),(-0.966679, -0.266446, 0.004330),(-0.993345, -0.135996, 0.004330),(-0.995159, -0.136241, 0.002500),(-0.966679, -0.266446, 0.004330),(-0.995159, -0.136241, 0.002500),(-0.968443, -0.266931, 0.002500),(-0.964268, -0.265784, 0.005000),(-0.990868, -0.135661, 0.005000),(-0.993345, -0.135996, 0.004330),(-0.964268, -0.265784, 0.005000),(-0.993345, -0.135996, 0.004330),(-0.966679, -0.266446, 0.004330),(-0.961857, -0.265122, 0.004330),(-0.988391, -0.135325, 0.004330),(-0.990868, -0.135661, 0.005000),(-0.961857, -0.265122, 0.004330),(-0.990868, -0.135661, 0.005000),(-0.964268, -0.265784, 0.005000),(-0.960092, -0.264637, 0.002500),(-0.986577, -0.135080, 0.002500),(-0.988391, -0.135325, 0.004330),(-0.960092, -0.264637, 0.002500),(-0.988391, -0.135325, 0.004330),(-0.961857, -0.265122, 0.004330),(-0.959446, -0.264460, 0.000000),(-0.985913, -0.134990, 0.000000),(-0.986577, -0.135080, 0.002500),(-0.959446, -0.264460, 0.000000),(-0.986577, -0.135080, 0.002500),(-0.960092, -0.264637, 0.002500),(-0.960092, -0.264637, -0.002500),(-0.986577, -0.135080, -0.002500),(-0.985913, -0.134990, 0.000000),(-0.960092, -0.264637, -0.002500),(-0.985913, -0.134990, 0.000000),(-0.959446, -0.264460, 0.000000),(-0.961857, -0.265122, -0.004330),(-0.988391, -0.135325, -0.004330),(-0.986577, -0.135080, -0.002500),(-0.961857, -0.265122, -0.004330),(-0.986577, -0.135080, -0.002500),(-0.960092, -0.264637, -0.002500),(-0.964268, -0.265784, -0.005000),(-0.990868, -0.135661, -0.005000),(-0.988391, -0.135325, -0.004330),(-0.964268, -0.265784, -0.005000),(-0.988391, -0.135325, -0.004330),(-0.961857, -0.265122, -0.004330),(-0.993345, -0.135996, -0.004330),(-1.002500, -0.000000, -0.004330),(-1.000000, -0.000000, -0.005000),(-0.993345, -0.135996, -0.004330),(-1.000000, -0.000000, -0.005000),(-0.990868, -0.135661, -0.005000),(-0.995159, -0.136241, -0.002500),(-1.004330, -0.000000, -0.002500),(-1.002500, -0.000000, -0.004330),(-0.995159, -0.136241, -0.002500),(-1.002500, -0.000000, -0.004330),(-0.993345, -0.135996, -0.004330),(-0.995823, -0.136331, -0.000000),(-1.005000, -0.000000, -0.000000),(-1.004330, -0.000000, -0.002500),(-0.995823, -0.136331, -0.000000),(-1.004330, -0.000000, -0.002500),(-0.995159, -0.136241, -0.002500),(-0.995159, -0.136241, 0.002500),(-1.004330, -0.000000, 0.002500),(-1.005000, -0.000000, -0.000000),(-0.995159, -0.136241, 0.002500),(-1.005000, -0.000000, -0.000000),(-0.995823, -0.136331, -0.000000),(-0.993345, -0.135996, 0.004330),(-1.002500, -0.000000, 0.004330),(-1.004330, -0.000000, 0.002500),(-0.993345, -0.135996, 0.004330),(-1.004330, -0.000000, 0.002500),(-0.995159, -0.136241, 0.002500),(-0.990868, -0.135661, 0.005000),(-1.000000, 0.000000, 0.005000),(-1.002500, -0.000000, 0.004330),(-0.990868, -0.135661, 0.005000),(-1.002500, -0.000000, 0.004330),(-0.993345, -0.135996, 0.004330),(-0.988391, -0.135325, 0.004330),(-0.997500, 0.000000, 0.004330),(-1.000000, 0.000000, 0.005000),(-0.988391, -0.135325, 0.004330),(-1.000000, 0.000000, 0.005000),(-0.990868, -0.135661, 0.005000),(-0.986577, -0.135080, 0.002500),(-0.995670, 0.000000, 0.002500),(-0.997500, 0.000000, 0.004330),(-0.986577, -0.135080, 0.002500),(-0.997500, 0.000000, 0.004330),(-0.988391, -0.135325, 0.004330),(-0.985913, -0.134990, 0.000000),(-0.995000, 0.000000, 0.000000),(-0.995670, 0.000000, 0.002500),(-0.985913, -0.134990, 0.000000),(-0.995670, 0.000000, 0.002500),(-0.986577, -0.135080, 0.002500),(-0.986577, -0.135080, -0.002500),(-0.995670, 0.000000, -0.002500),(-0.995000, 0.000000, 0.000000),(-0.986577, -0.135080, -0.002500),(-0.995000, 0.000000, 0.000000),(-0.985913, -0.134990, 0.000000),(-0.988391, -0.135325, -0.004330),(-0.997500, 0.000000, -0.004330),(-0.995670, 0.000000, -0.002500),(-0.988391, -0.135325, -0.004330),(-0.995670, 0.000000, -0.002500),(-0.986577, -0.135080, -0.002500),(-0.990868, -0.135661, -0.005000),(-1.000000, -0.000000, -0.005000),(-0.997500, 0.000000, -0.004330),(-0.990868, -0.135661, -0.005000),(-0.997500, 0.000000, -0.004330),(-0.988391, -0.135325, -0.004330),(-1.002500, -0.000000, -0.004330),(-0.993346, 0.135996, -0.004330),(-0.990868, 0.135661, -0.005000),(-1.002500, -0.000000, -0.004330),(-0.990868, 0.135661, -0.005000),(-1.000000, -0.000000, -0.005000),(-1.004330, -0.000000, -0.002500),(-0.995159, 0.136241, -0.002500),(-0.993346, 0.135996, -0.004330),(-1.004330, -0.000000, -0.002500),(-0.993346, 0.135996, -0.004330),(-1.002500, -0.000000, -0.004330),(-1.005000, -0.000000, -0.000000),(-0.995823, 0.136331, -0.000000),(-0.995159, 0.136241, -0.002500),(-1.005000, -0.000000, -0.000000),(-0.995159, 0.136241, -0.002500),(-1.004330, -0.000000, -0.002500),(-1.004330, -0.000000, 0.002500),(-0.995159, 0.136241, 0.002500),(-0.995823, 0.136331, -0.000000),(-1.004330, -0.000000, 0.002500),(-0.995823, 0.136331, -0.000000),(-1.005000, -0.000000, -0.000000),(-1.002500, -0.000000, 0.004330),(-0.993346, 0.135996, 0.004330),(-0.995159, 0.136241, 0.002500),(-1.002500, -0.000000, 0.004330),(-0.995159, 0.136241, 0.002500),(-1.004330, -0.000000, 0.002500),(-1.000000, 0.000000, 0.005000),(-0.990868, 0.135661, 0.005000),(-0.993346, 0.135996, 0.004330),(-1.000000, 0.000000, 0.005000),(-0.993346, 0.135996, 0.004330),(-1.002500, -0.000000, 0.004330),(-0.997500, 0.000000, 0.004330),(-0.988391, 0.135325, 0.004330),(-0.990868, 0.135661, 0.005000),(-0.997500, 0.000000, 0.004330),(-0.990868, 0.135661, 0.005000),(-1.000000, 0.000000, 0.005000),(-0.995670, 0.000000, 0.002500),(-0.986577, 0.135080, 0.002500),(-0.988391, 0.135325, 0.004330),(-0.995670, 0.000000, 0.002500),(-0.988391, 0.135325, 0.004330),(-0.997500, 0.000000, 0.004330),(-0.995000, 0.000000, 0.000000),(-0.985913, 0.134990, 0.000000),(-0.986577, 0.135080, 0.002500),(-0.995000, 0.000000, 0.000000),(-0.986577, 0.135080, 0.002500),(-0.995670, 0.000000, 0.002500),(-0.995670, 0.000000, -0.002500),(-0.986577, 0.135080, -0.002500),(-0.985913, 0.134990, 0.000000),(-0.995670, 0.000000, -0.002500),(-0.985913, 0.134990, 0.000000),(-0.995000, 0.000000, 0.000000),(-0.997500, 0.000000, -0.004330),(-0.988391, 0.135325, -0.004330),(-0.986577, 0.135080, -0.002500),(-0.997500, 0.000000, -0.004330),(-0.986577, 0.135080, -0.002500),(-0.995670, 0.000000, -0.002500),(-1.000000, -0.000000, -0.005000),(-0.990868, 0.135661, -0.005000),(-0.988391, 0.135325, -0.004330),(-1.000000, -0.000000, -0.005000),(-0.988391, 0.135325, -0.004330),(-0.997500, 0.000000, -0.004330),(-0.993346, 0.135996, -0.004330),(-0.966679, 0.266446, -0.004330),(-0.964268, 0.265784, -0.005000),(-0.993346, 0.135996, -0.004330),(-0.964268, 0.265784, -0.005000),(-0.990868, 0.135661, -0.005000),(-0.995159, 0.136241, -0.002500),(-0.968443, 0.266931, -0.002500),(-0.966679, 0.266446, -0.004330),(-0.995159, 0.136241, -0.002500),(-0.966679, 0.266446, -0.004330),(-0.993346, 0.135996, -0.004330),(-0.995823, 0.136331, -0.000000),(-0.969089, 0.267108, -0.000000),(-0.968443, 0.266931, -0.002500),(-0.995823, 0.136331, -0.000000),(-0.968443, 0.266931, -0.002500),(-0.995159, 0.136241, -0.002500),(-0.995159, 0.136241, 0.002500),(-0.968443, 0.266931, 0.002500),(-0.969089, 0.267108, -0.000000),(-0.995159, 0.136241, 0.002500),(-0.969089, 0.267108, -0.000000),(-0.995823, 0.136331, -0.000000),(-0.993346, 0.135996, 0.004330),(-0.966679, 0.266446, 0.004330),(-0.968443, 0.266931, 0.002500),(-0.993346, 0.135996, 0.004330),(-0.968443, 0.266931, 0.002500),(-0.995159, 0.136241, 0.002500),(-0.990868, 0.135661, 0.005000),(-0.964268, 0.265784, 0.005000),(-0.966679, 0.266446, 0.004330),(-0.990868, 0.135661, 0.005000),(-0.966679, 0.266446, 0.004330),(-0.993346, 0.135996, 0.004330),(-0.988391, 0.135325, 0.004330),(-0.961857, 0.265122, 0.004330),(-0.964268, 0.265784, 0.005000),(-0.988391, 0.135325, 0.004330),(-0.964268, 0.265784, 0.005000),(-0.990868, 0.135661, 0.005000),(-0.986577, 0.135080, 0.002500),(-0.960092, 0.264637, 0.002500),(-0.961857, 0.265122, 0.004330),(-0.986577, 0.135080, 0.002500),(-0.961857, 0.265122, 0.004330),(-0.988391, 0.135325, 0.004330),(-0.985913, 0.134990, 0.000000),(-0.959446, 0.264460, 0.000000),(-0.960092, 0.264637, 0.002500),(-0.985913, 0.134990, 0.000000),(-0.960092, 0.264637, 0.002500),(-0.986577, 0.135080, 0.002500),(-0.986577, 0.135080, -0.002500),(-0.960092, 0.264637, -0.002500),(-0.959446, 0.264460, 0.000000),(-0.986577, 0.135080, -0.002500),(-0.959446, 0.264460, 0.000000),(-0.985913, 0.134990, 0.000000),(-0.988391, 0.135325, -0.004330),(-0.961857, 0.265122, -0.004330),(-0.960092, 0.264637, -0.002500),(-0.988391, 0.135325, -0.004330),(-0.960092, 0.264637, -0.002500),(-0.986577, 0.135080, -0.002500),(-0.990868, 0.135661, -0.005000),(-0.964268, 0.265784, -0.005000),(-0.961857, 0.265122, -0.004330),(-0.990868, 0.135661, -0.005000),(-0.961857, 0.265122, -0.004330),(-0.988391, 0.135325, -0.004330),(-0.966679, 0.266446, -0.004330),(-0.923695, 0.390151, -0.004330),(-0.921393, 0.389178, -0.005000),(-0.966679, 0.266446, -0.004330),(-0.921393, 0.389178, -0.005000),(-0.964268, 0.265784, -0.005000),(-0.968443, 0.266931, -0.002500),(-0.925381, 0.390863, -0.002500),(-0.923695, 0.390151, -0.004330),(-0.968443, 0.266931, -0.002500),(-0.923695, 0.390151, -0.004330),(-0.966679, 0.266446, -0.004330),(-0.969089, 0.267108, -0.000000),(-0.925998, 0.391124, -0.000000),(-0.925381, 0.390863, -0.002500),(-0.969089, 0.267108, -0.000000),(-0.925381, 0.390863, -0.002500),(-0.968443, 0.266931, -0.002500),(-0.968443, 0.266931, 0.002500),(-0.925381, 0.390863, 0.002500),(-0.925998, 0.391124, -0.000000),(-0.968443, 0.266931, 0.002500),(-0.925998, 0.391124, -0.000000),(-0.969089, 0.267108, -0.000000),(-0.966679, 0.266446, 0.004330),(-0.923695, 0.390151, 0.004330),(-0.925381, 0.390863, 0.002500),(-0.966679, 0.266446, 0.004330),(-0.925381, 0.390863, 0.002500),(-0.968443, 0.266931, 0.002500),(-0.964268, 0.265784, 0.005000),(-0.921393, 0.389178, 0.005000),(-0.923695, 0.390151, 0.004330),(-0.964268, 0.265784, 0.005000),(-0.923695, 0.390151, 0.004330),(-0.966679, 0.266446, 0.004330),(-0.961857, 0.265122, 0.004330),(-0.919090, 0.388205, 0.004330),(-0.921393, 0.389178, 0.005000),(-0.961857, 0.265122, 0.004330),(-0.921393, 0.389178, 0.005000),(-0.964268, 0.265784, 0.005000),(-0.960092, 0.264637, 0.002500),(-0.917404, 0.387492, 0.002500),(-0.919090, 0.388205, 0.004330),(-0.960092, 0.264637, 0.002500),(-0.919090, 0.388205, 0.004330),(-0.961857, 0.265122, 0.004330),(-0.959446, 0.264460, 0.000000),(-0.916787, 0.387232, 0.000000),(-0.917404, 0.387492, 0.002500),(-0.959446, 0.264460, 0.000000),(-0.917404, 0.387492, 0.002500),(-0.960092, 0.264637, 0.002500),(-0.960092, 0.264637, -0.002500),(-0.917404, 0.387492, -0.002500),(-0.916787, 0.387232, 0.000000),(-0.960092, 0.264637, -0.002500),(-0.916787, 0.387232, 0.000000),(-0.959446, 0.264460, 0.000000),(-0.961857, 0.265122, -0.004330),(-0.919090, 0.388205, -0.004330),(-0.917404, 0.387492, -0.002500),(-0.961857, 0.265122, -0.004330),(-0.917404, 0.387492, -0.002500),(-0.960092, 0.264637, -0.002500),(-0.964268, 0.265784, -0.005000),(-0.921393, 0.389178, -0.005000),(-0.919090, 0.388205, -0.004330),(-0.964268, 0.265784, -0.005000),(-0.919090, 0.388205, -0.004330),(-0.961857, 0.265122, -0.004330),(-0.923695, 0.390151, -0.004330),(-0.865593, 0.505911, -0.004330),(-0.863435, 0.504648, -0.005000),(-0.923695, 0.390151, -0.004330),(-0.863435, 0.504648, -0.005000),(-0.921393, 0.389178, -0.005000),(-0.925381, 0.390863, -0.002500),(-0.867172, 0.506836, -0.002500),(-0.865593, 0.505911, -0.004330),(-0.925381, 0.390863, -0.002500),(-0.865593, 0.505911, -0.004330),(-0.923695, 0.390151, -0.004330),(-0.925998, 0.391124, -0.000000),(-0.867750, 0.507174, -0.000000),(-0.867172, 0.506836, -0.002500),(-0.925998, 0.391124, -0.000000),(-0.867172, 0.506836, -0.002500),(-0.925381, 0.390863, -0.002500),(-0.925381, 0.390863, 0.002500),(-0.867172, 0.506836, 0.002500),(-0.867750, 0.507174, -0.000000),(-0.925381, 0.390863, 0.002500),(-0.867750, 0.507174, -0.000000),(-0.925998, 0.391124, -0.000000),(-0.923695, 0.390151, 0.004330),(-0.865593, 0.505911, 0.004330),(-0.867172, 0.506836, 0.002500),(-0.923695, 0.390151, 0.004330),(-0.867172, 0.506836, 0.002500),(-0.925381, 0.390863, 0.002500),(-0.921393, 0.389178, 0.005000),(-0.863435, 0.504648, 0.005000),(-0.865593, 0.505911, 0.004330),(-0.921393, 0.389178, 0.005000),(-0.865593, 0.505911, 0.004330),(-0.923695, 0.390151, 0.004330),(-0.919090, 0.388205, 0.004330),(-0.861278, 0.503385, 0.004330),(-0.863435, 0.504648, 0.005000),(-0.919090, 0.388205, 0.004330),(-0.863435, 0.504648, 0.005000),(-0.921393, 0.389178, 0.005000),(-0.917404, 0.387492, 0.002500),(-0.859698, 0.502460, 0.002500),(-0.861278, 0.503385, 0.004330),(-0.917404, 0.387492, 0.002500),(-0.861278, 0.503385, 0.004330),(-0.919090, 0.388205, 0.004330),(-0.916787, 0.387232, 0.000000),(-0.859120, 0.502122, 0.000000),(-0.859698, 0.502460, 0.002500),(-0.916787, 0.387232, 0.000000),(-0.859698, 0.502460, 0.002500),(-0.917404, 0.387492, 0.002500),(-0.917404, 0.387492, -0.002500),(-0.859698, 0.502460, -0.002500),(-0.859120, 0.502122, 0.000000),(-0.917404, 0.387492, -0.002500),(-0.859120, 0.502122, 0.000000),(-0.916787, 0.387232, 0.000000),(-0.919090, 0.388205, -0.004330),(-0.861278, 0.503385, -0.004330),(-0.859698, 0.502460, -0.002500),(-0.919090, 0.388205, -0.004330),(-0.859698, 0.502460, -0.002500),(-0.917404, 0.387492, -0.002500),(-0.921393, 0.389178, -0.005000),(-0.863435, 0.504648, -0.005000),(-0.861278, 0.503385, -0.004330),(-0.921393, 0.389178, -0.005000),(-0.861278, 0.503385, -0.004330),(-0.919090, 0.388205, -0.004330),(-0.865593, 0.505911, -0.004330),(-0.793567, 0.612531, -0.004330),(-0.791589, 0.611002, -0.005000),(-0.865593, 0.505911, -0.004330),(-0.791589, 0.611002, -0.005000),(-0.863435, 0.504648, -0.005000),(-0.867172, 0.506836, -0.002500),(-0.795015, 0.613650, -0.002500),(-0.793567, 0.612531, -0.004330),(-0.867172, 0.506836, -0.002500),(-0.793567, 0.612531, -0.004330),(-0.865593, 0.505911, -0.004330),(-0.867750, 0.507174, -0.000000),(-0.795545, 0.614060, -0.000000),(-0.795015, 0.613650, -0.002500),(-0.867750, 0.507174, -0.000000),(-0.795015, 0.613650, -0.002500),(-0.867172, 0.506836, -0.002500),(-0.867172, 0.506836, 0.002500),(-0.795015, 0.613650, 0.002500),(-0.795545, 0.614060, -0.000000),(-0.867172, 0.506836, 0.002500),(-0.795545, 0.614060, -0.000000),(-0.867750, 0.507174, -0.000000),(-0.865593, 0.505911, 0.004330),(-0.793567, 0.612531, 0.004330),(-0.795015, 0.613650, 0.002500),(-0.865593, 0.505911, 0.004330),(-0.795015, 0.613650, 0.002500),(-0.867172, 0.506836, 0.002500),(-0.863435, 0.504648, 0.005000),(-0.791589, 0.611002, 0.005000),(-0.793567, 0.612531, 0.004330),(-0.863435, 0.504648, 0.005000),(-0.793567, 0.612531, 0.004330),(-0.865593, 0.505911, 0.004330),(-0.861278, 0.503385, 0.004330),(-0.789611, 0.609473, 0.004330),(-0.791589, 0.611002, 0.005000),(-0.861278, 0.503385, 0.004330),(-0.791589, 0.611002, 0.005000),(-0.863435, 0.504648, 0.005000),(-0.859698, 0.502460, 0.002500),(-0.788163, 0.608354, 0.002500),(-0.789611, 0.609473, 0.004330),(-0.859698, 0.502460, 0.002500),(-0.789611, 0.609473, 0.004330),(-0.861278, 0.503385, 0.004330),(-0.859120, 0.502122, 0.000000),(-0.787633, 0.607945, 0.000000),(-0.788163, 0.608354, 0.002500),(-0.859120, 0.502122, 0.000000),(-0.788163, 0.608354, 0.002500),(-0.859698, 0.502460, 0.002500),(-0.859698, 0.502460, -0.002500),(-0.788163, 0.608354, -0.002500),(-0.787633, 0.607945, 0.000000),(-0.859698, 0.502460, -0.002500),(-0.787633, 0.607945, 0.000000),(-0.859120, 0.502122, 0.000000),(-0.861278, 0.503385, -0.004330),(-0.789611, 0.609473, -0.004330),(-0.788163, 0.608354, -0.002500),(-0.861278, 0.503385, -0.004330),(-0.788163, 0.608354, -0.002500),(-0.859698, 0.502460, -0.002500),(-0.863435, 0.504648, -0.005000),(-0.791589, 0.611002, -0.005000),(-0.789611, 0.609473, -0.004330),(-0.863435, 0.504648, -0.005000),(-0.789611, 0.609473, -0.004330),(-0.861278, 0.503385, -0.004330),(-0.793567, 0.612531, -0.004330),(-0.708815, 0.708815, -0.004330),(-0.707047, 0.707047, -0.005000),(-0.793567, 0.612531, -0.004330),(-0.707047, 0.707047, -0.005000),(-0.791589, 0.611002, -0.005000),(-0.795015, 0.613650, -0.002500),(-0.710109, 0.710109, -0.002500),(-0.708815, 0.708815, -0.004330),(-0.795015, 0.613650, -0.002500),(-0.708815, 0.708815, -0.004330),(-0.793567, 0.612531, -0.004330),(-0.795545, 0.614060, -0.000000),(-0.710582, 0.710582, -0.000000),(-0.710109, 0.710109, -0.002500),(-0.795545, 0.614060, -0.000000),(-0.710109, 0.710109, -0.002500),(-0.795015, 0.613650, -0.002500),(-0.795015, 0.613650, 0.002500),(-0.710109, 0.710109, 0.002500),(-0.710582, 0.710582, -0.000000),(-0.795015, 0.613650, 0.002500),(-0.710582, 0.710582, -0.000000),(-0.795545, 0.614060, -0.000000),(-0.793567, 0.612531, 0.004330),(-0.708815, 0.708815, 0.004330),(-0.710109, 0.710109, 0.002500),(-0.793567, 0.612531, 0.004330),(-0.710109, 0.710109, 0.002500),(-0.795015, 0.613650, 0.002500),(-0.791589, 0.611002, 0.005000),(-0.707047, 0.707047, 0.005000),(-0.708815, 0.708815, 0.004330),(-0.791589, 0.611002, 0.005000),(-0.708815, 0.708815, 0.004330),(-0.793567, 0.612531, 0.004330),(-0.789611, 0.609473, 0.004330),(-0.705279, 0.705279, 0.004330),(-0.707047, 0.707047, 0.005000),(-0.789611, 0.609473, 0.004330),(-0.707047, 0.707047, 0.005000),(-0.791589, 0.611002, 0.005000),(-0.788163, 0.608354, 0.002500),(-0.703985, 0.703985, 0.002500),(-0.705279, 0.705279, 0.004330),(-0.788163, 0.608354, 0.002500),(-0.705279, 0.705279, 0.004330),(-0.789611, 0.609473, 0.004330),(-0.787633, 0.607945, 0.000000),(-0.703511, 0.703511, 0.000000),(-0.703985, 0.703985, 0.002500),(-0.787633, 0.607945, 0.000000),(-0.703985, 0.703985, 0.002500),(-0.788163, 0.608354, 0.002500),(-0.788163, 0.608354, -0.002500),(-0.703985, 0.703985, -0.002500),(-0.703511, 0.703511, 0.000000),(-0.788163, 0.608354, -0.002500),(-0.703511, 0.703511, 0.000000),(-0.787633, 0.607945, 0.000000),(-0.789611, 0.609473, -0.004330),(-0.705279, 0.705279, -0.004330),(-0.703985, 0.703985, -0.002500),(-0.789611, 0.609473, -0.004330),(-0.703985, 0.703985, -0.002500),(-0.788163, 0.608354, -0.002500),(-0.791589, 0.611002, -0.005000),(-0.707047, 0.707047, -0.005000),(-0.705279, 0.705279, -0.004330),(-0.791589, 0.611002, -0.005000),(-0.705279, 0.705279, -0.004330),(-0.789611, 0.609473, -0.004330),(-0.708815, 0.708815, -0.004330),(-0.612531, 0.793567, -0.004330),(-0.611002, 0.791589, -0.005000),(-0.708815, 0.708815, -0.004330),(-0.611002, 0.791589, -0.005000),(-0.707047, 0.707047, -0.005000),(-0.710109, 0.710109, -0.002500),(-0.613650, 0.795015, -0.002500),(-0.612531, 0.793567, -0.004330),(-0.710109, 0.710109, -0.002500),(-0.612531, 0.793567, -0.004330),(-0.708815, 0.708815, -0.004330),(-0.710582, 0.710582, -0.000000),(-0.614060, 0.795545, -0.000000),(-0.613650, 0.795015, -0.002500),(-0.710582, 0.710582, -0.000000),(-0.613650, 0.795015, -0.002500),(-0.710109, 0.710109, -0.002500),(-0.710109, 0.710109, 0.002500),(-0.613650, 0.795015, 0.002500),(-0.614060, 0.795545, -0.000000),(-0.710109, 0.710109, 0.002500),(-0.614060, 0.795545, -0.000000),(-0.710582, 0.710582, -0.000000),(-0.708815, 0.708815, 0.004330),(-0.612531, 0.793567, 0.004330),(-0.613650, 0.795015, 0.002500),(-0.708815, 0.708815, 0.004330),(-0.613650, 0.795015, 0.002500),(-0.710109, 0.710109, 0.002500),(-0.707047, 0.707047, 0.005000),(-0.611002, 0.791589, 0.005000),(-0.612531, 0.793567, 0.004330),(-0.707047, 0.707047, 0.005000),(-0.612531, 0.793567, 0.004330),(-0.708815, 0.708815, 0.004330),(-0.705279, 0.705279, 0.004330),(-0.609474, 0.789611, 0.004330),(-0.611002, 0.791589, 0.005000),(-0.705279, 0.705279, 0.004330),(-0.611002, 0.791589, 0.005000),(-0.707047, 0.707047, 0.005000),(-0.703985, 0.703985, 0.002500),(-0.608354, 0.788163, 0.002500),(-0.609474, 0.789611, 0.004330),(-0.703985, 0.703985, 0.002500),(-0.609474, 0.789611, 0.004330),(-0.705279, 0.705279, 0.004330),(-0.703511, 0.703511, 0.000000),(-0.607945, 0.787633, 0.000000),(-0.608354, 0.788163, 0.002500),(-0.703511, 0.703511, 0.000000),(-0.608354, 0.788163, 0.002500),(-0.703985, 0.703985, 0.002500),(-0.703985, 0.703985, -0.002500),(-0.608354, 0.788163, -0.002500),(-0.607945, 0.787633, 0.000000),(-0.703985, 0.703985, -0.002500),(-0.607945, 0.787633, 0.000000),(-0.703511, 0.703511, 0.000000),(-0.705279, 0.705279, -0.004330),(-0.609474, 0.789611, -0.004330),(-0.608354, 0.788163, -0.002500),(-0.705279, 0.705279, -0.004330),(-0.608354, 0.788163, -0.002500),(-0.703985, 0.703985, -0.002500),(-0.707047, 0.707047, -0.005000),(-0.611002, 0.791589, -0.005000),(-0.609474, 0.789611, -0.004330),(-0.707047, 0.707047, -0.005000),(-0.609474, 0.789611, -0.004330),(-0.705279, 0.705279, -0.004330),(-0.612531, 0.793567, -0.004330),(-0.505911, 0.865593, -0.004330),(-0.504648, 0.863435, -0.005000),(-0.612531, 0.793567, -0.004330),(-0.504648, 0.863435, -0.005000),(-0.611002, 0.791589, -0.005000),(-0.613650, 0.795015, -0.002500),(-0.506836, 0.867172, -0.002500),(-0.505911, 0.865593, -0.004330),(-0.613650, 0.795015, -0.002500),(-0.505911, 0.865593, -0.004330),(-0.612531, 0.793567, -0.004330),(-0.614060, 0.795545, -0.000000),(-0.507174, 0.867750, -0.000000),(-0.506836, 0.867172, -0.002500),(-0.614060, 0.795545, -0.000000),(-0.506836, 0.867172, -0.002500),(-0.613650, 0.795015, -0.002500),(-0.613650, 0.795015, 0.002500),(-0.506836, 0.867172, 0.002500),(-0.507174, 0.867750, -0.000000),(-0.613650, 0.795015, 0.002500),(-0.507174, 0.867750, -0.000000),(-0.614060, 0.795545, -0.000000),(-0.612531, 0.793567, 0.004330),(-0.505911, 0.865593, 0.004330),(-0.506836, 0.867172, 0.002500),(-0.612531, 0.793567, 0.004330),(-0.506836, 0.867172, 0.002500),(-0.613650, 0.795015, 0.002500),(-0.611002, 0.791589, 0.005000),(-0.504648, 0.863435, 0.005000),(-0.505911, 0.865593, 0.004330),(-0.611002, 0.791589, 0.005000),(-0.505911, 0.865593, 0.004330),(-0.612531, 0.793567, 0.004330),(-0.609474, 0.789611, 0.004330),(-0.503385, 0.861278, 0.004330),(-0.504648, 0.863435, 0.005000),(-0.609474, 0.789611, 0.004330),(-0.504648, 0.863435, 0.005000),(-0.611002, 0.791589, 0.005000),(-0.608354, 0.788163, 0.002500),(-0.502460, 0.859698, 0.002500),(-0.503385, 0.861278, 0.004330),(-0.608354, 0.788163, 0.002500),(-0.503385, 0.861278, 0.004330),(-0.609474, 0.789611, 0.004330),(-0.607945, 0.787633, 0.000000),(-0.502122, 0.859120, 0.000000),(-0.502460, 0.859698, 0.002500),(-0.607945, 0.787633, 0.000000),(-0.502460, 0.859698, 0.002500),(-0.608354, 0.788163, 0.002500),(-0.608354, 0.788163, -0.002500),(-0.502460, 0.859698, -0.002500),(-0.502122, 0.859120, 0.000000),(-0.608354, 0.788163, -0.002500),(-0.502122, 0.859120, 0.000000),(-0.607945, 0.787633, 0.000000),(-0.609474, 0.789611, -0.004330),(-0.503385, 0.861278, -0.004330),(-0.502460, 0.859698, -0.002500),(-0.609474, 0.789611, -0.004330),(-0.502460, 0.859698, -0.002500),(-0.608354, 0.788163, -0.002500),(-0.611002, 0.791589, -0.005000),(-0.504648, 0.863435, -0.005000),(-0.503385, 0.861278, -0.004330),(-0.611002, 0.791589, -0.005000),(-0.503385, 0.861278, -0.004330),(-0.609474, 0.789611, -0.004330),(-0.505911, 0.865593, -0.004330),(-0.390151, 0.923695, -0.004330),(-0.389178, 0.921392, -0.005000),(-0.505911, 0.865593, -0.004330),(-0.389178, 0.921392, -0.005000),(-0.504648, 0.863435, -0.005000),(-0.506836, 0.867172, -0.002500),(-0.390863, 0.925381, -0.002500),(-0.390151, 0.923695, -0.004330),(-0.506836, 0.867172, -0.002500),(-0.390151, 0.923695, -0.004330),(-0.505911, 0.865593, -0.004330),(-0.507174, 0.867750, -0.000000),(-0.391124, 0.925998, -0.000000),(-0.390863, 0.925381, -0.002500),(-0.507174, 0.867750, -0.000000),(-0.390863, 0.925381, -0.002500),(-0.506836, 0.867172, -0.002500),(-0.506836, 0.867172, 0.002500),(-0.390863, 0.925381, 0.002500),(-0.391124, 0.925998, -0.000000),(-0.506836, 0.867172, 0.002500),(-0.391124, 0.925998, -0.000000),(-0.507174, 0.867750, -0.000000),(-0.505911, 0.865593, 0.004330),(-0.390151, 0.923695, 0.004330),(-0.390863, 0.925381, 0.002500),(-0.505911, 0.865593, 0.004330),(-0.390863, 0.925381, 0.002500),(-0.506836, 0.867172, 0.002500),(-0.504648, 0.863435, 0.005000),(-0.389178, 0.921392, 0.005000),(-0.390151, 0.923695, 0.004330),(-0.504648, 0.863435, 0.005000),(-0.390151, 0.923695, 0.004330),(-0.505911, 0.865593, 0.004330),(-0.503385, 0.861278, 0.004330),(-0.388205, 0.919090, 0.004330),(-0.389178, 0.921392, 0.005000),(-0.503385, 0.861278, 0.004330),(-0.389178, 0.921392, 0.005000),(-0.504648, 0.863435, 0.005000),(-0.502460, 0.859698, 0.002500),(-0.387492, 0.917404, 0.002500),(-0.388205, 0.919090, 0.004330),(-0.502460, 0.859698, 0.002500),(-0.388205, 0.919090, 0.004330),(-0.503385, 0.861278, 0.004330),(-0.502122, 0.859120, 0.000000),(-0.387232, 0.916787, 0.000000),(-0.387492, 0.917404, 0.002500),(-0.502122, 0.859120, 0.000000),(-0.387492, 0.917404, 0.002500),(-0.502460, 0.859698, 0.002500),(-0.502460, 0.859698, -0.002500),(-0.387492, 0.917404, -0.002500),(-0.387232, 0.916787, 0.000000),(-0.502460, 0.859698, -0.002500),(-0.387232, 0.916787, 0.000000),(-0.502122, 0.859120, 0.000000),(-0.503385, 0.861278, -0.004330),(-0.388205, 0.919090, -0.004330),(-0.387492, 0.917404, -0.002500),(-0.503385, 0.861278, -0.004330),(-0.387492, 0.917404, -0.002500),(-0.502460, 0.859698, -0.002500),(-0.504648, 0.863435, -0.005000),(-0.389178, 0.921392, -0.005000),(-0.388205, 0.919090, -0.004330),(-0.504648, 0.863435, -0.005000),(-0.388205, 0.919090, -0.004330),(-0.503385, 0.861278, -0.004330),(-0.390151, 0.923695, -0.004330),(-0.266446, 0.966679, -0.004330),(-0.265784, 0.964268, -0.005000),(-0.390151, 0.923695, -0.004330),(-0.265784, 0.964268, -0.005000),(-0.389178, 0.921392, -0.005000),(-0.390863, 0.925381, -0.002500),(-0.266931, 0.968443, -0.002500),(-0.266446, 0.966679, -0.004330),(-0.390863, 0.925381, -0.002500),(-0.266446, 0.966679, -0.004330),(-0.390151, 0.923695, -0.004330),(-0.391124, 0.925998, -0.000000),(-0.267108, 0.969089, -0.000000),(-0.266931, 0.968443, -0.002500),(-0.391124, 0.925998, -0.000000),(-0.266931, 0.968443, -0.002500),(-0.390863, 0.925381, -0.002500),(-0.390863, 0.925381, 0.002500),(-0.266931, 0.968443, 0.002500),(-0.267108, 0.969089, -0.000000),(-0.390863, 0.925381, 0.002500),(-0.267108, 0.969089, -0.000000),(-0.391124, 0.925998, -0.000000),(-0.390151, 0.923695, 0.004330),(-0.266446, 0.966679, 0.004330),(-0.266931, 0.968443, 0.002500),(-0.390151, 0.923695, 0.004330),(-0.266931, 0.968443, 0.002500),(-0.390863, 0.925381, 0.002500),(-0.389178, 0.921392, 0.005000),(-0.265784, 0.964268, 0.005000),(-0.266446, 0.966679, 0.004330),(-0.389178, 0.921392, 0.005000),(-0.266446, 0.966679, 0.004330),(-0.390151, 0.923695, 0.004330),(-0.388205, 0.919090, 0.004330),(-0.265122, 0.961857, 0.004330),(-0.265784, 0.964268, 0.005000),(-0.388205, 0.919090, 0.004330),(-0.265784, 0.964268, 0.005000),(-0.389178, 0.921392, 0.005000),(-0.387492, 0.917404, 0.002500),(-0.264637, 0.960092, 0.002500),(-0.265122, 0.961857, 0.004330),(-0.387492, 0.917404, 0.002500),(-0.265122, 0.961857, 0.004330),(-0.388205, 0.919090, 0.004330),(-0.387232, 0.916787, 0.000000),(-0.264460, 0.959446, 0.000000),(-0.264637, 0.960092, 0.002500),(-0.387232, 0.916787, 0.000000),(-0.264637, 0.960092, 0.002500),(-0.387492, 0.917404, 0.002500),(-0.387492, 0.917404, -0.002500),(-0.264637, 0.960092, -0.002500),(-0.264460, 0.959446, 0.000000),(-0.387492, 0.917404, -0.002500),(-0.264460, 0.959446, 0.000000),(-0.387232, 0.916787, 0.000000),(-0.388205, 0.919090, -0.004330),(-0.265122, 0.961857, -0.004330),(-0.264637, 0.960092, -0.002500),(-0.388205, 0.919090, -0.004330),(-0.264637, 0.960092, -0.002500),(-0.387492, 0.917404, -0.002500),(-0.389178, 0.921392, -0.005000),(-0.265784, 0.964268, -0.005000),(-0.265122, 0.961857, -0.004330),(-0.389178, 0.921392, -0.005000),(-0.265122, 0.961857, -0.004330),(-0.388205, 0.919090, -0.004330),(-0.266446, 0.966679, -0.004330),(-0.135996, 0.993345, -0.004330),(-0.135661, 0.990868, -0.005000),(-0.266446, 0.966679, -0.004330),(-0.135661, 0.990868, -0.005000),(-0.265784, 0.964268, -0.005000),(-0.266931, 0.968443, -0.002500),(-0.136241, 0.995159, -0.002500),(-0.135996, 0.993345, -0.004330),(-0.266931, 0.968443, -0.002500),(-0.135996, 0.993345, -0.004330),(-0.266446, 0.966679, -0.004330),(-0.267108, 0.969089, -0.000000),(-0.136331, 0.995823, -0.000000),(-0.136241, 0.995159, -0.002500),(-0.267108, 0.969089, -0.000000),(-0.136241, 0.995159, -0.002500),(-0.266931, 0.968443, -0.002500),(-0.266931, 0.968443, 0.002500),(-0.136241, 0.995159, 0.002500),(-0.136331, 0.995823, -0.000000),(-0.266931, 0.968443, 0.002500),(-0.136331, 0.995823, -0.000000),(-0.267108, 0.969089, -0.000000),(-0.266446, 0.966679, 0.004330),(-0.135996, 0.993345, 0.004330),(-0.136241, 0.995159, 0.002500),(-0.266446, 0.966679, 0.004330),(-0.136241, 0.995159, 0.002500),(-0.266931, 0.968443, 0.002500),(-0.265784, 0.964268, 0.005000),(-0.135661, 0.990868, 0.005000),(-0.135996, 0.993345, 0.004330),(-0.265784, 0.964268, 0.005000),(-0.135996, 0.993345, 0.004330),(-0.266446, 0.966679, 0.004330),(-0.265122, 0.961857, 0.004330),(-0.135325, 0.988391, 0.004330),(-0.135661, 0.990868, 0.005000),(-0.265122, 0.961857, 0.004330),(-0.135661, 0.990868, 0.005000),(-0.265784, 0.964268, 0.005000),(-0.264637, 0.960092, 0.002500),(-0.135080, 0.986577, 0.002500),(-0.135325, 0.988391, 0.004330),(-0.264637, 0.960092, 0.002500),(-0.135325, 0.988391, 0.004330),(-0.265122, 0.961857, 0.004330),(-0.264460, 0.959446, 0.000000),(-0.134990, 0.985913, 0.000000),(-0.135080, 0.986577, 0.002500),(-0.264460, 0.959446, 0.000000),(-0.135080, 0.986577, 0.002500),(-0.264637, 0.960092, 0.002500),(-0.264637, 0.960092, -0.002500),(-0.135080, 0.986577, -0.002500),(-0.134990, 0.985913, 0.000000),(-0.264637, 0.960092, -0.002500),(-0.134990, 0.985913, 0.000000),(-0.264460, 0.959446, 0.000000),(-0.265122, 0.961857, -0.004330),(-0.135325, 0.988391, -0.004330),(-0.135080, 0.986577, -0.002500),(-0.265122, 0.961857, -0.004330),(-0.135080, 0.986577, -0.002500),(-0.264637, 0.960092, -0.002500),(-0.265784, 0.964268, -0.005000),(-0.135661, 0.990868, -0.005000),(-0.135325, 0.988391, -0.004330),(-0.265784, 0.964268, -0.005000),(-0.135325, 0.988391, -0.004330),(-0.265122, 0.961857, -0.004330),(-0.135996, 0.993345, -0.004330),(-0.000000, 1.002500, -0.004330),(-0.000000, 1.000000, -0.005000),(-0.135996, 0.993345, -0.004330),(-0.000000, 1.000000, -0.005000),(-0.135661, 0.990868, -0.005000),(-0.136241, 0.995159, -0.002500),(-0.000000, 1.004330, -0.002500),(-0.000000, 1.002500, -0.004330),(-0.136241, 0.995159, -0.002500),(-0.000000, 1.002500, -0.004330),(-0.135996, 0.993345, -0.004330),(-0.136331, 0.995823, -0.000000),(-0.000000, 1.005000, -0.000000),(-0.000000, 1.004330, -0.002500),(-0.136331, 0.995823, -0.000000),(-0.000000, 1.004330, -0.002500),(-0.136241, 0.995159, -0.002500),(-0.136241, 0.995159, 0.002500),(-0.000000, 1.004330, 0.002500),(-0.000000, 1.005000, -0.000000),(-0.136241, 0.995159, 0.002500),(-0.000000, 1.005000, -0.000000),(-0.136331, 0.995823, -0.000000),(-0.135996, 0.993345, 0.004330),(-0.000000, 1.002500, 0.004330),(-0.000000, 1.004330, 0.002500),(-0.135996, 0.993345, 0.004330),(-0.000000, 1.004330, 0.002500),(-0.136241, 0.995159, 0.002500),(-0.135661, 0.990868, 0.005000),(0.000000, 1.000000, 0.005000),(-0.000000, 1.002500, 0.004330),(-0.135661, 0.990868, 0.005000),(-0.000000, 1.002500, 0.004330),(-0.135996, 0.993345, 0.004330),(-0.135325, 0.988391, 0.004330),(0.000000, 0.997500, 0.004330),(0.000000, 1.000000, 0.005000),(-0.135325, 0.988391, 0.004330),(0.000000, 1.000000, 0.005000),(-0.135661, 0.990868, 0.005000),(-0.135080, 0.986577, 0.002500),(0.000000, 0.995670, 0.002500),(0.000000, 0.997500, 0.004330),(-0.135080, 0.986577, 0.002500),(0.000000, 0.997500, 0.004330),(-0.135325, 0.988391, 0.004330),(-0.134990, 0.985913, 0.000000),(0.000000, 0.995000, 0.000000),(0.000000, 0.995670, 0.002500),(-0.134990, 0.985913, 0.000000),(0.000000, 0.995670, 0.002500),(-0.135080, 0.986577, 0.002500),(-0.135080, 0.986577, -0.002500),(0.000000, 0.995670, -0.002500),(0.000000, 0.995000, 0.000000),(-0.135080, 0.986577, -0.002500),(0.000000, 0.995000, 0.000000),(-0.134990, 0.985913, 0.000000),(-0.135325, 0.988391, -0.004330),(0.000000, 0.997500, -0.004330),(0.000000, 0.995670, -0.002500),(-0.135325, 0.988391, -0.004330),(0.000000, 0.995670, -0.002500),(-0.135080, 0.986577, -0.002500),(-0.135661, 0.990868, -0.005000),(-0.000000, 1.000000, -0.005000),(0.000000, 0.997500, -0.004330),(-0.135661, 0.990868, -0.005000),(0.000000, 0.997500, -0.004330),(-0.135325, 0.988391, -0.004330),(-0.000000, 1.002500, -0.004330),(0.135996, 0.993346, -0.004330),(0.135661, 0.990868, -0.005000),(-0.000000, 1.002500, -0.004330),(0.135661, 0.990868, -0.005000),(-0.000000, 1.000000, -0.005000),(-0.000000, 1.004330, -0.002500),(0.136241, 0.995159, -0.002500),(0.135996, 0.993346, -0.004330),(-0.000000, 1.004330, -0.002500),(0.135996, 0.993346, -0.004330),(-0.000000, 1.002500, -0.004330),(-0.000000, 1.005000, -0.000000),(0.136331, 0.995823, -0.000000),(0.136241, 0.995159, -0.002500),(-0.000000, 1.005000, -0.000000),(0.136241, 0.995159, -0.002500),(-0.000000, 1.004330, -0.002500),(-0.000000, 1.004330, 0.002500),(0.136241, 0.995159, 0.002500),(0.136331, 0.995823, -0.000000),(-0.000000, 1.004330, 0.002500),(0.136331, 0.995823, -0.000000),(-0.000000, 1.005000, -0.000000),(-0.000000, 1.002500, 0.004330),(0.135996, 0.993346, 0.004330),(0.136241, 0.995159, 0.002500),(-0.000000, 1.002500, 0.004330),(0.136241, 0.995159, 0.002500),(-0.000000, 1.004330, 0.002500),(0.000000, 1.000000, 0.005000),(0.135661, 0.990868, 0.005000),(0.135996, 0.993346, 0.004330),(0.000000, 1.000000, 0.005000),(0.135996, 0.993346, 0.004330),(-0.000000, 1.002500, 0.004330),(0.000000, 0.997500, 0.004330),(0.135325, 0.988391, 0.004330),(0.135661, 0.990868, 0.005000),(0.000000, 0.997500, 0.004330),(0.135661, 0.990868, 0.005000),(0.000000, 1.000000, 0.005000),(0.000000, 0.995670, 0.002500),(0.135080, 0.986577, 0.002500),(0.135325, 0.988391, 0.004330),(0.000000, 0.995670, 0.002500),(0.135325, 0.988391, 0.004330),(0.000000, 0.997500, 0.004330),(0.000000, 0.995000, 0.000000),(0.134990, 0.985913, 0.000000),(0.135080, 0.986577, 0.002500),(0.000000, 0.995000, 0.000000),(0.135080, 0.986577, 0.002500),(0.000000, 0.995670, 0.002500),(0.000000, 0.995670, -0.002500),(0.135080, 0.986577, -0.002500),(0.134990, 0.985913, 0.000000),(0.000000, 0.995670, -0.002500),(0.134990, 0.985913, 0.000000),(0.000000, 0.995000, 0.000000),(0.000000, 0.997500, -0.004330),(0.135325, 0.988391, -0.004330),(0.135080, 0.986577, -0.002500),(0.000000, 0.997500, -0.004330),(0.135080, 0.986577, -0.002500),(0.000000, 0.995670, -0.002500),(-0.000000, 1.000000, -0.005000),(0.135661, 0.990868, -0.005000),(0.135325, 0.988391, -0.004330),(-0.000000, 1.000000, -0.005000),(0.135325, 0.988391, -0.004330),(0.000000, 0.997500, -0.004330),(0.135996, 0.993346, -0.004330),(0.266446, 0.966679, -0.004330),(0.265784, 0.964268, -0.005000),(0.135996, 0.993346, -0.004330),(0.265784, 0.964268, -0.005000),(0.135661, 0.990868, -0.005000),(0.136241, 0.995159, -0.002500),(0.266931, 0.968443, -0.002500),(0.266446, 0.966679, -0.004330),(0.136241, 0.995159, -0.002500),(0.266446, 0.966679, -0.004330),(0.135996, 0.993346, -0.004330),(0.136331, 0.995823, -0.000000),(0.267108, 0.969089, -0.000000),(0.266931, 0.968443, -0.002500),(0.136331, 0.995823, -0.000000),(0.266931, 0.968443, -0.002500),(0.136241, 0.995159, -0.002500),(0.136241, 0.995159, 0.002500),(0.266931, 0.968443, 0.002500),(0.267108, 0.969089, -0.000000),(0.136241, 0.995159, 0.002500),(0.267108, 0.969089, -0.000000),(0.136331, 0.995823, -0.000000),(0.135996, 0.993346, 0.004330),(0.266446, 0.966679, 0.004330),(0.266931, 0.968443, 0.002500),(0.135996, 0.993346, 0.004330),(0.266931, 0.968443, 0.002500),(0.136241, 0.995159, 0.002500),(0.135661, 0.990868, 0.005000),(0.265784, 0.964268, 0.005000),(0.266446, 0.966679, 0.004330),(0.135661, 0.990868, 0.005000),(0.266446, 0.966679, 0.004330),(0.135996, 0.993346, 0.004330),(0.135325, 0.988391, 0.004330),(0.265122, 0.961857, 0.004330),(0.265784, 0.964268, 0.005000),(0.135325, 0.988391, 0.004330),(0.265784, 0.964268, 0.005000),(0.135661, 0.990868, 0.005000),(0.135080, 0.986577, 0.002500),(0.264637, 0.960092, 0.002500),(0.265122, 0.961857, 0.004330),(0.135080, 0.986577, 0.002500),(0.265122, 0.961857, 0.004330),(0.135325, 0.988391, 0.004330),(0.134990, 0.985913, 0.000000),(0.264460, 0.959446, 0.000000),(0.264637, 0.960092, 0.002500),(0.134990, 0.985913, 0.000000),(0.264637, 0.960092, 0.002500),(0.135080, 0.986577, 0.002500),(0.135080, 0.986577, -0.002500),(0.264637, 0.960092, -0.002500),(0.264460, 0.959446, 0.000000),(0.135080, 0.986577, -0.002500),(0.264460, 0.959446, 0.000000),(0.134990, 0.985913, 0.000000),(0.135325, 0.988391, -0.004330),(0.265122, 0.961857, -0.004330),(0.264637, 0.960092, -0.002500),(0.135325, 0.988391, -0.004330),(0.264637, 0.960092, -0.002500),(0.135080, 0.986577, -0.002500),(0.135661, 0.990868, -0.005000),(0.265784, 0.964268, -0.005000),(0.265122, 0.961857, -0.004330),(0.135661, 0.990868, -0.005000),(0.265122, 0.961857, -0.004330),(0.135325, 0.988391, -0.004330),(0.266446, 0.966679, -0.004330),(0.390151, 0.923695, -0.004330),(0.389178, 0.921393, -0.005000),(0.266446, 0.966679, -0.004330),(0.389178, 0.921393, -0.005000),(0.265784, 0.964268, -0.005000),(0.266931, 0.968443, -0.002500),(0.390863, 0.925381, -0.002500),(0.390151, 0.923695, -0.004330),(0.266931, 0.968443, -0.002500),(0.390151, 0.923695, -0.004330),(0.266446, 0.966679, -0.004330),(0.267108, 0.969089, -0.000000),(0.391124, 0.925998, -0.000000),(0.390863, 0.925381, -0.002500),(0.267108, 0.969089, -0.000000),(0.390863, 0.925381, -0.002500),(0.266931, 0.968443, -0.002500),(0.266931, 0.968443, 0.002500),(0.390863, 0.925381, 0.002500),(0.391124, 0.925998, -0.000000),(0.266931, 0.968443, 0.002500),(0.391124, 0.925998, -0.000000),(0.267108, 0.969089, -0.000000),(0.266446, 0.966679, 0.004330),(0.390151, 0.923695, 0.004330),(0.390863, 0.925381, 0.002500),(0.266446, 0.966679, 0.004330),(0.390863, 0.925381, 0.002500),(0.266931, 0.968443, 0.002500),(0.265784, 0.964268, 0.005000),(0.389178, 0.921393, 0.005000),(0.390151, 0.923695, 0.004330),(0.265784, 0.964268, 0.005000),(0.390151, 0.923695, 0.004330),(0.266446, 0.966679, 0.004330),(0.265122, 0.961857, 0.004330),(0.388205, 0.919090, 0.004330),(0.389178, 0.921393, 0.005000),(0.265122, 0.961857, 0.004330),(0.389178, 0.921393, 0.005000),(0.265784, 0.964268, 0.005000),(0.264637, 0.960092, 0.002500),(0.387492, 0.917404, 0.002500),(0.388205, 0.919090, 0.004330),(0.264637, 0.960092, 0.002500),(0.388205, 0.919090, 0.004330),(0.265122, 0.961857, 0.004330),(0.264460, 0.959446, 0.000000),(0.387232, 0.916787, 0.000000),(0.387492, 0.917404, 0.002500),(0.264460, 0.959446, 0.000000),(0.387492, 0.917404, 0.002500),(0.264637, 0.960092, 0.002500),(0.264637, 0.960092, -0.002500),(0.387492, 0.917404, -0.002500),(0.387232, 0.916787, 0.000000),(0.264637, 0.960092, -0.002500),(0.387232, 0.916787, 0.000000),(0.264460, 0.959446, 0.000000),(0.265122, 0.961857, -0.004330),(0.388205, 0.919090, -0.004330),(0.387492, 0.917404, -0.002500),(0.265122, 0.961857, -0.004330),(0.387492, 0.917404, -0.002500),(0.264637, 0.960092, -0.002500),(0.265784, 0.964268, -0.005000),(0.389178, 0.921393, -0.005000),(0.388205, 0.919090, -0.004330),(0.265784, 0.964268, -0.005000),(0.388205, 0.919090, -0.004330),(0.265122, 0.961857, -0.004330),(0.390151, 0.923695, -0.004330),(0.505911, 0.865593, -0.004330),(0.504648, 0.863435, -0.005000),(0.390151, 0.923695, -0.004330),(0.504648, 0.863435, -0.005000),(0.389178, 0.921393, -0.005000),(0.390863, 0.925381, -0.002500),(0.506836, 0.867172, -0.002500),(0.505911, 0.865593, -0.004330),(0.390863, 0.925381, -0.002500),(0.505911, 0.865593, -0.004330),(0.390151, 0.923695, -0.004330),(0.391124, 0.925998, -0.000000),(0.507174, 0.867750, -0.000000),(0.506836, 0.867172, -0.002500),(0.391124, 0.925998, -0.000000),(0.506836, 0.867172, -0.002500),(0.390863, 0.925381, -0.002500),(0.390863, 0.925381, 0.002500),(0.506836, 0.867172, 0.002500),(0.507174, 0.867750, -0.000000),(0.390863, 0.925381, 0.002500),(0.507174, 0.867750, -0.000000),(0.391124, 0.925998, -0.000000),(0.390151, 0.923695, 0.004330),(0.505911, 0.865593, 0.004330),(0.506836, 0.867172, 0.002500),(0.390151, 0.923695, 0.004330),(0.506836, 0.867172, 0.002500),(0.390863, 0.925381, 0.002500),(0.389178, 0.921393, 0.005000),(0.504648, 0.863435, 0.005000),(0.505911, 0.865593, 0.004330),(0.389178, 0.921393, 0.005000),(0.505911, 0.865593, 0.004330),(0.390151, 0.923695, 0.004330),(0.388205, 0.919090, 0.004330),(0.503385, 0.861278, 0.004330),(0.504648, 0.863435, 0.005000),(0.388205, 0.919090, 0.004330),(0.504648, 0.863435, 0.005000),(0.389178, 0.921393, 0.005000),(0.387492, 0.917404, 0.002500),(0.502460, 0.859698, 0.002500),(0.503385, 0.861278, 0.004330),(0.387492, 0.917404, 0.002500),(0.503385, 0.861278, 0.004330),(0.388205, 0.919090, 0.004330),(0.387232, 0.916787, 0.000000),(0.502122, 0.859120, 0.000000),(0.502460, 0.859698, 0.002500),(0.387232, 0.916787, 0.000000),(0.502460, 0.859698, 0.002500),(0.387492, 0.917404, 0.002500),(0.387492, 0.917404, -0.002500),(0.502460, 0.859698, -0.002500),(0.502122, 0.859120, 0.000000),(0.387492, 0.917404, -0.002500),(0.502122, 0.859120, 0.000000),(0.387232, 0.916787, 0.000000),(0.388205, 0.919090, -0.004330),(0.503385, 0.861278, -0.004330),(0.502460, 0.859698, -0.002500),(0.388205, 0.919090, -0.004330),(0.502460, 0.859698, -0.002500),(0.387492, 0.917404, -0.002500),(0.389178, 0.921393, -0.005000),(0.504648, 0.863435, -0.005000),(0.503385, 0.861278, -0.004330),(0.389178, 0.921393, -0.005000),(0.503385, 0.861278, -0.004330),(0.388205, 0.919090, -0.004330),(0.505911, 0.865593, -0.004330),(0.612531, 0.793567, -0.004330),(0.611002, 0.791589, -0.005000),(0.505911, 0.865593, -0.004330),(0.611002, 0.791589, -0.005000),(0.504648, 0.863435, -0.005000),(0.506836, 0.867172, -0.002500),(0.613650, 0.795015, -0.002500),(0.612531, 0.793567, -0.004330),(0.506836, 0.867172, -0.002500),(0.612531, 0.793567, -0.004330),(0.505911, 0.865593, -0.004330),(0.507174, 0.867750, -0.000000),(0.614060, 0.795545, -0.000000),(0.613650, 0.795015, -0.002500),(0.507174, 0.867750, -0.000000),(0.613650, 0.795015, -0.002500),(0.506836, 0.867172, -0.002500),(0.506836, 0.867172, 0.002500),(0.613650, 0.795015, 0.002500),(0.614060, 0.795545, -0.000000),(0.506836, 0.867172, 0.002500),(0.614060, 0.795545, -0.000000),(0.507174, 0.867750, -0.000000),(0.505911, 0.865593, 0.004330),(0.612531, 0.793567, 0.004330),(0.613650, 0.795015, 0.002500),(0.505911, 0.865593, 0.004330),(0.613650, 0.795015, 0.002500),(0.506836, 0.867172, 0.002500),(0.504648, 0.863435, 0.005000),(0.611002, 0.791589, 0.005000),(0.612531, 0.793567, 0.004330),(0.504648, 0.863435, 0.005000),(0.612531, 0.793567, 0.004330),(0.505911, 0.865593, 0.004330),(0.503385, 0.861278, 0.004330),(0.609473, 0.789611, 0.004330),(0.611002, 0.791589, 0.005000),(0.503385, 0.861278, 0.004330),(0.611002, 0.791589, 0.005000),(0.504648, 0.863435, 0.005000),(0.502460, 0.859698, 0.002500),(0.608354, 0.788163, 0.002500),(0.609473, 0.789611, 0.004330),(0.502460, 0.859698, 0.002500),(0.609473, 0.789611, 0.004330),(0.503385, 0.861278, 0.004330),(0.502122, 0.859120, 0.000000),(0.607945, 0.787633, 0.000000),(0.608354, 0.788163, 0.002500),(0.502122, 0.859120, 0.000000),(0.608354, 0.788163, 0.002500),(0.502460, 0.859698, 0.002500),(0.502460, 0.859698, -0.002500),(0.608354, 0.788163, -0.002500),(0.607945, 0.787633, 0.000000),(0.502460, 0.859698, -0.002500),(0.607945, 0.787633, 0.000000),(0.502122, 0.859120, 0.000000),(0.503385, 0.861278, -0.004330),(0.609473, 0.789611, -0.004330),(0.608354, 0.788163, -0.002500),(0.503385, 0.861278, -0.004330),(0.608354, 0.788163, -0.002500),(0.502460, 0.859698, -0.002500),(0.504648, 0.863435, -0.005000),(0.611002, 0.791589, -0.005000),(0.609473, 0.789611, -0.004330),(0.504648, 0.863435, -0.005000),(0.609473, 0.789611, -0.004330),(0.503385, 0.861278, -0.004330),(0.612531, 0.793567, -0.004330),(0.708815, 0.708815, -0.004330),(0.707047, 0.707047, -0.005000),(0.612531, 0.793567, -0.004330),(0.707047, 0.707047, -0.005000),(0.611002, 0.791589, -0.005000),(0.613650, 0.795015, -0.002500),(0.710109, 0.710109, -0.002500),(0.708815, 0.708815, -0.004330),(0.613650, 0.795015, -0.002500),(0.708815, 0.708815, -0.004330),(0.612531, 0.793567, -0.004330),(0.614060, 0.795545, -0.000000),(0.710582, 0.710582, -0.000000),(0.710109, 0.710109, -0.002500),(0.614060, 0.795545, -0.000000),(0.710109, 0.710109, -0.002500),(0.613650, 0.795015, -0.002500),(0.613650, 0.795015, 0.002500),(0.710109, 0.710109, 0.002500),(0.710582, 0.710582, -0.000000),(0.613650, 0.795015, 0.002500),(0.710582, 0.710582, -0.000000),(0.614060, 0.795545, -0.000000),(0.612531, 0.793567, 0.004330),(0.708815, 0.708815, 0.004330),(0.710109, 0.710109, 0.002500),(0.612531, 0.793567, 0.004330),(0.710109, 0.710109, 0.002500),(0.613650, 0.795015, 0.002500),(0.611002, 0.791589, 0.005000),(0.707047, 0.707047, 0.005000),(0.708815, 0.708815, 0.004330),(0.611002, 0.791589, 0.005000),(0.708815, 0.708815, 0.004330),(0.612531, 0.793567, 0.004330),(0.609473, 0.789611, 0.004330),(0.705279, 0.705279, 0.004330),(0.707047, 0.707047, 0.005000),(0.609473, 0.789611, 0.004330),(0.707047, 0.707047, 0.005000),(0.611002, 0.791589, 0.005000),(0.608354, 0.788163, 0.002500),(0.703985, 0.703985, 0.002500),(0.705279, 0.705279, 0.004330),(0.608354, 0.788163, 0.002500),(0.705279, 0.705279, 0.004330),(0.609473, 0.789611, 0.004330),(0.607945, 0.787633, 0.000000),(0.703511, 0.703511, 0.000000),(0.703985, 0.703985, 0.002500),(0.607945, 0.787633, 0.000000),(0.703985, 0.703985, 0.002500),(0.608354, 0.788163, 0.002500),(0.608354, 0.788163, -0.002500),(0.703985, 0.703985, -0.002500),(0.703511, 0.703511, 0.000000),(0.608354, 0.788163, -0.002500),(0.703511, 0.703511, 0.000000),(0.607945, 0.787633, 0.000000),(0.609473, 0.789611, -0.004330),(0.705279, 0.705279, -0.004330),(0.703985, 0.703985, -0.002500),(0.609473, 0.789611, -0.004330),(0.703985, 0.703985, -0.002500),(0.608354, 0.788163, -0.002500),(0.611002, 0.791589, -0.005000),(0.707047, 0.707047, -0.005000),(0.705279, 0.705279, -0.004330),(0.611002, 0.791589, -0.005000),(0.705279, 0.705279, -0.004330),(0.609473, 0.789611, -0.004330),(0.708815, 0.708815, -0.004330),(0.793567, 0.612531, -0.004330),(0.791589, 0.611002, -0.005000),(0.708815, 0.708815, -0.004330),(0.791589, 0.611002, -0.005000),(0.707047, 0.707047, -0.005000),(0.710109, 0.710109, -0.002500),(0.795015, 0.613650, -0.002500),(0.793567, 0.612531, -0.004330),(0.710109, 0.710109, -0.002500),(0.793567, 0.612531, -0.004330),(0.708815, 0.708815, -0.004330),(0.710582, 0.710582, -0.000000),(0.795545, 0.614060, -0.000000),(0.795015, 0.613650, -0.002500),(0.710582, 0.710582, -0.000000),(0.795015, 0.613650, -0.002500),(0.710109, 0.710109, -0.002500),(0.710109, 0.710109, 0.002500),(0.795015, 0.613650, 0.002500),(0.795545, 0.614060, -0.000000),(0.710109, 0.710109, 0.002500),(0.795545, 0.614060, -0.000000),(0.710582, 0.710582, -0.000000),(0.708815, 0.708815, 0.004330),(0.793567, 0.612531, 0.004330),(0.795015, 0.613650, 0.002500),(0.708815, 0.708815, 0.004330),(0.795015, 0.613650, 0.002500),(0.710109, 0.710109, 0.002500),(0.707047, 0.707047, 0.005000),(0.791589, 0.611002, 0.005000),(0.793567, 0.612531, 0.004330),(0.707047, 0.707047, 0.005000),(0.793567, 0.612531, 0.004330),(0.708815, 0.708815, 0.004330),(0.705279, 0.705279, 0.004330),(0.789611, 0.609474, 0.004330),(0.791589, 0.611002, 0.005000),(0.705279, 0.705279, 0.004330),(0.791589, 0.611002, 0.005000),(0.707047, 0.707047, 0.005000),(0.703985, 0.703985, 0.002500),(0.788163, 0.608354, 0.002500),(0.789611, 0.609474, 0.004330),(0.703985, 0.703985, 0.002500),(0.789611, 0.609474, 0.004330),(0.705279, 0.705279, 0.004330),(0.703511, 0.703511, 0.000000),(0.787633, 0.607945, 0.000000),(0.788163, 0.608354, 0.002500),(0.703511, 0.703511, 0.000000),(0.788163, 0.608354, 0.002500),(0.703985, 0.703985, 0.002500),(0.703985, 0.703985, -0.002500),(0.788163, 0.608354, -0.002500),(0.787633, 0.607945, 0.000000),(0.703985, 0.703985, -0.002500),(0.787633, 0.607945, 0.000000),(0.703511, 0.703511, 0.000000),(0.705279, 0.705279, -0.004330),(0.789611, 0.609474, -0.004330),(0.788163, 0.608354, -0.002500),(0.705279, 0.705279, -0.004330),(0.788163, 0.608354, -0.002500),(0.703985, 0.703985, -0.002500),(0.707047, 0.707047, -0.005000),(0.791589, 0.611002, -0.005000),(0.789611, 0.609474, -0.004330),(0.707047, 0.707047, -0.005000),(0.789611, 0.609474, -0.004330),(0.705279, 0.705279, -0.004330),(0.793567, 0.612531, -0.004330),(0.865593, 0.505911, -0.004330),(0.863435, 0.504648, -0.005000),(0.793567, 0.612531, -0.004330),(0.863435, 0.504648, -0.005000),(0.791589, 0.611002, -0.005000),(0.795015, 0.613650, -0.002500),(0.867172, 0.506836, -0.002500),(0.865593, 0.505911, -0.004330),(0.795015, 0.613650, -0.002500),(0.865593, 0.505911, -0.004330),(0.793567, 0.612531, -0.004330),(0.795545, 0.614060, -0.000000),(0.867750, 0.507174, -0.000000),(0.867172, 0.506836, -0.002500),(0.795545, 0.614060, -0.000000),(0.867172, 0.506836, -0.002500),(0.795015, 0.613650, -0.002500),(0.795015, 0.613650, 0.002500),(0.867172, 0.506836, 0.002500),(0.867750, 0.507174, -0.000000),(0.795015, 0.613650, 0.002500),(0.867750, 0.507174, -0.000000),(0.795545, 0.614060, -0.000000),(0.793567, 0.612531, 0.004330),(0.865593, 0.505911, 0.004330),(0.867172, 0.506836, 0.002500),(0.793567, 0.612531, 0.004330),(0.867172, 0.506836, 0.002500),(0.795015, 0.613650, 0.002500),(0.791589, 0.611002, 0.005000),(0.863435, 0.504648, 0.005000),(0.865593, 0.505911, 0.004330),(0.791589, 0.611002, 0.005000),(0.865593, 0.505911, 0.004330),(0.793567, 0.612531, 0.004330),(0.789611, 0.609474, 0.004330),(0.861278, 0.503385, 0.004330),(0.863435, 0.504648, 0.005000),(0.789611, 0.609474, 0.004330),(0.863435, 0.504648, 0.005000),(0.791589, 0.611002, 0.005000),(0.788163, 0.608354, 0.002500),(0.859698, 0.502460, 0.002500),(0.861278, 0.503385, 0.004330),(0.788163, 0.608354, 0.002500),(0.861278, 0.503385, 0.004330),(0.789611, 0.609474, 0.004330),(0.787633, 0.607945, 0.000000),(0.859120, 0.502122, 0.000000),(0.859698, 0.502460, 0.002500),(0.787633, 0.607945, 0.000000),(0.859698, 0.502460, 0.002500),(0.788163, 0.608354, 0.002500),(0.788163, 0.608354, -0.002500),(0.859698, 0.502460, -0.002500),(0.859120, 0.502122, 0.000000),(0.788163, 0.608354, -0.002500),(0.859120, 0.502122, 0.000000),(0.787633, 0.607945, 0.000000),(0.789611, 0.609474, -0.004330),(0.861278, 0.503385, -0.004330),(0.859698, 0.502460, -0.002500),(0.789611, 0.609474, -0.004330),(0.859698, 0.502460, -0.002500),(0.788163, 0.608354, -0.002500),(0.791589, 0.611002, -0.005000),(0.863435, 0.504648, -0.005000),(0.861278, 0.503385, -0.004330),(0.791589, 0.611002, -0.005000),(0.861278, 0.503385, -0.004330),(0.789611, 0.609474, -0.004330),(0.865593, 0.505911, -0.004330),(0.923695, 0.390151, -0.004330),(0.921392, 0.389178, -0.005000),(0.865593, 0.505911, -0.004330),(0.921392, 0.389178, -0.005000),(0.863435, 0.504648, -0.005000),(0.867172, 0.506836, -0.002500),(0.925381, 0.390863, -0.002500),(0.923695, 0.390151, -0.004330),(0.867172, 0.506836, -0.002500),(0.923695, 0.390151, -0.004330),(0.865593, 0.505911, -0.004330),(0.867750, 0.507174, -0.000000),(0.925998, 0.391124, -0.000000),(0.925381, 0.390863, -0.002500),(0.867750, 0.507174, -0.000000),(0.925381, 0.390863, -0.002500),(0.867172, 0.506836, -0.002500),(0.867172, 0.506836, 0.002500),(0.925381, 0.390863, 0.002500),(0.925998, 0.391124, -0.000000),(0.867172, 0.506836, 0.002500),(0.925998, 0.391124, -0.000000),(0.867750, 0.507174, -0.000000),(0.865593, 0.505911, 0.004330),(0.923695, 0.390151, 0.004330),(0.925381, 0.390863, 0.002500),(0.865593, 0.505911, 0.004330),(0.925381, 0.390863, 0.002500),(0.867172, 0.506836, 0.002500),(0.863435, 0.504648, 0.005000),(0.921392, 0.389178, 0.005000),(0.923695, 0.390151, 0.004330),(0.863435, 0.504648, 0.005000),(0.923695, 0.390151, 0.004330),(0.865593, 0.505911, 0.004330),(0.861278, 0.503385, 0.004330),(0.919090, 0.388205, 0.004330),(0.921392, 0.389178, 0.005000),(0.861278, 0.503385, 0.004330),(0.921392, 0.389178, 0.005000),(0.863435, 0.504648, 0.005000),(0.859698, 0.502460, 0.002500),(0.917404, 0.387492, 0.002500),(0.919090, 0.388205, 0.004330),(0.859698, 0.502460, 0.002500),(0.919090, 0.388205, 0.004330),(0.861278, 0.503385, 0.004330),(0.859120, 0.502122, 0.000000),(0.916787, 0.387232, 0.000000),(0.917404, 0.387492, 0.002500),(0.859120, 0.502122, 0.000000),(0.917404, 0.387492, 0.002500),(0.859698, 0.502460, 0.002500),(0.859698, 0.502460, -0.002500),(0.917404, 0.387492, -0.002500),(0.916787, 0.387232, 0.000000),(0.859698, 0.502460, -0.002500),(0.916787, 0.387232, 0.000000),(0.859120, 0.502122, 0.000000),(0.861278, 0.503385, -0.004330),(0.919090, 0.388205, -0.004330),(0.917404, 0.387492, -0.002500),(0.861278, 0.503385, -0.004330),(0.917404, 0.387492, -0.002500),(0.859698, 0.502460, -0.002500),(0.863435, 0.504648, -0.005000),(0.921392, 0.389178, -0.005000),(0.919090, 0.388205, -0.004330),(0.863435, 0.504648, -0.005000),(0.919090, 0.388205, -0.004330),(0.861278, 0.503385, -0.004330),(0.923695, 0.390151, -0.004330),(0.966679, 0.266446, -0.004330),(0.964268, 0.265784, -0.005000),(0.923695, 0.390151, -0.004330),(0.964268, 0.265784, -0.005000),(0.921392, 0.389178, -0.005000),(0.925381, 0.390863, -0.002500),(0.968443, 0.266931, -0.002500),(0.966679, 0.266446, -0.004330),(0.925381, 0.390863, -0.002500),(0.966679, 0.266446, -0.004330),(0.923695, 0.390151, -0.004330),(0.925998, 0.391124, -0.000000),(0.969089, 0.267108, -0.000000),(0.968443, 0.266931, -0.002500),(0.925998, 0.391124, -0.000000),(0.968443, 0.266931, -0.002500),(0.925381, 0.390863, -0.002500),(0.925381, 0.390863, 0.002500),(0.968443, 0.266931, 0.002500),(0.969089, 0.267108, -0.000000),(0.925381, 0.390863, 0.002500),(0.969089, 0.267108, -0.000000),(0.925998, 0.391124, -0.000000),(0.923695, 0.390151, 0.004330),(0.966679, 0.266446, 0.004330),(0.968443, 0.266931, 0.002500),(0.923695, 0.390151, 0.004330),(0.968443, 0.266931, 0.002500),(0.925381, 0.390863, 0.002500),(0.921392, 0.389178, 0.005000),(0.964268, 0.265784, 0.005000),(0.966679, 0.266446, 0.004330),(0.921392, 0.389178, 0.005000),(0.966679, 0.266446, 0.004330),(0.923695, 0.390151, 0.004330),(0.919090, 0.388205, 0.004330),(0.961857, 0.265122, 0.004330),(0.964268, 0.265784, 0.005000),(0.919090, 0.388205, 0.004330),(0.964268, 0.265784, 0.005000),(0.921392, 0.389178, 0.005000),(0.917404, 0.387492, 0.002500),(0.960092, 0.264637, 0.002500),(0.961857, 0.265122, 0.004330),(0.917404, 0.387492, 0.002500),(0.961857, 0.265122, 0.004330),(0.919090, 0.388205, 0.004330),(0.916787, 0.387232, 0.000000),(0.959446, 0.264460, 0.000000),(0.960092, 0.264637, 0.002500),(0.916787, 0.387232, 0.000000),(0.960092, 0.264637, 0.002500),(0.917404, 0.387492, 0.002500),(0.917404, 0.387492, -0.002500),(0.960092, 0.264637, -0.002500),(0.959446, 0.264460, 0.000000),(0.917404, 0.387492, -0.002500),(0.959446, 0.264460, 0.000000),(0.916787, 0.387232, 0.000000),(0.919090, 0.388205, -0.004330),(0.961857, 0.265122, -0.004330),(0.960092, 0.264637, -0.002500),(0.919090, 0.388205, -0.004330),(0.960092, 0.264637, -0.002500),(0.917404, 0.387492, -0.002500),(0.921392, 0.389178, -0.005000),(0.964268, 0.265784, -0.005000),(0.961857, 0.265122, -0.004330),(0.921392, 0.389178, -0.005000),(0.961857, 0.265122, -0.004330),(0.919090, 0.388205, -0.004330),(0.966679, 0.266446, -0.004330),(0.993345, 0.135996, -0.004330),(0.990868, 0.135661, -0.005000),(0.966679, 0.266446, -0.004330),(0.990868, 0.135661, -0.005000),(0.964268, 0.265784, -0.005000),(0.968443, 0.266931, -0.002500),(0.995159, 0.136241, -0.002500),(0.993345, 0.135996, -0.004330),(0.968443, 0.266931, -0.002500),(0.993345, 0.135996, -0.004330),(0.966679, 0.266446, -0.004330),(0.969089, 0.267108, -0.000000),(0.995823, 0.136331, -0.000000),(0.995159, 0.136241, -0.002500),(0.969089, 0.267108, -0.000000),(0.995159, 0.136241, -0.002500),(0.968443, 0.266931, -0.002500),(0.968443, 0.266931, 0.002500),(0.995159, 0.136241, 0.002500),(0.995823, 0.136331, -0.000000),(0.968443, 0.266931, 0.002500),(0.995823, 0.136331, -0.000000),(0.969089, 0.267108, -0.000000),(0.966679, 0.266446, 0.004330),(0.993345, 0.135996, 0.004330),(0.995159, 0.136241, 0.002500),(0.966679, 0.266446, 0.004330),(0.995159, 0.136241, 0.002500),(0.968443, 0.266931, 0.002500),(0.964268, 0.265784, 0.005000),(0.990868, 0.135661, 0.005000),(0.993345, 0.135996, 0.004330),(0.964268, 0.265784, 0.005000),(0.993345, 0.135996, 0.004330),(0.966679, 0.266446, 0.004330),(0.961857, 0.265122, 0.004330),(0.988391, 0.135325, 0.004330),(0.990868, 0.135661, 0.005000),(0.961857, 0.265122, 0.004330),(0.990868, 0.135661, 0.005000),(0.964268, 0.265784, 0.005000),(0.960092, 0.264637, 0.002500),(0.986577, 0.135080, 0.002500),(0.988391, 0.135325, 0.004330),(0.960092, 0.264637, 0.002500),(0.988391, 0.135325, 0.004330),(0.961857, 0.265122, 0.004330),(0.959446, 0.264460, 0.000000),(0.985913, 0.134990, 0.000000),(0.986577, 0.135080, 0.002500),(0.959446, 0.264460, 0.000000),(0.986577, 0.135080, 0.002500),(0.960092, 0.264637, 0.002500),(0.960092, 0.264637, -0.002500),(0.986577, 0.135080, -0.002500),(0.985913, 0.134990, 0.000000),(0.960092, 0.264637, -0.002500),(0.985913, 0.134990, 0.000000),(0.959446, 0.264460, 0.000000),(0.961857, 0.265122, -0.004330),(0.988391, 0.135325, -0.004330),(0.986577, 0.135080, -0.002500),(0.961857, 0.265122, -0.004330),(0.986577, 0.135080, -0.002500),(0.960092, 0.264637, -0.002500),(0.964268, 0.265784, -0.005000),(0.990868, 0.135661, -0.005000),(0.988391, 0.135325, -0.004330),(0.964268, 0.265784, -0.005000),(0.988391, 0.135325, -0.004330),(0.961857, 0.265122, -0.004330),(0.993345, 0.135996, -0.004330),(1.002500, 0.000000, -0.004330),(1.000000, -0.000000, -0.005000),(0.993345, 0.135996, -0.004330),(1.000000, -0.000000, -0.005000),(0.990868, 0.135661, -0.005000),(0.995159, 0.136241, -0.002500),(1.004330, 0.000000, -0.002500),(1.002500, 0.000000, -0.004330),(0.995159, 0.136241, -0.002500),(1.002500, 0.000000, -0.004330),(0.993345, 0.135996, -0.004330),(0.995823, 0.136331, -0.000000),(1.005000, 0.000000, -0.000000),(1.004330, 0.000000, -0.002500),(0.995823, 0.136331, -0.000000),(1.004330, 0.000000, -0.002500),(0.995159, 0.136241, -0.002500),(0.995159, 0.136241, 0.002500),(1.004330, 0.000000, 0.002500),(1.005000, 0.000000, -0.000000),(0.995159, 0.136241, 0.002500),(1.005000, 0.000000, -0.000000),(0.995823, 0.136331, -0.000000),(0.993345, 0.135996, 0.004330),(1.002500, 0.000000, 0.004330),(1.004330, 0.000000, 0.002500),(0.993345, 0.135996, 0.004330),(1.004330, 0.000000, 0.002500),(0.995159, 0.136241, 0.002500),(0.990868, 0.135661, 0.005000),(1.000000, 0.000000, 0.005000),(1.002500, 0.000000, 0.004330),(0.990868, 0.135661, 0.005000),(1.002500, 0.000000, 0.004330),(0.993345, 0.135996, 0.004330),(0.988391, 0.135325, 0.004330),(0.997500, -0.000000, 0.004330),(1.000000, 0.000000, 0.005000),(0.988391, 0.135325, 0.004330),(1.000000, 0.000000, 0.005000),(0.990868, 0.135661, 0.005000),(0.986577, 0.135080, 0.002500),(0.995670, -0.000000, 0.002500),(0.997500, -0.000000, 0.004330),(0.986577, 0.135080, 0.002500),(0.997500, -0.000000, 0.004330),(0.988391, 0.135325, 0.004330),(0.985913, 0.134990, 0.000000),(0.995000, -0.000000, 0.000000),(0.995670, -0.000000, 0.002500),(0.985913, 0.134990, 0.000000),(0.995670, -0.000000, 0.002500),(0.986577, 0.135080, 0.002500),(0.986577, 0.135080, -0.002500),(0.995670, -0.000000, -0.002500),(0.995000, -0.000000, 0.000000),(0.986577, 0.135080, -0.002500),(0.995000, -0.000000, 0.000000),(0.985913, 0.134990, 0.000000),(0.988391, 0.135325, -0.004330),(0.997500, -0.000000, -0.004330),(0.995670, -0.000000, -0.002500),(0.988391, 0.135325, -0.004330),(0.995670, -0.000000, -0.002500),(0.986577, 0.135080, -0.002500),(0.990868, 0.135661, -0.005000),(1.000000, -0.000000, -0.005000),(0.997500, -0.000000, -0.004330),(0.990868, 0.135661, -0.005000),(0.997500, -0.000000, -0.004330),(0.988391, 0.135325, -0.004330),(1.002500, 0.000000, -0.004330),(0.993346, -0.135996, -0.004330),(0.990868, -0.135661, -0.005000),(1.002500, 0.000000, -0.004330),(0.990868, -0.135661, -0.005000),(1.000000, -0.000000, -0.005000),(1.004330, 0.000000, -0.002500),(0.995159, -0.136241, -0.002500),(0.993346, -0.135996, -0.004330),(1.004330, 0.000000, -0.002500),(0.993346, -0.135996, -0.004330),(1.002500, 0.000000, -0.004330),(1.005000, 0.000000, -0.000000),(0.995823, -0.136331, -0.000000),(0.995159, -0.136241, -0.002500),(1.005000, 0.000000, -0.000000),(0.995159, -0.136241, -0.002500),(1.004330, 0.000000, -0.002500),(1.004330, 0.000000, 0.002500),(0.995159, -0.136241, 0.002500),(0.995823, -0.136331, -0.000000),(1.004330, 0.000000, 0.002500),(0.995823, -0.136331, -0.000000),(1.005000, 0.000000, -0.000000),(1.002500, 0.000000, 0.004330),(0.993346, -0.135996, 0.004330),(0.995159, -0.136241, 0.002500),(1.002500, 0.000000, 0.004330),(0.995159, -0.136241, 0.002500),(1.004330, 0.000000, 0.002500),(1.000000, 0.000000, 0.005000),(0.990868, -0.135661, 0.005000),(0.993346, -0.135996, 0.004330),(1.000000, 0.000000, 0.005000),(0.993346, -0.135996, 0.004330),(1.002500, 0.000000, 0.004330),(0.997500, -0.000000, 0.004330),(0.988391, -0.135325, 0.004330),(0.990868, -0.135661, 0.005000),(0.997500, -0.000000, 0.004330),(0.990868, -0.135661, 0.005000),(1.000000, 0.000000, 0.005000),(0.995670, -0.000000, 0.002500),(0.986577, -0.135080, 0.002500),(0.988391, -0.135325, 0.004330),(0.995670, -0.000000, 0.002500),(0.988391, -0.135325, 0.004330),(0.997500, -0.000000, 0.004330),(0.995000, -0.000000, 0.000000),(0.985913, -0.134990, 0.000000),(0.986577, -0.135080, 0.002500),(0.995000, -0.000000, 0.000000),(0.986577, -0.135080, 0.002500),(0.995670, -0.000000, 0.002500),(0.995670, -0.000000, -0.002500),(0.986577, -0.135080, -0.002500),(0.985913, -0.134990, 0.000000),(0.995670, -0.000000, -0.002500),(0.985913, -0.134990, 0.000000),(0.995000, -0.000000, 0.000000),(0.997500, -0.000000, -0.004330),(0.988391, -0.135325, -0.004330),(0.986577, -0.135080, -0.002500),(0.997500, -0.000000, -0.004330),(0.986577, -0.135080, -0.002500),(0.995670, -0.000000, -0.002500),(1.000000, -0.000000, -0.005000),(0.990868, -0.135661, -0.005000),(0.988391, -0.135325, -0.004330),(1.000000, -0.000000, -0.005000),(0.988391, -0.135325, -0.004330),(0.997500, -0.000000, -0.004330),(0.993346, -0.135996, -0.004330),(0.966679, -0.266446, -0.004330),(0.964268, -0.265784, -0.005000),(0.993346, -0.135996, -0.004330),(0.964268, -0.265784, -0.005000),(0.990868, -0.135661, -0.005000),(0.995159, -0.136241, -0.002500),(0.968443, -0.266931, -0.002500),(0.966679, -0.266446, -0.004330),(0.995159, -0.136241, -0.002500),(0.966679, -0.266446, -0.004330),(0.993346, -0.135996, -0.004330),(0.995823, -0.136331, -0.000000),(0.969089, -0.267108, -0.000000),(0.968443, -0.266931, -0.002500),(0.995823, -0.136331, -0.000000),(0.968443, -0.266931, -0.002500),(0.995159, -0.136241, -0.002500),(0.995159, -0.136241, 0.002500),(0.968443, -0.266931, 0.002500),(0.969089, -0.267108, -0.000000),(0.995159, -0.136241, 0.002500),(0.969089, -0.267108, -0.000000),(0.995823, -0.136331, -0.000000),(0.993346, -0.135996, 0.004330),(0.966679, -0.266446, 0.004330),(0.968443, -0.266931, 0.002500),(0.993346, -0.135996, 0.004330),(0.968443, -0.266931, 0.002500),(0.995159, -0.136241, 0.002500),(0.990868, -0.135661, 0.005000),(0.964268, -0.265784, 0.005000),(0.966679, -0.266446, 0.004330),(0.990868, -0.135661, 0.005000),(0.966679, -0.266446, 0.004330),(0.993346, -0.135996, 0.004330),(0.988391, -0.135325, 0.004330),(0.961857, -0.265122, 0.004330),(0.964268, -0.265784, 0.005000),(0.988391, -0.135325, 0.004330),(0.964268, -0.265784, 0.005000),(0.990868, -0.135661, 0.005000),(0.986577, -0.135080, 0.002500),(0.960092, -0.264637, 0.002500),(0.961857, -0.265122, 0.004330),(0.986577, -0.135080, 0.002500),(0.961857, -0.265122, 0.004330),(0.988391, -0.135325, 0.004330),(0.985913, -0.134990, 0.000000),(0.959446, -0.264460, 0.000000),(0.960092, -0.264637, 0.002500),(0.985913, -0.134990, 0.000000),(0.960092, -0.264637, 0.002500),(0.986577, -0.135080, 0.002500),(0.986577, -0.135080, -0.002500),(0.960092, -0.264637, -0.002500),(0.959446, -0.264460, 0.000000),(0.986577, -0.135080, -0.002500),(0.959446, -0.264460, 0.000000),(0.985913, -0.134990, 0.000000),(0.988391, -0.135325, -0.004330),(0.961857, -0.265122, -0.004330),(0.960092, -0.264637, -0.002500),(0.988391, -0.135325, -0.004330),(0.960092, -0.264637, -0.002500),(0.986577, -0.135080, -0.002500),(0.990868, -0.135661, -0.005000),(0.964268, -0.265784, -0.005000),(0.961857, -0.265122, -0.004330),(0.990868, -0.135661, -0.005000),(0.961857, -0.265122, -0.004330),(0.988391, -0.135325, -0.004330),(0.966679, -0.266446, -0.004330),(0.923695, -0.390151, -0.004330),(0.921393, -0.389178, -0.005000),(0.966679, -0.266446, -0.004330),(0.921393, -0.389178, -0.005000),(0.964268, -0.265784, -0.005000),(0.968443, -0.266931, -0.002500),(0.925381, -0.390863, -0.002500),(0.923695, -0.390151, -0.004330),(0.968443, -0.266931, -0.002500),(0.923695, -0.390151, -0.004330),(0.966679, -0.266446, -0.004330),(0.969089, -0.267108, -0.000000),(0.925998, -0.391124, -0.000000),(0.925381, -0.390863, -0.002500),(0.969089, -0.267108, -0.000000),(0.925381, -0.390863, -0.002500),(0.968443, -0.266931, -0.002500),(0.968443, -0.266931, 0.002500),(0.925381, -0.390863, 0.002500),(0.925998, -0.391124, -0.000000),(0.968443, -0.266931, 0.002500),(0.925998, -0.391124, -0.000000),(0.969089, -0.267108, -0.000000),(0.966679, -0.266446, 0.004330),(0.923695, -0.390151, 0.004330),(0.925381, -0.390863, 0.002500),(0.966679, -0.266446, 0.004330),(0.925381, -0.390863, 0.002500),(0.968443, -0.266931, 0.002500),(0.964268, -0.265784, 0.005000),(0.921393, -0.389178, 0.005000),(0.923695, -0.390151, 0.004330),(0.964268, -0.265784, 0.005000),(0.923695, -0.390151, 0.004330),(0.966679, -0.266446, 0.004330),(0.961857, -0.265122, 0.004330),(0.919090, -0.388205, 0.004330),(0.921393, -0.389178, 0.005000),(0.961857, -0.265122, 0.004330),(0.921393, -0.389178, 0.005000),(0.964268, -0.265784, 0.005000),(0.960092, -0.264637, 0.002500),(0.917404, -0.387492, 0.002500),(0.919090, -0.388205, 0.004330),(0.960092, -0.264637, 0.002500),(0.919090, -0.388205, 0.004330),(0.961857, -0.265122, 0.004330),(0.959446, -0.264460, 0.000000),(0.916787, -0.387232, 0.000000),(0.917404, -0.387492, 0.002500),(0.959446, -0.264460, 0.000000),(0.917404, -0.387492, 0.002500),(0.960092, -0.264637, 0.002500),(0.960092, -0.264637, -0.002500),(0.917404, -0.387492, -0.002500),(0.916787, -0.387232, 0.000000),(0.960092, -0.264637, -0.002500),(0.916787, -0.387232, 0.000000),(0.959446, -0.264460, 0.000000),(0.961857, -0.265122, -0.004330),(0.919090, -0.388205, -0.004330),(0.917404, -0.387492, -0.002500),(0.961857, -0.265122, -0.004330),(0.917404, -0.387492, -0.002500),(0.960092, -0.264637, -0.002500),(0.964268, -0.265784, -0.005000),(0.921393, -0.389178, -0.005000),(0.919090, -0.388205, -0.004330),(0.964268, -0.265784, -0.005000),(0.919090, -0.388205, -0.004330),(0.961857, -0.265122, -0.004330),(0.923695, -0.390151, -0.004330),(0.865593, -0.505911, -0.004330),(0.863435, -0.504648, -0.005000),(0.923695, -0.390151, -0.004330),(0.863435, -0.504648, -0.005000),(0.921393, -0.389178, -0.005000),(0.925381, -0.390863, -0.002500),(0.867172, -0.506836, -0.002500),(0.865593, -0.505911, -0.004330),(0.925381, -0.390863, -0.002500),(0.865593, -0.505911, -0.004330),(0.923695, -0.390151, -0.004330),(0.925998, -0.391124, -0.000000),(0.867750, -0.507174, -0.000000),(0.867172, -0.506836, -0.002500),(0.925998, -0.391124, -0.000000),(0.867172, -0.506836, -0.002500),(0.925381, -0.390863, -0.002500),(0.925381, -0.390863, 0.002500),(0.867172, -0.506836, 0.002500),(0.867750, -0.507174, -0.000000),(0.925381, -0.390863, 0.002500),(0.867750, -0.507174, -0.000000),(0.925998, -0.391124, -0.000000),(0.923695, -0.390151, 0.004330),(0.865593, -0.505911, 0.004330),(0.867172, -0.506836, 0.002500),(0.923695, -0.390151, 0.004330),(0.867172, -0.506836, 0.002500),(0.925381, -0.390863, 0.002500),(0.921393, -0.389178, 0.005000),(0.863435, -0.504648, 0.005000),(0.865593, -0.505911, 0.004330),(0.921393, -0.389178, 0.005000),(0.865593, -0.505911, 0.004330),(0.923695, -0.390151, 0.004330),(0.919090, -0.388205, 0.004330),(0.861278, -0.503385, 0.004330),(0.863435, -0.504648, 0.005000),(0.919090, -0.388205, 0.004330),(0.863435, -0.504648, 0.005000),(0.921393, -0.389178, 0.005000),(0.917404, -0.387492, 0.002500),(0.859698, -0.502460, 0.002500),(0.861278, -0.503385, 0.004330),(0.917404, -0.387492, 0.002500),(0.861278, -0.503385, 0.004330),(0.919090, -0.388205, 0.004330),(0.916787, -0.387232, 0.000000),(0.859120, -0.502122, 0.000000),(0.859698, -0.502460, 0.002500),(0.916787, -0.387232, 0.000000),(0.859698, -0.502460, 0.002500),(0.917404, -0.387492, 0.002500),(0.917404, -0.387492, -0.002500),(0.859698, -0.502460, -0.002500),(0.859120, -0.502122, 0.000000),(0.917404, -0.387492, -0.002500),(0.859120, -0.502122, 0.000000),(0.916787, -0.387232, 0.000000),(0.919090, -0.388205, -0.004330),(0.861278, -0.503385, -0.004330),(0.859698, -0.502460, -0.002500),(0.919090, -0.388205, -0.004330),(0.859698, -0.502460, -0.002500),(0.917404, -0.387492, -0.002500),(0.921393, -0.389178, -0.005000),(0.863435, -0.504648, -0.005000),(0.861278, -0.503385, -0.004330),(0.921393, -0.389178, -0.005000),(0.861278, -0.503385, -0.004330),(0.919090, -0.388205, -0.004330),(0.865593, -0.505911, -0.004330),(0.793567, -0.612531, -0.004330),(0.791589, -0.611002, -0.005000),(0.865593, -0.505911, -0.004330),(0.791589, -0.611002, -0.005000),(0.863435, -0.504648, -0.005000),(0.867172, -0.506836, -0.002500),(0.795015, -0.613650, -0.002500),(0.793567, -0.612531, -0.004330),(0.867172, -0.506836, -0.002500),(0.793567, -0.612531, -0.004330),(0.865593, -0.505911, -0.004330),(0.867750, -0.507174, -0.000000),(0.795545, -0.614060, -0.000000),(0.795015, -0.613650, -0.002500),(0.867750, -0.507174, -0.000000),(0.795015, -0.613650, -0.002500),(0.867172, -0.506836, -0.002500),(0.867172, -0.506836, 0.002500),(0.795015, -0.613650, 0.002500),(0.795545, -0.614060, -0.000000),(0.867172, -0.506836, 0.002500),(0.795545, -0.614060, -0.000000),(0.867750, -0.507174, -0.000000),(0.865593, -0.505911, 0.004330),(0.793567, -0.612531, 0.004330),(0.795015, -0.613650, 0.002500),(0.865593, -0.505911, 0.004330),(0.795015, -0.613650, 0.002500),(0.867172, -0.506836, 0.002500),(0.863435, -0.504648, 0.005000),(0.791589, -0.611002, 0.005000),(0.793567, -0.612531, 0.004330),(0.863435, -0.504648, 0.005000),(0.793567, -0.612531, 0.004330),(0.865593, -0.505911, 0.004330),(0.861278, -0.503385, 0.004330),(0.789611, -0.609473, 0.004330),(0.791589, -0.611002, 0.005000),(0.861278, -0.503385, 0.004330),(0.791589, -0.611002, 0.005000),(0.863435, -0.504648, 0.005000),(0.859698, -0.502460, 0.002500),(0.788163, -0.608354, 0.002500),(0.789611, -0.609473, 0.004330),(0.859698, -0.502460, 0.002500),(0.789611, -0.609473, 0.004330),(0.861278, -0.503385, 0.004330),(0.859120, -0.502122, 0.000000),(0.787633, -0.607945, 0.000000),(0.788163, -0.608354, 0.002500),(0.859120, -0.502122, 0.000000),(0.788163, -0.608354, 0.002500),(0.859698, -0.502460, 0.002500),(0.859698, -0.502460, -0.002500),(0.788163, -0.608354, -0.002500),(0.787633, -0.607945, 0.000000),(0.859698, -0.502460, -0.002500),(0.787633, -0.607945, 0.000000),(0.859120, -0.502122, 0.000000),(0.861278, -0.503385, -0.004330),(0.789611, -0.609473, -0.004330),(0.788163, -0.608354, -0.002500),(0.861278, -0.503385, -0.004330),(0.788163, -0.608354, -0.002500),(0.859698, -0.502460, -0.002500),(0.863435, -0.504648, -0.005000),(0.791589, -0.611002, -0.005000),(0.789611, -0.609473, -0.004330),(0.863435, -0.504648, -0.005000),(0.789611, -0.609473, -0.004330),(0.861278, -0.503385, -0.004330),(0.793567, -0.612531, -0.004330),(0.708815, -0.708815, -0.004330),(0.707047, -0.707047, -0.005000),(0.793567, -0.612531, -0.004330),(0.707047, -0.707047, -0.005000),(0.791589, -0.611002, -0.005000),(0.795015, -0.613650, -0.002500),(0.710109, -0.710109, -0.002500),(0.708815, -0.708815, -0.004330),(0.795015, -0.613650, -0.002500),(0.708815, -0.708815, -0.004330),(0.793567, -0.612531, -0.004330),(0.795545, -0.614060, -0.000000),(0.710582, -0.710582, -0.000000),(0.710109, -0.710109, -0.002500),(0.795545, -0.614060, -0.000000),(0.710109, -0.710109, -0.002500),(0.795015, -0.613650, -0.002500),(0.795015, -0.613650, 0.002500),(0.710109, -0.710109, 0.002500),(0.710582, -0.710582, -0.000000),(0.795015, -0.613650, 0.002500),(0.710582, -0.710582, -0.000000),(0.795545, -0.614060, -0.000000),(0.793567, -0.612531, 0.004330),(0.708815, -0.708815, 0.004330),(0.710109, -0.710109, 0.002500),(0.793567, -0.612531, 0.004330),(0.710109, -0.710109, 0.002500),(0.795015, -0.613650, 0.002500),(0.791589, -0.611002, 0.005000),(0.707047, -0.707047, 0.005000),(0.708815, -0.708815, 0.004330),(0.791589, -0.611002, 0.005000),(0.708815, -0.708815, 0.004330),(0.793567, -0.612531, 0.004330),(0.789611, -0.609473, 0.004330),(0.705279, -0.705279, 0.004330),(0.707047, -0.707047, 0.005000),(0.789611, -0.609473, 0.004330),(0.707047, -0.707047, 0.005000),(0.791589, -0.611002, 0.005000),(0.788163, -0.608354, 0.002500),(0.703985, -0.703985, 0.002500),(0.705279, -0.705279, 0.004330),(0.788163, -0.608354, 0.002500),(0.705279, -0.705279, 0.004330),(0.789611, -0.609473, 0.004330),(0.787633, -0.607945, 0.000000),(0.703511, -0.703511, 0.000000),(0.703985, -0.703985, 0.002500),(0.787633, -0.607945, 0.000000),(0.703985, -0.703985, 0.002500),(0.788163, -0.608354, 0.002500),(0.788163, -0.608354, -0.002500),(0.703985, -0.703985, -0.002500),(0.703511, -0.703511, 0.000000),(0.788163, -0.608354, -0.002500),(0.703511, -0.703511, 0.000000),(0.787633, -0.607945, 0.000000),(0.789611, -0.609473, -0.004330),(0.705279, -0.705279, -0.004330),(0.703985, -0.703985, -0.002500),(0.789611, -0.609473, -0.004330),(0.703985, -0.703985, -0.002500),(0.788163, -0.608354, -0.002500),(0.791589, -0.611002, -0.005000),(0.707047, -0.707047, -0.005000),(0.705279, -0.705279, -0.004330),(0.791589, -0.611002, -0.005000),(0.705279, -0.705279, -0.004330),(0.789611, -0.609473, -0.004330),(0.708815, -0.708815, -0.004330),(0.612531, -0.793567, -0.004330),(0.611002, -0.791589, -0.005000),(0.708815, -0.708815, -0.004330),(0.611002, -0.791589, -0.005000),(0.707047, -0.707047, -0.005000),(0.710109, -0.710109, -0.002500),(0.613650, -0.795015, -0.002500),(0.612531, -0.793567, -0.004330),(0.710109, -0.710109, -0.002500),(0.612531, -0.793567, -0.004330),(0.708815, -0.708815, -0.004330),(0.710582, -0.710582, -0.000000),(0.614060, -0.795545, -0.000000),(0.613650, -0.795015, -0.002500),(0.710582, -0.710582, -0.000000),(0.613650, -0.795015, -0.002500),(0.710109, -0.710109, -0.002500),(0.710109, -0.710109, 0.002500),(0.613650, -0.795015, 0.002500),(0.614060, -0.795545, -0.000000),(0.710109, -0.710109, 0.002500),(0.614060, -0.795545, -0.000000),(0.710582, -0.710582, -0.000000),(0.708815, -0.708815, 0.004330),(0.612531, -0.793567, 0.004330),(0.613650, -0.795015, 0.002500),(0.708815, -0.708815, 0.004330),(0.613650, -0.795015, 0.002500),(0.710109, -0.710109, 0.002500),(0.707047, -0.707047, 0.005000),(0.611002, -0.791589, 0.005000),(0.612531, -0.793567, 0.004330),(0.707047, -0.707047, 0.005000),(0.612531, -0.793567, 0.004330),(0.708815, -0.708815, 0.004330),(0.705279, -0.705279, 0.004330),(0.609474, -0.789611, 0.004330),(0.611002, -0.791589, 0.005000),(0.705279, -0.705279, 0.004330),(0.611002, -0.791589, 0.005000),(0.707047, -0.707047, 0.005000),(0.703985, -0.703985, 0.002500),(0.608354, -0.788163, 0.002500),(0.609474, -0.789611, 0.004330),(0.703985, -0.703985, 0.002500),(0.609474, -0.789611, 0.004330),(0.705279, -0.705279, 0.004330),(0.703511, -0.703511, 0.000000),(0.607945, -0.787633, 0.000000),(0.608354, -0.788163, 0.002500),(0.703511, -0.703511, 0.000000),(0.608354, -0.788163, 0.002500),(0.703985, -0.703985, 0.002500),(0.703985, -0.703985, -0.002500),(0.608354, -0.788163, -0.002500),(0.607945, -0.787633, 0.000000),(0.703985, -0.703985, -0.002500),(0.607945, -0.787633, 0.000000),(0.703511, -0.703511, 0.000000),(0.705279, -0.705279, -0.004330),(0.609474, -0.789611, -0.004330),(0.608354, -0.788163, -0.002500),(0.705279, -0.705279, -0.004330),(0.608354, -0.788163, -0.002500),(0.703985, -0.703985, -0.002500),(0.707047, -0.707047, -0.005000),(0.611002, -0.791589, -0.005000),(0.609474, -0.789611, -0.004330),(0.707047, -0.707047, -0.005000),(0.609474, -0.789611, -0.004330),(0.705279, -0.705279, -0.004330),(0.612531, -0.793567, -0.004330),(0.505911, -0.865593, -0.004330),(0.504648, -0.863435, -0.005000),(0.612531, -0.793567, -0.004330),(0.504648, -0.863435, -0.005000),(0.611002, -0.791589, -0.005000),(0.613650, -0.795015, -0.002500),(0.506836, -0.867172, -0.002500),(0.505911, -0.865593, -0.004330),(0.613650, -0.795015, -0.002500),(0.505911, -0.865593, -0.004330),(0.612531, -0.793567, -0.004330),(0.614060, -0.795545, -0.000000),(0.507174, -0.867750, -0.000000),(0.506836, -0.867172, -0.002500),(0.614060, -0.795545, -0.000000),(0.506836, -0.867172, -0.002500),(0.613650, -0.795015, -0.002500),(0.613650, -0.795015, 0.002500),(0.506836, -0.867172, 0.002500),(0.507174, -0.867750, -0.000000),(0.613650, -0.795015, 0.002500),(0.507174, -0.867750, -0.000000),(0.614060, -0.795545, -0.000000),(0.612531, -0.793567, 0.004330),(0.505911, -0.865593, 0.004330),(0.506836, -0.867172, 0.002500),(0.612531, -0.793567, 0.004330),(0.506836, -0.867172, 0.002500),(0.613650, -0.795015, 0.002500),(0.611002, -0.791589, 0.005000),(0.504648, -0.863435, 0.005000),(0.505911, -0.865593, 0.004330),(0.611002, -0.791589, 0.005000),(0.505911, -0.865593, 0.004330),(0.612531, -0.793567, 0.004330),(0.609474, -0.789611, 0.004330),(0.503385, -0.861278, 0.004330),(0.504648, -0.863435, 0.005000),(0.609474, -0.789611, 0.004330),(0.504648, -0.863435, 0.005000),(0.611002, -0.791589, 0.005000),(0.608354, -0.788163, 0.002500),(0.502460, -0.859698, 0.002500),(0.503385, -0.861278, 0.004330),(0.608354, -0.788163, 0.002500),(0.503385, -0.861278, 0.004330),(0.609474, -0.789611, 0.004330),(0.607945, -0.787633, 0.000000),(0.502122, -0.859120, 0.000000),(0.502460, -0.859698, 0.002500),(0.607945, -0.787633, 0.000000),(0.502460, -0.859698, 0.002500),(0.608354, -0.788163, 0.002500),(0.608354, -0.788163, -0.002500),(0.502460, -0.859698, -0.002500),(0.502122, -0.859120, 0.000000),(0.608354, -0.788163, -0.002500),(0.502122, -0.859120, 0.000000),(0.607945, -0.787633, 0.000000),(0.609474, -0.789611, -0.004330),(0.503385, -0.861278, -0.004330),(0.502460, -0.859698, -0.002500),(0.609474, -0.789611, -0.004330),(0.502460, -0.859698, -0.002500),(0.608354, -0.788163, -0.002500),(0.611002, -0.791589, -0.005000),(0.504648, -0.863435, -0.005000),(0.503385, -0.861278, -0.004330),(0.611002, -0.791589, -0.005000),(0.503385, -0.861278, -0.004330),(0.609474, -0.789611, -0.004330),(0.505911, -0.865593, -0.004330),(0.390151, -0.923695, -0.004330),(0.389178, -0.921392, -0.005000),(0.505911, -0.865593, -0.004330),(0.389178, -0.921392, -0.005000),(0.504648, -0.863435, -0.005000),(0.506836, -0.867172, -0.002500),(0.390863, -0.925381, -0.002500),(0.390151, -0.923695, -0.004330),(0.506836, -0.867172, -0.002500),(0.390151, -0.923695, -0.004330),(0.505911, -0.865593, -0.004330),(0.507174, -0.867750, -0.000000),(0.391124, -0.925998, -0.000000),(0.390863, -0.925381, -0.002500),(0.507174, -0.867750, -0.000000),(0.390863, -0.925381, -0.002500),(0.506836, -0.867172, -0.002500),(0.506836, -0.867172, 0.002500),(0.390863, -0.925381, 0.002500),(0.391124, -0.925998, -0.000000),(0.506836, -0.867172, 0.002500),(0.391124, -0.925998, -0.000000),(0.507174, -0.867750, -0.000000),(0.505911, -0.865593, 0.004330),(0.390151, -0.923695, 0.004330),(0.390863, -0.925381, 0.002500),(0.505911, -0.865593, 0.004330),(0.390863, -0.925381, 0.002500),(0.506836, -0.867172, 0.002500),(0.504648, -0.863435, 0.005000),(0.389178, -0.921392, 0.005000),(0.390151, -0.923695, 0.004330),(0.504648, -0.863435, 0.005000),(0.390151, -0.923695, 0.004330),(0.505911, -0.865593, 0.004330),(0.503385, -0.861278, 0.004330),(0.388205, -0.919090, 0.004330),(0.389178, -0.921392, 0.005000),(0.503385, -0.861278, 0.004330),(0.389178, -0.921392, 0.005000),(0.504648, -0.863435, 0.005000),(0.502460, -0.859698, 0.002500),(0.387492, -0.917404, 0.002500),(0.388205, -0.919090, 0.004330),(0.502460, -0.859698, 0.002500),(0.388205, -0.919090, 0.004330),(0.503385, -0.861278, 0.004330),(0.502122, -0.859120, 0.000000),(0.387232, -0.916787, 0.000000),(0.387492, -0.917404, 0.002500),(0.502122, -0.859120, 0.000000),(0.387492, -0.917404, 0.002500),(0.502460, -0.859698, 0.002500),(0.502460, -0.859698, -0.002500),(0.387492, -0.917404, -0.002500),(0.387232, -0.916787, 0.000000),(0.502460, -0.859698, -0.002500),(0.387232, -0.916787, 0.000000),(0.502122, -0.859120, 0.000000),(0.503385, -0.861278, -0.004330),(0.388205, -0.919090, -0.004330),(0.387492, -0.917404, -0.002500),(0.503385, -0.861278, -0.004330),(0.387492, -0.917404, -0.002500),(0.502460, -0.859698, -0.002500),(0.504648, -0.863435, -0.005000),(0.389178, -0.921392, -0.005000),(0.388205, -0.919090, -0.004330),(0.504648, -0.863435, -0.005000),(0.388205, -0.919090, -0.004330),(0.503385, -0.861278, -0.004330),(0.390151, -0.923695, -0.004330),(0.266446, -0.966679, -0.004330),(0.265784, -0.964268, -0.005000),(0.390151, -0.923695, -0.004330),(0.265784, -0.964268, -0.005000),(0.389178, -0.921392, -0.005000),(0.390863, -0.925381, -0.002500),(0.266931, -0.968443, -0.002500),(0.266446, -0.966679, -0.004330),(0.390863, -0.925381, -0.002500),(0.266446, -0.966679, -0.004330),(0.390151, -0.923695, -0.004330),(0.391124, -0.925998, -0.000000),(0.267108, -0.969089, -0.000000),(0.266931, -0.968443, -0.002500),(0.391124, -0.925998, -0.000000),(0.266931, -0.968443, -0.002500),(0.390863, -0.925381, -0.002500),(0.390863, -0.925381, 0.002500),(0.266931, -0.968443, 0.002500),(0.267108, -0.969089, -0.000000),(0.390863, -0.925381, 0.002500),(0.267108, -0.969089, -0.000000),(0.391124, -0.925998, -0.000000),(0.390151, -0.923695, 0.004330),(0.266446, -0.966679, 0.004330),(0.266931, -0.968443, 0.002500),(0.390151, -0.923695, 0.004330),(0.266931, -0.968443, 0.002500),(0.390863, -0.925381, 0.002500),(0.389178, -0.921392, 0.005000),(0.265784, -0.964268, 0.005000),(0.266446, -0.966679, 0.004330),(0.389178, -0.921392, 0.005000),(0.266446, -0.966679, 0.004330),(0.390151, -0.923695, 0.004330),(0.388205, -0.919090, 0.004330),(0.265122, -0.961857, 0.004330),(0.265784, -0.964268, 0.005000),(0.388205, -0.919090, 0.004330),(0.265784, -0.964268, 0.005000),(0.389178, -0.921392, 0.005000),(0.387492, -0.917404, 0.002500),(0.264637, -0.960092, 0.002500),(0.265122, -0.961857, 0.004330),(0.387492, -0.917404, 0.002500),(0.265122, -0.961857, 0.004330),(0.388205, -0.919090, 0.004330),(0.387232, -0.916787, 0.000000),(0.264460, -0.959446, 0.000000),(0.264637, -0.960092, 0.002500),(0.387232, -0.916787, 0.000000),(0.264637, -0.960092, 0.002500),(0.387492, -0.917404, 0.002500),(0.387492, -0.917404, -0.002500),(0.264637, -0.960092, -0.002500),(0.264460, -0.959446, 0.000000),(0.387492, -0.917404, -0.002500),(0.264460, -0.959446, 0.000000),(0.387232, -0.916787, 0.000000),(0.388205, -0.919090, -0.004330),(0.265122, -0.961857, -0.004330),(0.264637, -0.960092, -0.002500),(0.388205, -0.919090, -0.004330),(0.264637, -0.960092, -0.002500),(0.387492, -0.917404, -0.002500),(0.389178, -0.921392, -0.005000),(0.265784, -0.964268, -0.005000),(0.265122, -0.961857, -0.004330),(0.389178, -0.921392, -0.005000),(0.265122, -0.961857, -0.004330),(0.388205, -0.919090, -0.004330),(0.266446, -0.966679, -0.004330),(0.135996, -0.993345, -0.004330),(0.135661, -0.990868, -0.005000),(0.266446, -0.966679, -0.004330),(0.135661, -0.990868, -0.005000),(0.265784, -0.964268, -0.005000),(0.266931, -0.968443, -0.002500),(0.136241, -0.995159, -0.002500),(0.135996, -0.993345, -0.004330),(0.266931, -0.968443, -0.002500),(0.135996, -0.993345, -0.004330),(0.266446, -0.966679, -0.004330),(0.267108, -0.969089, -0.000000),(0.136331, -0.995823, -0.000000),(0.136241, -0.995159, -0.002500),(0.267108, -0.969089, -0.000000),(0.136241, -0.995159, -0.002500),(0.266931, -0.968443, -0.002500),(0.266931, -0.968443, 0.002500),(0.136241, -0.995159, 0.002500),(0.136331, -0.995823, -0.000000),(0.266931, -0.968443, 0.002500),(0.136331, -0.995823, -0.000000),(0.267108, -0.969089, -0.000000),(0.266446, -0.966679, 0.004330),(0.135996, -0.993345, 0.004330),(0.136241, -0.995159, 0.002500),(0.266446, -0.966679, 0.004330),(0.136241, -0.995159, 0.002500),(0.266931, -0.968443, 0.002500),(0.265784, -0.964268, 0.005000),(0.135661, -0.990868, 0.005000),(0.135996, -0.993345, 0.004330),(0.265784, -0.964268, 0.005000),(0.135996, -0.993345, 0.004330),(0.266446, -0.966679, 0.004330),(0.265122, -0.961857, 0.004330),(0.135325, -0.988391, 0.004330),(0.135661, -0.990868, 0.005000),(0.265122, -0.961857, 0.004330),(0.135661, -0.990868, 0.005000),(0.265784, -0.964268, 0.005000),(0.264637, -0.960092, 0.002500),(0.135080, -0.986577, 0.002500),(0.135325, -0.988391, 0.004330),(0.264637, -0.960092, 0.002500),(0.135325, -0.988391, 0.004330),(0.265122, -0.961857, 0.004330),(0.264460, -0.959446, 0.000000),(0.134990, -0.985913, 0.000000),(0.135080, -0.986577, 0.002500),(0.264460, -0.959446, 0.000000),(0.135080, -0.986577, 0.002500),(0.264637, -0.960092, 0.002500),(0.264637, -0.960092, -0.002500),(0.135080, -0.986577, -0.002500),(0.134990, -0.985913, 0.000000),(0.264637, -0.960092, -0.002500),(0.134990, -0.985913, 0.000000),(0.264460, -0.959446, 0.000000),(0.265122, -0.961857, -0.004330),(0.135325, -0.988391, -0.004330),(0.135080, -0.986577, -0.002500),(0.265122, -0.961857, -0.004330),(0.135080, -0.986577, -0.002500),(0.264637, -0.960092, -0.002500),(0.265784, -0.964268, -0.005000),(0.135661, -0.990868, -0.005000),(0.135325, -0.988391, -0.004330),(0.265784, -0.964268, -0.005000),(0.135325, -0.988391, -0.004330),(0.265122, -0.961857, -0.004330),(0.135996, -0.993345, -0.004330),(0.000000, -1.002500, -0.004330),(-0.000000, -1.000000, -0.005000),(0.135996, -0.993345, -0.004330),(-0.000000, -1.000000, -0.005000),(0.135661, -0.990868, -0.005000),(0.136241, -0.995159, -0.002500),(0.000000, -1.004330, -0.002500),(0.000000, -1.002500, -0.004330),(0.136241, -0.995159, -0.002500),(0.000000, -1.002500, -0.004330),(0.135996, -0.993345, -0.004330),(0.136331, -0.995823, -0.000000),(0.000000, -1.005000, -0.000000),(0.000000, -1.004330, -0.002500),(0.136331, -0.995823, -0.000000),(0.000000, -1.004330, -0.002500),(0.136241, -0.995159, -0.002500),(0.136241, -0.995159, 0.002500),(0.000000, -1.004330, 0.002500),(0.000000, -1.005000, -0.000000),(0.136241, -0.995159, 0.002500),(0.000000, -1.005000, -0.000000),(0.136331, -0.995823, -0.000000),(0.135996, -0.993345, 0.004330),(0.000000, -1.002500, 0.004330),(0.000000, -1.004330, 0.002500),(0.135996, -0.993345, 0.004330),(0.000000, -1.004330, 0.002500),(0.136241, -0.995159, 0.002500),(0.135661, -0.990868, 0.005000),(0.000000, -1.000000, 0.005000),(0.000000, -1.002500, 0.004330),(0.135661, -0.990868, 0.005000),(0.000000, -1.002500, 0.004330),(0.135996, -0.993345, 0.004330),(0.135325, -0.988391, 0.004330),(-0.000000, -0.997500, 0.004330),(0.000000, -1.000000, 0.005000),(0.135325, -0.988391, 0.004330),(0.000000, -1.000000, 0.005000),(0.135661, -0.990868, 0.005000),(0.135080, -0.986577, 0.002500),(-0.000000, -0.995670, 0.002500),(-0.000000, -0.997500, 0.004330),(0.135080, -0.986577, 0.002500),(-0.000000, -0.997500, 0.004330),(0.135325, -0.988391, 0.004330),(0.134990, -0.985913, 0.000000),(-0.000000, -0.995000, 0.000000),(-0.000000, -0.995670, 0.002500),(0.134990, -0.985913, 0.000000),(-0.000000, -0.995670, 0.002500),(0.135080, -0.986577, 0.002500),(0.135080, -0.986577, -0.002500),(-0.000000, -0.995670, -0.002500),(-0.000000, -0.995000, 0.000000),(0.135080, -0.986577, -0.002500),(-0.000000, -0.995000, 0.000000),(0.134990, -0.985913, 0.000000),(0.135325, -0.988391, -0.004330),(-0.000000, -0.997500, -0.004330),(-0.000000, -0.995670, -0.002500),(0.135325, -0.988391, -0.004330),(-0.000000, -0.995670, -0.002500),(0.135080, -0.986577, -0.002500),(0.135661, -0.990868, -0.005000),(-0.000000, -1.000000, -0.005000),(-0.000000, -0.997500, -0.004330),(0.135661, -0.990868, -0.005000),(-0.000000, -0.997500, -0.004330),(0.135325, -0.988391, -0.004330),(-0.004330, -0.000000, -0.997500),(-0.004330, 0.135325, -0.988391),(-0.005000, 0.135661, -0.990868),(-0.004330, -0.000000, -0.997500),(-0.005000, 0.135661, -0.990868),(-0.005000, -0.000000, -1.000000),(-0.002500, -0.000000, -0.995670),(-0.002500, 0.135080, -0.986577),(-0.004330, 0.135325, -0.988391),(-0.002500, -0.000000, -0.995670),(-0.004330, 0.135325, -0.988391),(-0.004330, -0.000000, -0.997500),(-0.000000, -0.000000, -0.995000),(-0.000000, 0.134990, -0.985913),(-0.002500, 0.135080, -0.986577),(-0.000000, -0.000000, -0.995000),(-0.002500, 0.135080, -0.986577),(-0.002500, -0.000000, -0.995670),(0.002500, -0.000000, -0.995670),(0.002500, 0.135080, -0.986577),(-0.000000, 0.134990, -0.985913),(0.002500, -0.000000, -0.995670),(-0.000000, 0.134990, -0.985913),(-0.000000, -0.000000, -0.995000),(0.004330, -0.000000, -0.997500),(0.004330, 0.135325, -0.988391),(0.002500, 0.135080, -0.986577),(0.004330, -0.000000, -0.997500),(0.002500, 0.135080, -0.986577),(0.002500, -0.000000, -0.995670),(0.005000, 0.000000, -1.000000),(0.005000, 0.135661, -0.990868),(0.004330, 0.135325, -0.988391),(0.005000, 0.000000, -1.000000),(0.004330, 0.135325, -0.988391),(0.004330, -0.000000, -0.997500),(0.004330, 0.000000, -1.002500),(0.004330, 0.135996, -0.993345),(0.005000, 0.135661, -0.990868),(0.004330, 0.000000, -1.002500),(0.005000, 0.135661, -0.990868),(0.005000, 0.000000, -1.000000),(0.002500, 0.000000, -1.004330),(0.002500, 0.136241, -0.995159),(0.004330, 0.135996, -0.993345),(0.002500, 0.000000, -1.004330),(0.004330, 0.135996, -0.993345),(0.004330, 0.000000, -1.002500),(-0.000000, 0.000000, -1.005000),(-0.000000, 0.136331, -0.995823),(0.002500, 0.136241, -0.995159),(-0.000000, 0.000000, -1.005000),(0.002500, 0.136241, -0.995159),(0.002500, 0.000000, -1.004330),(-0.002500, 0.000000, -1.004330),(-0.002500, 0.136241, -0.995159),(-0.000000, 0.136331, -0.995823),(-0.002500, 0.000000, -1.004330),(-0.000000, 0.136331, -0.995823),(-0.000000, 0.000000, -1.005000),(-0.004330, 0.000000, -1.002500),(-0.004330, 0.135996, -0.993345),(-0.002500, 0.136241, -0.995159),(-0.004330, 0.000000, -1.002500),(-0.002500, 0.136241, -0.995159),(-0.002500, 0.000000, -1.004330),(-0.005000, -0.000000, -1.000000),(-0.005000, 0.135661, -0.990868),(-0.004330, 0.135996, -0.993345),(-0.005000, -0.000000, -1.000000),(-0.004330, 0.135996, -0.993345),(-0.004330, 0.000000, -1.002500),(-0.004330, 0.135325, -0.988391),(-0.004330, 0.265122, -0.961857),(-0.005000, 0.265784, -0.964268),(-0.004330, 0.135325, -0.988391),(-0.005000, 0.265784, -0.964268),(-0.005000, 0.135661, -0.990868),(-0.002500, 0.135080, -0.986577),(-0.002500, 0.264637, -0.960092),(-0.004330, 0.265122, -0.961857),(-0.002500, 0.135080, -0.986577),(-0.004330, 0.265122, -0.961857),(-0.004330, 0.135325, -0.988391),(-0.000000, 0.134990, -0.985913),(-0.000000, 0.264460, -0.959446),(-0.002500, 0.264637, -0.960092),(-0.000000, 0.134990, -0.985913),(-0.002500, 0.264637, -0.960092),(-0.002500, 0.135080, -0.986577),(0.002500, 0.135080, -0.986577),(0.002500, 0.264637, -0.960092),(-0.000000, 0.264460, -0.959446),(0.002500, 0.135080, -0.986577),(-0.000000, 0.264460, -0.959446),(-0.000000, 0.134990, -0.985913),(0.004330, 0.135325, -0.988391),(0.004330, 0.265122, -0.961857),(0.002500, 0.264637, -0.960092),(0.004330, 0.135325, -0.988391),(0.002500, 0.264637, -0.960092),(0.002500, 0.135080, -0.986577),(0.005000, 0.135661, -0.990868),(0.005000, 0.265784, -0.964268),(0.004330, 0.265122, -0.961857),(0.005000, 0.135661, -0.990868),(0.004330, 0.265122, -0.961857),(0.004330, 0.135325, -0.988391),(0.004330, 0.135996, -0.993345),(0.004330, 0.266446, -0.966679),(0.005000, 0.265784, -0.964268),(0.004330, 0.135996, -0.993345),(0.005000, 0.265784, -0.964268),(0.005000, 0.135661, -0.990868),(0.002500, 0.136241, -0.995159),(0.002500, 0.266931, -0.968443),(0.004330, 0.266446, -0.966679),(0.002500, 0.136241, -0.995159),(0.004330, 0.266446, -0.966679),(0.004330, 0.135996, -0.993345),(-0.000000, 0.136331, -0.995823),(-0.000000, 0.267108, -0.969089),(0.002500, 0.266931, -0.968443),(-0.000000, 0.136331, -0.995823),(0.002500, 0.266931, -0.968443),(0.002500, 0.136241, -0.995159),(-0.002500, 0.136241, -0.995159),(-0.002500, 0.266931, -0.968443),(-0.000000, 0.267108, -0.969089),(-0.002500, 0.136241, -0.995159),(-0.000000, 0.267108, -0.969089),(-0.000000, 0.136331, -0.995823),(-0.004330, 0.135996, -0.993345),(-0.004330, 0.266446, -0.966679),(-0.002500, 0.266931, -0.968443),(-0.004330, 0.135996, -0.993345),(-0.002500, 0.266931, -0.968443),(-0.002500, 0.136241, -0.995159),(-0.005000, 0.135661, -0.990868),(-0.005000, 0.265784, -0.964268),(-0.004330, 0.266446, -0.966679),(-0.005000, 0.135661, -0.990868),(-0.004330, 0.266446, -0.966679),(-0.004330, 0.135996, -0.993345),(-0.004330, 0.265122, -0.961857),(-0.004330, 0.388205, -0.919090),(-0.005000, 0.389178, -0.921393),(-0.004330, 0.265122, -0.961857),(-0.005000, 0.389178, -0.921393),(-0.005000, 0.265784, -0.964268),(-0.002500, 0.264637, -0.960092),(-0.002500, 0.387492, -0.917404),(-0.004330, 0.388205, -0.919090),(-0.002500, 0.264637, -0.960092),(-0.004330, 0.388205, -0.919090),(-0.004330, 0.265122, -0.961857),(-0.000000, 0.264460, -0.959446),(-0.000000, 0.387232, -0.916787),(-0.002500, 0.387492, -0.917404),(-0.000000, 0.264460, -0.959446),(-0.002500, 0.387492, -0.917404),(-0.002500, 0.264637, -0.960092),(0.002500, 0.264637, -0.960092),(0.002500, 0.387492, -0.917404),(-0.000000, 0.387232, -0.916787),(0.002500, 0.264637, -0.960092),(-0.000000, 0.387232, -0.916787),(-0.000000, 0.264460, -0.959446),(0.004330, 0.265122, -0.961857),(0.004330, 0.388205, -0.919090),(0.002500, 0.387492, -0.917404),(0.004330, 0.265122, -0.961857),(0.002500, 0.387492, -0.917404),(0.002500, 0.264637, -0.960092),(0.005000, 0.265784, -0.964268),(0.005000, 0.389178, -0.921393),(0.004330, 0.388205, -0.919090),(0.005000, 0.265784, -0.964268),(0.004330, 0.388205, -0.919090),(0.004330, 0.265122, -0.961857),(0.004330, 0.266446, -0.966679),(0.004330, 0.390151, -0.923695),(0.005000, 0.389178, -0.921393),(0.004330, 0.266446, -0.966679),(0.005000, 0.389178, -0.921393),(0.005000, 0.265784, -0.964268),(0.002500, 0.266931, -0.968443),(0.002500, 0.390863, -0.925381),(0.004330, 0.390151, -0.923695),(0.002500, 0.266931, -0.968443),(0.004330, 0.390151, -0.923695),(0.004330, 0.266446, -0.966679),(-0.000000, 0.267108, -0.969089),(-0.000000, 0.391124, -0.925998),(0.002500, 0.390863, -0.925381),(-0.000000, 0.267108, -0.969089),(0.002500, 0.390863, -0.925381),(0.002500, 0.266931, -0.968443),(-0.002500, 0.266931, -0.968443),(-0.002500, 0.390863, -0.925381),(-0.000000, 0.391124, -0.925998),(-0.002500, 0.266931, -0.968443),(-0.000000, 0.391124, -0.925998),(-0.000000, 0.267108, -0.969089),(-0.004330, 0.266446, -0.966679),(-0.004330, 0.390151, -0.923695),(-0.002500, 0.390863, -0.925381),(-0.004330, 0.266446, -0.966679),(-0.002500, 0.390863, -0.925381),(-0.002500, 0.266931, -0.968443),(-0.005000, 0.265784, -0.964268),(-0.005000, 0.389178, -0.921393),(-0.004330, 0.390151, -0.923695),(-0.005000, 0.265784, -0.964268),(-0.004330, 0.390151, -0.923695),(-0.004330, 0.266446, -0.966679),(-0.004330, 0.388205, -0.919090),(-0.004330, 0.503385, -0.861278),(-0.005000, 0.504648, -0.863435),(-0.004330, 0.388205, -0.919090),(-0.005000, 0.504648, -0.863435),(-0.005000, 0.389178, -0.921393),(-0.002500, 0.387492, -0.917404),(-0.002500, 0.502460, -0.859698),(-0.004330, 0.503385, -0.861278),(-0.002500, 0.387492, -0.917404),(-0.004330, 0.503385, -0.861278),(-0.004330, 0.388205, -0.919090),(-0.000000, 0.387232, -0.916787),(-0.000000, 0.502122, -0.859120),(-0.002500, 0.502460, -0.859698),(-0.000000, 0.387232, -0.916787),(-0.002500, 0.502460, -0.859698),(-0.002500, 0.387492, -0.917404),(0.002500, 0.387492, -0.917404),(0.002500, 0.502460, -0.859698),(-0.000000, 0.502122, -0.859120),(0.002500, 0.387492, -0.917404),(-0.000000, 0.502122, -0.859120),(-0.000000, 0.387232, -0.916787),(0.004330, 0.388205, -0.919090),(0.004330, 0.503385, -0.861278),(0.002500, 0.502460, -0.859698),(0.004330, 0.388205, -0.919090),(0.002500, 0.502460, -0.859698),(0.002500, 0.387492, -0.917404),(0.005000, 0.389178, -0.921393),(0.005000, 0.504648, -0.863435),(0.004330, 0.503385, -0.861278),(0.005000, 0.389178, -0.921393),(0.004330, 0.503385, -0.861278),(0.004330, 0.388205, -0.919090),(0.004330, 0.390151, -0.923695),(0.004330, 0.505911, -0.865593),(0.005000, 0.504648, -0.863435),(0.004330, 0.390151, -0.923695),(0.005000, 0.504648, -0.863435),(0.005000, 0.389178, -0.921393),(0.002500, 0.390863, -0.925381),(0.002500, 0.506836, -0.867172),(0.004330, 0.505911, -0.865593),(0.002500, 0.390863, -0.925381),(0.004330, 0.505911, -0.865593),(0.004330, 0.390151, -0.923695),(-0.000000, 0.391124, -0.925998),(-0.000000, 0.507174, -0.867750),(0.002500, 0.506836, -0.867172),(-0.000000, 0.391124, -0.925998),(0.002500, 0.506836, -0.867172),(0.002500, 0.390863, -0.925381),(-0.002500, 0.390863, -0.925381),(-0.002500, 0.506836, -0.867172),(-0.000000, 0.507174, -0.867750),(-0.002500, 0.390863, -0.925381),(-0.000000, 0.507174, -0.867750),(-0.000000, 0.391124, -0.925998),(-0.004330, 0.390151, -0.923695),(-0.004330, 0.505911, -0.865593),(-0.002500, 0.506836, -0.867172),(-0.004330, 0.390151, -0.923695),(-0.002500, 0.506836, -0.867172),(-0.002500, 0.390863, -0.925381),(-0.005000, 0.389178, -0.921393),(-0.005000, 0.504648, -0.863435),(-0.004330, 0.505911, -0.865593),(-0.005000, 0.389178, -0.921393),(-0.004330, 0.505911, -0.865593),(-0.004330, 0.390151, -0.923695),(-0.004330, 0.503385, -0.861278),(-0.004330, 0.609474, -0.789611),(-0.005000, 0.611002, -0.791589),(-0.004330, 0.503385, -0.861278),(-0.005000, 0.611002, -0.791589),(-0.005000, 0.504648, -0.863435),(-0.002500, 0.502460, -0.859698),(-0.002500, 0.608354, -0.788163),(-0.004330, 0.609474, -0.789611),(-0.002500, 0.502460, -0.859698),(-0.004330, 0.609474, -0.789611),(-0.004330, 0.503385, -0.861278),(-0.000000, 0.502122, -0.859120),(-0.000000, 0.607945, -0.787633),(-0.002500, 0.608354, -0.788163),(-0.000000, 0.502122, -0.859120),(-0.002500, 0.608354, -0.788163),(-0.002500, 0.502460, -0.859698),(0.002500, 0.502460, -0.859698),(0.002500, 0.608354, -0.788163),(-0.000000, 0.607945, -0.787633),(0.002500, 0.502460, -0.859698),(-0.000000, 0.607945, -0.787633),(-0.000000, 0.502122, -0.859120),(0.004330, 0.503385, -0.861278),(0.004330, 0.609474, -0.789611),(0.002500, 0.608354, -0.788163),(0.004330, 0.503385, -0.861278),(0.002500, 0.608354, -0.788163),(0.002500, 0.502460, -0.859698),(0.005000, 0.504648, -0.863435),(0.005000, 0.611002, -0.791589),(0.004330, 0.609474, -0.789611),(0.005000, 0.504648, -0.863435),(0.004330, 0.609474, -0.789611),(0.004330, 0.503385, -0.861278),(0.004330, 0.505911, -0.865593),(0.004330, 0.612531, -0.793567),(0.005000, 0.611002, -0.791589),(0.004330, 0.505911, -0.865593),(0.005000, 0.611002, -0.791589),(0.005000, 0.504648, -0.863435),(0.002500, 0.506836, -0.867172),(0.002500, 0.613650, -0.795015),(0.004330, 0.612531, -0.793567),(0.002500, 0.506836, -0.867172),(0.004330, 0.612531, -0.793567),(0.004330, 0.505911, -0.865593),(-0.000000, 0.507174, -0.867750),(-0.000000, 0.614060, -0.795545),(0.002500, 0.613650, -0.795015),(-0.000000, 0.507174, -0.867750),(0.002500, 0.613650, -0.795015),(0.002500, 0.506836, -0.867172),(-0.002500, 0.506836, -0.867172),(-0.002500, 0.613650, -0.795015),(-0.000000, 0.614060, -0.795545),(-0.002500, 0.506836, -0.867172),(-0.000000, 0.614060, -0.795545),(-0.000000, 0.507174, -0.867750),(-0.004330, 0.505911, -0.865593),(-0.004330, 0.612531, -0.793567),(-0.002500, 0.613650, -0.795015),(-0.004330, 0.505911, -0.865593),(-0.002500, 0.613650, -0.795015),(-0.002500, 0.506836, -0.867172),(-0.005000, 0.504648, -0.863435),(-0.005000, 0.611002, -0.791589),(-0.004330, 0.612531, -0.793567),(-0.005000, 0.504648, -0.863435),(-0.004330, 0.612531, -0.793567),(-0.004330, 0.505911, -0.865593),(-0.004330, 0.609474, -0.789611),(-0.004330, 0.705279, -0.705279),(-0.005000, 0.707047, -0.707047),(-0.004330, 0.609474, -0.789611),(-0.005000, 0.707047, -0.707047),(-0.005000, 0.611002, -0.791589),(-0.002500, 0.608354, -0.788163),(-0.002500, 0.703985, -0.703985),(-0.004330, 0.705279, -0.705279),(-0.002500, 0.608354, -0.788163),(-0.004330, 0.705279, -0.705279),(-0.004330, 0.609474, -0.789611),(-0.000000, 0.607945, -0.787633),(-0.000000, 0.703511, -0.703511),(-0.002500, 0.703985, -0.703985),(-0.000000, 0.607945, -0.787633),(-0.002500, 0.703985, -0.703985),(-0.002500, 0.608354, -0.788163),(0.002500, 0.608354, -0.788163),(0.002500, 0.703985, -0.703985),(-0.000000, 0.703511, -0.703511),(0.002500, 0.608354, -0.788163),(-0.000000, 0.703511, -0.703511),(-0.000000, 0.607945, -0.787633),(0.004330, 0.609474, -0.789611),(0.004330, 0.705279, -0.705279),(0.002500, 0.703985, -0.703985),(0.004330, 0.609474, -0.789611),(0.002500, 0.703985, -0.703985),(0.002500, 0.608354, -0.788163),(0.005000, 0.611002, -0.791589),(0.005000, 0.707047, -0.707047),(0.004330, 0.705279, -0.705279),(0.005000, 0.611002, -0.791589),(0.004330, 0.705279, -0.705279),(0.004330, 0.609474, -0.789611),(0.004330, 0.612531, -0.793567),(0.004330, 0.708815, -0.708815),(0.005000, 0.707047, -0.707047),(0.004330, 0.612531, -0.793567),(0.005000, 0.707047, -0.707047),(0.005000, 0.611002, -0.791589),(0.002500, 0.613650, -0.795015),(0.002500, 0.710109, -0.710109),(0.004330, 0.708815, -0.708815),(0.002500, 0.613650, -0.795015),(0.004330, 0.708815, -0.708815),(0.004330, 0.612531, -0.793567),(-0.000000, 0.614060, -0.795545),(-0.000000, 0.710582, -0.710582),(0.002500, 0.710109, -0.710109),(-0.000000, 0.614060, -0.795545),(0.002500, 0.710109, -0.710109),(0.002500, 0.613650, -0.795015),(-0.002500, 0.613650, -0.795015),(-0.002500, 0.710109, -0.710109),(-0.000000, 0.710582, -0.710582),(-0.002500, 0.613650, -0.795015),(-0.000000, 0.710582, -0.710582),(-0.000000, 0.614060, -0.795545),(-0.004330, 0.612531, -0.793567),(-0.004330, 0.708815, -0.708815),(-0.002500, 0.710109, -0.710109),(-0.004330, 0.612531, -0.793567),(-0.002500, 0.710109, -0.710109),(-0.002500, 0.613650, -0.795015),(-0.005000, 0.611002, -0.791589),(-0.005000, 0.707047, -0.707047),(-0.004330, 0.708815, -0.708815),(-0.005000, 0.611002, -0.791589),(-0.004330, 0.708815, -0.708815),(-0.004330, 0.612531, -0.793567),(-0.004330, 0.705279, -0.705279),(-0.004330, 0.789611, -0.609474),(-0.005000, 0.791589, -0.611002),(-0.004330, 0.705279, -0.705279),(-0.005000, 0.791589, -0.611002),(-0.005000, 0.707047, -0.707047),(-0.002500, 0.703985, -0.703985),(-0.002500, 0.788163, -0.608354),(-0.004330, 0.789611, -0.609474),(-0.002500, 0.703985, -0.703985),(-0.004330, 0.789611, -0.609474),(-0.004330, 0.705279, -0.705279),(-0.000000, 0.703511, -0.703511),(-0.000000, 0.787633, -0.607945),(-0.002500, 0.788163, -0.608354),(-0.000000, 0.703511, -0.703511),(-0.002500, 0.788163, -0.608354),(-0.002500, 0.703985, -0.703985),(0.002500, 0.703985, -0.703985),(0.002500, 0.788163, -0.608354),(-0.000000, 0.787633, -0.607945),(0.002500, 0.703985, -0.703985),(-0.000000, 0.787633, -0.607945),(-0.000000, 0.703511, -0.703511),(0.004330, 0.705279, -0.705279),(0.004330, 0.789611, -0.609474),(0.002500, 0.788163, -0.608354),(0.004330, 0.705279, -0.705279),(0.002500, 0.788163, -0.608354),(0.002500, 0.703985, -0.703985),(0.005000, 0.707047, -0.707047),(0.005000, 0.791589, -0.611002),(0.004330, 0.789611, -0.609474),(0.005000, 0.707047, -0.707047),(0.004330, 0.789611, -0.609474),(0.004330, 0.705279, -0.705279),(0.004330, 0.708815, -0.708815),(0.004330, 0.793567, -0.612531),(0.005000, 0.791589, -0.611002),(0.004330, 0.708815, -0.708815),(0.005000, 0.791589, -0.611002),(0.005000, 0.707047, -0.707047),(0.002500, 0.710109, -0.710109),(0.002500, 0.795015, -0.613650),(0.004330, 0.793567, -0.612531),(0.002500, 0.710109, -0.710109),(0.004330, 0.793567, -0.612531),(0.004330, 0.708815, -0.708815),(-0.000000, 0.710582, -0.710582),(-0.000000, 0.795545, -0.614060),(0.002500, 0.795015, -0.613650),(-0.000000, 0.710582, -0.710582),(0.002500, 0.795015, -0.613650),(0.002500, 0.710109, -0.710109),(-0.002500, 0.710109, -0.710109),(-0.002500, 0.795015, -0.613650),(-0.000000, 0.795545, -0.614060),(-0.002500, 0.710109, -0.710109),(-0.000000, 0.795545, -0.614060),(-0.000000, 0.710582, -0.710582),(-0.004330, 0.708815, -0.708815),(-0.004330, 0.793567, -0.612531),(-0.002500, 0.795015, -0.613650),(-0.004330, 0.708815, -0.708815),(-0.002500, 0.795015, -0.613650),(-0.002500, 0.710109, -0.710109),(-0.005000, 0.707047, -0.707047),(-0.005000, 0.791589, -0.611002),(-0.004330, 0.793567, -0.612531),(-0.005000, 0.707047, -0.707047),(-0.004330, 0.793567, -0.612531),(-0.004330, 0.708815, -0.708815),(-0.004330, 0.789611, -0.609474),(-0.004330, 0.861278, -0.503385),(-0.005000, 0.863435, -0.504648),(-0.004330, 0.789611, -0.609474),(-0.005000, 0.863435, -0.504648),(-0.005000, 0.791589, -0.611002),(-0.002500, 0.788163, -0.608354),(-0.002500, 0.859698, -0.502460),(-0.004330, 0.861278, -0.503385),(-0.002500, 0.788163, -0.608354),(-0.004330, 0.861278, -0.503385),(-0.004330, 0.789611, -0.609474),(-0.000000, 0.787633, -0.607945),(-0.000000, 0.859120, -0.502122),(-0.002500, 0.859698, -0.502460),(-0.000000, 0.787633, -0.607945),(-0.002500, 0.859698, -0.502460),(-0.002500, 0.788163, -0.608354),(0.002500, 0.788163, -0.608354),(0.002500, 0.859698, -0.502460),(-0.000000, 0.859120, -0.502122),(0.002500, 0.788163, -0.608354),(-0.000000, 0.859120, -0.502122),(-0.000000, 0.787633, -0.607945),(0.004330, 0.789611, -0.609474),(0.004330, 0.861278, -0.503385),(0.002500, 0.859698, -0.502460),(0.004330, 0.789611, -0.609474),(0.002500, 0.859698, -0.502460),(0.002500, 0.788163, -0.608354),(0.005000, 0.791589, -0.611002),(0.005000, 0.863435, -0.504648),(0.004330, 0.861278, -0.503385),(0.005000, 0.791589, -0.611002),(0.004330, 0.861278, -0.503385),(0.004330, 0.789611, -0.609474),(0.004330, 0.793567, -0.612531),(0.004330, 0.865593, -0.505911),(0.005000, 0.863435, -0.504648),(0.004330, 0.793567, -0.612531),(0.005000, 0.863435, -0.504648),(0.005000, 0.791589, -0.611002),(0.002500, 0.795015, -0.613650),(0.002500, 0.867172, -0.506836),(0.004330, 0.865593, -0.505911),(0.002500, 0.795015, -0.613650),(0.004330, 0.865593, -0.505911),(0.004330, 0.793567, -0.612531),(-0.000000, 0.795545, -0.614060),(-0.000000, 0.867750, -0.507174),(0.002500, 0.867172, -0.506836),(-0.000000, 0.795545, -0.614060),(0.002500, 0.867172, -0.506836),(0.002500, 0.795015, -0.613650),(-0.002500, 0.795015, -0.613650),(-0.002500, 0.867172, -0.506836),(-0.000000, 0.867750, -0.507174),(-0.002500, 0.795015, -0.613650),(-0.000000, 0.867750, -0.507174),(-0.000000, 0.795545, -0.614060),(-0.004330, 0.793567, -0.612531),(-0.004330, 0.865593, -0.505911),(-0.002500, 0.867172, -0.506836),(-0.004330, 0.793567, -0.612531),(-0.002500, 0.867172, -0.506836),(-0.002500, 0.795015, -0.613650),(-0.005000, 0.791589, -0.611002),(-0.005000, 0.863435, -0.504648),(-0.004330, 0.865593, -0.505911),(-0.005000, 0.791589, -0.611002),(-0.004330, 0.865593, -0.505911),(-0.004330, 0.793567, -0.612531),(-0.004330, 0.861278, -0.503385),(-0.004330, 0.919090, -0.388205),(-0.005000, 0.921393, -0.389178),(-0.004330, 0.861278, -0.503385),(-0.005000, 0.921393, -0.389178),(-0.005000, 0.863435, -0.504648),(-0.002500, 0.859698, -0.502460),(-0.002500, 0.917404, -0.387492),(-0.004330, 0.919090, -0.388205),(-0.002500, 0.859698, -0.502460),(-0.004330, 0.919090, -0.388205),(-0.004330, 0.861278, -0.503385),(-0.000000, 0.859120, -0.502122),(-0.000000, 0.916787, -0.387232),(-0.002500, 0.917404, -0.387492),(-0.000000, 0.859120, -0.502122),(-0.002500, 0.917404, -0.387492),(-0.002500, 0.859698, -0.502460),(0.002500, 0.859698, -0.502460),(0.002500, 0.917404, -0.387492),(-0.000000, 0.916787, -0.387232),(0.002500, 0.859698, -0.502460),(-0.000000, 0.916787, -0.387232),(-0.000000, 0.859120, -0.502122),(0.004330, 0.861278, -0.503385),(0.004330, 0.919090, -0.388205),(0.002500, 0.917404, -0.387492),(0.004330, 0.861278, -0.503385),(0.002500, 0.917404, -0.387492),(0.002500, 0.859698, -0.502460),(0.005000, 0.863435, -0.504648),(0.005000, 0.921393, -0.389178),(0.004330, 0.919090, -0.388205),(0.005000, 0.863435, -0.504648),(0.004330, 0.919090, -0.388205),(0.004330, 0.861278, -0.503385),(0.004330, 0.865593, -0.505911),(0.004330, 0.923696, -0.390151),(0.005000, 0.921393, -0.389178),(0.004330, 0.865593, -0.505911),(0.005000, 0.921393, -0.389178),(0.005000, 0.863435, -0.504648),(0.002500, 0.867172, -0.506836),(0.002500, 0.925381, -0.390863),(0.004330, 0.923696, -0.390151),(0.002500, 0.867172, -0.506836),(0.004330, 0.923696, -0.390151),(0.004330, 0.865593, -0.505911),(-0.000000, 0.867750, -0.507174),(-0.000000, 0.925998, -0.391124),(0.002500, 0.925381, -0.390863),(-0.000000, 0.867750, -0.507174),(0.002500, 0.925381, -0.390863),(0.002500, 0.867172, -0.506836),(-0.002500, 0.867172, -0.506836),(-0.002500, 0.925381, -0.390863),(-0.000000, 0.925998, -0.391124),(-0.002500, 0.867172, -0.506836),(-0.000000, 0.925998, -0.391124),(-0.000000, 0.867750, -0.507174),(-0.004330, 0.865593, -0.505911),(-0.004330, 0.923696, -0.390151),(-0.002500, 0.925381, -0.390863),(-0.004330, 0.865593, -0.505911),(-0.002500, 0.925381, -0.390863),(-0.002500, 0.867172, -0.506836),(-0.005000, 0.863435, -0.504648),(-0.005000, 0.921393, -0.389178),(-0.004330, 0.923696, -0.390151),(-0.005000, 0.863435, -0.504648),(-0.004330, 0.923696, -0.390151),(-0.004330, 0.865593, -0.505911),(-0.004330, 0.919090, -0.388205),(-0.004330, 0.961857, -0.265122),(-0.005000, 0.964268, -0.265784),(-0.004330, 0.919090, -0.388205),(-0.005000, 0.964268, -0.265784),(-0.005000, 0.921393, -0.389178),(-0.002500, 0.917404, -0.387492),(-0.002500, 0.960092, -0.264637),(-0.004330, 0.961857, -0.265122),(-0.002500, 0.917404, -0.387492),(-0.004330, 0.961857, -0.265122),(-0.004330, 0.919090, -0.388205),(-0.000000, 0.916787, -0.387232),(-0.000000, 0.959447, -0.264460),(-0.002500, 0.960092, -0.264637),(-0.000000, 0.916787, -0.387232),(-0.002500, 0.960092, -0.264637),(-0.002500, 0.917404, -0.387492),(0.002500, 0.917404, -0.387492),(0.002500, 0.960092, -0.264637),(-0.000000, 0.959447, -0.264460),(0.002500, 0.917404, -0.387492),(-0.000000, 0.959447, -0.264460),(-0.000000, 0.916787, -0.387232),(0.004330, 0.919090, -0.388205),(0.004330, 0.961857, -0.265122),(0.002500, 0.960092, -0.264637),(0.004330, 0.919090, -0.388205),(0.002500, 0.960092, -0.264637),(0.002500, 0.917404, -0.387492),(0.005000, 0.921393, -0.389178),(0.005000, 0.964268, -0.265784),(0.004330, 0.961857, -0.265122),(0.005000, 0.921393, -0.389178),(0.004330, 0.961857, -0.265122),(0.004330, 0.919090, -0.388205),(0.004330, 0.923696, -0.390151),(0.004330, 0.966679, -0.266446),(0.005000, 0.964268, -0.265784),(0.004330, 0.923696, -0.390151),(0.005000, 0.964268, -0.265784),(0.005000, 0.921393, -0.389178),(0.002500, 0.925381, -0.390863),(0.002500, 0.968444, -0.266931),(0.004330, 0.966679, -0.266446),(0.002500, 0.925381, -0.390863),(0.004330, 0.966679, -0.266446),(0.004330, 0.923696, -0.390151),(-0.000000, 0.925998, -0.391124),(-0.000000, 0.969090, -0.267108),(0.002500, 0.968444, -0.266931),(-0.000000, 0.925998, -0.391124),(0.002500, 0.968444, -0.266931),(0.002500, 0.925381, -0.390863),(-0.002500, 0.925381, -0.390863),(-0.002500, 0.968444, -0.266931),(-0.000000, 0.969090, -0.267108),(-0.002500, 0.925381, -0.390863),(-0.000000, 0.969090, -0.267108),(-0.000000, 0.925998, -0.391124),(-0.004330, 0.923696, -0.390151),(-0.004330, 0.966679, -0.266446),(-0.002500, 0.968444, -0.266931),(-0.004330, 0.923696, -0.390151),(-0.002500, 0.968444, -0.266931),(-0.002500, 0.925381, -0.390863),(-0.005000, 0.921393, -0.389178),(-0.005000, 0.964268, -0.265784),(-0.004330, 0.966679, -0.266446),(-0.005000, 0.921393, -0.389178),(-0.004330, 0.966679, -0.266446),(-0.004330, 0.923696, -0.390151),(-0.004330, 0.961857, -0.265122),(-0.004330, 0.988391, -0.135326),(-0.005000, 0.990868, -0.135661),(-0.004330, 0.961857, -0.265122),(-0.005000, 0.990868, -0.135661),(-0.005000, 0.964268, -0.265784),(-0.002500, 0.960092, -0.264637),(-0.002500, 0.986577, -0.135080),(-0.004330, 0.988391, -0.135326),(-0.002500, 0.960092, -0.264637),(-0.004330, 0.988391, -0.135326),(-0.004330, 0.961857, -0.265122),(-0.000000, 0.959447, -0.264460),(-0.000000, 0.985913, -0.134990),(-0.002500, 0.986577, -0.135080),(-0.000000, 0.959447, -0.264460),(-0.002500, 0.986577, -0.135080),(-0.002500, 0.960092, -0.264637),(0.002500, 0.960092, -0.264637),(0.002500, 0.986577, -0.135080),(-0.000000, 0.985913, -0.134990),(0.002500, 0.960092, -0.264637),(-0.000000, 0.985913, -0.134990),(-0.000000, 0.959447, -0.264460),(0.004330, 0.961857, -0.265122),(0.004330, 0.988391, -0.135326),(0.002500, 0.986577, -0.135080),(0.004330, 0.961857, -0.265122),(0.002500, 0.986577, -0.135080),(0.002500, 0.960092, -0.264637),(0.005000, 0.964268, -0.265784),(0.005000, 0.990868, -0.135661),(0.004330, 0.988391, -0.135326),(0.005000, 0.964268, -0.265784),(0.004330, 0.988391, -0.135326),(0.004330, 0.961857, -0.265122),(0.004330, 0.966679, -0.266446),(0.004330, 0.993346, -0.135996),(0.005000, 0.990868, -0.135661),(0.004330, 0.966679, -0.266446),(0.005000, 0.990868, -0.135661),(0.005000, 0.964268, -0.265784),(0.002500, 0.968444, -0.266931),(0.002500, 0.995159, -0.136241),(0.004330, 0.993346, -0.135996),(0.002500, 0.968444, -0.266931),(0.004330, 0.993346, -0.135996),(0.004330, 0.966679, -0.266446),(-0.000000, 0.969090, -0.267108),(-0.000000, 0.995823, -0.136331),(0.002500, 0.995159, -0.136241),(-0.000000, 0.969090, -0.267108),(0.002500, 0.995159, -0.136241),(0.002500, 0.968444, -0.266931),(-0.002500, 0.968444, -0.266931),(-0.002500, 0.995159, -0.136241),(-0.000000, 0.995823, -0.136331),(-0.002500, 0.968444, -0.266931),(-0.000000, 0.995823, -0.136331),(-0.000000, 0.969090, -0.267108),(-0.004330, 0.966679, -0.266446),(-0.004330, 0.993346, -0.135996),(-0.002500, 0.995159, -0.136241),(-0.004330, 0.966679, -0.266446),(-0.002500, 0.995159, -0.136241),(-0.002500, 0.968444, -0.266931),(-0.005000, 0.964268, -0.265784),(-0.005000, 0.990868, -0.135661),(-0.004330, 0.993346, -0.135996),(-0.005000, 0.964268, -0.265784),(-0.004330, 0.993346, -0.135996),(-0.004330, 0.966679, -0.266446),(-0.004330, 0.988391, -0.135326),(-0.004330, 0.997500, -0.000000),(-0.005000, 1.000000, 0.000000),(-0.004330, 0.988391, -0.135326),(-0.005000, 1.000000, 0.000000),(-0.005000, 0.990868, -0.135661),(-0.002500, 0.986577, -0.135080),(-0.002500, 0.995670, -0.000000),(-0.004330, 0.997500, -0.000000),(-0.002500, 0.986577, -0.135080),(-0.004330, 0.997500, -0.000000),(-0.004330, 0.988391, -0.135326),(-0.000000, 0.985913, -0.134990),(-0.000000, 0.995000, -0.000000),(-0.002500, 0.995670, -0.000000),(-0.000000, 0.985913, -0.134990),(-0.002500, 0.995670, -0.000000),(-0.002500, 0.986577, -0.135080),(0.002500, 0.986577, -0.135080),(0.002500, 0.995670, -0.000000),(-0.000000, 0.995000, -0.000000),(0.002500, 0.986577, -0.135080),(-0.000000, 0.995000, -0.000000),(-0.000000, 0.985913, -0.134990),(0.004330, 0.988391, -0.135326),(0.004330, 0.997500, -0.000000),(0.002500, 0.995670, -0.000000),(0.004330, 0.988391, -0.135326),(0.002500, 0.995670, -0.000000),(0.002500, 0.986577, -0.135080),(0.005000, 0.990868, -0.135661),(0.005000, 1.000000, -0.000000),(0.004330, 0.997500, -0.000000),(0.005000, 0.990868, -0.135661),(0.004330, 0.997500, -0.000000),(0.004330, 0.988391, -0.135326),(0.004330, 0.993346, -0.135996),(0.004330, 1.002500, 0.000000),(0.005000, 1.000000, -0.000000),(0.004330, 0.993346, -0.135996),(0.005000, 1.000000, -0.000000),(0.005000, 0.990868, -0.135661),(0.002500, 0.995159, -0.136241),(0.002500, 1.004330, 0.000000),(0.004330, 1.002500, 0.000000),(0.002500, 0.995159, -0.136241),(0.004330, 1.002500, 0.000000),(0.004330, 0.993346, -0.135996),(-0.000000, 0.995823, -0.136331),(-0.000000, 1.005000, 0.000000),(0.002500, 1.004330, 0.000000),(-0.000000, 0.995823, -0.136331),(0.002500, 1.004330, 0.000000),(0.002500, 0.995159, -0.136241),(-0.002500, 0.995159, -0.136241),(-0.002500, 1.004330, 0.000000),(-0.000000, 1.005000, 0.000000),(-0.002500, 0.995159, -0.136241),(-0.000000, 1.005000, 0.000000),(-0.000000, 0.995823, -0.136331),(-0.004330, 0.993346, -0.135996),(-0.004330, 1.002500, 0.000000),(-0.002500, 1.004330, 0.000000),(-0.004330, 0.993346, -0.135996),(-0.002500, 1.004330, 0.000000),(-0.002500, 0.995159, -0.136241),(-0.005000, 0.990868, -0.135661),(-0.005000, 1.000000, 0.000000),(-0.004330, 1.002500, 0.000000),(-0.005000, 0.990868, -0.135661),(-0.004330, 1.002500, 0.000000),(-0.004330, 0.993346, -0.135996),(-0.004330, 0.997500, -0.000000),(-0.004330, 0.988391, 0.135325),(-0.005000, 0.990868, 0.135661),(-0.004330, 0.997500, -0.000000),(-0.005000, 0.990868, 0.135661),(-0.005000, 1.000000, 0.000000),(-0.002500, 0.995670, -0.000000),(-0.002500, 0.986577, 0.135080),(-0.004330, 0.988391, 0.135325),(-0.002500, 0.995670, -0.000000),(-0.004330, 0.988391, 0.135325),(-0.004330, 0.997500, -0.000000),(-0.000000, 0.995000, -0.000000),(-0.000000, 0.985913, 0.134990),(-0.002500, 0.986577, 0.135080),(-0.000000, 0.995000, -0.000000),(-0.002500, 0.986577, 0.135080),(-0.002500, 0.995670, -0.000000),(0.002500, 0.995670, -0.000000),(0.002500, 0.986577, 0.135080),(-0.000000, 0.985913, 0.134990),(0.002500, 0.995670, -0.000000),(-0.000000, 0.985913, 0.134990),(-0.000000, 0.995000, -0.000000),(0.004330, 0.997500, -0.000000),(0.004330, 0.988391, 0.135325),(0.002500, 0.986577, 0.135080),(0.004330, 0.997500, -0.000000),(0.002500, 0.986577, 0.135080),(0.002500, 0.995670, -0.000000),(0.005000, 1.000000, -0.000000),(0.005000, 0.990868, 0.135661),(0.004330, 0.988391, 0.135325),(0.005000, 1.000000, -0.000000),(0.004330, 0.988391, 0.135325),(0.004330, 0.997500, -0.000000),(0.004330, 1.002500, 0.000000),(0.004330, 0.993345, 0.135996),(0.005000, 0.990868, 0.135661),(0.004330, 1.002500, 0.000000),(0.005000, 0.990868, 0.135661),(0.005000, 1.000000, -0.000000),(0.002500, 1.004330, 0.000000),(0.002500, 0.995159, 0.136241),(0.004330, 0.993345, 0.135996),(0.002500, 1.004330, 0.000000),(0.004330, 0.993345, 0.135996),(0.004330, 1.002500, 0.000000),(-0.000000, 1.005000, 0.000000),(-0.000000, 0.995823, 0.136331),(0.002500, 0.995159, 0.136241),(-0.000000, 1.005000, 0.000000),(0.002500, 0.995159, 0.136241),(0.002500, 1.004330, 0.000000),(-0.002500, 1.004330, 0.000000),(-0.002500, 0.995159, 0.136241),(-0.000000, 0.995823, 0.136331),(-0.002500, 1.004330, 0.000000),(-0.000000, 0.995823, 0.136331),(-0.000000, 1.005000, 0.000000),(-0.004330, 1.002500, 0.000000),(-0.004330, 0.993345, 0.135996),(-0.002500, 0.995159, 0.136241),(-0.004330, 1.002500, 0.000000),(-0.002500, 0.995159, 0.136241),(-0.002500, 1.004330, 0.000000),(-0.005000, 1.000000, 0.000000),(-0.005000, 0.990868, 0.135661),(-0.004330, 0.993345, 0.135996),(-0.005000, 1.000000, 0.000000),(-0.004330, 0.993345, 0.135996),(-0.004330, 1.002500, 0.000000),(-0.004330, 0.988391, 0.135325),(-0.004330, 0.961857, 0.265122),(-0.005000, 0.964268, 0.265784),(-0.004330, 0.988391, 0.135325),(-0.005000, 0.964268, 0.265784),(-0.005000, 0.990868, 0.135661),(-0.002500, 0.986577, 0.135080),(-0.002500, 0.960092, 0.264637),(-0.004330, 0.961857, 0.265122),(-0.002500, 0.986577, 0.135080),(-0.004330, 0.961857, 0.265122),(-0.004330, 0.988391, 0.135325),(-0.000000, 0.985913, 0.134990),(-0.000000, 0.959446, 0.264460),(-0.002500, 0.960092, 0.264637),(-0.000000, 0.985913, 0.134990),(-0.002500, 0.960092, 0.264637),(-0.002500, 0.986577, 0.135080),(0.002500, 0.986577, 0.135080),(0.002500, 0.960092, 0.264637),(-0.000000, 0.959446, 0.264460),(0.002500, 0.986577, 0.135080),(-0.000000, 0.959446, 0.264460),(-0.000000, 0.985913, 0.134990),(0.004330, 0.988391, 0.135325),(0.004330, 0.961857, 0.265122),(0.002500, 0.960092, 0.264637),(0.004330, 0.988391, 0.135325),(0.002500, 0.960092, 0.264637),(0.002500, 0.986577, 0.135080),(0.005000, 0.990868, 0.135661),(0.005000, 0.964268, 0.265784),(0.004330, 0.961857, 0.265122),(0.005000, 0.990868, 0.135661),(0.004330, 0.961857, 0.265122),(0.004330, 0.988391, 0.135325),(0.004330, 0.993345, 0.135996),(0.004330, 0.966679, 0.266446),(0.005000, 0.964268, 0.265784),(0.004330, 0.993345, 0.135996),(0.005000, 0.964268, 0.265784),(0.005000, 0.990868, 0.135661),(0.002500, 0.995159, 0.136241),(0.002500, 0.968443, 0.266931),(0.004330, 0.966679, 0.266446),(0.002500, 0.995159, 0.136241),(0.004330, 0.966679, 0.266446),(0.004330, 0.993345, 0.135996),(-0.000000, 0.995823, 0.136331),(-0.000000, 0.969089, 0.267108),(0.002500, 0.968443, 0.266931),(-0.000000, 0.995823, 0.136331),(0.002500, 0.968443, 0.266931),(0.002500, 0.995159, 0.136241),(-0.002500, 0.995159, 0.136241),(-0.002500, 0.968443, 0.266931),(-0.000000, 0.969089, 0.267108),(-0.002500, 0.995159, 0.136241),(-0.000000, 0.969089, 0.267108),(-0.000000, 0.995823, 0.136331),(-0.004330, 0.993345, 0.135996),(-0.004330, 0.966679, 0.266446),(-0.002500, 0.968443, 0.266931),(-0.004330, 0.993345, 0.135996),(-0.002500, 0.968443, 0.266931),(-0.002500, 0.995159, 0.136241),(-0.005000, 0.990868, 0.135661),(-0.005000, 0.964268, 0.265784),(-0.004330, 0.966679, 0.266446),(-0.005000, 0.990868, 0.135661),(-0.004330, 0.966679, 0.266446),(-0.004330, 0.993345, 0.135996),(-0.004330, 0.961857, 0.265122),(-0.004330, 0.919090, 0.388205),(-0.005000, 0.921393, 0.389178),(-0.004330, 0.961857, 0.265122),(-0.005000, 0.921393, 0.389178),(-0.005000, 0.964268, 0.265784),(-0.002500, 0.960092, 0.264637),(-0.002500, 0.917404, 0.387492),(-0.004330, 0.919090, 0.388205),(-0.002500, 0.960092, 0.264637),(-0.004330, 0.919090, 0.388205),(-0.004330, 0.961857, 0.265122),(-0.000000, 0.959446, 0.264460),(-0.000000, 0.916787, 0.387232),(-0.002500, 0.917404, 0.387492),(-0.000000, 0.959446, 0.264460),(-0.002500, 0.917404, 0.387492),(-0.002500, 0.960092, 0.264637),(0.002500, 0.960092, 0.264637),(0.002500, 0.917404, 0.387492),(-0.000000, 0.916787, 0.387232),(0.002500, 0.960092, 0.264637),(-0.000000, 0.916787, 0.387232),(-0.000000, 0.959446, 0.264460),(0.004330, 0.961857, 0.265122),(0.004330, 0.919090, 0.388205),(0.002500, 0.917404, 0.387492),(0.004330, 0.961857, 0.265122),(0.002500, 0.917404, 0.387492),(0.002500, 0.960092, 0.264637),(0.005000, 0.964268, 0.265784),(0.005000, 0.921393, 0.389178),(0.004330, 0.919090, 0.388205),(0.005000, 0.964268, 0.265784),(0.004330, 0.919090, 0.388205),(0.004330, 0.961857, 0.265122),(0.004330, 0.966679, 0.266446),(0.004330, 0.923695, 0.390151),(0.005000, 0.921393, 0.389178),(0.004330, 0.966679, 0.266446),(0.005000, 0.921393, 0.389178),(0.005000, 0.964268, 0.265784),(0.002500, 0.968443, 0.266931),(0.002500, 0.925381, 0.390863),(0.004330, 0.923695, 0.390151),(0.002500, 0.968443, 0.266931),(0.004330, 0.923695, 0.390151),(0.004330, 0.966679, 0.266446),(-0.000000, 0.969089, 0.267108),(-0.000000, 0.925998, 0.391124),(0.002500, 0.925381, 0.390863),(-0.000000, 0.969089, 0.267108),(0.002500, 0.925381, 0.390863),(0.002500, 0.968443, 0.266931),(-0.002500, 0.968443, 0.266931),(-0.002500, 0.925381, 0.390863),(-0.000000, 0.925998, 0.391124),(-0.002500, 0.968443, 0.266931),(-0.000000, 0.925998, 0.391124),(-0.000000, 0.969089, 0.267108),(-0.004330, 0.966679, 0.266446),(-0.004330, 0.923695, 0.390151),(-0.002500, 0.925381, 0.390863),(-0.004330, 0.966679, 0.266446),(-0.002500, 0.925381, 0.390863),(-0.002500, 0.968443, 0.266931),(-0.005000, 0.964268, 0.265784),(-0.005000, 0.921393, 0.389178),(-0.004330, 0.923695, 0.390151),(-0.005000, 0.964268, 0.265784),(-0.004330, 0.923695, 0.390151),(-0.004330, 0.966679, 0.266446),(-0.004330, 0.919090, 0.388205),(-0.004330, 0.861278, 0.503385),(-0.005000, 0.863435, 0.504648),(-0.004330, 0.919090, 0.388205),(-0.005000, 0.863435, 0.504648),(-0.005000, 0.921393, 0.389178),(-0.002500, 0.917404, 0.387492),(-0.002500, 0.859698, 0.502460),(-0.004330, 0.861278, 0.503385),(-0.002500, 0.917404, 0.387492),(-0.004330, 0.861278, 0.503385),(-0.004330, 0.919090, 0.388205),(-0.000000, 0.916787, 0.387232),(-0.000000, 0.859120, 0.502122),(-0.002500, 0.859698, 0.502460),(-0.000000, 0.916787, 0.387232),(-0.002500, 0.859698, 0.502460),(-0.002500, 0.917404, 0.387492),(0.002500, 0.917404, 0.387492),(0.002500, 0.859698, 0.502460),(-0.000000, 0.859120, 0.502122),(0.002500, 0.917404, 0.387492),(-0.000000, 0.859120, 0.502122),(-0.000000, 0.916787, 0.387232),(0.004330, 0.919090, 0.388205),(0.004330, 0.861278, 0.503385),(0.002500, 0.859698, 0.502460),(0.004330, 0.919090, 0.388205),(0.002500, 0.859698, 0.502460),(0.002500, 0.917404, 0.387492),(0.005000, 0.921393, 0.389178),(0.005000, 0.863435, 0.504648),(0.004330, 0.861278, 0.503385),(0.005000, 0.921393, 0.389178),(0.004330, 0.861278, 0.503385),(0.004330, 0.919090, 0.388205),(0.004330, 0.923695, 0.390151),(0.004330, 0.865593, 0.505911),(0.005000, 0.863435, 0.504648),(0.004330, 0.923695, 0.390151),(0.005000, 0.863435, 0.504648),(0.005000, 0.921393, 0.389178),(0.002500, 0.925381, 0.390863),(0.002500, 0.867172, 0.506836),(0.004330, 0.865593, 0.505911),(0.002500, 0.925381, 0.390863),(0.004330, 0.865593, 0.505911),(0.004330, 0.923695, 0.390151),(-0.000000, 0.925998, 0.391124),(-0.000000, 0.867750, 0.507174),(0.002500, 0.867172, 0.506836),(-0.000000, 0.925998, 0.391124),(0.002500, 0.867172, 0.506836),(0.002500, 0.925381, 0.390863),(-0.002500, 0.925381, 0.390863),(-0.002500, 0.867172, 0.506836),(-0.000000, 0.867750, 0.507174),(-0.002500, 0.925381, 0.390863),(-0.000000, 0.867750, 0.507174),(-0.000000, 0.925998, 0.391124),(-0.004330, 0.923695, 0.390151),(-0.004330, 0.865593, 0.505911),(-0.002500, 0.867172, 0.506836),(-0.004330, 0.923695, 0.390151),(-0.002500, 0.867172, 0.506836),(-0.002500, 0.925381, 0.390863),(-0.005000, 0.921393, 0.389178),(-0.005000, 0.863435, 0.504648),(-0.004330, 0.865593, 0.505911),(-0.005000, 0.921393, 0.389178),(-0.004330, 0.865593, 0.505911),(-0.004330, 0.923695, 0.390151),(-0.004330, 0.861278, 0.503385),(-0.004330, 0.789611, 0.609474),(-0.005000, 0.791589, 0.611002),(-0.004330, 0.861278, 0.503385),(-0.005000, 0.791589, 0.611002),(-0.005000, 0.863435, 0.504648),(-0.002500, 0.859698, 0.502460),(-0.002500, 0.788163, 0.608354),(-0.004330, 0.789611, 0.609474),(-0.002500, 0.859698, 0.502460),(-0.004330, 0.789611, 0.609474),(-0.004330, 0.861278, 0.503385),(-0.000000, 0.859120, 0.502122),(-0.000000, 0.787633, 0.607945),(-0.002500, 0.788163, 0.608354),(-0.000000, 0.859120, 0.502122),(-0.002500, 0.788163, 0.608354),(-0.002500, 0.859698, 0.502460),(0.002500, 0.859698, 0.502460),(0.002500, 0.788163, 0.608354),(-0.000000, 0.787633, 0.607945),(0.002500, 0.859698, 0.502460),(-0.000000, 0.787633, 0.607945),(-0.000000, 0.859120, 0.502122),(0.004330, 0.861278, 0.503385),(0.004330, 0.789611, 0.609474),(0.002500, 0.788163, 0.608354),(0.004330, 0.861278, 0.503385),(0.002500, 0.788163, 0.608354),(0.002500, 0.859698, 0.502460),(0.005000, 0.863435, 0.504648),(0.005000, 0.791589, 0.611002),(0.004330, 0.789611, 0.609474),(0.005000, 0.863435, 0.504648),(0.004330, 0.789611, 0.609474),(0.004330, 0.861278, 0.503385),(0.004330, 0.865593, 0.505911),(0.004330, 0.793567, 0.612531),(0.005000, 0.791589, 0.611002),(0.004330, 0.865593, 0.505911),(0.005000, 0.791589, 0.611002),(0.005000, 0.863435, 0.504648),(0.002500, 0.867172, 0.506836),(0.002500, 0.795015, 0.613650),(0.004330, 0.793567, 0.612531),(0.002500, 0.867172, 0.506836),(0.004330, 0.793567, 0.612531),(0.004330, 0.865593, 0.505911),(-0.000000, 0.867750, 0.507174),(-0.000000, 0.795545, 0.614060),(0.002500, 0.795015, 0.613650),(-0.000000, 0.867750, 0.507174),(0.002500, 0.795015, 0.613650),(0.002500, 0.867172, 0.506836),(-0.002500, 0.867172, 0.506836),(-0.002500, 0.795015, 0.613650),(-0.000000, 0.795545, 0.614060),(-0.002500, 0.867172, 0.506836),(-0.000000, 0.795545, 0.614060),(-0.000000, 0.867750, 0.507174),(-0.004330, 0.865593, 0.505911),(-0.004330, 0.793567, 0.612531),(-0.002500, 0.795015, 0.613650),(-0.004330, 0.865593, 0.505911),(-0.002500, 0.795015, 0.613650),(-0.002500, 0.867172, 0.506836),(-0.005000, 0.863435, 0.504648),(-0.005000, 0.791589, 0.611002),(-0.004330, 0.793567, 0.612531),(-0.005000, 0.863435, 0.504648),(-0.004330, 0.793567, 0.612531),(-0.004330, 0.865593, 0.505911),(-0.004330, 0.789611, 0.609474),(-0.004330, 0.705279, 0.705279),(-0.005000, 0.707047, 0.707047),(-0.004330, 0.789611, 0.609474),(-0.005000, 0.707047, 0.707047),(-0.005000, 0.791589, 0.611002),(-0.002500, 0.788163, 0.608354),(-0.002500, 0.703985, 0.703985),(-0.004330, 0.705279, 0.705279),(-0.002500, 0.788163, 0.608354),(-0.004330, 0.705279, 0.705279),(-0.004330, 0.789611, 0.609474),(-0.000000, 0.787633, 0.607945),(-0.000000, 0.703511, 0.703511),(-0.002500, 0.703985, 0.703985),(-0.000000, 0.787633, 0.607945),(-0.002500, 0.703985, 0.703985),(-0.002500, 0.788163, 0.608354),(0.002500, 0.788163, 0.608354),(0.002500, 0.703985, 0.703985),(-0.000000, 0.703511, 0.703511),(0.002500, 0.788163, 0.608354),(-0.000000, 0.703511, 0.703511),(-0.000000, 0.787633, 0.607945),(0.004330, 0.789611, 0.609474),(0.004330, 0.705279, 0.705279),(0.002500, 0.703985, 0.703985),(0.004330, 0.789611, 0.609474),(0.002500, 0.703985, 0.703985),(0.002500, 0.788163, 0.608354),(0.005000, 0.791589, 0.611002),(0.005000, 0.707047, 0.707047),(0.004330, 0.705279, 0.705279),(0.005000, 0.791589, 0.611002),(0.004330, 0.705279, 0.705279),(0.004330, 0.789611, 0.609474),(0.004330, 0.793567, 0.612531),(0.004330, 0.708815, 0.708815),(0.005000, 0.707047, 0.707047),(0.004330, 0.793567, 0.612531),(0.005000, 0.707047, 0.707047),(0.005000, 0.791589, 0.611002),(0.002500, 0.795015, 0.613650),(0.002500, 0.710109, 0.710109),(0.004330, 0.708815, 0.708815),(0.002500, 0.795015, 0.613650),(0.004330, 0.708815, 0.708815),(0.004330, 0.793567, 0.612531),(-0.000000, 0.795545, 0.614060),(0.000000, 0.710582, 0.710582),(0.002500, 0.710109, 0.710109),(-0.000000, 0.795545, 0.614060),(0.002500, 0.710109, 0.710109),(0.002500, 0.795015, 0.613650),(-0.002500, 0.795015, 0.613650),(-0.002500, 0.710109, 0.710109),(0.000000, 0.710582, 0.710582),(-0.002500, 0.795015, 0.613650),(0.000000, 0.710582, 0.710582),(-0.000000, 0.795545, 0.614060),(-0.004330, 0.793567, 0.612531),(-0.004330, 0.708815, 0.708815),(-0.002500, 0.710109, 0.710109),(-0.004330, 0.793567, 0.612531),(-0.002500, 0.710109, 0.710109),(-0.002500, 0.795015, 0.613650),(-0.005000, 0.791589, 0.611002),(-0.005000, 0.707047, 0.707047),(-0.004330, 0.708815, 0.708815),(-0.005000, 0.791589, 0.611002),(-0.004330, 0.708815, 0.708815),(-0.004330, 0.793567, 0.612531),(-0.004330, 0.705279, 0.705279),(-0.004330, 0.609474, 0.789611),(-0.005000, 0.611002, 0.791589),(-0.004330, 0.705279, 0.705279),(-0.005000, 0.611002, 0.791589),(-0.005000, 0.707047, 0.707047),(-0.002500, 0.703985, 0.703985),(-0.002500, 0.608354, 0.788163),(-0.004330, 0.609474, 0.789611),(-0.002500, 0.703985, 0.703985),(-0.004330, 0.609474, 0.789611),(-0.004330, 0.705279, 0.705279),(-0.000000, 0.703511, 0.703511),(0.000000, 0.607945, 0.787633),(-0.002500, 0.608354, 0.788163),(-0.000000, 0.703511, 0.703511),(-0.002500, 0.608354, 0.788163),(-0.002500, 0.703985, 0.703985),(0.002500, 0.703985, 0.703985),(0.002500, 0.608354, 0.788163),(0.000000, 0.607945, 0.787633),(0.002500, 0.703985, 0.703985),(0.000000, 0.607945, 0.787633),(-0.000000, 0.703511, 0.703511),(0.004330, 0.705279, 0.705279),(0.004330, 0.609474, 0.789611),(0.002500, 0.608354, 0.788163),(0.004330, 0.705279, 0.705279),(0.002500, 0.608354, 0.788163),(0.002500, 0.703985, 0.703985),(0.005000, 0.707047, 0.707047),(0.005000, 0.611002, 0.791589),(0.004330, 0.609474, 0.789611),(0.005000, 0.707047, 0.707047),(0.004330, 0.609474, 0.789611),(0.004330, 0.705279, 0.705279),(0.004330, 0.708815, 0.708815),(0.004330, 0.612531, 0.793567),(0.005000, 0.611002, 0.791589),(0.004330, 0.708815, 0.708815),(0.005000, 0.611002, 0.791589),(0.005000, 0.707047, 0.707047),(0.002500, 0.710109, 0.710109),(0.002500, 0.613650, 0.795015),(0.004330, 0.612531, 0.793567),(0.002500, 0.710109, 0.710109),(0.004330, 0.612531, 0.793567),(0.004330, 0.708815, 0.708815),(0.000000, 0.710582, 0.710582),(0.000000, 0.614060, 0.795545),(0.002500, 0.613650, 0.795015),(0.000000, 0.710582, 0.710582),(0.002500, 0.613650, 0.795015),(0.002500, 0.710109, 0.710109),(-0.002500, 0.710109, 0.710109),(-0.002500, 0.613650, 0.795015),(0.000000, 0.614060, 0.795545),(-0.002500, 0.710109, 0.710109),(0.000000, 0.614060, 0.795545),(0.000000, 0.710582, 0.710582),(-0.004330, 0.708815, 0.708815),(-0.004330, 0.612531, 0.793567),(-0.002500, 0.613650, 0.795015),(-0.004330, 0.708815, 0.708815),(-0.002500, 0.613650, 0.795015),(-0.002500, 0.710109, 0.710109),(-0.005000, 0.707047, 0.707047),(-0.005000, 0.611002, 0.791589),(-0.004330, 0.612531, 0.793567),(-0.005000, 0.707047, 0.707047),(-0.004330, 0.612531, 0.793567),(-0.004330, 0.708815, 0.708815),(-0.004330, 0.609474, 0.789611),(-0.004330, 0.503385, 0.861278),(-0.005000, 0.504648, 0.863435),(-0.004330, 0.609474, 0.789611),(-0.005000, 0.504648, 0.863435),(-0.005000, 0.611002, 0.791589),(-0.002500, 0.608354, 0.788163),(-0.002500, 0.502460, 0.859698),(-0.004330, 0.503385, 0.861278),(-0.002500, 0.608354, 0.788163),(-0.004330, 0.503385, 0.861278),(-0.004330, 0.609474, 0.789611),(0.000000, 0.607945, 0.787633),(0.000000, 0.502122, 0.859120),(-0.002500, 0.502460, 0.859698),(0.000000, 0.607945, 0.787633),(-0.002500, 0.502460, 0.859698),(-0.002500, 0.608354, 0.788163),(0.002500, 0.608354, 0.788163),(0.002500, 0.502460, 0.859698),(0.000000, 0.502122, 0.859120),(0.002500, 0.608354, 0.788163),(0.000000, 0.502122, 0.859120),(0.000000, 0.607945, 0.787633),(0.004330, 0.609474, 0.789611),(0.004330, 0.503385, 0.861278),(0.002500, 0.502460, 0.859698),(0.004330, 0.609474, 0.789611),(0.002500, 0.502460, 0.859698),(0.002500, 0.608354, 0.788163),(0.005000, 0.611002, 0.791589),(0.005000, 0.504648, 0.863435),(0.004330, 0.503385, 0.861278),(0.005000, 0.611002, 0.791589),(0.004330, 0.503385, 0.861278),(0.004330, 0.609474, 0.789611),(0.004330, 0.612531, 0.793567),(0.004330, 0.505911, 0.865593),(0.005000, 0.504648, 0.863435),(0.004330, 0.612531, 0.793567),(0.005000, 0.504648, 0.863435),(0.005000, 0.611002, 0.791589),(0.002500, 0.613650, 0.795015),(0.002500, 0.506836, 0.867172),(0.004330, 0.505911, 0.865593),(0.002500, 0.613650, 0.795015),(0.004330, 0.505911, 0.865593),(0.004330, 0.612531, 0.793567),(0.000000, 0.614060, 0.795545),(0.000000, 0.507174, 0.867750),(0.002500, 0.506836, 0.867172),(0.000000, 0.614060, 0.795545),(0.002500, 0.506836, 0.867172),(0.002500, 0.613650, 0.795015),(-0.002500, 0.613650, 0.795015),(-0.002500, 0.506836, 0.867172),(0.000000, 0.507174, 0.867750),(-0.002500, 0.613650, 0.795015),(0.000000, 0.507174, 0.867750),(0.000000, 0.614060, 0.795545),(-0.004330, 0.612531, 0.793567),(-0.004330, 0.505911, 0.865593),(-0.002500, 0.506836, 0.867172),(-0.004330, 0.612531, 0.793567),(-0.002500, 0.506836, 0.867172),(-0.002500, 0.613650, 0.795015),(-0.005000, 0.611002, 0.791589),(-0.005000, 0.504648, 0.863435),(-0.004330, 0.505911, 0.865593),(-0.005000, 0.611002, 0.791589),(-0.004330, 0.505911, 0.865593),(-0.004330, 0.612531, 0.793567),(-0.004330, 0.503385, 0.861278),(-0.004330, 0.388205, 0.919090),(-0.005000, 0.389178, 0.921393),(-0.004330, 0.503385, 0.861278),(-0.005000, 0.389178, 0.921393),(-0.005000, 0.504648, 0.863435),(-0.002500, 0.502460, 0.859698),(-0.002500, 0.387492, 0.917404),(-0.004330, 0.388205, 0.919090),(-0.002500, 0.502460, 0.859698),(-0.004330, 0.388205, 0.919090),(-0.004330, 0.503385, 0.861278),(0.000000, 0.502122, 0.859120),(0.000000, 0.387232, 0.916787),(-0.002500, 0.387492, 0.917404),(0.000000, 0.502122, 0.859120),(-0.002500, 0.387492, 0.917404),(-0.002500, 0.502460, 0.859698),(0.002500, 0.502460, 0.859698),(0.002500, 0.387492, 0.917404),(0.000000, 0.387232, 0.916787),(0.002500, 0.502460, 0.859698),(0.000000, 0.387232, 0.916787),(0.000000, 0.502122, 0.859120),(0.004330, 0.503385, 0.861278),(0.004330, 0.388205, 0.919090),(0.002500, 0.387492, 0.917404),(0.004330, 0.503385, 0.861278),(0.002500, 0.387492, 0.917404),(0.002500, 0.502460, 0.859698),(0.005000, 0.504648, 0.863435),(0.005000, 0.389178, 0.921393),(0.004330, 0.388205, 0.919090),(0.005000, 0.504648, 0.863435),(0.004330, 0.388205, 0.919090),(0.004330, 0.503385, 0.861278),(0.004330, 0.505911, 0.865593),(0.004330, 0.390151, 0.923696),(0.005000, 0.389178, 0.921393),(0.004330, 0.505911, 0.865593),(0.005000, 0.389178, 0.921393),(0.005000, 0.504648, 0.863435),(0.002500, 0.506836, 0.867172),(0.002500, 0.390863, 0.925381),(0.004330, 0.390151, 0.923696),(0.002500, 0.506836, 0.867172),(0.004330, 0.390151, 0.923696),(0.004330, 0.505911, 0.865593),(0.000000, 0.507174, 0.867750),(0.000000, 0.391124, 0.925998),(0.002500, 0.390863, 0.925381),(0.000000, 0.507174, 0.867750),(0.002500, 0.390863, 0.925381),(0.002500, 0.506836, 0.867172),(-0.002500, 0.506836, 0.867172),(-0.002500, 0.390863, 0.925381),(0.000000, 0.391124, 0.925998),(-0.002500, 0.506836, 0.867172),(0.000000, 0.391124, 0.925998),(0.000000, 0.507174, 0.867750),(-0.004330, 0.505911, 0.865593),(-0.004330, 0.390151, 0.923696),(-0.002500, 0.390863, 0.925381),(-0.004330, 0.505911, 0.865593),(-0.002500, 0.390863, 0.925381),(-0.002500, 0.506836, 0.867172),(-0.005000, 0.504648, 0.863435),(-0.005000, 0.389178, 0.921393),(-0.004330, 0.390151, 0.923696),(-0.005000, 0.504648, 0.863435),(-0.004330, 0.390151, 0.923696),(-0.004330, 0.505911, 0.865593),(-0.004330, 0.388205, 0.919090),(-0.004330, 0.265122, 0.961857),(-0.005000, 0.265784, 0.964268),(-0.004330, 0.388205, 0.919090),(-0.005000, 0.265784, 0.964268),(-0.005000, 0.389178, 0.921393),(-0.002500, 0.387492, 0.917404),(-0.002500, 0.264637, 0.960092),(-0.004330, 0.265122, 0.961857),(-0.002500, 0.387492, 0.917404),(-0.004330, 0.265122, 0.961857),(-0.004330, 0.388205, 0.919090),(0.000000, 0.387232, 0.916787),(0.000000, 0.264460, 0.959447),(-0.002500, 0.264637, 0.960092),(0.000000, 0.387232, 0.916787),(-0.002500, 0.264637, 0.960092),(-0.002500, 0.387492, 0.917404),(0.002500, 0.387492, 0.917404),(0.002500, 0.264637, 0.960092),(0.000000, 0.264460, 0.959447),(0.002500, 0.387492, 0.917404),(0.000000, 0.264460, 0.959447),(0.000000, 0.387232, 0.916787),(0.004330, 0.388205, 0.919090),(0.004330, 0.265122, 0.961857),(0.002500, 0.264637, 0.960092),(0.004330, 0.388205, 0.919090),(0.002500, 0.264637, 0.960092),(0.002500, 0.387492, 0.917404),(0.005000, 0.389178, 0.921393),(0.005000, 0.265784, 0.964268),(0.004330, 0.265122, 0.961857),(0.005000, 0.389178, 0.921393),(0.004330, 0.265122, 0.961857),(0.004330, 0.388205, 0.919090),(0.004330, 0.390151, 0.923696),(0.004330, 0.266446, 0.966679),(0.005000, 0.265784, 0.964268),(0.004330, 0.390151, 0.923696),(0.005000, 0.265784, 0.964268),(0.005000, 0.389178, 0.921393),(0.002500, 0.390863, 0.925381),(0.002500, 0.266931, 0.968444),(0.004330, 0.266446, 0.966679),(0.002500, 0.390863, 0.925381),(0.004330, 0.266446, 0.966679),(0.004330, 0.390151, 0.923696),(0.000000, 0.391124, 0.925998),(0.000000, 0.267108, 0.969090),(0.002500, 0.266931, 0.968444),(0.000000, 0.391124, 0.925998),(0.002500, 0.266931, 0.968444),(0.002500, 0.390863, 0.925381),(-0.002500, 0.390863, 0.925381),(-0.002500, 0.266931, 0.968444),(0.000000, 0.267108, 0.969090),(-0.002500, 0.390863, 0.925381),(0.000000, 0.267108, 0.969090),(0.000000, 0.391124, 0.925998),(-0.004330, 0.390151, 0.923696),(-0.004330, 0.266446, 0.966679),(-0.002500, 0.266931, 0.968444),(-0.004330, 0.390151, 0.923696),(-0.002500, 0.266931, 0.968444),(-0.002500, 0.390863, 0.925381),(-0.005000, 0.389178, 0.921393),(-0.005000, 0.265784, 0.964268),(-0.004330, 0.266446, 0.966679),(-0.005000, 0.389178, 0.921393),(-0.004330, 0.266446, 0.966679),(-0.004330, 0.390151, 0.923696),(-0.004330, 0.265122, 0.961857),(-0.004330, 0.135326, 0.988391),(-0.005000, 0.135661, 0.990868),(-0.004330, 0.265122, 0.961857),(-0.005000, 0.135661, 0.990868),(-0.005000, 0.265784, 0.964268),(-0.002500, 0.264637, 0.960092),(-0.002500, 0.135080, 0.986577),(-0.004330, 0.135326, 0.988391),(-0.002500, 0.264637, 0.960092),(-0.004330, 0.135326, 0.988391),(-0.004330, 0.265122, 0.961857),(0.000000, 0.264460, 0.959447),(0.000000, 0.134990, 0.985913),(-0.002500, 0.135080, 0.986577),(0.000000, 0.264460, 0.959447),(-0.002500, 0.135080, 0.986577),(-0.002500, 0.264637, 0.960092),(0.002500, 0.264637, 0.960092),(0.002500, 0.135080, 0.986577),(0.000000, 0.134990, 0.985913),(0.002500, 0.264637, 0.960092),(0.000000, 0.134990, 0.985913),(0.000000, 0.264460, 0.959447),(0.004330, 0.265122, 0.961857),(0.004330, 0.135326, 0.988391),(0.002500, 0.135080, 0.986577),(0.004330, 0.265122, 0.961857),(0.002500, 0.135080, 0.986577),(0.002500, 0.264637, 0.960092),(0.005000, 0.265784, 0.964268),(0.005000, 0.135661, 0.990868),(0.004330, 0.135326, 0.988391),(0.005000, 0.265784, 0.964268),(0.004330, 0.135326, 0.988391),(0.004330, 0.265122, 0.961857),(0.004330, 0.266446, 0.966679),(0.004330, 0.135996, 0.993346),(0.005000, 0.135661, 0.990868),(0.004330, 0.266446, 0.966679),(0.005000, 0.135661, 0.990868),(0.005000, 0.265784, 0.964268),(0.002500, 0.266931, 0.968444),(0.002500, 0.136241, 0.995159),(0.004330, 0.135996, 0.993346),(0.002500, 0.266931, 0.968444),(0.004330, 0.135996, 0.993346),(0.004330, 0.266446, 0.966679),(0.000000, 0.267108, 0.969090),(0.000000, 0.136331, 0.995823),(0.002500, 0.136241, 0.995159),(0.000000, 0.267108, 0.969090),(0.002500, 0.136241, 0.995159),(0.002500, 0.266931, 0.968444),(-0.002500, 0.266931, 0.968444),(-0.002500, 0.136241, 0.995159),(0.000000, 0.136331, 0.995823),(-0.002500, 0.266931, 0.968444),(0.000000, 0.136331, 0.995823),(0.000000, 0.267108, 0.969090),(-0.004330, 0.266446, 0.966679),(-0.004330, 0.135996, 0.993346),(-0.002500, 0.136241, 0.995159),(-0.004330, 0.266446, 0.966679),(-0.002500, 0.136241, 0.995159),(-0.002500, 0.266931, 0.968444),(-0.005000, 0.265784, 0.964268),(-0.005000, 0.135661, 0.990868),(-0.004330, 0.135996, 0.993346),(-0.005000, 0.265784, 0.964268),(-0.004330, 0.135996, 0.993346),(-0.004330, 0.266446, 0.966679),(-0.004330, 0.135326, 0.988391),(-0.004330, 0.000000, 0.997500),(-0.005000, 0.000000, 1.000000),(-0.004330, 0.135326, 0.988391),(-0.005000, 0.000000, 1.000000),(-0.005000, 0.135661, 0.990868),(-0.002500, 0.135080, 0.986577),(-0.002500, 0.000000, 0.995670),(-0.004330, 0.000000, 0.997500),(-0.002500, 0.135080, 0.986577),(-0.004330, 0.000000, 0.997500),(-0.004330, 0.135326, 0.988391),(0.000000, 0.134990, 0.985913),(0.000000, 0.000000, 0.995000),(-0.002500, 0.000000, 0.995670),(0.000000, 0.134990, 0.985913),(-0.002500, 0.000000, 0.995670),(-0.002500, 0.135080, 0.986577),(0.002500, 0.135080, 0.986577),(0.002500, 0.000000, 0.995670),(0.000000, 0.000000, 0.995000),(0.002500, 0.135080, 0.986577),(0.000000, 0.000000, 0.995000),(0.000000, 0.134990, 0.985913),(0.004330, 0.135326, 0.988391),(0.004330, 0.000000, 0.997500),(0.002500, 0.000000, 0.995670),(0.004330, 0.135326, 0.988391),(0.002500, 0.000000, 0.995670),(0.002500, 0.135080, 0.986577),(0.005000, 0.135661, 0.990868),(0.005000, 0.000000, 1.000000),(0.004330, 0.000000, 0.997500),(0.005000, 0.135661, 0.990868),(0.004330, 0.000000, 0.997500),(0.004330, 0.135326, 0.988391),(0.004330, 0.135996, 0.993346),(0.004330, -0.000000, 1.002500),(0.005000, 0.000000, 1.000000),(0.004330, 0.135996, 0.993346),(0.005000, 0.000000, 1.000000),(0.005000, 0.135661, 0.990868),(0.002500, 0.136241, 0.995159),(0.002500, -0.000000, 1.004330),(0.004330, -0.000000, 1.002500),(0.002500, 0.136241, 0.995159),(0.004330, -0.000000, 1.002500),(0.004330, 0.135996, 0.993346),(0.000000, 0.136331, 0.995823),(0.000000, -0.000000, 1.005000),(0.002500, -0.000000, 1.004330),(0.000000, 0.136331, 0.995823),(0.002500, -0.000000, 1.004330),(0.002500, 0.136241, 0.995159),(-0.002500, 0.136241, 0.995159),(-0.002500, -0.000000, 1.004330),(0.000000, -0.000000, 1.005000),(-0.002500, 0.136241, 0.995159),(0.000000, -0.000000, 1.005000),(0.000000, 0.136331, 0.995823),(-0.004330, 0.135996, 0.993346),(-0.004330, -0.000000, 1.002500),(-0.002500, -0.000000, 1.004330),(-0.004330, 0.135996, 0.993346),(-0.002500, -0.000000, 1.004330),(-0.002500, 0.136241, 0.995159),(-0.005000, 0.135661, 0.990868),(-0.005000, 0.000000, 1.000000),(-0.004330, -0.000000, 1.002500),(-0.005000, 0.135661, 0.990868),(-0.004330, -0.000000, 1.002500),(-0.004330, 0.135996, 0.993346),(-0.004330, 0.000000, 0.997500),(-0.004330, -0.135325, 0.988391),(-0.005000, -0.135661, 0.990868),(-0.004330, 0.000000, 0.997500),(-0.005000, -0.135661, 0.990868),(-0.005000, 0.000000, 1.000000),(-0.002500, 0.000000, 0.995670),(-0.002500, -0.135080, 0.986577),(-0.004330, -0.135325, 0.988391),(-0.002500, 0.000000, 0.995670),(-0.004330, -0.135325, 0.988391),(-0.004330, 0.000000, 0.997500),(0.000000, 0.000000, 0.995000),(0.000000, -0.134990, 0.985913),(-0.002500, -0.135080, 0.986577),(0.000000, 0.000000, 0.995000),(-0.002500, -0.135080, 0.986577),(-0.002500, 0.000000, 0.995670),(0.002500, 0.000000, 0.995670),(0.002500, -0.135080, 0.986577),(0.000000, -0.134990, 0.985913),(0.002500, 0.000000, 0.995670),(0.000000, -0.134990, 0.985913),(0.000000, 0.000000, 0.995000),(0.004330, 0.000000, 0.997500),(0.004330, -0.135325, 0.988391),(0.002500, -0.135080, 0.986577),(0.004330, 0.000000, 0.997500),(0.002500, -0.135080, 0.986577),(0.002500, 0.000000, 0.995670),(0.005000, 0.000000, 1.000000),(0.005000, -0.135661, 0.990868),(0.004330, -0.135325, 0.988391),(0.005000, 0.000000, 1.000000),(0.004330, -0.135325, 0.988391),(0.004330, 0.000000, 0.997500),(0.004330, -0.000000, 1.002500),(0.004330, -0.135996, 0.993345),(0.005000, -0.135661, 0.990868),(0.004330, -0.000000, 1.002500),(0.005000, -0.135661, 0.990868),(0.005000, 0.000000, 1.000000),(0.002500, -0.000000, 1.004330),(0.002500, -0.136241, 0.995159),(0.004330, -0.135996, 0.993345),(0.002500, -0.000000, 1.004330),(0.004330, -0.135996, 0.993345),(0.004330, -0.000000, 1.002500),(0.000000, -0.000000, 1.005000),(0.000000, -0.136331, 0.995823),(0.002500, -0.136241, 0.995159),(0.000000, -0.000000, 1.005000),(0.002500, -0.136241, 0.995159),(0.002500, -0.000000, 1.004330),(-0.002500, -0.000000, 1.004330),(-0.002500, -0.136241, 0.995159),(0.000000, -0.136331, 0.995823),(-0.002500, -0.000000, 1.004330),(0.000000, -0.136331, 0.995823),(0.000000, -0.000000, 1.005000),(-0.004330, -0.000000, 1.002500),(-0.004330, -0.135996, 0.993345),(-0.002500, -0.136241, 0.995159),(-0.004330, -0.000000, 1.002500),(-0.002500, -0.136241, 0.995159),(-0.002500, -0.000000, 1.004330),(-0.005000, 0.000000, 1.000000),(-0.005000, -0.135661, 0.990868),(-0.004330, -0.135996, 0.993345),(-0.005000, 0.000000, 1.000000),(-0.004330, -0.135996, 0.993345),(-0.004330, -0.000000, 1.002500),(-0.004330, -0.135325, 0.988391),(-0.004330, -0.265122, 0.961857),(-0.005000, -0.265784, 0.964268),(-0.004330, -0.135325, 0.988391),(-0.005000, -0.265784, 0.964268),(-0.005000, -0.135661, 0.990868),(-0.002500, -0.135080, 0.986577),(-0.002500, -0.264637, 0.960092),(-0.004330, -0.265122, 0.961857),(-0.002500, -0.135080, 0.986577),(-0.004330, -0.265122, 0.961857),(-0.004330, -0.135325, 0.988391),(0.000000, -0.134990, 0.985913),(0.000000, -0.264460, 0.959446),(-0.002500, -0.264637, 0.960092),(0.000000, -0.134990, 0.985913),(-0.002500, -0.264637, 0.960092),(-0.002500, -0.135080, 0.986577),(0.002500, -0.135080, 0.986577),(0.002500, -0.264637, 0.960092),(0.000000, -0.264460, 0.959446),(0.002500, -0.135080, 0.986577),(0.000000, -0.264460, 0.959446),(0.000000, -0.134990, 0.985913),(0.004330, -0.135325, 0.988391),(0.004330, -0.265122, 0.961857),(0.002500, -0.264637, 0.960092),(0.004330, -0.135325, 0.988391),(0.002500, -0.264637, 0.960092),(0.002500, -0.135080, 0.986577),(0.005000, -0.135661, 0.990868),(0.005000, -0.265784, 0.964268),(0.004330, -0.265122, 0.961857),(0.005000, -0.135661, 0.990868),(0.004330, -0.265122, 0.961857),(0.004330, -0.135325, 0.988391),(0.004330, -0.135996, 0.993345),(0.004330, -0.266446, 0.966679),(0.005000, -0.265784, 0.964268),(0.004330, -0.135996, 0.993345),(0.005000, -0.265784, 0.964268),(0.005000, -0.135661, 0.990868),(0.002500, -0.136241, 0.995159),(0.002500, -0.266931, 0.968443),(0.004330, -0.266446, 0.966679),(0.002500, -0.136241, 0.995159),(0.004330, -0.266446, 0.966679),(0.004330, -0.135996, 0.993345),(0.000000, -0.136331, 0.995823),(0.000000, -0.267108, 0.969089),(0.002500, -0.266931, 0.968443),(0.000000, -0.136331, 0.995823),(0.002500, -0.266931, 0.968443),(0.002500, -0.136241, 0.995159),(-0.002500, -0.136241, 0.995159),(-0.002500, -0.266931, 0.968443),(0.000000, -0.267108, 0.969089),(-0.002500, -0.136241, 0.995159),(0.000000, -0.267108, 0.969089),(0.000000, -0.136331, 0.995823),(-0.004330, -0.135996, 0.993345),(-0.004330, -0.266446, 0.966679),(-0.002500, -0.266931, 0.968443),(-0.004330, -0.135996, 0.993345),(-0.002500, -0.266931, 0.968443),(-0.002500, -0.136241, 0.995159),(-0.005000, -0.135661, 0.990868),(-0.005000, -0.265784, 0.964268),(-0.004330, -0.266446, 0.966679),(-0.005000, -0.135661, 0.990868),(-0.004330, -0.266446, 0.966679),(-0.004330, -0.135996, 0.993345),(-0.004330, -0.265122, 0.961857),(-0.004330, -0.388205, 0.919090),(-0.005000, -0.389178, 0.921393),(-0.004330, -0.265122, 0.961857),(-0.005000, -0.389178, 0.921393),(-0.005000, -0.265784, 0.964268),(-0.002500, -0.264637, 0.960092),(-0.002500, -0.387492, 0.917404),(-0.004330, -0.388205, 0.919090),(-0.002500, -0.264637, 0.960092),(-0.004330, -0.388205, 0.919090),(-0.004330, -0.265122, 0.961857),(0.000000, -0.264460, 0.959446),(0.000000, -0.387232, 0.916787),(-0.002500, -0.387492, 0.917404),(0.000000, -0.264460, 0.959446),(-0.002500, -0.387492, 0.917404),(-0.002500, -0.264637, 0.960092),(0.002500, -0.264637, 0.960092),(0.002500, -0.387492, 0.917404),(0.000000, -0.387232, 0.916787),(0.002500, -0.264637, 0.960092),(0.000000, -0.387232, 0.916787),(0.000000, -0.264460, 0.959446),(0.004330, -0.265122, 0.961857),(0.004330, -0.388205, 0.919090),(0.002500, -0.387492, 0.917404),(0.004330, -0.265122, 0.961857),(0.002500, -0.387492, 0.917404),(0.002500, -0.264637, 0.960092),(0.005000, -0.265784, 0.964268),(0.005000, -0.389178, 0.921393),(0.004330, -0.388205, 0.919090),(0.005000, -0.265784, 0.964268),(0.004330, -0.388205, 0.919090),(0.004330, -0.265122, 0.961857),(0.004330, -0.266446, 0.966679),(0.004330, -0.390151, 0.923695),(0.005000, -0.389178, 0.921393),(0.004330, -0.266446, 0.966679),(0.005000, -0.389178, 0.921393),(0.005000, -0.265784, 0.964268),(0.002500, -0.266931, 0.968443),(0.002500, -0.390863, 0.925381),(0.004330, -0.390151, 0.923695),(0.002500, -0.266931, 0.968443),(0.004330, -0.390151, 0.923695),(0.004330, -0.266446, 0.966679),(0.000000, -0.267108, 0.969089),(0.000000, -0.391124, 0.925998),(0.002500, -0.390863, 0.925381),(0.000000, -0.267108, 0.969089),(0.002500, -0.390863, 0.925381),(0.002500, -0.266931, 0.968443),(-0.002500, -0.266931, 0.968443),(-0.002500, -0.390863, 0.925381),(0.000000, -0.391124, 0.925998),(-0.002500, -0.266931, 0.968443),(0.000000, -0.391124, 0.925998),(0.000000, -0.267108, 0.969089),(-0.004330, -0.266446, 0.966679),(-0.004330, -0.390151, 0.923695),(-0.002500, -0.390863, 0.925381),(-0.004330, -0.266446, 0.966679),(-0.002500, -0.390863, 0.925381),(-0.002500, -0.266931, 0.968443),(-0.005000, -0.265784, 0.964268),(-0.005000, -0.389178, 0.921393),(-0.004330, -0.390151, 0.923695),(-0.005000, -0.265784, 0.964268),(-0.004330, -0.390151, 0.923695),(-0.004330, -0.266446, 0.966679),(-0.004330, -0.388205, 0.919090),(-0.004330, -0.503385, 0.861278),(-0.005000, -0.504648, 0.863435),(-0.004330, -0.388205, 0.919090),(-0.005000, -0.504648, 0.863435),(-0.005000, -0.389178, 0.921393),(-0.002500, -0.387492, 0.917404),(-0.002500, -0.502460, 0.859698),(-0.004330, -0.503385, 0.861278),(-0.002500, -0.387492, 0.917404),(-0.004330, -0.503385, 0.861278),(-0.004330, -0.388205, 0.919090),(0.000000, -0.387232, 0.916787),(0.000000, -0.502122, 0.859120),(-0.002500, -0.502460, 0.859698),(0.000000, -0.387232, 0.916787),(-0.002500, -0.502460, 0.859698),(-0.002500, -0.387492, 0.917404),(0.002500, -0.387492, 0.917404),(0.002500, -0.502460, 0.859698),(0.000000, -0.502122, 0.859120),(0.002500, -0.387492, 0.917404),(0.000000, -0.502122, 0.859120),(0.000000, -0.387232, 0.916787),(0.004330, -0.388205, 0.919090),(0.004330, -0.503385, 0.861278),(0.002500, -0.502460, 0.859698),(0.004330, -0.388205, 0.919090),(0.002500, -0.502460, 0.859698),(0.002500, -0.387492, 0.917404),(0.005000, -0.389178, 0.921393),(0.005000, -0.504648, 0.863435),(0.004330, -0.503385, 0.861278),(0.005000, -0.389178, 0.921393),(0.004330, -0.503385, 0.861278),(0.004330, -0.388205, 0.919090),(0.004330, -0.390151, 0.923695),(0.004330, -0.505911, 0.865593),(0.005000, -0.504648, 0.863435),(0.004330, -0.390151, 0.923695),(0.005000, -0.504648, 0.863435),(0.005000, -0.389178, 0.921393),(0.002500, -0.390863, 0.925381),(0.002500, -0.506836, 0.867172),(0.004330, -0.505911, 0.865593),(0.002500, -0.390863, 0.925381),(0.004330, -0.505911, 0.865593),(0.004330, -0.390151, 0.923695),(0.000000, -0.391124, 0.925998),(0.000000, -0.507174, 0.867750),(0.002500, -0.506836, 0.867172),(0.000000, -0.391124, 0.925998),(0.002500, -0.506836, 0.867172),(0.002500, -0.390863, 0.925381),(-0.002500, -0.390863, 0.925381),(-0.002500, -0.506836, 0.867172),(0.000000, -0.507174, 0.867750),(-0.002500, -0.390863, 0.925381),(0.000000, -0.507174, 0.867750),(0.000000, -0.391124, 0.925998),(-0.004330, -0.390151, 0.923695),(-0.004330, -0.505911, 0.865593),(-0.002500, -0.506836, 0.867172),(-0.004330, -0.390151, 0.923695),(-0.002500, -0.506836, 0.867172),(-0.002500, -0.390863, 0.925381),(-0.005000, -0.389178, 0.921393),(-0.005000, -0.504648, 0.863435),(-0.004330, -0.505911, 0.865593),(-0.005000, -0.389178, 0.921393),(-0.004330, -0.505911, 0.865593),(-0.004330, -0.390151, 0.923695),(-0.004330, -0.503385, 0.861278),(-0.004330, -0.609474, 0.789611),(-0.005000, -0.611002, 0.791589),(-0.004330, -0.503385, 0.861278),(-0.005000, -0.611002, 0.791589),(-0.005000, -0.504648, 0.863435),(-0.002500, -0.502460, 0.859698),(-0.002500, -0.608354, 0.788163),(-0.004330, -0.609474, 0.789611),(-0.002500, -0.502460, 0.859698),(-0.004330, -0.609474, 0.789611),(-0.004330, -0.503385, 0.861278),(0.000000, -0.502122, 0.859120),(0.000000, -0.607945, 0.787633),(-0.002500, -0.608354, 0.788163),(0.000000, -0.502122, 0.859120),(-0.002500, -0.608354, 0.788163),(-0.002500, -0.502460, 0.859698),(0.002500, -0.502460, 0.859698),(0.002500, -0.608354, 0.788163),(0.000000, -0.607945, 0.787633),(0.002500, -0.502460, 0.859698),(0.000000, -0.607945, 0.787633),(0.000000, -0.502122, 0.859120),(0.004330, -0.503385, 0.861278),(0.004330, -0.609474, 0.789611),(0.002500, -0.608354, 0.788163),(0.004330, -0.503385, 0.861278),(0.002500, -0.608354, 0.788163),(0.002500, -0.502460, 0.859698),(0.005000, -0.504648, 0.863435),(0.005000, -0.611002, 0.791589),(0.004330, -0.609474, 0.789611),(0.005000, -0.504648, 0.863435),(0.004330, -0.609474, 0.789611),(0.004330, -0.503385, 0.861278),(0.004330, -0.505911, 0.865593),(0.004330, -0.612531, 0.793567),(0.005000, -0.611002, 0.791589),(0.004330, -0.505911, 0.865593),(0.005000, -0.611002, 0.791589),(0.005000, -0.504648, 0.863435),(0.002500, -0.506836, 0.867172),(0.002500, -0.613650, 0.795015),(0.004330, -0.612531, 0.793567),(0.002500, -0.506836, 0.867172),(0.004330, -0.612531, 0.793567),(0.004330, -0.505911, 0.865593),(0.000000, -0.507174, 0.867750),(0.000000, -0.614060, 0.795545),(0.002500, -0.613650, 0.795015),(0.000000, -0.507174, 0.867750),(0.002500, -0.613650, 0.795015),(0.002500, -0.506836, 0.867172),(-0.002500, -0.506836, 0.867172),(-0.002500, -0.613650, 0.795015),(0.000000, -0.614060, 0.795545),(-0.002500, -0.506836, 0.867172),(0.000000, -0.614060, 0.795545),(0.000000, -0.507174, 0.867750),(-0.004330, -0.505911, 0.865593),(-0.004330, -0.612531, 0.793567),(-0.002500, -0.613650, 0.795015),(-0.004330, -0.505911, 0.865593),(-0.002500, -0.613650, 0.795015),(-0.002500, -0.506836, 0.867172),(-0.005000, -0.504648, 0.863435),(-0.005000, -0.611002, 0.791589),(-0.004330, -0.612531, 0.793567),(-0.005000, -0.504648, 0.863435),(-0.004330, -0.612531, 0.793567),(-0.004330, -0.505911, 0.865593),(-0.004330, -0.609474, 0.789611),(-0.004330, -0.705279, 0.705279),(-0.005000, -0.707047, 0.707047),(-0.004330, -0.609474, 0.789611),(-0.005000, -0.707047, 0.707047),(-0.005000, -0.611002, 0.791589),(-0.002500, -0.608354, 0.788163),(-0.002500, -0.703985, 0.703985),(-0.004330, -0.705279, 0.705279),(-0.002500, -0.608354, 0.788163),(-0.004330, -0.705279, 0.705279),(-0.004330, -0.609474, 0.789611),(0.000000, -0.607945, 0.787633),(0.000000, -0.703511, 0.703511),(-0.002500, -0.703985, 0.703985),(0.000000, -0.607945, 0.787633),(-0.002500, -0.703985, 0.703985),(-0.002500, -0.608354, 0.788163),(0.002500, -0.608354, 0.788163),(0.002500, -0.703985, 0.703985),(0.000000, -0.703511, 0.703511),(0.002500, -0.608354, 0.788163),(0.000000, -0.703511, 0.703511),(0.000000, -0.607945, 0.787633),(0.004330, -0.609474, 0.789611),(0.004330, -0.705279, 0.705279),(0.002500, -0.703985, 0.703985),(0.004330, -0.609474, 0.789611),(0.002500, -0.703985, 0.703985),(0.002500, -0.608354, 0.788163),(0.005000, -0.611002, 0.791589),(0.005000, -0.707047, 0.707047),(0.004330, -0.705279, 0.705279),(0.005000, -0.611002, 0.791589),(0.004330, -0.705279, 0.705279),(0.004330, -0.609474, 0.789611),(0.004330, -0.612531, 0.793567),(0.004330, -0.708815, 0.708815),(0.005000, -0.707047, 0.707047),(0.004330, -0.612531, 0.793567),(0.005000, -0.707047, 0.707047),(0.005000, -0.611002, 0.791589),(0.002500, -0.613650, 0.795015),(0.002500, -0.710109, 0.710109),(0.004330, -0.708815, 0.708815),(0.002500, -0.613650, 0.795015),(0.004330, -0.708815, 0.708815),(0.004330, -0.612531, 0.793567),(0.000000, -0.614060, 0.795545),(0.000000, -0.710582, 0.710582),(0.002500, -0.710109, 0.710109),(0.000000, -0.614060, 0.795545),(0.002500, -0.710109, 0.710109),(0.002500, -0.613650, 0.795015),(-0.002500, -0.613650, 0.795015),(-0.002500, -0.710109, 0.710109),(0.000000, -0.710582, 0.710582),(-0.002500, -0.613650, 0.795015),(0.000000, -0.710582, 0.710582),(0.000000, -0.614060, 0.795545),(-0.004330, -0.612531, 0.793567),(-0.004330, -0.708815, 0.708815),(-0.002500, -0.710109, 0.710109),(-0.004330, -0.612531, 0.793567),(-0.002500, -0.710109, 0.710109),(-0.002500, -0.613650, 0.795015),(-0.005000, -0.611002, 0.791589),(-0.005000, -0.707047, 0.707047),(-0.004330, -0.708815, 0.708815),(-0.005000, -0.611002, 0.791589),(-0.004330, -0.708815, 0.708815),(-0.004330, -0.612531, 0.793567),(-0.004330, -0.705279, 0.705279),(-0.004330, -0.789611, 0.609474),(-0.005000, -0.791589, 0.611002),(-0.004330, -0.705279, 0.705279),(-0.005000, -0.791589, 0.611002),(-0.005000, -0.707047, 0.707047),(-0.002500, -0.703985, 0.703985),(-0.002500, -0.788163, 0.608354),(-0.004330, -0.789611, 0.609474),(-0.002500, -0.703985, 0.703985),(-0.004330, -0.789611, 0.609474),(-0.004330, -0.705279, 0.705279),(0.000000, -0.703511, 0.703511),(0.000000, -0.787633, 0.607945),(-0.002500, -0.788163, 0.608354),(0.000000, -0.703511, 0.703511),(-0.002500, -0.788163, 0.608354),(-0.002500, -0.703985, 0.703985),(0.002500, -0.703985, 0.703985),(0.002500, -0.788163, 0.608354),(0.000000, -0.787633, 0.607945),(0.002500, -0.703985, 0.703985),(0.000000, -0.787633, 0.607945),(0.000000, -0.703511, 0.703511),(0.004330, -0.705279, 0.705279),(0.004330, -0.789611, 0.609474),(0.002500, -0.788163, 0.608354),(0.004330, -0.705279, 0.705279),(0.002500, -0.788163, 0.608354),(0.002500, -0.703985, 0.703985),(0.005000, -0.707047, 0.707047),(0.005000, -0.791589, 0.611002),(0.004330, -0.789611, 0.609474),(0.005000, -0.707047, 0.707047),(0.004330, -0.789611, 0.609474),(0.004330, -0.705279, 0.705279),(0.004330, -0.708815, 0.708815),(0.004330, -0.793567, 0.612531),(0.005000, -0.791589, 0.611002),(0.004330, -0.708815, 0.708815),(0.005000, -0.791589, 0.611002),(0.005000, -0.707047, 0.707047),(0.002500, -0.710109, 0.710109),(0.002500, -0.795015, 0.613650),(0.004330, -0.793567, 0.612531),(0.002500, -0.710109, 0.710109),(0.004330, -0.793567, 0.612531),(0.004330, -0.708815, 0.708815),(0.000000, -0.710582, 0.710582),(0.000000, -0.795545, 0.614060),(0.002500, -0.795015, 0.613650),(0.000000, -0.710582, 0.710582),(0.002500, -0.795015, 0.613650),(0.002500, -0.710109, 0.710109),(-0.002500, -0.710109, 0.710109),(-0.002500, -0.795015, 0.613650),(0.000000, -0.795545, 0.614060),(-0.002500, -0.710109, 0.710109),(0.000000, -0.795545, 0.614060),(0.000000, -0.710582, 0.710582),(-0.004330, -0.708815, 0.708815),(-0.004330, -0.793567, 0.612531),(-0.002500, -0.795015, 0.613650),(-0.004330, -0.708815, 0.708815),(-0.002500, -0.795015, 0.613650),(-0.002500, -0.710109, 0.710109),(-0.005000, -0.707047, 0.707047),(-0.005000, -0.791589, 0.611002),(-0.004330, -0.793567, 0.612531),(-0.005000, -0.707047, 0.707047),(-0.004330, -0.793567, 0.612531),(-0.004330, -0.708815, 0.708815),(-0.004330, -0.789611, 0.609474),(-0.004330, -0.861278, 0.503385),(-0.005000, -0.863435, 0.504648),(-0.004330, -0.789611, 0.609474),(-0.005000, -0.863435, 0.504648),(-0.005000, -0.791589, 0.611002),(-0.002500, -0.788163, 0.608354),(-0.002500, -0.859698, 0.502460),(-0.004330, -0.861278, 0.503385),(-0.002500, -0.788163, 0.608354),(-0.004330, -0.861278, 0.503385),(-0.004330, -0.789611, 0.609474),(0.000000, -0.787633, 0.607945),(0.000000, -0.859120, 0.502122),(-0.002500, -0.859698, 0.502460),(0.000000, -0.787633, 0.607945),(-0.002500, -0.859698, 0.502460),(-0.002500, -0.788163, 0.608354),(0.002500, -0.788163, 0.608354),(0.002500, -0.859698, 0.502460),(0.000000, -0.859120, 0.502122),(0.002500, -0.788163, 0.608354),(0.000000, -0.859120, 0.502122),(0.000000, -0.787633, 0.607945),(0.004330, -0.789611, 0.609474),(0.004330, -0.861278, 0.503385),(0.002500, -0.859698, 0.502460),(0.004330, -0.789611, 0.609474),(0.002500, -0.859698, 0.502460),(0.002500, -0.788163, 0.608354),(0.005000, -0.791589, 0.611002),(0.005000, -0.863435, 0.504648),(0.004330, -0.861278, 0.503385),(0.005000, -0.791589, 0.611002),(0.004330, -0.861278, 0.503385),(0.004330, -0.789611, 0.609474),(0.004330, -0.793567, 0.612531),(0.004330, -0.865593, 0.505911),(0.005000, -0.863435, 0.504648),(0.004330, -0.793567, 0.612531),(0.005000, -0.863435, 0.504648),(0.005000, -0.791589, 0.611002),(0.002500, -0.795015, 0.613650),(0.002500, -0.867172, 0.506836),(0.004330, -0.865593, 0.505911),(0.002500, -0.795015, 0.613650),(0.004330, -0.865593, 0.505911),(0.004330, -0.793567, 0.612531),(0.000000, -0.795545, 0.614060),(0.000000, -0.867750, 0.507174),(0.002500, -0.867172, 0.506836),(0.000000, -0.795545, 0.614060),(0.002500, -0.867172, 0.506836),(0.002500, -0.795015, 0.613650),(-0.002500, -0.795015, 0.613650),(-0.002500, -0.867172, 0.506836),(0.000000, -0.867750, 0.507174),(-0.002500, -0.795015, 0.613650),(0.000000, -0.867750, 0.507174),(0.000000, -0.795545, 0.614060),(-0.004330, -0.793567, 0.612531),(-0.004330, -0.865593, 0.505911),(-0.002500, -0.867172, 0.506836),(-0.004330, -0.793567, 0.612531),(-0.002500, -0.867172, 0.506836),(-0.002500, -0.795015, 0.613650),(-0.005000, -0.791589, 0.611002),(-0.005000, -0.863435, 0.504648),(-0.004330, -0.865593, 0.505911),(-0.005000, -0.791589, 0.611002),(-0.004330, -0.865593, 0.505911),(-0.004330, -0.793567, 0.612531),(-0.004330, -0.861278, 0.503385),(-0.004330, -0.919090, 0.388205),(-0.005000, -0.921393, 0.389178),(-0.004330, -0.861278, 0.503385),(-0.005000, -0.921393, 0.389178),(-0.005000, -0.863435, 0.504648),(-0.002500, -0.859698, 0.502460),(-0.002500, -0.917404, 0.387492),(-0.004330, -0.919090, 0.388205),(-0.002500, -0.859698, 0.502460),(-0.004330, -0.919090, 0.388205),(-0.004330, -0.861278, 0.503385),(0.000000, -0.859120, 0.502122),(0.000000, -0.916787, 0.387232),(-0.002500, -0.917404, 0.387492),(0.000000, -0.859120, 0.502122),(-0.002500, -0.917404, 0.387492),(-0.002500, -0.859698, 0.502460),(0.002500, -0.859698, 0.502460),(0.002500, -0.917404, 0.387492),(0.000000, -0.916787, 0.387232),(0.002500, -0.859698, 0.502460),(0.000000, -0.916787, 0.387232),(0.000000, -0.859120, 0.502122),(0.004330, -0.861278, 0.503385),(0.004330, -0.919090, 0.388205),(0.002500, -0.917404, 0.387492),(0.004330, -0.861278, 0.503385),(0.002500, -0.917404, 0.387492),(0.002500, -0.859698, 0.502460),(0.005000, -0.863435, 0.504648),(0.005000, -0.921393, 0.389178),(0.004330, -0.919090, 0.388205),(0.005000, -0.863435, 0.504648),(0.004330, -0.919090, 0.388205),(0.004330, -0.861278, 0.503385),(0.004330, -0.865593, 0.505911),(0.004330, -0.923696, 0.390151),(0.005000, -0.921393, 0.389178),(0.004330, -0.865593, 0.505911),(0.005000, -0.921393, 0.389178),(0.005000, -0.863435, 0.504648),(0.002500, -0.867172, 0.506836),(0.002500, -0.925381, 0.390863),(0.004330, -0.923696, 0.390151),(0.002500, -0.867172, 0.506836),(0.004330, -0.923696, 0.390151),(0.004330, -0.865593, 0.505911),(0.000000, -0.867750, 0.507174),(0.000000, -0.925998, 0.391124),(0.002500, -0.925381, 0.390863),(0.000000, -0.867750, 0.507174),(0.002500, -0.925381, 0.390863),(0.002500, -0.867172, 0.506836),(-0.002500, -0.867172, 0.506836),(-0.002500, -0.925381, 0.390863),(0.000000, -0.925998, 0.391124),(-0.002500, -0.867172, 0.506836),(0.000000, -0.925998, 0.391124),(0.000000, -0.867750, 0.507174),(-0.004330, -0.865593, 0.505911),(-0.004330, -0.923696, 0.390151),(-0.002500, -0.925381, 0.390863),(-0.004330, -0.865593, 0.505911),(-0.002500, -0.925381, 0.390863),(-0.002500, -0.867172, 0.506836),(-0.005000, -0.863435, 0.504648),(-0.005000, -0.921393, 0.389178),(-0.004330, -0.923696, 0.390151),(-0.005000, -0.863435, 0.504648),(-0.004330, -0.923696, 0.390151),(-0.004330, -0.865593, 0.505911),(-0.004330, -0.919090, 0.388205),(-0.004330, -0.961857, 0.265122),(-0.005000, -0.964268, 0.265784),(-0.004330, -0.919090, 0.388205),(-0.005000, -0.964268, 0.265784),(-0.005000, -0.921393, 0.389178),(-0.002500, -0.917404, 0.387492),(-0.002500, -0.960092, 0.264637),(-0.004330, -0.961857, 0.265122),(-0.002500, -0.917404, 0.387492),(-0.004330, -0.961857, 0.265122),(-0.004330, -0.919090, 0.388205),(0.000000, -0.916787, 0.387232),(0.000000, -0.959447, 0.264460),(-0.002500, -0.960092, 0.264637),(0.000000, -0.916787, 0.387232),(-0.002500, -0.960092, 0.264637),(-0.002500, -0.917404, 0.387492),(0.002500, -0.917404, 0.387492),(0.002500, -0.960092, 0.264637),(0.000000, -0.959447, 0.264460),(0.002500, -0.917404, 0.387492),(0.000000, -0.959447, 0.264460),(0.000000, -0.916787, 0.387232),(0.004330, -0.919090, 0.388205),(0.004330, -0.961857, 0.265122),(0.002500, -0.960092, 0.264637),(0.004330, -0.919090, 0.388205),(0.002500, -0.960092, 0.264637),(0.002500, -0.917404, 0.387492),(0.005000, -0.921393, 0.389178),(0.005000, -0.964268, 0.265784),(0.004330, -0.961857, 0.265122),(0.005000, -0.921393, 0.389178),(0.004330, -0.961857, 0.265122),(0.004330, -0.919090, 0.388205),(0.004330, -0.923696, 0.390151),(0.004330, -0.966679, 0.266446),(0.005000, -0.964268, 0.265784),(0.004330, -0.923696, 0.390151),(0.005000, -0.964268, 0.265784),(0.005000, -0.921393, 0.389178),(0.002500, -0.925381, 0.390863),(0.002500, -0.968444, 0.266931),(0.004330, -0.966679, 0.266446),(0.002500, -0.925381, 0.390863),(0.004330, -0.966679, 0.266446),(0.004330, -0.923696, 0.390151),(0.000000, -0.925998, 0.391124),(0.000000, -0.969090, 0.267108),(0.002500, -0.968444, 0.266931),(0.000000, -0.925998, 0.391124),(0.002500, -0.968444, 0.266931),(0.002500, -0.925381, 0.390863),(-0.002500, -0.925381, 0.390863),(-0.002500, -0.968444, 0.266931),(0.000000, -0.969090, 0.267108),(-0.002500, -0.925381, 0.390863),(0.000000, -0.969090, 0.267108),(0.000000, -0.925998, 0.391124),(-0.004330, -0.923696, 0.390151),(-0.004330, -0.966679, 0.266446),(-0.002500, -0.968444, 0.266931),(-0.004330, -0.923696, 0.390151),(-0.002500, -0.968444, 0.266931),(-0.002500, -0.925381, 0.390863),(-0.005000, -0.921393, 0.389178),(-0.005000, -0.964268, 0.265784),(-0.004330, -0.966679, 0.266446),(-0.005000, -0.921393, 0.389178),(-0.004330, -0.966679, 0.266446),(-0.004330, -0.923696, 0.390151),(-0.004330, -0.961857, 0.265122),(-0.004330, -0.988391, 0.135326),(-0.005000, -0.990868, 0.135661),(-0.004330, -0.961857, 0.265122),(-0.005000, -0.990868, 0.135661),(-0.005000, -0.964268, 0.265784),(-0.002500, -0.960092, 0.264637),(-0.002500, -0.986577, 0.135080),(-0.004330, -0.988391, 0.135326),(-0.002500, -0.960092, 0.264637),(-0.004330, -0.988391, 0.135326),(-0.004330, -0.961857, 0.265122),(0.000000, -0.959447, 0.264460),(0.000000, -0.985913, 0.134990),(-0.002500, -0.986577, 0.135080),(0.000000, -0.959447, 0.264460),(-0.002500, -0.986577, 0.135080),(-0.002500, -0.960092, 0.264637),(0.002500, -0.960092, 0.264637),(0.002500, -0.986577, 0.135080),(0.000000, -0.985913, 0.134990),(0.002500, -0.960092, 0.264637),(0.000000, -0.985913, 0.134990),(0.000000, -0.959447, 0.264460),(0.004330, -0.961857, 0.265122),(0.004330, -0.988391, 0.135326),(0.002500, -0.986577, 0.135080),(0.004330, -0.961857, 0.265122),(0.002500, -0.986577, 0.135080),(0.002500, -0.960092, 0.264637),(0.005000, -0.964268, 0.265784),(0.005000, -0.990868, 0.135661),(0.004330, -0.988391, 0.135326),(0.005000, -0.964268, 0.265784),(0.004330, -0.988391, 0.135326),(0.004330, -0.961857, 0.265122),(0.004330, -0.966679, 0.266446),(0.004330, -0.993346, 0.135996),(0.005000, -0.990868, 0.135661),(0.004330, -0.966679, 0.266446),(0.005000, -0.990868, 0.135661),(0.005000, -0.964268, 0.265784),(0.002500, -0.968444, 0.266931),(0.002500, -0.995159, 0.136241),(0.004330, -0.993346, 0.135996),(0.002500, -0.968444, 0.266931),(0.004330, -0.993346, 0.135996),(0.004330, -0.966679, 0.266446),(0.000000, -0.969090, 0.267108),(0.000000, -0.995823, 0.136331),(0.002500, -0.995159, 0.136241),(0.000000, -0.969090, 0.267108),(0.002500, -0.995159, 0.136241),(0.002500, -0.968444, 0.266931),(-0.002500, -0.968444, 0.266931),(-0.002500, -0.995159, 0.136241),(0.000000, -0.995823, 0.136331),(-0.002500, -0.968444, 0.266931),(0.000000, -0.995823, 0.136331),(0.000000, -0.969090, 0.267108),(-0.004330, -0.966679, 0.266446),(-0.004330, -0.993346, 0.135996),(-0.002500, -0.995159, 0.136241),(-0.004330, -0.966679, 0.266446),(-0.002500, -0.995159, 0.136241),(-0.002500, -0.968444, 0.266931),(-0.005000, -0.964268, 0.265784),(-0.005000, -0.990868, 0.135661),(-0.004330, -0.993346, 0.135996),(-0.005000, -0.964268, 0.265784),(-0.004330, -0.993346, 0.135996),(-0.004330, -0.966679, 0.266446),(-0.004330, -0.988391, 0.135326),(-0.004330, -0.997500, 0.000000),(-0.005000, -1.000000, 0.000000),(-0.004330, -0.988391, 0.135326),(-0.005000, -1.000000, 0.000000),(-0.005000, -0.990868, 0.135661),(-0.002500, -0.986577, 0.135080),(-0.002500, -0.995670, 0.000000),(-0.004330, -0.997500, 0.000000),(-0.002500, -0.986577, 0.135080),(-0.004330, -0.997500, 0.000000),(-0.004330, -0.988391, 0.135326),(0.000000, -0.985913, 0.134990),(0.000000, -0.995000, 0.000000),(-0.002500, -0.995670, 0.000000),(0.000000, -0.985913, 0.134990),(-0.002500, -0.995670, 0.000000),(-0.002500, -0.986577, 0.135080),(0.002500, -0.986577, 0.135080),(0.002500, -0.995670, 0.000000),(0.000000, -0.995000, 0.000000),(0.002500, -0.986577, 0.135080),(0.000000, -0.995000, 0.000000),(0.000000, -0.985913, 0.134990),(0.004330, -0.988391, 0.135326),(0.004330, -0.997500, 0.000000),(0.002500, -0.995670, 0.000000),(0.004330, -0.988391, 0.135326),(0.002500, -0.995670, 0.000000),(0.002500, -0.986577, 0.135080),(0.005000, -0.990868, 0.135661),(0.005000, -1.000000, -0.000000),(0.004330, -0.997500, 0.000000),(0.005000, -0.990868, 0.135661),(0.004330, -0.997500, 0.000000),(0.004330, -0.988391, 0.135326),(0.004330, -0.993346, 0.135996),(0.004330, -1.002500, -0.000000),(0.005000, -1.000000, -0.000000),(0.004330, -0.993346, 0.135996),(0.005000, -1.000000, -0.000000),(0.005000, -0.990868, 0.135661),(0.002500, -0.995159, 0.136241),(0.002500, -1.004330, -0.000000),(0.004330, -1.002500, -0.000000),(0.002500, -0.995159, 0.136241),(0.004330, -1.002500, -0.000000),(0.004330, -0.993346, 0.135996),(0.000000, -0.995823, 0.136331),(0.000000, -1.005000, -0.000000),(0.002500, -1.004330, -0.000000),(0.000000, -0.995823, 0.136331),(0.002500, -1.004330, -0.000000),(0.002500, -0.995159, 0.136241),(-0.002500, -0.995159, 0.136241),(-0.002500, -1.004330, -0.000000),(0.000000, -1.005000, -0.000000),(-0.002500, -0.995159, 0.136241),(0.000000, -1.005000, -0.000000),(0.000000, -0.995823, 0.136331),(-0.004330, -0.993346, 0.135996),(-0.004330, -1.002500, -0.000000),(-0.002500, -1.004330, -0.000000),(-0.004330, -0.993346, 0.135996),(-0.002500, -1.004330, -0.000000),(-0.002500, -0.995159, 0.136241),(-0.005000, -0.990868, 0.135661),(-0.005000, -1.000000, 0.000000),(-0.004330, -1.002500, -0.000000),(-0.005000, -0.990868, 0.135661),(-0.004330, -1.002500, -0.000000),(-0.004330, -0.993346, 0.135996),(-0.004330, -0.997500, 0.000000),(-0.004330, -0.988391, -0.135325),(-0.005000, -0.990868, -0.135661),(-0.004330, -0.997500, 0.000000),(-0.005000, -0.990868, -0.135661),(-0.005000, -1.000000, 0.000000),(-0.002500, -0.995670, 0.000000),(-0.002500, -0.986577, -0.135080),(-0.004330, -0.988391, -0.135325),(-0.002500, -0.995670, 0.000000),(-0.004330, -0.988391, -0.135325),(-0.004330, -0.997500, 0.000000),(0.000000, -0.995000, 0.000000),(0.000000, -0.985913, -0.134990),(-0.002500, -0.986577, -0.135080),(0.000000, -0.995000, 0.000000),(-0.002500, -0.986577, -0.135080),(-0.002500, -0.995670, 0.000000),(0.002500, -0.995670, 0.000000),(0.002500, -0.986577, -0.135080),(0.000000, -0.985913, -0.134990),(0.002500, -0.995670, 0.000000),(0.000000, -0.985913, -0.134990),(0.000000, -0.995000, 0.000000),(0.004330, -0.997500, 0.000000),(0.004330, -0.988391, -0.135325),(0.002500, -0.986577, -0.135080),(0.004330, -0.997500, 0.000000),(0.002500, -0.986577, -0.135080),(0.002500, -0.995670, 0.000000),(0.005000, -1.000000, -0.000000),(0.005000, -0.990868, -0.135661),(0.004330, -0.988391, -0.135325),(0.005000, -1.000000, -0.000000),(0.004330, -0.988391, -0.135325),(0.004330, -0.997500, 0.000000),(0.004330, -1.002500, -0.000000),(0.004330, -0.993345, -0.135996),(0.005000, -0.990868, -0.135661),(0.004330, -1.002500, -0.000000),(0.005000, -0.990868, -0.135661),(0.005000, -1.000000, -0.000000),(0.002500, -1.004330, -0.000000),(0.002500, -0.995159, -0.136241),(0.004330, -0.993345, -0.135996),(0.002500, -1.004330, -0.000000),(0.004330, -0.993345, -0.135996),(0.004330, -1.002500, -0.000000),(0.000000, -1.005000, -0.000000),(0.000000, -0.995823, -0.136331),(0.002500, -0.995159, -0.136241),(0.000000, -1.005000, -0.000000),(0.002500, -0.995159, -0.136241),(0.002500, -1.004330, -0.000000),(-0.002500, -1.004330, -0.000000),(-0.002500, -0.995159, -0.136241),(0.000000, -0.995823, -0.136331),(-0.002500, -1.004330, -0.000000),(0.000000, -0.995823, -0.136331),(0.000000, -1.005000, -0.000000),(-0.004330, -1.002500, -0.000000),(-0.004330, -0.993345, -0.135996),(-0.002500, -0.995159, -0.136241),(-0.004330, -1.002500, -0.000000),(-0.002500, -0.995159, -0.136241),(-0.002500, -1.004330, -0.000000),(-0.005000, -1.000000, 0.000000),(-0.005000, -0.990868, -0.135661),(-0.004330, -0.993345, -0.135996),(-0.005000, -1.000000, 0.000000),(-0.004330, -0.993345, -0.135996),(-0.004330, -1.002500, -0.000000),(-0.004330, -0.988391, -0.135325),(-0.004330, -0.961857, -0.265122),(-0.005000, -0.964268, -0.265784),(-0.004330, -0.988391, -0.135325),(-0.005000, -0.964268, -0.265784),(-0.005000, -0.990868, -0.135661),(-0.002500, -0.986577, -0.135080),(-0.002500, -0.960092, -0.264637),(-0.004330, -0.961857, -0.265122),(-0.002500, -0.986577, -0.135080),(-0.004330, -0.961857, -0.265122),(-0.004330, -0.988391, -0.135325),(0.000000, -0.985913, -0.134990),(0.000000, -0.959446, -0.264460),(-0.002500, -0.960092, -0.264637),(0.000000, -0.985913, -0.134990),(-0.002500, -0.960092, -0.264637),(-0.002500, -0.986577, -0.135080),(0.002500, -0.986577, -0.135080),(0.002500, -0.960092, -0.264637),(0.000000, -0.959446, -0.264460),(0.002500, -0.986577, -0.135080),(0.000000, -0.959446, -0.264460),(0.000000, -0.985913, -0.134990),(0.004330, -0.988391, -0.135325),(0.004330, -0.961857, -0.265122),(0.002500, -0.960092, -0.264637),(0.004330, -0.988391, -0.135325),(0.002500, -0.960092, -0.264637),(0.002500, -0.986577, -0.135080),(0.005000, -0.990868, -0.135661),(0.005000, -0.964268, -0.265784),(0.004330, -0.961857, -0.265122),(0.005000, -0.990868, -0.135661),(0.004330, -0.961857, -0.265122),(0.004330, -0.988391, -0.135325),(0.004330, -0.993345, -0.135996),(0.004330, -0.966679, -0.266446),(0.005000, -0.964268, -0.265784),(0.004330, -0.993345, -0.135996),(0.005000, -0.964268, -0.265784),(0.005000, -0.990868, -0.135661),(0.002500, -0.995159, -0.136241),(0.002500, -0.968443, -0.266931),(0.004330, -0.966679, -0.266446),(0.002500, -0.995159, -0.136241),(0.004330, -0.966679, -0.266446),(0.004330, -0.993345, -0.135996),(0.000000, -0.995823, -0.136331),(0.000000, -0.969089, -0.267108),(0.002500, -0.968443, -0.266931),(0.000000, -0.995823, -0.136331),(0.002500, -0.968443, -0.266931),(0.002500, -0.995159, -0.136241),(-0.002500, -0.995159, -0.136241),(-0.002500, -0.968443, -0.266931),(0.000000, -0.969089, -0.267108),(-0.002500, -0.995159, -0.136241),(0.000000, -0.969089, -0.267108),(0.000000, -0.995823, -0.136331),(-0.004330, -0.993345, -0.135996),(-0.004330, -0.966679, -0.266446),(-0.002500, -0.968443, -0.266931),(-0.004330, -0.993345, -0.135996),(-0.002500, -0.968443, -0.266931),(-0.002500, -0.995159, -0.136241),(-0.005000, -0.990868, -0.135661),(-0.005000, -0.964268, -0.265784),(-0.004330, -0.966679, -0.266446),(-0.005000, -0.990868, -0.135661),(-0.004330, -0.966679, -0.266446),(-0.004330, -0.993345, -0.135996),(-0.004330, -0.961857, -0.265122),(-0.004330, -0.919090, -0.388205),(-0.005000, -0.921393, -0.389178),(-0.004330, -0.961857, -0.265122),(-0.005000, -0.921393, -0.389178),(-0.005000, -0.964268, -0.265784),(-0.002500, -0.960092, -0.264637),(-0.002500, -0.917404, -0.387492),(-0.004330, -0.919090, -0.388205),(-0.002500, -0.960092, -0.264637),(-0.004330, -0.919090, -0.388205),(-0.004330, -0.961857, -0.265122),(0.000000, -0.959446, -0.264460),(0.000000, -0.916787, -0.387232),(-0.002500, -0.917404, -0.387492),(0.000000, -0.959446, -0.264460),(-0.002500, -0.917404, -0.387492),(-0.002500, -0.960092, -0.264637),(0.002500, -0.960092, -0.264637),(0.002500, -0.917404, -0.387492),(0.000000, -0.916787, -0.387232),(0.002500, -0.960092, -0.264637),(0.000000, -0.916787, -0.387232),(0.000000, -0.959446, -0.264460),(0.004330, -0.961857, -0.265122),(0.004330, -0.919090, -0.388205),(0.002500, -0.917404, -0.387492),(0.004330, -0.961857, -0.265122),(0.002500, -0.917404, -0.387492),(0.002500, -0.960092, -0.264637),(0.005000, -0.964268, -0.265784),(0.005000, -0.921393, -0.389178),(0.004330, -0.919090, -0.388205),(0.005000, -0.964268, -0.265784),(0.004330, -0.919090, -0.388205),(0.004330, -0.961857, -0.265122),(0.004330, -0.966679, -0.266446),(0.004330, -0.923695, -0.390151),(0.005000, -0.921393, -0.389178),(0.004330, -0.966679, -0.266446),(0.005000, -0.921393, -0.389178),(0.005000, -0.964268, -0.265784),(0.002500, -0.968443, -0.266931),(0.002500, -0.925381, -0.390863),(0.004330, -0.923695, -0.390151),(0.002500, -0.968443, -0.266931),(0.004330, -0.923695, -0.390151),(0.004330, -0.966679, -0.266446),(0.000000, -0.969089, -0.267108),(0.000000, -0.925998, -0.391124),(0.002500, -0.925381, -0.390863),(0.000000, -0.969089, -0.267108),(0.002500, -0.925381, -0.390863),(0.002500, -0.968443, -0.266931),(-0.002500, -0.968443, -0.266931),(-0.002500, -0.925381, -0.390863),(0.000000, -0.925998, -0.391124),(-0.002500, -0.968443, -0.266931),(0.000000, -0.925998, -0.391124),(0.000000, -0.969089, -0.267108),(-0.004330, -0.966679, -0.266446),(-0.004330, -0.923695, -0.390151),(-0.002500, -0.925381, -0.390863),(-0.004330, -0.966679, -0.266446),(-0.002500, -0.925381, -0.390863),(-0.002500, -0.968443, -0.266931),(-0.005000, -0.964268, -0.265784),(-0.005000, -0.921393, -0.389178),(-0.004330, -0.923695, -0.390151),(-0.005000, -0.964268, -0.265784),(-0.004330, -0.923695, -0.390151),(-0.004330, -0.966679, -0.266446),(-0.004330, -0.919090, -0.388205),(-0.004330, -0.861278, -0.503385),(-0.005000, -0.863435, -0.504648),(-0.004330, -0.919090, -0.388205),(-0.005000, -0.863435, -0.504648),(-0.005000, -0.921393, -0.389178),(-0.002500, -0.917404, -0.387492),(-0.002500, -0.859698, -0.502460),(-0.004330, -0.861278, -0.503385),(-0.002500, -0.917404, -0.387492),(-0.004330, -0.861278, -0.503385),(-0.004330, -0.919090, -0.388205),(0.000000, -0.916787, -0.387232),(0.000000, -0.859120, -0.502122),(-0.002500, -0.859698, -0.502460),(0.000000, -0.916787, -0.387232),(-0.002500, -0.859698, -0.502460),(-0.002500, -0.917404, -0.387492),(0.002500, -0.917404, -0.387492),(0.002500, -0.859698, -0.502460),(0.000000, -0.859120, -0.502122),(0.002500, -0.917404, -0.387492),(0.000000, -0.859120, -0.502122),(0.000000, -0.916787, -0.387232),(0.004330, -0.919090, -0.388205),(0.004330, -0.861278, -0.503385),(0.002500, -0.859698, -0.502460),(0.004330, -0.919090, -0.388205),(0.002500, -0.859698, -0.502460),(0.002500, -0.917404, -0.387492),(0.005000, -0.921393, -0.389178),(0.005000, -0.863435, -0.504648),(0.004330, -0.861278, -0.503385),(0.005000, -0.921393, -0.389178),(0.004330, -0.861278, -0.503385),(0.004330, -0.919090, -0.388205),(0.004330, -0.923695, -0.390151),(0.004330, -0.865593, -0.505911),(0.005000, -0.863435, -0.504648),(0.004330, -0.923695, -0.390151),(0.005000, -0.863435, -0.504648),(0.005000, -0.921393, -0.389178),(0.002500, -0.925381, -0.390863),(0.002500, -0.867172, -0.506836),(0.004330, -0.865593, -0.505911),(0.002500, -0.925381, -0.390863),(0.004330, -0.865593, -0.505911),(0.004330, -0.923695, -0.390151),(0.000000, -0.925998, -0.391124),(0.000000, -0.867750, -0.507174),(0.002500, -0.867172, -0.506836),(0.000000, -0.925998, -0.391124),(0.002500, -0.867172, -0.506836),(0.002500, -0.925381, -0.390863),(-0.002500, -0.925381, -0.390863),(-0.002500, -0.867172, -0.506836),(0.000000, -0.867750, -0.507174),(-0.002500, -0.925381, -0.390863),(0.000000, -0.867750, -0.507174),(0.000000, -0.925998, -0.391124),(-0.004330, -0.923695, -0.390151),(-0.004330, -0.865593, -0.505911),(-0.002500, -0.867172, -0.506836),(-0.004330, -0.923695, -0.390151),(-0.002500, -0.867172, -0.506836),(-0.002500, -0.925381, -0.390863),(-0.005000, -0.921393, -0.389178),(-0.005000, -0.863435, -0.504648),(-0.004330, -0.865593, -0.505911),(-0.005000, -0.921393, -0.389178),(-0.004330, -0.865593, -0.505911),(-0.004330, -0.923695, -0.390151),(-0.004330, -0.861278, -0.503385),(-0.004330, -0.789611, -0.609474),(-0.005000, -0.791589, -0.611002),(-0.004330, -0.861278, -0.503385),(-0.005000, -0.791589, -0.611002),(-0.005000, -0.863435, -0.504648),(-0.002500, -0.859698, -0.502460),(-0.002500, -0.788163, -0.608354),(-0.004330, -0.789611, -0.609474),(-0.002500, -0.859698, -0.502460),(-0.004330, -0.789611, -0.609474),(-0.004330, -0.861278, -0.503385),(0.000000, -0.859120, -0.502122),(0.000000, -0.787633, -0.607945),(-0.002500, -0.788163, -0.608354),(0.000000, -0.859120, -0.502122),(-0.002500, -0.788163, -0.608354),(-0.002500, -0.859698, -0.502460),(0.002500, -0.859698, -0.502460),(0.002500, -0.788163, -0.608354),(0.000000, -0.787633, -0.607945),(0.002500, -0.859698, -0.502460),(0.000000, -0.787633, -0.607945),(0.000000, -0.859120, -0.502122),(0.004330, -0.861278, -0.503385),(0.004330, -0.789611, -0.609474),(0.002500, -0.788163, -0.608354),(0.004330, -0.861278, -0.503385),(0.002500, -0.788163, -0.608354),(0.002500, -0.859698, -0.502460),(0.005000, -0.863435, -0.504648),(0.005000, -0.791589, -0.611002),(0.004330, -0.789611, -0.609474),(0.005000, -0.863435, -0.504648),(0.004330, -0.789611, -0.609474),(0.004330, -0.861278, -0.503385),(0.004330, -0.865593, -0.505911),(0.004330, -0.793567, -0.612531),(0.005000, -0.791589, -0.611002),(0.004330, -0.865593, -0.505911),(0.005000, -0.791589, -0.611002),(0.005000, -0.863435, -0.504648),(0.002500, -0.867172, -0.506836),(0.002500, -0.795015, -0.613650),(0.004330, -0.793567, -0.612531),(0.002500, -0.867172, -0.506836),(0.004330, -0.793567, -0.612531),(0.004330, -0.865593, -0.505911),(0.000000, -0.867750, -0.507174),(0.000000, -0.795545, -0.614060),(0.002500, -0.795015, -0.613650),(0.000000, -0.867750, -0.507174),(0.002500, -0.795015, -0.613650),(0.002500, -0.867172, -0.506836),(-0.002500, -0.867172, -0.506836),(-0.002500, -0.795015, -0.613650),(0.000000, -0.795545, -0.614060),(-0.002500, -0.867172, -0.506836),(0.000000, -0.795545, -0.614060),(0.000000, -0.867750, -0.507174),(-0.004330, -0.865593, -0.505911),(-0.004330, -0.793567, -0.612531),(-0.002500, -0.795015, -0.613650),(-0.004330, -0.865593, -0.505911),(-0.002500, -0.795015, -0.613650),(-0.002500, -0.867172, -0.506836),(-0.005000, -0.863435, -0.504648),(-0.005000, -0.791589, -0.611002),(-0.004330, -0.793567, -0.612531),(-0.005000, -0.863435, -0.504648),(-0.004330, -0.793567, -0.612531),(-0.004330, -0.865593, -0.505911),(-0.004330, -0.789611, -0.609474),(-0.004330, -0.705279, -0.705279),(-0.005000, -0.707047, -0.707047),(-0.004330, -0.789611, -0.609474),(-0.005000, -0.707047, -0.707047),(-0.005000, -0.791589, -0.611002),(-0.002500, -0.788163, -0.608354),(-0.002500, -0.703985, -0.703985),(-0.004330, -0.705279, -0.705279),(-0.002500, -0.788163, -0.608354),(-0.004330, -0.705279, -0.705279),(-0.004330, -0.789611, -0.609474),(0.000000, -0.787633, -0.607945),(-0.000000, -0.703511, -0.703511),(-0.002500, -0.703985, -0.703985),(0.000000, -0.787633, -0.607945),(-0.002500, -0.703985, -0.703985),(-0.002500, -0.788163, -0.608354),(0.002500, -0.788163, -0.608354),(0.002500, -0.703985, -0.703985),(-0.000000, -0.703511, -0.703511),(0.002500, -0.788163, -0.608354),(-0.000000, -0.703511, -0.703511),(0.000000, -0.787633, -0.607945),(0.004330, -0.789611, -0.609474),(0.004330, -0.705279, -0.705279),(0.002500, -0.703985, -0.703985),(0.004330, -0.789611, -0.609474),(0.002500, -0.703985, -0.703985),(0.002500, -0.788163, -0.608354),(0.005000, -0.791589, -0.611002),(0.005000, -0.707047, -0.707047),(0.004330, -0.705279, -0.705279),(0.005000, -0.791589, -0.611002),(0.004330, -0.705279, -0.705279),(0.004330, -0.789611, -0.609474),(0.004330, -0.793567, -0.612531),(0.004330, -0.708815, -0.708815),(0.005000, -0.707047, -0.707047),(0.004330, -0.793567, -0.612531),(0.005000, -0.707047, -0.707047),(0.005000, -0.791589, -0.611002),(0.002500, -0.795015, -0.613650),(0.002500, -0.710109, -0.710109),(0.004330, -0.708815, -0.708815),(0.002500, -0.795015, -0.613650),(0.004330, -0.708815, -0.708815),(0.004330, -0.793567, -0.612531),(0.000000, -0.795545, -0.614060),(0.000000, -0.710582, -0.710582),(0.002500, -0.710109, -0.710109),(0.000000, -0.795545, -0.614060),(0.002500, -0.710109, -0.710109),(0.002500, -0.795015, -0.613650),(-0.002500, -0.795015, -0.613650),(-0.002500, -0.710109, -0.710109),(0.000000, -0.710582, -0.710582),(-0.002500, -0.795015, -0.613650),(0.000000, -0.710582, -0.710582),(0.000000, -0.795545, -0.614060),(-0.004330, -0.793567, -0.612531),(-0.004330, -0.708815, -0.708815),(-0.002500, -0.710109, -0.710109),(-0.004330, -0.793567, -0.612531),(-0.002500, -0.710109, -0.710109),(-0.002500, -0.795015, -0.613650),(-0.005000, -0.791589, -0.611002),(-0.005000, -0.707047, -0.707047),(-0.004330, -0.708815, -0.708815),(-0.005000, -0.791589, -0.611002),(-0.004330, -0.708815, -0.708815),(-0.004330, -0.793567, -0.612531),(-0.004330, -0.705279, -0.705279),(-0.004330, -0.609474, -0.789611),(-0.005000, -0.611002, -0.791589),(-0.004330, -0.705279, -0.705279),(-0.005000, -0.611002, -0.791589),(-0.005000, -0.707047, -0.707047),(-0.002500, -0.703985, -0.703985),(-0.002500, -0.608354, -0.788163),(-0.004330, -0.609474, -0.789611),(-0.002500, -0.703985, -0.703985),(-0.004330, -0.609474, -0.789611),(-0.004330, -0.705279, -0.705279),(-0.000000, -0.703511, -0.703511),(-0.000000, -0.607945, -0.787633),(-0.002500, -0.608354, -0.788163),(-0.000000, -0.703511, -0.703511),(-0.002500, -0.608354, -0.788163),(-0.002500, -0.703985, -0.703985),(0.002500, -0.703985, -0.703985),(0.002500, -0.608354, -0.788163),(-0.000000, -0.607945, -0.787633),(0.002500, -0.703985, -0.703985),(-0.000000, -0.607945, -0.787633),(-0.000000, -0.703511, -0.703511),(0.004330, -0.705279, -0.705279),(0.004330, -0.609474, -0.789611),(0.002500, -0.608354, -0.788163),(0.004330, -0.705279, -0.705279),(0.002500, -0.608354, -0.788163),(0.002500, -0.703985, -0.703985),(0.005000, -0.707047, -0.707047),(0.005000, -0.611002, -0.791589),(0.004330, -0.609474, -0.789611),(0.005000, -0.707047, -0.707047),(0.004330, -0.609474, -0.789611),(0.004330, -0.705279, -0.705279),(0.004330, -0.708815, -0.708815),(0.004330, -0.612531, -0.793567),(0.005000, -0.611002, -0.791589),(0.004330, -0.708815, -0.708815),(0.005000, -0.611002, -0.791589),(0.005000, -0.707047, -0.707047),(0.002500, -0.710109, -0.710109),(0.002500, -0.613650, -0.795015),(0.004330, -0.612531, -0.793567),(0.002500, -0.710109, -0.710109),(0.004330, -0.612531, -0.793567),(0.004330, -0.708815, -0.708815),(0.000000, -0.710582, -0.710582),(-0.000000, -0.614060, -0.795545),(0.002500, -0.613650, -0.795015),(0.000000, -0.710582, -0.710582),(0.002500, -0.613650, -0.795015),(0.002500, -0.710109, -0.710109),(-0.002500, -0.710109, -0.710109),(-0.002500, -0.613650, -0.795015),(-0.000000, -0.614060, -0.795545),(-0.002500, -0.710109, -0.710109),(-0.000000, -0.614060, -0.795545),(0.000000, -0.710582, -0.710582),(-0.004330, -0.708815, -0.708815),(-0.004330, -0.612531, -0.793567),(-0.002500, -0.613650, -0.795015),(-0.004330, -0.708815, -0.708815),(-0.002500, -0.613650, -0.795015),(-0.002500, -0.710109, -0.710109),(-0.005000, -0.707047, -0.707047),(-0.005000, -0.611002, -0.791589),(-0.004330, -0.612531, -0.793567),(-0.005000, -0.707047, -0.707047),(-0.004330, -0.612531, -0.793567),(-0.004330, -0.708815, -0.708815),(-0.004330, -0.609474, -0.789611),(-0.004330, -0.503385, -0.861278),(-0.005000, -0.504648, -0.863435),(-0.004330, -0.609474, -0.789611),(-0.005000, -0.504648, -0.863435),(-0.005000, -0.611002, -0.791589),(-0.002500, -0.608354, -0.788163),(-0.002500, -0.502460, -0.859698),(-0.004330, -0.503385, -0.861278),(-0.002500, -0.608354, -0.788163),(-0.004330, -0.503385, -0.861278),(-0.004330, -0.609474, -0.789611),(-0.000000, -0.607945, -0.787633),(-0.000000, -0.502122, -0.859120),(-0.002500, -0.502460, -0.859698),(-0.000000, -0.607945, -0.787633),(-0.002500, -0.502460, -0.859698),(-0.002500, -0.608354, -0.788163),(0.002500, -0.608354, -0.788163),(0.002500, -0.502460, -0.859698),(-0.000000, -0.502122, -0.859120),(0.002500, -0.608354, -0.788163),(-0.000000, -0.502122, -0.859120),(-0.000000, -0.607945, -0.787633),(0.004330, -0.609474, -0.789611),(0.004330, -0.503385, -0.861278),(0.002500, -0.502460, -0.859698),(0.004330, -0.609474, -0.789611),(0.002500, -0.502460, -0.859698),(0.002500, -0.608354, -0.788163),(0.005000, -0.611002, -0.791589),(0.005000, -0.504648, -0.863435),(0.004330, -0.503385, -0.861278),(0.005000, -0.611002, -0.791589),(0.004330, -0.503385, -0.861278),(0.004330, -0.609474, -0.789611),(0.004330, -0.612531, -0.793567),(0.004330, -0.505911, -0.865593),(0.005000, -0.504648, -0.863435),(0.004330, -0.612531, -0.793567),(0.005000, -0.504648, -0.863435),(0.005000, -0.611002, -0.791589),(0.002500, -0.613650, -0.795015),(0.002500, -0.506836, -0.867172),(0.004330, -0.505911, -0.865593),(0.002500, -0.613650, -0.795015),(0.004330, -0.505911, -0.865593),(0.004330, -0.612531, -0.793567),(-0.000000, -0.614060, -0.795545),(-0.000000, -0.507174, -0.867750),(0.002500, -0.506836, -0.867172),(-0.000000, -0.614060, -0.795545),(0.002500, -0.506836, -0.867172),(0.002500, -0.613650, -0.795015),(-0.002500, -0.613650, -0.795015),(-0.002500, -0.506836, -0.867172),(-0.000000, -0.507174, -0.867750),(-0.002500, -0.613650, -0.795015),(-0.000000, -0.507174, -0.867750),(-0.000000, -0.614060, -0.795545),(-0.004330, -0.612531, -0.793567),(-0.004330, -0.505911, -0.865593),(-0.002500, -0.506836, -0.867172),(-0.004330, -0.612531, -0.793567),(-0.002500, -0.506836, -0.867172),(-0.002500, -0.613650, -0.795015),(-0.005000, -0.611002, -0.791589),(-0.005000, -0.504648, -0.863435),(-0.004330, -0.505911, -0.865593),(-0.005000, -0.611002, -0.791589),(-0.004330, -0.505911, -0.865593),(-0.004330, -0.612531, -0.793567),(-0.004330, -0.503385, -0.861278),(-0.004330, -0.388205, -0.919090),(-0.005000, -0.389178, -0.921393),(-0.004330, -0.503385, -0.861278),(-0.005000, -0.389178, -0.921393),(-0.005000, -0.504648, -0.863435),(-0.002500, -0.502460, -0.859698),(-0.002500, -0.387492, -0.917404),(-0.004330, -0.388205, -0.919090),(-0.002500, -0.502460, -0.859698),(-0.004330, -0.388205, -0.919090),(-0.004330, -0.503385, -0.861278),(-0.000000, -0.502122, -0.859120),(-0.000000, -0.387232, -0.916787),(-0.002500, -0.387492, -0.917404),(-0.000000, -0.502122, -0.859120),(-0.002500, -0.387492, -0.917404),(-0.002500, -0.502460, -0.859698),(0.002500, -0.502460, -0.859698),(0.002500, -0.387492, -0.917404),(-0.000000, -0.387232, -0.916787),(0.002500, -0.502460, -0.859698),(-0.000000, -0.387232, -0.916787),(-0.000000, -0.502122, -0.859120),(0.004330, -0.503385, -0.861278),(0.004330, -0.388205, -0.919090),(0.002500, -0.387492, -0.917404),(0.004330, -0.503385, -0.861278),(0.002500, -0.387492, -0.917404),(0.002500, -0.502460, -0.859698),(0.005000, -0.504648, -0.863435),(0.005000, -0.389178, -0.921393),(0.004330, -0.388205, -0.919090),(0.005000, -0.504648, -0.863435),(0.004330, -0.388205, -0.919090),(0.004330, -0.503385, -0.861278),(0.004330, -0.505911, -0.865593),(0.004330, -0.390151, -0.923696),(0.005000, -0.389178, -0.921393),(0.004330, -0.505911, -0.865593),(0.005000, -0.389178, -0.921393),(0.005000, -0.504648, -0.863435),(0.002500, -0.506836, -0.867172),(0.002500, -0.390863, -0.925381),(0.004330, -0.390151, -0.923696),(0.002500, -0.506836, -0.867172),(0.004330, -0.390151, -0.923696),(0.004330, -0.505911, -0.865593),(-0.000000, -0.507174, -0.867750),(-0.000000, -0.391124, -0.925998),(0.002500, -0.390863, -0.925381),(-0.000000, -0.507174, -0.867750),(0.002500, -0.390863, -0.925381),(0.002500, -0.506836, -0.867172),(-0.002500, -0.506836, -0.867172),(-0.002500, -0.390863, -0.925381),(-0.000000, -0.391124, -0.925998),(-0.002500, -0.506836, -0.867172),(-0.000000, -0.391124, -0.925998),(-0.000000, -0.507174, -0.867750),(-0.004330, -0.505911, -0.865593),(-0.004330, -0.390151, -0.923696),(-0.002500, -0.390863, -0.925381),(-0.004330, -0.505911, -0.865593),(-0.002500, -0.390863, -0.925381),(-0.002500, -0.506836, -0.867172),(-0.005000, -0.504648, -0.863435),(-0.005000, -0.389178, -0.921393),(-0.004330, -0.390151, -0.923696),(-0.005000, -0.504648, -0.863435),(-0.004330, -0.390151, -0.923696),(-0.004330, -0.505911, -0.865593),(-0.004330, -0.388205, -0.919090),(-0.004330, -0.265122, -0.961857),(-0.005000, -0.265784, -0.964268),(-0.004330, -0.388205, -0.919090),(-0.005000, -0.265784, -0.964268),(-0.005000, -0.389178, -0.921393),(-0.002500, -0.387492, -0.917404),(-0.002500, -0.264637, -0.960092),(-0.004330, -0.265122, -0.961857),(-0.002500, -0.387492, -0.917404),(-0.004330, -0.265122, -0.961857),(-0.004330, -0.388205, -0.919090),(-0.000000, -0.387232, -0.916787),(-0.000000, -0.264460, -0.959447),(-0.002500, -0.264637, -0.960092),(-0.000000, -0.387232, -0.916787),(-0.002500, -0.264637, -0.960092),(-0.002500, -0.387492, -0.917404),(0.002500, -0.387492, -0.917404),(0.002500, -0.264637, -0.960092),(-0.000000, -0.264460, -0.959447),(0.002500, -0.387492, -0.917404),(-0.000000, -0.264460, -0.959447),(-0.000000, -0.387232, -0.916787),(0.004330, -0.388205, -0.919090),(0.004330, -0.265122, -0.961857),(0.002500, -0.264637, -0.960092),(0.004330, -0.388205, -0.919090),(0.002500, -0.264637, -0.960092),(0.002500, -0.387492, -0.917404),(0.005000, -0.389178, -0.921393),(0.005000, -0.265784, -0.964268),(0.004330, -0.265122, -0.961857),(0.005000, -0.389178, -0.921393),(0.004330, -0.265122, -0.961857),(0.004330, -0.388205, -0.919090),(0.004330, -0.390151, -0.923696),(0.004330, -0.266446, -0.966679),(0.005000, -0.265784, -0.964268),(0.004330, -0.390151, -0.923696),(0.005000, -0.265784, -0.964268),(0.005000, -0.389178, -0.921393),(0.002500, -0.390863, -0.925381),(0.002500, -0.266931, -0.968444),(0.004330, -0.266446, -0.966679),(0.002500, -0.390863, -0.925381),(0.004330, -0.266446, -0.966679),(0.004330, -0.390151, -0.923696),(-0.000000, -0.391124, -0.925998),(-0.000000, -0.267108, -0.969090),(0.002500, -0.266931, -0.968444),(-0.000000, -0.391124, -0.925998),(0.002500, -0.266931, -0.968444),(0.002500, -0.390863, -0.925381),(-0.002500, -0.390863, -0.925381),(-0.002500, -0.266931, -0.968444),(-0.000000, -0.267108, -0.969090),(-0.002500, -0.390863, -0.925381),(-0.000000, -0.267108, -0.969090),(-0.000000, -0.391124, -0.925998),(-0.004330, -0.390151, -0.923696),(-0.004330, -0.266446, -0.966679),(-0.002500, -0.266931, -0.968444),(-0.004330, -0.390151, -0.923696),(-0.002500, -0.266931, -0.968444),(-0.002500, -0.390863, -0.925381),(-0.005000, -0.389178, -0.921393),(-0.005000, -0.265784, -0.964268),(-0.004330, -0.266446, -0.966679),(-0.005000, -0.389178, -0.921393),(-0.004330, -0.266446, -0.966679),(-0.004330, -0.390151, -0.923696),(-0.004330, -0.265122, -0.961857),(-0.004330, -0.135326, -0.988391),(-0.005000, -0.135661, -0.990868),(-0.004330, -0.265122, -0.961857),(-0.005000, -0.135661, -0.990868),(-0.005000, -0.265784, -0.964268),(-0.002500, -0.264637, -0.960092),(-0.002500, -0.135080, -0.986577),(-0.004330, -0.135326, -0.988391),(-0.002500, -0.264637, -0.960092),(-0.004330, -0.135326, -0.988391),(-0.004330, -0.265122, -0.961857),(-0.000000, -0.264460, -0.959447),(-0.000000, -0.134990, -0.985913),(-0.002500, -0.135080, -0.986577),(-0.000000, -0.264460, -0.959447),(-0.002500, -0.135080, -0.986577),(-0.002500, -0.264637, -0.960092),(0.002500, -0.264637, -0.960092),(0.002500, -0.135080, -0.986577),(-0.000000, -0.134990, -0.985913),(0.002500, -0.264637, -0.960092),(-0.000000, -0.134990, -0.985913),(-0.000000, -0.264460, -0.959447),(0.004330, -0.265122, -0.961857),(0.004330, -0.135326, -0.988391),(0.002500, -0.135080, -0.986577),(0.004330, -0.265122, -0.961857),(0.002500, -0.135080, -0.986577),(0.002500, -0.264637, -0.960092),(0.005000, -0.265784, -0.964268),(0.005000, -0.135661, -0.990868),(0.004330, -0.135326, -0.988391),(0.005000, -0.265784, -0.964268),(0.004330, -0.135326, -0.988391),(0.004330, -0.265122, -0.961857),(0.004330, -0.266446, -0.966679),(0.004330, -0.135996, -0.993346),(0.005000, -0.135661, -0.990868),(0.004330, -0.266446, -0.966679),(0.005000, -0.135661, -0.990868),(0.005000, -0.265784, -0.964268),(0.002500, -0.266931, -0.968444),(0.002500, -0.136241, -0.995159),(0.004330, -0.135996, -0.993346),(0.002500, -0.266931, -0.968444),(0.004330, -0.135996, -0.993346),(0.004330, -0.266446, -0.966679),(-0.000000, -0.267108, -0.969090),(-0.000000, -0.136331, -0.995823),(0.002500, -0.136241, -0.995159),(-0.000000, -0.267108, -0.969090),(0.002500, -0.136241, -0.995159),(0.002500, -0.266931, -0.968444),(-0.002500, -0.266931, -0.968444),(-0.002500, -0.136241, -0.995159),(-0.000000, -0.136331, -0.995823),(-0.002500, -0.266931, -0.968444),(-0.000000, -0.136331, -0.995823),(-0.000000, -0.267108, -0.969090),(-0.004330, -0.266446, -0.966679),(-0.004330, -0.135996, -0.993346),(-0.002500, -0.136241, -0.995159),(-0.004330, -0.266446, -0.966679),(-0.002500, -0.136241, -0.995159),(-0.002500, -0.266931, -0.968444),(-0.005000, -0.265784, -0.964268),(-0.005000, -0.135661, -0.990868),(-0.004330, -0.135996, -0.993346),(-0.005000, -0.265784, -0.964268),(-0.004330, -0.135996, -0.993346),(-0.004330, -0.266446, -0.966679),(-0.004330, -0.135326, -0.988391),(-0.004330, -0.000000, -0.997500),(-0.005000, -0.000000, -1.000000),(-0.004330, -0.135326, -0.988391),(-0.005000, -0.000000, -1.000000),(-0.005000, -0.135661, -0.990868),(-0.002500, -0.135080, -0.986577),(-0.002500, -0.000000, -0.995670),(-0.004330, -0.000000, -0.997500),(-0.002500, -0.135080, -0.986577),(-0.004330, -0.000000, -0.997500),(-0.004330, -0.135326, -0.988391),(-0.000000, -0.134990, -0.985913),(-0.000000, -0.000000, -0.995000),(-0.002500, -0.000000, -0.995670),(-0.000000, -0.134990, -0.985913),(-0.002500, -0.000000, -0.995670),(-0.002500, -0.135080, -0.986577),(0.002500, -0.135080, -0.986577),(0.002500, -0.000000, -0.995670),(-0.000000, -0.000000, -0.995000),(0.002500, -0.135080, -0.986577),(-0.000000, -0.000000, -0.995000),(-0.000000, -0.134990, -0.985913),(0.004330, -0.135326, -0.988391),(0.004330, -0.000000, -0.997500),(0.002500, -0.000000, -0.995670),(0.004330, -0.135326, -0.988391),(0.002500, -0.000000, -0.995670),(0.002500, -0.135080, -0.986577),(0.005000, -0.135661, -0.990868),(0.005000, 0.000000, -1.000000),(0.004330, -0.000000, -0.997500),(0.005000, -0.135661, -0.990868),(0.004330, -0.000000, -0.997500),(0.004330, -0.135326, -0.988391),(0.004330, -0.135996, -0.993346),(0.004330, 0.000000, -1.002500),(0.005000, 0.000000, -1.000000),(0.004330, -0.135996, -0.993346),(0.005000, 0.000000, -1.000000),(0.005000, -0.135661, -0.990868),(0.002500, -0.136241, -0.995159),(0.002500, 0.000000, -1.004330),(0.004330, 0.000000, -1.002500),(0.002500, -0.136241, -0.995159),(0.004330, 0.000000, -1.002500),(0.004330, -0.135996, -0.993346),(-0.000000, -0.136331, -0.995823),(-0.000000, 0.000000, -1.005000),(0.002500, 0.000000, -1.004330),(-0.000000, -0.136331, -0.995823),(0.002500, 0.000000, -1.004330),(0.002500, -0.136241, -0.995159),(-0.002500, -0.136241, -0.995159),(-0.002500, 0.000000, -1.004330),(-0.000000, 0.000000, -1.005000),(-0.002500, -0.136241, -0.995159),(-0.000000, 0.000000, -1.005000),(-0.000000, -0.136331, -0.995823),(-0.004330, -0.135996, -0.993346),(-0.004330, 0.000000, -1.002500),(-0.002500, 0.000000, -1.004330),(-0.004330, -0.135996, -0.993346),(-0.002500, 0.000000, -1.004330),(-0.002500, -0.136241, -0.995159),(-0.005000, -0.135661, -0.990868),(-0.005000, -0.000000, -1.000000),(-0.004330, 0.000000, -1.002500),(-0.005000, -0.135661, -0.990868),(-0.004330, 0.000000, -1.002500),(-0.004330, -0.135996, -0.993346),(0.003464, 0.000000, -0.798000),(0.003464, -0.108260, -0.790712),(0.004000, -0.108528, -0.792694),(0.003464, 0.000000, -0.798000),(0.004000, -0.108528, -0.792694),(0.004000, -0.000000, -0.800000),(0.002000, 0.000000, -0.796536),(0.002000, -0.108064, -0.789262),(0.003464, -0.108260, -0.790712),(0.002000, 0.000000, -0.796536),(0.003464, -0.108260, -0.790712),(0.003464, 0.000000, -0.798000),(0.000000, 0.000000, -0.796000),(0.000000, -0.107992, -0.788731),(0.002000, -0.108064, -0.789262),(0.000000, 0.000000, -0.796000),(0.002000, -0.108064, -0.789262),(0.002000, 0.000000, -0.796536),(-0.002000, 0.000000, -0.796536),(-0.002000, -0.108064, -0.789262),(0.000000, -0.107992, -0.788731),(-0.002000, 0.000000, -0.796536),(0.000000, -0.107992, -0.788731),(0.000000, 0.000000, -0.796000),(-0.003464, 0.000000, -0.798000),(-0.003464, -0.108260, -0.790712),(-0.002000, -0.108064, -0.789262),(-0.003464, 0.000000, -0.798000),(-0.002000, -0.108064, -0.789262),(-0.002000, 0.000000, -0.796536),(-0.004000, -0.000000, -0.800000),(-0.004000, -0.108528, -0.792694),(-0.003464, -0.108260, -0.790712),(-0.004000, -0.000000, -0.800000),(-0.003464, -0.108260, -0.790712),(-0.003464, 0.000000, -0.798000),(-0.003464, -0.000000, -0.802000),(-0.003464, -0.108796, -0.794676),(-0.004000, -0.108528, -0.792694),(-0.003464, -0.000000, -0.802000),(-0.004000, -0.108528, -0.792694),(-0.004000, -0.000000, -0.800000),(-0.002000, -0.000000, -0.803464),(-0.002000, -0.108993, -0.796127),(-0.003464, -0.108796, -0.794676),(-0.002000, -0.000000, -0.803464),(-0.003464, -0.108796, -0.794676),(-0.003464, -0.000000, -0.802000),(0.000000, -0.000000, -0.804000),(0.000000, -0.109065, -0.796658),(-0.002000, -0.108993, -0.796127),(0.000000, -0.000000, -0.804000),(-0.002000, -0.108993, -0.796127),(-0.002000, -0.000000, -0.803464),(0.002000, -0.000000, -0.803464),(0.002000, -0.108993, -0.796127),(0.000000, -0.109065, -0.796658),(0.002000, -0.000000, -0.803464),(0.000000, -0.109065, -0.796658),(0.000000, -0.000000, -0.804000),(0.003464, -0.000000, -0.802000),(0.003464, -0.108796, -0.794676),(0.002000, -0.108993, -0.796127),(0.003464, -0.000000, -0.802000),(0.002000, -0.108993, -0.796127),(0.002000, -0.000000, -0.803464),(0.004000, -0.000000, -0.800000),(0.004000, -0.108528, -0.792694),(0.003464, -0.108796, -0.794676),(0.004000, -0.000000, -0.800000),(0.003464, -0.108796, -0.794676),(0.003464, -0.000000, -0.802000),(0.003464, -0.108260, -0.790712),(0.003464, -0.212098, -0.769486),(0.004000, -0.212627, -0.771414),(0.003464, -0.108260, -0.790712),(0.004000, -0.212627, -0.771414),(0.004000, -0.108528, -0.792694),(0.002000, -0.108064, -0.789262),(0.002000, -0.211710, -0.768074),(0.003464, -0.212098, -0.769486),(0.002000, -0.108064, -0.789262),(0.003464, -0.212098, -0.769486),(0.003464, -0.108260, -0.790712),(0.000000, -0.107992, -0.788731),(0.000000, -0.211568, -0.767557),(0.002000, -0.211710, -0.768074),(0.000000, -0.107992, -0.788731),(0.002000, -0.211710, -0.768074),(0.002000, -0.108064, -0.789262),(-0.002000, -0.108064, -0.789262),(-0.002000, -0.211710, -0.768074),(0.000000, -0.211568, -0.767557),(-0.002000, -0.108064, -0.789262),(0.000000, -0.211568, -0.767557),(0.000000, -0.107992, -0.788731),(-0.003464, -0.108260, -0.790712),(-0.003464, -0.212098, -0.769486),(-0.002000, -0.211710, -0.768074),(-0.003464, -0.108260, -0.790712),(-0.002000, -0.211710, -0.768074),(-0.002000, -0.108064, -0.789262),(-0.004000, -0.108528, -0.792694),(-0.004000, -0.212627, -0.771414),(-0.003464, -0.212098, -0.769486),(-0.004000, -0.108528, -0.792694),(-0.003464, -0.212098, -0.769486),(-0.003464, -0.108260, -0.790712),(-0.003464, -0.108796, -0.794676),(-0.003464, -0.213157, -0.773343),(-0.004000, -0.212627, -0.771414),(-0.003464, -0.108796, -0.794676),(-0.004000, -0.212627, -0.771414),(-0.004000, -0.108528, -0.792694),(-0.002000, -0.108993, -0.796127),(-0.002000, -0.213545, -0.774755),(-0.003464, -0.213157, -0.773343),(-0.002000, -0.108993, -0.796127),(-0.003464, -0.213157, -0.773343),(-0.003464, -0.108796, -0.794676),(0.000000, -0.109065, -0.796658),(0.000000, -0.213687, -0.775272),(-0.002000, -0.213545, -0.774755),(0.000000, -0.109065, -0.796658),(-0.002000, -0.213545, -0.774755),(-0.002000, -0.108993, -0.796127),(0.002000, -0.108993, -0.796127),(0.002000, -0.213545, -0.774755),(0.000000, -0.213687, -0.775272),(0.002000, -0.108993, -0.796127),(0.000000, -0.213687, -0.775272),(0.000000, -0.109065, -0.796658),(0.003464, -0.108796, -0.794676),(0.003464, -0.213157, -0.773343),(0.002000, -0.213545, -0.774755),(0.003464, -0.108796, -0.794676),(0.002000, -0.213545, -0.774755),(0.002000, -0.108993, -0.796127),(0.004000, -0.108528, -0.792694),(0.004000, -0.212627, -0.771414),(0.003464, -0.213157, -0.773343),(0.004000, -0.108528, -0.792694),(0.003464, -0.213157, -0.773343),(0.003464, -0.108796, -0.794676),(0.003464, -0.212098, -0.769486),(0.003464, -0.310564, -0.735272),(0.004000, -0.311342, -0.737114),(0.003464, -0.212098, -0.769486),(0.004000, -0.311342, -0.737114),(0.004000, -0.212627, -0.771414),(0.002000, -0.211710, -0.768074),(0.002000, -0.309994, -0.733923),(0.003464, -0.310564, -0.735272),(0.002000, -0.211710, -0.768074),(0.003464, -0.310564, -0.735272),(0.003464, -0.212098, -0.769486),(0.000000, -0.211568, -0.767557),(0.000000, -0.309785, -0.733429),(0.002000, -0.309994, -0.733923),(0.000000, -0.211568, -0.767557),(0.002000, -0.309994, -0.733923),(0.002000, -0.211710, -0.768074),(-0.002000, -0.211710, -0.768074),(-0.002000, -0.309994, -0.733923),(0.000000, -0.309785, -0.733429),(-0.002000, -0.211710, -0.768074),(0.000000, -0.309785, -0.733429),(0.000000, -0.211568, -0.767557),(-0.003464, -0.212098, -0.769486),(-0.003464, -0.310564, -0.735272),(-0.002000, -0.309994, -0.733923),(-0.003464, -0.212098, -0.769486),(-0.002000, -0.309994, -0.733923),(-0.002000, -0.211710, -0.768074),(-0.004000, -0.212627, -0.771414),(-0.004000, -0.311342, -0.737114),(-0.003464, -0.310564, -0.735272),(-0.004000, -0.212627, -0.771414),(-0.003464, -0.310564, -0.735272),(-0.003464, -0.212098, -0.769486),(-0.003464, -0.213157, -0.773343),(-0.003464, -0.312121, -0.738956),(-0.004000, -0.311342, -0.737114),(-0.003464, -0.213157, -0.773343),(-0.004000, -0.311342, -0.737114),(-0.004000, -0.212627, -0.771414),(-0.002000, -0.213545, -0.774755),(-0.002000, -0.312691, -0.740305),(-0.003464, -0.312121, -0.738956),(-0.002000, -0.213545, -0.774755),(-0.003464, -0.312121, -0.738956),(-0.003464, -0.213157, -0.773343),(0.000000, -0.213687, -0.775272),(0.000000, -0.312899, -0.740799),(-0.002000, -0.312691, -0.740305),(0.000000, -0.213687, -0.775272),(-0.002000, -0.312691, -0.740305),(-0.002000, -0.213545, -0.774755),(0.002000, -0.213545, -0.774755),(0.002000, -0.312691, -0.740305),(0.000000, -0.312899, -0.740799),(0.002000, -0.213545, -0.774755),(0.000000, -0.312899, -0.740799),(0.000000, -0.213687, -0.775272),(0.003464, -0.213157, -0.773343),(0.003464, -0.312121, -0.738956),(0.002000, -0.312691, -0.740305),(0.003464, -0.213157, -0.773343),(0.002000, -0.312691, -0.740305),(0.002000, -0.213545, -0.774755),(0.004000, -0.212627, -0.771414),(0.004000, -0.311342, -0.737114),(0.003464, -0.312121, -0.738956),(0.004000, -0.212627, -0.771414),(0.003464, -0.312121, -0.738956),(0.003464, -0.213157, -0.773343),(0.003464, -0.310564, -0.735272),(0.003464, -0.402708, -0.689022),(0.004000, -0.403719, -0.690748),(0.003464, -0.310564, -0.735272),(0.004000, -0.403719, -0.690748),(0.004000, -0.311342, -0.737114),(0.002000, -0.309994, -0.733923),(0.002000, -0.401968, -0.687759),(0.003464, -0.402708, -0.689022),(0.002000, -0.309994, -0.733923),(0.003464, -0.402708, -0.689022),(0.003464, -0.310564, -0.735272),(0.000000, -0.309785, -0.733429),(0.000000, -0.401698, -0.687296),(0.002000, -0.401968, -0.687759),(0.000000, -0.309785, -0.733429),(0.002000, -0.401968, -0.687759),(0.002000, -0.309994, -0.733923),(-0.002000, -0.309994, -0.733923),(-0.002000, -0.401968, -0.687759),(0.000000, -0.401698, -0.687296),(-0.002000, -0.309994, -0.733923),(0.000000, -0.401698, -0.687296),(0.000000, -0.309785, -0.733429),(-0.003464, -0.310564, -0.735272),(-0.003464, -0.402708, -0.689022),(-0.002000, -0.401968, -0.687759),(-0.003464, -0.310564, -0.735272),(-0.002000, -0.401968, -0.687759),(-0.002000, -0.309994, -0.733923),(-0.004000, -0.311342, -0.737114),(-0.004000, -0.403719, -0.690748),(-0.003464, -0.402708, -0.689022),(-0.004000, -0.311342, -0.737114),(-0.003464, -0.402708, -0.689022),(-0.003464, -0.310564, -0.735272),(-0.003464, -0.312121, -0.738956),(-0.003464, -0.404729, -0.692474),(-0.004000, -0.403719, -0.690748),(-0.003464, -0.312121, -0.738956),(-0.004000, -0.403719, -0.690748),(-0.004000, -0.311342, -0.737114),(-0.002000, -0.312691, -0.740305),(-0.002000, -0.405469, -0.693738),(-0.003464, -0.404729, -0.692474),(-0.002000, -0.312691, -0.740305),(-0.003464, -0.404729, -0.692474),(-0.003464, -0.312121, -0.738956),(0.000000, -0.312899, -0.740799),(0.000000, -0.405740, -0.694200),(-0.002000, -0.405469, -0.693738),(0.000000, -0.312899, -0.740799),(-0.002000, -0.405469, -0.693738),(-0.002000, -0.312691, -0.740305),(0.002000, -0.312691, -0.740305),(0.002000, -0.405469, -0.693738),(0.000000, -0.405740, -0.694200),(0.002000, -0.312691, -0.740305),(0.000000, -0.405740, -0.694200),(0.000000, -0.312899, -0.740799),(0.003464, -0.312121, -0.738956),(0.003464, -0.404729, -0.692474),(0.002000, -0.405469, -0.693738),(0.003464, -0.312121, -0.738956),(0.002000, -0.405469, -0.693738),(0.002000, -0.312691, -0.740305),(0.004000, -0.311342, -0.737114),(0.004000, -0.403719, -0.690748),(0.003464, -0.404729, -0.692474),(0.004000, -0.311342, -0.737114),(0.003464, -0.404729, -0.692474),(0.003464, -0.312121, -0.738956),(0.003464, -0.402708, -0.689022),(0.003464, -0.487579, -0.631689),(0.004000, -0.488802, -0.633271),(0.003464, -0.402708, -0.689022),(0.004000, -0.488802, -0.633271),(0.004000, -0.403719, -0.690748),(0.002000, -0.401968, -0.687759),(0.002000, -0.486684, -0.630530),(0.003464, -0.487579, -0.631689),(0.002000, -0.401968, -0.687759),(0.003464, -0.487579, -0.631689),(0.003464, -0.402708, -0.689022),(0.000000, -0.401698, -0.687296),(0.000000, -0.486356, -0.630106),(0.002000, -0.486684, -0.630530),(0.000000, -0.401698, -0.687296),(0.002000, -0.486684, -0.630530),(0.002000, -0.401968, -0.687759),(-0.002000, -0.401968, -0.687759),(-0.002000, -0.486684, -0.630530),(0.000000, -0.486356, -0.630106),(-0.002000, -0.401968, -0.687759),(0.000000, -0.486356, -0.630106),(0.000000, -0.401698, -0.687296),(-0.003464, -0.402708, -0.689022),(-0.003464, -0.487579, -0.631689),(-0.002000, -0.486684, -0.630530),(-0.003464, -0.402708, -0.689022),(-0.002000, -0.486684, -0.630530),(-0.002000, -0.401968, -0.687759),(-0.004000, -0.403719, -0.690748),(-0.004000, -0.488802, -0.633271),(-0.003464, -0.487579, -0.631689),(-0.004000, -0.403719, -0.690748),(-0.003464, -0.487579, -0.631689),(-0.003464, -0.402708, -0.689022),(-0.003464, -0.404729, -0.692474),(-0.003464, -0.490025, -0.634854),(-0.004000, -0.488802, -0.633271),(-0.003464, -0.404729, -0.692474),(-0.004000, -0.488802, -0.633271),(-0.004000, -0.403719, -0.690748),(-0.002000, -0.405469, -0.693738),(-0.002000, -0.490920, -0.636012),(-0.003464, -0.490025, -0.634854),(-0.002000, -0.405469, -0.693738),(-0.003464, -0.490025, -0.634854),(-0.003464, -0.404729, -0.692474),(0.000000, -0.405740, -0.694200),(0.000000, -0.491248, -0.636436),(-0.002000, -0.490920, -0.636012),(0.000000, -0.405740, -0.694200),(-0.002000, -0.490920, -0.636012),(-0.002000, -0.405469, -0.693738),(0.002000, -0.405469, -0.693738),(0.002000, -0.490920, -0.636012),(0.000000, -0.491248, -0.636436),(0.002000, -0.405469, -0.693738),(0.000000, -0.491248, -0.636436),(0.000000, -0.405740, -0.694200),(0.003464, -0.404729, -0.692474),(0.003464, -0.490025, -0.634854),(0.002000, -0.490920, -0.636012),(0.003464, -0.404729, -0.692474),(0.002000, -0.490920, -0.636012),(0.002000, -0.405469, -0.693738),(0.004000, -0.403719, -0.690748),(0.004000, -0.488802, -0.633271),(0.003464, -0.490025, -0.634854),(0.004000, -0.403719, -0.690748),(0.003464, -0.490025, -0.634854),(0.003464, -0.404729, -0.692474),(0.003464, -0.487579, -0.631689),(0.003464, -0.564223, -0.564223),(0.004000, -0.565638, -0.565637),(0.003464, -0.487579, -0.631689),(0.004000, -0.565638, -0.565637),(0.004000, -0.488802, -0.633271),(0.002000, -0.486684, -0.630530),(0.002000, -0.563188, -0.563188),(0.003464, -0.564223, -0.564223),(0.002000, -0.486684, -0.630530),(0.003464, -0.564223, -0.564223),(0.003464, -0.487579, -0.631689),(0.000000, -0.486356, -0.630106),(0.000000, -0.562809, -0.562809),(0.002000, -0.563188, -0.563188),(0.000000, -0.486356, -0.630106),(0.002000, -0.563188, -0.563188),(0.002000, -0.486684, -0.630530),(-0.002000, -0.486684, -0.630530),(-0.002000, -0.563188, -0.563188),(0.000000, -0.562809, -0.562809),(-0.002000, -0.486684, -0.630530),(0.000000, -0.562809, -0.562809),(0.000000, -0.486356, -0.630106),(-0.003464, -0.487579, -0.631689),(-0.003464, -0.564223, -0.564223),(-0.002000, -0.563188, -0.563188),(-0.003464, -0.487579, -0.631689),(-0.002000, -0.563188, -0.563188),(-0.002000, -0.486684, -0.630530),(-0.004000, -0.488802, -0.633271),(-0.004000, -0.565638, -0.565637),(-0.003464, -0.564223, -0.564223),(-0.004000, -0.488802, -0.633271),(-0.003464, -0.564223, -0.564223),(-0.003464, -0.487579, -0.631689),(-0.003464, -0.490025, -0.634854),(-0.003464, -0.567052, -0.567052),(-0.004000, -0.565638, -0.565637),(-0.003464, -0.490025, -0.634854),(-0.004000, -0.565638, -0.565637),(-0.004000, -0.488802, -0.633271),(-0.002000, -0.490920, -0.636012),(-0.002000, -0.568087, -0.568087),(-0.003464, -0.567052, -0.567052),(-0.002000, -0.490920, -0.636012),(-0.003464, -0.567052, -0.567052),(-0.003464, -0.490025, -0.634854),(0.000000, -0.491248, -0.636436),(-0.000000, -0.568466, -0.568466),(-0.002000, -0.568087, -0.568087),(0.000000, -0.491248, -0.636436),(-0.002000, -0.568087, -0.568087),(-0.002000, -0.490920, -0.636012),(0.002000, -0.490920, -0.636012),(0.002000, -0.568087, -0.568087),(-0.000000, -0.568466, -0.568466),(0.002000, -0.490920, -0.636012),(-0.000000, -0.568466, -0.568466),(0.000000, -0.491248, -0.636436),(0.003464, -0.490025, -0.634854),(0.003464, -0.567052, -0.567052),(0.002000, -0.568087, -0.568087),(0.003464, -0.490025, -0.634854),(0.002000, -0.568087, -0.568087),(0.002000, -0.490920, -0.636012),(0.004000, -0.488802, -0.633271),(0.004000, -0.565638, -0.565637),(0.003464, -0.567052, -0.567052),(0.004000, -0.488802, -0.633271),(0.003464, -0.567052, -0.567052),(0.003464, -0.490025, -0.634854),(0.003464, -0.564223, -0.564223),(0.003464, -0.631689, -0.487579),(0.004000, -0.633271, -0.488802),(0.003464, -0.564223, -0.564223),(0.004000, -0.633271, -0.488802),(0.004000, -0.565638, -0.565637),(0.002000, -0.563188, -0.563188),(0.002000, -0.630530, -0.486684),(0.003464, -0.631689, -0.487579),(0.002000, -0.563188, -0.563188),(0.003464, -0.631689, -0.487579),(0.003464, -0.564223, -0.564223),(0.000000, -0.562809, -0.562809),(-0.000000, -0.630106, -0.486356),(0.002000, -0.630530, -0.486684),(0.000000, -0.562809, -0.562809),(0.002000, -0.630530, -0.486684),(0.002000, -0.563188, -0.563188),(-0.002000, -0.563188, -0.563188),(-0.002000, -0.630530, -0.486684),(-0.000000, -0.630106, -0.486356),(-0.002000, -0.563188, -0.563188),(-0.000000, -0.630106, -0.486356),(0.000000, -0.562809, -0.562809),(-0.003464, -0.564223, -0.564223),(-0.003464, -0.631689, -0.487579),(-0.002000, -0.630530, -0.486684),(-0.003464, -0.564223, -0.564223),(-0.002000, -0.630530, -0.486684),(-0.002000, -0.563188, -0.563188),(-0.004000, -0.565638, -0.565637),(-0.004000, -0.633271, -0.488802),(-0.003464, -0.631689, -0.487579),(-0.004000, -0.565638, -0.565637),(-0.003464, -0.631689, -0.487579),(-0.003464, -0.564223, -0.564223),(-0.003464, -0.567052, -0.567052),(-0.003464, -0.634854, -0.490025),(-0.004000, -0.633271, -0.488802),(-0.003464, -0.567052, -0.567052),(-0.004000, -0.633271, -0.488802),(-0.004000, -0.565638, -0.565637),(-0.002000, -0.568087, -0.568087),(-0.002000, -0.636012, -0.490920),(-0.003464, -0.634854, -0.490025),(-0.002000, -0.568087, -0.568087),(-0.003464, -0.634854, -0.490025),(-0.003464, -0.567052, -0.567052),(-0.000000, -0.568466, -0.568466),(-0.000000, -0.636436, -0.491248),(-0.002000, -0.636012, -0.490920),(-0.000000, -0.568466, -0.568466),(-0.002000, -0.636012, -0.490920),(-0.002000, -0.568087, -0.568087),(0.002000, -0.568087, -0.568087),(0.002000, -0.636012, -0.490920),(-0.000000, -0.636436, -0.491248),(0.002000, -0.568087, -0.568087),(-0.000000, -0.636436, -0.491248),(-0.000000, -0.568466, -0.568466),(0.003464, -0.567052, -0.567052),(0.003464, -0.634854, -0.490025),(0.002000, -0.636012, -0.490920),(0.003464, -0.567052, -0.567052),(0.002000, -0.636012, -0.490920),(0.002000, -0.568087, -0.568087),(0.004000, -0.565638, -0.565637),(0.004000, -0.633271, -0.488802),(0.003464, -0.634854, -0.490025),(0.004000, -0.565638, -0.565637),(0.003464, -0.634854, -0.490025),(0.003464, -0.567052, -0.567052),(0.003464, -0.631689, -0.487579),(0.003464, -0.689022, -0.402708),(0.004000, -0.690748, -0.403719),(0.003464, -0.631689, -0.487579),(0.004000, -0.690748, -0.403719),(0.004000, -0.633271, -0.488802),(0.002000, -0.630530, -0.486684),(0.002000, -0.687759, -0.401968),(0.003464, -0.689022, -0.402708),(0.002000, -0.630530, -0.486684),(0.003464, -0.689022, -0.402708),(0.003464, -0.631689, -0.487579),(-0.000000, -0.630106, -0.486356),(-0.000000, -0.687296, -0.401698),(0.002000, -0.687759, -0.401968),(-0.000000, -0.630106, -0.486356),(0.002000, -0.687759, -0.401968),(0.002000, -0.630530, -0.486684),(-0.002000, -0.630530, -0.486684),(-0.002000, -0.687759, -0.401968),(-0.000000, -0.687296, -0.401698),(-0.002000, -0.630530, -0.486684),(-0.000000, -0.687296, -0.401698),(-0.000000, -0.630106, -0.486356),(-0.003464, -0.631689, -0.487579),(-0.003464, -0.689022, -0.402708),(-0.002000, -0.687759, -0.401968),(-0.003464, -0.631689, -0.487579),(-0.002000, -0.687759, -0.401968),(-0.002000, -0.630530, -0.486684),(-0.004000, -0.633271, -0.488802),(-0.004000, -0.690748, -0.403719),(-0.003464, -0.689022, -0.402708),(-0.004000, -0.633271, -0.488802),(-0.003464, -0.689022, -0.402708),(-0.003464, -0.631689, -0.487579),(-0.003464, -0.634854, -0.490025),(-0.003464, -0.692474, -0.404729),(-0.004000, -0.690748, -0.403719),(-0.003464, -0.634854, -0.490025),(-0.004000, -0.690748, -0.403719),(-0.004000, -0.633271, -0.488802),(-0.002000, -0.636012, -0.490920),(-0.002000, -0.693738, -0.405469),(-0.003464, -0.692474, -0.404729),(-0.002000, -0.636012, -0.490920),(-0.003464, -0.692474, -0.404729),(-0.003464, -0.634854, -0.490025),(-0.000000, -0.636436, -0.491248),(-0.000000, -0.694200, -0.405739),(-0.002000, -0.693738, -0.405469),(-0.000000, -0.636436, -0.491248),(-0.002000, -0.693738, -0.405469),(-0.002000, -0.636012, -0.490920),(0.002000, -0.636012, -0.490920),(0.002000, -0.693738, -0.405469),(-0.000000, -0.694200, -0.405739),(0.002000, -0.636012, -0.490920),(-0.000000, -0.694200, -0.405739),(-0.000000, -0.636436, -0.491248),(0.003464, -0.634854, -0.490025),(0.003464, -0.692474, -0.404729),(0.002000, -0.693738, -0.405469),(0.003464, -0.634854, -0.490025),(0.002000, -0.693738, -0.405469),(0.002000, -0.636012, -0.490920),(0.004000, -0.633271, -0.488802),(0.004000, -0.690748, -0.403719),(0.003464, -0.692474, -0.404729),(0.004000, -0.633271, -0.488802),(0.003464, -0.692474, -0.404729),(0.003464, -0.634854, -0.490025),(0.003464, -0.689022, -0.402708),(0.003464, -0.735272, -0.310564),(0.004000, -0.737114, -0.311342),(0.003464, -0.689022, -0.402708),(0.004000, -0.737114, -0.311342),(0.004000, -0.690748, -0.403719),(0.002000, -0.687759, -0.401968),(0.002000, -0.733923, -0.309994),(0.003464, -0.735272, -0.310564),(0.002000, -0.687759, -0.401968),(0.003464, -0.735272, -0.310564),(0.003464, -0.689022, -0.402708),(-0.000000, -0.687296, -0.401698),(-0.000000, -0.733429, -0.309785),(0.002000, -0.733923, -0.309994),(-0.000000, -0.687296, -0.401698),(0.002000, -0.733923, -0.309994),(0.002000, -0.687759, -0.401968),(-0.002000, -0.687759, -0.401968),(-0.002000, -0.733923, -0.309994),(-0.000000, -0.733429, -0.309785),(-0.002000, -0.687759, -0.401968),(-0.000000, -0.733429, -0.309785),(-0.000000, -0.687296, -0.401698),(-0.003464, -0.689022, -0.402708),(-0.003464, -0.735272, -0.310564),(-0.002000, -0.733923, -0.309994),(-0.003464, -0.689022, -0.402708),(-0.002000, -0.733923, -0.309994),(-0.002000, -0.687759, -0.401968),(-0.004000, -0.690748, -0.403719),(-0.004000, -0.737114, -0.311342),(-0.003464, -0.735272, -0.310564),(-0.004000, -0.690748, -0.403719),(-0.003464, -0.735272, -0.310564),(-0.003464, -0.689022, -0.402708),(-0.003464, -0.692474, -0.404729),(-0.003464, -0.738956, -0.312121),(-0.004000, -0.737114, -0.311342),(-0.003464, -0.692474, -0.404729),(-0.004000, -0.737114, -0.311342),(-0.004000, -0.690748, -0.403719),(-0.002000, -0.693738, -0.405469),(-0.002000, -0.740305, -0.312691),(-0.003464, -0.738956, -0.312121),(-0.002000, -0.693738, -0.405469),(-0.003464, -0.738956, -0.312121),(-0.003464, -0.692474, -0.404729),(-0.000000, -0.694200, -0.405739),(-0.000000, -0.740799, -0.312899),(-0.002000, -0.740305, -0.312691),(-0.000000, -0.694200, -0.405739),(-0.002000, -0.740305, -0.312691),(-0.002000, -0.693738, -0.405469),(0.002000, -0.693738, -0.405469),(0.002000, -0.740305, -0.312691),(-0.000000, -0.740799, -0.312899),(0.002000, -0.693738, -0.405469),(-0.000000, -0.740799, -0.312899),(-0.000000, -0.694200, -0.405739),(0.003464, -0.692474, -0.404729),(0.003464, -0.738956, -0.312121),(0.002000, -0.740305, -0.312691),(0.003464, -0.692474, -0.404729),(0.002000, -0.740305, -0.312691),(0.002000, -0.693738, -0.405469),(0.004000, -0.690748, -0.403719),(0.004000, -0.737114, -0.311342),(0.003464, -0.738956, -0.312121),(0.004000, -0.690748, -0.403719),(0.003464, -0.738956, -0.312121),(0.003464, -0.692474, -0.404729),(0.003464, -0.735272, -0.310564),(0.003464, -0.769486, -0.212098),(0.004000, -0.771414, -0.212627),(0.003464, -0.735272, -0.310564),(0.004000, -0.771414, -0.212627),(0.004000, -0.737114, -0.311342),(0.002000, -0.733923, -0.309994),(0.002000, -0.768074, -0.211710),(0.003464, -0.769486, -0.212098),(0.002000, -0.733923, -0.309994),(0.003464, -0.769486, -0.212098),(0.003464, -0.735272, -0.310564),(-0.000000, -0.733429, -0.309785),(-0.000000, -0.767557, -0.211568),(0.002000, -0.768074, -0.211710),(-0.000000, -0.733429, -0.309785),(0.002000, -0.768074, -0.211710),(0.002000, -0.733923, -0.309994),(-0.002000, -0.733923, -0.309994),(-0.002000, -0.768074, -0.211710),(-0.000000, -0.767557, -0.211568),(-0.002000, -0.733923, -0.309994),(-0.000000, -0.767557, -0.211568),(-0.000000, -0.733429, -0.309785),(-0.003464, -0.735272, -0.310564),(-0.003464, -0.769486, -0.212098),(-0.002000, -0.768074, -0.211710),(-0.003464, -0.735272, -0.310564),(-0.002000, -0.768074, -0.211710),(-0.002000, -0.733923, -0.309994),(-0.004000, -0.737114, -0.311342),(-0.004000, -0.771414, -0.212627),(-0.003464, -0.769486, -0.212098),(-0.004000, -0.737114, -0.311342),(-0.003464, -0.769486, -0.212098),(-0.003464, -0.735272, -0.310564),(-0.003464, -0.738956, -0.312121),(-0.003464, -0.773343, -0.213157),(-0.004000, -0.771414, -0.212627),(-0.003464, -0.738956, -0.312121),(-0.004000, -0.771414, -0.212627),(-0.004000, -0.737114, -0.311342),(-0.002000, -0.740305, -0.312691),(-0.002000, -0.774755, -0.213545),(-0.003464, -0.773343, -0.213157),(-0.002000, -0.740305, -0.312691),(-0.003464, -0.773343, -0.213157),(-0.003464, -0.738956, -0.312121),(-0.000000, -0.740799, -0.312899),(-0.000000, -0.775272, -0.213687),(-0.002000, -0.774755, -0.213545),(-0.000000, -0.740799, -0.312899),(-0.002000, -0.774755, -0.213545),(-0.002000, -0.740305, -0.312691),(0.002000, -0.740305, -0.312691),(0.002000, -0.774755, -0.213545),(-0.000000, -0.775272, -0.213687),(0.002000, -0.740305, -0.312691),(-0.000000, -0.775272, -0.213687),(-0.000000, -0.740799, -0.312899),(0.003464, -0.738956, -0.312121),(0.003464, -0.773343, -0.213157),(0.002000, -0.774755, -0.213545),(0.003464, -0.738956, -0.312121),(0.002000, -0.774755, -0.213545),(0.002000, -0.740305, -0.312691),(0.004000, -0.737114, -0.311342),(0.004000, -0.771414, -0.212627),(0.003464, -0.773343, -0.213157),(0.004000, -0.737114, -0.311342),(0.003464, -0.773343, -0.213157),(0.003464, -0.738956, -0.312121),(0.003464, -0.769486, -0.212098),(0.003464, -0.790713, -0.108260),(0.004000, -0.792695, -0.108528),(0.003464, -0.769486, -0.212098),(0.004000, -0.792695, -0.108528),(0.004000, -0.771414, -0.212627),(0.002000, -0.768074, -0.211710),(0.002000, -0.789262, -0.108064),(0.003464, -0.790713, -0.108260),(0.002000, -0.768074, -0.211710),(0.003464, -0.790713, -0.108260),(0.003464, -0.769486, -0.212098),(-0.000000, -0.767557, -0.211568),(-0.000000, -0.788731, -0.107992),(0.002000, -0.789262, -0.108064),(-0.000000, -0.767557, -0.211568),(0.002000, -0.789262, -0.108064),(0.002000, -0.768074, -0.211710),(-0.002000, -0.768074, -0.211710),(-0.002000, -0.789262, -0.108064),(-0.000000, -0.788731, -0.107992),(-0.002000, -0.768074, -0.211710),(-0.000000, -0.788731, -0.107992),(-0.000000, -0.767557, -0.211568),(-0.003464, -0.769486, -0.212098),(-0.003464, -0.790713, -0.108260),(-0.002000, -0.789262, -0.108064),(-0.003464, -0.769486, -0.212098),(-0.002000, -0.789262, -0.108064),(-0.002000, -0.768074, -0.211710),(-0.004000, -0.771414, -0.212627),(-0.004000, -0.792695, -0.108528),(-0.003464, -0.790713, -0.108260),(-0.004000, -0.771414, -0.212627),(-0.003464, -0.790713, -0.108260),(-0.003464, -0.769486, -0.212098),(-0.003464, -0.773343, -0.213157),(-0.003464, -0.794676, -0.108796),(-0.004000, -0.792695, -0.108528),(-0.003464, -0.773343, -0.213157),(-0.004000, -0.792695, -0.108528),(-0.004000, -0.771414, -0.212627),(-0.002000, -0.774755, -0.213545),(-0.002000, -0.796127, -0.108993),(-0.003464, -0.794676, -0.108796),(-0.002000, -0.774755, -0.213545),(-0.003464, -0.794676, -0.108796),(-0.003464, -0.773343, -0.213157),(-0.000000, -0.775272, -0.213687),(-0.000000, -0.796658, -0.109065),(-0.002000, -0.796127, -0.108993),(-0.000000, -0.775272, -0.213687),(-0.002000, -0.796127, -0.108993),(-0.002000, -0.774755, -0.213545),(0.002000, -0.774755, -0.213545),(0.002000, -0.796127, -0.108993),(-0.000000, -0.796658, -0.109065),(0.002000, -0.774755, -0.213545),(-0.000000, -0.796658, -0.109065),(-0.000000, -0.775272, -0.213687),(0.003464, -0.773343, -0.213157),(0.003464, -0.794676, -0.108796),(0.002000, -0.796127, -0.108993),(0.003464, -0.773343, -0.213157),(0.002000, -0.796127, -0.108993),(0.002000, -0.774755, -0.213545),(0.004000, -0.771414, -0.212627),(0.004000, -0.792695, -0.108528),(0.003464, -0.794676, -0.108796),(0.004000, -0.771414, -0.212627),(0.003464, -0.794676, -0.108796),(0.003464, -0.773343, -0.213157),(0.003464, -0.790713, -0.108260),(0.003464, -0.798000, 0.000000),(0.004000, -0.800000, 0.000000),(0.003464, -0.790713, -0.108260),(0.004000, -0.800000, 0.000000),(0.004000, -0.792695, -0.108528),(0.002000, -0.789262, -0.108064),(0.002000, -0.796536, -0.000000),(0.003464, -0.798000, 0.000000),(0.002000, -0.789262, -0.108064),(0.003464, -0.798000, 0.000000),(0.003464, -0.790713, -0.108260),(-0.000000, -0.788731, -0.107992),(-0.000000, -0.796000, -0.000000),(0.002000, -0.796536, -0.000000),(-0.000000, -0.788731, -0.107992),(0.002000, -0.796536, -0.000000),(0.002000, -0.789262, -0.108064),(-0.002000, -0.789262, -0.108064),(-0.002000, -0.796536, -0.000000),(-0.000000, -0.796000, -0.000000),(-0.002000, -0.789262, -0.108064),(-0.000000, -0.796000, -0.000000),(-0.000000, -0.788731, -0.107992),(-0.003464, -0.790713, -0.108260),(-0.003464, -0.798000, 0.000000),(-0.002000, -0.796536, -0.000000),(-0.003464, -0.790713, -0.108260),(-0.002000, -0.796536, -0.000000),(-0.002000, -0.789262, -0.108064),(-0.004000, -0.792695, -0.108528),(-0.004000, -0.800000, 0.000000),(-0.003464, -0.798000, 0.000000),(-0.004000, -0.792695, -0.108528),(-0.003464, -0.798000, 0.000000),(-0.003464, -0.790713, -0.108260),(-0.003464, -0.794676, -0.108796),(-0.003464, -0.802000, -0.000000),(-0.004000, -0.800000, 0.000000),(-0.003464, -0.794676, -0.108796),(-0.004000, -0.800000, 0.000000),(-0.004000, -0.792695, -0.108528),(-0.002000, -0.796127, -0.108993),(-0.002000, -0.803464, -0.000000),(-0.003464, -0.802000, -0.000000),(-0.002000, -0.796127, -0.108993),(-0.003464, -0.802000, -0.000000),(-0.003464, -0.794676, -0.108796),(-0.000000, -0.796658, -0.109065),(-0.000000, -0.804000, 0.000000),(-0.002000, -0.803464, -0.000000),(-0.000000, -0.796658, -0.109065),(-0.002000, -0.803464, -0.000000),(-0.002000, -0.796127, -0.108993),(0.002000, -0.796127, -0.108993),(0.002000, -0.803464, 0.000000),(-0.000000, -0.804000, 0.000000),(0.002000, -0.796127, -0.108993),(-0.000000, -0.804000, 0.000000),(-0.000000, -0.796658, -0.109065),(0.003464, -0.794676, -0.108796),(0.003464, -0.802000, -0.000000),(0.002000, -0.803464, 0.000000),(0.003464, -0.794676, -0.108796),(0.002000, -0.803464, 0.000000),(0.002000, -0.796127, -0.108993),(0.004000, -0.792695, -0.108528),(0.004000, -0.800000, 0.000000),(0.003464, -0.802000, -0.000000),(0.004000, -0.792695, -0.108528),(0.003464, -0.802000, -0.000000),(0.003464, -0.794676, -0.108796),(0.003464, -0.798000, 0.000000),(0.003464, -0.790712, 0.108260),(0.004000, -0.792694, 0.108528),(0.003464, -0.798000, 0.000000),(0.004000, -0.792694, 0.108528),(0.004000, -0.800000, 0.000000),(0.002000, -0.796536, -0.000000),(0.002000, -0.789262, 0.108064),(0.003464, -0.790712, 0.108260),(0.002000, -0.796536, -0.000000),(0.003464, -0.790712, 0.108260),(0.003464, -0.798000, 0.000000),(-0.000000, -0.796000, -0.000000),(-0.000000, -0.788731, 0.107992),(0.002000, -0.789262, 0.108064),(-0.000000, -0.796000, -0.000000),(0.002000, -0.789262, 0.108064),(0.002000, -0.796536, -0.000000),(-0.002000, -0.796536, -0.000000),(-0.002000, -0.789262, 0.108064),(-0.000000, -0.788731, 0.107992),(-0.002000, -0.796536, -0.000000),(-0.000000, -0.788731, 0.107992),(-0.000000, -0.796000, -0.000000),(-0.003464, -0.798000, 0.000000),(-0.003464, -0.790712, 0.108260),(-0.002000, -0.789262, 0.108064),(-0.003464, -0.798000, 0.000000),(-0.002000, -0.789262, 0.108064),(-0.002000, -0.796536, -0.000000),(-0.004000, -0.800000, 0.000000),(-0.004000, -0.792694, 0.108528),(-0.003464, -0.790712, 0.108260),(-0.004000, -0.800000, 0.000000),(-0.003464, -0.790712, 0.108260),(-0.003464, -0.798000, 0.000000),(-0.003464, -0.802000, -0.000000),(-0.003464, -0.794676, 0.108796),(-0.004000, -0.792694, 0.108528),(-0.003464, -0.802000, -0.000000),(-0.004000, -0.792694, 0.108528),(-0.004000, -0.800000, 0.000000),(-0.002000, -0.803464, -0.000000),(-0.002000, -0.796127, 0.108993),(-0.003464, -0.794676, 0.108796),(-0.002000, -0.803464, -0.000000),(-0.003464, -0.794676, 0.108796),(-0.003464, -0.802000, -0.000000),(-0.000000, -0.804000, 0.000000),(-0.000000, -0.796658, 0.109065),(-0.002000, -0.796127, 0.108993),(-0.000000, -0.804000, 0.000000),(-0.002000, -0.796127, 0.108993),(-0.002000, -0.803464, -0.000000),(0.002000, -0.803464, 0.000000),(0.002000, -0.796127, 0.108993),(-0.000000, -0.796658, 0.109065),(0.002000, -0.803464, 0.000000),(-0.000000, -0.796658, 0.109065),(-0.000000, -0.804000, 0.000000),(0.003464, -0.802000, -0.000000),(0.003464, -0.794676, 0.108796),(0.002000, -0.796127, 0.108993),(0.003464, -0.802000, -0.000000),(0.002000, -0.796127, 0.108993),(0.002000, -0.803464, 0.000000),(0.004000, -0.800000, 0.000000),(0.004000, -0.792694, 0.108528),(0.003464, -0.794676, 0.108796),(0.004000, -0.800000, 0.000000),(0.003464, -0.794676, 0.108796),(0.003464, -0.802000, -0.000000),(0.003464, -0.790712, 0.108260),(0.003464, -0.769486, 0.212098),(0.004000, -0.771414, 0.212627),(0.003464, -0.790712, 0.108260),(0.004000, -0.771414, 0.212627),(0.004000, -0.792694, 0.108528),(0.002000, -0.789262, 0.108064),(0.002000, -0.768074, 0.211710),(0.003464, -0.769486, 0.212098),(0.002000, -0.789262, 0.108064),(0.003464, -0.769486, 0.212098),(0.003464, -0.790712, 0.108260),(-0.000000, -0.788731, 0.107992),(-0.000000, -0.767557, 0.211568),(0.002000, -0.768074, 0.211710),(-0.000000, -0.788731, 0.107992),(0.002000, -0.768074, 0.211710),(0.002000, -0.789262, 0.108064),(-0.002000, -0.789262, 0.108064),(-0.002000, -0.768074, 0.211710),(-0.000000, -0.767557, 0.211568),(-0.002000, -0.789262, 0.108064),(-0.000000, -0.767557, 0.211568),(-0.000000, -0.788731, 0.107992),(-0.003464, -0.790712, 0.108260),(-0.003464, -0.769486, 0.212098),(-0.002000, -0.768074, 0.211710),(-0.003464, -0.790712, 0.108260),(-0.002000, -0.768074, 0.211710),(-0.002000, -0.789262, 0.108064),(-0.004000, -0.792694, 0.108528),(-0.004000, -0.771414, 0.212627),(-0.003464, -0.769486, 0.212098),(-0.004000, -0.792694, 0.108528),(-0.003464, -0.769486, 0.212098),(-0.003464, -0.790712, 0.108260),(-0.003464, -0.794676, 0.108796),(-0.003464, -0.773343, 0.213157),(-0.004000, -0.771414, 0.212627),(-0.003464, -0.794676, 0.108796),(-0.004000, -0.771414, 0.212627),(-0.004000, -0.792694, 0.108528),(-0.002000, -0.796127, 0.108993),(-0.002000, -0.774755, 0.213545),(-0.003464, -0.773343, 0.213157),(-0.002000, -0.796127, 0.108993),(-0.003464, -0.773343, 0.213157),(-0.003464, -0.794676, 0.108796),(-0.000000, -0.796658, 0.109065),(-0.000000, -0.775272, 0.213687),(-0.002000, -0.774755, 0.213545),(-0.000000, -0.796658, 0.109065),(-0.002000, -0.774755, 0.213545),(-0.002000, -0.796127, 0.108993),(0.002000, -0.796127, 0.108993),(0.002000, -0.774755, 0.213545),(-0.000000, -0.775272, 0.213687),(0.002000, -0.796127, 0.108993),(-0.000000, -0.775272, 0.213687),(-0.000000, -0.796658, 0.109065),(0.003464, -0.794676, 0.108796),(0.003464, -0.773343, 0.213157),(0.002000, -0.774755, 0.213545),(0.003464, -0.794676, 0.108796),(0.002000, -0.774755, 0.213545),(0.002000, -0.796127, 0.108993),(0.004000, -0.792694, 0.108528),(0.004000, -0.771414, 0.212627),(0.003464, -0.773343, 0.213157),(0.004000, -0.792694, 0.108528),(0.003464, -0.773343, 0.213157),(0.003464, -0.794676, 0.108796),(0.003464, -0.769486, 0.212098),(0.003464, -0.735272, 0.310564),(0.004000, -0.737114, 0.311342),(0.003464, -0.769486, 0.212098),(0.004000, -0.737114, 0.311342),(0.004000, -0.771414, 0.212627),(0.002000, -0.768074, 0.211710),(0.002000, -0.733923, 0.309994),(0.003464, -0.735272, 0.310564),(0.002000, -0.768074, 0.211710),(0.003464, -0.735272, 0.310564),(0.003464, -0.769486, 0.212098),(-0.000000, -0.767557, 0.211568),(-0.000000, -0.733429, 0.309785),(0.002000, -0.733923, 0.309994),(-0.000000, -0.767557, 0.211568),(0.002000, -0.733923, 0.309994),(0.002000, -0.768074, 0.211710),(-0.002000, -0.768074, 0.211710),(-0.002000, -0.733923, 0.309994),(-0.000000, -0.733429, 0.309785),(-0.002000, -0.768074, 0.211710),(-0.000000, -0.733429, 0.309785),(-0.000000, -0.767557, 0.211568),(-0.003464, -0.769486, 0.212098),(-0.003464, -0.735272, 0.310564),(-0.002000, -0.733923, 0.309994),(-0.003464, -0.769486, 0.212098),(-0.002000, -0.733923, 0.309994),(-0.002000, -0.768074, 0.211710),(-0.004000, -0.771414, 0.212627),(-0.004000, -0.737114, 0.311342),(-0.003464, -0.735272, 0.310564),(-0.004000, -0.771414, 0.212627),(-0.003464, -0.735272, 0.310564),(-0.003464, -0.769486, 0.212098),(-0.003464, -0.773343, 0.213157),(-0.003464, -0.738956, 0.312121),(-0.004000, -0.737114, 0.311342),(-0.003464, -0.773343, 0.213157),(-0.004000, -0.737114, 0.311342),(-0.004000, -0.771414, 0.212627),(-0.002000, -0.774755, 0.213545),(-0.002000, -0.740305, 0.312691),(-0.003464, -0.738956, 0.312121),(-0.002000, -0.774755, 0.213545),(-0.003464, -0.738956, 0.312121),(-0.003464, -0.773343, 0.213157),(-0.000000, -0.775272, 0.213687),(-0.000000, -0.740799, 0.312899),(-0.002000, -0.740305, 0.312691),(-0.000000, -0.775272, 0.213687),(-0.002000, -0.740305, 0.312691),(-0.002000, -0.774755, 0.213545),(0.002000, -0.774755, 0.213545),(0.002000, -0.740305, 0.312691),(-0.000000, -0.740799, 0.312899),(0.002000, -0.774755, 0.213545),(-0.000000, -0.740799, 0.312899),(-0.000000, -0.775272, 0.213687),(0.003464, -0.773343, 0.213157),(0.003464, -0.738956, 0.312121),(0.002000, -0.740305, 0.312691),(0.003464, -0.773343, 0.213157),(0.002000, -0.740305, 0.312691),(0.002000, -0.774755, 0.213545),(0.004000, -0.771414, 0.212627),(0.004000, -0.737114, 0.311342),(0.003464, -0.738956, 0.312121),(0.004000, -0.771414, 0.212627),(0.003464, -0.738956, 0.312121),(0.003464, -0.773343, 0.213157),(0.003464, -0.735272, 0.310564),(0.003464, -0.689022, 0.402708),(0.004000, -0.690748, 0.403719),(0.003464, -0.735272, 0.310564),(0.004000, -0.690748, 0.403719),(0.004000, -0.737114, 0.311342),(0.002000, -0.733923, 0.309994),(0.002000, -0.687759, 0.401968),(0.003464, -0.689022, 0.402708),(0.002000, -0.733923, 0.309994),(0.003464, -0.689022, 0.402708),(0.003464, -0.735272, 0.310564),(-0.000000, -0.733429, 0.309785),(-0.000000, -0.687296, 0.401698),(0.002000, -0.687759, 0.401968),(-0.000000, -0.733429, 0.309785),(0.002000, -0.687759, 0.401968),(0.002000, -0.733923, 0.309994),(-0.002000, -0.733923, 0.309994),(-0.002000, -0.687759, 0.401968),(-0.000000, -0.687296, 0.401698),(-0.002000, -0.733923, 0.309994),(-0.000000, -0.687296, 0.401698),(-0.000000, -0.733429, 0.309785),(-0.003464, -0.735272, 0.310564),(-0.003464, -0.689022, 0.402708),(-0.002000, -0.687759, 0.401968),(-0.003464, -0.735272, 0.310564),(-0.002000, -0.687759, 0.401968),(-0.002000, -0.733923, 0.309994),(-0.004000, -0.737114, 0.311342),(-0.004000, -0.690748, 0.403719),(-0.003464, -0.689022, 0.402708),(-0.004000, -0.737114, 0.311342),(-0.003464, -0.689022, 0.402708),(-0.003464, -0.735272, 0.310564),(-0.003464, -0.738956, 0.312121),(-0.003464, -0.692474, 0.404729),(-0.004000, -0.690748, 0.403719),(-0.003464, -0.738956, 0.312121),(-0.004000, -0.690748, 0.403719),(-0.004000, -0.737114, 0.311342),(-0.002000, -0.740305, 0.312691),(-0.002000, -0.693738, 0.405469),(-0.003464, -0.692474, 0.404729),(-0.002000, -0.740305, 0.312691),(-0.003464, -0.692474, 0.404729),(-0.003464, -0.738956, 0.312121),(-0.000000, -0.740799, 0.312899),(-0.000000, -0.694200, 0.405740),(-0.002000, -0.693738, 0.405469),(-0.000000, -0.740799, 0.312899),(-0.002000, -0.693738, 0.405469),(-0.002000, -0.740305, 0.312691),(0.002000, -0.740305, 0.312691),(0.002000, -0.693738, 0.405469),(-0.000000, -0.694200, 0.405740),(0.002000, -0.740305, 0.312691),(-0.000000, -0.694200, 0.405740),(-0.000000, -0.740799, 0.312899),(0.003464, -0.738956, 0.312121),(0.003464, -0.692474, 0.404729),(0.002000, -0.693738, 0.405469),(0.003464, -0.738956, 0.312121),(0.002000, -0.693738, 0.405469),(0.002000, -0.740305, 0.312691),(0.004000, -0.737114, 0.311342),(0.004000, -0.690748, 0.403719),(0.003464, -0.692474, 0.404729),(0.004000, -0.737114, 0.311342),(0.003464, -0.692474, 0.404729),(0.003464, -0.738956, 0.312121),(0.003464, -0.689022, 0.402708),(0.003464, -0.631689, 0.487579),(0.004000, -0.633271, 0.488802),(0.003464, -0.689022, 0.402708),(0.004000, -0.633271, 0.488802),(0.004000, -0.690748, 0.403719),(0.002000, -0.687759, 0.401968),(0.002000, -0.630530, 0.486684),(0.003464, -0.631689, 0.487579),(0.002000, -0.687759, 0.401968),(0.003464, -0.631689, 0.487579),(0.003464, -0.689022, 0.402708),(-0.000000, -0.687296, 0.401698),(-0.000000, -0.630106, 0.486356),(0.002000, -0.630530, 0.486684),(-0.000000, -0.687296, 0.401698),(0.002000, -0.630530, 0.486684),(0.002000, -0.687759, 0.401968),(-0.002000, -0.687759, 0.401968),(-0.002000, -0.630530, 0.486684),(-0.000000, -0.630106, 0.486356),(-0.002000, -0.687759, 0.401968),(-0.000000, -0.630106, 0.486356),(-0.000000, -0.687296, 0.401698),(-0.003464, -0.689022, 0.402708),(-0.003464, -0.631689, 0.487579),(-0.002000, -0.630530, 0.486684),(-0.003464, -0.689022, 0.402708),(-0.002000, -0.630530, 0.486684),(-0.002000, -0.687759, 0.401968),(-0.004000, -0.690748, 0.403719),(-0.004000, -0.633271, 0.488802),(-0.003464, -0.631689, 0.487579),(-0.004000, -0.690748, 0.403719),(-0.003464, -0.631689, 0.487579),(-0.003464, -0.689022, 0.402708),(-0.003464, -0.692474, 0.404729),(-0.003464, -0.634854, 0.490025),(-0.004000, -0.633271, 0.488802),(-0.003464, -0.692474, 0.404729),(-0.004000, -0.633271, 0.488802),(-0.004000, -0.690748, 0.403719),(-0.002000, -0.693738, 0.405469),(-0.002000, -0.636012, 0.490920),(-0.003464, -0.634854, 0.490025),(-0.002000, -0.693738, 0.405469),(-0.003464, -0.634854, 0.490025),(-0.003464, -0.692474, 0.404729),(-0.000000, -0.694200, 0.405740),(-0.000000, -0.636436, 0.491248),(-0.002000, -0.636012, 0.490920),(-0.000000, -0.694200, 0.405740),(-0.002000, -0.636012, 0.490920),(-0.002000, -0.693738, 0.405469),(0.002000, -0.693738, 0.405469),(0.002000, -0.636012, 0.490920),(-0.000000, -0.636436, 0.491248),(0.002000, -0.693738, 0.405469),(-0.000000, -0.636436, 0.491248),(-0.000000, -0.694200, 0.405740),(0.003464, -0.692474, 0.404729),(0.003464, -0.634854, 0.490025),(0.002000, -0.636012, 0.490920),(0.003464, -0.692474, 0.404729),(0.002000, -0.636012, 0.490920),(0.002000, -0.693738, 0.405469),(0.004000, -0.690748, 0.403719),(0.004000, -0.633271, 0.488802),(0.003464, -0.634854, 0.490025),(0.004000, -0.690748, 0.403719),(0.003464, -0.634854, 0.490025),(0.003464, -0.692474, 0.404729),(0.003464, -0.631689, 0.487579),(0.003464, -0.564223, 0.564223),(0.004000, -0.565637, 0.565638),(0.003464, -0.631689, 0.487579),(0.004000, -0.565637, 0.565638),(0.004000, -0.633271, 0.488802),(0.002000, -0.630530, 0.486684),(0.002000, -0.563188, 0.563188),(0.003464, -0.564223, 0.564223),(0.002000, -0.630530, 0.486684),(0.003464, -0.564223, 0.564223),(0.003464, -0.631689, 0.487579),(-0.000000, -0.630106, 0.486356),(-0.000000, -0.562809, 0.562809),(0.002000, -0.563188, 0.563188),(-0.000000, -0.630106, 0.486356),(0.002000, -0.563188, 0.563188),(0.002000, -0.630530, 0.486684),(-0.002000, -0.630530, 0.486684),(-0.002000, -0.563188, 0.563188),(-0.000000, -0.562809, 0.562809),(-0.002000, -0.630530, 0.486684),(-0.000000, -0.562809, 0.562809),(-0.000000, -0.630106, 0.486356),(-0.003464, -0.631689, 0.487579),(-0.003464, -0.564223, 0.564223),(-0.002000, -0.563188, 0.563188),(-0.003464, -0.631689, 0.487579),(-0.002000, -0.563188, 0.563188),(-0.002000, -0.630530, 0.486684),(-0.004000, -0.633271, 0.488802),(-0.004000, -0.565637, 0.565638),(-0.003464, -0.564223, 0.564223),(-0.004000, -0.633271, 0.488802),(-0.003464, -0.564223, 0.564223),(-0.003464, -0.631689, 0.487579),(-0.003464, -0.634854, 0.490025),(-0.003464, -0.567052, 0.567052),(-0.004000, -0.565637, 0.565638),(-0.003464, -0.634854, 0.490025),(-0.004000, -0.565637, 0.565638),(-0.004000, -0.633271, 0.488802),(-0.002000, -0.636012, 0.490920),(-0.002000, -0.568087, 0.568087),(-0.003464, -0.567052, 0.567052),(-0.002000, -0.636012, 0.490920),(-0.003464, -0.567052, 0.567052),(-0.003464, -0.634854, 0.490025),(-0.000000, -0.636436, 0.491248),(-0.000000, -0.568466, 0.568466),(-0.002000, -0.568087, 0.568087),(-0.000000, -0.636436, 0.491248),(-0.002000, -0.568087, 0.568087),(-0.002000, -0.636012, 0.490920),(0.002000, -0.636012, 0.490920),(0.002000, -0.568087, 0.568087),(-0.000000, -0.568466, 0.568466),(0.002000, -0.636012, 0.490920),(-0.000000, -0.568466, 0.568466),(-0.000000, -0.636436, 0.491248),(0.003464, -0.634854, 0.490025),(0.003464, -0.567052, 0.567052),(0.002000, -0.568087, 0.568087),(0.003464, -0.634854, 0.490025),(0.002000, -0.568087, 0.568087),(0.002000, -0.636012, 0.490920),(0.004000, -0.633271, 0.488802),(0.004000, -0.565637, 0.565638),(0.003464, -0.567052, 0.567052),(0.004000, -0.633271, 0.488802),(0.003464, -0.567052, 0.567052),(0.003464, -0.634854, 0.490025),(0.003464, -0.564223, 0.564223),(0.003464, -0.487579, 0.631689),(0.004000, -0.488802, 0.633271),(0.003464, -0.564223, 0.564223),(0.004000, -0.488802, 0.633271),(0.004000, -0.565637, 0.565638),(0.002000, -0.563188, 0.563188),(0.002000, -0.486684, 0.630530),(0.003464, -0.487579, 0.631689),(0.002000, -0.563188, 0.563188),(0.003464, -0.487579, 0.631689),(0.003464, -0.564223, 0.564223),(-0.000000, -0.562809, 0.562809),(-0.000000, -0.486356, 0.630106),(0.002000, -0.486684, 0.630530),(-0.000000, -0.562809, 0.562809),(0.002000, -0.486684, 0.630530),(0.002000, -0.563188, 0.563188),(-0.002000, -0.563188, 0.563188),(-0.002000, -0.486684, 0.630530),(-0.000000, -0.486356, 0.630106),(-0.002000, -0.563188, 0.563188),(-0.000000, -0.486356, 0.630106),(-0.000000, -0.562809, 0.562809),(-0.003464, -0.564223, 0.564223),(-0.003464, -0.487579, 0.631689),(-0.002000, -0.486684, 0.630530),(-0.003464, -0.564223, 0.564223),(-0.002000, -0.486684, 0.630530),(-0.002000, -0.563188, 0.563188),(-0.004000, -0.565637, 0.565638),(-0.004000, -0.488802, 0.633271),(-0.003464, -0.487579, 0.631689),(-0.004000, -0.565637, 0.565638),(-0.003464, -0.487579, 0.631689),(-0.003464, -0.564223, 0.564223),(-0.003464, -0.567052, 0.567052),(-0.003464, -0.490025, 0.634854),(-0.004000, -0.488802, 0.633271),(-0.003464, -0.567052, 0.567052),(-0.004000, -0.488802, 0.633271),(-0.004000, -0.565637, 0.565638),(-0.002000, -0.568087, 0.568087),(-0.002000, -0.490920, 0.636012),(-0.003464, -0.490025, 0.634854),(-0.002000, -0.568087, 0.568087),(-0.003464, -0.490025, 0.634854),(-0.003464, -0.567052, 0.567052),(-0.000000, -0.568466, 0.568466),(-0.000000, -0.491248, 0.636436),(-0.002000, -0.490920, 0.636012),(-0.000000, -0.568466, 0.568466),(-0.002000, -0.490920, 0.636012),(-0.002000, -0.568087, 0.568087),(0.002000, -0.568087, 0.568087),(0.002000, -0.490920, 0.636012),(-0.000000, -0.491248, 0.636436),(0.002000, -0.568087, 0.568087),(-0.000000, -0.491248, 0.636436),(-0.000000, -0.568466, 0.568466),(0.003464, -0.567052, 0.567052),(0.003464, -0.490025, 0.634854),(0.002000, -0.490920, 0.636012),(0.003464, -0.567052, 0.567052),(0.002000, -0.490920, 0.636012),(0.002000, -0.568087, 0.568087),(0.004000, -0.565637, 0.565638),(0.004000, -0.488802, 0.633271),(0.003464, -0.490025, 0.634854),(0.004000, -0.565637, 0.565638),(0.003464, -0.490025, 0.634854),(0.003464, -0.567052, 0.567052),(0.003464, -0.487579, 0.631689),(0.003464, -0.402708, 0.689022),(0.004000, -0.403719, 0.690748),(0.003464, -0.487579, 0.631689),(0.004000, -0.403719, 0.690748),(0.004000, -0.488802, 0.633271),(0.002000, -0.486684, 0.630530),(0.002000, -0.401968, 0.687759),(0.003464, -0.402708, 0.689022),(0.002000, -0.486684, 0.630530),(0.003464, -0.402708, 0.689022),(0.003464, -0.487579, 0.631689),(-0.000000, -0.486356, 0.630106),(-0.000000, -0.401698, 0.687296),(0.002000, -0.401968, 0.687759),(-0.000000, -0.486356, 0.630106),(0.002000, -0.401968, 0.687759),(0.002000, -0.486684, 0.630530),(-0.002000, -0.486684, 0.630530),(-0.002000, -0.401968, 0.687759),(-0.000000, -0.401698, 0.687296),(-0.002000, -0.486684, 0.630530),(-0.000000, -0.401698, 0.687296),(-0.000000, -0.486356, 0.630106),(-0.003464, -0.487579, 0.631689),(-0.003464, -0.402708, 0.689022),(-0.002000, -0.401968, 0.687759),(-0.003464, -0.487579, 0.631689),(-0.002000, -0.401968, 0.687759),(-0.002000, -0.486684, 0.630530),(-0.004000, -0.488802, 0.633271),(-0.004000, -0.403719, 0.690748),(-0.003464, -0.402708, 0.689022),(-0.004000, -0.488802, 0.633271),(-0.003464, -0.402708, 0.689022),(-0.003464, -0.487579, 0.631689),(-0.003464, -0.490025, 0.634854),(-0.003464, -0.404729, 0.692474),(-0.004000, -0.403719, 0.690748),(-0.003464, -0.490025, 0.634854),(-0.004000, -0.403719, 0.690748),(-0.004000, -0.488802, 0.633271),(-0.002000, -0.490920, 0.636012),(-0.002000, -0.405469, 0.693738),(-0.003464, -0.404729, 0.692474),(-0.002000, -0.490920, 0.636012),(-0.003464, -0.404729, 0.692474),(-0.003464, -0.490025, 0.634854),(-0.000000, -0.491248, 0.636436),(-0.000000, -0.405739, 0.694200),(-0.002000, -0.405469, 0.693738),(-0.000000, -0.491248, 0.636436),(-0.002000, -0.405469, 0.693738),(-0.002000, -0.490920, 0.636012),(0.002000, -0.490920, 0.636012),(0.002000, -0.405469, 0.693738),(-0.000000, -0.405739, 0.694200),(0.002000, -0.490920, 0.636012),(-0.000000, -0.405739, 0.694200),(-0.000000, -0.491248, 0.636436),(0.003464, -0.490025, 0.634854),(0.003464, -0.404729, 0.692474),(0.002000, -0.405469, 0.693738),(0.003464, -0.490025, 0.634854),(0.002000, -0.405469, 0.693738),(0.002000, -0.490920, 0.636012),(0.004000, -0.488802, 0.633271),(0.004000, -0.403719, 0.690748),(0.003464, -0.404729, 0.692474),(0.004000, -0.488802, 0.633271),(0.003464, -0.404729, 0.692474),(0.003464, -0.490025, 0.634854),(0.003464, -0.402708, 0.689022),(0.003464, -0.310564, 0.735272),(0.004000, -0.311342, 0.737114),(0.003464, -0.402708, 0.689022),(0.004000, -0.311342, 0.737114),(0.004000, -0.403719, 0.690748),(0.002000, -0.401968, 0.687759),(0.002000, -0.309994, 0.733923),(0.003464, -0.310564, 0.735272),(0.002000, -0.401968, 0.687759),(0.003464, -0.310564, 0.735272),(0.003464, -0.402708, 0.689022),(-0.000000, -0.401698, 0.687296),(-0.000000, -0.309785, 0.733429),(0.002000, -0.309994, 0.733923),(-0.000000, -0.401698, 0.687296),(0.002000, -0.309994, 0.733923),(0.002000, -0.401968, 0.687759),(-0.002000, -0.401968, 0.687759),(-0.002000, -0.309994, 0.733923),(-0.000000, -0.309785, 0.733429),(-0.002000, -0.401968, 0.687759),(-0.000000, -0.309785, 0.733429),(-0.000000, -0.401698, 0.687296),(-0.003464, -0.402708, 0.689022),(-0.003464, -0.310564, 0.735272),(-0.002000, -0.309994, 0.733923),(-0.003464, -0.402708, 0.689022),(-0.002000, -0.309994, 0.733923),(-0.002000, -0.401968, 0.687759),(-0.004000, -0.403719, 0.690748),(-0.004000, -0.311342, 0.737114),(-0.003464, -0.310564, 0.735272),(-0.004000, -0.403719, 0.690748),(-0.003464, -0.310564, 0.735272),(-0.003464, -0.402708, 0.689022),(-0.003464, -0.404729, 0.692474),(-0.003464, -0.312121, 0.738956),(-0.004000, -0.311342, 0.737114),(-0.003464, -0.404729, 0.692474),(-0.004000, -0.311342, 0.737114),(-0.004000, -0.403719, 0.690748),(-0.002000, -0.405469, 0.693738),(-0.002000, -0.312691, 0.740305),(-0.003464, -0.312121, 0.738956),(-0.002000, -0.405469, 0.693738),(-0.003464, -0.312121, 0.738956),(-0.003464, -0.404729, 0.692474),(-0.000000, -0.405739, 0.694200),(-0.000000, -0.312899, 0.740799),(-0.002000, -0.312691, 0.740305),(-0.000000, -0.405739, 0.694200),(-0.002000, -0.312691, 0.740305),(-0.002000, -0.405469, 0.693738),(0.002000, -0.405469, 0.693738),(0.002000, -0.312691, 0.740305),(-0.000000, -0.312899, 0.740799),(0.002000, -0.405469, 0.693738),(-0.000000, -0.312899, 0.740799),(-0.000000, -0.405739, 0.694200),(0.003464, -0.404729, 0.692474),(0.003464, -0.312121, 0.738956),(0.002000, -0.312691, 0.740305),(0.003464, -0.404729, 0.692474),(0.002000, -0.312691, 0.740305),(0.002000, -0.405469, 0.693738),(0.004000, -0.403719, 0.690748),(0.004000, -0.311342, 0.737114),(0.003464, -0.312121, 0.738956),(0.004000, -0.403719, 0.690748),(0.003464, -0.312121, 0.738956),(0.003464, -0.404729, 0.692474),(0.003464, -0.310564, 0.735272),(0.003464, -0.212098, 0.769486),(0.004000, -0.212627, 0.771414),(0.003464, -0.310564, 0.735272),(0.004000, -0.212627, 0.771414),(0.004000, -0.311342, 0.737114),(0.002000, -0.309994, 0.733923),(0.002000, -0.211710, 0.768074),(0.003464, -0.212098, 0.769486),(0.002000, -0.309994, 0.733923),(0.003464, -0.212098, 0.769486),(0.003464, -0.310564, 0.735272),(-0.000000, -0.309785, 0.733429),(-0.000000, -0.211568, 0.767557),(0.002000, -0.211710, 0.768074),(-0.000000, -0.309785, 0.733429),(0.002000, -0.211710, 0.768074),(0.002000, -0.309994, 0.733923),(-0.002000, -0.309994, 0.733923),(-0.002000, -0.211710, 0.768074),(-0.000000, -0.211568, 0.767557),(-0.002000, -0.309994, 0.733923),(-0.000000, -0.211568, 0.767557),(-0.000000, -0.309785, 0.733429),(-0.003464, -0.310564, 0.735272),(-0.003464, -0.212098, 0.769486),(-0.002000, -0.211710, 0.768074),(-0.003464, -0.310564, 0.735272),(-0.002000, -0.211710, 0.768074),(-0.002000, -0.309994, 0.733923),(-0.004000, -0.311342, 0.737114),(-0.004000, -0.212627, 0.771414),(-0.003464, -0.212098, 0.769486),(-0.004000, -0.311342, 0.737114),(-0.003464, -0.212098, 0.769486),(-0.003464, -0.310564, 0.735272),(-0.003464, -0.312121, 0.738956),(-0.003464, -0.213157, 0.773343),(-0.004000, -0.212627, 0.771414),(-0.003464, -0.312121, 0.738956),(-0.004000, -0.212627, 0.771414),(-0.004000, -0.311342, 0.737114),(-0.002000, -0.312691, 0.740305),(-0.002000, -0.213545, 0.774755),(-0.003464, -0.213157, 0.773343),(-0.002000, -0.312691, 0.740305),(-0.003464, -0.213157, 0.773343),(-0.003464, -0.312121, 0.738956),(-0.000000, -0.312899, 0.740799),(-0.000000, -0.213687, 0.775272),(-0.002000, -0.213545, 0.774755),(-0.000000, -0.312899, 0.740799),(-0.002000, -0.213545, 0.774755),(-0.002000, -0.312691, 0.740305),(0.002000, -0.312691, 0.740305),(0.002000, -0.213545, 0.774755),(-0.000000, -0.213687, 0.775272),(0.002000, -0.312691, 0.740305),(-0.000000, -0.213687, 0.775272),(-0.000000, -0.312899, 0.740799),(0.003464, -0.312121, 0.738956),(0.003464, -0.213157, 0.773343),(0.002000, -0.213545, 0.774755),(0.003464, -0.312121, 0.738956),(0.002000, -0.213545, 0.774755),(0.002000, -0.312691, 0.740305),(0.004000, -0.311342, 0.737114),(0.004000, -0.212627, 0.771414),(0.003464, -0.213157, 0.773343),(0.004000, -0.311342, 0.737114),(0.003464, -0.213157, 0.773343),(0.003464, -0.312121, 0.738956),(0.003464, -0.212098, 0.769486),(0.003464, -0.108260, 0.790713),(0.004000, -0.108528, 0.792695),(0.003464, -0.212098, 0.769486),(0.004000, -0.108528, 0.792695),(0.004000, -0.212627, 0.771414),(0.002000, -0.211710, 0.768074),(0.002000, -0.108064, 0.789262),(0.003464, -0.108260, 0.790713),(0.002000, -0.211710, 0.768074),(0.003464, -0.108260, 0.790713),(0.003464, -0.212098, 0.769486),(-0.000000, -0.211568, 0.767557),(-0.000000, -0.107992, 0.788731),(0.002000, -0.108064, 0.789262),(-0.000000, -0.211568, 0.767557),(0.002000, -0.108064, 0.789262),(0.002000, -0.211710, 0.768074),(-0.002000, -0.211710, 0.768074),(-0.002000, -0.108064, 0.789262),(-0.000000, -0.107992, 0.788731),(-0.002000, -0.211710, 0.768074),(-0.000000, -0.107992, 0.788731),(-0.000000, -0.211568, 0.767557),(-0.003464, -0.212098, 0.769486),(-0.003464, -0.108260, 0.790713),(-0.002000, -0.108064, 0.789262),(-0.003464, -0.212098, 0.769486),(-0.002000, -0.108064, 0.789262),(-0.002000, -0.211710, 0.768074),(-0.004000, -0.212627, 0.771414),(-0.004000, -0.108528, 0.792695),(-0.003464, -0.108260, 0.790713),(-0.004000, -0.212627, 0.771414),(-0.003464, -0.108260, 0.790713),(-0.003464, -0.212098, 0.769486),(-0.003464, -0.213157, 0.773343),(-0.003464, -0.108796, 0.794676),(-0.004000, -0.108528, 0.792695),(-0.003464, -0.213157, 0.773343),(-0.004000, -0.108528, 0.792695),(-0.004000, -0.212627, 0.771414),(-0.002000, -0.213545, 0.774755),(-0.002000, -0.108993, 0.796127),(-0.003464, -0.108796, 0.794676),(-0.002000, -0.213545, 0.774755),(-0.003464, -0.108796, 0.794676),(-0.003464, -0.213157, 0.773343),(-0.000000, -0.213687, 0.775272),(-0.000000, -0.109065, 0.796658),(-0.002000, -0.108993, 0.796127),(-0.000000, -0.213687, 0.775272),(-0.002000, -0.108993, 0.796127),(-0.002000, -0.213545, 0.774755),(0.002000, -0.213545, 0.774755),(0.002000, -0.108993, 0.796127),(-0.000000, -0.109065, 0.796658),(0.002000, -0.213545, 0.774755),(-0.000000, -0.109065, 0.796658),(-0.000000, -0.213687, 0.775272),(0.003464, -0.213157, 0.773343),(0.003464, -0.108796, 0.794676),(0.002000, -0.108993, 0.796127),(0.003464, -0.213157, 0.773343),(0.002000, -0.108993, 0.796127),(0.002000, -0.213545, 0.774755),(0.004000, -0.212627, 0.771414),(0.004000, -0.108528, 0.792695),(0.003464, -0.108796, 0.794676),(0.004000, -0.212627, 0.771414),(0.003464, -0.108796, 0.794676),(0.003464, -0.213157, 0.773343),(0.003464, -0.108260, 0.790713),(0.003464, -0.000000, 0.798000),(0.004000, -0.000000, 0.800000),(0.003464, -0.108260, 0.790713),(0.004000, -0.000000, 0.800000),(0.004000, -0.108528, 0.792695),(0.002000, -0.108064, 0.789262),(0.002000, 0.000000, 0.796536),(0.003464, -0.000000, 0.798000),(0.002000, -0.108064, 0.789262),(0.003464, -0.000000, 0.798000),(0.003464, -0.108260, 0.790713),(-0.000000, -0.107992, 0.788731),(-0.000000, 0.000000, 0.796000),(0.002000, 0.000000, 0.796536),(-0.000000, -0.107992, 0.788731),(0.002000, 0.000000, 0.796536),(0.002000, -0.108064, 0.789262),(-0.002000, -0.108064, 0.789262),(-0.002000, 0.000000, 0.796536),(-0.000000, 0.000000, 0.796000),(-0.002000, -0.108064, 0.789262),(-0.000000, 0.000000, 0.796000),(-0.000000, -0.107992, 0.788731),(-0.003464, -0.108260, 0.790713),(-0.003464, 0.000000, 0.798000),(-0.002000, 0.000000, 0.796536),(-0.003464, -0.108260, 0.790713),(-0.002000, 0.000000, 0.796536),(-0.002000, -0.108064, 0.789262),(-0.004000, -0.108528, 0.792695),(-0.004000, 0.000000, 0.800000),(-0.003464, 0.000000, 0.798000),(-0.004000, -0.108528, 0.792695),(-0.003464, 0.000000, 0.798000),(-0.003464, -0.108260, 0.790713),(-0.003464, -0.108796, 0.794676),(-0.003464, 0.000000, 0.802000),(-0.004000, 0.000000, 0.800000),(-0.003464, -0.108796, 0.794676),(-0.004000, 0.000000, 0.800000),(-0.004000, -0.108528, 0.792695),(-0.002000, -0.108993, 0.796127),(-0.002000, -0.000000, 0.803464),(-0.003464, 0.000000, 0.802000),(-0.002000, -0.108993, 0.796127),(-0.003464, 0.000000, 0.802000),(-0.003464, -0.108796, 0.794676),(-0.000000, -0.109065, 0.796658),(-0.000000, -0.000000, 0.804000),(-0.002000, -0.000000, 0.803464),(-0.000000, -0.109065, 0.796658),(-0.002000, -0.000000, 0.803464),(-0.002000, -0.108993, 0.796127),(0.002000, -0.108993, 0.796127),(0.002000, -0.000000, 0.803464),(-0.000000, -0.000000, 0.804000),(0.002000, -0.108993, 0.796127),(-0.000000, -0.000000, 0.804000),(-0.000000, -0.109065, 0.796658),(0.003464, -0.108796, 0.794676),(0.003464, -0.000000, 0.802000),(0.002000, -0.000000, 0.803464),(0.003464, -0.108796, 0.794676),(0.002000, -0.000000, 0.803464),(0.002000, -0.108993, 0.796127),(0.004000, -0.108528, 0.792695),(0.004000, -0.000000, 0.800000),(0.003464, -0.000000, 0.802000),(0.004000, -0.108528, 0.792695),(0.003464, -0.000000, 0.802000),(0.003464, -0.108796, 0.794676),(0.003464, -0.000000, 0.798000),(0.003464, 0.108260, 0.790712),(0.004000, 0.108528, 0.792694),(0.003464, -0.000000, 0.798000),(0.004000, 0.108528, 0.792694),(0.004000, -0.000000, 0.800000),(0.002000, 0.000000, 0.796536),(0.002000, 0.108064, 0.789262),(0.003464, 0.108260, 0.790712),(0.002000, 0.000000, 0.796536),(0.003464, 0.108260, 0.790712),(0.003464, -0.000000, 0.798000),(-0.000000, 0.000000, 0.796000),(-0.000000, 0.107992, 0.788731),(0.002000, 0.108064, 0.789262),(-0.000000, 0.000000, 0.796000),(0.002000, 0.108064, 0.789262),(0.002000, 0.000000, 0.796536),(-0.002000, 0.000000, 0.796536),(-0.002000, 0.108064, 0.789262),(-0.000000, 0.107992, 0.788731),(-0.002000, 0.000000, 0.796536),(-0.000000, 0.107992, 0.788731),(-0.000000, 0.000000, 0.796000),(-0.003464, 0.000000, 0.798000),(-0.003464, 0.108260, 0.790712),(-0.002000, 0.108064, 0.789262),(-0.003464, 0.000000, 0.798000),(-0.002000, 0.108064, 0.789262),(-0.002000, 0.000000, 0.796536),(-0.004000, 0.000000, 0.800000),(-0.004000, 0.108528, 0.792694),(-0.003464, 0.108260, 0.790712),(-0.004000, 0.000000, 0.800000),(-0.003464, 0.108260, 0.790712),(-0.003464, 0.000000, 0.798000),(-0.003464, 0.000000, 0.802000),(-0.003464, 0.108796, 0.794676),(-0.004000, 0.108528, 0.792694),(-0.003464, 0.000000, 0.802000),(-0.004000, 0.108528, 0.792694),(-0.004000, 0.000000, 0.800000),(-0.002000, -0.000000, 0.803464),(-0.002000, 0.108993, 0.796127),(-0.003464, 0.108796, 0.794676),(-0.002000, -0.000000, 0.803464),(-0.003464, 0.108796, 0.794676),(-0.003464, 0.000000, 0.802000),(-0.000000, -0.000000, 0.804000),(-0.000000, 0.109065, 0.796658),(-0.002000, 0.108993, 0.796127),(-0.000000, -0.000000, 0.804000),(-0.002000, 0.108993, 0.796127),(-0.002000, -0.000000, 0.803464),(0.002000, -0.000000, 0.803464),(0.002000, 0.108993, 0.796127),(-0.000000, 0.109065, 0.796658),(0.002000, -0.000000, 0.803464),(-0.000000, 0.109065, 0.796658),(-0.000000, -0.000000, 0.804000),(0.003464, -0.000000, 0.802000),(0.003464, 0.108796, 0.794676),(0.002000, 0.108993, 0.796127),(0.003464, -0.000000, 0.802000),(0.002000, 0.108993, 0.796127),(0.002000, -0.000000, 0.803464),(0.004000, -0.000000, 0.800000),(0.004000, 0.108528, 0.792694),(0.003464, 0.108796, 0.794676),(0.004000, -0.000000, 0.800000),(0.003464, 0.108796, 0.794676),(0.003464, -0.000000, 0.802000),(0.003464, 0.108260, 0.790712),(0.003464, 0.212098, 0.769486),(0.004000, 0.212627, 0.771414),(0.003464, 0.108260, 0.790712),(0.004000, 0.212627, 0.771414),(0.004000, 0.108528, 0.792694),(0.002000, 0.108064, 0.789262),(0.002000, 0.211710, 0.768074),(0.003464, 0.212098, 0.769486),(0.002000, 0.108064, 0.789262),(0.003464, 0.212098, 0.769486),(0.003464, 0.108260, 0.790712),(-0.000000, 0.107992, 0.788731),(-0.000000, 0.211568, 0.767557),(0.002000, 0.211710, 0.768074),(-0.000000, 0.107992, 0.788731),(0.002000, 0.211710, 0.768074),(0.002000, 0.108064, 0.789262),(-0.002000, 0.108064, 0.789262),(-0.002000, 0.211710, 0.768074),(-0.000000, 0.211568, 0.767557),(-0.002000, 0.108064, 0.789262),(-0.000000, 0.211568, 0.767557),(-0.000000, 0.107992, 0.788731),(-0.003464, 0.108260, 0.790712),(-0.003464, 0.212098, 0.769486),(-0.002000, 0.211710, 0.768074),(-0.003464, 0.108260, 0.790712),(-0.002000, 0.211710, 0.768074),(-0.002000, 0.108064, 0.789262),(-0.004000, 0.108528, 0.792694),(-0.004000, 0.212627, 0.771414),(-0.003464, 0.212098, 0.769486),(-0.004000, 0.108528, 0.792694),(-0.003464, 0.212098, 0.769486),(-0.003464, 0.108260, 0.790712),(-0.003464, 0.108796, 0.794676),(-0.003464, 0.213157, 0.773343),(-0.004000, 0.212627, 0.771414),(-0.003464, 0.108796, 0.794676),(-0.004000, 0.212627, 0.771414),(-0.004000, 0.108528, 0.792694),(-0.002000, 0.108993, 0.796127),(-0.002000, 0.213545, 0.774755),(-0.003464, 0.213157, 0.773343),(-0.002000, 0.108993, 0.796127),(-0.003464, 0.213157, 0.773343),(-0.003464, 0.108796, 0.794676),(-0.000000, 0.109065, 0.796658),(-0.000000, 0.213687, 0.775272),(-0.002000, 0.213545, 0.774755),(-0.000000, 0.109065, 0.796658),(-0.002000, 0.213545, 0.774755),(-0.002000, 0.108993, 0.796127),(0.002000, 0.108993, 0.796127),(0.002000, 0.213545, 0.774755),(-0.000000, 0.213687, 0.775272),(0.002000, 0.108993, 0.796127),(-0.000000, 0.213687, 0.775272),(-0.000000, 0.109065, 0.796658),(0.003464, 0.108796, 0.794676),(0.003464, 0.213157, 0.773343),(0.002000, 0.213545, 0.774755),(0.003464, 0.108796, 0.794676),(0.002000, 0.213545, 0.774755),(0.002000, 0.108993, 0.796127),(0.004000, 0.108528, 0.792694),(0.004000, 0.212627, 0.771414),(0.003464, 0.213157, 0.773343),(0.004000, 0.108528, 0.792694),(0.003464, 0.213157, 0.773343),(0.003464, 0.108796, 0.794676),(0.003464, 0.212098, 0.769486),(0.003464, 0.310564, 0.735272),(0.004000, 0.311342, 0.737114),(0.003464, 0.212098, 0.769486),(0.004000, 0.311342, 0.737114),(0.004000, 0.212627, 0.771414),(0.002000, 0.211710, 0.768074),(0.002000, 0.309994, 0.733923),(0.003464, 0.310564, 0.735272),(0.002000, 0.211710, 0.768074),(0.003464, 0.310564, 0.735272),(0.003464, 0.212098, 0.769486),(-0.000000, 0.211568, 0.767557),(-0.000000, 0.309785, 0.733429),(0.002000, 0.309994, 0.733923),(-0.000000, 0.211568, 0.767557),(0.002000, 0.309994, 0.733923),(0.002000, 0.211710, 0.768074),(-0.002000, 0.211710, 0.768074),(-0.002000, 0.309994, 0.733923),(-0.000000, 0.309785, 0.733429),(-0.002000, 0.211710, 0.768074),(-0.000000, 0.309785, 0.733429),(-0.000000, 0.211568, 0.767557),(-0.003464, 0.212098, 0.769486),(-0.003464, 0.310564, 0.735272),(-0.002000, 0.309994, 0.733923),(-0.003464, 0.212098, 0.769486),(-0.002000, 0.309994, 0.733923),(-0.002000, 0.211710, 0.768074),(-0.004000, 0.212627, 0.771414),(-0.004000, 0.311342, 0.737114),(-0.003464, 0.310564, 0.735272),(-0.004000, 0.212627, 0.771414),(-0.003464, 0.310564, 0.735272),(-0.003464, 0.212098, 0.769486),(-0.003464, 0.213157, 0.773343),(-0.003464, 0.312121, 0.738956),(-0.004000, 0.311342, 0.737114),(-0.003464, 0.213157, 0.773343),(-0.004000, 0.311342, 0.737114),(-0.004000, 0.212627, 0.771414),(-0.002000, 0.213545, 0.774755),(-0.002000, 0.312691, 0.740305),(-0.003464, 0.312121, 0.738956),(-0.002000, 0.213545, 0.774755),(-0.003464, 0.312121, 0.738956),(-0.003464, 0.213157, 0.773343),(-0.000000, 0.213687, 0.775272),(-0.000000, 0.312899, 0.740799),(-0.002000, 0.312691, 0.740305),(-0.000000, 0.213687, 0.775272),(-0.002000, 0.312691, 0.740305),(-0.002000, 0.213545, 0.774755),(0.002000, 0.213545, 0.774755),(0.002000, 0.312691, 0.740305),(-0.000000, 0.312899, 0.740799),(0.002000, 0.213545, 0.774755),(-0.000000, 0.312899, 0.740799),(-0.000000, 0.213687, 0.775272),(0.003464, 0.213157, 0.773343),(0.003464, 0.312121, 0.738956),(0.002000, 0.312691, 0.740305),(0.003464, 0.213157, 0.773343),(0.002000, 0.312691, 0.740305),(0.002000, 0.213545, 0.774755),(0.004000, 0.212627, 0.771414),(0.004000, 0.311342, 0.737114),(0.003464, 0.312121, 0.738956),(0.004000, 0.212627, 0.771414),(0.003464, 0.312121, 0.738956),(0.003464, 0.213157, 0.773343),(0.003464, 0.310564, 0.735272),(0.003464, 0.402708, 0.689022),(0.004000, 0.403719, 0.690748),(0.003464, 0.310564, 0.735272),(0.004000, 0.403719, 0.690748),(0.004000, 0.311342, 0.737114),(0.002000, 0.309994, 0.733923),(0.002000, 0.401968, 0.687759),(0.003464, 0.402708, 0.689022),(0.002000, 0.309994, 0.733923),(0.003464, 0.402708, 0.689022),(0.003464, 0.310564, 0.735272),(-0.000000, 0.309785, 0.733429),(-0.000000, 0.401698, 0.687296),(0.002000, 0.401968, 0.687759),(-0.000000, 0.309785, 0.733429),(0.002000, 0.401968, 0.687759),(0.002000, 0.309994, 0.733923),(-0.002000, 0.309994, 0.733923),(-0.002000, 0.401968, 0.687759),(-0.000000, 0.401698, 0.687296),(-0.002000, 0.309994, 0.733923),(-0.000000, 0.401698, 0.687296),(-0.000000, 0.309785, 0.733429),(-0.003464, 0.310564, 0.735272),(-0.003464, 0.402708, 0.689022),(-0.002000, 0.401968, 0.687759),(-0.003464, 0.310564, 0.735272),(-0.002000, 0.401968, 0.687759),(-0.002000, 0.309994, 0.733923),(-0.004000, 0.311342, 0.737114),(-0.004000, 0.403719, 0.690748),(-0.003464, 0.402708, 0.689022),(-0.004000, 0.311342, 0.737114),(-0.003464, 0.402708, 0.689022),(-0.003464, 0.310564, 0.735272),(-0.003464, 0.312121, 0.738956),(-0.003464, 0.404729, 0.692474),(-0.004000, 0.403719, 0.690748),(-0.003464, 0.312121, 0.738956),(-0.004000, 0.403719, 0.690748),(-0.004000, 0.311342, 0.737114),(-0.002000, 0.312691, 0.740305),(-0.002000, 0.405469, 0.693738),(-0.003464, 0.404729, 0.692474),(-0.002000, 0.312691, 0.740305),(-0.003464, 0.404729, 0.692474),(-0.003464, 0.312121, 0.738956),(-0.000000, 0.312899, 0.740799),(-0.000000, 0.405740, 0.694200),(-0.002000, 0.405469, 0.693738),(-0.000000, 0.312899, 0.740799),(-0.002000, 0.405469, 0.693738),(-0.002000, 0.312691, 0.740305),(0.002000, 0.312691, 0.740305),(0.002000, 0.405469, 0.693738),(-0.000000, 0.405740, 0.694200),(0.002000, 0.312691, 0.740305),(-0.000000, 0.405740, 0.694200),(-0.000000, 0.312899, 0.740799),(0.003464, 0.312121, 0.738956),(0.003464, 0.404729, 0.692474),(0.002000, 0.405469, 0.693738),(0.003464, 0.312121, 0.738956),(0.002000, 0.405469, 0.693738),(0.002000, 0.312691, 0.740305),(0.004000, 0.311342, 0.737114),(0.004000, 0.403719, 0.690748),(0.003464, 0.404729, 0.692474),(0.004000, 0.311342, 0.737114),(0.003464, 0.404729, 0.692474),(0.003464, 0.312121, 0.738956),(0.003464, 0.402708, 0.689022),(0.003464, 0.487579, 0.631689),(0.004000, 0.488802, 0.633271),(0.003464, 0.402708, 0.689022),(0.004000, 0.488802, 0.633271),(0.004000, 0.403719, 0.690748),(0.002000, 0.401968, 0.687759),(0.002000, 0.486684, 0.630530),(0.003464, 0.487579, 0.631689),(0.002000, 0.401968, 0.687759),(0.003464, 0.487579, 0.631689),(0.003464, 0.402708, 0.689022),(-0.000000, 0.401698, 0.687296),(-0.000000, 0.486356, 0.630106),(0.002000, 0.486684, 0.630530),(-0.000000, 0.401698, 0.687296),(0.002000, 0.486684, 0.630530),(0.002000, 0.401968, 0.687759),(-0.002000, 0.401968, 0.687759),(-0.002000, 0.486684, 0.630530),(-0.000000, 0.486356, 0.630106),(-0.002000, 0.401968, 0.687759),(-0.000000, 0.486356, 0.630106),(-0.000000, 0.401698, 0.687296),(-0.003464, 0.402708, 0.689022),(-0.003464, 0.487579, 0.631689),(-0.002000, 0.486684, 0.630530),(-0.003464, 0.402708, 0.689022),(-0.002000, 0.486684, 0.630530),(-0.002000, 0.401968, 0.687759),(-0.004000, 0.403719, 0.690748),(-0.004000, 0.488802, 0.633271),(-0.003464, 0.487579, 0.631689),(-0.004000, 0.403719, 0.690748),(-0.003464, 0.487579, 0.631689),(-0.003464, 0.402708, 0.689022),(-0.003464, 0.404729, 0.692474),(-0.003464, 0.490025, 0.634854),(-0.004000, 0.488802, 0.633271),(-0.003464, 0.404729, 0.692474),(-0.004000, 0.488802, 0.633271),(-0.004000, 0.403719, 0.690748),(-0.002000, 0.405469, 0.693738),(-0.002000, 0.490920, 0.636012),(-0.003464, 0.490025, 0.634854),(-0.002000, 0.405469, 0.693738),(-0.003464, 0.490025, 0.634854),(-0.003464, 0.404729, 0.692474),(-0.000000, 0.405740, 0.694200),(-0.000000, 0.491248, 0.636436),(-0.002000, 0.490920, 0.636012),(-0.000000, 0.405740, 0.694200),(-0.002000, 0.490920, 0.636012),(-0.002000, 0.405469, 0.693738),(0.002000, 0.405469, 0.693738),(0.002000, 0.490920, 0.636012),(-0.000000, 0.491248, 0.636436),(0.002000, 0.405469, 0.693738),(-0.000000, 0.491248, 0.636436),(-0.000000, 0.405740, 0.694200),(0.003464, 0.404729, 0.692474),(0.003464, 0.490025, 0.634854),(0.002000, 0.490920, 0.636012),(0.003464, 0.404729, 0.692474),(0.002000, 0.490920, 0.636012),(0.002000, 0.405469, 0.693738),(0.004000, 0.403719, 0.690748),(0.004000, 0.488802, 0.633271),(0.003464, 0.490025, 0.634854),(0.004000, 0.403719, 0.690748),(0.003464, 0.490025, 0.634854),(0.003464, 0.404729, 0.692474),(0.003464, 0.487579, 0.631689),(0.003464, 0.564223, 0.564223),(0.004000, 0.565638, 0.565637),(0.003464, 0.487579, 0.631689),(0.004000, 0.565638, 0.565637),(0.004000, 0.488802, 0.633271),(0.002000, 0.486684, 0.630530),(0.002000, 0.563188, 0.563188),(0.003464, 0.564223, 0.564223),(0.002000, 0.486684, 0.630530),(0.003464, 0.564223, 0.564223),(0.003464, 0.487579, 0.631689),(-0.000000, 0.486356, 0.630106),(0.000000, 0.562809, 0.562809),(0.002000, 0.563188, 0.563188),(-0.000000, 0.486356, 0.630106),(0.002000, 0.563188, 0.563188),(0.002000, 0.486684, 0.630530),(-0.002000, 0.486684, 0.630530),(-0.002000, 0.563188, 0.563188),(0.000000, 0.562809, 0.562809),(-0.002000, 0.486684, 0.630530),(0.000000, 0.562809, 0.562809),(-0.000000, 0.486356, 0.630106),(-0.003464, 0.487579, 0.631689),(-0.003464, 0.564223, 0.564223),(-0.002000, 0.563188, 0.563188),(-0.003464, 0.487579, 0.631689),(-0.002000, 0.563188, 0.563188),(-0.002000, 0.486684, 0.630530),(-0.004000, 0.488802, 0.633271),(-0.004000, 0.565638, 0.565637),(-0.003464, 0.564223, 0.564223),(-0.004000, 0.488802, 0.633271),(-0.003464, 0.564223, 0.564223),(-0.003464, 0.487579, 0.631689),(-0.003464, 0.490025, 0.634854),(-0.003464, 0.567052, 0.567052),(-0.004000, 0.565638, 0.565637),(-0.003464, 0.490025, 0.634854),(-0.004000, 0.565638, 0.565637),(-0.004000, 0.488802, 0.633271),(-0.002000, 0.490920, 0.636012),(-0.002000, 0.568087, 0.568087),(-0.003464, 0.567052, 0.567052),(-0.002000, 0.490920, 0.636012),(-0.003464, 0.567052, 0.567052),(-0.003464, 0.490025, 0.634854),(-0.000000, 0.491248, 0.636436),(-0.000000, 0.568466, 0.568466),(-0.002000, 0.568087, 0.568087),(-0.000000, 0.491248, 0.636436),(-0.002000, 0.568087, 0.568087),(-0.002000, 0.490920, 0.636012),(0.002000, 0.490920, 0.636012),(0.002000, 0.568087, 0.568087),(-0.000000, 0.568466, 0.568466),(0.002000, 0.490920, 0.636012),(-0.000000, 0.568466, 0.568466),(-0.000000, 0.491248, 0.636436),(0.003464, 0.490025, 0.634854),(0.003464, 0.567052, 0.567052),(0.002000, 0.568087, 0.568087),(0.003464, 0.490025, 0.634854),(0.002000, 0.568087, 0.568087),(0.002000, 0.490920, 0.636012),(0.004000, 0.488802, 0.633271),(0.004000, 0.565638, 0.565637),(0.003464, 0.567052, 0.567052),(0.004000, 0.488802, 0.633271),(0.003464, 0.567052, 0.567052),(0.003464, 0.490025, 0.634854),(0.003464, 0.564223, 0.564223),(0.003464, 0.631689, 0.487579),(0.004000, 0.633271, 0.488802),(0.003464, 0.564223, 0.564223),(0.004000, 0.633271, 0.488802),(0.004000, 0.565638, 0.565637),(0.002000, 0.563188, 0.563188),(0.002000, 0.630530, 0.486684),(0.003464, 0.631689, 0.487579),(0.002000, 0.563188, 0.563188),(0.003464, 0.631689, 0.487579),(0.003464, 0.564223, 0.564223),(0.000000, 0.562809, 0.562809),(0.000000, 0.630106, 0.486356),(0.002000, 0.630530, 0.486684),(0.000000, 0.562809, 0.562809),(0.002000, 0.630530, 0.486684),(0.002000, 0.563188, 0.563188),(-0.002000, 0.563188, 0.563188),(-0.002000, 0.630530, 0.486684),(0.000000, 0.630106, 0.486356),(-0.002000, 0.563188, 0.563188),(0.000000, 0.630106, 0.486356),(0.000000, 0.562809, 0.562809),(-0.003464, 0.564223, 0.564223),(-0.003464, 0.631689, 0.487579),(-0.002000, 0.630530, 0.486684),(-0.003464, 0.564223, 0.564223),(-0.002000, 0.630530, 0.486684),(-0.002000, 0.563188, 0.563188),(-0.004000, 0.565638, 0.565637),(-0.004000, 0.633271, 0.488802),(-0.003464, 0.631689, 0.487579),(-0.004000, 0.565638, 0.565637),(-0.003464, 0.631689, 0.487579),(-0.003464, 0.564223, 0.564223),(-0.003464, 0.567052, 0.567052),(-0.003464, 0.634854, 0.490025),(-0.004000, 0.633271, 0.488802),(-0.003464, 0.567052, 0.567052),(-0.004000, 0.633271, 0.488802),(-0.004000, 0.565638, 0.565637),(-0.002000, 0.568087, 0.568087),(-0.002000, 0.636012, 0.490920),(-0.003464, 0.634854, 0.490025),(-0.002000, 0.568087, 0.568087),(-0.003464, 0.634854, 0.490025),(-0.003464, 0.567052, 0.567052),(-0.000000, 0.568466, 0.568466),(0.000000, 0.636436, 0.491248),(-0.002000, 0.636012, 0.490920),(-0.000000, 0.568466, 0.568466),(-0.002000, 0.636012, 0.490920),(-0.002000, 0.568087, 0.568087),(0.002000, 0.568087, 0.568087),(0.002000, 0.636012, 0.490920),(0.000000, 0.636436, 0.491248),(0.002000, 0.568087, 0.568087),(0.000000, 0.636436, 0.491248),(-0.000000, 0.568466, 0.568466),(0.003464, 0.567052, 0.567052),(0.003464, 0.634854, 0.490025),(0.002000, 0.636012, 0.490920),(0.003464, 0.567052, 0.567052),(0.002000, 0.636012, 0.490920),(0.002000, 0.568087, 0.568087),(0.004000, 0.565638, 0.565637),(0.004000, 0.633271, 0.488802),(0.003464, 0.634854, 0.490025),(0.004000, 0.565638, 0.565637),(0.003464, 0.634854, 0.490025),(0.003464, 0.567052, 0.567052),(0.003464, 0.631689, 0.487579),(0.003464, 0.689022, 0.402708),(0.004000, 0.690748, 0.403719),(0.003464, 0.631689, 0.487579),(0.004000, 0.690748, 0.403719),(0.004000, 0.633271, 0.488802),(0.002000, 0.630530, 0.486684),(0.002000, 0.687759, 0.401968),(0.003464, 0.689022, 0.402708),(0.002000, 0.630530, 0.486684),(0.003464, 0.689022, 0.402708),(0.003464, 0.631689, 0.487579),(0.000000, 0.630106, 0.486356),(0.000000, 0.687296, 0.401698),(0.002000, 0.687759, 0.401968),(0.000000, 0.630106, 0.486356),(0.002000, 0.687759, 0.401968),(0.002000, 0.630530, 0.486684),(-0.002000, 0.630530, 0.486684),(-0.002000, 0.687759, 0.401968),(0.000000, 0.687296, 0.401698),(-0.002000, 0.630530, 0.486684),(0.000000, 0.687296, 0.401698),(0.000000, 0.630106, 0.486356),(-0.003464, 0.631689, 0.487579),(-0.003464, 0.689022, 0.402708),(-0.002000, 0.687759, 0.401968),(-0.003464, 0.631689, 0.487579),(-0.002000, 0.687759, 0.401968),(-0.002000, 0.630530, 0.486684),(-0.004000, 0.633271, 0.488802),(-0.004000, 0.690748, 0.403719),(-0.003464, 0.689022, 0.402708),(-0.004000, 0.633271, 0.488802),(-0.003464, 0.689022, 0.402708),(-0.003464, 0.631689, 0.487579),(-0.003464, 0.634854, 0.490025),(-0.003464, 0.692474, 0.404729),(-0.004000, 0.690748, 0.403719),(-0.003464, 0.634854, 0.490025),(-0.004000, 0.690748, 0.403719),(-0.004000, 0.633271, 0.488802),(-0.002000, 0.636012, 0.490920),(-0.002000, 0.693738, 0.405469),(-0.003464, 0.692474, 0.404729),(-0.002000, 0.636012, 0.490920),(-0.003464, 0.692474, 0.404729),(-0.003464, 0.634854, 0.490025),(0.000000, 0.636436, 0.491248),(0.000000, 0.694200, 0.405739),(-0.002000, 0.693738, 0.405469),(0.000000, 0.636436, 0.491248),(-0.002000, 0.693738, 0.405469),(-0.002000, 0.636012, 0.490920),(0.002000, 0.636012, 0.490920),(0.002000, 0.693738, 0.405469),(0.000000, 0.694200, 0.405739),(0.002000, 0.636012, 0.490920),(0.000000, 0.694200, 0.405739),(0.000000, 0.636436, 0.491248),(0.003464, 0.634854, 0.490025),(0.003464, 0.692474, 0.404729),(0.002000, 0.693738, 0.405469),(0.003464, 0.634854, 0.490025),(0.002000, 0.693738, 0.405469),(0.002000, 0.636012, 0.490920),(0.004000, 0.633271, 0.488802),(0.004000, 0.690748, 0.403719),(0.003464, 0.692474, 0.404729),(0.004000, 0.633271, 0.488802),(0.003464, 0.692474, 0.404729),(0.003464, 0.634854, 0.490025),(0.003464, 0.689022, 0.402708),(0.003464, 0.735272, 0.310564),(0.004000, 0.737114, 0.311342),(0.003464, 0.689022, 0.402708),(0.004000, 0.737114, 0.311342),(0.004000, 0.690748, 0.403719),(0.002000, 0.687759, 0.401968),(0.002000, 0.733923, 0.309994),(0.003464, 0.735272, 0.310564),(0.002000, 0.687759, 0.401968),(0.003464, 0.735272, 0.310564),(0.003464, 0.689022, 0.402708),(0.000000, 0.687296, 0.401698),(0.000000, 0.733429, 0.309785),(0.002000, 0.733923, 0.309994),(0.000000, 0.687296, 0.401698),(0.002000, 0.733923, 0.309994),(0.002000, 0.687759, 0.401968),(-0.002000, 0.687759, 0.401968),(-0.002000, 0.733923, 0.309994),(0.000000, 0.733429, 0.309785),(-0.002000, 0.687759, 0.401968),(0.000000, 0.733429, 0.309785),(0.000000, 0.687296, 0.401698),(-0.003464, 0.689022, 0.402708),(-0.003464, 0.735272, 0.310564),(-0.002000, 0.733923, 0.309994),(-0.003464, 0.689022, 0.402708),(-0.002000, 0.733923, 0.309994),(-0.002000, 0.687759, 0.401968),(-0.004000, 0.690748, 0.403719),(-0.004000, 0.737114, 0.311342),(-0.003464, 0.735272, 0.310564),(-0.004000, 0.690748, 0.403719),(-0.003464, 0.735272, 0.310564),(-0.003464, 0.689022, 0.402708),(-0.003464, 0.692474, 0.404729),(-0.003464, 0.738956, 0.312121),(-0.004000, 0.737114, 0.311342),(-0.003464, 0.692474, 0.404729),(-0.004000, 0.737114, 0.311342),(-0.004000, 0.690748, 0.403719),(-0.002000, 0.693738, 0.405469),(-0.002000, 0.740305, 0.312691),(-0.003464, 0.738956, 0.312121),(-0.002000, 0.693738, 0.405469),(-0.003464, 0.738956, 0.312121),(-0.003464, 0.692474, 0.404729),(0.000000, 0.694200, 0.405739),(0.000000, 0.740799, 0.312899),(-0.002000, 0.740305, 0.312691),(0.000000, 0.694200, 0.405739),(-0.002000, 0.740305, 0.312691),(-0.002000, 0.693738, 0.405469),(0.002000, 0.693738, 0.405469),(0.002000, 0.740305, 0.312691),(0.000000, 0.740799, 0.312899),(0.002000, 0.693738, 0.405469),(0.000000, 0.740799, 0.312899),(0.000000, 0.694200, 0.405739),(0.003464, 0.692474, 0.404729),(0.003464, 0.738956, 0.312121),(0.002000, 0.740305, 0.312691),(0.003464, 0.692474, 0.404729),(0.002000, 0.740305, 0.312691),(0.002000, 0.693738, 0.405469),(0.004000, 0.690748, 0.403719),(0.004000, 0.737114, 0.311342),(0.003464, 0.738956, 0.312121),(0.004000, 0.690748, 0.403719),(0.003464, 0.738956, 0.312121),(0.003464, 0.692474, 0.404729),(0.003464, 0.735272, 0.310564),(0.003464, 0.769486, 0.212098),(0.004000, 0.771414, 0.212627),(0.003464, 0.735272, 0.310564),(0.004000, 0.771414, 0.212627),(0.004000, 0.737114, 0.311342),(0.002000, 0.733923, 0.309994),(0.002000, 0.768074, 0.211710),(0.003464, 0.769486, 0.212098),(0.002000, 0.733923, 0.309994),(0.003464, 0.769486, 0.212098),(0.003464, 0.735272, 0.310564),(0.000000, 0.733429, 0.309785),(0.000000, 0.767557, 0.211568),(0.002000, 0.768074, 0.211710),(0.000000, 0.733429, 0.309785),(0.002000, 0.768074, 0.211710),(0.002000, 0.733923, 0.309994),(-0.002000, 0.733923, 0.309994),(-0.002000, 0.768074, 0.211710),(0.000000, 0.767557, 0.211568),(-0.002000, 0.733923, 0.309994),(0.000000, 0.767557, 0.211568),(0.000000, 0.733429, 0.309785),(-0.003464, 0.735272, 0.310564),(-0.003464, 0.769486, 0.212098),(-0.002000, 0.768074, 0.211710),(-0.003464, 0.735272, 0.310564),(-0.002000, 0.768074, 0.211710),(-0.002000, 0.733923, 0.309994),(-0.004000, 0.737114, 0.311342),(-0.004000, 0.771414, 0.212627),(-0.003464, 0.769486, 0.212098),(-0.004000, 0.737114, 0.311342),(-0.003464, 0.769486, 0.212098),(-0.003464, 0.735272, 0.310564),(-0.003464, 0.738956, 0.312121),(-0.003464, 0.773343, 0.213157),(-0.004000, 0.771414, 0.212627),(-0.003464, 0.738956, 0.312121),(-0.004000, 0.771414, 0.212627),(-0.004000, 0.737114, 0.311342),(-0.002000, 0.740305, 0.312691),(-0.002000, 0.774755, 0.213545),(-0.003464, 0.773343, 0.213157),(-0.002000, 0.740305, 0.312691),(-0.003464, 0.773343, 0.213157),(-0.003464, 0.738956, 0.312121),(0.000000, 0.740799, 0.312899),(0.000000, 0.775272, 0.213687),(-0.002000, 0.774755, 0.213545),(0.000000, 0.740799, 0.312899),(-0.002000, 0.774755, 0.213545),(-0.002000, 0.740305, 0.312691),(0.002000, 0.740305, 0.312691),(0.002000, 0.774755, 0.213545),(0.000000, 0.775272, 0.213687),(0.002000, 0.740305, 0.312691),(0.000000, 0.775272, 0.213687),(0.000000, 0.740799, 0.312899),(0.003464, 0.738956, 0.312121),(0.003464, 0.773343, 0.213157),(0.002000, 0.774755, 0.213545),(0.003464, 0.738956, 0.312121),(0.002000, 0.774755, 0.213545),(0.002000, 0.740305, 0.312691),(0.004000, 0.737114, 0.311342),(0.004000, 0.771414, 0.212627),(0.003464, 0.773343, 0.213157),(0.004000, 0.737114, 0.311342),(0.003464, 0.773343, 0.213157),(0.003464, 0.738956, 0.312121),(0.003464, 0.769486, 0.212098),(0.003464, 0.790713, 0.108260),(0.004000, 0.792695, 0.108528),(0.003464, 0.769486, 0.212098),(0.004000, 0.792695, 0.108528),(0.004000, 0.771414, 0.212627),(0.002000, 0.768074, 0.211710),(0.002000, 0.789262, 0.108064),(0.003464, 0.790713, 0.108260),(0.002000, 0.768074, 0.211710),(0.003464, 0.790713, 0.108260),(0.003464, 0.769486, 0.212098),(0.000000, 0.767557, 0.211568),(0.000000, 0.788731, 0.107992),(0.002000, 0.789262, 0.108064),(0.000000, 0.767557, 0.211568),(0.002000, 0.789262, 0.108064),(0.002000, 0.768074, 0.211710),(-0.002000, 0.768074, 0.211710),(-0.002000, 0.789262, 0.108064),(0.000000, 0.788731, 0.107992),(-0.002000, 0.768074, 0.211710),(0.000000, 0.788731, 0.107992),(0.000000, 0.767557, 0.211568),(-0.003464, 0.769486, 0.212098),(-0.003464, 0.790713, 0.108260),(-0.002000, 0.789262, 0.108064),(-0.003464, 0.769486, 0.212098),(-0.002000, 0.789262, 0.108064),(-0.002000, 0.768074, 0.211710),(-0.004000, 0.771414, 0.212627),(-0.004000, 0.792695, 0.108528),(-0.003464, 0.790713, 0.108260),(-0.004000, 0.771414, 0.212627),(-0.003464, 0.790713, 0.108260),(-0.003464, 0.769486, 0.212098),(-0.003464, 0.773343, 0.213157),(-0.003464, 0.794676, 0.108796),(-0.004000, 0.792695, 0.108528),(-0.003464, 0.773343, 0.213157),(-0.004000, 0.792695, 0.108528),(-0.004000, 0.771414, 0.212627),(-0.002000, 0.774755, 0.213545),(-0.002000, 0.796127, 0.108993),(-0.003464, 0.794676, 0.108796),(-0.002000, 0.774755, 0.213545),(-0.003464, 0.794676, 0.108796),(-0.003464, 0.773343, 0.213157),(0.000000, 0.775272, 0.213687),(0.000000, 0.796658, 0.109065),(-0.002000, 0.796127, 0.108993),(0.000000, 0.775272, 0.213687),(-0.002000, 0.796127, 0.108993),(-0.002000, 0.774755, 0.213545),(0.002000, 0.774755, 0.213545),(0.002000, 0.796127, 0.108993),(0.000000, 0.796658, 0.109065),(0.002000, 0.774755, 0.213545),(0.000000, 0.796658, 0.109065),(0.000000, 0.775272, 0.213687),(0.003464, 0.773343, 0.213157),(0.003464, 0.794676, 0.108796),(0.002000, 0.796127, 0.108993),(0.003464, 0.773343, 0.213157),(0.002000, 0.796127, 0.108993),(0.002000, 0.774755, 0.213545),(0.004000, 0.771414, 0.212627),(0.004000, 0.792695, 0.108528),(0.003464, 0.794676, 0.108796),(0.004000, 0.771414, 0.212627),(0.003464, 0.794676, 0.108796),(0.003464, 0.773343, 0.213157),(0.003464, 0.790713, 0.108260),(0.003464, 0.798000, 0.000000),(0.004000, 0.800000, 0.000000),(0.003464, 0.790713, 0.108260),(0.004000, 0.800000, 0.000000),(0.004000, 0.792695, 0.108528),(0.002000, 0.789262, 0.108064),(0.002000, 0.796536, -0.000000),(0.003464, 0.798000, 0.000000),(0.002000, 0.789262, 0.108064),(0.003464, 0.798000, 0.000000),(0.003464, 0.790713, 0.108260),(0.000000, 0.788731, 0.107992),(0.000000, 0.796000, -0.000000),(0.002000, 0.796536, -0.000000),(0.000000, 0.788731, 0.107992),(0.002000, 0.796536, -0.000000),(0.002000, 0.789262, 0.108064),(-0.002000, 0.789262, 0.108064),(-0.002000, 0.796536, -0.000000),(0.000000, 0.796000, -0.000000),(-0.002000, 0.789262, 0.108064),(0.000000, 0.796000, -0.000000),(0.000000, 0.788731, 0.107992),(-0.003464, 0.790713, 0.108260),(-0.003464, 0.798000, -0.000000),(-0.002000, 0.796536, -0.000000),(-0.003464, 0.790713, 0.108260),(-0.002000, 0.796536, -0.000000),(-0.002000, 0.789262, 0.108064),(-0.004000, 0.792695, 0.108528),(-0.004000, 0.800000, -0.000000),(-0.003464, 0.798000, -0.000000),(-0.004000, 0.792695, 0.108528),(-0.003464, 0.798000, -0.000000),(-0.003464, 0.790713, 0.108260),(-0.003464, 0.794676, 0.108796),(-0.003464, 0.802000, -0.000000),(-0.004000, 0.800000, -0.000000),(-0.003464, 0.794676, 0.108796),(-0.004000, 0.800000, -0.000000),(-0.004000, 0.792695, 0.108528),(-0.002000, 0.796127, 0.108993),(-0.002000, 0.803464, 0.000000),(-0.003464, 0.802000, -0.000000),(-0.002000, 0.796127, 0.108993),(-0.003464, 0.802000, -0.000000),(-0.003464, 0.794676, 0.108796),(0.000000, 0.796658, 0.109065),(0.000000, 0.804000, 0.000000),(-0.002000, 0.803464, 0.000000),(0.000000, 0.796658, 0.109065),(-0.002000, 0.803464, 0.000000),(-0.002000, 0.796127, 0.108993),(0.002000, 0.796127, 0.108993),(0.002000, 0.803464, 0.000000),(0.000000, 0.804000, 0.000000),(0.002000, 0.796127, 0.108993),(0.000000, 0.804000, 0.000000),(0.000000, 0.796658, 0.109065),(0.003464, 0.794676, 0.108796),(0.003464, 0.802000, 0.000000),(0.002000, 0.803464, 0.000000),(0.003464, 0.794676, 0.108796),(0.002000, 0.803464, 0.000000),(0.002000, 0.796127, 0.108993),(0.004000, 0.792695, 0.108528),(0.004000, 0.800000, 0.000000),(0.003464, 0.802000, 0.000000),(0.004000, 0.792695, 0.108528),(0.003464, 0.802000, 0.000000),(0.003464, 0.794676, 0.108796),(0.003464, 0.798000, 0.000000),(0.003464, 0.790712, -0.108260),(0.004000, 0.792694, -0.108528),(0.003464, 0.798000, 0.000000),(0.004000, 0.792694, -0.108528),(0.004000, 0.800000, 0.000000),(0.002000, 0.796536, -0.000000),(0.002000, 0.789262, -0.108064),(0.003464, 0.790712, -0.108260),(0.002000, 0.796536, -0.000000),(0.003464, 0.790712, -0.108260),(0.003464, 0.798000, 0.000000),(0.000000, 0.796000, -0.000000),(0.000000, 0.788731, -0.107992),(0.002000, 0.789262, -0.108064),(0.000000, 0.796000, -0.000000),(0.002000, 0.789262, -0.108064),(0.002000, 0.796536, -0.000000),(-0.002000, 0.796536, -0.000000),(-0.002000, 0.789262, -0.108064),(0.000000, 0.788731, -0.107992),(-0.002000, 0.796536, -0.000000),(0.000000, 0.788731, -0.107992),(0.000000, 0.796000, -0.000000),(-0.003464, 0.798000, -0.000000),(-0.003464, 0.790712, -0.108260),(-0.002000, 0.789262, -0.108064),(-0.003464, 0.798000, -0.000000),(-0.002000, 0.789262, -0.108064),(-0.002000, 0.796536, -0.000000),(-0.004000, 0.800000, -0.000000),(-0.004000, 0.792694, -0.108528),(-0.003464, 0.790712, -0.108260),(-0.004000, 0.800000, -0.000000),(-0.003464, 0.790712, -0.108260),(-0.003464, 0.798000, -0.000000),(-0.003464, 0.802000, -0.000000),(-0.003464, 0.794676, -0.108796),(-0.004000, 0.792694, -0.108528),(-0.003464, 0.802000, -0.000000),(-0.004000, 0.792694, -0.108528),(-0.004000, 0.800000, -0.000000),(-0.002000, 0.803464, 0.000000),(-0.002000, 0.796127, -0.108993),(-0.003464, 0.794676, -0.108796),(-0.002000, 0.803464, 0.000000),(-0.003464, 0.794676, -0.108796),(-0.003464, 0.802000, -0.000000),(0.000000, 0.804000, 0.000000),(0.000000, 0.796658, -0.109065),(-0.002000, 0.796127, -0.108993),(0.000000, 0.804000, 0.000000),(-0.002000, 0.796127, -0.108993),(-0.002000, 0.803464, 0.000000),(0.002000, 0.803464, 0.000000),(0.002000, 0.796127, -0.108993),(0.000000, 0.796658, -0.109065),(0.002000, 0.803464, 0.000000),(0.000000, 0.796658, -0.109065),(0.000000, 0.804000, 0.000000),(0.003464, 0.802000, 0.000000),(0.003464, 0.794676, -0.108796),(0.002000, 0.796127, -0.108993),(0.003464, 0.802000, 0.000000),(0.002000, 0.796127, -0.108993),(0.002000, 0.803464, 0.000000),(0.004000, 0.800000, 0.000000),(0.004000, 0.792694, -0.108528),(0.003464, 0.794676, -0.108796),(0.004000, 0.800000, 0.000000),(0.003464, 0.794676, -0.108796),(0.003464, 0.802000, 0.000000),(0.003464, 0.790712, -0.108260),(0.003464, 0.769486, -0.212098),(0.004000, 0.771414, -0.212627),(0.003464, 0.790712, -0.108260),(0.004000, 0.771414, -0.212627),(0.004000, 0.792694, -0.108528),(0.002000, 0.789262, -0.108064),(0.002000, 0.768074, -0.211710),(0.003464, 0.769486, -0.212098),(0.002000, 0.789262, -0.108064),(0.003464, 0.769486, -0.212098),(0.003464, 0.790712, -0.108260),(0.000000, 0.788731, -0.107992),(0.000000, 0.767557, -0.211568),(0.002000, 0.768074, -0.211710),(0.000000, 0.788731, -0.107992),(0.002000, 0.768074, -0.211710),(0.002000, 0.789262, -0.108064),(-0.002000, 0.789262, -0.108064),(-0.002000, 0.768074, -0.211710),(0.000000, 0.767557, -0.211568),(-0.002000, 0.789262, -0.108064),(0.000000, 0.767557, -0.211568),(0.000000, 0.788731, -0.107992),(-0.003464, 0.790712, -0.108260),(-0.003464, 0.769486, -0.212098),(-0.002000, 0.768074, -0.211710),(-0.003464, 0.790712, -0.108260),(-0.002000, 0.768074, -0.211710),(-0.002000, 0.789262, -0.108064),(-0.004000, 0.792694, -0.108528),(-0.004000, 0.771414, -0.212627),(-0.003464, 0.769486, -0.212098),(-0.004000, 0.792694, -0.108528),(-0.003464, 0.769486, -0.212098),(-0.003464, 0.790712, -0.108260),(-0.003464, 0.794676, -0.108796),(-0.003464, 0.773343, -0.213157),(-0.004000, 0.771414, -0.212627),(-0.003464, 0.794676, -0.108796),(-0.004000, 0.771414, -0.212627),(-0.004000, 0.792694, -0.108528),(-0.002000, 0.796127, -0.108993),(-0.002000, 0.774755, -0.213545),(-0.003464, 0.773343, -0.213157),(-0.002000, 0.796127, -0.108993),(-0.003464, 0.773343, -0.213157),(-0.003464, 0.794676, -0.108796),(0.000000, 0.796658, -0.109065),(0.000000, 0.775272, -0.213687),(-0.002000, 0.774755, -0.213545),(0.000000, 0.796658, -0.109065),(-0.002000, 0.774755, -0.213545),(-0.002000, 0.796127, -0.108993),(0.002000, 0.796127, -0.108993),(0.002000, 0.774755, -0.213545),(0.000000, 0.775272, -0.213687),(0.002000, 0.796127, -0.108993),(0.000000, 0.775272, -0.213687),(0.000000, 0.796658, -0.109065),(0.003464, 0.794676, -0.108796),(0.003464, 0.773343, -0.213157),(0.002000, 0.774755, -0.213545),(0.003464, 0.794676, -0.108796),(0.002000, 0.774755, -0.213545),(0.002000, 0.796127, -0.108993),(0.004000, 0.792694, -0.108528),(0.004000, 0.771414, -0.212627),(0.003464, 0.773343, -0.213157),(0.004000, 0.792694, -0.108528),(0.003464, 0.773343, -0.213157),(0.003464, 0.794676, -0.108796),(0.003464, 0.769486, -0.212098),(0.003464, 0.735272, -0.310564),(0.004000, 0.737114, -0.311342),(0.003464, 0.769486, -0.212098),(0.004000, 0.737114, -0.311342),(0.004000, 0.771414, -0.212627),(0.002000, 0.768074, -0.211710),(0.002000, 0.733923, -0.309994),(0.003464, 0.735272, -0.310564),(0.002000, 0.768074, -0.211710),(0.003464, 0.735272, -0.310564),(0.003464, 0.769486, -0.212098),(0.000000, 0.767557, -0.211568),(0.000000, 0.733429, -0.309785),(0.002000, 0.733923, -0.309994),(0.000000, 0.767557, -0.211568),(0.002000, 0.733923, -0.309994),(0.002000, 0.768074, -0.211710),(-0.002000, 0.768074, -0.211710),(-0.002000, 0.733923, -0.309994),(0.000000, 0.733429, -0.309785),(-0.002000, 0.768074, -0.211710),(0.000000, 0.733429, -0.309785),(0.000000, 0.767557, -0.211568),(-0.003464, 0.769486, -0.212098),(-0.003464, 0.735272, -0.310564),(-0.002000, 0.733923, -0.309994),(-0.003464, 0.769486, -0.212098),(-0.002000, 0.733923, -0.309994),(-0.002000, 0.768074, -0.211710),(-0.004000, 0.771414, -0.212627),(-0.004000, 0.737114, -0.311342),(-0.003464, 0.735272, -0.310564),(-0.004000, 0.771414, -0.212627),(-0.003464, 0.735272, -0.310564),(-0.003464, 0.769486, -0.212098),(-0.003464, 0.773343, -0.213157),(-0.003464, 0.738956, -0.312121),(-0.004000, 0.737114, -0.311342),(-0.003464, 0.773343, -0.213157),(-0.004000, 0.737114, -0.311342),(-0.004000, 0.771414, -0.212627),(-0.002000, 0.774755, -0.213545),(-0.002000, 0.740305, -0.312691),(-0.003464, 0.738956, -0.312121),(-0.002000, 0.774755, -0.213545),(-0.003464, 0.738956, -0.312121),(-0.003464, 0.773343, -0.213157),(0.000000, 0.775272, -0.213687),(0.000000, 0.740799, -0.312899),(-0.002000, 0.740305, -0.312691),(0.000000, 0.775272, -0.213687),(-0.002000, 0.740305, -0.312691),(-0.002000, 0.774755, -0.213545),(0.002000, 0.774755, -0.213545),(0.002000, 0.740305, -0.312691),(0.000000, 0.740799, -0.312899),(0.002000, 0.774755, -0.213545),(0.000000, 0.740799, -0.312899),(0.000000, 0.775272, -0.213687),(0.003464, 0.773343, -0.213157),(0.003464, 0.738956, -0.312121),(0.002000, 0.740305, -0.312691),(0.003464, 0.773343, -0.213157),(0.002000, 0.740305, -0.312691),(0.002000, 0.774755, -0.213545),(0.004000, 0.771414, -0.212627),(0.004000, 0.737114, -0.311342),(0.003464, 0.738956, -0.312121),(0.004000, 0.771414, -0.212627),(0.003464, 0.738956, -0.312121),(0.003464, 0.773343, -0.213157),(0.003464, 0.735272, -0.310564),(0.003464, 0.689022, -0.402708),(0.004000, 0.690748, -0.403719),(0.003464, 0.735272, -0.310564),(0.004000, 0.690748, -0.403719),(0.004000, 0.737114, -0.311342),(0.002000, 0.733923, -0.309994),(0.002000, 0.687759, -0.401968),(0.003464, 0.689022, -0.402708),(0.002000, 0.733923, -0.309994),(0.003464, 0.689022, -0.402708),(0.003464, 0.735272, -0.310564),(0.000000, 0.733429, -0.309785),(0.000000, 0.687296, -0.401698),(0.002000, 0.687759, -0.401968),(0.000000, 0.733429, -0.309785),(0.002000, 0.687759, -0.401968),(0.002000, 0.733923, -0.309994),(-0.002000, 0.733923, -0.309994),(-0.002000, 0.687759, -0.401968),(0.000000, 0.687296, -0.401698),(-0.002000, 0.733923, -0.309994),(0.000000, 0.687296, -0.401698),(0.000000, 0.733429, -0.309785),(-0.003464, 0.735272, -0.310564),(-0.003464, 0.689022, -0.402708),(-0.002000, 0.687759, -0.401968),(-0.003464, 0.735272, -0.310564),(-0.002000, 0.687759, -0.401968),(-0.002000, 0.733923, -0.309994),(-0.004000, 0.737114, -0.311342),(-0.004000, 0.690748, -0.403719),(-0.003464, 0.689022, -0.402708),(-0.004000, 0.737114, -0.311342),(-0.003464, 0.689022, -0.402708),(-0.003464, 0.735272, -0.310564),(-0.003464, 0.738956, -0.312121),(-0.003464, 0.692474, -0.404729),(-0.004000, 0.690748, -0.403719),(-0.003464, 0.738956, -0.312121),(-0.004000, 0.690748, -0.403719),(-0.004000, 0.737114, -0.311342),(-0.002000, 0.740305, -0.312691),(-0.002000, 0.693738, -0.405469),(-0.003464, 0.692474, -0.404729),(-0.002000, 0.740305, -0.312691),(-0.003464, 0.692474, -0.404729),(-0.003464, 0.738956, -0.312121),(0.000000, 0.740799, -0.312899),(0.000000, 0.694200, -0.405740),(-0.002000, 0.693738, -0.405469),(0.000000, 0.740799, -0.312899),(-0.002000, 0.693738, -0.405469),(-0.002000, 0.740305, -0.312691),(0.002000, 0.740305, -0.312691),(0.002000, 0.693738, -0.405469),(0.000000, 0.694200, -0.405740),(0.002000, 0.740305, -0.312691),(0.000000, 0.694200, -0.405740),(0.000000, 0.740799, -0.312899),(0.003464, 0.738956, -0.312121),(0.003464, 0.692474, -0.404729),(0.002000, 0.693738, -0.405469),(0.003464, 0.738956, -0.312121),(0.002000, 0.693738, -0.405469),(0.002000, 0.740305, -0.312691),(0.004000, 0.737114, -0.311342),(0.004000, 0.690748, -0.403719),(0.003464, 0.692474, -0.404729),(0.004000, 0.737114, -0.311342),(0.003464, 0.692474, -0.404729),(0.003464, 0.738956, -0.312121),(0.003464, 0.689022, -0.402708),(0.003464, 0.631689, -0.487579),(0.004000, 0.633271, -0.488802),(0.003464, 0.689022, -0.402708),(0.004000, 0.633271, -0.488802),(0.004000, 0.690748, -0.403719),(0.002000, 0.687759, -0.401968),(0.002000, 0.630530, -0.486684),(0.003464, 0.631689, -0.487579),(0.002000, 0.687759, -0.401968),(0.003464, 0.631689, -0.487579),(0.003464, 0.689022, -0.402708),(0.000000, 0.687296, -0.401698),(0.000000, 0.630106, -0.486356),(0.002000, 0.630530, -0.486684),(0.000000, 0.687296, -0.401698),(0.002000, 0.630530, -0.486684),(0.002000, 0.687759, -0.401968),(-0.002000, 0.687759, -0.401968),(-0.002000, 0.630530, -0.486684),(0.000000, 0.630106, -0.486356),(-0.002000, 0.687759, -0.401968),(0.000000, 0.630106, -0.486356),(0.000000, 0.687296, -0.401698),(-0.003464, 0.689022, -0.402708),(-0.003464, 0.631689, -0.487579),(-0.002000, 0.630530, -0.486684),(-0.003464, 0.689022, -0.402708),(-0.002000, 0.630530, -0.486684),(-0.002000, 0.687759, -0.401968),(-0.004000, 0.690748, -0.403719),(-0.004000, 0.633271, -0.488802),(-0.003464, 0.631689, -0.487579),(-0.004000, 0.690748, -0.403719),(-0.003464, 0.631689, -0.487579),(-0.003464, 0.689022, -0.402708),(-0.003464, 0.692474, -0.404729),(-0.003464, 0.634854, -0.490025),(-0.004000, 0.633271, -0.488802),(-0.003464, 0.692474, -0.404729),(-0.004000, 0.633271, -0.488802),(-0.004000, 0.690748, -0.403719),(-0.002000, 0.693738, -0.405469),(-0.002000, 0.636012, -0.490920),(-0.003464, 0.634854, -0.490025),(-0.002000, 0.693738, -0.405469),(-0.003464, 0.634854, -0.490025),(-0.003464, 0.692474, -0.404729),(0.000000, 0.694200, -0.405740),(0.000000, 0.636436, -0.491248),(-0.002000, 0.636012, -0.490920),(0.000000, 0.694200, -0.405740),(-0.002000, 0.636012, -0.490920),(-0.002000, 0.693738, -0.405469),(0.002000, 0.693738, -0.405469),(0.002000, 0.636012, -0.490920),(0.000000, 0.636436, -0.491248),(0.002000, 0.693738, -0.405469),(0.000000, 0.636436, -0.491248),(0.000000, 0.694200, -0.405740),(0.003464, 0.692474, -0.404729),(0.003464, 0.634854, -0.490025),(0.002000, 0.636012, -0.490920),(0.003464, 0.692474, -0.404729),(0.002000, 0.636012, -0.490920),(0.002000, 0.693738, -0.405469),(0.004000, 0.690748, -0.403719),(0.004000, 0.633271, -0.488802),(0.003464, 0.634854, -0.490025),(0.004000, 0.690748, -0.403719),(0.003464, 0.634854, -0.490025),(0.003464, 0.692474, -0.404729),(0.003464, 0.631689, -0.487579),(0.003464, 0.564223, -0.564223),(0.004000, 0.565637, -0.565638),(0.003464, 0.631689, -0.487579),(0.004000, 0.565637, -0.565638),(0.004000, 0.633271, -0.488802),(0.002000, 0.630530, -0.486684),(0.002000, 0.563188, -0.563188),(0.003464, 0.564223, -0.564223),(0.002000, 0.630530, -0.486684),(0.003464, 0.564223, -0.564223),(0.003464, 0.631689, -0.487579),(0.000000, 0.630106, -0.486356),(0.000000, 0.562809, -0.562809),(0.002000, 0.563188, -0.563188),(0.000000, 0.630106, -0.486356),(0.002000, 0.563188, -0.563188),(0.002000, 0.630530, -0.486684),(-0.002000, 0.630530, -0.486684),(-0.002000, 0.563188, -0.563188),(0.000000, 0.562809, -0.562809),(-0.002000, 0.630530, -0.486684),(0.000000, 0.562809, -0.562809),(0.000000, 0.630106, -0.486356),(-0.003464, 0.631689, -0.487579),(-0.003464, 0.564223, -0.564223),(-0.002000, 0.563188, -0.563188),(-0.003464, 0.631689, -0.487579),(-0.002000, 0.563188, -0.563188),(-0.002000, 0.630530, -0.486684),(-0.004000, 0.633271, -0.488802),(-0.004000, 0.565637, -0.565638),(-0.003464, 0.564223, -0.564223),(-0.004000, 0.633271, -0.488802),(-0.003464, 0.564223, -0.564223),(-0.003464, 0.631689, -0.487579),(-0.003464, 0.634854, -0.490025),(-0.003464, 0.567052, -0.567052),(-0.004000, 0.565637, -0.565638),(-0.003464, 0.634854, -0.490025),(-0.004000, 0.565637, -0.565638),(-0.004000, 0.633271, -0.488802),(-0.002000, 0.636012, -0.490920),(-0.002000, 0.568087, -0.568087),(-0.003464, 0.567052, -0.567052),(-0.002000, 0.636012, -0.490920),(-0.003464, 0.567052, -0.567052),(-0.003464, 0.634854, -0.490025),(0.000000, 0.636436, -0.491248),(0.000000, 0.568466, -0.568466),(-0.002000, 0.568087, -0.568087),(0.000000, 0.636436, -0.491248),(-0.002000, 0.568087, -0.568087),(-0.002000, 0.636012, -0.490920),(0.002000, 0.636012, -0.490920),(0.002000, 0.568087, -0.568087),(0.000000, 0.568466, -0.568466),(0.002000, 0.636012, -0.490920),(0.000000, 0.568466, -0.568466),(0.000000, 0.636436, -0.491248),(0.003464, 0.634854, -0.490025),(0.003464, 0.567052, -0.567052),(0.002000, 0.568087, -0.568087),(0.003464, 0.634854, -0.490025),(0.002000, 0.568087, -0.568087),(0.002000, 0.636012, -0.490920),(0.004000, 0.633271, -0.488802),(0.004000, 0.565637, -0.565638),(0.003464, 0.567052, -0.567052),(0.004000, 0.633271, -0.488802),(0.003464, 0.567052, -0.567052),(0.003464, 0.634854, -0.490025),(0.003464, 0.564223, -0.564223),(0.003464, 0.487579, -0.631689),(0.004000, 0.488802, -0.633271),(0.003464, 0.564223, -0.564223),(0.004000, 0.488802, -0.633271),(0.004000, 0.565637, -0.565638),(0.002000, 0.563188, -0.563188),(0.002000, 0.486684, -0.630530),(0.003464, 0.487579, -0.631689),(0.002000, 0.563188, -0.563188),(0.003464, 0.487579, -0.631689),(0.003464, 0.564223, -0.564223),(0.000000, 0.562809, -0.562809),(0.000000, 0.486356, -0.630106),(0.002000, 0.486684, -0.630530),(0.000000, 0.562809, -0.562809),(0.002000, 0.486684, -0.630530),(0.002000, 0.563188, -0.563188),(-0.002000, 0.563188, -0.563188),(-0.002000, 0.486684, -0.630530),(0.000000, 0.486356, -0.630106),(-0.002000, 0.563188, -0.563188),(0.000000, 0.486356, -0.630106),(0.000000, 0.562809, -0.562809),(-0.003464, 0.564223, -0.564223),(-0.003464, 0.487579, -0.631689),(-0.002000, 0.486684, -0.630530),(-0.003464, 0.564223, -0.564223),(-0.002000, 0.486684, -0.630530),(-0.002000, 0.563188, -0.563188),(-0.004000, 0.565637, -0.565638),(-0.004000, 0.488802, -0.633271),(-0.003464, 0.487579, -0.631689),(-0.004000, 0.565637, -0.565638),(-0.003464, 0.487579, -0.631689),(-0.003464, 0.564223, -0.564223),(-0.003464, 0.567052, -0.567052),(-0.003464, 0.490025, -0.634854),(-0.004000, 0.488802, -0.633271),(-0.003464, 0.567052, -0.567052),(-0.004000, 0.488802, -0.633271),(-0.004000, 0.565637, -0.565638),(-0.002000, 0.568087, -0.568087),(-0.002000, 0.490920, -0.636012),(-0.003464, 0.490025, -0.634854),(-0.002000, 0.568087, -0.568087),(-0.003464, 0.490025, -0.634854),(-0.003464, 0.567052, -0.567052),(0.000000, 0.568466, -0.568466),(0.000000, 0.491248, -0.636436),(-0.002000, 0.490920, -0.636012),(0.000000, 0.568466, -0.568466),(-0.002000, 0.490920, -0.636012),(-0.002000, 0.568087, -0.568087),(0.002000, 0.568087, -0.568087),(0.002000, 0.490920, -0.636012),(0.000000, 0.491248, -0.636436),(0.002000, 0.568087, -0.568087),(0.000000, 0.491248, -0.636436),(0.000000, 0.568466, -0.568466),(0.003464, 0.567052, -0.567052),(0.003464, 0.490025, -0.634854),(0.002000, 0.490920, -0.636012),(0.003464, 0.567052, -0.567052),(0.002000, 0.490920, -0.636012),(0.002000, 0.568087, -0.568087),(0.004000, 0.565637, -0.565638),(0.004000, 0.488802, -0.633271),(0.003464, 0.490025, -0.634854),(0.004000, 0.565637, -0.565638),(0.003464, 0.490025, -0.634854),(0.003464, 0.567052, -0.567052),(0.003464, 0.487579, -0.631689),(0.003464, 0.402708, -0.689022),(0.004000, 0.403719, -0.690748),(0.003464, 0.487579, -0.631689),(0.004000, 0.403719, -0.690748),(0.004000, 0.488802, -0.633271),(0.002000, 0.486684, -0.630530),(0.002000, 0.401968, -0.687759),(0.003464, 0.402708, -0.689022),(0.002000, 0.486684, -0.630530),(0.003464, 0.402708, -0.689022),(0.003464, 0.487579, -0.631689),(0.000000, 0.486356, -0.630106),(0.000000, 0.401698, -0.687296),(0.002000, 0.401968, -0.687759),(0.000000, 0.486356, -0.630106),(0.002000, 0.401968, -0.687759),(0.002000, 0.486684, -0.630530),(-0.002000, 0.486684, -0.630530),(-0.002000, 0.401968, -0.687759),(0.000000, 0.401698, -0.687296),(-0.002000, 0.486684, -0.630530),(0.000000, 0.401698, -0.687296),(0.000000, 0.486356, -0.630106),(-0.003464, 0.487579, -0.631689),(-0.003464, 0.402708, -0.689022),(-0.002000, 0.401968, -0.687759),(-0.003464, 0.487579, -0.631689),(-0.002000, 0.401968, -0.687759),(-0.002000, 0.486684, -0.630530),(-0.004000, 0.488802, -0.633271),(-0.004000, 0.403719, -0.690748),(-0.003464, 0.402708, -0.689022),(-0.004000, 0.488802, -0.633271),(-0.003464, 0.402708, -0.689022),(-0.003464, 0.487579, -0.631689),(-0.003464, 0.490025, -0.634854),(-0.003464, 0.404729, -0.692474),(-0.004000, 0.403719, -0.690748),(-0.003464, 0.490025, -0.634854),(-0.004000, 0.403719, -0.690748),(-0.004000, 0.488802, -0.633271),(-0.002000, 0.490920, -0.636012),(-0.002000, 0.405469, -0.693738),(-0.003464, 0.404729, -0.692474),(-0.002000, 0.490920, -0.636012),(-0.003464, 0.404729, -0.692474),(-0.003464, 0.490025, -0.634854),(0.000000, 0.491248, -0.636436),(0.000000, 0.405739, -0.694200),(-0.002000, 0.405469, -0.693738),(0.000000, 0.491248, -0.636436),(-0.002000, 0.405469, -0.693738),(-0.002000, 0.490920, -0.636012),(0.002000, 0.490920, -0.636012),(0.002000, 0.405469, -0.693738),(0.000000, 0.405739, -0.694200),(0.002000, 0.490920, -0.636012),(0.000000, 0.405739, -0.694200),(0.000000, 0.491248, -0.636436),(0.003464, 0.490025, -0.634854),(0.003464, 0.404729, -0.692474),(0.002000, 0.405469, -0.693738),(0.003464, 0.490025, -0.634854),(0.002000, 0.405469, -0.693738),(0.002000, 0.490920, -0.636012),(0.004000, 0.488802, -0.633271),(0.004000, 0.403719, -0.690748),(0.003464, 0.404729, -0.692474),(0.004000, 0.488802, -0.633271),(0.003464, 0.404729, -0.692474),(0.003464, 0.490025, -0.634854),(0.003464, 0.402708, -0.689022),(0.003464, 0.310564, -0.735272),(0.004000, 0.311342, -0.737114),(0.003464, 0.402708, -0.689022),(0.004000, 0.311342, -0.737114),(0.004000, 0.403719, -0.690748),(0.002000, 0.401968, -0.687759),(0.002000, 0.309994, -0.733923),(0.003464, 0.310564, -0.735272),(0.002000, 0.401968, -0.687759),(0.003464, 0.310564, -0.735272),(0.003464, 0.402708, -0.689022),(0.000000, 0.401698, -0.687296),(0.000000, 0.309785, -0.733429),(0.002000, 0.309994, -0.733923),(0.000000, 0.401698, -0.687296),(0.002000, 0.309994, -0.733923),(0.002000, 0.401968, -0.687759),(-0.002000, 0.401968, -0.687759),(-0.002000, 0.309994, -0.733923),(0.000000, 0.309785, -0.733429),(-0.002000, 0.401968, -0.687759),(0.000000, 0.309785, -0.733429),(0.000000, 0.401698, -0.687296),(-0.003464, 0.402708, -0.689022),(-0.003464, 0.310564, -0.735272),(-0.002000, 0.309994, -0.733923),(-0.003464, 0.402708, -0.689022),(-0.002000, 0.309994, -0.733923),(-0.002000, 0.401968, -0.687759),(-0.004000, 0.403719, -0.690748),(-0.004000, 0.311342, -0.737114),(-0.003464, 0.310564, -0.735272),(-0.004000, 0.403719, -0.690748),(-0.003464, 0.310564, -0.735272),(-0.003464, 0.402708, -0.689022),(-0.003464, 0.404729, -0.692474),(-0.003464, 0.312121, -0.738956),(-0.004000, 0.311342, -0.737114),(-0.003464, 0.404729, -0.692474),(-0.004000, 0.311342, -0.737114),(-0.004000, 0.403719, -0.690748),(-0.002000, 0.405469, -0.693738),(-0.002000, 0.312691, -0.740305),(-0.003464, 0.312121, -0.738956),(-0.002000, 0.405469, -0.693738),(-0.003464, 0.312121, -0.738956),(-0.003464, 0.404729, -0.692474),(0.000000, 0.405739, -0.694200),(0.000000, 0.312899, -0.740799),(-0.002000, 0.312691, -0.740305),(0.000000, 0.405739, -0.694200),(-0.002000, 0.312691, -0.740305),(-0.002000, 0.405469, -0.693738),(0.002000, 0.405469, -0.693738),(0.002000, 0.312691, -0.740305),(0.000000, 0.312899, -0.740799),(0.002000, 0.405469, -0.693738),(0.000000, 0.312899, -0.740799),(0.000000, 0.405739, -0.694200),(0.003464, 0.404729, -0.692474),(0.003464, 0.312121, -0.738956),(0.002000, 0.312691, -0.740305),(0.003464, 0.404729, -0.692474),(0.002000, 0.312691, -0.740305),(0.002000, 0.405469, -0.693738),(0.004000, 0.403719, -0.690748),(0.004000, 0.311342, -0.737114),(0.003464, 0.312121, -0.738956),(0.004000, 0.403719, -0.690748),(0.003464, 0.312121, -0.738956),(0.003464, 0.404729, -0.692474),(0.003464, 0.310564, -0.735272),(0.003464, 0.212098, -0.769486),(0.004000, 0.212627, -0.771414),(0.003464, 0.310564, -0.735272),(0.004000, 0.212627, -0.771414),(0.004000, 0.311342, -0.737114),(0.002000, 0.309994, -0.733923),(0.002000, 0.211710, -0.768074),(0.003464, 0.212098, -0.769486),(0.002000, 0.309994, -0.733923),(0.003464, 0.212098, -0.769486),(0.003464, 0.310564, -0.735272),(0.000000, 0.309785, -0.733429),(0.000000, 0.211568, -0.767557),(0.002000, 0.211710, -0.768074),(0.000000, 0.309785, -0.733429),(0.002000, 0.211710, -0.768074),(0.002000, 0.309994, -0.733923),(-0.002000, 0.309994, -0.733923),(-0.002000, 0.211710, -0.768074),(0.000000, 0.211568, -0.767557),(-0.002000, 0.309994, -0.733923),(0.000000, 0.211568, -0.767557),(0.000000, 0.309785, -0.733429),(-0.003464, 0.310564, -0.735272),(-0.003464, 0.212098, -0.769486),(-0.002000, 0.211710, -0.768074),(-0.003464, 0.310564, -0.735272),(-0.002000, 0.211710, -0.768074),(-0.002000, 0.309994, -0.733923),(-0.004000, 0.311342, -0.737114),(-0.004000, 0.212627, -0.771414),(-0.003464, 0.212098, -0.769486),(-0.004000, 0.311342, -0.737114),(-0.003464, 0.212098, -0.769486),(-0.003464, 0.310564, -0.735272),(-0.003464, 0.312121, -0.738956),(-0.003464, 0.213157, -0.773343),(-0.004000, 0.212627, -0.771414),(-0.003464, 0.312121, -0.738956),(-0.004000, 0.212627, -0.771414),(-0.004000, 0.311342, -0.737114),(-0.002000, 0.312691, -0.740305),(-0.002000, 0.213545, -0.774755),(-0.003464, 0.213157, -0.773343),(-0.002000, 0.312691, -0.740305),(-0.003464, 0.213157, -0.773343),(-0.003464, 0.312121, -0.738956),(0.000000, 0.312899, -0.740799),(0.000000, 0.213687, -0.775272),(-0.002000, 0.213545, -0.774755),(0.000000, 0.312899, -0.740799),(-0.002000, 0.213545, -0.774755),(-0.002000, 0.312691, -0.740305),(0.002000, 0.312691, -0.740305),(0.002000, 0.213545, -0.774755),(0.000000, 0.213687, -0.775272),(0.002000, 0.312691, -0.740305),(0.000000, 0.213687, -0.775272),(0.000000, 0.312899, -0.740799),(0.003464, 0.312121, -0.738956),(0.003464, 0.213157, -0.773343),(0.002000, 0.213545, -0.774755),(0.003464, 0.312121, -0.738956),(0.002000, 0.213545, -0.774755),(0.002000, 0.312691, -0.740305),(0.004000, 0.311342, -0.737114),(0.004000, 0.212627, -0.771414),(0.003464, 0.213157, -0.773343),(0.004000, 0.311342, -0.737114),(0.003464, 0.213157, -0.773343),(0.003464, 0.312121, -0.738956),(0.003464, 0.212098, -0.769486),(0.003464, 0.108260, -0.790713),(0.004000, 0.108528, -0.792695),(0.003464, 0.212098, -0.769486),(0.004000, 0.108528, -0.792695),(0.004000, 0.212627, -0.771414),(0.002000, 0.211710, -0.768074),(0.002000, 0.108064, -0.789262),(0.003464, 0.108260, -0.790713),(0.002000, 0.211710, -0.768074),(0.003464, 0.108260, -0.790713),(0.003464, 0.212098, -0.769486),(0.000000, 0.211568, -0.767557),(0.000000, 0.107992, -0.788731),(0.002000, 0.108064, -0.789262),(0.000000, 0.211568, -0.767557),(0.002000, 0.108064, -0.789262),(0.002000, 0.211710, -0.768074),(-0.002000, 0.211710, -0.768074),(-0.002000, 0.108064, -0.789262),(0.000000, 0.107992, -0.788731),(-0.002000, 0.211710, -0.768074),(0.000000, 0.107992, -0.788731),(0.000000, 0.211568, -0.767557),(-0.003464, 0.212098, -0.769486),(-0.003464, 0.108260, -0.790713),(-0.002000, 0.108064, -0.789262),(-0.003464, 0.212098, -0.769486),(-0.002000, 0.108064, -0.789262),(-0.002000, 0.211710, -0.768074),(-0.004000, 0.212627, -0.771414),(-0.004000, 0.108528, -0.792695),(-0.003464, 0.108260, -0.790713),(-0.004000, 0.212627, -0.771414),(-0.003464, 0.108260, -0.790713),(-0.003464, 0.212098, -0.769486),(-0.003464, 0.213157, -0.773343),(-0.003464, 0.108796, -0.794676),(-0.004000, 0.108528, -0.792695),(-0.003464, 0.213157, -0.773343),(-0.004000, 0.108528, -0.792695),(-0.004000, 0.212627, -0.771414),(-0.002000, 0.213545, -0.774755),(-0.002000, 0.108993, -0.796127),(-0.003464, 0.108796, -0.794676),(-0.002000, 0.213545, -0.774755),(-0.003464, 0.108796, -0.794676),(-0.003464, 0.213157, -0.773343),(0.000000, 0.213687, -0.775272),(0.000000, 0.109065, -0.796658),(-0.002000, 0.108993, -0.796127),(0.000000, 0.213687, -0.775272),(-0.002000, 0.108993, -0.796127),(-0.002000, 0.213545, -0.774755),(0.002000, 0.213545, -0.774755),(0.002000, 0.108993, -0.796127),(0.000000, 0.109065, -0.796658),(0.002000, 0.213545, -0.774755),(0.000000, 0.109065, -0.796658),(0.000000, 0.213687, -0.775272),(0.003464, 0.213157, -0.773343),(0.003464, 0.108796, -0.794676),(0.002000, 0.108993, -0.796127),(0.003464, 0.213157, -0.773343),(0.002000, 0.108993, -0.796127),(0.002000, 0.213545, -0.774755),(0.004000, 0.212627, -0.771414),(0.004000, 0.108528, -0.792695),(0.003464, 0.108796, -0.794676),(0.004000, 0.212627, -0.771414),(0.003464, 0.108796, -0.794676),(0.003464, 0.213157, -0.773343),(0.003464, 0.108260, -0.790713),(0.003464, 0.000000, -0.798000),(0.004000, -0.000000, -0.800000),(0.003464, 0.108260, -0.790713),(0.004000, -0.000000, -0.800000),(0.004000, 0.108528, -0.792695),(0.002000, 0.108064, -0.789262),(0.002000, 0.000000, -0.796536),(0.003464, 0.000000, -0.798000),(0.002000, 0.108064, -0.789262),(0.003464, 0.000000, -0.798000),(0.003464, 0.108260, -0.790713),(0.000000, 0.107992, -0.788731),(0.000000, 0.000000, -0.796000),(0.002000, 0.000000, -0.796536),(0.000000, 0.107992, -0.788731),(0.002000, 0.000000, -0.796536),(0.002000, 0.108064, -0.789262),(-0.002000, 0.108064, -0.789262),(-0.002000, 0.000000, -0.796536),(0.000000, 0.000000, -0.796000),(-0.002000, 0.108064, -0.789262),(0.000000, 0.000000, -0.796000),(0.000000, 0.107992, -0.788731),(-0.003464, 0.108260, -0.790713),(-0.003464, 0.000000, -0.798000),(-0.002000, 0.000000, -0.796536),(-0.003464, 0.108260, -0.790713),(-0.002000, 0.000000, -0.796536),(-0.002000, 0.108064, -0.789262),(-0.004000, 0.108528, -0.792695),(-0.004000, -0.000000, -0.800000),(-0.003464, 0.000000, -0.798000),(-0.004000, 0.108528, -0.792695),(-0.003464, 0.000000, -0.798000),(-0.003464, 0.108260, -0.790713),(-0.003464, 0.108796, -0.794676),(-0.003464, -0.000000, -0.802000),(-0.004000, -0.000000, -0.800000),(-0.003464, 0.108796, -0.794676),(-0.004000, -0.000000, -0.800000),(-0.004000, 0.108528, -0.792695),(-0.002000, 0.108993, -0.796127),(-0.002000, -0.000000, -0.803464),(-0.003464, -0.000000, -0.802000),(-0.002000, 0.108993, -0.796127),(-0.003464, -0.000000, -0.802000),(-0.003464, 0.108796, -0.794676),(0.000000, 0.109065, -0.796658),(0.000000, -0.000000, -0.804000),(-0.002000, -0.000000, -0.803464),(0.000000, 0.109065, -0.796658),(-0.002000, -0.000000, -0.803464),(-0.002000, 0.108993, -0.796127),(0.002000, 0.108993, -0.796127),(0.002000, -0.000000, -0.803464),(0.000000, -0.000000, -0.804000),(0.002000, 0.108993, -0.796127),(0.000000, -0.000000, -0.804000),(0.000000, 0.109065, -0.796658),(0.003464, 0.108796, -0.794676),(0.003464, -0.000000, -0.802000),(0.002000, -0.000000, -0.803464),(0.003464, 0.108796, -0.794676),(0.002000, -0.000000, -0.803464),(0.002000, 0.108993, -0.796127),(0.004000, 0.108528, -0.792695),(0.004000, -0.000000, -0.800000),(0.003464, -0.000000, -0.802000),(0.004000, 0.108528, -0.792695),(0.003464, -0.000000, -0.802000),(0.003464, 0.108796, -0.794676),) \ No newline at end of file diff --git a/addons/io_hubs_addon/components/models/spot_light.py b/addons/io_hubs_addon/components/models/spot_light.py new file mode 100644 index 00000000..d4612cfa --- /dev/null +++ b/addons/io_hubs_addon/components/models/spot_light.py @@ -0,0 +1 @@ +SHAPE = ((-0.000000, -0.136614, 0.103780),(-0.000000, -0.273228, 0.213055),(0.081533, -0.273228, 0.196837),(-0.000000, -0.136614, 0.103780),(0.081533, -0.273228, 0.196837),(0.039715, -0.136614, 0.095881),(0.039715, -0.136614, 0.095881),(0.081533, -0.273228, 0.196837),(0.150653, -0.273228, 0.150653),(0.039715, -0.136614, 0.095881),(0.150653, -0.273228, 0.150653),(0.073384, -0.136614, 0.073384),(0.073384, -0.136614, 0.073384),(0.150653, -0.273228, 0.150653),(0.196837, -0.273228, 0.081533),(0.073384, -0.136614, 0.073384),(0.196837, -0.273228, 0.081533),(0.095881, -0.136614, 0.039715),(0.095881, -0.136614, 0.039715),(0.196837, -0.273228, 0.081533),(0.213055, -0.273228, -0.000000),(0.095881, -0.136614, 0.039715),(0.213055, -0.273228, -0.000000),(0.103780, -0.136614, -0.000000),(0.103780, -0.136614, -0.000000),(0.213055, -0.273228, -0.000000),(0.196837, -0.273228, -0.081533),(0.103780, -0.136614, -0.000000),(0.196837, -0.273228, -0.081533),(0.095881, -0.136614, -0.039715),(0.095881, -0.136614, -0.039715),(0.196837, -0.273228, -0.081533),(0.150653, -0.273228, -0.150653),(0.095881, -0.136614, -0.039715),(0.150653, -0.273228, -0.150653),(0.073384, -0.136614, -0.073384),(0.073384, -0.136614, -0.073384),(0.150653, -0.273228, -0.150653),(0.081533, -0.273228, -0.196837),(0.073384, -0.136614, -0.073384),(0.081533, -0.273228, -0.196837),(0.039715, -0.136614, -0.095881),(0.039715, -0.136614, -0.095881),(0.081533, -0.273228, -0.196837),(-0.000000, -0.273228, -0.213055),(0.039715, -0.136614, -0.095881),(-0.000000, -0.273228, -0.213055),(-0.000000, -0.136614, -0.103780),(-0.000000, -0.136614, -0.103780),(-0.000000, -0.273228, -0.213055),(-0.081533, -0.273228, -0.196837),(-0.000000, -0.136614, -0.103780),(-0.081533, -0.273228, -0.196837),(-0.039715, -0.136614, -0.095881),(-0.039715, -0.136614, -0.095881),(-0.081533, -0.273228, -0.196837),(-0.150653, -0.273228, -0.150653),(-0.039715, -0.136614, -0.095881),(-0.150653, -0.273228, -0.150653),(-0.073384, -0.136614, -0.073384),(-0.073384, -0.136614, -0.073384),(-0.150653, -0.273228, -0.150653),(-0.196837, -0.273228, -0.081533),(-0.073384, -0.136614, -0.073384),(-0.196837, -0.273228, -0.081533),(-0.095881, -0.136614, -0.039715),(-0.095881, -0.136614, -0.039715),(-0.196837, -0.273228, -0.081533),(-0.213055, -0.273228, -0.000000),(-0.095881, -0.136614, -0.039715),(-0.213055, -0.273228, -0.000000),(-0.103780, -0.136614, -0.000000),(-0.103780, -0.136614, -0.000000),(-0.213055, -0.273228, -0.000000),(-0.196837, -0.273228, 0.081533),(-0.103780, -0.136614, -0.000000),(-0.196837, -0.273228, 0.081533),(-0.095881, -0.136614, 0.039715),(-0.095881, -0.136614, 0.039715),(-0.196837, -0.273228, 0.081533),(-0.150653, -0.273228, 0.150653),(-0.095881, -0.136614, 0.039715),(-0.150653, -0.273228, 0.150653),(-0.073384, -0.136614, 0.073384),(-0.073384, -0.136614, 0.073384),(-0.150653, -0.273228, 0.150653),(-0.081533, -0.273228, 0.196837),(-0.073384, -0.136614, 0.073384),(-0.081533, -0.273228, 0.196837),(-0.039715, -0.136614, 0.095881),(-0.039715, -0.136614, 0.095881),(-0.081533, -0.273228, 0.196837),(-0.000000, -0.273228, 0.213055),(-0.039715, -0.136614, 0.095881),(-0.000000, -0.273228, 0.213055),(-0.000000, -0.136614, 0.103780),(0.032018, -0.430293, -0.467249),(-0.022558, -0.435454, -0.462855),(-0.031498, -0.404397, -0.492328),(0.032018, -0.430293, -0.467249),(0.006328, -0.438765, -0.458397),(-0.022558, -0.435454, -0.462855),(-0.031498, -0.404397, -0.492328),(-0.006163, -0.395421, -0.499781),(0.021860, -0.399256, -0.496531),(0.038693, -0.413807, -0.483397),(0.021860, -0.399256, -0.496531),(-0.000000, -0.273228, -0.247900),(-0.022558, -0.435454, -0.462855),(-0.038680, -0.421726, -0.476810),(-0.031498, -0.404397, -0.492328),(-0.038680, -0.421726, -0.476810),(-0.022558, -0.435454, -0.462855),(-0.000000, -0.273228, -0.247900),(0.032018, -0.430293, -0.467249),(0.038693, -0.413807, -0.483397),(-0.000000, -0.273228, -0.247900),(0.021860, -0.399256, -0.496531),(0.038693, -0.413807, -0.483397),(0.032018, -0.430293, -0.467249),(-0.031498, -0.404397, -0.492328),(-0.038680, -0.421726, -0.476810),(-0.000000, -0.273228, -0.247900),(0.021860, -0.399256, -0.496531),(0.032018, -0.430293, -0.467249),(-0.031498, -0.404397, -0.492328),(-0.022558, -0.435454, -0.462855),(0.006328, -0.438765, -0.458397),(-0.000000, -0.273228, -0.247900),(0.021860, -0.399256, -0.496531),(-0.006163, -0.395421, -0.499781),(-0.000000, -0.273228, -0.247900),(-0.006163, -0.395421, -0.499781),(-0.031498, -0.404397, -0.492328),(-0.000000, -0.273228, -0.247900),(0.006328, -0.438765, -0.458397),(0.032018, -0.430293, -0.467249),(-0.000000, -0.273228, -0.247900),(-0.467249, -0.430293, -0.032018),(-0.462855, -0.435454, 0.022558),(-0.492328, -0.404397, 0.031498),(-0.467249, -0.430293, -0.032018),(-0.458397, -0.438766, -0.006328),(-0.462855, -0.435454, 0.022558),(-0.492328, -0.404397, 0.031498),(-0.499781, -0.395421, 0.006163),(-0.496531, -0.399256, -0.021860),(-0.483397, -0.413807, -0.038693),(-0.496531, -0.399256, -0.021860),(-0.247900, -0.273228, 0.000000),(-0.462855, -0.435454, 0.022558),(-0.476810, -0.421726, 0.038680),(-0.492328, -0.404397, 0.031498),(-0.476810, -0.421726, 0.038680),(-0.462855, -0.435454, 0.022558),(-0.247900, -0.273228, 0.000000),(-0.467249, -0.430293, -0.032018),(-0.483397, -0.413807, -0.038693),(-0.247900, -0.273228, 0.000000),(-0.496531, -0.399256, -0.021860),(-0.483397, -0.413807, -0.038693),(-0.467249, -0.430293, -0.032018),(-0.492328, -0.404397, 0.031498),(-0.476810, -0.421726, 0.038680),(-0.247900, -0.273228, 0.000000),(-0.496531, -0.399256, -0.021860),(-0.467249, -0.430293, -0.032018),(-0.492328, -0.404397, 0.031498),(-0.462855, -0.435454, 0.022558),(-0.458397, -0.438766, -0.006328),(-0.247900, -0.273228, 0.000000),(-0.496531, -0.399256, -0.021860),(-0.499781, -0.395421, 0.006163),(-0.247900, -0.273228, 0.000000),(-0.499781, -0.395421, 0.006163),(-0.492328, -0.404397, 0.031498),(-0.247900, -0.273228, 0.000000),(-0.458397, -0.438766, -0.006328),(-0.467249, -0.430293, -0.032018),(-0.247900, -0.273228, 0.000000),(-0.032018, -0.430293, 0.467249),(0.022558, -0.435454, 0.462855),(0.031498, -0.404397, 0.492328),(-0.032018, -0.430293, 0.467249),(-0.006328, -0.438766, 0.458397),(0.022558, -0.435454, 0.462855),(0.031498, -0.404397, 0.492328),(0.006163, -0.395421, 0.499781),(-0.021860, -0.399256, 0.496531),(-0.038693, -0.413807, 0.483397),(-0.021860, -0.399256, 0.496531),(0.000000, -0.273228, 0.247900),(0.022558, -0.435454, 0.462855),(0.038680, -0.421727, 0.476810),(0.031498, -0.404397, 0.492328),(0.038680, -0.421727, 0.476810),(0.022558, -0.435454, 0.462855),(0.000000, -0.273228, 0.247900),(-0.032018, -0.430293, 0.467249),(-0.038693, -0.413807, 0.483397),(0.000000, -0.273228, 0.247900),(-0.021860, -0.399256, 0.496531),(-0.038693, -0.413807, 0.483397),(-0.032018, -0.430293, 0.467249),(0.031498, -0.404397, 0.492328),(0.038680, -0.421727, 0.476810),(0.000000, -0.273228, 0.247900),(-0.021860, -0.399256, 0.496531),(-0.032018, -0.430293, 0.467249),(0.031498, -0.404397, 0.492328),(0.022558, -0.435454, 0.462855),(-0.006328, -0.438766, 0.458397),(0.000000, -0.273228, 0.247900),(-0.021860, -0.399256, 0.496531),(0.006163, -0.395421, 0.499781),(0.000000, -0.273228, 0.247900),(0.006163, -0.395421, 0.499781),(0.031498, -0.404397, 0.492328),(0.000000, -0.273228, 0.247900),(-0.006328, -0.438766, 0.458397),(-0.032018, -0.430293, 0.467249),(0.000000, -0.273228, 0.247900),(0.467249, -0.430293, 0.032017),(0.462855, -0.435454, -0.022558),(0.492328, -0.404397, -0.031498),(0.467249, -0.430293, 0.032017),(0.458397, -0.438765, 0.006328),(0.462855, -0.435454, -0.022558),(0.492328, -0.404397, -0.031498),(0.499781, -0.395421, -0.006163),(0.496531, -0.399256, 0.021860),(0.483397, -0.413807, 0.038693),(0.496531, -0.399256, 0.021860),(0.247900, -0.273228, -0.000000),(0.462855, -0.435454, -0.022558),(0.476810, -0.421726, -0.038680),(0.492328, -0.404397, -0.031498),(0.476810, -0.421726, -0.038680),(0.462855, -0.435454, -0.022558),(0.247900, -0.273228, -0.000000),(0.467249, -0.430293, 0.032017),(0.483397, -0.413807, 0.038693),(0.247900, -0.273228, -0.000000),(0.496531, -0.399256, 0.021860),(0.483397, -0.413807, 0.038693),(0.467249, -0.430293, 0.032017),(0.492328, -0.404397, -0.031498),(0.476810, -0.421726, -0.038680),(0.247900, -0.273228, -0.000000),(0.496531, -0.399256, 0.021860),(0.467249, -0.430293, 0.032017),(0.492328, -0.404397, -0.031498),(0.462855, -0.435454, -0.022558),(0.458397, -0.438765, 0.006328),(0.247900, -0.273228, -0.000000),(0.496531, -0.399256, 0.021860),(0.499781, -0.395421, -0.006163),(0.247900, -0.273228, -0.000000),(0.499781, -0.395421, -0.006163),(0.492328, -0.404397, -0.031498),(0.247900, -0.273228, -0.000000),(0.458397, -0.438765, 0.006328),(0.467249, -0.430293, 0.032017),(0.247900, -0.273228, -0.000000),(-0.035475, 0.000000, 0.085645),(-0.039715, -0.136614, 0.095881),(-0.000000, -0.136614, 0.103780),(-0.035475, 0.000000, 0.085645),(-0.000000, -0.136614, 0.103780),(-0.000000, 0.000000, 0.092701),(-0.065549, 0.000000, 0.065550),(-0.073384, -0.136614, 0.073384),(-0.039715, -0.136614, 0.095881),(-0.065549, 0.000000, 0.065550),(-0.039715, -0.136614, 0.095881),(-0.035475, 0.000000, 0.085645),(-0.085645, 0.000000, 0.035475),(-0.095881, -0.136614, 0.039715),(-0.073384, -0.136614, 0.073384),(-0.085645, 0.000000, 0.035475),(-0.073384, -0.136614, 0.073384),(-0.065549, 0.000000, 0.065550),(-0.092701, 0.000000, 0.000000),(-0.103780, -0.136614, -0.000000),(-0.095881, -0.136614, 0.039715),(-0.092701, 0.000000, 0.000000),(-0.095881, -0.136614, 0.039715),(-0.085645, 0.000000, 0.035475),(-0.085645, 0.000000, -0.035475),(-0.095881, -0.136614, -0.039715),(-0.103780, -0.136614, -0.000000),(-0.085645, 0.000000, -0.035475),(-0.103780, -0.136614, -0.000000),(-0.092701, 0.000000, 0.000000),(-0.065549, 0.000000, -0.065549),(-0.073384, -0.136614, -0.073384),(-0.095881, -0.136614, -0.039715),(-0.065549, 0.000000, -0.065549),(-0.095881, -0.136614, -0.039715),(-0.085645, 0.000000, -0.035475),(-0.035475, 0.000000, -0.085645),(-0.039715, -0.136614, -0.095881),(-0.073384, -0.136614, -0.073384),(-0.035475, 0.000000, -0.085645),(-0.073384, -0.136614, -0.073384),(-0.065549, 0.000000, -0.065549),(-0.000000, 0.000000, -0.092701),(-0.000000, -0.136614, -0.103780),(-0.039715, -0.136614, -0.095881),(-0.000000, 0.000000, -0.092701),(-0.039715, -0.136614, -0.095881),(-0.035475, 0.000000, -0.085645),(0.035475, 0.000000, -0.085645),(0.039715, -0.136614, -0.095881),(-0.000000, -0.136614, -0.103780),(0.035475, 0.000000, -0.085645),(-0.000000, -0.136614, -0.103780),(-0.000000, 0.000000, -0.092701),(0.065549, 0.000000, -0.065549),(0.073384, -0.136614, -0.073384),(0.039715, -0.136614, -0.095881),(0.065549, 0.000000, -0.065549),(0.039715, -0.136614, -0.095881),(0.035475, 0.000000, -0.085645),(0.085645, 0.000000, -0.035475),(0.095881, -0.136614, -0.039715),(0.073384, -0.136614, -0.073384),(0.085645, 0.000000, -0.035475),(0.073384, -0.136614, -0.073384),(0.065549, 0.000000, -0.065549),(0.092701, 0.000000, 0.000000),(0.103780, -0.136614, -0.000000),(0.095881, -0.136614, -0.039715),(0.092701, 0.000000, 0.000000),(0.095881, -0.136614, -0.039715),(0.085645, 0.000000, -0.035475),(0.085645, 0.000000, 0.035475),(0.095881, -0.136614, 0.039715),(0.103780, -0.136614, -0.000000),(0.085645, 0.000000, 0.035475),(0.103780, -0.136614, -0.000000),(0.092701, 0.000000, 0.000000),(0.065549, 0.000000, 0.065550),(0.073384, -0.136614, 0.073384),(0.095881, -0.136614, 0.039715),(0.065549, 0.000000, 0.065550),(0.095881, -0.136614, 0.039715),(0.085645, 0.000000, 0.035475),(0.035475, 0.000000, 0.085645),(0.039715, -0.136614, 0.095881),(0.073384, -0.136614, 0.073384),(0.035475, 0.000000, 0.085645),(0.073384, -0.136614, 0.073384),(0.065549, 0.000000, 0.065550),(-0.000000, 0.000000, 0.092701),(-0.000000, -0.136614, 0.103780),(0.039715, -0.136614, 0.095881),(-0.000000, 0.000000, 0.092701),(0.039715, -0.136614, 0.095881),(0.035475, 0.000000, 0.085645),(0.000000, -0.229197, 0.098270),(0.063210, -0.177151, 0.063210),(0.000000, -0.177151, 0.089393),(0.000000, -0.302802, 0.052675),(0.057715, -0.273320, 0.057715),(0.000000, -0.273320, 0.081621),(0.000000, -0.125105, 0.059123),(0.063210, -0.177151, 0.063210),(0.041807, -0.125105, 0.041807),(0.000000, -0.229197, 0.098270),(0.057715, -0.273320, 0.057715),(0.069488, -0.229197, 0.069488),(0.000000, -0.302802, 0.052675),(0.000000, -0.313155, -0.000000),(0.037247, -0.302802, 0.037247),(0.063210, -0.177151, 0.063210),(0.059123, -0.125105, 0.000000),(0.041807, -0.125105, 0.041807),(0.069488, -0.229197, 0.069488),(0.081621, -0.273320, 0.000000),(0.098270, -0.229197, 0.000000),(0.037247, -0.302802, 0.037247),(0.000000, -0.313155, -0.000000),(0.052675, -0.302802, -0.000000),(0.069488, -0.229197, 0.069488),(0.089393, -0.177151, 0.000000),(0.063210, -0.177151, 0.063210),(0.037247, -0.302802, 0.037247),(0.081621, -0.273320, 0.000000),(0.057715, -0.273320, 0.057715),(0.059123, -0.125105, 0.000000),(0.063210, -0.177151, -0.063210),(0.041807, -0.125105, -0.041807),(0.098270, -0.229197, 0.000000),(0.057715, -0.273320, -0.057715),(0.069488, -0.229197, -0.069488),(0.052675, -0.302802, -0.000000),(0.000000, -0.313155, -0.000000),(0.037247, -0.302802, -0.037247),(0.098270, -0.229197, 0.000000),(0.063210, -0.177151, -0.063210),(0.089393, -0.177151, 0.000000),(0.052675, -0.302802, -0.000000),(0.057715, -0.273320, -0.057715),(0.081621, -0.273320, 0.000000),(0.069488, -0.229197, -0.069488),(0.000000, -0.177151, -0.089393),(0.063210, -0.177151, -0.063210),(0.037247, -0.302802, -0.037247),(0.000000, -0.273320, -0.081621),(0.057715, -0.273320, -0.057715),(0.041807, -0.125105, -0.041807),(0.000000, -0.177151, -0.089393),(0.000000, -0.125105, -0.059123),(0.057715, -0.273320, -0.057715),(0.000000, -0.229197, -0.098270),(0.069488, -0.229197, -0.069488),(0.037247, -0.302802, -0.037247),(0.000000, -0.313155, -0.000000),(0.000000, -0.302802, -0.052675),(0.000000, -0.177151, -0.089393),(-0.069487, -0.229197, -0.069488),(-0.063210, -0.177151, -0.063210),(0.000000, -0.302802, -0.052675),(-0.057715, -0.273320, -0.057715),(0.000000, -0.273320, -0.081621),(0.000000, -0.177151, -0.089393),(-0.041807, -0.125105, -0.041807),(0.000000, -0.125105, -0.059123),(0.000000, -0.273320, -0.081621),(-0.069487, -0.229197, -0.069488),(0.000000, -0.229197, -0.098270),(0.000000, -0.302802, -0.052675),(0.000000, -0.313155, -0.000000),(-0.037247, -0.302802, -0.037247),(-0.041807, -0.125105, -0.041807),(-0.089392, -0.177151, 0.000000),(-0.059123, -0.125105, 0.000000),(-0.057715, -0.273320, -0.057715),(-0.098270, -0.229197, 0.000000),(-0.069487, -0.229197, -0.069488),(-0.037247, -0.302802, -0.037247),(0.000000, -0.313155, -0.000000),(-0.052675, -0.302802, -0.000000),(-0.069487, -0.229197, -0.069488),(-0.089392, -0.177151, 0.000000),(-0.063210, -0.177151, -0.063210),(-0.037247, -0.302802, -0.037247),(-0.081621, -0.273320, 0.000000),(-0.057715, -0.273320, -0.057715),(-0.081621, -0.273320, 0.000000),(-0.069487, -0.229197, 0.069488),(-0.098270, -0.229197, 0.000000),(-0.052675, -0.302802, -0.000000),(0.000000, -0.313155, -0.000000),(-0.037247, -0.302802, 0.037247),(-0.089392, -0.177151, 0.000000),(-0.069487, -0.229197, 0.069488),(-0.063210, -0.177151, 0.063210),(-0.052675, -0.302802, -0.000000),(-0.057715, -0.273320, 0.057715),(-0.081621, -0.273320, 0.000000),(-0.089392, -0.177151, 0.000000),(-0.041807, -0.125105, 0.041807),(-0.059123, -0.125105, 0.000000),(-0.069487, -0.229197, 0.069488),(0.000000, -0.177151, 0.089393),(-0.063210, -0.177151, 0.063210),(-0.037247, -0.302802, 0.037247),(0.000000, -0.273320, 0.081621),(-0.057715, -0.273320, 0.057715),(-0.041807, -0.125105, 0.041807),(0.000000, -0.177151, 0.089393),(0.000000, -0.125105, 0.059123),(-0.057715, -0.273320, 0.057715),(0.000000, -0.229197, 0.098270),(-0.069487, -0.229197, 0.069488),(-0.037247, -0.302802, 0.037247),(0.000000, -0.313155, -0.000000),(0.000000, -0.302802, 0.052675),(0.000000, -0.229197, 0.098270),(0.069488, -0.229197, 0.069488),(0.063210, -0.177151, 0.063210),(0.000000, -0.302802, 0.052675),(0.037247, -0.302802, 0.037247),(0.057715, -0.273320, 0.057715),(0.000000, -0.125105, 0.059123),(0.000000, -0.177151, 0.089393),(0.063210, -0.177151, 0.063210),(0.000000, -0.229197, 0.098270),(0.000000, -0.273320, 0.081621),(0.057715, -0.273320, 0.057715),(0.063210, -0.177151, 0.063210),(0.089393, -0.177151, 0.000000),(0.059123, -0.125105, 0.000000),(0.069488, -0.229197, 0.069488),(0.057715, -0.273320, 0.057715),(0.081621, -0.273320, 0.000000),(0.069488, -0.229197, 0.069488),(0.098270, -0.229197, 0.000000),(0.089393, -0.177151, 0.000000),(0.037247, -0.302802, 0.037247),(0.052675, -0.302802, -0.000000),(0.081621, -0.273320, 0.000000),(0.059123, -0.125105, 0.000000),(0.089393, -0.177151, 0.000000),(0.063210, -0.177151, -0.063210),(0.098270, -0.229197, 0.000000),(0.081621, -0.273320, 0.000000),(0.057715, -0.273320, -0.057715),(0.098270, -0.229197, 0.000000),(0.069488, -0.229197, -0.069488),(0.063210, -0.177151, -0.063210),(0.052675, -0.302802, -0.000000),(0.037247, -0.302802, -0.037247),(0.057715, -0.273320, -0.057715),(0.069488, -0.229197, -0.069488),(0.000000, -0.229197, -0.098270),(0.000000, -0.177151, -0.089393),(0.037247, -0.302802, -0.037247),(0.000000, -0.302802, -0.052675),(0.000000, -0.273320, -0.081621),(0.041807, -0.125105, -0.041807),(0.063210, -0.177151, -0.063210),(0.000000, -0.177151, -0.089393),(0.057715, -0.273320, -0.057715),(0.000000, -0.273320, -0.081621),(0.000000, -0.229197, -0.098270),(0.000000, -0.177151, -0.089393),(0.000000, -0.229197, -0.098270),(-0.069487, -0.229197, -0.069488),(0.000000, -0.302802, -0.052675),(-0.037247, -0.302802, -0.037247),(-0.057715, -0.273320, -0.057715),(0.000000, -0.177151, -0.089393),(-0.063210, -0.177151, -0.063210),(-0.041807, -0.125105, -0.041807),(0.000000, -0.273320, -0.081621),(-0.057715, -0.273320, -0.057715),(-0.069487, -0.229197, -0.069488),(-0.041807, -0.125105, -0.041807),(-0.063210, -0.177151, -0.063210),(-0.089392, -0.177151, 0.000000),(-0.057715, -0.273320, -0.057715),(-0.081621, -0.273320, 0.000000),(-0.098270, -0.229197, 0.000000),(-0.069487, -0.229197, -0.069488),(-0.098270, -0.229197, 0.000000),(-0.089392, -0.177151, 0.000000),(-0.037247, -0.302802, -0.037247),(-0.052675, -0.302802, -0.000000),(-0.081621, -0.273320, 0.000000),(-0.081621, -0.273320, 0.000000),(-0.057715, -0.273320, 0.057715),(-0.069487, -0.229197, 0.069488),(-0.089392, -0.177151, 0.000000),(-0.098270, -0.229197, 0.000000),(-0.069487, -0.229197, 0.069488),(-0.052675, -0.302802, -0.000000),(-0.037247, -0.302802, 0.037247),(-0.057715, -0.273320, 0.057715),(-0.089392, -0.177151, 0.000000),(-0.063210, -0.177151, 0.063210),(-0.041807, -0.125105, 0.041807),(-0.069487, -0.229197, 0.069488),(0.000000, -0.229197, 0.098270),(0.000000, -0.177151, 0.089393),(-0.037247, -0.302802, 0.037247),(0.000000, -0.302802, 0.052675),(0.000000, -0.273320, 0.081621),(-0.041807, -0.125105, 0.041807),(-0.063210, -0.177151, 0.063210),(0.000000, -0.177151, 0.089393),(-0.057715, -0.273320, 0.057715),(0.000000, -0.273320, 0.081621),(0.000000, -0.229197, 0.098270),(0.041807, -0.125105, 0.041807),(0.023779, 0.000000, 0.057407),(0.000000, -0.125105, 0.059123),(0.041807, -0.125105, 0.041807),(0.057407, 0.000000, 0.023779),(0.043938, 0.000000, 0.043938),(0.059123, -0.125105, 0.000000),(0.057407, 0.000000, 0.023779),(0.041807, -0.125105, 0.041807),(0.059123, -0.125105, 0.000000),(0.057407, 0.000000, -0.023779),(0.062137, 0.000000, -0.000000),(0.041807, -0.125105, -0.041807),(0.057407, 0.000000, -0.023779),(0.059123, -0.125105, 0.000000),(0.041807, -0.125105, -0.041807),(0.023779, 0.000000, -0.057407),(0.043938, 0.000000, -0.043938),(0.000000, -0.125105, -0.059123),(0.023779, 0.000000, -0.057407),(0.041807, -0.125105, -0.041807),(0.000000, -0.125105, -0.059123),(-0.023779, 0.000000, -0.057407),(0.000000, 0.000000, -0.062137),(-0.041807, -0.125105, -0.041807),(-0.023779, 0.000000, -0.057407),(0.000000, -0.125105, -0.059123),(-0.041807, -0.125105, -0.041807),(-0.057407, 0.000000, -0.023779),(-0.043938, 0.000000, -0.043938),(-0.059123, -0.125105, 0.000000),(-0.057407, 0.000000, -0.023779),(-0.041807, -0.125105, -0.041807),(-0.059123, -0.125105, 0.000000),(-0.057407, 0.000000, 0.023779),(-0.062137, 0.000000, -0.000000),(-0.041807, -0.125105, 0.041807),(-0.057407, 0.000000, 0.023779),(-0.059123, -0.125105, 0.000000),(-0.041807, -0.125105, 0.041807),(-0.023779, 0.000000, 0.057407),(-0.043938, 0.000000, 0.043938),(0.000000, -0.125105, 0.059123),(-0.023779, 0.000000, 0.057407),(-0.041807, -0.125105, 0.041807),(0.000000, -0.125105, 0.059123),(0.023779, 0.000000, 0.057407),(0.000000, 0.000000, 0.062137),(0.041807, -0.125105, 0.041807),(0.043938, 0.000000, 0.043938),(0.023779, 0.000000, 0.057407),(0.059123, -0.125105, 0.000000),(0.062137, 0.000000, -0.000000),(0.057407, 0.000000, 0.023779),(0.041807, -0.125105, -0.041807),(0.043938, 0.000000, -0.043938),(0.057407, 0.000000, -0.023779),(0.000000, -0.125105, -0.059123),(0.000000, 0.000000, -0.062137),(0.023779, 0.000000, -0.057407),(-0.041807, -0.125105, -0.041807),(-0.043938, 0.000000, -0.043938),(-0.023779, 0.000000, -0.057407),(-0.059123, -0.125105, 0.000000),(-0.062137, 0.000000, -0.000000),(-0.057407, 0.000000, -0.023779),(-0.041807, -0.125105, 0.041807),(-0.043938, 0.000000, 0.043938),(-0.057407, 0.000000, 0.023779),(0.000000, -0.125105, 0.059123),(0.000000, 0.000000, 0.062137),(-0.023779, 0.000000, 0.057407),) \ No newline at end of file diff --git a/addons/io_hubs_addon/components/models/video.py b/addons/io_hubs_addon/components/models/video.py new file mode 100644 index 00000000..c2054df6 --- /dev/null +++ b/addons/io_hubs_addon/components/models/video.py @@ -0,0 +1 @@ +SHAPE = ((0.301114, -0.005712, 0.153260),(0.429815, -0.005712, 0.132392),(0.429815, -0.005712, 0.153260),(-0.521948, -0.005712, 0.008985),(-0.473534, -0.005712, 0.003730),(-0.473534, -0.005712, 0.132392),(-0.176476, -0.005712, -0.168574),(-0.186545, -0.005712, -0.169010),(-0.345418, -0.005712, -0.295329),(-0.521948, -0.005712, -0.290074),(-0.521948, -0.005712, -0.316610),(-0.474118, -0.005712, -0.295329),(0.301114, -0.005712, 0.281922),(0.429815, -0.005712, 0.281922),(0.477645, -0.005712, 0.329738),(0.301114, -0.005712, 0.153260),(0.301114, -0.005712, 0.132392),(0.429815, -0.005712, 0.132392),(-0.495405, -0.005712, 0.329738),(-0.521948, -0.005712, 0.329738),(-0.495405, -0.005712, 0.276667),(-0.521948, -0.005712, 0.329738),(-0.521948, -0.005712, 0.008985),(-0.495405, -0.005712, 0.276667),(-0.521948, -0.005712, 0.008985),(-0.473534, -0.005712, -0.017137),(-0.473534, -0.005712, 0.003730),(-0.473534, -0.005712, -0.017137),(-0.344834, -0.005712, -0.017137),(-0.473534, -0.005712, 0.003730),(-0.344834, -0.005712, -0.017137),(-0.344834, -0.005712, 0.003730),(-0.473534, -0.005712, 0.003730),(-0.473534, -0.005712, 0.132392),(-0.474118, -0.005712, 0.153260),(-0.521948, -0.005712, 0.008985),(-0.474118, -0.005712, 0.153260),(-0.474118, -0.005712, 0.281922),(-0.495405, -0.005712, 0.276667),(-0.474118, -0.005712, 0.153260),(-0.495405, -0.005712, 0.276667),(-0.521948, -0.005712, 0.008985),(-0.473534, -0.005712, -0.017137),(-0.521948, -0.005712, 0.008985),(-0.473534, -0.005712, -0.145799),(-0.521948, -0.005712, 0.008985),(-0.521948, -0.005712, -0.290074),(-0.495405, -0.005712, -0.171922),(-0.495405, -0.005712, -0.171922),(-0.474118, -0.005712, -0.166667),(-0.473534, -0.005712, -0.145799),(-0.474118, -0.005712, -0.166667),(-0.345418, -0.005712, -0.166667),(-0.473534, -0.005712, -0.145799),(-0.521948, -0.005712, 0.008985),(-0.495405, -0.005712, -0.171922),(-0.473534, -0.005712, -0.145799),(-0.344834, -0.005712, 0.003730),(-0.344834, -0.005712, -0.017137),(-0.318172, -0.005712, 0.008986),(-0.344834, -0.005712, -0.017137),(-0.344834, -0.005712, -0.145799),(-0.190316, -0.005712, -0.159664),(-0.344834, -0.005712, 0.003730),(-0.318172, -0.005712, 0.008986),(-0.344834, -0.005712, 0.132392),(-0.344834, -0.005712, -0.145799),(-0.473534, -0.005712, -0.145799),(-0.345418, -0.005712, -0.166667),(-0.345418, -0.005712, -0.295329),(-0.474118, -0.005712, -0.295329),(-0.521948, -0.005712, -0.343145),(-0.474118, -0.005712, -0.295329),(-0.521948, -0.005712, -0.316610),(-0.521948, -0.005712, -0.343145),(-0.344834, -0.005712, -0.145799),(-0.345418, -0.005712, -0.166667),(-0.190316, -0.005712, -0.159664),(-0.318172, -0.005712, 0.008986),(-0.344834, -0.005712, -0.017137),(-0.190316, -0.005712, -0.159664),(-0.344834, -0.005712, 0.132392),(-0.318172, -0.005712, 0.008986),(-0.345418, -0.005712, 0.153260),(-0.345418, -0.005712, -0.295329),(-0.521948, -0.005712, -0.343145),(0.301114, -0.005712, -0.295329),(-0.521948, -0.005712, -0.343145),(0.477645, -0.005712, -0.343145),(0.301114, -0.005712, -0.295329),(-0.345418, -0.005712, -0.166667),(-0.345418, -0.005712, -0.295329),(-0.186545, -0.005712, -0.169010),(0.477645, -0.005712, -0.343145),(0.477645, -0.005712, 0.127137),(0.429815, -0.005712, -0.295329),(0.477645, -0.005712, -0.343145),(0.429815, -0.005712, -0.295329),(0.301114, -0.005712, -0.295329),(-0.474118, -0.005712, 0.153260),(-0.473534, -0.005712, 0.132392),(-0.344834, -0.005712, 0.132392),(-0.345418, -0.005712, 0.153260),(-0.474118, -0.005712, 0.153260),(-0.344834, -0.005712, 0.132392),(0.301114, -0.005712, -0.166667),(0.429815, -0.005712, -0.166667),(0.429815, -0.005712, -0.145799),(-0.345418, -0.005712, -0.295329),(0.301114, -0.005712, -0.295329),(-0.176476, -0.005712, -0.168574),(0.301114, -0.005712, -0.295329),(0.301114, -0.005712, -0.166667),(0.132173, -0.005712, -0.028202),(-0.176476, -0.005712, -0.168574),(0.301114, -0.005712, -0.295329),(0.132173, -0.005712, -0.028202),(-0.345418, -0.005712, 0.281922),(-0.345418, -0.005712, 0.153260),(-0.318172, -0.005712, 0.329738),(-0.318172, -0.005712, 0.329738),(-0.345418, -0.005712, 0.153260),(-0.318172, -0.005712, 0.008986),(0.301114, -0.005712, -0.166667),(0.429815, -0.005712, -0.145799),(0.301114, -0.005712, -0.145799),(0.301114, -0.005712, -0.166667),(0.301114, -0.005712, -0.145799),(0.132173, -0.005712, -0.028202),(0.301114, -0.005712, -0.145799),(0.301114, -0.005712, -0.017137),(0.142242, -0.005712, -0.019480),(0.301114, -0.005712, -0.017137),(0.429815, -0.005712, -0.017137),(0.429815, -0.005712, 0.003730),(0.301114, -0.005712, 0.003730),(0.138879, -0.005712, 0.008986),(0.142242, -0.005712, 0.006073),(0.301114, -0.005712, -0.017137),(0.429815, -0.005712, 0.003730),(0.301114, -0.005712, 0.003730),(-0.495405, -0.005712, 0.276667),(-0.474118, -0.005712, 0.281922),(-0.495405, -0.005712, 0.329738),(-0.474118, -0.005712, 0.281922),(-0.345418, -0.005712, 0.281922),(-0.495405, -0.005712, 0.329738),(-0.495405, -0.005712, 0.329738),(-0.345418, -0.005712, 0.281922),(-0.318172, -0.005712, 0.329738),(-0.190316, -0.005712, -0.159664),(-0.190316, -0.005712, 0.008986),(-0.318172, -0.005712, 0.008986),(0.301114, -0.005712, -0.017137),(0.301114, -0.005712, 0.003730),(0.146013, -0.005712, -0.006703),(0.142242, -0.005712, 0.006073),(0.146013, -0.005712, -0.006703),(0.146013, -0.005712, -0.006703),(0.301114, -0.005712, 0.003730),(0.142242, -0.005712, 0.006073),(0.146013, -0.005712, -0.006703),(-0.186545, -0.005712, -0.169010),(-0.190316, -0.005712, -0.159664),(-0.345418, -0.005712, -0.166667),(0.146013, -0.005712, -0.006703),(0.142242, -0.005712, -0.019480),(0.301114, -0.005712, -0.017137),(0.142242, -0.005712, -0.019480),(0.132173, -0.005712, -0.028202),(0.301114, -0.005712, -0.145799),(-0.474118, -0.005712, -0.295329),(-0.474118, -0.005712, -0.166667),(-0.495405, -0.005712, -0.171922),(-0.495405, -0.005712, -0.171922),(-0.521948, -0.005712, -0.290074),(-0.474118, -0.005712, -0.295329),(0.429815, -0.005712, -0.017137),(0.429815, -0.005712, -0.145799),(0.477645, -0.005712, 0.127137),(0.429815, -0.005712, -0.145799),(0.429815, -0.005712, -0.166667),(0.477645, -0.005712, 0.127137),(0.429815, -0.005712, -0.017137),(0.477645, -0.005712, 0.127137),(0.429815, -0.005712, 0.003730),(0.429815, -0.005712, -0.166667),(0.429815, -0.005712, -0.295329),(0.477645, -0.005712, 0.127137),(-0.318172, -0.005712, 0.329738),(-0.318172, -0.005712, 0.008986),(-0.190316, -0.005712, 0.146257),(-0.318172, -0.005712, 0.008986),(-0.190316, -0.005712, 0.008986),(-0.190316, -0.005712, 0.146257),(0.477645, -0.005712, 0.127137),(0.477645, -0.005712, 0.329738),(0.429815, -0.005712, 0.281922),(0.429815, -0.005712, 0.132392),(0.429815, -0.005712, 0.003730),(0.477645, -0.005712, 0.127137),(0.429815, -0.005712, 0.132392),(0.477645, -0.005712, 0.127137),(0.429815, -0.005712, 0.153260),(-0.318172, -0.005712, 0.329738),(-0.190316, -0.005712, 0.146257),(-0.186545, -0.005712, 0.155603),(-0.318172, -0.005712, 0.329738),(-0.186545, -0.005712, 0.155603),(-0.176476, -0.005712, 0.155167),(0.429815, -0.005712, 0.153260),(0.477645, -0.005712, 0.127137),(0.429815, -0.005712, 0.281922),(0.477645, -0.005712, 0.329738),(-0.318172, -0.005712, 0.329738),(0.301114, -0.005712, 0.281922),(-0.318172, -0.005712, 0.329738),(-0.176476, -0.005712, 0.155167),(0.301114, -0.005712, 0.281922),(0.132173, -0.005712, 0.014795),(0.138879, -0.005712, 0.008986),(0.301114, -0.005712, 0.132392),(0.138879, -0.005712, 0.008986),(0.301114, -0.005712, 0.003730),(0.301114, -0.005712, 0.132392),(0.301114, -0.005712, 0.132392),(0.301114, -0.005712, 0.153260),(0.132173, -0.005712, 0.014795),(0.301114, -0.005712, 0.153260),(0.301114, -0.005712, 0.281922),(0.132173, -0.005712, 0.014795),(0.132173, -0.005712, 0.014795),(0.301114, -0.005712, 0.281922),(-0.176476, -0.005712, 0.155167),(0.321729, -0.000000, 0.173868),(0.409200, -0.000000, 0.173868),(0.409200, 0.000000, 0.111784),(-0.521948, 0.000000, 0.008985),(-0.453504, 0.000000, 0.111784),(-0.453504, 0.000000, 0.024338),(-0.146304, -0.000000, -0.119575),(-0.366033, 0.000000, -0.274721),(-0.153372, 0.000000, -0.119881),(-0.521948, -0.000000, -0.290074),(-0.453504, 0.000000, -0.274721),(-0.521948, -0.000000, -0.316610),(0.321729, 0.000000, 0.261314),(0.477645, 0.000000, 0.329738),(0.409200, 0.000000, 0.261314),(0.321729, -0.000000, 0.173868),(0.409200, 0.000000, 0.111784),(0.321729, 0.000000, 0.111784),(-0.495405, 0.000000, 0.329738),(-0.495405, 0.000000, 0.276667),(-0.521948, 0.000000, 0.329738),(-0.521948, 0.000000, 0.329738),(-0.495405, 0.000000, 0.276667),(-0.521948, 0.000000, 0.008985),(-0.521948, 0.000000, 0.008985),(-0.453504, 0.000000, 0.024338),(-0.453504, 0.000000, -0.037746),(-0.453504, 0.000000, -0.037746),(-0.453504, 0.000000, 0.024338),(-0.366033, 0.000000, -0.037746),(-0.366033, 0.000000, -0.037746),(-0.453504, 0.000000, 0.024338),(-0.366033, 0.000000, 0.024338),(-0.453504, 0.000000, 0.111784),(-0.521948, 0.000000, 0.008985),(-0.453504, -0.000000, 0.173868),(-0.453504, -0.000000, 0.173868),(-0.495405, 0.000000, 0.276667),(-0.453504, -0.000000, 0.261314),(-0.453504, -0.000000, 0.173868),(-0.521948, 0.000000, 0.008985),(-0.495405, 0.000000, 0.276667),(-0.453504, 0.000000, -0.037746),(-0.453504, 0.000000, -0.125191),(-0.521948, 0.000000, 0.008985),(-0.521948, 0.000000, 0.008985),(-0.495405, 0.000000, -0.171922),(-0.521948, -0.000000, -0.290074),(-0.495405, 0.000000, -0.171922),(-0.453504, 0.000000, -0.125191),(-0.453504, 0.000000, -0.187275),(-0.453504, 0.000000, -0.187275),(-0.453504, 0.000000, -0.125191),(-0.366033, 0.000000, -0.187275),(-0.521948, 0.000000, 0.008985),(-0.453504, 0.000000, -0.125191),(-0.495405, 0.000000, -0.171922),(-0.366033, 0.000000, 0.024338),(-0.318172, 0.000000, 0.008986),(-0.366033, 0.000000, -0.037746),(-0.366033, 0.000000, -0.037746),(-0.156019, 0.000000, -0.113321),(-0.366033, 0.000000, -0.125191),(-0.366033, 0.000000, 0.024338),(-0.366033, 0.000000, 0.111784),(-0.318172, 0.000000, 0.008986),(-0.366033, 0.000000, -0.125191),(-0.366033, 0.000000, -0.187275),(-0.453504, 0.000000, -0.125191),(-0.366033, 0.000000, -0.274721),(-0.521948, 0.000000, -0.343145),(-0.453504, 0.000000, -0.274721),(-0.453504, 0.000000, -0.274721),(-0.521948, 0.000000, -0.343145),(-0.521948, -0.000000, -0.316610),(-0.366033, 0.000000, -0.125191),(-0.156019, 0.000000, -0.113321),(-0.366033, 0.000000, -0.187275),(-0.318172, 0.000000, 0.008986),(-0.156019, 0.000000, -0.113321),(-0.366033, 0.000000, -0.037746),(-0.366033, 0.000000, 0.111784),(-0.366033, -0.000000, 0.173868),(-0.318172, 0.000000, 0.008986),(-0.366033, 0.000000, -0.274721),(0.321729, -0.000000, -0.274721),(-0.521948, 0.000000, -0.343145),(-0.521948, 0.000000, -0.343145),(0.321729, -0.000000, -0.274721),(0.477645, 0.000000, -0.343145),(-0.366033, 0.000000, -0.187275),(-0.153372, 0.000000, -0.119881),(-0.366033, 0.000000, -0.274721),(0.477645, 0.000000, -0.343145),(0.409200, -0.000000, -0.274721),(0.477645, 0.000000, 0.127137),(0.477645, 0.000000, -0.343145),(0.321729, -0.000000, -0.274721),(0.409200, -0.000000, -0.274721),(-0.453504, -0.000000, 0.173868),(-0.366033, 0.000000, 0.111784),(-0.453504, 0.000000, 0.111784),(-0.366033, -0.000000, 0.173868),(-0.366033, 0.000000, 0.111784),(-0.453504, -0.000000, 0.173868),(0.321729, -0.000000, -0.187275),(0.409200, -0.000000, -0.125191),(0.409200, 0.000000, -0.187275),(-0.366033, 0.000000, -0.274721),(-0.146304, -0.000000, -0.119575),(0.321729, -0.000000, -0.274721),(0.321729, -0.000000, -0.274721),(0.070346, -0.000000, -0.021043),(0.321729, -0.000000, -0.187275),(-0.146304, -0.000000, -0.119575),(0.070346, -0.000000, -0.021043),(0.321729, -0.000000, -0.274721),(-0.366033, -0.000000, 0.261314),(-0.318172, 0.000000, 0.329738),(-0.366033, -0.000000, 0.173868),(-0.318172, 0.000000, 0.329738),(-0.318172, 0.000000, 0.008986),(-0.366033, -0.000000, 0.173868),(0.321729, -0.000000, -0.187275),(0.321729, -0.000000, -0.125191),(0.409200, -0.000000, -0.125191),(0.321729, -0.000000, -0.187275),(0.070346, -0.000000, -0.021043),(0.321729, -0.000000, -0.125191),(0.321729, -0.000000, -0.125191),(0.077414, -0.000000, -0.014921),(0.321729, -0.000000, -0.037746),(0.321729, -0.000000, -0.037746),(0.409200, 0.000000, 0.024338),(0.409200, 0.000000, -0.037746),(0.321729, 0.000000, 0.024338),(0.077414, 0.000000, 0.003015),(0.075054, 0.000000, 0.005060),(0.321729, -0.000000, -0.037746),(0.321729, 0.000000, 0.024338),(0.409200, 0.000000, 0.024338),(-0.495405, 0.000000, 0.276667),(-0.495405, 0.000000, 0.329738),(-0.453504, -0.000000, 0.261314),(-0.453504, -0.000000, 0.261314),(-0.495405, 0.000000, 0.329738),(-0.366033, -0.000000, 0.261314),(-0.495405, 0.000000, 0.329738),(-0.318172, 0.000000, 0.329738),(-0.366033, -0.000000, 0.261314),(-0.156019, 0.000000, -0.113321),(-0.318172, 0.000000, 0.008986),(-0.156019, 0.000000, 0.005060),(0.321729, -0.000000, -0.037746),(0.080061, -0.000000, -0.005953),(0.321729, 0.000000, 0.024338),(0.077414, 0.000000, 0.003015),(0.080061, -0.000000, -0.005953),(0.080061, -0.000000, -0.005953),(0.321729, 0.000000, 0.024338),(0.080061, -0.000000, -0.005953),(0.077414, 0.000000, 0.003015),(-0.153372, 0.000000, -0.119881),(-0.366033, 0.000000, -0.187275),(-0.156019, 0.000000, -0.113321),(0.080061, -0.000000, -0.005953),(0.321729, -0.000000, -0.037746),(0.077414, -0.000000, -0.014921),(0.077414, -0.000000, -0.014921),(0.321729, -0.000000, -0.125191),(0.070346, -0.000000, -0.021043),(-0.453504, 0.000000, -0.274721),(-0.495405, 0.000000, -0.171922),(-0.453504, 0.000000, -0.187275),(-0.495405, 0.000000, -0.171922),(-0.453504, 0.000000, -0.274721),(-0.521948, -0.000000, -0.290074),(0.409200, 0.000000, -0.037746),(0.477645, 0.000000, 0.127137),(0.409200, -0.000000, -0.125191),(0.409200, -0.000000, -0.125191),(0.477645, 0.000000, 0.127137),(0.409200, 0.000000, -0.187275),(0.409200, 0.000000, -0.037746),(0.409200, 0.000000, 0.024338),(0.477645, 0.000000, 0.127137),(0.409200, 0.000000, -0.187275),(0.477645, 0.000000, 0.127137),(0.409200, -0.000000, -0.274721),(-0.318172, 0.000000, 0.329738),(-0.156019, 0.000000, 0.101415),(-0.318172, 0.000000, 0.008986),(-0.318172, 0.000000, 0.008986),(-0.156019, 0.000000, 0.101415),(-0.156019, 0.000000, 0.005060),(0.477645, 0.000000, 0.127137),(0.409200, 0.000000, 0.261314),(0.477645, 0.000000, 0.329738),(0.409200, 0.000000, 0.111784),(0.477645, 0.000000, 0.127137),(0.409200, 0.000000, 0.024338),(0.409200, 0.000000, 0.111784),(0.409200, -0.000000, 0.173868),(0.477645, 0.000000, 0.127137),(-0.318172, 0.000000, 0.329738),(-0.153372, 0.000000, 0.107975),(-0.156019, 0.000000, 0.101415),(-0.318172, 0.000000, 0.329738),(-0.146304, 0.000000, 0.107669),(-0.153372, 0.000000, 0.107975),(0.409200, -0.000000, 0.173868),(0.409200, 0.000000, 0.261314),(0.477645, 0.000000, 0.127137),(0.477645, 0.000000, 0.329738),(0.321729, 0.000000, 0.261314),(-0.318172, 0.000000, 0.329738),(-0.318172, 0.000000, 0.329738),(0.321729, 0.000000, 0.261314),(-0.146304, 0.000000, 0.107669),(0.070346, 0.000000, 0.009137),(0.321729, 0.000000, 0.111784),(0.075054, 0.000000, 0.005060),(0.075054, 0.000000, 0.005060),(0.321729, 0.000000, 0.111784),(0.321729, 0.000000, 0.024338),(0.321729, 0.000000, 0.111784),(0.070346, 0.000000, 0.009137),(0.321729, -0.000000, 0.173868),(0.321729, -0.000000, 0.173868),(0.070346, 0.000000, 0.009137),(0.321729, 0.000000, 0.261314),(0.070346, 0.000000, 0.009137),(-0.146304, 0.000000, 0.107669),(0.321729, 0.000000, 0.261314),) \ No newline at end of file diff --git a/addons/io_hubs_addon/components/operators.py b/addons/io_hubs_addon/components/operators.py index 51747ad4..58d6a9f2 100644 --- a/addons/io_hubs_addon/components/operators.py +++ b/addons/io_hubs_addon/components/operators.py @@ -1,12 +1,14 @@ import bpy -from bpy.props import StringProperty +from bpy.props import StringProperty, IntProperty, BoolProperty from bpy.types import Operator from functools import reduce -from .types import PanelType -from .utils import get_object_source, dash_to_title, has_component, add_component, remove_component +from .types import PanelType, MigrationType +from .utils import get_object_source, dash_to_title, has_component, add_component, remove_component, wrap_text, display_wrapped_text from .components_registry import get_components_registry, get_components_icons from ..preferences import get_addon_pref +from .handlers import migrate_components +from .gizmos import update_gizmos class AddHubsComponent(Operator): @@ -25,7 +27,9 @@ def execute(self, context): obj = get_object_source(context, self.panel_type) add_component(obj, self.component_name) + # Redraw panel and trigger depsgraph update context.area.tag_redraw() + context.window_manager.update_tag() return {'FINISHED'} def invoke(self, context, event): @@ -34,7 +38,8 @@ def invoke(self, context, event): # Filter components that are not targeted to this object type or their poll method call returns False def filter_source_type(cmp): (_, component_class) = cmp - return not component_class.is_dep_only() and PanelType(panel_type) in component_class.get_panel_type() and component_class.poll(context, PanelType(panel_type)) + host = get_object_source(context, panel_type) + return not component_class.is_dep_only() and PanelType(panel_type) in component_class.get_panel_type() and component_class.poll(PanelType(panel_type), host, ob=context.object) components_registry = get_components_registry() components_icons = get_components_icons() @@ -121,7 +126,8 @@ def draw(self, context): text=component_display_name, icon_value=components_icons[icon].icon_id) else: op = column.operator( - AddHubsComponent.bl_idname, text=component_display_name, icon_value=components_icons[icon].icon_id) + AddHubsComponent.bl_idname, text=component_display_name, + icon_value=components_icons[icon].icon_id) op.component_name = component_name op.panel_type = panel_type else: @@ -176,15 +182,287 @@ def execute(self, context): return obj = get_object_source(context, self.panel_type) remove_component(obj, self.component_name) + + # Redraw panel and trigger depsgraph update context.area.tag_redraw() + context.window_manager.update_tag() + return {'FINISHED'} + + +class MigrateHubsComponents(Operator): + bl_idname = "wm.migrate_hubs_components" + bl_label = "Migrate Hubs Components" + bl_description = "Loops through all objects/components and attempts to migrate them to the current version based on their internal version" + bl_options = {'REGISTER', 'UNDO'} + + # For some reason using a default value with this property doesn't work properly, so the value must be manually specified each time. + is_registration: BoolProperty(options={'HIDDEN'}) + + def execute(self, context): + if self.is_registration: + migrate_components(MigrationType.REGISTRATION, do_beta_versioning=True) + else: + migrate_components(MigrationType.LOCAL, do_beta_versioning=True) + + return {'FINISHED'} + + +class UpdateHubsGizmos(Operator): + bl_idname = "wm.update_hubs_gizmos" + bl_label = "Refresh Hubs Gizmos" + bl_description = "Force a re-evaluation of all objects/components and update their gizmos" + + def execute(self, context): + update_gizmos() return {'FINISHED'} +class ViewLastReport(Operator): + bl_idname = "wm.hubs_view_last_report" + bl_label = "View Last Hubs Report" + bl_description = "Show the latest Hubs report in the Hubs Report Viewer" + + @classmethod + def poll(cls, context): + wm = context.window_manager + return wm.hubs_report_last_title and wm.hubs_report_last_report_string + + def execute(self, context): + wm = context.window_manager + title = wm.hubs_report_last_title + report_string = wm.hubs_report_last_report_string + bpy.ops.wm.hubs_report_viewer('INVOKE_DEFAULT', title=title, report_string=report_string) + return {'FINISHED'} + + +class ViewReportInInfoEditor(Operator): + bl_idname = "wm.hubs_view_report_in_info_editor" + bl_label = "View Report in the Info Editor" + bl_description = "Save the Hubs report to the Info Editor and open it for viewing" + + title: StringProperty(default="") + report_string: StringProperty() + + def highlight_info_report(self): + context_override = bpy.context.copy() + for window in bpy.context.window_manager.windows: + for area in window.screen.areas: + if area.type == 'INFO': + for region in area.regions: + if region.type == 'WINDOW': + context_override['area'] = area + context_override['region'] = region + # Find and select the last info message for each Info editor. + index = 0 + while bpy.ops.info.select_pick( + context_override, report_index=index, extend=False) != {'CANCELLED'}: + index += 1 + bpy.ops.info.select_pick(context_override, report_index=index, extend=False) + + def execute(self, context): + messages = split_and_prefix_report_messages(self.report_string) + info_report_string = '\n'.join([message.replace('\n', ' ') for message in messages]) + self.report({'INFO'}, f"Hubs {self.title}\n{info_report_string}\nEnd of Hubs {self.title}") + bpy.ops.screen.info_log_show() + bpy.app.timers.register(self.highlight_info_report) + return {'FINISHED'} + + +class ReportScroller(Operator): + bl_idname = "wm.hubs_report_scroller" + bl_label = "Hubs Report Scroller" + + increment: IntProperty() + maximum: IntProperty() + + @classmethod + def description(self, context, properties): + if properties.increment == -1: + return "Scroll up one line.\nShift+Click to scroll to the beginning" + if properties.increment == 1: + return "Scroll down one line.\nShift+Click to scroll to the end" + + def invoke(self, context, event): + wm = context.window_manager + + if event.shift: # Jump to beginning/end + if self.increment == -1: + wm.hubs_report_scroll_index = 0 + wm.hubs_report_scroll_percentage = 0 + return {'FINISHED'} + else: # 1 + wm.hubs_report_scroll_index = self.maximum + wm.hubs_report_scroll_percentage = 100 + return {'FINISHED'} + + else: # Increment/Decrement + current_scroll_index = wm.hubs_report_scroll_index + if current_scroll_index + self.increment < 0: + return {'CANCELLED'} + elif current_scroll_index + self.increment > self.maximum: + return {'CANCELLED'} + else: + wm.hubs_report_scroll_index += self.increment + current_scroll_index = wm.hubs_report_scroll_index + wm.hubs_report_scroll_percentage = current_scroll_index * 100 // self.maximum + return {'FINISHED'} + + +class ReportViewer(Operator): + bl_idname = "wm.hubs_report_viewer" + bl_label = "Hubs Report Viewer" + + title: StringProperty(default="") + report_string: StringProperty() + + def draw(self, context): + layout = self.layout + + layout.label(text=self.title) + + row = layout.row() + column = row.column() + box = column.box() + + wm = context.window_manager + report_length = len(self.messages) + maximum_scrolling = len(self.report_display_blocks) - 1 + start_index = wm.hubs_report_scroll_index + block_messages = self.report_display_blocks[start_index] + + displayed_lines = 0 + message_column = box.column() + for message in block_messages: + display_wrapped_text(message_column, message, heading_icon='INFO') + displayed_lines += len(message) + + # Add padding to the bottom of the report if needed (accounts for the formatting changes when there are only a few messages in the report). + while displayed_lines < self.lines_to_show: + display_wrapped_text(message_column, [""]) + displayed_lines += 1 + + scroll_column = row.column() + scroll_column.enabled = report_length > len(block_messages) + + scroll_up = scroll_column.row() + scroll_up.enabled = start_index > 0 + op = scroll_up.operator(ReportScroller.bl_idname, text="", icon="TRIA_UP") + op.increment = -1 + op.maximum = maximum_scrolling + + scroll_down = scroll_column.row() + scroll_down.enabled = start_index < maximum_scrolling + op = scroll_down.operator(ReportScroller.bl_idname, text="", icon="TRIA_DOWN") + op.increment = 1 + op.maximum = maximum_scrolling + + total_messages = column.row() + total_messages.alignment = 'RIGHT' + total_messages.label(text=f"{report_length} Messages") + + scroll_percentage = column.row() + scroll_percentage.enabled = False + scroll_percentage.prop(wm, "hubs_report_scroll_percentage", slider=True) + + layout.separator() + + op = layout.operator(ViewReportInInfoEditor.bl_idname) + op.title = self.title + op.report_string = self.report_string + + def execute(self, context): + return {'FINISHED'} + + def init_report_display_blocks(self): + start_index = 0 + self.report_display_blocks = {} + + final_block = False + while start_index < len(self.messages) and not final_block: + block_messages = [] + for message in self.messages[start_index:]: + wrapped_message = wrap_text(message, max_length=90) + block_messages.append(wrapped_message) + + last_message = None + while True: + if len(block_messages) == 1: + break + + if len(block_messages) > self.messages_to_show: + last_message = block_messages.pop() + elif sum([len(message) + 1 for message in block_messages]) - 1 > self.lines_to_show: + # The +1 and -1 are used to account for padding lines between messages. + last_message = block_messages.pop() + else: + break + + if last_message is None: + final_block = True + + current_block_lines = sum([len(message) for message in block_messages]) + needed_padding_lines = self.lines_to_show - current_block_lines + + message_iter = iter(block_messages) + while needed_padding_lines > 0: + try: + next(message_iter).append("") + except StopIteration: + if len(self.messages) < 4: + # Evenly spacing the messages doesn't look good if there are only a few messages in the report, so let any extra padding be added to the end when it's displayed. + break + + message_iter = reversed(block_messages) + next(message_iter).append("") + + needed_padding_lines += -1 + + self.report_display_blocks[start_index] = block_messages + start_index += 1 + + def invoke(self, context, event): + wm = context.window_manager + self.messages = split_and_prefix_report_messages(self.report_string) + self.lines_to_show = 15 + self.messages_to_show = 5 + wm.hubs_report_scroll_index = 0 + wm.hubs_report_scroll_percentage = 0 + wm.hubs_report_last_title = self.title + wm.hubs_report_last_report_string = self.report_string + self.init_report_display_blocks() + return wm.invoke_props_dialog(self, width=600) + + +def split_and_prefix_report_messages(report_string): + return [f"{i+1:02d} {message}" for i, message in enumerate(report_string.split("\n\n"))] + + def register(): bpy.utils.register_class(AddHubsComponent) bpy.utils.register_class(RemoveHubsComponent) + bpy.utils.register_class(MigrateHubsComponents) + bpy.utils.register_class(UpdateHubsGizmos) + bpy.utils.register_class(ReportViewer) + bpy.utils.register_class(ReportScroller) + bpy.utils.register_class(ViewLastReport) + bpy.utils.register_class(ViewReportInInfoEditor) + bpy.types.WindowManager.hubs_report_scroll_index = IntProperty(default=0, min=0) + bpy.types.WindowManager.hubs_report_scroll_percentage = IntProperty( + name="Scroll Position", default=0, min=0, max=100, subtype='PERCENTAGE') + bpy.types.WindowManager.hubs_report_last_title = StringProperty() + bpy.types.WindowManager.hubs_report_last_report_string = StringProperty() def unregister(): bpy.utils.unregister_class(AddHubsComponent) bpy.utils.unregister_class(RemoveHubsComponent) + bpy.utils.unregister_class(MigrateHubsComponents) + bpy.utils.unregister_class(UpdateHubsGizmos) + bpy.utils.unregister_class(ReportViewer) + bpy.utils.unregister_class(ReportScroller) + bpy.utils.unregister_class(ViewLastReport) + bpy.utils.unregister_class(ViewReportInInfoEditor) + del bpy.types.WindowManager.hubs_report_scroll_index + del bpy.types.WindowManager.hubs_report_scroll_percentage + del bpy.types.WindowManager.hubs_report_last_title + del bpy.types.WindowManager.hubs_report_last_report_string diff --git a/addons/io_hubs_addon/components/types.py b/addons/io_hubs_addon/components/types.py index e9729d95..c28acc6c 100644 --- a/addons/io_hubs_addon/components/types.py +++ b/addons/io_hubs_addon/components/types.py @@ -5,7 +5,6 @@ class PanelType(Enum): OBJECT = 'object' SCENE = 'scene' MATERIAL = 'material' - OBJECT_DATA = 'data' BONE = 'bone' @@ -24,3 +23,9 @@ class Category(Enum): MISC = 'Misc' LIGHTS = 'Lights' MEDIA = 'Media' + + +class MigrationType(Enum): + GLOBAL = 'global' + LOCAL = 'local' + REGISTRATION = 'registration' diff --git a/addons/io_hubs_addon/components/panels.py b/addons/io_hubs_addon/components/ui.py similarity index 63% rename from addons/io_hubs_addon/components/panels.py rename to addons/io_hubs_addon/components/ui.py index 73aef679..ab8d8c1b 100644 --- a/addons/io_hubs_addon/components/panels.py +++ b/addons/io_hubs_addon/components/ui.py @@ -1,4 +1,5 @@ import bpy +from bpy.props import StringProperty from .types import PanelType from .components_registry import get_component_by_name, get_components_registry from .utils import get_object_source, dash_to_title @@ -16,7 +17,18 @@ def draw_component(panel, context, obj, row, component_item): component_class = get_component_by_name(component_name) if component_class: panel_type = PanelType(panel.bl_context) - if not panel_type in component_class.get_panel_type(): + if panel_type not in component_class.get_panel_type() or not component_class.poll(panel_type, obj, ob=context.object): + col = row.box().column() + top_row = col.row() + top_row.label( + text=f"Unsupported host for component '{component_class.get_display_name()}'", icon="ERROR") + remove_component_operator = top_row.operator( + "wm.remove_hubs_component", + text="", + icon="X" + ) + remove_component_operator.component_name = component_name + remove_component_operator.panel_type = panel.bl_context return component_id = component_class.get_id() @@ -86,6 +98,25 @@ def draw_components_list(panel, context): layout.separator() +def add_link_indicator(layout, datablock): + if datablock.library: + library = datablock.library + icon = 'LINKED' + else: + library = datablock.override_library.reference.library + icon = 'LIBRARY_DATA_OVERRIDE' + + tooltip = ( + f"{datablock.name}\n" + f"\n" + f"Source Library:\n" + f"[{library.name}]\n" + f"{library.filepath}" + ) + layout.operator("ui.hubs_tooltip_label", text='', + icon=icon).tooltip = tooltip + + class HubsObjectPanel(bpy.types.Panel): bl_label = "Hubs" bl_idname = "OBJECT_PT_hubs" @@ -133,11 +164,49 @@ def draw(self, context): draw_components_list(self, context) +class TooltipLabel(bpy.types.Operator): + bl_idname = "ui.hubs_tooltip_label" + bl_label = "---" + + tooltip: StringProperty(default=" ") + + @ classmethod + def description(cls, context, properties): + return properties.tooltip + + def execute(self, context): + return {'CANCELLED'} + + +def window_menu_addition(self, context): + layout = self.layout + layout.separator() + layout.operator("wm.hubs_view_last_report") + + +def object_menu_addition(self, context): + layout = self.layout + layout.separator() + op = layout.operator("wm.migrate_hubs_components") + op.is_registration = False + + +def gizmo_display_popover_addition(self, context): + layout = self.layout + layout.separator() + layout.operator("wm.update_hubs_gizmos") + + def register(): bpy.utils.register_class(HubsObjectPanel) bpy.utils.register_class(HubsScenePanel) bpy.utils.register_class(HubsMaterialPanel) bpy.utils.register_class(HubsBonePanel) + bpy.utils.register_class(TooltipLabel) + + bpy.types.TOPBAR_MT_window.append(window_menu_addition) + bpy.types.VIEW3D_MT_object.append(object_menu_addition) + bpy.types.VIEW3D_PT_gizmo_display.append(gizmo_display_popover_addition) def unregister(): @@ -145,3 +214,8 @@ def unregister(): bpy.utils.unregister_class(HubsScenePanel) bpy.utils.unregister_class(HubsMaterialPanel) bpy.utils.unregister_class(HubsBonePanel) + bpy.utils.unregister_class(TooltipLabel) + + bpy.types.TOPBAR_MT_window.remove(window_menu_addition) + bpy.types.VIEW3D_MT_object.remove(object_menu_addition) + bpy.types.VIEW3D_PT_gizmo_display.remove(gizmo_display_popover_addition) diff --git a/addons/io_hubs_addon/components/utils.py b/addons/io_hubs_addon/components/utils.py index 2bfe10f0..b1545348 100644 --- a/addons/io_hubs_addon/components/utils.py +++ b/addons/io_hubs_addon/components/utils.py @@ -1,7 +1,14 @@ import bpy from .components_registry import get_component_by_name from .gizmos import update_gizmos +from .types import PanelType from mathutils import Vector +from contextlib import contextmanager +import os +import sys +import platform +import ctypes +import ctypes.util V_S1 = Vector((1.0, 1.0, 1.0)) @@ -12,7 +19,9 @@ def add_component(obj, component_name): component_class = get_component_by_name(component_name) if component_class: - update_gizmos() + if 'create_gizmo' in component_class.__dict__: + update_gizmos() + component_class.init_instance_version(obj) component_class.init(obj) for dep_name in component_class.get_deps(): dep_class = get_component_by_name(dep_name) @@ -21,7 +30,7 @@ def add_component(obj, component_name): if not dep_exists: add_component(obj, dep_name) else: - print("Dependecy '%s' from module '%s' not registered" % + print("Dependency '%s' from module '%s' not registered" % (dep_name, component_name)) @@ -33,7 +42,8 @@ def remove_component(obj, component_name): component_class = get_component_by_name(component_name) if component_class: del obj[component_class.get_id()] - update_gizmos() + if 'create_gizmo' in component_class.__dict__: + update_gizmos() for dep_name in component_class.get_deps(): dep_class = get_component_by_name(dep_name) dep_name = dep_class.get_name() @@ -94,7 +104,7 @@ def children_recurse(ob, result): def children_recursive(ob): - if bpy.app.version < (3, 0, 0): + if bpy.app.version < (3, 1, 0): ret = [] children_recurse(ob, ret) return ret @@ -112,3 +122,174 @@ def redraw_component_ui(context): for area in window.screen.areas: if area.type == 'PROPERTIES': area.tag_redraw() + + +def is_linked(datablock): + if not datablock: + return False + return bool(datablock.library or datablock.override_library) + + +# Note: Set up stuff specifically for C FILE pointers so that they aren't truncated to 32 bits on 64 bit systems. +class _FILE(ctypes.Structure): + """opaque C FILE type""" + + +if platform.system() == "Windows": + try: + # Get stdio from the CRT Blender's using (currently ships with Blender) + libc = ctypes.windll.LoadLibrary('api-ms-win-crt-stdio-l1-1-0') + + try: # Attempt to set up flushing for the C stdout. + libc.__acrt_iob_func.restype = ctypes.POINTER(_FILE) + stdout = libc.__acrt_iob_func(1) + + def c_fflush(): + try: + libc.fflush(stdout) + except BaseException as e: + print("Error: Unable to flush the C stdout") + + except BaseException as e: # Fall back to flushing all open output streams. + print("Warning: Couldn't get the C stdout") + + def c_fflush(): + try: + libc.fflush(None) + except BaseException as e: + print("Error: Unable to flush the C stdout") + + # Warn and fail gracefully. Flushing the C stdout is required because Windows switches to full buffering when redirected. + except BaseException as e: + print("Error: Unable to find the C runtime.") + + def c_fflush(): + print("Error: Unable to flush the C stdout") + +else: # Linux/Mac + try: # get the C runtime + libc = ctypes.cdll.LoadLibrary(ctypes.util.find_library('c')) + + try: # Attempt to set up flushing for the C stdout. + if platform.system() == "Linux": + c_stdout = ctypes.POINTER(_FILE).in_dll(libc, 'stdout') + else: # Mac + c_stdout = ctypes.POINTER(_FILE).in_dll(libc, '__stdoutp') + + def c_fflush(): + try: + libc.fflush(c_stdout) + except BaseException as e: + print("Warning: Unable to flush the C stdout.") + + # The C stdout wasn't found. This is unlikely to happen, but if it does then just skip flushing since Linux/Mac doesn't seem to strictly require a C-level flush to work. + except BaseException as e: + print("Warning: Couldn't get the C stdout.") + + def c_fflush(): + pass + + # The C runtime wasn't found. This is unlikely to happen, but if it does then just skip flushing since Linux/Mac doesn't seem to strictly require a C-level flush to work. + except BaseException as e: + print("Warning: Unable to find the C runtime.") + + def c_fflush(): + pass + + +@contextmanager +def redirect_c_stdout(binary_stream): + stdout_file_descriptor = sys.stdout.fileno() + original_stdout_file_descriptor_copy = os.dup(stdout_file_descriptor) + pipe_read_end, pipe_write_end = os.pipe() # os.pipe returns two file descriptors. + + try: + # Flush the C-level buffer of stdout before redirecting. This should make sure that only the desired data is captured. + c_fflush() + # Redirect stdout to your pipe. + os.dup2(pipe_write_end, stdout_file_descriptor) + yield # wait for input + finally: + # Flush the C-level buffer of stdout before returning things to normal. This seems to be mainly needed on Windows because it looks like Windows changes the buffering policy to be fully buffered when redirecting stdout. + c_fflush() + # Redirect stdout back to the original file descriptor. + os.dup2(original_stdout_file_descriptor_copy, stdout_file_descriptor) + # Close the write end of the pipe to allow reading. + os.close(pipe_write_end) + # Read what was written to the pipe and pass it to the binary stream for use outside this function. + pipe_reader = os.fdopen(pipe_read_end, 'rb') + binary_stream.write(pipe_reader.read()) + # Close the reader, also closes the pipe_read_end file descriptor. + pipe_reader.close() + # Close the remaining open file descriptor. + os.close(original_stdout_file_descriptor_copy) + + +def get_host_components(host): + # Note: this used to be a generator but we detected some issues in Mac so we reverted to returning an array. + components = [] + for component_item in host.hubs_component_list.items: + component_name = component_item.name + component_class = get_component_by_name(component_name) + if not component_class: + continue + + component = getattr(host, component_class.get_id()) + components.append(component) + return components + + +def wrap_text(text, max_length=70): + '''Wraps text in a string so that the total characters in a single line doesn't exceed the specified maximum length. Lines are broken by word, and the increased width of capital letters is accounted for so that the displayed line length is roughly the same regardless of case. The maximum length is based on lowercase characters.''' + wrapped_lines = [] + + for section in text.split('\n'): + text_line = '' + line_length = 0 + words = section.split(' ') + + for word in words: + word_length = 0 + for char in word: + word_length += 1 + if char.isupper(): + word_length += 0.25 + + if line_length + word_length < max_length: + text_line += word + ' ' + line_length += word_length + 1 + + else: + wrapped_lines.append(text_line.rstrip()) + text_line = word + ' ' + line_length = word_length + 1 + + if text_line.rstrip(): + wrapped_lines.append(text_line.rstrip()) + + return wrapped_lines + + +def display_wrapped_text(layout, wrapped_text, *, heading_icon='NONE'): + if not wrapped_text: + return + + padding_icon = 'NONE' if heading_icon == 'NONE' else 'BLANK1' + text_column = layout.column() + text_column.scale_y = 0.7 + for i, line in enumerate(wrapped_text): + if i == 0: + text_column.label(text=line, icon=heading_icon) + else: + text_column.label(text=line, icon=padding_icon) + + +def get_host_reference_message(panel_type, host, ob=None): + '''The ob argument is used for bone hosts and is the armature object, but will fall back to the armature if the armature object isn't available.''' + if panel_type == PanelType.BONE: + ob_type = "armature" if type(ob) == bpy.types.Armature else "object" + host_reference = f"\"{host.name}\" in {ob_type} \"{ob.name_full}\"" + else: + host_reference = f"\"{host.name_full}\"" + + return host_reference diff --git a/addons/io_hubs_addon/io/gltf_exporter.py b/addons/io_hubs_addon/io/gltf_exporter.py index 6f52ec60..c8a43fc9 100644 --- a/addons/io_hubs_addon/io/gltf_exporter.py +++ b/addons/io_hubs_addon/io/gltf_exporter.py @@ -1,10 +1,9 @@ import bpy +from .utils import HUBS_CONFIG +from bpy.props import PointerProperty from ..components.components_registry import get_components_registry -from .utils import gather_lightmap_texture_info, HUBS_CONFIG - - -EXTENSION_NAME = HUBS_CONFIG["gltfExtensionName"] -EXTENSION_VERSION = HUBS_CONFIG["gltfExtensionVersion"] +from ..components.utils import get_host_components +import traceback if bpy.app.version < (3, 0, 0): from io_scene_gltf2.io.exp.gltf2_io_user_extensions import export_user_extensions @@ -22,45 +21,82 @@ def patched_gather_gltf(exporter, export_settings): exporter._GlTF2Exporter__traverse(exporter._GlTF2Exporter__gltf.extensions) +EXTENSION_NAME = HUBS_CONFIG["gltfExtensionName"] +EXTENSION_VERSION = HUBS_CONFIG["gltfExtensionVersion"] + + def get_version_string(): from .. import (bl_info) return str(bl_info['version'][0]) + '.' + str(bl_info['version'][1]) + '.' + str(bl_info['version'][2]) -def glTF2_pre_export_callback(export_settings): - for ob in bpy.context.view_layer.objects: - component_list = ob.hubs_component_list +def export_callback(callback_method, export_settings): + for scene in bpy.data.scenes: + for component in get_host_components(scene): + component_callback = getattr(component, callback_method) + try: + component_callback(export_settings, scene) + except Exception: + traceback.print_exc() + + for ob in bpy.data.objects: + for component in get_host_components(ob): + component_callback = getattr(component, callback_method) + try: + component_callback(export_settings, ob, ob) + except Exception: + traceback.print_exc() + + if ob.type == 'ARMATURE': + for bone in ob.data.bones: + for component in get_host_components(bone): + component_callback = getattr(component, callback_method) + try: + component_callback(export_settings, bone, ob) + except Exception: + traceback.print_exc() + + for material in bpy.data.materials: + for component in get_host_components(material): + component_callback = getattr(component, callback_method) + try: + component_callback(export_settings, material) + except Exception: + traceback.print_exc() - registered_hubs_components = get_components_registry() - if component_list.items: - for component_item in component_list.items: - component_name = component_item.name - if component_name in registered_hubs_components: - component_class = registered_hubs_components[component_name] - component = getattr(ob, component_class.get_id()) - component.pre_export(export_settings, ob) +def glTF2_pre_export_callback(export_settings): + from io_scene_gltf2.blender.com.gltf2_blender_extras import BLACK_LIST + BLACK_LIST.extend(glTF2ExportUserExtension.EXCLUDED_PROPERTIES) + export_callback("pre_export", export_settings) def glTF2_post_export_callback(export_settings): - for ob in bpy.context.view_layer.objects: - component_list = ob.hubs_component_list - - registered_hubs_components = get_components_registry() + export_callback("post_export", export_settings) - if component_list.items: - for component_item in component_list.items: - component_name = component_item.name - if component_name in registered_hubs_components: - component_class = registered_hubs_components[component_name] - component = getattr(ob, component_class.get_id()) - component.post_export(export_settings, ob) + from io_scene_gltf2.blender.com.gltf2_blender_extras import BLACK_LIST + for excluded_prop in glTF2ExportUserExtension.EXCLUDED_PROPERTIES: + if excluded_prop in BLACK_LIST: + BLACK_LIST.remove(excluded_prop) # This class name is specifically looked for by gltf-blender-io and it's hooks are automatically invoked on export class glTF2ExportUserExtension: + + EXCLUDED_PROPERTIES = [] + + @classmethod + def add_excluded_property(cls, key): + if key not in glTF2ExportUserExtension.EXCLUDED_PROPERTIES: + glTF2ExportUserExtension.EXCLUDED_PROPERTIES.append(key) + + @classmethod + def remove_excluded_property(cls, key): + if key in glTF2ExportUserExtension.EXCLUDED_PROPERTIES: + glTF2ExportUserExtension.EXCLUDED_PROPERTIES.remove(key) + def __init__(self): # We need to wait until we create the gltf2UserExtension to import the gltf2 modules # Otherwise, it may fail because the gltf2 may not be loaded yet @@ -69,6 +105,7 @@ def __init__(self): self.Extension = Extension self.properties = bpy.context.scene.HubsComponentsExtensionProperties self.was_used = False + self.delayed_gathers = [] def hubs_gather_gltf_hook(self, gltf2_object, export_settings): if not self.properties.enabled or not self.was_used: @@ -97,27 +134,14 @@ def gather_scene_hook(self, gltf2_object, blender_scene, export_settings): if not self.properties.enabled: return - # Don't include hubs component data again in extras, even if "include custom properties" is enabled - if gltf2_object.extras: - for key in list(gltf2_object.extras): - if key.startswith("hubs_"): - del gltf2_object.extras[key] - - self.export_hubs_components( - gltf2_object, blender_scene, export_settings) + self.export_hubs_components(gltf2_object, blender_scene, export_settings) + self.call_delayed_gathers() def gather_node_hook(self, gltf2_object, blender_object, export_settings): if not self.properties.enabled: return - # Don't include hubs component data again in extras, even if "include custom properties" is enabled - if gltf2_object.extras: - for key in list(gltf2_object.extras): - if key.startswith("hubs_"): - del gltf2_object.extras[key] - - self.export_hubs_components( - gltf2_object, blender_object, export_settings) + self.export_hubs_components(gltf2_object, blender_object, export_settings) def gather_material_hook(self, gltf2_object, blender_material, export_settings): if not self.properties.enabled: @@ -126,6 +150,7 @@ def gather_material_hook(self, gltf2_object, blender_material, export_settings): self.export_hubs_components( gltf2_object, blender_material, export_settings) + from .utils import gather_lightmap_texture_info if blender_material.node_tree and blender_material.use_nodes: lightmap_texture_info = gather_lightmap_texture_info( blender_material, export_settings) @@ -146,6 +171,12 @@ def gather_joint_hook(self, gltf2_object, blender_pose_bone, export_settings): self.export_hubs_components( gltf2_object, blender_pose_bone.bone, export_settings) + def call_delayed_gathers(self): + for delayed_gather in self.delayed_gathers: + component_data, component_name, gather = delayed_gather + component_data[component_name] = gather() + self.delayed_gathers.clear() + def export_hubs_components(self, gltf2_object, blender_object, export_settings): component_list = blender_object.hubs_component_list @@ -161,8 +192,12 @@ def export_hubs_components(self, gltf2_object, blender_object, export_settings): component_class = registered_hubs_components[component_name] component = getattr( blender_object, component_class.get_id()) - component_data[component_class.get_name()] = component.gather( - export_settings, blender_object) + data = component.gather(export_settings, blender_object) + if hasattr(data, "delayed_gather"): + self.delayed_gathers.append( + (component_data, component_class.get_name(), data)) + else: + component_data[component_class.get_name()] = data else: print('Could not export unsupported component "%s"' % (component_name)) @@ -178,12 +213,81 @@ def export_hubs_components(self, gltf2_object, blender_object, export_settings): self.was_used = True +class HubsComponentsExtensionProperties(bpy.types.PropertyGroup): + enabled: bpy.props.BoolProperty( + name="Export Hubs Components", + description='Include this extension in the exported glTF file', + default=True + ) + + +class HubsGLTFExportPanel(bpy.types.Panel): + + bl_idname = "HBA_PT_Export_Panel" + bl_label = "Hubs Export Panel" + bl_space_type = 'FILE_BROWSER' + bl_region_type = 'TOOL_PROPS' + bl_label = "Hubs Components" + bl_parent_id = "GLTF_PT_export_user_extensions" + bl_options = {'DEFAULT_CLOSED'} + + @classmethod + def poll(cls, context): + sfile = context.space_data + operator = sfile.active_operator + return operator.bl_idname == "EXPORT_SCENE_OT_gltf" + + def draw_header(self, context): + props = bpy.context.scene.HubsComponentsExtensionProperties + self.layout.prop(props, 'enabled', text="") + + def draw(self, context): + layout = self.layout + layout.use_property_split = True + layout.use_property_decorate = False # No animation. + + props = bpy.context.scene.HubsComponentsExtensionProperties + layout.active = props.enabled + + box = layout.box() + box.label(text="No options yet") + +# called by gltf-blender-io after it has loaded + + +def register_export_panel(): + try: + bpy.utils.register_class(HubsGLTFExportPanel) + except Exception: + pass + return unregister_export_panel + + +def unregister_export_panel(): + # Since panel is registered on demand, it is possible it is not registered + try: + bpy.utils.unregister_class(HubsGLTFExportPanel) + except Exception: + pass + + def register(): - print("Register GLTF Exporter") + print("Register glTF Exporter") + register_export_panel() if bpy.app.version < (3, 0, 0): gltf2_blender_export.__gather_gltf = patched_gather_gltf + bpy.utils.register_class(HubsComponentsExtensionProperties) + bpy.types.Scene.HubsComponentsExtensionProperties = PointerProperty( + type=HubsComponentsExtensionProperties) + glTF2ExportUserExtension.add_excluded_property("HubsComponentsExtensionProperties") + def unregister(): - print("Unregister GLTF Exporter") + print("Unregister glTF Exporter") + unregister_export_panel() + del bpy.types.Scene.HubsComponentsExtensionProperties + bpy.utils.unregister_class(HubsComponentsExtensionProperties) if bpy.app.version < (3, 0, 0): gltf2_blender_export.__gather_gltf = orig_gather_gltf + unregister_export_panel() + glTF2ExportUserExtension.remove_excluded_property("HubsComponentsExtensionProperties") diff --git a/addons/io_hubs_addon/io/gltf_importer.py b/addons/io_hubs_addon/io/gltf_importer.py index fcf3d87d..07f543dd 100644 --- a/addons/io_hubs_addon/io/gltf_importer.py +++ b/addons/io_hubs_addon/io/gltf_importer.py @@ -1,5 +1,5 @@ import bpy -from io_scene_gltf2.io.com.gltf2_io_extensions import Extension +from bpy.props import BoolProperty, PointerProperty from io_scene_gltf2.blender.imp.gltf2_blender_node import BlenderNode from io_scene_gltf2.blender.imp.gltf2_blender_material import BlenderMaterial from io_scene_gltf2.blender.imp.gltf2_blender_scene import BlenderScene @@ -11,9 +11,18 @@ EXTENSION_NAME = HUBS_CONFIG["gltfExtensionName"] armatures = {} +delayed_gathers = [] -def import_hubs_components(gltf_node, blender_object, import_settings): +def call_delayed_gathers(): + global delayed_gathers + for delayed_gather in delayed_gathers: + gather = delayed_gather + gather() + delayed_gathers.clear() + + +def import_hubs_components(gltf_node, blender_object, gltf): if gltf_node and gltf_node.extensions and EXTENSION_NAME in gltf_node.extensions: components_data = gltf_node.extensions[EXTENSION_NAME] for component_name in components_data.keys(): @@ -21,8 +30,10 @@ def import_hubs_components(gltf_node, blender_object, import_settings): if component_class: component_value = components_data[component_name] try: - component_class.gather_import( - import_settings, blender_object, component_name, component_value) + data = component_class.gather_import( + gltf, blender_object, component_name, component_value) + if data and hasattr(data, "delayed_gather"): + delayed_gathers.append((data)) except Exception: traceback.print_exc() else: @@ -30,13 +41,13 @@ def import_hubs_components(gltf_node, blender_object, import_settings): (component_name)) -def add_lightmap(gltf_material, blender_mat, import_settings): +def add_lightmap(gltf_material, blender_mat, gltf): if gltf_material and gltf_material.extensions and 'MOZ_lightmap' in gltf_material.extensions: extension = gltf_material.extensions['MOZ_lightmap'] texture_index = extension['index'] - gltf_texture = import_settings.data.textures[texture_index] + gltf_texture = gltf.data.textures[texture_index] texture_extensions = gltf_texture.extensions if texture_extensions and texture_extensions.get('MOZ_texture_rgbe'): source = gltf_texture.extensions['MOZ_texture_rgbe']['source'] @@ -44,8 +55,8 @@ def add_lightmap(gltf_material, blender_mat, import_settings): source = gltf_texture.source BlenderImage.create( - import_settings, source) - pyimg = import_settings.data.images[source] + gltf, source) + pyimg = gltf.data.images[source] blender_image_name = pyimg.blender_image_name blender_image = bpy.data.images[blender_image_name] if pyimg.mime_type == "image/vnd.radiance": @@ -68,7 +79,7 @@ def add_lightmap(gltf_material, blender_mat, import_settings): node_uv.outputs["UV"], node_tex.inputs["Vector"]) -def add_bones(import_settings): +def add_bones(gltf): # Bones are created after the armatures so we need to wait until all nodes have been processed to be able to access the bones objects global armatures for armature in armatures.values(): @@ -77,82 +88,90 @@ def add_bones(import_settings): for bone in blender_object.data.bones: gltf_bone = gltf_bones[bone.name] import_hubs_components( - gltf_bone, bone, import_settings) + gltf_bone, bone, gltf) -def store_bones_for_import(import_settings, vnode): +def store_bones_for_import(gltf, vnode): # Store the glTF bones with the armature so their components can be imported once the Blender bones are created. global armatures children = vnode.children[:] gltf_bones = {} while children: child_index = children.pop() - child_vnode = import_settings.vnodes[child_index] - if child_vnode.type == vnode.Bone: - gltf_bones[child_vnode.name] = import_settings.data.nodes[child_index] + child_vnode = gltf.vnodes[child_index] + if child_vnode.type == vnode.Bone: + gltf_bones[child_vnode.name] = gltf.data.nodes[child_index] children.extend(child_vnode.children) - armatures[vnode.blender_object.name] = {'armature': vnode.blender_object, 'gltf_bones': gltf_bones} + armatures[vnode.blender_object.name] = { + 'armature': vnode.blender_object, 'gltf_bones': gltf_bones} class glTF2ImportUserExtension: def __init__(self): + from io_scene_gltf2.io.com.gltf2_io_extensions import Extension self.extensions = [ Extension(name=EXTENSION_NAME, extension={}, required=True)] - self.properties = bpy.context.scene.hubs_import_properties + self.properties = bpy.context.scene.HubsComponentsExtensionImportProperties + global delayed_gathers + delayed_gathers = [] - def gather_import_scene_before_hook(self, gltf_scene, blender_scene, import_settings): + def gather_import_scene_before_hook(self, gltf_scene, blender_scene, gltf): if not self.properties.enabled: return global armatures armatures.clear() - if import_settings.data.asset and import_settings.data.asset.extras: - if 'gltf_yup' in import_settings.data.asset.extras: - import_settings.import_settings['gltf_yup'] = import_settings.data.asset.extras[ + if gltf.data.asset and gltf.data.asset.extras: + if 'gltf_yup' in gltf.data.asset.extras: + gltf.import_settings['gltf_yup'] = gltf.data.asset.extras[ 'gltf_yup'] - def gather_import_scene_after_nodes_hook(self, gltf_scene, blender_scene, import_settings): + def gather_import_scene_after_nodes_hook(self, gltf_scene, blender_scene, gltf): if not self.properties.enabled: return - import_hubs_components(gltf_scene, blender_scene, import_settings) + import_hubs_components(gltf_scene, blender_scene, gltf) - add_bones(import_settings) + add_bones(gltf) armatures.clear() - def gather_import_node_after_hook(self, vnode, gltf_node, blender_object, import_settings): + def gather_import_node_after_hook(self, vnode, gltf_node, blender_object, gltf): if not self.properties.enabled: return import_hubs_components( - gltf_node, blender_object, import_settings) + gltf_node, blender_object, gltf) - # Node hooks are not called for bones. Bones are created together with their armature. + #  Node hooks are not called for bones. Bones are created together with their armature. # Unfortunately the bones are created after this hook is called so we need to wait until all nodes have been created. if vnode.is_arma: - store_bones_for_import(import_settings, vnode) + store_bones_for_import(gltf, vnode) - def gather_import_image_after_hook(self, gltf_img, blender_image, import_settings): + def gather_import_image_after_hook(self, gltf_img, blender_image, gltf): # As of Blender 3.2.0 the importer doesn't import images that are not referenced by a material socket. # We handle this case by case in each component's gather_import override. pass - def gather_import_texture_after_hook(self, gltf_texture, node_tree, mh, tex_info, location, label, color_socket, alpha_socket, is_data, import_settings): + def gather_import_texture_after_hook( + self, gltf_texture, node_tree, mh, tex_info, location, label, color_socket, alpha_socket, is_data, gltf): # As of Blender 3.2.0 the importer doesn't import textures that are not referenced by a material socket image. # We handle this case by case in each component's gather_import override. pass - def gather_import_material_after_hook(self, gltf_material, vertex_color, blender_mat, import_settings): + def gather_import_material_after_hook(self, gltf_material, vertex_color, blender_mat, gltf): if not self.properties.enabled: return import_hubs_components( - gltf_material, blender_mat, import_settings) + gltf_material, blender_mat, gltf) + + add_lightmap(gltf_material, blender_mat, gltf) - add_lightmap(gltf_material, blender_mat, import_settings) + def gather_import_scene_after_animation_hook(self, gltf_scene, blender_scene, gltf): + call_delayed_gathers() # import hooks were only recently added to the glTF exporter, so make a custom hook for now @@ -202,7 +221,9 @@ def patched_BlenderMaterial_create(gltf, material_idx, vertex_color): @ staticmethod def patched_BlenderScene_create(gltf): global armatures + global delayed_gathers armatures.clear() + delayed_gathers = [] orig_BlenderScene_create(gltf) gltf_scene = gltf.data.scenes[gltf.data.scene] @@ -213,6 +234,66 @@ def patched_BlenderScene_create(gltf): add_bones(gltf) armatures.clear() + call_delayed_gathers() + + +class HubsGLTFImportPanel(bpy.types.Panel): + + bl_idname = "HBA_PT_Import_Panel" + bl_label = "Hubs Import Panel" + bl_space_type = 'FILE_BROWSER' + bl_region_type = 'TOOL_PROPS' + bl_label = "Hubs Components" + bl_parent_id = "GLTF_PT_import_user_extensions" + bl_options = {'DEFAULT_CLOSED'} + + @classmethod + def poll(cls, context): + sfile = context.space_data + operator = sfile.active_operator + return operator.bl_idname == "IMPORT_SCENE_OT_gltf" + + def draw_header(self, context): + props = bpy.context.scene.HubsComponentsExtensionImportProperties + self.layout.prop(props, 'enabled', text="") + + def draw(self, context): + layout = self.layout + layout.use_property_split = True + layout.use_property_decorate = False # No animation. + + props = bpy.context.scene.HubsComponentsExtensionImportProperties + layout.active = props.enabled + + box = layout.box() + box.label(text="No options yet") + + +class HubsImportProperties(bpy.types.PropertyGroup): + enabled: BoolProperty( + name="Import Hubs Components", + description='Import Hubs components from the glTF file', + default=True + ) + +# called by gltf-blender-io after it has loaded + + +def register_import_panel(): + try: + bpy.utils.register_class(HubsGLTFImportPanel) + except Exception: + pass + return unregister_import_panel + + +def unregister_import_panel(): + # Since panel is registered on demand, it is possible it is not registered + try: + bpy.utils.unregister_class(HubsGLTFImportPanel) + except Exception: + pass + def register(): print("Register glTF Importer") @@ -220,6 +301,10 @@ def register(): BlenderNode.create_object = patched_BlenderNode_create_object BlenderMaterial.create = patched_BlenderMaterial_create BlenderScene.create = patched_BlenderScene_create + register_import_panel() + bpy.utils.register_class(HubsImportProperties) + bpy.types.Scene.HubsComponentsExtensionImportProperties = PointerProperty( + type=HubsImportProperties) def unregister(): @@ -228,3 +313,6 @@ def unregister(): BlenderNode.create_object = orig_BlenderNode_create_object BlenderMaterial.create = orig_BlenderMaterial_create BlenderScene.create = orig_BlenderScene_create + del bpy.types.Scene.HubsComponentsExtensionImportProperties + bpy.utils.unregister_class(HubsImportProperties) + unregister_import_panel() diff --git a/addons/io_hubs_addon/io/utils.py b/addons/io_hubs_addon/io/utils.py index 90fe32e3..5588f99a 100644 --- a/addons/io_hubs_addon/io/utils.py +++ b/addons/io_hubs_addon/io/utils.py @@ -4,14 +4,12 @@ from io_scene_gltf2.blender.exp import gltf2_blender_gather_materials, gltf2_blender_gather_nodes, gltf2_blender_gather_joints from io_scene_gltf2.blender.exp import gltf2_blender_gather_texture_info, gltf2_blender_export_keys from io_scene_gltf2.blender.exp.gltf2_blender_gather_cache import cached -from io_scene_gltf2.io.com.gltf2_io_extensions import Extension -from io_scene_gltf2.io.com.gltf2_io import Texture, Image, TextureInfo -from io_scene_gltf2.io.exp.gltf2_io_binary_data import BinaryData -from io_scene_gltf2.io.exp.gltf2_io_image_data import ImageData -from io_scene_gltf2.blender.exp.gltf2_blender_image import ExportImage -from io_scene_gltf2.blender.exp.gltf2_blender_gather_cache import cached -from io_scene_gltf2.blender.exp import gltf2_blender_export_keys -from typing import Optional +from io_scene_gltf2.io.com import gltf2_io_extensions +from io_scene_gltf2.io.com import gltf2_io +from io_scene_gltf2.io.exp import gltf2_io_binary_data +from io_scene_gltf2.io.exp import gltf2_io_image_data +from io_scene_gltf2.blender.exp import gltf2_blender_image +from typing import Optional, Tuple, Union from ..nodes.lightmap import MozLightmapNode import re @@ -23,7 +21,7 @@ # gather_texture/image with HDR support via MOZ_texture_rgbe -class HubsImageData(ImageData): +class HubsImageData(gltf2_io_image_data.ImageData): @property def file_extension(self): if self._mime_type == "image/vnd.radiance": @@ -31,7 +29,7 @@ def file_extension(self): return super().file_extension -class HubsExportImage(ExportImage): +class HubsExportImage(gltf2_blender_image.ExportImage): @staticmethod def from_blender_image(image: bpy.types.Image): export_image = HubsExportImage() @@ -39,14 +37,14 @@ def from_blender_image(image: bpy.types.Image): export_image.fill_image(image, dst_chan=chan, src_chan=chan) return export_image - def encode(self, mime_type: Optional[str]) -> bytes: + def encode(self, mime_type: Optional[str]) -> Union[Tuple[bytes, bool], bytes]: if mime_type == "image/vnd.radiance": return self.encode_from_image_hdr(self.blender_image()) return super().encode(mime_type) # TODO this should allow conversion from other HDR formats (namely EXR), # in memory images, and combining separate channels like SDR images - def encode_from_image_hdr(self, image: bpy.types.Image) -> bytes: + def encode_from_image_hdr(self, image: bpy.types.Image) -> Union[Tuple[bytes, bool], bytes]: if image.file_format == "HDR" and image.source == 'FILE' and not image.is_dirty: if image.packed_file is not None: return image.packed_file.data @@ -78,14 +76,17 @@ def gather_image(blender_image, export_settings): data = HubsExportImage.from_blender_image(blender_image).encode(mime_type) + if type(data) == tuple: + data = data[0] + if export_settings[gltf2_blender_export_keys.FORMAT] == 'GLTF_SEPARATE': uri = HubsImageData(data=data, mime_type=mime_type, name=name) buffer_view = None else: uri = None - buffer_view = BinaryData(data=data) + buffer_view = gltf2_io_binary_data.BinaryData(data=data) - return Image( + return gltf2_io.Image( buffer_view=buffer_view, extensions=None, extras=None, @@ -111,7 +112,7 @@ def gather_texture(blender_image, export_settings): if is_hdr: ext_name = "MOZ_texture_rgbe" - texture_extensions[ext_name] = Extension( + texture_extensions[ext_name] = gltf2_io_extensions.Extension( name=ext_name, extension={ "source": image @@ -121,7 +122,7 @@ def gather_texture(blender_image, export_settings): # export_user_extensions('gather_texture_hook', export_settings, texture, blender_shader_sockets) - return Texture( + return gltf2_io.Texture( extensions=texture_extensions, extras=None, name=None, @@ -149,8 +150,9 @@ def gather_property(export_settings, blender_object, target, property_name): isArray = getattr(property_definition, 'is_array', None) if isArray and property_definition.is_array: - if property_definition.subtype == 'COLOR': - return gather_color_property(export_settings, blender_object, target, property_name) + if property_definition.subtype.startswith('COLOR'): + return gather_color_property( + export_settings, blender_object, target, property_name, property_definition.subtype) else: return gather_vec_property(export_settings, blender_object, target, property_name) @@ -195,10 +197,7 @@ def gather_node_property(export_settings, blender_object, target, property_name) vtree = export_settings['vtree'] vnode = vtree.nodes[next((uuid for uuid in vtree.nodes if ( vtree.nodes[uuid].blender_object == blender_object)), None)] - node = gltf2_blender_gather_nodes.gather_node( - vnode, - export_settings - ) + node = vnode.node return { "__mhc_link_type": "node", @@ -224,8 +223,8 @@ def gather_joint_property(export_settings, blender_object, target, property_name else: vtree = export_settings['vtree'] vnode = vtree.nodes[next((uuid for uuid in vtree.nodes if ( - vtree.nodes[uuid].joint == joint)), None)] - node = gltf2_blender_gather_joints.gather_joint_vnode( + vtree.nodes[uuid].blender_bone == joint)), None)] + node = vnode.node or gltf2_blender_gather_joints.gather_joint_vnode( vnode, export_settings ) @@ -300,10 +299,37 @@ def gather_texture_property(export_settings, blender_object, target, property_na return None -def gather_color_property(export_settings, object, component, property_name): - # Convert RGB color array to hex. Blender stores colors in linear space and glTF color factors are typically in linear space - c = getattr(component, property_name) - return "#{0:02x}{1:02x}{2:02x}".format(max(0, min(int(c[0] * 256.0), 255)), max(0, min(int(c[1] * 256.0), 255)), max(0, min(int(c[2] * 256.0), 255))) +def srgb2lin(s): + if s <= 0.0404482362771082: + lin = s / 12.92 + else: + lin = pow(((s + 0.055) / 1.055), 2.4) + return lin + + +def lin2srgb(lin): + if lin > 0.0031308: + s = 1.055 * (pow(lin, (1.0 / 2.4))) - 0.055 + else: + s = 12.92 * lin + return s + + +def gather_color_property(export_settings, object, component, property_name, color_type): + c = list(getattr(component, property_name)) + + # Blender stores colors in linear space for subtype COLOR and sRGB for COLOR_GAMMA + if color_type == "COLOR": + c[0] = lin2srgb(c[0]) + c[1] = lin2srgb(c[1]) + c[2] = lin2srgb(c[2]) + + c[0] = max(0, min(int(c[0] * 256.0), 255)) + c[1] = max(0, min(int(c[1] * 256.0), 255)) + c[2] = max(0, min(int(c[2] * 256.0), 255)) + + return "#{0:02x}{1:02x}{2:02x}".format(c[0], c[1], c[2], 255) + # MOZ_lightmap extension data @@ -328,7 +354,7 @@ def gather_lightmap_texture_info(blender_material, export_settings): else: tex_transform, tex_coord, _ = gltf2_blender_gather_texture_info.__gather_texture_transform_and_tex_coord( texture_socket, export_settings) - texture_info = TextureInfo( + texture_info = gltf2_io.TextureInfo( extensions=gltf2_blender_gather_texture_info.__gather_extensions( tex_transform, export_settings), extras=None, @@ -361,19 +387,11 @@ def import_component(component_name, blender_object): def set_color_from_hex(blender_component, property_name, hexcolor): hexcolor = hexcolor.lstrip('#') - rgb_int = [int(hexcolor[i:i+2], 16) for i in (0, 2, 4)] + rgb_int = [int(hexcolor[i:i + 2], 16) for i in (0, 2, 4)] for x, value in enumerate(rgb_int): - rgb_float = value/255 if value > 0 else 0 - - # convert sRGB values to linear - if rgb_float < 0.04045: - rgb_float_linear = rgb_float * (1.0 / 12.92) - - else: - rgb_float_linear = ((rgb_float + 0.055) * (1.0 / 1.055)) ** 2.4 - - getattr(blender_component, property_name)[x] = rgb_float_linear + rgb_float = value / 255 if value > 0 else 0 + getattr(blender_component, property_name)[x] = rgb_float def assign_property(vnodes, blender_component, property_name, property_value): diff --git a/addons/io_hubs_addon/preferences.py b/addons/io_hubs_addon/preferences.py index 86382e66..1d6bedf0 100644 --- a/addons/io_hubs_addon/preferences.py +++ b/addons/io_hubs_addon/preferences.py @@ -1,8 +1,6 @@ import bpy from bpy.types import AddonPreferences -from bpy.props import IntProperty, StringProperty -from enum import Enum - +from bpy.props import IntProperty from .utils import get_addon_package @@ -21,19 +19,11 @@ class HubsPreferences(AddonPreferences): min=0, ) - tmp_path: StringProperty( - name="Temporary files path", - description="Path where temporary files will be stored.", - subtype="DIR_PATH", - default="//generated_cubemaps/" - ) - def draw(self, context): layout = self.layout box = layout.box() box.row().prop(self, "row_length") - box.row().prop(self, "tmp_path") def register(): diff --git a/addons/io_hubs_addon/utils.py b/addons/io_hubs_addon/utils.py index a1611fea..fd5d30eb 100644 --- a/addons/io_hubs_addon/utils.py +++ b/addons/io_hubs_addon/utils.py @@ -1,13 +1,26 @@ +import functools + + def get_addon_package(): return __package__ -import functools def rsetattr(obj, attr, val): pre, _, post = attr.rpartition('.') return setattr(rgetattr(obj, pre) if pre else obj, post, val) + def rgetattr(obj, attr, *args): def _getattr(obj, attr): return getattr(obj, attr, *args) return functools.reduce(_getattr, [obj] + attr.split('.')) + + +def delayed_gather(func): + """ It delays the gather until all resources are available """ + def wrapper_delayed_gather(*args, **kwargs): + def gather(): + return func(*args, **kwargs) + gather.delayed_gather = True + return gather + return wrapper_delayed_gather diff --git a/addons/scripts/export_gizmo.py b/addons/scripts/export_gizmo.py index 22328fae..6611245f 100644 --- a/addons/scripts/export_gizmo.py +++ b/addons/scripts/export_gizmo.py @@ -26,24 +26,25 @@ def convert(objects): out += ')' return out + class SaveGizmoOperator(Operator, ImportHelper): bl_idname = "hubs.save_gizmo" bl_label = "Save Gizmo" - + filter_glob: StringProperty( default='*.py;', options={'HIDDEN'} ) def execute(self, context): - """Save gizmo outout to a file.""" + """Save gizmo outout to a file.""" gizmo = convert(context.selected_objects) f = open(self.filepath, "w") f.write(gizmo) f.close() - + return {'FINISHED'} diff --git a/format.py b/format.py new file mode 100755 index 00000000..70003613 --- /dev/null +++ b/format.py @@ -0,0 +1,12 @@ +import subprocess +import sys +import os +from shutil import which + +if which("autopep8") is None: + print("Error: autopep8 could not be found. Please install autopep8 and run this script again: https://pypi.org/project/autopep8/") + sys.exit(1) + +cp = subprocess.run(["autopep8", "--exclude=models", "--in-place", + "--recursive", "--max-line-length=120", "--experimental", "addons"]) +sys.exit(cp.returncode) diff --git a/setup.sh b/setup.sh index 4efea6ca..0e0981cc 100755 --- a/setup.sh +++ b/setup.sh @@ -1 +1 @@ -wget https://github.com/nutti/fake-bpy-module/releases/download/20211212/fake_bpy_modules_3.0-20211212.zip -O temp.zip; unzip temp.zip; rm temp.zip \ No newline at end of file +wget https://github.com/nutti/fake-bpy-module/releases/download/20221006/fake_bpy_modules_3.3-20221006.zip -O temp.zip; unzip temp.zip; rm temp.zip \ No newline at end of file diff --git a/tests/export_gltf.py b/tests/export_gltf.py index 28348b05..355dc0f2 100644 --- a/tests/export_gltf.py +++ b/tests/export_gltf.py @@ -40,7 +40,8 @@ 'export_format': ('GLB' if extension == '.glb' else 'GLTF_SEPARATE'), 'filepath': os.path.join(output_dir, path_parts[1]), - 'export_cameras': True + 'export_cameras': True, + 'export_extras': True } bpy.ops.export_scene.gltf(**args) except Exception as err: diff --git a/tests/roundtrip_gltf.py b/tests/roundtrip_gltf.py index efed3e39..217ebfd8 100644 --- a/tests/roundtrip_gltf.py +++ b/tests/roundtrip_gltf.py @@ -16,6 +16,8 @@ import os import sys +bpy.ops.preferences.addon_enable(module="io_hubs_addon") + try: argv = sys.argv if "--" in argv: @@ -26,7 +28,26 @@ filepath = argv[0] bpy.ops.object.select_all(action='SELECT') - bpy.ops.object.delete(use_global=False) + + for collection in bpy.data.collections: + for object in collection.objects: + collection.objects.unlink(object) + + for bpy_data_iter in ( + bpy.data.objects, + bpy.data.meshes, + bpy.data.lights, + bpy.data.cameras, + bpy.data.armatures, + bpy.data.actions, + bpy.data.images, + bpy.data.lightprobes, + bpy.data.materials, + bpy.data.shape_keys, + bpy.data.textures + ): + for id_data in bpy_data_iter: + bpy_data_iter.remove(id_data) bpy.ops.import_scene.gltf(filepath=argv[0]) @@ -41,12 +62,18 @@ output_dir = os.path.join(path_parts[0], argv[1]) if not os.path.exists(output_dir): os.makedirs(output_dir) + if '--use-variants' in argv: + bpy.context.preferences.addons['io_scene_gltf2'].preferences.KHR_materials_variants_ui = True if '--no-sample-anim' in argv: bpy.ops.export_scene.gltf(export_format=export_format, filepath=os.path.join( - output_dir, path_parts[1]), export_force_sampling=False) + output_dir, path_parts[1]), export_force_sampling=False, export_cameras=True) + elif '--use-original-specular' in argv: + bpy.ops.export_scene.gltf(export_format=export_format, filepath=os.path.join( + output_dir, path_parts[1]), export_original_specular=True, export_cameras=True) else: bpy.ops.export_scene.gltf( - export_format=export_format, filepath=os.path.join(output_dir, path_parts[1])) + export_format=export_format, filepath=os.path.join(output_dir, path_parts[1]), export_cameras=True) + except Exception as err: print(err, file=sys.stderr) sys.exit(1) diff --git a/tests/scenes/ambient-light.blend b/tests/scenes/ambient-light.blend index f3f74a0d..21297fd5 100644 Binary files a/tests/scenes/ambient-light.blend and b/tests/scenes/ambient-light.blend differ diff --git a/tests/scenes/ammo-shape.blend b/tests/scenes/ammo-shape.blend index dcc5784c..d39d6203 100644 Binary files a/tests/scenes/ammo-shape.blend and b/tests/scenes/ammo-shape.blend differ diff --git a/tests/scenes/audio-settings.blend b/tests/scenes/audio-settings.blend index 5e670996..fcecae62 100644 Binary files a/tests/scenes/audio-settings.blend and b/tests/scenes/audio-settings.blend differ diff --git a/tests/scenes/audio-target.blend b/tests/scenes/audio-target.blend index 73635be8..1656968c 100644 Binary files a/tests/scenes/audio-target.blend and b/tests/scenes/audio-target.blend differ diff --git a/tests/scenes/audio-zone.blend b/tests/scenes/audio-zone.blend index d89f76c3..569ce11d 100644 Binary files a/tests/scenes/audio-zone.blend and b/tests/scenes/audio-zone.blend differ diff --git a/tests/scenes/audio.blend b/tests/scenes/audio.blend index c509a639..22e41795 100644 Binary files a/tests/scenes/audio.blend and b/tests/scenes/audio.blend differ diff --git a/tests/scenes/billboard.blend b/tests/scenes/billboard.blend index 1210b5a2..e1e9dec8 100644 Binary files a/tests/scenes/billboard.blend and b/tests/scenes/billboard.blend differ diff --git a/tests/scenes/directional-light.blend b/tests/scenes/directional-light.blend index 3cbecbf1..c4f7662c 100644 Binary files a/tests/scenes/directional-light.blend and b/tests/scenes/directional-light.blend differ diff --git a/tests/scenes/environment-settings.blend b/tests/scenes/environment-settings.blend index ef3c078c..cf6cec9c 100644 Binary files a/tests/scenes/environment-settings.blend and b/tests/scenes/environment-settings.blend differ diff --git a/tests/scenes/fog.blend b/tests/scenes/fog.blend index 2beb9f2a..3d6f0437 100644 Binary files a/tests/scenes/fog.blend and b/tests/scenes/fog.blend differ diff --git a/tests/scenes/frustrum.blend b/tests/scenes/frustrum.blend index 266a2fcc..f11236ab 100644 Binary files a/tests/scenes/frustrum.blend and b/tests/scenes/frustrum.blend differ diff --git a/tests/scenes/hemisphere-light.blend b/tests/scenes/hemisphere-light.blend index 688b1683..bac01eba 100644 Binary files a/tests/scenes/hemisphere-light.blend and b/tests/scenes/hemisphere-light.blend differ diff --git a/tests/scenes/image.blend b/tests/scenes/image.blend index 3446ac48..78aae3e6 100644 Binary files a/tests/scenes/image.blend and b/tests/scenes/image.blend differ diff --git a/tests/scenes/lightmap.blend b/tests/scenes/lightmap.blend index c586fb03..7dee67e2 100644 Binary files a/tests/scenes/lightmap.blend and b/tests/scenes/lightmap.blend differ diff --git a/tests/scenes/link.blend b/tests/scenes/link.blend index f57561fe..a4e598cc 100644 Binary files a/tests/scenes/link.blend and b/tests/scenes/link.blend differ diff --git a/tests/scenes/loop-animation.blend b/tests/scenes/loop-animation.blend index 356bfb3b..ac4f9b75 100644 Binary files a/tests/scenes/loop-animation.blend and b/tests/scenes/loop-animation.blend differ diff --git a/tests/scenes/media-frame.blend b/tests/scenes/media-frame.blend index 3b771154..6353513a 100644 Binary files a/tests/scenes/media-frame.blend and b/tests/scenes/media-frame.blend differ diff --git a/tests/scenes/model.blend b/tests/scenes/model.blend index a91ab689..bbb9c205 100644 Binary files a/tests/scenes/model.blend and b/tests/scenes/model.blend differ diff --git a/tests/scenes/morph-audio-feedback.blend b/tests/scenes/morph-audio-feedback.blend index 8371806b..7080c260 100644 Binary files a/tests/scenes/morph-audio-feedback.blend and b/tests/scenes/morph-audio-feedback.blend differ diff --git a/tests/scenes/nav-mesh.blend b/tests/scenes/nav-mesh.blend index 156de3e9..0b0e558e 100644 Binary files a/tests/scenes/nav-mesh.blend and b/tests/scenes/nav-mesh.blend differ diff --git a/tests/scenes/particle-emitter.blend b/tests/scenes/particle-emitter.blend index 83eaf30e..511a370d 100644 Binary files a/tests/scenes/particle-emitter.blend and b/tests/scenes/particle-emitter.blend differ diff --git a/tests/scenes/personal-space-invader.blend b/tests/scenes/personal-space-invader.blend index 66f0b15d..e033ab1c 100644 Binary files a/tests/scenes/personal-space-invader.blend and b/tests/scenes/personal-space-invader.blend differ diff --git a/tests/scenes/point-light.blend b/tests/scenes/point-light.blend index cf04cb21..3bc93d18 100644 Binary files a/tests/scenes/point-light.blend and b/tests/scenes/point-light.blend differ diff --git a/tests/scenes/reflection-probe.blend b/tests/scenes/reflection-probe.blend index bc008655..9e25eeaf 100644 Binary files a/tests/scenes/reflection-probe.blend and b/tests/scenes/reflection-probe.blend differ diff --git a/tests/scenes/scale-audio-feedback.blend b/tests/scenes/scale-audio-feedback.blend index 3750ea01..3314936b 100644 Binary files a/tests/scenes/scale-audio-feedback.blend and b/tests/scenes/scale-audio-feedback.blend differ diff --git a/tests/scenes/shadow.blend b/tests/scenes/shadow.blend index 9bcb513c..0f612cf2 100644 Binary files a/tests/scenes/shadow.blend and b/tests/scenes/shadow.blend differ diff --git a/tests/scenes/simple-water.blend b/tests/scenes/simple-water.blend index e3324091..297e33b2 100644 Binary files a/tests/scenes/simple-water.blend and b/tests/scenes/simple-water.blend differ diff --git a/tests/scenes/skybox.blend b/tests/scenes/skybox.blend index e902e6c8..8c350c71 100644 Binary files a/tests/scenes/skybox.blend and b/tests/scenes/skybox.blend differ diff --git a/tests/scenes/spawner.blend b/tests/scenes/spawner.blend index d7d314fc..efcfa731 100644 Binary files a/tests/scenes/spawner.blend and b/tests/scenes/spawner.blend differ diff --git a/tests/scenes/spot-light.blend b/tests/scenes/spot-light.blend index bc583bf6..9b8ea28b 100644 Binary files a/tests/scenes/spot-light.blend and b/tests/scenes/spot-light.blend differ diff --git a/tests/scenes/text.blend b/tests/scenes/text.blend index 5dfa5c44..626d9d10 100644 Binary files a/tests/scenes/text.blend and b/tests/scenes/text.blend differ diff --git a/tests/scenes/uv-scroll.blend b/tests/scenes/uv-scroll.blend index 380925d3..f53306d6 100644 Binary files a/tests/scenes/uv-scroll.blend and b/tests/scenes/uv-scroll.blend differ diff --git a/tests/scenes/video-texture.blend b/tests/scenes/video-texture.blend index 7dba39f9..b4e441b1 100644 Binary files a/tests/scenes/video-texture.blend and b/tests/scenes/video-texture.blend differ diff --git a/tests/scenes/video.blend b/tests/scenes/video.blend index 80bcdad2..8203d120 100644 Binary files a/tests/scenes/video.blend and b/tests/scenes/video.blend differ diff --git a/tests/scenes/visible.blend b/tests/scenes/visible.blend index 76206af4..ac2a5a78 100644 Binary files a/tests/scenes/visible.blend and b/tests/scenes/visible.blend differ diff --git a/tests/scenes/waypoint.blend b/tests/scenes/waypoint.blend index 84124d2f..07a989a0 100644 Binary files a/tests/scenes/waypoint.blend and b/tests/scenes/waypoint.blend differ diff --git a/tests/test/test_export.js b/tests/test/test_export.js index 320e7c6b..ed1c8f1e 100644 --- a/tests/test/test_export.js +++ b/tests/test/test_export.js @@ -1,5 +1,8 @@ const fs = require('fs'); +const glob = require('glob') const path = require('path'); +const { test } = require('./tests/link.js'); +const utils = require('./utils.js'); const OUT_PREFIX = process.env.OUT_PREFIX || '../tests_out'; @@ -18,12 +21,15 @@ const blenderVersions = (() => { } })(); -var utils = require('./utils.js').utils; - -var assert = require('assert'); +const basePath = path.join(__dirname); +const tests = glob.sync(path.join(basePath, 'tests', '*.js')).reduce((loaded, file) => { + const mod = require('./' + path.relative(basePath, file)); + loaded.push(mod); + return loaded; +}, []); describe('Exporter', function () { - let blenderSampleScenes = fs.readdirSync('scenes').filter(f => f.endsWith('.blend')).map(f => f.substring(0, f.length - 6)); + const blenderSampleScenes = fs.readdirSync('scenes').filter(f => f.endsWith('.blend')).map(f => f.substring(0, f.length - 6)); blenderVersions.forEach(function (blenderVersion) { let variants = [ @@ -38,7 +44,7 @@ describe('Exporter', function () { let outDirName = 'out' + blenderVersion + variant[0]; let blenderPath = `scenes/${scene}.blend`; let ext = args.indexOf('--glb') === -1 ? '.gltf' : '.glb'; - let outDirPath = path.resolve(OUT_PREFIX, 'scenes', outDirName); + let outDirPath = path.resolve(OUT_PREFIX, outDirName, 'export'); let dstPath = path.resolve(outDirPath, `${scene}${ext}`); utils.blenderFileToGltf(blenderVersion, blenderPath, outDirPath, (error) => { if (error) @@ -53,942 +59,72 @@ describe('Exporter', function () { describe(blenderVersion + '_export_results', function () { let outDirName = 'out' + blenderVersion; - let outDirPath = path.resolve(OUT_PREFIX, 'scenes', outDirName); - - it('can export link', function () { - let gltfPath = path.resolve(outDirPath, 'link.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext['link'], { href: 'https://hubs.mozilla.com' }); - assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); - }); - - it('can export visible', function () { - let gltfPath = path.resolve(outDirPath, 'visible.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { visible: { visible: true } }); - }); - - it('can export nav-mesh', function () { - let gltfPath = path.resolve(outDirPath, 'nav-mesh.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { 'nav-mesh': {} }); - }); - - it('can export video-texture-source and video-texture-target', function () { - let gltfPath = path.resolve(outDirPath, 'video-texture.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const camera = asset.nodes[1]; - assert.strictEqual(utils.checkExtensionAdded(camera, 'MOZ_hubs_components'), true); - - const material = asset.materials[0]; - assert.strictEqual(utils.checkExtensionAdded(material, 'MOZ_hubs_components'), true); - - const videoTextureSourceExt = camera.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(videoTextureSourceExt, { - "video-texture-source": { - "resolution": [ - 1280, - 720 - ], - "fps": 15 - } - }); - - const videoTextureTargetExt = material.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(videoTextureTargetExt, { - "video-texture-target": { - "targetBaseColorMap": true, - "targetEmissiveMap": true, - "srcNode": { - "__mhc_link_type": "node", - "index": 1 - } - } - }); - }); - - it('can export ammo-shape', function () { - let gltfPath = path.resolve(outDirPath, 'ammo-shape.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "ammo-shape": { - "type": "hull", - "fit": "all", - "halfExtents": { - "x": 0.5, - "y": 0.5, - "z": 0.5 - }, - "minHalfExtent": 0, - "maxHalfExtent": 1000, - "sphereRadius": 0.5, - "offset": { - "x": 0, - "y": 0, - "z": 0 - }, - "includeInvisible": false - } - }); - }); - - it('can export skybox', function () { - let gltfPath = path.resolve(outDirPath, 'skybox.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "skybox": { - "azimuth": 0.15000000596046448, - "inclination": 0, - "luminance": 1, - "mieCoefficient": 0.004999999888241291, - "mieDirectionalG": 0.800000011920929, - "turbidity": 10, - "rayleigh": 2, - "distance": 8000 - } - }); - }); - - it('can export reflection-probe', function () { - let gltfPath = path.resolve(outDirPath, 'reflection-probe.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "reflection-probe": { - "size": 2.5, - "envMapTexture": { - "__mhc_link_type": "texture", - "index": 0 - } - } - }); - }); - - it('can export directional-light', function () { - let gltfPath = path.resolve(outDirPath, 'directional-light.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "directional-light": { - "color": "#ffffff", - "intensity": 1, - "castShadow": false, - "shadowMapResolution": [ - 512, - 512 - ], - "shadowBias": 0, - "shadowRadius": 1 - } - }); - }); - - it('can export point-light', function () { - let gltfPath = path.resolve(outDirPath, 'point-light.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "point-light": { - "color": "#ffffff", - "intensity": 1, - "range": 0, - "decay": 2, - "castShadow": false, - "shadowMapResolution": [ - 512, - 512 - ], - "shadowBias": 0, - "shadowRadius": 1 - } - }); - }); - - it('can export spot-light', function () { - let gltfPath = path.resolve(outDirPath, 'spot-light.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "spot-light": { - "color": "#ffffff", - "intensity": 1, - "range": 0, - "decay": 2, - "innerConeAngle": 0, - "outerConeAngle": 0.7853981852531433, - "castShadow": false, - "shadowMapResolution": [ - 512, - 512 - ], - "shadowBias": 0, - "shadowRadius": 1 - } - }); - }); - - it('can export ambient-light', function () { - let gltfPath = path.resolve(outDirPath, 'ambient-light.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "ambient-light": { - "color": "#ffffff", - "intensity": 1 - } - }); - }); - - it('can export particle-emitter', function () { - let gltfPath = path.resolve(outDirPath, 'particle-emitter.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "particle-emitter": { - "src": "", - "startColor": "#ffffff", - "middleColor": "#ffffff", - "endColor": "#ffffff", - "startOpacity": 1, - "middleOpacity": 1, - "endOpacity": 1, - "sizeCurve": "linear", - "colorCurve": "linear", - "startSize": 1, - "endSize": 1, - "sizeRandomness": 0, - "ageRandomness": 0, - "lifetime": 1, - "lifetimeRandomness": 0, - "particleCount": 10, - "startVelocity": { - "x": 0, - "y": 0, - "z": 0 - }, - "endVelocity": { - "x": 0, - "y": 0, - "z": 0 - }, - "velocityCurve": "linear", - "angularVelocity": 0 - } - }); - }); - - it('can export particle-emitter', function () { - let gltfPath = path.resolve(outDirPath, 'particle-emitter.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "particle-emitter": { - "src": "", - "startColor": "#ffffff", - "middleColor": "#ffffff", - "endColor": "#ffffff", - "startOpacity": 1, - "middleOpacity": 1, - "endOpacity": 1, - "sizeCurve": "linear", - "colorCurve": "linear", - "startSize": 1, - "endSize": 1, - "sizeRandomness": 0, - "ageRandomness": 0, - "lifetime": 1, - "lifetimeRandomness": 0, - "particleCount": 10, - "startVelocity": { - "x": 0, - "y": 0, - "z": 0 - }, - "endVelocity": { - "x": 0, - "y": 0, - "z": 0 - }, - "velocityCurve": "linear", - "angularVelocity": 0 - } - }); - }); - - it('can export waypoint', function () { - let gltfPath = path.resolve(outDirPath, 'waypoint.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext['waypoint'], { - "canBeSpawnPoint": false, - "canBeOccupied": false, - "canBeClicked": false, - "willDisableMotion": false, - "willDisableTeleporting": false, - "snapToNavMesh": false, - "willMaintainInitialOrientation": false - }); - assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); - }); - - it('can export image', function () { - let gltfPath = path.resolve(outDirPath, 'image.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext["image"], { - "src": "https://uploads-prod.reticulum.io/files/81e942e8-6ae2-4cc5-b363-f064e9ea3f61.jpg", - "controls": true, - "alphaMode": "opaque", - "projection": "flat" - }); - assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); - }); - - it('can export audio', function () { - let gltfPath = path.resolve(outDirPath, 'audio.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext["audio"], { - "src": "https://uploads-prod.reticulum.io/files/a3670163-1e78-485c-b70d-9af51f6afaff.mp3", - "autoPlay": true, - "controls": true, - "loop": true - }); - assert.deepStrictEqual(ext["audio-params"], { - "audioType": "pannernode", - "gain": 1, - "distanceModel": "inverse", - "refDistance": 1, - "rolloffFactor": 1, - "maxDistance": 10000, - "coneInnerAngle": 360, - "coneOuterAngle": 0, - "coneOuterGain": 0 - }); - assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); - }); - - it('can export video', function () { - let gltfPath = path.resolve(outDirPath, 'video.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext["video"], { - "src": "https://uploads-prod.reticulum.io/files/b4dc97b5-6523-4b61-91ae-d14a80ffd398.mp4", - "projection": "flat", - "autoPlay": true, - "controls": true, - "loop": true - }); - assert.deepStrictEqual(ext["audio-params"], { - "audioType": "pannernode", - "gain": 1, - "distanceModel": "inverse", - "refDistance": 1, - "rolloffFactor": 1, - "maxDistance": 10000, - "coneInnerAngle": 360, - "coneOuterAngle": 0, - "coneOuterGain": 0 - }); - assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); - }); - - it('can export billboard', function () { - let gltfPath = path.resolve(outDirPath, 'billboard.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "billboard": { - "onlyY": false - } - }); - }); - - it('can export text', function () { - let gltfPath = path.resolve(outDirPath, 'text.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + let outDirPath = path.resolve(OUT_PREFIX, outDirName, 'export'); - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "text": { - "value": "Hello World!", - "fontSize": 0.07500000298023224, - "textAlign": "left", - "anchorX": "center", - "anchorY": "middle", - "color": "#ffffff", - "letterSpacing": 0, - "lineHeight": 0, - "outlineWidth": "0", - "outlineColor": "#000000", - "outlineBlur": "0", - "outlineOffsetX": "0", - "outlineOffsetY": "0", - "outlineOpacity": 1, - "fillOpacity": 1, - "strokeWidth": "0", - "strokeColor": "#000000", - "strokeOpacity": 1, - "textIndent": 0, - "whiteSpace": "normal", - "overflowWrap": "normal", - "opacity": 1, - "side": "front", - "maxWidth": 1, - "curveRadius": 0, - "direction": "auto" - } - }); - }); - - it('can export media-frame', function () { - let gltfPath = path.resolve(outDirPath, 'media-frame.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext['media-frame'], { - "bounds": { - "x": 1, - "y": 1, - "z": 4 - }, - "mediaType": "all-2d", - "snapToCenter": true - }); - assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); - }); - - it('can export spawner', function () { - let gltfPath = path.resolve(outDirPath, 'spawner.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "spawner": { - "src": "https://uploads-prod.reticulum.io/files/81e942e8-6ae2-4cc5-b363-f064e9ea3f61.jpg", - "mediaOptions": { - "applyGravity": true - } - } - }); - }); - - it('can export audio-target and zone-audio-source', function () { - let gltfPath = path.resolve(outDirPath, 'audio-target.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const source = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(source, 'MOZ_hubs_components'), true); - - const target = asset.nodes[1]; - assert.strictEqual(utils.checkExtensionAdded(target, 'MOZ_hubs_components'), true); - - const sourceExt = source.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(sourceExt, { - "zone-audio-source": { - "onlyMods": true, - "muteSelf": true, - "debug": false - } - }); - - const targetExt = target.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(targetExt, { - "audio-target": { - "srcNode": { - "__mhc_link_type": "node", - "index": 0 - }, - "minDelay": 0.009999999776482582, - "maxDelay": 0.029999999329447746, - "debug": false - }, - "audio-params": { - "audioType": "pannernode", - "gain": 1, - "distanceModel": "inverse", - "refDistance": 1, - "rolloffFactor": 1, - "maxDistance": 10000, - "coneInnerAngle": 360, - "coneOuterAngle": 0, - "coneOuterGain": 0 - } - }); - }); - - it('can export audio-zone', function () { - let gltfPath = path.resolve(outDirPath, 'audio-zone.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext["audio-zone"], { - "inOut": true, - "outIn": true - }); - assert.deepStrictEqual(ext["audio-params"], { - "audioType": "pannernode", - "gain": 1, - "distanceModel": "inverse", - "refDistance": 1, - "rolloffFactor": 1, - "maxDistance": 10000, - "coneInnerAngle": 360, - "coneOuterAngle": 0, - "coneOuterGain": 0 - }); - assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); - }); - - it('can export shadow', function () { - let gltfPath = path.resolve(outDirPath, 'shadow.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "shadow": { - "cast": true, - "receive": true - } - }); - }); - - it('can export uv-scroll', function () { - let gltfPath = path.resolve(outDirPath, 'uv-scroll.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "uv-scroll": { - "speed": { - "x": 0, - "y": 0 - }, - "increment": { - "x": 0, - "y": 0 - } - } - }); - }); - - it('can export loop-animation', function () { - let gltfPath = path.resolve(outDirPath, 'loop-animation.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "loop-animation": { - "clip": "sample_clip_track_name,sample_clip_action_push_down,sample_clip_action_stash", - "startOffset": 0, - "timeScale": 1 - } - }); - }); - - it('can export personal-space-invader', function () { - let gltfPath = path.resolve(outDirPath, 'personal-space-invader.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "personal-space-invader": { - "radius": 0.10000000149011612, - "useMaterial": false, - "invadingOpacity": 0.30000001192092896 - } - }); - }); - - it('can export scale-audio-feedback', function () { - let gltfPath = path.resolve(outDirPath, 'scale-audio-feedback.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "scale-audio-feedback": { - "minScale": 1, - "maxScale": 1.5 - } - }); - }); - - it('can export morph-audio-feedback', function () { - let gltfPath = path.resolve(outDirPath, 'morph-audio-feedback.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "morph-audio-feedback": { - "name": "Key 1", - "minValue": 0, - "maxValue": 1 - } - }); + tests.forEach(test => { + it(test.description, () => test.test(outDirPath)); }); + }); + }); +}); - it('can export fog', function () { - let gltfPath = path.resolve(outDirPath, 'fog.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const scene = asset.scenes[0]; - assert.strictEqual(utils.checkExtensionAdded(scene, 'MOZ_hubs_components'), true); - - const ext = scene.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "fog": { - "type": "linear", - "color": "#ffffff", - "near": 1, - "far": 100, - "density": 0.10000000149011612 - } - }); - }); - - it('can export audio-settings', function () { - let gltfPath = path.resolve(outDirPath, 'audio-settings.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const scene = asset.scenes[0]; - assert.strictEqual(utils.checkExtensionAdded(scene, 'MOZ_hubs_components'), true); - - const ext = scene.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "audio-settings": { - "avatarDistanceModel": "inverse", - "avatarRolloffFactor": 2, - "avatarRefDistance": 1, - "avatarMaxDistance": 10000, - "mediaVolume": 0.5, - "mediaDistanceModel": "inverse", - "mediaRolloffFactor": 2, - "mediaRefDistance": 1, - "mediaMaxDistance": 10000, - "mediaConeInnerAngle": 360, - "mediaConeOuterAngle": 0, - "mediaConeOuterGain": 0 - } - }); - }); - - it('can export environment-settings', function () { - let gltfPath = path.resolve(outDirPath, 'environment-settings.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const scene = asset.scenes[0]; - assert.strictEqual(utils.checkExtensionAdded(scene, 'MOZ_hubs_components'), true); - - const ext = scene.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "environment-settings": { - "toneMapping": "LUTToneMapping", - "toneMappingExposure": 1, - "backgroundColor": "#ffffff", - "backgroundTexture": { - "__mhc_link_type": "texture", - "index": 0 - }, - "envMapTexture": { - "__mhc_link_type": "texture", - "index": 1 - } - } - }); - }); - - it('can export frustrum', function () { - let gltfPath = path.resolve(outDirPath, 'frustrum.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "frustrum": { - "culled": false - } - }); - }); - - it('can export model', function () { - let gltfPath = path.resolve(outDirPath, 'model.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); - - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext["model"], { - "src": "https://mozilla.org" - }); - assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); - }); +describe('Importer / Exporter (Roundtrip)', function () { + const blenderSampleScenes = fs.readdirSync('scenes').filter(f => f.endsWith('.blend')).map(f => f.substring(0, f.length - 6)); - it('can export hemisphere-light', function () { - let gltfPath = path.resolve(outDirPath, 'hemisphere-light.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); + blenderVersions.forEach(function (blenderVersion) { + let variants = [ + ['', ''] + ]; - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + variants.forEach(function (variant) { + const args = variant[1]; + describe(blenderVersion + '_roundtrip' + variant[0], function () { + blenderSampleScenes.forEach(scene => { + it(scene, function (done) { + let outDirName = 'out' + blenderVersion + variant[0]; + let ext = args.indexOf('--glb') === -1 ? '.gltf' : '.glb'; + let exportSrcPath = path.resolve(OUT_PREFIX, outDirName, 'export'); + let gltfSrcPath = path.resolve(exportSrcPath, `${scene}${ext}`); + let outDirPath = path.resolve(OUT_PREFIX, outDirName, 'roundtrip'); + let gltfDstPath = path.resolve(outDirPath, `${scene}${ext}`); + let options = args; - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + utils.blenderRoundtripGltf(blenderVersion, gltfSrcPath, outDirPath, (error) => { + if (error) + return done(error); - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "hemisphere-light": { - "skyColor": "#ffffff", - "groundColor": "#ffffff", - "intensity": 1 - } + utils.validateGltf(gltfSrcPath, (error, gltfSrcReport) => { + if (error) + return done(error); + + utils.validateGltf(gltfDstPath, (error, gltfDstReport) => { + if (error) + return done(error); + + let reduceKeys = function (raw, allowed) { + return Object.keys(raw) + .filter(key => allowed.includes(key)) + .reduce((obj, key) => { + obj[key] = raw[key]; + return obj; + }, {}); + }; + + done(); + }); + }); + }, options); + }); }); }); + }); - it('can export simple-water', function () { - let gltfPath = path.resolve(outDirPath, 'simple-water.gltf'); - const asset = JSON.parse(fs.readFileSync(gltfPath)); - - assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); - assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); - - const node = asset.nodes[0]; - assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + describe(blenderVersion + '_roundtrip_results', function () { + let outDirName = 'out' + blenderVersion; + let outDirPath = path.resolve(OUT_PREFIX, outDirName, 'roundtrip'); - const ext = node.extensions['MOZ_hubs_components']; - assert.deepStrictEqual(ext, { - "simple-water": { - "color": "#ffffff", - "opacity": 1, - "tideHeight": 0.009999999776482582, - "tideScale": { - "x": 1, - "y": 1 - }, - "tideSpeed": { - "x": 0.5, - "y": 0.5 - }, - "waveHeight": 1, - "waveScale": { - "x": 1, - "y": 20 - }, - "waveSpeed": { - "x": 0.05000000074505806, - "y": 6 - }, - "ripplesSpeed": 0.25, - "ripplesScale": 1 - } - }); + tests.forEach(test => { + it(test.description, () => test.test(outDirPath)); }); }); }); diff --git a/tests/test/tests/ambient-light.js b/tests/test/tests/ambient-light.js new file mode 100644 index 00000000..a0076f31 --- /dev/null +++ b/tests/test/tests/ambient-light.js @@ -0,0 +1,26 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export ambient-light', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'ambient-light.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "ambient-light": { + "color": "#0cff00", + "intensity": 1 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/ammo-shape.js b/tests/test/tests/ammo-shape.js new file mode 100644 index 00000000..0ff04782 --- /dev/null +++ b/tests/test/tests/ammo-shape.js @@ -0,0 +1,40 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export ammo-shape', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'ammo-shape.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "ammo-shape": { + "type": "hull", + "fit": "all", + "halfExtents": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "minHalfExtent": 0, + "maxHalfExtent": 1000, + "sphereRadius": 0.5, + "offset": { + "x": 0, + "y": 0, + "z": 0 + }, + "includeInvisible": false + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/audio-settings.js b/tests/test/tests/audio-settings.js new file mode 100644 index 00000000..23851641 --- /dev/null +++ b/tests/test/tests/audio-settings.js @@ -0,0 +1,36 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export audio-settings', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'audio-settings.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const scene = asset.scenes[0]; + assert.strictEqual(utils.checkExtensionAdded(scene, 'MOZ_hubs_components'), true); + + const ext = scene.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "audio-settings": { + "avatarDistanceModel": "inverse", + "avatarRolloffFactor": 2, + "avatarRefDistance": 1, + "avatarMaxDistance": 10000, + "mediaVolume": 0.5, + "mediaDistanceModel": "inverse", + "mediaRolloffFactor": 2, + "mediaRefDistance": 1, + "mediaMaxDistance": 10000, + "mediaConeInnerAngle": 360, + "mediaConeOuterAngle": 0, + "mediaConeOuterGain": 0 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/audio-target.js b/tests/test/tests/audio-target.js new file mode 100644 index 00000000..5e4b1c3b --- /dev/null +++ b/tests/test/tests/audio-target.js @@ -0,0 +1,54 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export audio-target and zone-audio-source', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'audio-target.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const source = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(source, 'MOZ_hubs_components'), true); + + const target = asset.nodes[1]; + assert.strictEqual(utils.checkExtensionAdded(target, 'MOZ_hubs_components'), true); + + const sourceExt = source.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(sourceExt, { + "zone-audio-source": { + "onlyMods": true, + "muteSelf": true, + "debug": false + } + }); + + const targetExt = target.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(targetExt, { + "audio-target": { + "srcNode": { + "__mhc_link_type": "node", + "index": 0 + }, + "minDelay": 0.009999999776482582, + "maxDelay": 0.029999999329447746, + "debug": false + }, + "audio-params": { + "audioType": "pannernode", + "gain": 1, + "distanceModel": "inverse", + "refDistance": 1, + "rolloffFactor": 1, + "maxDistance": 10000, + "coneInnerAngle": 360, + "coneOuterAngle": 0, + "coneOuterGain": 0 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/audio-zone.js b/tests/test/tests/audio-zone.js new file mode 100644 index 00000000..70851e43 --- /dev/null +++ b/tests/test/tests/audio-zone.js @@ -0,0 +1,36 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export audio-zone', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'audio-zone.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext["audio-zone"], { + "inOut": true, + "outIn": true + }); + assert.deepStrictEqual(ext["audio-params"], { + "audioType": "pannernode", + "gain": 1, + "distanceModel": "inverse", + "refDistance": 1, + "rolloffFactor": 1, + "maxDistance": 10000, + "coneInnerAngle": 360, + "coneOuterAngle": 0, + "coneOuterGain": 0 + }); + assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); + } +}; \ No newline at end of file diff --git a/tests/test/tests/audio.js b/tests/test/tests/audio.js new file mode 100644 index 00000000..6e2824df --- /dev/null +++ b/tests/test/tests/audio.js @@ -0,0 +1,38 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export audio', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'audio.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext["audio"], { + "src": "https://uploads-prod.reticulum.io/files/a3670163-1e78-485c-b70d-9af51f6afaff.mp3", + "autoPlay": true, + "controls": true, + "loop": true + }); + assert.deepStrictEqual(ext["audio-params"], { + "audioType": "pannernode", + "gain": 1, + "distanceModel": "inverse", + "refDistance": 1, + "rolloffFactor": 1, + "maxDistance": 10000, + "coneInnerAngle": 360, + "coneOuterAngle": 0, + "coneOuterGain": 0 + }); + assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); + } +}; \ No newline at end of file diff --git a/tests/test/tests/billboard.js b/tests/test/tests/billboard.js new file mode 100644 index 00000000..21f89eac --- /dev/null +++ b/tests/test/tests/billboard.js @@ -0,0 +1,25 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export billboard', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'billboard.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "billboard": { + "onlyY": false + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/directional-light.js b/tests/test/tests/directional-light.js new file mode 100644 index 00000000..5cc6652b --- /dev/null +++ b/tests/test/tests/directional-light.js @@ -0,0 +1,33 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export directional-light', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'directional-light.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "directional-light": { + "color": "#0cff00", + "intensity": 1, + "castShadow": false, + "shadowMapResolution": [ + 512, + 512 + ], + "shadowBias": 0, + "shadowRadius": 1 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/environment-settings.js b/tests/test/tests/environment-settings.js new file mode 100644 index 00000000..5dcf88df --- /dev/null +++ b/tests/test/tests/environment-settings.js @@ -0,0 +1,35 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export environment-settings', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'environment-settings.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const scene = asset.scenes[0]; + assert.strictEqual(utils.checkExtensionAdded(scene, 'MOZ_hubs_components'), true); + + const ext = scene.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "environment-settings": { + "toneMapping": "LUTToneMapping", + "toneMappingExposure": 1, + "backgroundColor": "#0cff00", + "backgroundTexture": { + "__mhc_link_type": "texture", + "index": 0 + }, + "envMapTexture": { + "__mhc_link_type": "texture", + "index": 1 + } + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/fog.js b/tests/test/tests/fog.js new file mode 100644 index 00000000..2863e1fc --- /dev/null +++ b/tests/test/tests/fog.js @@ -0,0 +1,29 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export fog', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'fog.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const scene = asset.scenes[0]; + assert.strictEqual(utils.checkExtensionAdded(scene, 'MOZ_hubs_components'), true); + + const ext = scene.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "fog": { + "type": "linear", + "color": "#0cff00", + "near": 1, + "far": 100, + "density": 0.10000000149011612 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/frustrum.js b/tests/test/tests/frustrum.js new file mode 100644 index 00000000..c3beac8f --- /dev/null +++ b/tests/test/tests/frustrum.js @@ -0,0 +1,25 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export frustrum', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'frustrum.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "frustrum": { + "culled": false + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/hemisphere-light.js b/tests/test/tests/hemisphere-light.js new file mode 100644 index 00000000..2bbc6672 --- /dev/null +++ b/tests/test/tests/hemisphere-light.js @@ -0,0 +1,27 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export hemisphere-light', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'hemisphere-light.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "hemisphere-light": { + "skyColor": "#0cff00", + "groundColor": "#0cff00", + "intensity": 1 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/image.js b/tests/test/tests/image.js new file mode 100644 index 00000000..5ca6918a --- /dev/null +++ b/tests/test/tests/image.js @@ -0,0 +1,27 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export image', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'image.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext["image"], { + "src": "https://uploads-prod.reticulum.io/files/81e942e8-6ae2-4cc5-b363-f064e9ea3f61.jpg", + "controls": true, + "alphaMode": "opaque", + "projection": "flat" + }); + assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); + } +}; \ No newline at end of file diff --git a/tests/test/tests/link.js b/tests/test/tests/link.js new file mode 100644 index 00000000..1b3ee58e --- /dev/null +++ b/tests/test/tests/link.js @@ -0,0 +1,22 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export link', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'link.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext['link'], { href: 'https://hubs.mozilla.com' }); + assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); + } +}; \ No newline at end of file diff --git a/tests/test/tests/loop-animation.js b/tests/test/tests/loop-animation.js new file mode 100644 index 00000000..d4d42945 --- /dev/null +++ b/tests/test/tests/loop-animation.js @@ -0,0 +1,27 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export loop-animation', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'loop-animation.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "loop-animation": { + "clip": "sample_clip_track_name,sample_clip_action_push_down,sample_clip_action_stash", + "startOffset": 0, + "timeScale": 1 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/media-frame.js b/tests/test/tests/media-frame.js new file mode 100644 index 00000000..ccc91b5a --- /dev/null +++ b/tests/test/tests/media-frame.js @@ -0,0 +1,30 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export media-frame', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'media-frame.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext['media-frame'], { + "bounds": { + "x": 1, + "y": 1, + "z": 4 + }, + "mediaType": "all-2d", + "snapToCenter": true + }); + assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); + } +}; \ No newline at end of file diff --git a/tests/test/tests/model.js b/tests/test/tests/model.js new file mode 100644 index 00000000..b88e953d --- /dev/null +++ b/tests/test/tests/model.js @@ -0,0 +1,24 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export model', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'model.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext["model"], { + "src": "https://mozilla.org" + }); + assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); + } +}; \ No newline at end of file diff --git a/tests/test/tests/morph-audio-feedback.js b/tests/test/tests/morph-audio-feedback.js new file mode 100644 index 00000000..62cb5044 --- /dev/null +++ b/tests/test/tests/morph-audio-feedback.js @@ -0,0 +1,27 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export morph-audio-feedback', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'morph-audio-feedback.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "morph-audio-feedback": { + "name": "Key 1", + "minValue": 0, + "maxValue": 1 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/nav-mesh.js b/tests/test/tests/nav-mesh.js new file mode 100644 index 00000000..e20e5b8f --- /dev/null +++ b/tests/test/tests/nav-mesh.js @@ -0,0 +1,21 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export nav-mesh', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'nav-mesh.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { 'nav-mesh': {} }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/particle-emitter.js b/tests/test/tests/particle-emitter.js new file mode 100644 index 00000000..794b4907 --- /dev/null +++ b/tests/test/tests/particle-emitter.js @@ -0,0 +1,52 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export particle-emitter', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'particle-emitter.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "particle-emitter": { + "src": "", + "startColor": "#0cff00", + "middleColor": "#0cff00", + "endColor": "#0cff00", + "startOpacity": 1, + "middleOpacity": 1, + "endOpacity": 1, + "sizeCurve": "linear", + "colorCurve": "linear", + "startSize": 1, + "endSize": 1, + "sizeRandomness": 0, + "ageRandomness": 0, + "lifetime": 1, + "lifetimeRandomness": 0, + "particleCount": 10, + "startVelocity": { + "x": 0, + "y": 0, + "z": 0 + }, + "endVelocity": { + "x": 0, + "y": 0, + "z": 0 + }, + "velocityCurve": "linear", + "angularVelocity": 0 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/personal-space-invader.js b/tests/test/tests/personal-space-invader.js new file mode 100644 index 00000000..a48c7a8a --- /dev/null +++ b/tests/test/tests/personal-space-invader.js @@ -0,0 +1,27 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export personal-space-invader', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'personal-space-invader.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "personal-space-invader": { + "radius": 0.10000000149011612, + "useMaterial": false, + "invadingOpacity": 0.30000001192092896 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/point-light.js b/tests/test/tests/point-light.js new file mode 100644 index 00000000..fda585ae --- /dev/null +++ b/tests/test/tests/point-light.js @@ -0,0 +1,35 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export point-light', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'point-light.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "point-light": { + "color": "#0cff00", + "intensity": 1, + "range": 0, + "decay": 2, + "castShadow": false, + "shadowMapResolution": [ + 512, + 512 + ], + "shadowBias": 0, + "shadowRadius": 1 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/reflection-probe.js b/tests/test/tests/reflection-probe.js new file mode 100644 index 00000000..49c971fc --- /dev/null +++ b/tests/test/tests/reflection-probe.js @@ -0,0 +1,31 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export reflection-probe', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'reflection-probe.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "reflection-probe": { + "size": 2.5, + "clipStart": 0.800000011920929, + "clipEnd": 40, + "envMapTexture": { + "__mhc_link_type": "texture", + "index": 0, + } + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/scale-audio-feedback.js b/tests/test/tests/scale-audio-feedback.js new file mode 100644 index 00000000..ebc248e6 --- /dev/null +++ b/tests/test/tests/scale-audio-feedback.js @@ -0,0 +1,26 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export scale-audio-feedback', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'scale-audio-feedback.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "scale-audio-feedback": { + "minScale": 1, + "maxScale": 1.5 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/shadow.js b/tests/test/tests/shadow.js new file mode 100644 index 00000000..35c3f237 --- /dev/null +++ b/tests/test/tests/shadow.js @@ -0,0 +1,26 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export shadow', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'shadow.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "shadow": { + "cast": true, + "receive": true + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/simple-water.js b/tests/test/tests/simple-water.js new file mode 100644 index 00000000..726428ea --- /dev/null +++ b/tests/test/tests/simple-water.js @@ -0,0 +1,46 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export simple-water', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'simple-water.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "simple-water": { + "color": "#0cff00", + "opacity": 1, + "tideHeight": 0.009999999776482582, + "tideScale": { + "x": 1, + "y": 1 + }, + "tideSpeed": { + "x": 0.5, + "y": 0.5 + }, + "waveHeight": 1, + "waveScale": { + "x": 1, + "y": 20 + }, + "waveSpeed": { + "x": 0.05000000074505806, + "y": 6 + }, + "ripplesSpeed": 0.25, + "ripplesScale": 1 + } + }); + } +} \ No newline at end of file diff --git a/tests/test/tests/skybox.js b/tests/test/tests/skybox.js new file mode 100644 index 00000000..fc3dbeb8 --- /dev/null +++ b/tests/test/tests/skybox.js @@ -0,0 +1,32 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export skybox', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'skybox.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "skybox": { + "azimuth": 0.15000000596046448, + "inclination": 0, + "luminance": 1, + "mieCoefficient": 0.004999999888241291, + "mieDirectionalG": 0.800000011920929, + "turbidity": 10, + "rayleigh": 2, + "distance": 8000 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/spawner.js b/tests/test/tests/spawner.js new file mode 100644 index 00000000..e33a4809 --- /dev/null +++ b/tests/test/tests/spawner.js @@ -0,0 +1,28 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export spawner', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'spawner.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "spawner": { + "src": "https://uploads-prod.reticulum.io/files/81e942e8-6ae2-4cc5-b363-f064e9ea3f61.jpg", + "mediaOptions": { + "applyGravity": true + } + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/spot-light.js b/tests/test/tests/spot-light.js new file mode 100644 index 00000000..fb9ddf32 --- /dev/null +++ b/tests/test/tests/spot-light.js @@ -0,0 +1,37 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export spot-light', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'spot-light.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "spot-light": { + "color": "#0cff00", + "intensity": 1, + "range": 0, + "decay": 2, + "innerConeAngle": 0, + "outerConeAngle": 0.7853981852531433, + "castShadow": false, + "shadowMapResolution": [ + 512, + 512 + ], + "shadowBias": 0, + "shadowRadius": 1 + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/text.js b/tests/test/tests/text.js new file mode 100644 index 00000000..792b26cc --- /dev/null +++ b/tests/test/tests/text.js @@ -0,0 +1,50 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export text', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'text.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "text": { + "value": "Hello World!", + "fontSize": 0.07500000298023224, + "textAlign": "left", + "anchorX": "center", + "anchorY": "middle", + "color": "#0cff00", + "letterSpacing": 0, + "lineHeight": 0, + "outlineWidth": "0", + "outlineColor": "#0cff00", + "outlineBlur": "0", + "outlineOffsetX": "0", + "outlineOffsetY": "0", + "outlineOpacity": 1, + "fillOpacity": 1, + "strokeWidth": "0", + "strokeColor": "#0cff00", + "strokeOpacity": 1, + "textIndent": 0, + "whiteSpace": "normal", + "overflowWrap": "normal", + "opacity": 1, + "side": "front", + "maxWidth": 1, + "curveRadius": 0, + "direction": "auto" + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/uv-scroll.js b/tests/test/tests/uv-scroll.js new file mode 100644 index 00000000..eb3c72f8 --- /dev/null +++ b/tests/test/tests/uv-scroll.js @@ -0,0 +1,32 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export uv-scroll', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'uv-scroll.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { + "uv-scroll": { + "speed": { + "x": 0, + "y": 0 + }, + "increment": { + "x": 0, + "y": 0 + } + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/video-texture.js b/tests/test/tests/video-texture.js new file mode 100644 index 00000000..dc029003 --- /dev/null +++ b/tests/test/tests/video-texture.js @@ -0,0 +1,44 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export video-texture-source and video-texture-target', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'video-texture.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const { node: camera, index: cameraIndex } = utils.nodeWithName(asset, "Camera"); + assert.strictEqual(utils.checkExtensionAdded(camera, 'MOZ_hubs_components'), true); + + const { node: material } = utils.materialWithName(asset, "Material.001"); + assert.strictEqual(utils.checkExtensionAdded(material, 'MOZ_hubs_components'), true); + + const videoTextureSourceExt = camera.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(videoTextureSourceExt, { + "video-texture-source": { + "resolution": [ + 1280, + 720 + ], + "fps": 15 + } + }); + + const videoTextureTargetExt = material.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(videoTextureTargetExt, { + "video-texture-target": { + "targetBaseColorMap": true, + "targetEmissiveMap": true, + "srcNode": { + "__mhc_link_type": "node", + "index": cameraIndex + } + } + }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/video.js b/tests/test/tests/video.js new file mode 100644 index 00000000..270d1455 --- /dev/null +++ b/tests/test/tests/video.js @@ -0,0 +1,39 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export video', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'video.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext["video"], { + "src": "https://uploads-prod.reticulum.io/files/b4dc97b5-6523-4b61-91ae-d14a80ffd398.mp4", + "projection": "flat", + "autoPlay": true, + "controls": true, + "loop": true + }); + assert.deepStrictEqual(ext["audio-params"], { + "audioType": "pannernode", + "gain": 1, + "distanceModel": "inverse", + "refDistance": 1, + "rolloffFactor": 1, + "maxDistance": 10000, + "coneInnerAngle": 360, + "coneOuterAngle": 0, + "coneOuterGain": 0 + }); + assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); + } +}; \ No newline at end of file diff --git a/tests/test/tests/visible.js b/tests/test/tests/visible.js new file mode 100644 index 00000000..d3c46f14 --- /dev/null +++ b/tests/test/tests/visible.js @@ -0,0 +1,21 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export visible', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'visible.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext, { visible: { visible: true } }); + } +}; \ No newline at end of file diff --git a/tests/test/tests/waypoint.js b/tests/test/tests/waypoint.js new file mode 100644 index 00000000..193f1c7f --- /dev/null +++ b/tests/test/tests/waypoint.js @@ -0,0 +1,30 @@ +const fs = require('fs'); +const path = require('path') +const assert = require('assert'); +const utils = require('../utils.js'); + +module.exports = { + description: 'can export waypoint', + test: outDirPath => { + let gltfPath = path.resolve(outDirPath, 'waypoint.gltf'); + const asset = JSON.parse(fs.readFileSync(gltfPath)); + + assert.strictEqual(asset.extensionsUsed.includes('MOZ_hubs_components'), true); + assert.strictEqual(utils.checkExtensionAdded(asset, 'MOZ_hubs_components'), true); + + const node = asset.nodes[0]; + assert.strictEqual(utils.checkExtensionAdded(node, 'MOZ_hubs_components'), true); + + const ext = node.extensions['MOZ_hubs_components']; + assert.deepStrictEqual(ext['waypoint'], { + "canBeSpawnPoint": false, + "canBeOccupied": false, + "canBeClicked": false, + "willDisableMotion": false, + "willDisableTeleporting": false, + "snapToNavMesh": false, + "willMaintainInitialOrientation": false + }); + assert.strictEqual(utils.UUID_REGEX.test(ext['networked']['id']), true); + } +}; \ No newline at end of file diff --git a/tests/test/utils.js b/tests/test/utils.js index bb57b9b7..96710ba8 100644 --- a/tests/test/utils.js +++ b/tests/test/utils.js @@ -71,10 +71,30 @@ function checkExtensionAdded(asset, etxName) { return Object.prototype.hasOwnProperty.call(asset.extensions, etxName); } -exports.utils = { - UUID_REGEX: UUID_REGEX, - blenderFileToGltf: blenderFileToGltf, - blenderRoundtripGltf: blenderRoundtripGltf, - validateGltf: validateGltf, - checkExtensionAdded: checkExtensionAdded +function nodeWithName(gltf, name) { + const node = gltf.nodes.filter(node => { return node.name === name; }).pop(); + const index = gltf.nodes.indexOf(node); + return { + node, + index + }; +} + +function materialWithName(gltf, name) { + const node = gltf.materials.filter(node => { return node.name === name; }).pop(); + const index = gltf.nodes.indexOf(node); + return { + node, + index + }; +} + +module.exports = { + UUID_REGEX, + blenderFileToGltf, + blenderRoundtripGltf, + validateGltf, + checkExtensionAdded, + nodeWithName, + materialWithName }; \ No newline at end of file